EVM Bytecode Analyzer
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
EVM Bytecode Analyzer gives you complete visibility into the raw bytecode of any EVM contract. It reads and analyzes contract bytecode directly from the chain, providing detailed insights into the runtime bytecode structure including size analysis showing total byte length, opcode sequences that make up the contract's logic, function signatures extracted from 4-byte selectors embedded in the code, function hashes for identification, instruction patterns that reveal contract behavior, bytecode metadata indicating Solidity compiler version and settings, opcode frequency counts showing which operations are most common, instruction flow analysis mapping execution paths, jump destinations that control program flow, basic block detection for structural understanding, contract deployment data tracking creation code, verified source code references where available, compiler version info including solc version and optimization settings, import patterns showing external dependencies, library dependencies identifying linked libraries, interface implementations revealing inherited contracts, event signatures for emitted events, error signatures for revert messages, storage layout analysis for state variables, constant values embedded in the code, string literals for human-readable messages, numeric constants used in calculations, address literals for external contract calls, and assembly patterns for low-level operations. All data is organized in a clean dashboard with bytecode visualization, function signature lists, and structural analysis.
HOW TO USE
Connect your wallet to the tool and select the network where your contract is deployed. Enter the contract address in the input field and click "Analyze Bytecode". The tool immediately fetches the contract bytecode from the chain using eth_getCode and performs comprehensive analysis on the raw bytes. Results are displayed in organized cards showing bytecode size, function selectors detected, jump destinations, basic blocks count, and metadata presence. The tool also extracts and displays a list of function signatures for quick reference. The tool works with any EVM contract address and does not require source code to be verified.
THE MECHANISM
EVM Bytecode Analyzer works by fetching the runtime bytecode of any contract address using the eth_getCode RPC method, then performing static analysis on the raw hex bytes. The tool scans the bytecode for 4-byte function selectors that appear in the code as push4 instructions followed by the function signature hash — a common pattern where compilers embed jump table information. It also identifies jumpdest (0x5b) opcodes that mark valid jump targets, counting these to estimate the number of basic blocks in the contract. The tool detects Solidity metadata by looking for the canonical metadata pattern (0xa165627a7a72305820) that appears at the end of compiled contracts, which contains the compiler version, settings, and IPFS hash of the source code. For opcode analysis, the tool maps each byte to its corresponding EVM instruction name using the official opcode table, allowing for instruction pattern recognition. The tool also tracks PUSH instruction arguments to extract embedded constants, addresses, and function signatures from the bytecode stream. All analysis is performed client-side with no external dependencies, ensuring privacy and zero data transmission. The tool handles contracts of any size, from simple wallets to complex DeFi protocols, with analysis completing in milliseconds.
WHAT IT CANNOT SEE
EVM Bytecode Analyzer cannot determine whether bytecode was intentionally obfuscated or contains hidden backdoors without executing it, as static analysis cannot detect runtime behavior. The tool cannot prove that the bytecode matches the claimed source code without running formal verification or comparing against verified source. It cannot detect runtime code changes or self-modifying code patterns that may alter behavior after deployment. The tool cannot verify that the bytecode is not malicious without analyzing all possible execution paths, which is computationally infeasible. It cannot predict gas costs accurately without simulating execution in a full EVM environment. The tool also cannot determine the exact compiler version if metadata is not present, nor can it recover function names from selectors without a signature database.
PLEASE NOTE
EVM Bytecode Analyzer supports EVM-compatible chains only. It requires that the contract address is valid and has bytecode deployed (not an EOA). The tool works with any contract, regardless of verification status. Analysis is performed entirely in the browser and does not send bytecode to any external server. The tool is read-only and does not modify any contract state or initiate transactions. It is free to use and does not store or transmit any data off-device. Always verify contract addresses from official sources before analysis.