{
  "added_at": "2026-10-18",
  "additional_evidence_urls": [
    "https://github.com/ughman/c2c/blob/2e9535fb0c59e37bf42316cb768be80c5e8073d4/docs/FUNCTIONS.md",
    "https://github.com/ughman/c2c/blob/2e9535fb0c59e37bf42316cb768be80c5e8073d4/srcdisasm/Main.cs",
    "https://github.com/ughman/c2c/blob/2e9535fb0c59e37bf42316cb768be80c5e8073d4/srcemu/gte.c",
    "https://github.com/ughman/c2c/blob/2e9535fb0c59e37bf42316cb768be80c5e8073d4/Makefile",
    "https://github.com/ughman/c2c/tree/2e9535fb0c59e37bf42316cb768be80c5e8073d4/srczz"
  ],
  "category": "reconstruction-cases",
  "description_en": "An early reverse-engineering effort on PlayStation Crash Bandicoot 2 that converts the engine’s MIPS machine code directly into a very large C file and runs it against a modified PCSX-R emulator library for hardware I/O. Translated functions are meant to be decompiled by hand and moved into ordinary C, gradually replacing the mechanical translation.",
  "description_zh": "一个早期的 PlayStation《古惑狼 2》逆向工程项目：把引擎的 MIPS 机器码直接转换为一个体量巨大的 C 文件，并调用改造后的 PCSX-R 模拟器库处理硬件 I/O。转换出的函数计划逐个手工反编译为普通 C 代码，逐步替换机械转换的部分。",
  "entry_url": "https://awesomerea.org/resources/c2c-crash2-hybrid-recompilation-case/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/c2c-crash2-hybrid-recompilation-case/",
  "evidence_url": "https://github.com/ughman/c2c/blob/2e9535fb0c59e37bf42316cb768be80c5e8073d4/README.md",
  "group": "cases",
  "id": "c2c-crash2-hybrid-recompilation-case",
  "json_url": "https://awesomerea.org/resources/c2c-crash2-hybrid-recompilation-case/record.json",
  "kind": "case-study",
  "markdown_url": "https://awesomerea.org/resources/c2c-crash2-hybrid-recompilation-case/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/c2c-crash2-hybrid-recompilation-case/index.md",
  "name": "C2C: hybrid recompilation and hand decompilation of Crash Bandicoot 2",
  "name_zh": "C2C：《古惑狼 2》的混合重编译与手工反编译",
  "reconstruction_method": "static-recompilation",
  "record_type": "resource",
  "relationship": "independent-reconstruction",
  "requirement_facets": [
    "prerequisites",
    "prerequisites",
    "limits",
    "license"
  ],
  "requirements": [
    "Running needs the user’s own PAL Crash Bandicoot 2 disc as a raw BIN image with full sector headers and that disc’s SCES_009.67 executable, plus third-party PlayStation emulator GPU, SPU and two gamepad plugins and a 128 KB memory-card file; the repository ships no game data.",
    "Windows only: the main program builds under Cygwin with GNU Make, GCC and SDL2, the emulator library needs Microsoft Visual C++ 2005 or later, and the optional C# disassembler needs Visual C# 2005 or later. Development ran on the develop branch from January to April 2015, and there are no releases. As checked on 2026-10-20, GitHub’s last recorded push was 2020-09-30, the repository is not archived and the README does not mark it as maintained, superseded or archived.",
    "The README warns that the software is not intended for regular use and reports no playability status. Its translator does little decompiling and does not resolve indirect branches or jump tables, so code regions must be listed by hand; docs/FUNCTIONS.md names 18 of 818 listed function entry points.",
    "No matching or equivalence check is published. The repository has no license file; the PCSX-R-derived emulator sources carry GPL-2.0-or-later headers, and the original game retains its own rights."
  ],
  "requirements_zh": [
    "运行需要用户自有的 PAL 版《古惑狼 2》光盘原始 BIN 镜像（含完整扇区头）及该光盘中的 SCES_009.67 可执行文件，另需第三方 PlayStation 模拟器的 GPU、SPU 和两个手柄插件，以及一个 128 KB 记忆卡文件；仓库不附带游戏数据。",
    "仅支持 Windows：主程序在 Cygwin 下使用 GNU Make、GCC 和 SDL2 构建，模拟器库需要 Microsoft Visual C++ 2005 或更高版本，可选的 C# 反汇编器需要 Visual C# 2005 或更高版本。develop 分支的开发集中在 2015 年 1 月至 4 月，没有发布版本。据 2026-10-20 核查，GitHub 记录的最后一次推送为 2020-09-30，仓库未归档，README 未标注其仍在维护、已被取代或已归档。",
    "README 警告该软件不适合日常使用，也未报告可游玩程度。其转换器几乎不做反编译，也不解析间接跳转或跳转表，因此代码区域须手工列出；docs/FUNCTIONS.md 在列出的 818 个函数入口中仅为 18 个命名。",
    "项目未公布字节一致或等价性检查。仓库没有许可证文件；源自 PCSX-R 的模拟器源码带有 GPL-2.0 或更高版本的文件头，原游戏保留各自权利。"
  ],
  "targets": [
    "game"
  ],
  "url": "https://github.com/ughman/c2c",
  "verification": "source-reviewed",
  "verified_at": "2026-10-18"
}
