skillfed

ethereum-dasm

An ethereum bytecode disassembler with static and dynamic analysis features

ethereum-dasm v0.1.5 129.7K downloads/30d#11,660 on PyPI222
Copyleft license GPLv2 Abandoned released

What it is and what it does

ethereum-dasm is a command-line tool and Python library for analyzing Ethereum smart contracts at the bytecode level. It reads EVM bytecode (either from a file, stdin, or fetched directly from a blockchain address) and produces disassembled instructions with annotations including gas costs, operand descriptions, and jump cross-references. It can also decompile bytecode to simplified pseudocode and attempt to reconstruct or look up contract ABIs.

The tool combines static analysis (control flow, basic blocks, function signatures) with optional dynamic analysis via symbolic execution (when mythril is installed). It supports multiple output modes—table format, listing-only, color output—and can query online services for function signatures and ABI data. It's designed for security researchers, auditors, and developers who need to understand or reverse-engineer compiled Ethereum contracts.

Use it for:

  • Reverse-engineer a deployed smart contract to understand its logic when source code is unavailable.
  • Audit bytecode for potential vulnerabilities by examining control flow and function interactions.
  • Recover or reconstruct a contract's ABI from compiled bytecode for integration purposes.
  • Analyze gas consumption patterns in contract bytecode to identify optimization opportunities.
  • Verify that compiled bytecode matches expected behavior during security reviews.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Disassembles Ethereum EVM bytecode into assembly instructions and decompiles it to pseudocode, with static and dynamic analysis capabilities and online function signature lookup.

No. The package is abandoned (last update 2019-07-07) with no active maintenance, making it unreliable for current Ethereum work. Its dependencies and online integrations are likely outdated or broken. GPLv2 copyleft licensing also restricts use in proprietary contexts. For active bytecode analysis, use maintained alternatives.

Install

ethereum-dasm on PyPI

pip

pip install ethereum-dasm

uv

uv add ethereum-dasm

poetry

poetry add ethereum-dasm

Installing ethereum-dasm

Before you install

Low install friction with a pure Python wheel and four straightforward runtime dependencies. However, the package is abandoned—last commit was 2019-07-07, over six years ago. No active maintenance means security patches and compatibility updates are unlikely.

License in practice

Licensed under GPLv2 (copyleft). Any derivative work or distribution must also be open-source under GPLv2 terms. This is a significant constraint if you need to incorporate it into proprietary or differently-licensed software.

Quickstart

pip install ethereum-dasm
python3 -m ethereum_dasm 0x12345678
# or from stdin:
echo "0x12345678" | python3 -m ethereum_dasm

The package depends on evmdasm and optional mythril for dynamic analysis; mythril has its own system dependencies. Python version support is unspecified.

Verify before relying

  • Whether the package still works with current Python versions and modern Ethereum networks given its 2019 last update.
  • Whether optional dependencies (mythril, abidecoder) are still maintained and compatible.
  • Current reliability of the online function signature lookup service (infura.io integration).

Package facts

License GPLv2 (copyleft)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 4 — evmdasm, colorama, requests, tabulate
Maintenance abandoned — 2,596 days since the last release
Last repo commit
First released
Downloads 129,721/month — #11,660 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: ethereum_dasm-0.1.5-py3-none-any.whl

Keywords: ethereum, blockchain, evm, disassembler, decompiler, pseudocode

Tags

ethereum bytecode disassemblerevm decompilersmart contract analysisbytecode to assemblyethereum contract inspectionevm pseudocode decompilationblockchain bytecode analysis
ethereum-securitybytecode-analysisabandoned

More Security packages