在 GitHub 上加星Star1.1k 个星标

工具

m2c 匹配反编译器

面向匹配反编译项目的反编译器,将 GNU as 格式的 32 位 MIPS、ARM、PowerPC 和 SuperH 汇编转换为 C 代码初稿,并部分支持 C++。目标由平台、编译器(IDO、GCC 或 MetroWerks CodeWarrior)和语言组成;上下文文件提供类型信息,还能推断未知的结构体字段并生成全局变量初始化代码。README 将它与 splat、asm-differ 和 decomp-permuter 并列使用,decomp.me 也调用它生成初步反编译结果。

目标
二进制 · 游戏
类别
游戏分析工具
关联
基础工具
来源复核于

使用条件与局限

  • 需要 Python 3.8+ 和 graphviz。可在源码目录中运行 m2c.py,或从 Git 仓库将其安装为 Python 包;PyPI 上名为 m2c 的软件包是无关项目。仓库没有发布版本或标签。
  • 输入须符合 GNU as 汇编格式,例如 spimdisasm 的输出。README 列出的平台为 mips、mipsel、mipsee(eabi64)、ppc、arm、gba(APCS)和 sh2,编译器为 ido、gcc 和 mwcc,语言为 c 和 c++。结构体字段推断会跳过含位域或匿名联合字段的结构体,含位域的结构体以及类型无法推断的符号也无法生成初始化代码。
  • 采用 GPL-3.0-only 许可。README 提醒输出有时不够理想,循环尤甚;它只是需要继续完善、并用编译器和差异工具核对的起点,而非字节一致的源码。

关于此条目

说明已依据一手来源复核。

报告条目过时 建议修正翻译

一手来源

  1. README.md GitHub · matt-kempster/m2c · 修订 708d2d2
  2. README.md#L26-L49 GitHub · matt-kempster/m2c · 修订 708d2d2
  3. README.md#L387-L404 GitHub · matt-kempster/m2c · 修订 708d2d2
  4. pyproject.toml GitHub · matt-kempster/m2c · 修订 708d2d2
  5. LICENSE GitHub · matt-kempster/m2c · 修订 708d2d2
  6. cromper/cromper/wrappers/m2c_wrapper.py GitHub · decompme/decomp.me · 修订 f585075

同分区更多条目:游戏

游戏分区全部 318 项资源

↑↓ 移动↵ 打开⌘↵ 新标签页