BuonaLabs

Tutorial

How to Decompile a Smart Contract

Smart contracts on EVM chains are deployed as bytecode. When source code is not verified on a block explorer, an EVM decompiler is the fastest way to recover readable logic for security review, research, or incident response.

Steps to decompile contract bytecode

  • Choose the correct EVM network (Ethereum, Base, Arbitrum, etc.) or paste raw bytecode.
  • Enter the deployed contract address — the tool fetches runtime bytecode via RPC.
  • Review decompiled Solidity-like output, disassembly, control-flow graph, ABI, and storage tabs.
  • Export a ZIP report or share a permalink for team review.

Tips for accurate analysis

  • Decompile the implementation address if the contract is an upgradeable proxy.
  • Cross-check recovered selectors against on-chain transactions and events.
  • Use the control-flow graph before reading long pseudocode functions.
  • Compare bytecode across upgrades when investigating incidents.

Try it now

Open the free EVM decompiler — paste an address or bytecode and get results in seconds.

Related: Ethereum Decompiler · Proxy Contract Decompiler · Bytecode Decompiler