Tool
wasmdec
Command-line decompiler that parses a WebAssembly binary or text-format module with Binaryen and emits pseudo-C: globals, imported and defined functions with their locals and control flow, and a preamble of C helpers for WebAssembly operations. Several modules can be decompiled into one file with module-name prefixes, a memdump mode writes the module’s memory and table to files instead, and an Emscripten build of wasmdec powers an online demo. Development stopped at version 1.2.1 in 2018.
- Targets
- Binary · Website
- Category
- WebAssembly tools
- Relationship
- Foundation tool
- Sources reviewed
- Stars
- 430
- Last commit
- 2018-11-29
- Language
- C++
- License (GitHub)
- MIT
GitHub data as of 2026-11-09
Requirements & limits
- Source builds need g++ with C++14, Make, CMake and the Binaryen, cxxopts and WebAssembly testsuite submodules; GCC 7 or newer is recommended. The 1.2.1 download is a Linux x86-64 archive.
- Input is a .wasm binary or .wast text module. The asm.js mode needs a compile-time flag that the Makefile does not set; parsing relies on the pinned 2018 Binaryen and may reject newer WebAssembly features.
- Output is pseudo-C. Tests decompile seven bundled fixtures and spec testsuite cases and check exit status.
- The examples include machine-translated code from the commercial game diep.io; rights to that output remain with the original owner.
- The project is MIT; Binaryen, cxxopts and the testsuite submodules retain their own licenses.
Cite
BibTeX
@misc{wasmdec,
title = {{wasmdec}},
howpublished = {\url{https://github.com/wwwg/wasmdec}},
url = {https://github.com/wwwg/wasmdec},
urldate = {2026-10-20},
note = {Awesome REA entry: \url{https://awesomerea.org/resources/wasmdec/}}
}Plain text
wasmdec. https://github.com/wwwg/wasmdec (accessed 2026-10-20). Awesome REA entry: https://awesomerea.org/resources/wasmdec/
Useful? Star Awesome REA on GitHub2.4k
About this entry
The description was reviewed against primary sources.
Primary sources
- README.md GitHub · wwwg/wasmdec · Revision 3d9e5ca
- Makefile GitHub · wwwg/wasmdec · Revision 3d9e5ca
- .gitmodules GitHub · wwwg/wasmdec · Revision 3d9e5ca
- src/wasmdec.cc GitHub · wwwg/wasmdec · Revision 3d9e5ca
- src/decompiler/Decompiler.cc GitHub · wwwg/wasmdec · Revision 3d9e5ca
- test/tests.sh GitHub · wwwg/wasmdec · Revision 3d9e5ca
- test/test-spec.sh GitHub · wwwg/wasmdec · Revision 3d9e5ca
- release/install.sh GitHub · wwwg/wasmdec · Revision 3d9e5ca
- mkrelease.sh GitHub · wwwg/wasmdec · Revision 3d9e5ca
- LICENSE GitHub · wwwg/wasmdec · Revision 3d9e5ca
- https://github.com/wwwg/wasmdec/releases/tag/1.2.1
- https://github.com/WebAssembly/binaryen/tree/9f49e3d9c92703c3f5cf3589a78a3318bfe2bca4
More in Websites
- JS Deobfuscator (kuizuo) · Tool
- go-mitmproxy · Tool
- Dinosaur runner: recovering one acceleration rule · Case study
- rauchg.com: rebuilding an RSC blog from captured Flight output · Case study
- BaoCut Slides: adapting an interactive web editor · Case study
- REA in Claude Code: an isolated static-analysis A/B trial · Case study