These labels were automatically added by AI and may be inaccurate. For details, see About Literature Database.
Abstract
The widespread lack of broad source code verification on blockchain explorers
such as Etherscan, where despite 78,047,845 smart contracts deployed on
Ethereum (as of May 26, 2025), a mere 767,520 (< 1%) are open source, presents
a severe impediment to blockchain security. This opacity necessitates the
automated semantic analysis of on-chain smart contract bytecode, a fundamental
research challenge with direct implications for identifying vulnerabilities and
understanding malicious behavior. Prevailing decompilers struggle to reverse
bytecode in a readable manner, often yielding convoluted code that critically
hampers vulnerability analysis and thwarts efforts to dissect contract
functionalities for security auditing.
This paper addresses this challenge by introducing a pioneering decompilation
pipeline that, for the first time, successfully leverages Large Language Models
(LLMs) to transform Ethereum Virtual Machine (EVM) bytecode into human-readable
and semantically faithful Solidity code. Our novel methodology first employs
rigorous static program analysis to convert bytecode into a structured
three-address code (TAC) representation. This intermediate representation then
guides a Llama-3.2-3B model, specifically fine-tuned on a comprehensive dataset
of 238,446 TAC-to-Solidity function pairs, to generate high-quality Solidity.
This approach uniquely recovers meaningful variable names, intricate control
flow, and precise function signatures. Our extensive empirical evaluation
demonstrates a significant leap beyond traditional decompilers, achieving an
average semantic similarity of 0.82 with original source and markedly superior
readability. The practical viability and effectiveness of our research are
demonstrated through its implementation in a publicly accessible system,
available at https://evmdecompiler.com.