工具
wasmdec:WebAssembly 到 C 的反编译器
命令行反编译器,借助 Binaryen 解析 WebAssembly 二进制或文本格式模块,输出伪 C 代码:包括全局变量、导入与已定义的函数及其局部变量和控制流,并附带实现 WebAssembly 运算的 C 辅助函数前导部分。可将多个模块反编译到同一文件并以模块名作前缀;memdump 模式则改为把模块的内存和表写入文件。wasmdec 自身的 Emscripten 构建支撑着一个在线演示。开发停留在 2018 年的 1.2.1 版。
- 目标
- 二进制 · 网站
- 类别
- WebAssembly 工具
- 关联
- 基础工具
- 来源复核于
- 星标
- 430
- 最近提交
- 2018-11-29
- 主要语言
- C++
- 许可(GitHub 识别)
- MIT
GitHub 数据,截至 2026-11-09
使用条件与局限
- 源码构建需要支持 C++14 的 g++、Make、CMake,以及 Binaryen、cxxopts 和 WebAssembly testsuite 子模块;建议 GCC 7 或更新版本。1.2.1 下载包适用于 Linux x86-64。
- 输入是 .wasm 二进制或 .wast 文本模块。asm.js 模式需要 Makefile 未设置的编译标志;解析依赖固定的 2018 年 Binaryen,可能无法载入较新的 WebAssembly 特性。
- 输出为伪 C。测试会反编译七个随附样本和规范测试套件样本,并检查退出状态。
- 示例包含商业游戏 diep.io 的机器翻译代码;该输出的权利仍归原权利人所有。
- 项目采用 MIT;Binaryen、cxxopts 和 testsuite 子模块保留各自许可。
引用
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/zh/resources/wasmdec/}}
}纯文本
wasmdec。https://github.com/wwwg/wasmdec(访问于 2026-10-20)。Awesome REA 条目:https://awesomerea.org/zh/resources/wasmdec/
有帮助?在 GitHub 上为 Awesome REA 加星2.4k
关于此条目
说明已依据一手来源复核。
一手来源
- README.md GitHub · wwwg/wasmdec · 修订 3d9e5ca
- Makefile GitHub · wwwg/wasmdec · 修订 3d9e5ca
- .gitmodules GitHub · wwwg/wasmdec · 修订 3d9e5ca
- src/wasmdec.cc GitHub · wwwg/wasmdec · 修订 3d9e5ca
- src/decompiler/Decompiler.cc GitHub · wwwg/wasmdec · 修订 3d9e5ca
- test/tests.sh GitHub · wwwg/wasmdec · 修订 3d9e5ca
- test/test-spec.sh GitHub · wwwg/wasmdec · 修订 3d9e5ca
- release/install.sh GitHub · wwwg/wasmdec · 修订 3d9e5ca
- mkrelease.sh GitHub · wwwg/wasmdec · 修订 3d9e5ca
- LICENSE GitHub · wwwg/wasmdec · 修订 3d9e5ca
- https://github.com/wwwg/wasmdec/releases/tag/1.2.1
- https://github.com/WebAssembly/binaryen/tree/9f49e3d9c92703c3f5cf3589a78a3318bfe2bca4