{"count":1253,"docs":"https://awesomerea.org/api/","generated_at":"2026-11-06T18:29:21Z","kind":"awesome-rea-resources","license":"Original collection text: MIT. Linked works retain their own licenses.","note":"Curated resources and papers are source-reviewed: descriptions were checked against primary documentation.","note_zh":"精选资源与论文均经来源复核：说明已依据一手文档核对。","resources":[{"added_at":"2026-10-16","category":"core","description_en":"The upstream CLI and MCP server for evidence-based investigations of shipped software and runtime behavior.","description_zh":"REA 官方 CLI 与 MCP 服务，连接分析工具并保留调查证据及限制。","entry_url":"https://awesomerea.org/resources/rea-upstream/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-upstream/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/README.md","group":"rea","id":"rea-upstream","json_url":"https://awesomerea.org/resources/rea-upstream/record.json","kind":"project","markdown_url":"https://awesomerea.org/resources/rea-upstream/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-upstream/index.md","name":"REA — Reverse Engineer Anything","name_zh":"REA — Reverse Engineer Anything","record_type":"resource","relationship":"official-core","requirements":["rea-agents 6.5.0 was the published npm version at review time.","Node.js ^22.19.0 || ^24.11.0 || >=26.0.0; additional tools depend on the target."],"requirements_zh":["复核时 npm 已发布 rea-agents 6.5.0。","Node.js ^22.19.0、^24.11.0 或 >=26.0.0；额外工具取决于分析目标。"],"targets":["app","binary","firmware","game","protocol","website"],"url":"https://github.com/morluto/rea","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"core","description_en":"Target routing, connection recovery and evidence practices for agents using REA.","description_zh":"官方面向使用者的调查技能，包含目标路由、连接恢复与证据工作流。","entry_url":"https://awesomerea.org/resources/rea-official-skill/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-official-skill/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/.agents/skills/reverse-engineer-anything/SKILL.md","group":"rea","id":"rea-official-skill","json_url":"https://awesomerea.org/resources/rea-official-skill/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/rea-official-skill/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-official-skill/index.md","name":"Official reverse-engineer-anything skill","name_zh":"官方 reverse-engineer-anything 技能","record_type":"resource","relationship":"official-skill","requirements":["Installing the skill provides instructions; it does not by itself register MCP or install analysis engines.","Use the connected server's actual tool schemas; repository main may be ahead of an installed release."],"requirements_zh":["安装技能提供工作流指引，不会自动注册 MCP 或安装分析引擎。","以连接中的实际工具模式定义为准；仓库主分支可能领先于已安装版本。"],"targets":["app","binary","firmware","game","protocol","website"],"url":"https://github.com/morluto/rea/tree/main/.agents/skills/reverse-engineer-anything","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"core","description_en":"Reviewed setup plans, client registration, provider prerequisites and scoped readiness checks.","description_zh":"安装、客户端配置、分析引擎依赖及按任务检查就绪状态的官方入口。","entry_url":"https://awesomerea.org/resources/rea-installation/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-installation/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/docs/installation.md","group":"rea","id":"rea-installation","json_url":"https://awesomerea.org/resources/rea-installation/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/rea-installation/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-installation/index.md","name":"Installation and client setup","name_zh":"安装与客户端配置","record_type":"resource","relationship":"official-documentation","requirements":["Supported Node.js and npm.","Setup previews client configuration changes; native engines have separate prerequisites."],"requirements_zh":["需要受支持的 Node.js 和 npm。","Setup 会预览客户端配置改动；原生分析引擎有各自的使用条件。"],"targets":["app","binary","firmware","game","website"],"url":"https://github.com/morluto/rea/blob/main/docs/installation.md","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"core","description_en":"CLI workflows for saving Evidence and projecting smaller views from completed analysis.","description_zh":"保存完整 Evidence，再提取摘要或模块视图，适合脚本与可复现记录。","entry_url":"https://awesomerea.org/resources/rea-cli-evidence/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-cli-evidence/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/docs/cli.md","group":"rea","id":"rea-cli-evidence","json_url":"https://awesomerea.org/resources/rea-cli-evidence/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/rea-cli-evidence/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-cli-evidence/index.md","name":"CLI and Evidence","name_zh":"CLI 与 Evidence","record_type":"resource","relationship":"official-documentation","requirements":["Installed REA CLI or an explicitly pinned package runner.","CLI processes are separate; retain result files for later operations."],"requirements_zh":["需要已安装的 REA CLI，或显式固定版本的包运行器。","不同 CLI 调用是独立进程，后续处理应保留结果文件。"],"targets":["app","binary","firmware","game","website"],"url":"https://github.com/morluto/rea/blob/main/docs/cli.md","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"core","description_en":"Canonical tool contracts, provider discovery and Evidence semantics for integration authors.","description_zh":"官方工具协议、能力发现和 Evidence 语义；适合集成与核对实际工具边界。","entry_url":"https://awesomerea.org/resources/rea-mcp-contracts/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-mcp-contracts/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/docs/mcp-contracts.md","group":"rea","id":"rea-mcp-contracts","json_url":"https://awesomerea.org/resources/rea-mcp-contracts/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/rea-mcp-contracts/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-mcp-contracts/index.md","name":"MCP contracts and generated catalog","name_zh":"MCP 接口约定与生成目录","record_type":"resource","relationship":"official-documentation","requirements":["A compatible MCP client for live use.","Discover the live catalog before relying on tools documented on main."],"requirements_zh":["实时使用需要兼容的 MCP 客户端。","依赖主分支文档中的工具前，先查询已连接服务的实际目录。"],"targets":["app","binary","firmware","game","website"],"url":"https://github.com/morluto/rea/blob/main/docs/mcp-contracts.md#generated-catalog","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"workflow-guides","description_en":"Locate a function, inspect instructions and pseudocode, and follow references with a selected native provider.","description_zh":"从函数清单到指令、伪代码和引用链的原生二进制调查流程。","entry_url":"https://awesomerea.org/resources/rea-native-workflow/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-native-workflow/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/docs/native-investigation.md","group":"rea","id":"rea-native-workflow","json_url":"https://awesomerea.org/resources/rea-native-workflow/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/rea-native-workflow/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-native-workflow/index.md","name":"Native binary investigation","name_zh":"原生二进制调查","record_type":"resource","relationship":"official-documentation","requirements":["A target binary and a configured supported provider such as Ghidra, Hopper or IDA.","Host, architecture and provider support are scoped separately; pseudocode is not original source."],"requirements_zh":["需要目标二进制及已配置的 Ghidra、Hopper 或 IDA 等受支持分析引擎。","主机、架构和引擎的支持范围分别限定；伪代码不等于原始源码。"],"targets":["binary","game"],"url":"https://github.com/morluto/rea/blob/main/docs/native-investigation.md","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"workflow-guides","description_en":"Trace features and compare authenticated JavaScript application graphs while preserving static-analysis limits.","description_zh":"从 JavaScript 应用图追踪功能、比较版本，同时保留静态分析的不确定性。","entry_url":"https://awesomerea.org/resources/rea-js-workflows/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-js-workflows/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/docs/javascript-application-workflows.md","group":"rea","id":"rea-js-workflows","json_url":"https://awesomerea.org/resources/rea-js-workflows/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/rea-js-workflows/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-js-workflows/index.md","name":"Cross-layer JavaScript application workflows","name_zh":"跨层 JavaScript 应用工作流","record_type":"resource","relationship":"official-documentation","requirements":["Evidence from analyze_javascript_application or supported runtime reconciliation.","No native engine is required for the static JavaScript path; keep the complete parent Evidence."],"requirements_zh":["使用 analyze_javascript_application 或受支持运行时对照产生的 Evidence。","静态 JavaScript 分析不需要原生引擎；保留完整父级 Evidence。"],"targets":["app","website"],"url":"https://github.com/morluto/rea/blob/main/docs/javascript-application-workflows.md","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"workflow-guides","description_en":"Inspect Android package identity, classes, methods and references through REA's JADX integration.","description_zh":"经 REA 的 JADX 集成检查 APK、类、方法与引用；结果不等于运行时验证。","entry_url":"https://awesomerea.org/resources/rea-android-guide/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-android-guide/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/docs/android-analysis.md","group":"rea","id":"rea-android-guide","json_url":"https://awesomerea.org/resources/rea-android-guide/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/rea-android-guide/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-android-guide/index.md","name":"Static Android APK analysis","name_zh":"Android APK 静态分析","record_type":"resource","relationship":"official-documentation","requirements":["Full JDK 17 or newer and caller-supplied jadx-headless-mcp 0.7.1 with the documented digest check.","Linux requires a procps-compatible ps for provider process ownership."],"requirements_zh":["需要完整 JDK 17+，并自行提供 jadx-headless-mcp 0.7.1，按文档核对摘要。","Linux 需要兼容 procps 的 ps，以检查分析引擎进程归属。"],"targets":["app"],"url":"https://github.com/morluto/rea/blob/main/docs/android-analysis.md","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"workflow-guides","description_en":"Read PE/CLI metadata and CIL, compare managed members and inspect declared native boundaries without loading the assembly.","description_zh":"静态读取 .NET 元数据与 CIL，比较成员并检查声明的原生代码边界。","entry_url":"https://awesomerea.org/resources/rea-managed-guide/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-managed-guide/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/docs/managed-code-analysis.md","group":"rea","id":"rea-managed-guide","json_url":"https://awesomerea.org/resources/rea-managed-guide/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/rea-managed-guide/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-managed-guide/index.md","name":"Managed-code analysis","name_zh":"托管代码分析","record_type":"resource","relationship":"official-documentation","requirements":["A supported PE/CLI assembly; no native engine is required for metadata/CIL inspection.","NativeAOT, IL2CPP and packaged single-file deployments have different boundaries."],"requirements_zh":["需要受支持的 PE/CLI 程序集；元数据与 CIL 检查不需要原生引擎。","NativeAOT、IL2CPP 和打包为单文件的部署具有不同分析边界。"],"targets":["app"],"url":"https://github.com/morluto/rea/blob/main/docs/managed-code-analysis.md","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"workflow-guides","description_en":"Inspect saved web captures offline; recorded URLs are not fetched and no proxy is started.","description_zh":"离线检查已有 HAR、SAZ 等网页流量记录；不会自动抓包或访问记录中的 URL。","entry_url":"https://awesomerea.org/resources/rea-web-captures/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-web-captures/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/docs/web-network-captures.md","group":"rea","id":"rea-web-captures","json_url":"https://awesomerea.org/resources/rea-web-captures/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/rea-web-captures/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-web-captures/index.md","name":"Historical web network captures","name_zh":"历史网站网络记录","record_type":"resource","relationship":"official-documentation","requirements":["A supported existing capture and an explicit format selection.","PCAP/TShark workflows are separate and have different host/tool requirements."],"requirements_zh":["需要已保存的受支持捕获文件，并显式指定格式。","PCAP/TShark 是独立工作流，主机与工具要求不同。"],"targets":["app","protocol","website"],"url":"https://github.com/morluto/rea/blob/main/docs/web-network-captures.md","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"workflow-guides","description_en":"Inspect firmware regions with Binwalk and explicitly extract with Unblob, retaining tool and artifact identity.","description_zh":"用 Binwalk 检查固件区域、用 Unblob 显式提取，并记录工具与制品身份。","entry_url":"https://awesomerea.org/resources/rea-firmware-guide/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-firmware-guide/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/docs/firmware-analysis.md","group":"rea","id":"rea-firmware-guide","json_url":"https://awesomerea.org/resources/rea-firmware-guide/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/rea-firmware-guide/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-firmware-guide/index.md","name":"Firmware analysis","name_zh":"固件分析","record_type":"resource","relationship":"official-documentation","requirements":["Caller-supplied Binwalk 3.1.x for inspection; Unblob 26.6.x for extraction.","The documented verification scope is Linux x64; extraction needs a new caller-selected output directory."],"requirements_zh":["自行提供 Binwalk 3.1.x 进行检查、Unblob 26.6.x 进行提取。","上游记录的验证范围为 Linux x64；提取需要新的、自行指定的输出目录。"],"targets":["firmware"],"url":"https://github.com/morluto/rea/blob/main/docs/firmware-analysis.md","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/morluto/rea/blob/3b79af28e80785afce9f5998d8f03289402a1847/CHANGELOG.md"],"category":"workflow-guides","description_en":"Select TShark fields, display filters and decode-as rules over an existing network, USB or Bluetooth capture, and look up installed field names. It does not capture traffic, open an interface or control a device.","description_zh":"用 TShark 字段、显示过滤器和 decode-as 规则检查已有的网络、USB 或蓝牙抓包，并可查询已安装的字段名；不抓取流量、不打开网络接口，也不控制设备。","entry_url":"https://awesomerea.org/resources/rea-packet-captures/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-packet-captures/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/docs/packet-captures.md","group":"rea","id":"rea-packet-captures","json_url":"https://awesomerea.org/resources/rea-packet-captures/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/rea-packet-captures/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-packet-captures/index.md","name":"Recorded packet capture inspection","name_zh":"抓包记录检查","record_type":"resource","relationship":"official-documentation","requirements":["Caller-supplied TShark 4.x on Linux with util-linux prlimit; macOS and Windows hosts are refused before inspection. Listed in the rea-agents 6.5.0 release notes.","Dissector output describes the selected recording, not verified device behavior. Upstream fixtures are generated Ethernet/UDP/DNS and Bluetooth HCI PCAPs and do not cover PCAPNG, USB, BLE ATT or physical capture."],"requirements_zh":["需在 Linux 上自行提供 TShark 4.x 和 util-linux prlimit；macOS 与 Windows 主机会在检查前被拒绝。rea-agents 6.5.0 的发布说明已列出此功能。","解析结果只反映所选记录，不等于已验证的设备行为。上游测试样例是生成的以太网/UDP/DNS 和蓝牙 HCI PCAP，未覆盖 PCAPNG、USB、BLE ATT 或实际抓包。"],"targets":["protocol"],"url":"https://github.com/morluto/rea/blob/main/docs/packet-captures.md","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/morluto/rea/blob/3b79af28e80785afce9f5998d8f03289402a1847/CHANGELOG.md"],"category":"workflow-guides","description_en":"Summarize a saved pcap or pcapng file’s endpoints, DNS questions and addresses, TLS SNI, protocol stacks and HTTP URIs into paged Evidence views. It does not capture traffic or fetch recorded targets.","description_zh":"把已保存 pcap/pcapng 文件中的端点、DNS 查询与地址、TLS SNI、协议栈和 HTTP URI 汇总为可分页的 Evidence 视图；不抓取流量，也不访问记录中的目标。","entry_url":"https://awesomerea.org/resources/rea-pcap-summaries/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-pcap-summaries/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/docs/pcap-analysis.md","group":"rea","id":"rea-pcap-summaries","json_url":"https://awesomerea.org/resources/rea-pcap-summaries/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/rea-pcap-summaries/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-pcap-summaries/index.md","name":"Packet capture summaries","name_zh":"抓包摘要","record_type":"resource","relationship":"official-documentation","requirements":["Caller-supplied Wireshark 4.x tshark and capinfos. Capture inspection needs Linux with util-linux prlimit or Windows Job Objects; macOS reports a capability gap. Listed in the rea-agents 6.5.0 release notes.","Upstream’s current verification used Linux, Node 24.18.0 and Wireshark 4.0.17; actual Windows execution is unverified. Summaries do not establish decrypted payloads, process identity or the absence of unrecorded traffic."],"requirements_zh":["需自行提供 Wireshark 4.x 的 tshark 和 capinfos。检查抓包需要带 util-linux prlimit 的 Linux，或使用 Job Object 的 Windows；macOS 会报告能力缺口。rea-agents 6.5.0 的发布说明已列出此功能。","上游当前验证使用 Linux、Node 24.18.0 和 Wireshark 4.0.17，Windows 实际执行尚未验证。汇总结果不能证明解密后的内容或进程身份，也不能证明不存在未记录的流量。"],"targets":["protocol"],"url":"https://github.com/morluto/rea/blob/main/docs/pcap-analysis.md","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/morluto/rea/blob/3b79af28e80785afce9f5998d8f03289402a1847/CHANGELOG.md"],"category":"workflow-guides","description_en":"Run caller-chosen sigrok protocol decoders, such as UART or I2C, over an existing logic-signal recording and keep annotation text with sample ranges. It does not acquire samples or communicate with hardware.","description_zh":"用调用方指定的 sigrok 协议解码器（如 UART、I2C）解码已有的逻辑信号记录，并保留带采样区间的注释文本；不采集样本，也不与硬件通信。","entry_url":"https://awesomerea.org/resources/rea-signal-recordings/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-signal-recordings/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/docs/signal-recordings.md","group":"rea","id":"rea-signal-recordings","json_url":"https://awesomerea.org/resources/rea-signal-recordings/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/rea-signal-recordings/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-signal-recordings/index.md","name":"Recorded signal decoding","name_zh":"信号记录解码","record_type":"resource","relationship":"official-documentation","requirements":["Caller-supplied sigrok-cli 0.7.2 with libsigrokdecode on Linux, plus util-linux prlimit; macOS and Windows are refused. Listed in the rea-agents 6.5.0 release notes.","The caller supplies decoder stacks, channel names and settings such as baud rate. Upstream’s fixture is a synthesized 9600-baud UART VCD and does not cover other formats, decoders or physical acquisition."],"requirements_zh":["需在 Linux 上自行提供 sigrok-cli 0.7.2、libsigrokdecode 和 util-linux prlimit；macOS 与 Windows 会被拒绝。rea-agents 6.5.0 的发布说明已列出此功能。","解码器栈、通道名和波特率等设置由调用方指定。上游测试样例是合成的 9600 波特 UART VCD，未覆盖其他格式、解码器和实际采集。"],"targets":["firmware","protocol"],"url":"https://github.com/morluto/rea/blob/main/docs/signal-recordings.md","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-16","category":"workflow-guides","description_en":"Follow a user-triggered export request in the supplied Notes browser example and connect it to the downloaded result.","description_zh":"通过官方 Notes 示例关联用户点击、导出请求与下载结果；REA 负责观察。","entry_url":"https://awesomerea.org/resources/rea-browser-guide/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-browser-guide/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/website/evidence/guide-examples.md","group":"rea","id":"rea-browser-guide","json_url":"https://awesomerea.org/resources/rea-browser-guide/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/rea-browser-guide/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-browser-guide/index.md","name":"Browser observation guide","name_zh":"浏览器观察指南","record_type":"resource","relationship":"official-guide","requirements":["A user-owned Chrome-family browser, loopback CDP connection and explicitly allowed origins.","The recorded upstream example used a separate controller to click."],"requirements_zh":["需要自有的 Chrome 系浏览器、本地回环 CDP 连接及明确允许的来源。","上游示例由独立控制器执行点击。"],"targets":["website"],"url":"https://rea.tools/guides/browser/","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"official-case-studies","description_en":"An official APK investigation follows TOTP methods in Aegis and publishes artifact identities and selected Evidence.","description_zh":"追踪 Aegis APK 的 TOTP 计算，官方公开目标指纹与选取的调查证据。","entry_url":"https://awesomerea.org/resources/rea-aegis-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-aegis-case/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/website/evidence/aegis-login-code.md","group":"rea","id":"rea-aegis-case","json_url":"https://awesomerea.org/resources/rea-aegis-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rea-aegis-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-aegis-case/index.md","name":"Aegis: trace a login-code calculation","name_zh":"Aegis：追踪登录验证码计算","record_type":"resource","relationship":"official-case-study","requirement_facets":["prerequisites","prerequisites"],"requirements":["Upstream case: Aegis 3.4.3, REA 6.1.0, jadx-headless-mcp 0.7.1 and OpenJDK 21 on Linux x64.","Use the matching official APK for reproduction."],"requirements_zh":["上游案例环境：Aegis 3.4.3、REA 6.1.0、jadx-headless-mcp 0.7.1、OpenJDK 21，Linux x64。","复现时使用匹配的官方 APK。"],"targets":["app"],"url":"https://rea.tools/showcase/aegis/","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"official-case-studies","description_en":"An official educational challenge investigation connects binary checks to equations and records an original-program validation.","description_zh":"官方教育 CTF 案例：从检查函数得到方程，并记录原程序验证过程。","entry_url":"https://awesomerea.org/resources/rea-ctf-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-ctf-case/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/website/evidence/ctf-masked-squares.md","group":"rea","id":"rea-ctf-case","json_url":"https://awesomerea.org/resources/rea-ctf-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rea-ctf-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-ctf-case/index.md","name":"DownUnderCTF: masked-squares flag checker","name_zh":"DownUnderCTF：masked-squares 校验器","record_type":"resource","relationship":"official-case-study","requirement_facets":["prerequisites","testing"],"requirements":["Upstream case: public DownUnderCTF 2023 challenge, REA 4.1.0 and Ghidra 12.1.4 on Linux x64.","Target hash and source revision are documented; author-reported execution."],"requirements_zh":["上游案例使用公开的 DownUnderCTF 2023 题目、REA 4.1.0、Ghidra 12.1.4，运行于 Linux x64。","文档提供目标摘要与源码版本；作者报告的执行。"],"targets":["binary"],"url":"https://rea.tools/showcase/ctf/","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"official-case-studies","description_en":"Recover one sound-pan function from instructions and constants; upstream cites 3,205 cases and a 63-byte match.","description_zh":"根据指令与常量重建单个声像函数；上游报告 3,205 例与 63 字节匹配。","entry_url":"https://awesomerea.org/resources/rea-dxball-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-dxball-case/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/website/evidence/dx-ball-sound-pan.md","group":"rea","id":"rea-dxball-case","json_url":"https://awesomerea.org/resources/rea-dxball-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rea-dxball-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-dxball-case/index.md","name":"DX-Ball: reconstruct sound panning","name_zh":"DX-Ball：重建声音声像计算","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"official-case-study","requirement_facets":["prerequisites","testing"],"requirements":["The matching DX-Ball 1.07 executable and the documented native-analysis environment.","The cited reconstruction checks concern one function."],"requirements_zh":["需要匹配的 DX-Ball 1.07 可执行文件及文档描述的原生分析环境。","重建检查仅针对一个函数。"],"targets":["binary","game"],"url":"https://rea.tools/showcase/dx-ball/","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"official-case-studies","description_en":"Trace a packaged Electron clipboard path using REA findings and separate source inspection; the dynamic wrapper remains a stated limit.","description_zh":"结合 REA 发现与独立源码阅读追踪剪贴板桥；动态包装器仍有明确限制。","entry_url":"https://awesomerea.org/resources/rea-notion-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-notion-case/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/website/evidence/notion-clipboard.md","group":"rea","id":"rea-notion-case","json_url":"https://awesomerea.org/resources/rea-notion-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rea-notion-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-notion-case/index.md","name":"Notion: trace the clipboard bridge","name_zh":"Notion：追踪剪贴板桥接","record_type":"resource","relationship":"official-case-study","requirement_facets":["scope","limits"],"requirements":["Upstream case uses Notion Desktop 7.6.1 packaged JavaScript and REA 4.1.0.","The full clipboard route was not automatically paired or observed as a desktop execution."],"requirements_zh":["上游案例使用 Notion Desktop 7.6.1 打包后的 JavaScript 和 REA 4.1.0。","完整剪贴板链路没有被自动配对，也没有作为桌面执行被观察。"],"targets":["app"],"url":"https://rea.tools/showcase/notion/","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"official-case-studies","description_en":"Inspect a 16-bit PC-98 DOS helper and relate its angle calculation to a pinned reconstruction and historical compiler checks.","description_zh":"检查 PC-98 DOS 的 16 位弹幕角度辅助函数，并关联固定版本重建与历史编译器检查。","entry_url":"https://awesomerea.org/resources/rea-th04-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-th04-case/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/website/evidence/th04-bullet-ring.md","group":"rea","id":"rea-th04-case","json_url":"https://awesomerea.org/resources/rea-th04-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rea-th04-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-th04-case/index.md","name":"TH04: recover a DOS bullet-ring helper","name_zh":"TH04：恢复 DOS 子弹环辅助函数","reconstruction_method":"other","record_type":"resource","relationship":"official-case-study","requirement_facets":["prerequisites","scope"],"requirements":["The matching original TH04 MAIN.EXE and the documented Ghidra DOS load profile.","The showcase covers one helper."],"requirements_zh":["需要匹配的 TH04 原版 MAIN.EXE 及文档说明的 Ghidra DOS 加载配置。","展示只覆盖一个辅助函数。"],"targets":["binary","game"],"url":"https://rea.tools/showcase/th04/","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"workflow-guides","description_en":"A source-owned Notes fixture teaches the renderer, preload, IPC and CSV path with linked analysis evidence.","description_zh":"官方自建 Notes 样例，从 renderer、preload、IPC 到 CSV 导出建立证据链。","entry_url":"https://awesomerea.org/resources/rea-electron-guide/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-electron-guide/","evidence_url":"https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/website/evidence/guide-examples.md","group":"rea","id":"rea-electron-guide","json_url":"https://awesomerea.org/resources/rea-electron-guide/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/rea-electron-guide/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-electron-guide/index.md","name":"JavaScript and Electron: follow a CSV export","name_zh":"JavaScript 与 Electron：追踪 CSV 导出","record_type":"resource","relationship":"official-guide","requirements":["Supported Node.js and REA; no native engine is required for this static fixture.","The fixture is source-owned teaching material, not an installed Electron distribution."],"requirements_zh":["需要受支持的 Node.js 和 REA；这个静态教学样例无需原生分析引擎。","样例是作者自有源码教学材料，不是已安装的 Electron 发行包。"],"targets":["app"],"url":"https://rea.tools/guides/javascript/","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"community-labs","description_en":"An Electron practice target, Evidence extractor and MCP probe; offline fixture mode is distinguished from real REA analysis.","description_zh":"提供 Electron 练习目标、Evidence 提取与 MCP 探测，区分离线展示和真正调用 REA。","entry_url":"https://awesomerea.org/resources/rea-playbook/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-playbook/","evidence_url":"https://github.com/jinshi666888/rea-playbook/blob/0ad65a85139025f32402be13ed64c8003e39b00a/README.md","group":"learn","id":"rea-playbook","json_url":"https://awesomerea.org/resources/rea-playbook/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/rea-playbook/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-playbook/index.md","name":"rea-playbook","name_zh":"rea-playbook","record_type":"resource","relationship":"community-learning-resource","requirements":["README pins the real-analysis path to rea-agents 6.3.0 and lists supported Node.js versions.","The offline demo reads bundled results without running REA."],"requirements_zh":["README 将真实分析路径固定为 rea-agents 6.3.0，并列出支持的 Node.js 版本。","离线演示读取已附带的结果，不会执行 REA。"],"targets":["app"],"url":"https://github.com/jinshi666888/rea-playbook","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"community-integrations","description_en":"A community MCP bridge presents a smaller selected tool surface and forwards explicit commands to the REA CLI.","description_zh":"社区 MCP 适配桥，以精选工具和 CLI 转发缩小宿主需要处理的工具面。","entry_url":"https://awesomerea.org/resources/dsh-mcp-rea/","entry_url_zh":"https://awesomerea.org/zh/resources/dsh-mcp-rea/","evidence_url":"https://github.com/Ersith/dsh-mcp-rea/blob/74e82f09e3f78fc945e07321d729e2e6b56406a8/README.md","group":"rea","id":"dsh-mcp-rea","json_url":"https://awesomerea.org/resources/dsh-mcp-rea/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/dsh-mcp-rea/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dsh-mcp-rea/index.md","name":"dsh-mcp-rea","name_zh":"dsh-mcp-rea","record_type":"resource","relationship":"community-integration","requirements":["Requires REA and the relevant analysis providers; distributed as a local bundle rather than a public npm package.","Use the documented REA_ENTRY mode for direct execution; PATH fallback invokes a shell."],"requirements_zh":["需要 REA 及相应分析引擎；以本地打包组件发布，不是公开 npm 包。","直接执行使用文档中的 REA_ENTRY 模式；PATH 回退方式会调用命令解释器。"],"targets":["app","binary","firmware","game","website"],"url":"https://github.com/Ersith/dsh-mcp-rea","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"community-integrations","description_en":"A Claude Code plugin adds Jev-based routing and evidence checks around a pinned REA MCP integration.","description_zh":"Claude Code 社区插件，在固定版本 REA MCP 外增加 Jev 路由和证据检查。","entry_url":"https://awesomerea.org/resources/rea-jev/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-jev/","evidence_url":"https://github.com/juan-viox/rea-jev/blob/236f149638971d1c98399fc9de864378b2011bfd/README.md","group":"rea","id":"rea-jev","json_url":"https://awesomerea.org/resources/rea-jev/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/rea-jev/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-jev/index.md","name":"rea-jev","name_zh":"rea-jev","record_type":"resource","relationship":"community-integration","requirements":["Claude Code, supported Node.js and the plugin's documented macOS/Linux environment.","Optional Jev service credentials enable external model calls; excerpts may be sent to that service.","Hooks fail open on provider failure; they are not a security guarantee."],"requirements_zh":["需要 Claude Code、受支持的 Node.js，以及插件文档规定的 macOS/Linux 环境。","可选 Jev 服务凭据用于外部模型调用，代码片段可能发送到该服务。","引擎失败时钩子允许流程继续，不构成安全保证。"],"targets":["app","website"],"url":"https://github.com/juan-viox/rea-jev","verification":"source-reviewed","verified_at":"2026-10-17T12:48:42Z"},{"added_at":"2026-10-16","category":"community-labs","description_en":"A Windows REA/Ghidra lab with seeded challenges, published studies, upstream contributions and recorded limitations.","description_zh":"Windows REA/Ghidra 实验室，提供已知答案挑战、公开研究、上游贡献与限制说明。","entry_url":"https://awesomerea.org/resources/rea-lab/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-lab/","evidence_url":"https://github.com/pablodiazjorge/rea-lab/blob/c96b76b75046fc884b8d7526205f1adb9497a5d7/README.md","group":"learn","id":"rea-lab","json_url":"https://awesomerea.org/resources/rea-lab/record.json","kind":"research","markdown_url":"https://awesomerea.org/resources/rea-lab/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-lab/index.md","name":"rea-lab","name_zh":"rea-lab","record_type":"resource","relationship":"community-learning-resource","requirements":["The documented environment uses Windows 11, REA 6.4.0 and Ghidra 12.1.4.","Study results are author-reported and task/model-specific.","Code and documentation use different licenses; inspect the relevant repository notices."],"requirements_zh":["文档环境为 Windows 11、REA 6.4.0、Ghidra 12.1.4。","研究结果由作者报告，依赖具体任务和模型。","代码与文档使用不同许可，请检查对应的仓库声明。"],"targets":["binary"],"url":"https://github.com/pablodiazjorge/rea-lab","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-16","category":"community-integrations","description_en":"A Claude Code mod collects received REA Evidence, tracks unknowns and records findings that cite delivered evidence IDs.","description_zh":"Claude Code mod 汇集收到的 REA Evidence、追踪 unknown，并校验发现所引用的证据 ID。","entry_url":"https://awesomerea.org/resources/rea-casebook/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-casebook/","evidence_url":"https://github.com/pablodiazjorge/rea-casebook/blob/311c29688c82048971b2ef86df59e0ed78310fd8/README.md","group":"rea","id":"rea-casebook","json_url":"https://awesomerea.org/resources/rea-casebook/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/rea-casebook/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-casebook/index.md","name":"rea-casebook","name_zh":"rea-casebook","record_type":"resource","relationship":"community-integration","requirements":["README requires Claude Code 2.1.296 or newer and an MCP server registered under the name rea.","Developed with REA 6.4.0 and Ghidra 12.1 on Windows."],"requirements_zh":["README 要求 Claude Code 2.1.296+，并将 MCP 服务注册为 rea。","开发环境为 Windows、REA 6.4.0、Ghidra 12.1。"],"targets":["binary"],"url":"https://github.com/pablodiazjorge/rea-casebook","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"community-case-studies","description_en":"The author describes REA-assisted Android investigation followed by separate Hermes decompilation to support a Windows BLE printer.","description_zh":"作者报告以 REA 开始 Android 调查，再借助独立 Hermes 工具实现 Windows BLE 打印。","entry_url":"https://awesomerea.org/resources/picoprint-rea-investigation/","entry_url_zh":"https://awesomerea.org/zh/resources/picoprint-rea-investigation/","evidence_url":"https://github.com/morluto/rea/discussions/4152","group":"rea","id":"picoprint-rea-investigation","json_url":"https://awesomerea.org/resources/picoprint-rea-investigation/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/picoprint-rea-investigation/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/picoprint-rea-investigation/index.md","name":"PicoPrint: LX-D02 printer investigation","name_zh":"PicoPrint：LX-D02 打印机调查","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","attribution","testing"],"requirements":["Project README lists Windows 10/11, Bluetooth LE, an LX-D02 printer and Go 1.25+ to build.","REA's stated role was readiness/device discovery and investigation framing; hermes-dec handled Hermes v98.","Author-reported results."],"requirements_zh":["README 列出 Windows 10/11、蓝牙 LE、LX-D02 打印机；编译需 Go 1.25+。","作者说明 REA 用于就绪检查、设备发现和调查组织，Hermes v98 由 hermes-dec 处理。","作者报告的结果。"],"targets":["app","protocol"],"url":"https://github.com/bigtower17/picoprint","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"related-lists","description_en":"A task-oriented reverse-engineering resource list by REA's maintainer, useful for broader tools and foundations.","description_zh":"REA 维护者整理的通用逆向资源目录，适合查找基础知识与相邻工具。","entry_url":"https://awesomerea.org/resources/morluto-awesome-re/","entry_url_zh":"https://awesomerea.org/zh/resources/morluto-awesome-re/","evidence_url":"https://github.com/morluto/awesome-reverse-engineering/blob/901e752191ebdff4f1b8e1a2f15c82fef2de77e7/README.md","group":"learn","id":"morluto-awesome-re","json_url":"https://awesomerea.org/resources/morluto-awesome-re/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/morluto-awesome-re/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/morluto-awesome-re/index.md","name":"Awesome Reverse Engineering","name_zh":"Awesome Reverse Engineering","record_type":"resource","relationship":"upstream-maintainer-companion-list","requirements":["Individual tools retain their own requirements and licenses."],"requirements_zh":["各工具保留各自的使用条件与许可。"],"targets":["app","binary","firmware","game","protocol","website"],"url":"https://github.com/morluto/awesome-reverse-engineering","verification":"source-reviewed","verified_at":"2026-10-17T12:48:42Z"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/songshikang0111/awesome-REA-cases/blob/afea8a6c6ea29559533cf5ba4063e15b6649e0af/README.zh-CN.md"],"category":"related-lists","description_en":"A bilingual collection of REA and other AI-assisted reverse engineering cases, with source links and explicit distinctions between reported and reproduced outcomes.","description_zh":"中英双语的 REA 与其他 AI 辅助逆向案例合集，附来源并区分作者报告、进行中的工作和复现状态。","entry_url":"https://awesomerea.org/resources/awesome-rea-cases/","entry_url_zh":"https://awesomerea.org/zh/resources/awesome-rea-cases/","evidence_url":"https://github.com/songshikang0111/awesome-REA-cases/blob/afea8a6c6ea29559533cf5ba4063e15b6649e0af/README.md","group":"learn","id":"awesome-rea-cases","json_url":"https://awesomerea.org/resources/awesome-rea-cases/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/awesome-rea-cases/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/awesome-rea-cases/index.md","name":"Awesome REA Cases","name_zh":"Awesome REA Cases","record_type":"resource","relationship":"community-learning-resource","requirements":["A discovery index; review each case's original source, redistribution rights, and evidence status before reproducing it."],"requirements_zh":["这是案例发现目录；复现前应检查每个案例的原始来源、再分发权限和证据状态。"],"targets":["app","binary","firmware","game","protocol","website"],"url":"https://github.com/songshikang0111/awesome-REA-cases","verification":"source-reviewed","verified_at":"2026-10-17T12:48:42Z"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/Xiangyu-CAS/rea-capcut/blob/da6f2f81473d90ad18d2c0d90220f21429f0c96f/docs/research/REA_FINDINGS.md","https://github.com/Xiangyu-CAS/rea-capcut/blob/da6f2f81473d90ad18d2c0d90220f21429f0c96f/docs/CAPCUT_INTEROP.md"],"category":"community-case-studies","description_en":"An independent video editor whose authors document REA-assisted investigation of Jianying/CapCut behavior and project formats. The public implementation includes a local timeline, FFmpeg export and an experimental, lossy draft importer.","description_zh":"独立视频编辑器，作者公开了利用 REA 研究剪映／CapCut 行为与项目格式的过程。实现包含本地时间线、FFmpeg 导出，以及实验性的有损草稿导入。","entry_url":"https://awesomerea.org/resources/reacut-reconstruction/","entry_url_zh":"https://awesomerea.org/zh/resources/reacut-reconstruction/","evidence_url":"https://github.com/Xiangyu-CAS/rea-capcut/blob/da6f2f81473d90ad18d2c0d90220f21429f0c96f/README.md","group":"rea","id":"reacut-reconstruction","json_url":"https://awesomerea.org/resources/reacut-reconstruction/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/reacut-reconstruction/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/reacut-reconstruction/index.md","name":"ReaCut: video-editor reconstruction","name_zh":"ReaCut：视频编辑器重建案例","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["testing","limits","attribution"],"requirements":["The v0.5.0 preview reports macOS Apple Silicon testing; Windows/Linux builds still need device validation. The macOS package is ad-hoc signed and not notarized.","The experimental importer is documented against controlled Jianying 11.0.12922 drafts. Basic conversions are lossy: effects, keyframes and styles can be lost, and projects cannot be written back.","REA supports the reported research workflow but is not a runtime dependency. The project uses its own code and format; MIT source and bundled third-party components retain separate licenses."],"requirements_zh":["v0.5.0 预览版报告了 macOS Apple Silicon 测试；Windows／Linux 构建仍待实机验证。macOS 安装包采用 ad-hoc 签名，尚未公证。","实验性导入器的文档验证范围为受控的剪映 11.0.12922 草稿。基础转换有损，效果、关键帧与样式可能丢失，不支持项目写回。","REA 用于作者报告的研究流程，并非运行依赖。项目使用自主代码与格式；MIT 源码和随包第三方组件分别保留各自许可。"],"targets":["app"],"url":"https://github.com/Xiangyu-CAS/rea-capcut","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/a-funk/open-appleremote/blob/1e6e190c3c29a3d2d8cad2c38c09f8953e9633e3/docs/PROTOCOL.md","https://github.com/a-funk/open-appleremote/blob/1e6e190c3c29a3d2d8cad2c38c09f8953e9633e3/pyproject.toml","https://github.com/a-funk/open-appleremote/blob/1e6e190c3c29a3d2d8cad2c38c09f8953e9633e3/LICENSE"],"category":"reconstruction-cases","description_en":"Reconstructs first-generation Siri Remote Bluetooth reports for Linux, decoding buttons, touch and tvOS-style gestures. The Python implementation and protocol notes distinguish measured behavior, historical reports and inferred meanings.","description_zh":"重建第一代 Siri Remote 在 Linux 上的蓝牙报告，解析按键、触摸与 tvOS 风格手势。Python 实现和协议文档区分实测行为、历史报告与推测含义。","entry_url":"https://awesomerea.org/resources/open-appleremote-case/","entry_url_zh":"https://awesomerea.org/zh/resources/open-appleremote-case/","evidence_url":"https://github.com/a-funk/open-appleremote/blob/1e6e190c3c29a3d2d8cad2c38c09f8953e9633e3/README.md","group":"cases","id":"open-appleremote-case","json_url":"https://awesomerea.org/resources/open-appleremote-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/open-appleremote-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/open-appleremote-case/index.md","name":"open-appleremote: Siri Remote protocol reconstruction","name_zh":"open-appleremote：Siri Remote 协议重建","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","testing","limits","limits","license"],"requirements":["Package 0.1.0; live use requires Linux, BlueZ, Python 3.8+ and access to the device’s hidraw interface. The core uses the Python standard library.","Project hardware checks cover A1962 with BlueZ 5.72 and Linux 6.17. A1513 is expected but untested; second- and third-generation Siri Remotes are unsupported.","The virtual keyboard has not been hardware-tested. Voice is unreleased and checked with synthetic or recorded frames, not live use in this package; it additionally needs libopus and HCI-monitor privileges.","Protocol notes label measured, previously reported and guessed facts. The public sample does not reproduce every claim from the larger unpublished capture.","MIT-licensed repository."],"requirements_zh":["软件包版本为 0.1.0；实际使用需要 Linux、BlueZ、Python 3.8+ 及设备 hidraw 接口访问权限。核心仅使用 Python 标准库。","项目的硬件检查覆盖 BlueZ 5.72、Linux 6.17 上的 A1962。A1513 仅预计可用，尚未测试；不支持第二、第三代 Siri Remote。","虚拟键盘尚未经过硬件测试。语音功能尚未发布，仅检查了合成或录制帧，未在本软件包中进行实时使用验证；还需要 libopus 和 HCI 监视权限。","协议文档分别标记实测、历史报告和推测事实。公开样本不能复现较大未公开捕获中的全部结论。","仓库采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/a-funk/open-appleremote","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/dvdarkin/gamekb-k17/blob/e61f444793857c0e10a31692674335ee4ee9c89e/docs/PROTOCOL.md","https://github.com/dvdarkin/gamekb-k17/blob/e61f444793857c0e10a31692674335ee4ee9c89e/pyproject.toml","https://github.com/dvdarkin/gamekb-k17/blob/e61f444793857c0e10a31692674335ee4ee9c89e/LICENSE"],"category":"reconstruction-cases","description_en":"Implements the vendor HID configuration protocol for the GAMEKB-K17/HCY-K017 macropad. It writes key mappings, firmware macros and RGB settings, then reads them back; protocol notes separate tested commands from unconfirmed observations and other-device findings.","description_zh":"实现 GAMEKB-K17/HCY-K017 宏键盘的厂商 HID 配置协议，写入按键映射、固件宏和 RGB 设置后再读回核对。协议文档区分已测试命令、未确认观察和其他设备的研究结果。","entry_url":"https://awesomerea.org/resources/gamekb-k17-case/","entry_url_zh":"https://awesomerea.org/zh/resources/gamekb-k17-case/","evidence_url":"https://github.com/dvdarkin/gamekb-k17/blob/e61f444793857c0e10a31692674335ee4ee9c89e/README.md","group":"cases","id":"gamekb-k17-case","json_url":"https://awesomerea.org/resources/gamekb-k17-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/gamekb-k17-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/gamekb-k17-case/index.md","name":"GAMEKB-K17: reconstructing a macropad configuration protocol","name_zh":"GAMEKB-K17：重建宏键盘配置协议","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","testing","scope","testing","license"],"requirements":["Package 3.0.0 requires Python 3.11+ and hidapi; the optional editor uses tkinter. Hardware identity is USB 0816:0220.","Windows is project-tested; other hidapi platforms are untested. Linux configuration requires suitable device permissions.","The documented scope includes 18 remappable controls and up to 16 firmware macros. The volume dial is fixed in firmware.","Read-back verification and interruption ordering are project claims backed by protocol documentation.","MIT license. The reviewed primary files establish reverse engineering of the vendor WebHID configurator."],"requirements_zh":["软件包版本为 3.0.0，需要 Python 3.11+ 和 hidapi；可选编辑器使用 tkinter。设备 USB 标识为 0816:0220。","项目测试了 Windows；其他 hidapi 平台尚未测试。Linux 配置需要相应设备权限。","文档范围包括 18 个可重映射控件和最多 16 个固件宏。音量旋钮由固件固定。","读回核对和中断写入顺序属于项目结合协议文档报告的行为。","采用 MIT 许可证。所审阅一手文件明确说明逆向了厂商 WebHID 配置器。"],"targets":["protocol"],"url":"https://github.com/dvdarkin/gamekb-k17","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/guyru/cf632ble/blob/c029ef5cfefbd323ffe2a194a75db5cc47aa6d5c/package.json"],"category":"reconstruction-cases","description_en":"Reimplements the CF632BLE scale’s BLE protocol and body-composition calculations from research on the vendor’s Unique Health Android app. A static Web Bluetooth client receives measurements, manages device profiles and keeps its history in browser storage.","description_zh":"根据对厂商 Unique Health 安卓应用的研究，重实现 CF632BLE 体脂秤的 BLE 协议和体成分计算。静态 Web Bluetooth 客户端接收测量数据、管理设备档案，并将历史记录保存在浏览器中。","entry_url":"https://awesomerea.org/resources/cf632ble-case/","entry_url_zh":"https://awesomerea.org/zh/resources/cf632ble-case/","evidence_url":"https://github.com/guyru/cf632ble/blob/c029ef5cfefbd323ffe2a194a75db5cc47aa6d5c/README.md","group":"cases","id":"cf632ble-case","json_url":"https://awesomerea.org/resources/cf632ble-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/cf632ble-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cf632ble-case/index.md","name":"CF632BLE: a local client from scale-protocol research","name_zh":"CF632BLE：基于体脂秤协议研究的本地客户端","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","scope","license","testing"],"requirements":["Requires the CF632BLE hardware and a Chromium browser supporting Web Bluetooth in a secure context. Firefox and Safari/iOS cannot connect to the scale through this app.","The SvelteKit/Vite application builds with npm and a static adapter. Its documented measurement path has no application server or vendor backend dependency.","Single-user browser storage is localStorage. The Device tab can explicitly write device profiles and settings; local history and scale memory are different stores.","The reviewed README and package manifest give no project license, and no root LICENSE file was present at the pinned commit.","Device compatibility and formula accuracy are project claims."],"requirements_zh":["需要 CF632BLE 硬件，以及在安全上下文中支持 Web Bluetooth 的 Chromium 浏览器。Firefox 和 Safari/iOS 无法通过此应用连接体脂秤。","SvelteKit/Vite 应用通过 npm 和静态适配器构建。文档所述测量流程不依赖应用服务器或厂商后台。","单用户浏览器数据保存在 localStorage。设备页可由用户明确操作后写入设备档案和设置；本地历史与秤内存是不同存储。","所审阅 README 和软件包清单未给出项目许可证，固定提交的根目录也没有 LICENSE。","设备兼容性和公式准确性属于项目说法。"],"targets":["app","protocol"],"url":"https://github.com/guyru/cf632ble","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/LilZeeCN/zee-rp/blob/473761e6a08f051e1666944db690332ef27a6038/docs/validation.md","https://github.com/LilZeeCN/zee-rp/blob/473761e6a08f051e1666944db690332ef27a6038/docs/release-evidence.json","https://github.com/LilZeeCN/zee-rp/blob/473761e6a08f051e1666944db690332ef27a6038/package.json","https://github.com/LilZeeCN/zee-rp/blob/473761e6a08f051e1666944db690332ef27a6038/LICENSE"],"category":"reconstruction-cases","description_en":"Reads and rewrites supported native Axure RP 11 documents through a binary-record codec, reference-aware cloning and constrained interaction writers. CLI and MCP interfaces expose inspected edits while keeping offline structure checks separate from native application acceptance.","description_zh":"通过二进制记录编解码、考虑引用关系的克隆和受约束的交互写入器，读取并修改受支持的 Axure RP 11 原生文档。CLI 与 MCP 接口提供可检查的编辑操作，并区分离线结构检查和原生应用验收。","entry_url":"https://awesomerea.org/resources/zee-rp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/zee-rp-case/","evidence_url":"https://github.com/LilZeeCN/zee-rp/blob/473761e6a08f051e1666944db690332ef27a6038/README.md","group":"cases","id":"zee-rp-case","json_url":"https://awesomerea.org/resources/zee-rp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/zee-rp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/zee-rp-case/index.md","name":"zee-rp: reconstructing supported Axure RP 11 document operations","name_zh":"zee-rp：重建 Axure RP 11 的受支持文档操作","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","testing","limits","testing","license"],"requirements":["Package 0.1.1 requires Node.js 18+; MCP additionally uses the optional SDK dependency. Native creation needs the user’s Axure blank template and compatible libraries.","Recorded native acceptance uses macOS arm64 and Axure RP 11.0.0.4137. Linux CI covers public core checks; native GUI jobs require macOS and Accessibility permission.","Unsupported document forms, external references and interaction expressions may be rejected. Numbered lists and true native merged table cells are not supported.","Release evidence separates public/generated tests from historical assertions needing an unpublished exact fixture pack. One GUI sample checked load/save/close/reopen, not preview behavior or manual editing; newly synchronized features still need native acceptance.","Authored code/docs are MIT; Axure, its libraries and third-party assets are separate."],"requirements_zh":["软件包版本为 0.1.1，需要 Node.js 18+；MCP 还使用可选 SDK 依赖。生成原生文档需要用户自己的 Axure 空白模板和兼容库。","记录的原生验收环境为 macOS arm64 和 Axure RP 11.0.0.4137。Linux CI 覆盖公开核心检查；原生 GUI 任务需要 macOS 和辅助功能权限。","不支持的文档形式、外部引用和交互表达式可能被拒绝。不支持编号列表和真正的原生合并表格单元格。","发布证据区分公开或生成式测试，以及依赖未公开精确样本包的历史断言。一个 GUI 样本检查了加载、保存、关闭、重开，未检查预览行为或手动编辑；新同步功能仍需原生验收。","作者编写的代码和文档采用 MIT；Axure、其库和第三方资产另行授权。"],"targets":["app"],"url":"https://github.com/LilZeeCN/zee-rp","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/tangosdev/sm64ds-decomp/blob/af8636d638322b88738ef7ad4b4f28ed9c5be24f/port/README.md","https://github.com/tangosdev/sm64ds-decomp/blob/af8636d638322b88738ef7ad4b4f28ed9c5be24f/notes/link-verification.md","https://github.com/tangosdev/sm64ds-decomp/blob/af8636d638322b88738ef7ad4b4f28ed9c5be24f/tools/requirements.txt","https://github.com/tangosdev/sm64ds-decomp/blob/af8636d638322b88738ef7ad4b4f28ed9c5be24f/LICENSE"],"category":"reconstruction-cases","description_en":"Reconstructs Super Mario 64 DS functions as C/C++ and permitted assembly primitives, comparing compiled output with a user-supplied cartridge dump. Independent relocation-destination checks strengthen the matching gate; integration into the PC port is tracked separately.","description_zh":"将 Super Mario 64 DS 函数重建为 C/C++ 和规则允许的汇编原语，并将编译结果与用户提供的卡带转储对比。独立的重定位目标核对强化匹配检查；PC 移植中的集成进度另行统计。","entry_url":"https://awesomerea.org/resources/sm64ds-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sm64ds-decomp-case/","evidence_url":"https://github.com/tangosdev/sm64ds-decomp/blob/af8636d638322b88738ef7ad4b4f28ed9c5be24f/README.md","group":"cases","id":"sm64ds-decomp-case","json_url":"https://awesomerea.org/resources/sm64ds-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sm64ds-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sm64ds-decomp-case/index.md","name":"Super Mario 64 DS: matching decompilation with relocation checks","name_zh":"Super Mario 64 DS：带重定位核对的匹配反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","testing","limits","attribution","license"],"requirements":["Requires the user’s cartridge dump, the pinned mwccarm matching compiler, its separate linker/setup and Python tooling such as ndspy, Capstone and pyelftools.","The pinned README reports 11,389/11,389 matched functions, including 108 byte-exact assembly primitives, but only 10,957 linked into the PC port. These counters describe different gates.","The same README retains older near-finished prose, and port/README.md describes a historical smoke-build stage. Treat matching and port-playability statements as source-specific reports, not a verified complete playable port.","Agent-assisted matching is documented, together with source review and relocation checks.","The repository has an MIT license; original game data and external compiler rights remain separate."],"requirements_zh":["需要用户自己的卡带转储、固定版本的 mwccarm 匹配编译器、单独的链接器及安装环境，以及 ndspy、Capstone、pyelftools 等 Python 工具。","固定提交 README 报告 11,389/11,389 个函数已匹配，其中包括 108 个字节一致的汇编原语；接入 PC 移植的函数为 10,957 个。这些计数代表不同检查。","同一 README 仍保留接近完成的旧表述，port/README.md 则描述历史冒烟构建阶段。匹配与移植可玩性应按各来源分别理解，不能视为已验证的完整可玩移植。","文档说明使用智能体辅助匹配，并配合源码审阅和重定位核对。","仓库有 MIT 许可证；原始游戏数据和外部编译器的权利另行处理。"],"targets":["game"],"url":"https://github.com/tangosdev/sm64ds-decomp","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/jkdansereau/goldeneye-pc-port/blob/fda76b69837e6c5aae436e0d3e798989e49b06d2/NOTICE","https://github.com/jkdansereau/goldeneye-pc-port/blob/fda76b69837e6c5aae436e0d3e798989e49b06d2/LICENSE","https://github.com/jkdansereau/goldeneye-pc-port/blob/fda76b69837e6c5aae436e0d3e798989e49b06d2/docs/ROADMAP.md"],"category":"reconstruction-cases","description_en":"Builds a native PC port on the existing GoldenEye 007 decompilation, with a host platform layer and assets extracted from the user’s ROM. The project documents agent collaboration, rendering comparisons, playtest scope and unresolved platform support.","description_zh":"在已有 GoldenEye 007 反编译成果之上构建原生 PC 移植，提供宿主平台适配层，并从用户自己的 ROM 提取资产。项目记录智能体协作、渲染对比、试玩范围和尚未解决的平台支持。","entry_url":"https://awesomerea.org/resources/goldeneye-pc-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/goldeneye-pc-port-case/","evidence_url":"https://github.com/jkdansereau/goldeneye-pc-port/blob/fda76b69837e6c5aae436e0d3e798989e49b06d2/README.md","group":"cases","id":"goldeneye-pc-port-case","json_url":"https://awesomerea.org/resources/goldeneye-pc-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/goldeneye-pc-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/goldeneye-pc-port-case/index.md","name":"GoldenEye 007: an agent-assisted native port from a decompilation","name_zh":"GoldenEye 007：基于反编译成果的智能体辅助原生移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed v0.5.0 documentation supports Windows 10/11 x64 and x86-64 Linux/Steam Deck with glibc 2.31+; both need OpenGL 3.0 drivers. macOS and ARM builds remain planned, despite the broader repository About description.","Release packages require the user’s US NTSC-U ROM; PAL and Japanese releases are not yet supported. This is a native port from decompiled source, not static binary recompilation.","Source builds need CMake 3.16+, C/C++, SDL2, zlib, OpenGL, Python 3 and the documented asset-extraction tools.","v0.5.0 playtests were campaign spot-checks and multiplayer sessions; the full Agent-difficulty campaign was last reported end-to-end at v0.4.0.","MIT covers original port/build/tooling/docs work only. NOTICE states inherited n64decomp/007 material has no explicit upstream license, and vendored components have separate terms; the MIT file is not a blanket grant over all contents."],"requirements_zh":["所审阅 v0.5.0 文档支持 Windows 10/11 x64，以及带 glibc 2.31+ 的 x86-64 Linux/Steam Deck；两者都需要 OpenGL 3.0 驱动。macOS 与 ARM 构建仍在计划中，不能照搬仓库简介中更宽泛的平台表述。","发布包需要用户自己的美版 NTSC-U ROM；尚不支持欧版和日版。这是基于反编译源码的原生移植，不是静态二进制重编译。","源码构建需要 CMake 3.16+、C/C++、SDL2、zlib、OpenGL、Python 3 及文档所列资产提取工具。","v0.5.0 试玩为战役抽查和多人会话；完整 Agent 难度战役最后一次报告的全流程测试是 v0.4.0。","MIT 仅覆盖作者原创的移植层、构建、工具和文档。NOTICE 说明继承的 n64decomp/007 材料没有明确上游许可证，内置第三方组件也有各自条款；MIT 文件不是全部内容的统一授权。"],"targets":["game"],"url":"https://github.com/jkdansereau/goldeneye-pc-port","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/Denkishi/ssbu-recomp/blob/938e66bb7be0ba4123e291211895412da421b705/BUILDING.md","https://github.com/Denkishi/ssbu-recomp/blob/938e66bb7be0ba4123e291211895412da421b705/LICENSE"],"category":"reconstruction-cases","description_en":"Translates Super Smash Bros. Ultimate 13.0.4 AArch64 code ahead of time and supplies a Windows runtime with Vulkan/OpenGL rendering. It also reconstructs selected fighter scripts as editable C++ and compares translated/source behavior through differential and deterministic tests.","description_zh":"将 Super Smash Bros. Ultimate 13.0.4 的 AArch64 代码提前转换，并提供带 Vulkan/OpenGL 渲染的 Windows 运行时。项目还将部分角色脚本重建为可编辑 C++，通过差分与确定性测试对比转换代码和源码行为。","entry_url":"https://awesomerea.org/resources/ssbu-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/ssbu-recomp-case/","evidence_url":"https://github.com/Denkishi/ssbu-recomp/blob/938e66bb7be0ba4123e291211895412da421b705/README.md","group":"cases","id":"ssbu-recomp-case","json_url":"https://awesomerea.org/resources/ssbu-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/ssbu-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ssbu-recomp-case/index.md","name":"ssbu-recomp: static recompilation with explicit mode limits","name_zh":"ssbu-recomp：明确玩法边界的静态重编译","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","testing","license"],"requirements":["Running requires Windows 10/11 x64, a Vulkan 1.3-capable GPU and the user’s own 13.0.4 game dump. Linux and Steam Deck support have not started.","Building requires Python 3.10+ with the documented packages, LLVM/clang 9.0.0 (8.0.0 is also documented as working), MSVC/Windows SDK, SDL3, Vulkan headers, glslang and reference tooling. Music needs libopus; movies need Media Foundation, VP9 Video Extensions and Web Media Extensions 2.x, with Media Feature Pack additionally required on Windows N.","Only some modes have reported play coverage. Adventure maps/fights and several multiplayer modes are untested; online is unavailable. Physical controllers are not yet confirmed.","The author credits Claude agents. Reported frame rates, differential equivalence and selected fighter match traces.","The README grants GPL version 3 or later. The public repository supplies tools/runtime rather than the game dump, keys or assets; game-derived output is a separate requirement."],"requirements_zh":["运行需要 Windows 10/11 x64、支持 Vulkan 1.3 的 GPU，以及用户自己的 13.0.4 游戏转储。Linux 和 Steam Deck 支持尚未开始。","构建需要 Python 3.10+ 及文档所列软件包、LLVM/clang 9.0.0（文档也说明 8.0.0 可用）、MSVC/Windows SDK、SDL3、Vulkan 头文件、glslang 和参考工具。音乐需要 libopus；影片需要 Media Foundation、VP9 Video Extensions 和 Web Media Extensions 2.x，Windows N 还需要 Media Feature Pack。","只有部分模式报告了游玩覆盖。冒险地图与战斗及若干多人模式尚未测试；在线功能不可用。实体手柄尚未确认可用。","作者说明使用 Claude 智能体。报告的帧率、差分一致性和部分角色比赛轨迹。","README 授予 GPL 第 3 版或更新版本许可。公开仓库提供工具与运行时，而非游戏转储、密钥或资产；游戏派生产物需要另行处理。"],"targets":["game"],"url":"https://github.com/Denkishi/ssbu-recomp","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/chrissotraidis/kartpad/blob/7e99c6776263caa85dccde2de6281cb092778877/RIGHTS_AND_LICENSES.md","https://github.com/chrissotraidis/kartpad/blob/7e99c6776263caa85dccde2de6281cb092778877/docs/STATUS.md","https://github.com/chrissotraidis/kartpad/blob/7e99c6776263caa85dccde2de6281cb092778877/docs/KNOWN-ISSUES.md","https://github.com/chrissotraidis/kartpad/blob/7e99c6776263caa85dccde2de6281cb092778877/LICENSE"],"category":"reconstruction-cases","description_en":"Builds Apple and Android integration around WiiCompiled’s ahead-of-time translation of Mario Kart Wii, with native graphics, input and optional Retro Rewind support. Its status and rights documents distinguish platform acceptance, unresolved device defects and game-content requirements.","description_zh":"围绕 WiiCompiled 对 Mario Kart Wii 的提前转换实现 Apple 与 Android 平台集成，提供原生图形、输入及可选 Retro Rewind 支持。状态和权利文档区分平台验收、未解决的设备缺陷及游戏内容要求。","entry_url":"https://awesomerea.org/resources/kartpad-case/","entry_url_zh":"https://awesomerea.org/zh/resources/kartpad-case/","evidence_url":"https://github.com/chrissotraidis/kartpad/blob/7e99c6776263caa85dccde2de6281cb092778877/README.md","group":"cases","id":"kartpad-case","json_url":"https://awesomerea.org/resources/kartpad-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/kartpad-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/kartpad-case/index.md","name":"KartPad: platform integration for a Mario Kart Wii recompilation","name_zh":"KartPad：Mario Kart Wii 重编译的平台集成","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","attribution","license"],"requirements":["Requires user-supplied supported PAL RMCP01 revision 0 game data. Retro Rewind 6.13.3 needs matching separately obtained content and a compatible compiled profile in the reviewed 0.8.3 build.","Android targets ARM64/Vulkan on Android 9+; iPhone/iPad require iOS/iPadOS 16+. The README documents a PadMint/source route for Apple Silicon macOS 14+, while the pinned status table still labels Mac experimental. tvOS 17+ is also an experimental preview.","Physical-device and emulator checks cover specific builds and devices. Missing graphics, freezes, controller and performance problems remain on some hardware.","Substantial AI assistance is disclosed without an audited generated-code percentage.","KartPad-owned work is GPL-3.0-only, with upstream component terms retained. RIGHTS_AND_LICENSES separates software obligations from game-derived logic and assets; GPL does not relicense Mario Kart Wii."],"requirements_zh":["需要用户提供受支持的欧版 PAL RMCP01 revision 0 游戏数据。所审阅 0.8.3 构建的 Retro Rewind 6.13.3 支持需要另行获取匹配内容，并使用兼容的已编译配置。","Android 面向 Android 9+ 的 ARM64/Vulkan 设备；iPhone/iPad 需要 iOS/iPadOS 16+。README 给出了 Apple Silicon macOS 14+ 的 PadMint／源码路线，但固定版本状态表仍将 Mac 标为实验性。tvOS 17+ 也仍为实验性预览。","实体设备和模拟器检查只覆盖特定构建与设备。部分硬件仍有图形缺失、卡死、手柄和性能问题。","项目披露大量使用 AI 辅助，但没有经审计的代码生成比例。","KartPad 自有成果采用 GPL-3.0-only，保留上游组件条款。RIGHTS_AND_LICENSES 区分软件义务与游戏派生逻辑、资产；GPL 不会重新授权 Mario Kart Wii。"],"targets":["game"],"url":"https://github.com/chrissotraidis/kartpad","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/JRickey/BattleShip/blob/39e978fbffe06a24f718bdf1ca740f27ad6a7dec/BUILDING.md","https://github.com/JRickey/BattleShip/blob/39e978fbffe06a24f718bdf1ca740f27ad6a7dec/LICENSE","https://github.com/JRickey/BattleShip/blob/5c3e6bf58f19ba07d0fa33cfc324294bf4c658a2/README.md"],"category":"reconstruction-cases","description_en":"Ports the existing Super Smash Bros. N64 decompilation using libultraship and Torch. The author’s earlier README describes agent-built graphics/audio comparison tools and differential debugging against emulator behavior, rather than claiming AI recovered the game from a cartridge without prior community work.","description_zh":"使用 libultraship 和 Torch 移植已有的 Super Smash Bros. N64 反编译成果。作者早期的 README 介绍了智能体构建的图形、音频对比工具和对照模拟器行为的差分调试，并未将其说成脱离社区既有成果、仅靠卡带自动恢复游戏。","entry_url":"https://awesomerea.org/resources/battleship-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/battleship-port-case/","evidence_url":"https://github.com/JRickey/BattleShip/blob/39e978fbffe06a24f718bdf1ca740f27ad6a7dec/README.md","group":"cases","id":"battleship-port-case","json_url":"https://awesomerea.org/resources/battleship-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/battleship-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/battleship-port-case/index.md","name":"BattleShip: an AI-assisted Super Smash Bros. native port","name_zh":"BattleShip：AI 辅助的 Super Smash Bros. 原生移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","attribution","license"],"requirements":["Requires the user’s own Super Smash Bros. N64 dump matching a documented hash: US NTSC-U v1.0 (NALE) or Japanese v1.0 (NALJ). Each region is a separate build; Torch extracts assets locally during a source build or on a packaged build’s first run.","The README lists native Windows, Linux, Apple Silicon macOS and Android builds; native C mods and the GameCube adapter driver are desktop-only. BUILDING.md covers desktop source builds with Git/submodules, CMake and Python 3, plus Ninja on Linux/macOS or Visual Studio 2022 and the Windows SDK on Windows.","The author reports developing the port alone with Claude until v0.3-beta and says it is no longer a pure AI project, crediting community testing, fixes and features; these statements are self-reported.","The LICENSE grants MIT only to port-specific code, build scripts, tools and docs. The decomp submodule and decomp-derived files defer to the upstream decompilation, which publishes no explicit license; libultraship/Torch, bundled fonts and controller mappings keep their own terms; game rights are separate."],"requirements_zh":["需要用户自己的 Super Smash Bros. N64 转储，并匹配文档中的哈希：美版 NTSC-U v1.0（NALE）或日版 v1.0（NALJ）。两个地区版本需分别构建；Torch 在源码构建时或打包版首次运行时于本地提取资产。","README 列出 Windows、Linux、Apple Silicon macOS 和 Android 原生版本；原生 C 模组和 GameCube 适配器驱动仅限桌面平台。BUILDING.md 说明桌面源码构建，需要 Git/子模块、CMake 和 Python 3，Linux/macOS 另需 Ninja，Windows 需要 Visual Studio 2022 和 Windows SDK。","作者自述在 v0.3-beta 之前独自借助 Claude 开发，并表示项目现已不再是纯 AI 项目，感谢社区提供的测试、修复和功能；这些说法属于自述。","LICENSE 仅对移植专用代码、构建脚本、工具和文档授予 MIT。反编译子模块及由其派生的文件遵从上游反编译项目，该项目未发布明确许可证；libultraship/Torch、随附字体和手柄映射保留各自条款；游戏权利另行处理。"],"targets":["game"],"url":"https://github.com/JRickey/BattleShip","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","category":"reconstruction-cases","description_en":"Maurice Heumann describes replacing plausible-looking agent output with compiler-based checks of reconstructed functions, relocations, data and types. The retrospective reports 99% function presence and 83% of all functions byte-exact, while keeping the reconstruction code private.","description_zh":"Maurice Heumann 介绍如何用基于编译器的函数、重定位、数据和类型检查，取代看似合理的智能体输出。复盘报告 99% 的函数已进入重建源码，全部函数中 83% 达到字节一致；重建代码仍不公开。","entry_url":"https://awesomerea.org/resources/agent-decompilation-oracle-case/","entry_url_zh":"https://awesomerea.org/zh/resources/agent-decompilation-oracle-case/","evidence_url":"https://momo5502.com/posts/2026-10-09-game-decompilation/","group":"cases","id":"agent-decompilation-oracle-case","json_url":"https://awesomerea.org/resources/agent-decompilation-oracle-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/agent-decompilation-oracle-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/agent-decompilation-oracle-case/index.md","name":"Agent decompilation: a byte-matching retrospective","name_zh":"智能体反编译：字节匹配验收复盘","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","scope","testing","scope"],"requirements":["Author retrospective dated 2026-10-09; the reviewed article leaves the game unnamed.","The project uses the original compiler and binary as references; no public implementation or reproducible artifact is supplied.","Coverage figures and runtime success are author-reported.","A documented case study."],"requirements_zh":["作者复盘发布于 2026-10-09；所审阅文章没有指明游戏名称。","项目以原编译器和二进制为参照；未提供公开实现或可复现产物。","覆盖率和运行成功属于作者报告。","这是有文档的案例研究。"],"targets":["game"],"url":"https://momo5502.com/posts/2026-10-09-game-decompilation/","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://blog.chrislewis.au/using-coding-agents-to-decompile-nintendo-64-games/","https://blog.chrislewis.au/the-unexpected-effectiveness-of-one-shot-decompilation-with-claude/","https://blog.chrislewis.au/the-long-tail-of-llm-assisted-decompilation/","https://blog.chrislewis.au/snowboard-kids-2-is-100-decompiled/","https://github.com/cdlewis/snowboardkids2-decomp/tree/352a26fae08b3394e11f5e2b589e41a572d53288/assets/sprite_sheets/menuUiSprites"],"category":"reconstruction-cases","description_en":"A public matching decompilation of the N64 game Snowboard Kids 2, begun in 2024 with community decompilation tools. The author’s dated posts document Claude, Codex and GLM workflows, including headless one-shot loops, similarity-based function scheduling and hook-guarded, hash-checked builds, through a reported complete function match.","description_zh":"N64 游戏 Snowboard Kids 2 的公开匹配反编译项目，2024 年借助社区反编译工具启动。作者在按日期发布的文章中记录了 Claude、Codex 和 GLM 的使用流程，包括无界面的一次性匹配循环、按函数相似度安排任务，以及由钩子约束、经哈希校验的构建，直至报告全部函数完成匹配。","entry_url":"https://awesomerea.org/resources/snowboardkids2-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/snowboardkids2-decomp-case/","evidence_url":"https://github.com/cdlewis/snowboardkids2-decomp/blob/352a26fae08b3394e11f5e2b589e41a572d53288/README.md","group":"cases","id":"snowboardkids2-decomp-case","json_url":"https://awesomerea.org/resources/snowboardkids2-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/snowboardkids2-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/snowboardkids2-decomp-case/index.md","name":"Snowboard Kids 2: an LLM-assisted N64 matching decompilation","name_zh":"Snowboard Kids 2：大模型辅助的 N64 匹配反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","testing","limits","attribution","license"],"requirements":["Building needs the user’s own big-endian Snowboard Kids 2 ROM, make, Python 3, MIPS binutils and the toolchain installed by make setup; the README reports testing only on x86 Debian/Ubuntu and macOS. It states the repository has no game assets or assembly, although the reviewed tree tracks menu-sprite PNG and palette files under assets/.","Progress figures are author-reported. The 2026-02-16 post describes matched code rising from about 25% to 58% with one-shot loops, then to about 75%, with 124 functions left; the 2026-05-17 post reports every function matched. The 2025-11-27 post’s 79% figure was a projection.","Byte-matching C is not documented or idiomatic source. The 2026-05-17 post notes remaining __asm__ coercions, many generated names and structures still needing cleanup, and graphics/audio assets mostly handled as binary blobs; the 2026-02-16 post describes brittle agent matches.","Agent assistance is not quantified beyond the posts. The 2026-05-17 post dates the first commit to September 2024 and credits four named N64 decomp community members with significant contributions, especially across the final ten functions; the 2025-11-04 post describes a human-led loop. The work relies on community tools such as splat, m2c, decomp.me, asm-differ and decomp-permuter.","No license file is present at the reviewed commit. The June 2026 Snowboard Kids 2: Recompiled release and the August 2026 decompilation of the original Snowboard Kids are separate projects."],"requirements_zh":["构建需要用户自己的大端序 Snowboard Kids 2 ROM、make、Python 3、MIPS binutils，以及通过 make setup 安装的工具链；README 只报告在 x86 Debian/Ubuntu 和 macOS 上测试过。README 称仓库不含任何游戏资产或汇编，但所审阅的提交仍在 assets/ 下收录了菜单精灵 PNG 和调色板文件。","进度数字均为作者报告。2026-02-16 的文章称，一次性匹配循环使已匹配代码从约 25% 升至 58%，之后达到约 75%，剩余 124 个函数；2026-05-17 的文章报告全部函数已匹配。2025-11-27 文章中的 79% 只是预测。","字节一致的 C 代码不等于有文档、符合习惯的源码。2026-05-17 的文章指出仍有针对性的 __asm__ 写法，大量名称和结构仍是自动生成或有待整理，图形和音频资产大多仍作为二进制块处理；2026-02-16 的文章也提到智能体的匹配结果较脆弱。","智能体的贡献比例只来自作者文章，未经量化。2026-05-17 的文章说明首次提交在 2024 年 9 月，并感谢四位具名的 N64 反编译社区成员作出重要贡献，尤其是在最后十个函数上；2025-11-04 的文章描述的是由人主导的流程。项目依赖 splat、m2c、decomp.me、asm-differ、decomp-permuter 等社区工具。","所审阅的提交中没有许可证文件。2026 年 6 月发布的 Snowboard Kids 2: Recompiled，以及 2026 年 8 月完成的初代 Snowboard Kids 反编译，都是独立项目。"],"targets":["game"],"url":"https://github.com/cdlewis/snowboardkids2-decomp","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/yibie/awesome-rea/blob/6df1bc922ac6b92dcd1b2f905c94d8cc4f3b5a3e/CONTRIBUTING.md","https://github.com/yibie/awesome-rea/blob/6df1bc922ac6b92dcd1b2f905c94d8cc4f3b5a3e/LICENSE","https://github.com/yibie/awesome-rea/blob/6df1bc922ac6b92dcd1b2f905c94d8cc4f3b5a3e/categories/related-practices-discussions.md","https://github.com/yibie/awesome-rea/blob/6df1bc922ac6b92dcd1b2f905c94d8cc4f3b5a3e/categories/console-and-firmware.md"],"category":"related-lists","description_en":"Organizes AI-assisted game decompilation, native ports, static recompilation and tooling around stated acceptance checks, alongside a separate track of practitioner write-ups and discussions. Useful for finding primary reports and comparing how projects define correctness.","description_zh":"围绕明确的验收检查整理 AI 辅助游戏反编译、原生移植、静态重编译和工具，并另设实践文章与讨论分类。适合寻找一手报告，比较不同项目如何定义正确性。","entry_url":"https://awesomerea.org/resources/yibie-awesome-rea/","entry_url_zh":"https://awesomerea.org/zh/resources/yibie-awesome-rea/","evidence_url":"https://github.com/yibie/awesome-rea/blob/6df1bc922ac6b92dcd1b2f905c94d8cc4f3b5a3e/README.md","group":"learn","id":"yibie-awesome-rea","json_url":"https://awesomerea.org/resources/yibie-awesome-rea/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/yibie-awesome-rea/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/yibie-awesome-rea/index.md","name":"awesome-rea (yibie): verification-focused projects and practice reports","name_zh":"awesome-rea（yibie）：关注验证的项目与实践报告","record_type":"resource","relationship":"community-learning-resource","requirements":["Project entries describe acceptance mechanisms; the separate discussion track does not require public code or an acceptance test.","The reviewed snapshot has an intentionally empty console/firmware category.","Collection summaries can lag primary repositories, including platform support, progress and license scope; follow the linked project sources before relying on a claim.","The collection LICENSE declares CC0 1.0 Universal. Linked projects and source articles retain their own rights and license conditions.","An independent community collection."],"requirements_zh":["项目条目描述验收机制；单独的讨论分类不要求公开代码或验收测试。","所审阅快照的主机/固件分类刻意保持为空。","合集摘要可能落后于一手仓库，包括平台支持、进度和许可范围；依赖某项说法前应查看原项目来源。","合集 LICENSE 声明采用 CC0 1.0 Universal。链接项目和来源文章保留各自权利及许可条件。","这是独立社区合集。"],"targets":["binary","game"],"url":"https://github.com/yibie/awesome-rea","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/kristjaningi/cooler-lcd/blob/9a343678ba102de784b2302f79c53fd6ddc31ab9/Cargo.toml","https://github.com/kristjaningi/cooler-lcd/blob/9a343678ba102de784b2302f79c53fd6ddc31ab9/src/device.rs","https://github.com/kristjaningi/cooler-lcd/blob/9a343678ba102de784b2302f79c53fd6ddc31ab9/LICENSE"],"category":"reconstruction-cases","description_en":"Implements a USB picture-transfer driver for Thermalright Vision cooler displays, with a Rust dashboard replacing the vendor display application. The documented protocol sends a header and JPEG frames, with periodic resends to prevent the device reverting to its logo.","description_zh":"为 Thermalright Vision 散热器显示屏实现 USB 图像传输驱动，并用 Rust 仪表盘替代厂商显示应用。文档所述协议发送报头和 JPEG 帧，通过定期重发避免设备退回品牌标志画面。","entry_url":"https://awesomerea.org/resources/cooler-lcd-case/","entry_url_zh":"https://awesomerea.org/zh/resources/cooler-lcd-case/","evidence_url":"https://github.com/kristjaningi/cooler-lcd/blob/9a343678ba102de784b2302f79c53fd6ddc31ab9/README.md","group":"cases","id":"cooler-lcd-case","json_url":"https://awesomerea.org/resources/cooler-lcd-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/cooler-lcd-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cooler-lcd-case/index.md","name":"cooler-lcd: a Thermalright display protocol implementation","name_zh":"cooler-lcd：Thermalright 显示屏协议实现","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","scope","limits","license"],"requirements":["Package 0.1.0 uses Rust edition 2024 and targets the 480×480 USB 87ad:70db display family.","Its documented environment is Linux with udev/systemd and Omarchy integration. Hyprland supplies away/lock state; NVIDIA telemetry uses NVML, and individual screens need their own optional services.","The driver cites TRCC Linux reverse-engineering notes for its 64-byte frame header and JPEG payload, with one-second keepalive resends.","Only one process can own the display at once; the vendor TRCC application must relinquish it.","MIT-licensed code. Optional traffic/map feeds and other external services retain their own terms."],"requirements_zh":["软件包版本为0.1.0，使用 Rust 2024 版次，面向480×480、USB 87ad:70db的显示屏系列。","文档环境为带 udev/systemd 和 Omarchy 集成的 Linux。Hyprland 提供离开/锁屏状态，NVIDIA 遥测使用 NVML，各屏幕功能另有可选服务依赖。","驱动引用 TRCC Linux 的逆向笔记作为64字节帧报头与 JPEG 载荷的依据，并每秒保活重发。","同一时间只能由一个进程占用显示屏；厂商 TRCC 应用需释放设备。","代码采用 MIT；可选航迹、地图数据与其他外部服务保留各自条款。"],"targets":["protocol"],"url":"https://github.com/kristjaningi/cooler-lcd","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/whylurking/IsaacRecomp/blob/7736f3d2961051b66cd315bcf5a719e9024d889d/LICENSE","https://github.com/whylurking/IsaacRecomp/blob/7736f3d2961051b66cd315bcf5a719e9024d889d/CMakeLists.txt","https://github.com/whylurking/IsaacRecomp/blob/7736f3d2961051b66cd315bcf5a719e9024d889d/THIRD-PARTY-LICENSES.txt"],"category":"reconstruction-cases","description_en":"Translates The Binding of Isaac’s Flash AVM1 bytecode into C++ functions and supplies a native rendering/input runtime. The project reads graphics and audio from the user’s original game and documents deterministic input, headless runs and screenshot regression checks.","description_zh":"将 The Binding of Isaac 的 Flash AVM1 字节码转换为 C++ 函数，并提供原生渲染与输入运行时。项目从用户自己的原游戏读取图像和音频，并记录了确定性输入、无界面运行和截图回归检查。","entry_url":"https://awesomerea.org/resources/isaacrecomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/isaacrecomp-case/","evidence_url":"https://github.com/whylurking/IsaacRecomp/blob/7736f3d2961051b66cd315bcf5a719e9024d889d/README.md","group":"cases","id":"isaacrecomp-case","json_url":"https://awesomerea.org/resources/isaacrecomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/isaacrecomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/isaacrecomp-case/index.md","name":"IsaacRecomp: translating Flash game bytecode to native C++","name_zh":"IsaacRecomp：将 Flash 游戏字节码转换为原生 C++","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","testing","testing","license"],"requirements":["Requires the user’s original Steam Isaac.exe; Wrath of the Lamb and Eternal Edition depend on the corresponding game version. This is ahead-of-time translation, not recovery of the original authored ActionScript project.","Documented targets include 64-bit Windows/Linux, Android 7.0+ on 64-bit ARM and Switch homebrew. Source builds use CMake/Ninja and SDL2/OpenGL 3.3 or ES 3.0; mobile/console builds have separate SDK/toolchain requirements.","The author credits AI assistance and reports 30 Hz game logic with higher-rate interpolated rendering.","Reported regression tests compare deterministic logic and screenshots across engine revisions.","MIT covers the authored engine, tools, build files and docs only. LICENSE explicitly excludes gen/, gen720/, patch1080/ and patch720/ translated game-code directories; third-party and original-game rights remain separate."],"requirements_zh":["需要用户自己的原版 Steam Isaac.exe；Wrath of the Lamb 和 Eternal Edition 依赖对应游戏版本。这是提前转换，不是恢复原作者的 ActionScript 工程。","文档列出 64 位 Windows/Linux、64 位 ARM 设备上的 Android 7.0+ 及 Switch 自制程序目标。源码构建使用 CMake/Ninja 和 SDL2/OpenGL 3.3 或 ES 3.0；移动端、主机端另有 SDK 和工具链要求。","作者说明使用AI辅助，并报告30 Hz游戏逻辑配合更高频率的插值渲染。","报告中的回归测试对比不同引擎版本的确定性逻辑和截图。","MIT仅覆盖作者编写的引擎、工具、构建文件和文档。LICENSE明确排除 gen/、gen720/、patch1080/、patch720/ 中的游戏转换代码；第三方与原游戏权利另行处理。"],"targets":["game"],"url":"https://github.com/whylurking/IsaacRecomp","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/cudanexus/vd-streamer-linux/blob/e65c302f13639f044742bdc4951ab1a424c1c929/LICENSE"],"category":"community-case-studies","description_en":"An author-reported Claude Code and REA workflow replaces the macOS streamer’s capture, encoding, audio and input layer with Linux implementations while reusing vendor protocol libraries. The documented result targets desktop streaming and video playback, not Windows-only VR game streaming.","description_zh":"作者报告通过 Claude Code 与 REA，将 macOS 串流端的捕获、编码、音频和输入层替换为 Linux 实现，同时复用厂商协议库。文档中的目标是桌面串流和视频播放，而非仅 Windows 串流端提供的 VR 游戏串流。","entry_url":"https://awesomerea.org/resources/vd-streamer-linux-case/","entry_url_zh":"https://awesomerea.org/zh/resources/vd-streamer-linux-case/","evidence_url":"https://github.com/cudanexus/vd-streamer-linux/blob/e65c302f13639f044742bdc4951ab1a424c1c929/README.md","group":"rea","id":"vd-streamer-linux-case","json_url":"https://awesomerea.org/resources/vd-streamer-linux-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/vd-streamer-linux-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/vd-streamer-linux-case/index.md","name":"Virtual Desktop Streamer: rehosting the platform layer on Linux","name_zh":"Virtual Desktop Streamer：在 Linux 上重建平台适配层","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","prerequisites","testing","testing","license"],"requirements":["Requires the official macOS Virtual Desktop installer for proprietary libraries and the user’s Virtual Desktop headset application. It is not a complete protocol reimplementation or an official vendor port.","The build uses .NET 8. Linux runtime dependencies include GStreamer 1.16+, PulseAudio/PipeWire, X11 or an appropriate Wayland portal, OpenSSL 1.1 or 3 and uinput access; video-file playback additionally needs FFmpeg 7.","Published testing used a simulated headset, mock portal and container networking. No real headset, real Wi-Fi or GPU encoder was available; internet matchmaking and same-address network changes were untested.","The scroll fix was checked at device/libinput level without directly observing the receiving X11 app.","MIT applies to this repository’s code only. Vendor libraries remain proprietary; the project limits redistribution of packages containing them and does not grant rights to the headset application."],"requirements_zh":["需要官方 macOS Virtual Desktop 安装包中的专有库，以及用户自己的 Virtual Desktop 头显应用。它不是完整协议重实现，也不是厂商官方移植。","构建使用 .NET 8。Linux运行依赖包括 GStreamer 1.16+、PulseAudio/PipeWire、X11或适用的 Wayland portal、OpenSSL 1.1 或 3及 uinput 访问权限；视频文件播放还需要 FFmpeg 7。","公开测试使用模拟头显、模拟 portal 和容器网络。测试环境没有真实头显、真实 Wi-Fi 或 GPU 编码器；互联网配对和地址不变的网络切换未测试。","滚动修复只检查到设备/libinput层，未直接观察接收事件的 X11 应用。","MIT仅适用于本仓库代码。厂商库仍属专有软件；项目限制含这些库的软件包再分发，也不授予头显应用的权利。"],"targets":["app"],"url":"https://github.com/cudanexus/vd-streamer-linux","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/Caho1/open-claude-ui/blob/ddf3aea1711db62fd6d24343bbab500a5ae69f64/package.json","https://github.com/Caho1/open-claude-ui/blob/ddf3aea1711db62fd6d24343bbab500a5ae69f64/assets/README.md","https://github.com/Caho1/open-claude-ui/blob/ddf3aea1711db62fd6d24343bbab500a5ae69f64/docs/v2/README.md","https://github.com/Caho1/open-claude-ui/blob/ddf3aea1711db62fd6d24343bbab500a5ae69f64/LICENSE"],"category":"community-case-studies","description_en":"Publishes React components, motion helpers and design-system notes derived from the author’s reported REA investigation of Claude Desktop. It is useful as an interface-reconstruction case, with version-specific observations rather than proof of a complete assistant application or backend clone.","description_zh":"发布 React 组件、动效辅助模块和设计系统笔记，作者将其归因于使用 REA 调查 Claude Desktop。它可作为界面重建案例；观察结果受版本约束，不能证明已完整复刻助手应用或后端。","entry_url":"https://awesomerea.org/resources/open-claude-ui-case/","entry_url_zh":"https://awesomerea.org/zh/resources/open-claude-ui-case/","evidence_url":"https://github.com/Caho1/open-claude-ui/blob/ddf3aea1711db62fd6d24343bbab500a5ae69f64/README.md","group":"rea","id":"open-claude-ui-case","json_url":"https://awesomerea.org/resources/open-claude-ui-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/open-claude-ui-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/open-claude-ui-case/index.md","name":"Open Claude UI: REA-informed interface reference components","name_zh":"Open Claude UI：基于 REA 调查的界面参考组件","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","scope","testing","limits","license"],"requirements":["Package 1.0.0 declares React/React DOM 18+, Framer Motion 10+ and lucide-react 0.280+ peer dependencies; its development setup uses TypeScript 5.5 and Framer Motion 11.","Versioned analysis explicitly targets Claude Desktop v2.37337.1 and reports REA v6.5.0.","The package exposes build/typecheck and a component preview; production-grade or high-fidelity wording remains the author’s assertion.","UI component examples do not supply Claude model access, account services or a recovered complete desktop application. Native desktop effects require their own host integration.","MIT repository license. The asset policy documents system-font fallbacks and synthesized audio instead of bundled proprietary font/audio files; it does not grant rights in upstream Claude assets or branding."],"requirements_zh":["软件包1.0.0声明 React/React DOM 18+、Framer Motion 10+和 lucide-react 0.280+为对等依赖；开发环境使用 TypeScript 5.5和 Framer Motion 11。","版本化分析明确面向 Claude Desktop v2.37337.1，并报告使用 REA v6.5.0。","软件包提供构建、类型检查和组件预览；生产级或高保真表述仍是作者说法。","UI组件示例不提供 Claude 模型访问、账号服务或完整恢复的桌面应用；原生桌面效果还需要相应宿主集成。","仓库采用MIT。资产政策说明使用系统字体回退和合成音频代替捆绑专有字体、音频文件；这不授予上游 Claude 资产或品牌权利。"],"targets":["app"],"url":"https://github.com/Caho1/open-claude-ui","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/nanolathe-gg/nanolathe/blob/5007ba75354c06fc9752a2822d37ff1e1443b77b/go.mod","https://github.com/nanolathe-gg/nanolathe/blob/5007ba75354c06fc9752a2822d37ff1e1443b77b/NOTICE.md","https://github.com/nanolathe-gg/nanolathe/blob/5007ba75354c06fc9752a2822d37ff1e1443b77b/docs/PUBLICATION.md","https://github.com/nanolathe-gg/nanolathe/blob/5007ba75354c06fc9752a2822d37ff1e1443b77b/research/retail-executable-spec/README.md","https://github.com/nanolathe-gg/nanolathe/blob/5007ba75354c06fc9752a2822d37ff1e1443b77b/LICENSE"],"category":"reconstruction-cases","description_en":"Reimplements a Total Annihilation-compatible strategy-game engine in Go, with public file-format research and separate gameplay profiles. It distinguishes intended retail 3.1 behavior from community-patch research and deliberate modern changes, and separates synthetic checks from tests requiring original game data.","description_zh":"用 Go 重实现兼容 Total Annihilation 的策略游戏引擎，公开文件格式研究并提供不同玩法配置。项目区分拟复现的零售版3.1行为、社区补丁研究和有意加入的现代改动，也区分合成检查与依赖原始游戏数据的测试。","entry_url":"https://awesomerea.org/resources/nanolathe-case/","entry_url_zh":"https://awesomerea.org/zh/resources/nanolathe-case/","evidence_url":"https://github.com/nanolathe-gg/nanolathe/blob/5007ba75354c06fc9752a2822d37ff1e1443b77b/README.md","group":"cases","id":"nanolathe-case","json_url":"https://awesomerea.org/resources/nanolathe-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/nanolathe-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/nanolathe-case/index.md","name":"Nanolathe: a documented Total Annihilation engine reimplementation","name_zh":"Nanolathe：附研究文档的 Total Annihilation 引擎重实现","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","scope","testing","license"],"requirements":["Native use requires the user’s installed Total Annihilation HPI archives. The reference installation includes Core Contingency, Battle Tactics and patch 3.1; other combinations remain under testing.","The pinned source requires Go 1.27.1 or newer and Ebitengine 2.10.5. Native targets include Windows, macOS 13+ and Linux with graphical/audio libraries; the browser build remains experimental.","The project is beta. Modern rules intentionally change behavior, while Strict 3.1 expresses a compatibility aim.","Synthetic tests run without retail assets; the separate retail tier requires an installed game.","Original engine code is MIT; original game assets and dependency licenses are separate. The publication note describes curated integration snapshots, omitted raw research and unresolved attribution questions."],"requirements_zh":["原生使用需要用户已安装的 Total Annihilation HPI 归档。参考安装包含 Core Contingency、Battle Tactics和3.1补丁；其他组合仍在测试。","固定提交源码要求 Go 1.27.1 或更新版本及 Ebitengine 2.10.5。原生目标包括 Windows、macOS 13+ 及具备图形、音频库的 Linux；浏览器构建仍属实验性。","项目仍为beta。Modern规则有意改变行为；Strict 3.1表达兼容目标。","合成测试不使用零售资产，单独的零售测试层需要已安装游戏。","原创引擎代码采用MIT，原游戏资产和依赖许可证另行处理。发布说明记录了整理后的集成快照、删去的原始研究及未解决的归属问题。"],"targets":["game"],"url":"https://github.com/nanolathe-gg/nanolathe","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/GLinnik21/plx-native/blob/0b0b22092b204432834c75f32148dbd16ec3493b/docs/building.md","https://github.com/GLinnik21/plx-native/blob/0b0b22092b204432834c75f32148dbd16ec3493b/docs/install-and-verify.md","https://github.com/GLinnik21/plx-native/blob/0b0b22092b204432834c75f32148dbd16ec3493b/LICENSE","https://github.com/GLinnik21/plx-native/blob/0b0b22092b204432834c75f32148dbd16ec3493b/THIRD-PARTY-NOTICES.md","https://www.reddit.com/r/ClaudeCode/comments/1x043yp/i_used_claude_code_to_reverseengineer_an_lg_tv/"],"category":"reconstruction-cases","description_en":"An unofficial Plex client built after the author investigated LG webOS native media interfaces with Ghidra and coding agents. It draws its own Rust/OpenGL interface and uses the television’s decoder, with documented host, simulator and real-device test tiers.","description_zh":"作者用 Ghidra 和编程智能体调查 LG webOS 原生媒体接口后构建的非官方 Plex 客户端。它自行绘制 Rust/OpenGL 界面并使用电视解码器，文档区分宿主测试、模拟器测试和实体设备测试。","entry_url":"https://awesomerea.org/resources/plx-native-case/","entry_url_zh":"https://awesomerea.org/zh/resources/plx-native-case/","evidence_url":"https://github.com/GLinnik21/plx-native/blob/0b0b22092b204432834c75f32148dbd16ec3493b/README.md","group":"cases","id":"plx-native-case","json_url":"https://awesomerea.org/resources/plx-native-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/plx-native-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/plx-native-case/index.md","name":"PlxNative: reconstructing a native webOS media-client interface","name_zh":"PlxNative：重建原生 webOS 媒体客户端接口","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","prerequisites","scope","license"],"requirements":["Requires a Plex account/server and a compatible LG TV. The baseline is webOS 4.0+, with explicitly documented 3.4.3/3.9.3 exceptions; the latter needs a newer source build than prebuilt v0.8.0.","Developer Mode normally needs no root but requires renewal. Some k5lp/k3lp devices cannot play under its sandbox, and k6hp crashes remain unresolved.","Product builds need macOS (x86_64 or arm64) or arm64 Linux, the webOS NDK, the pinned Rust toolchain and CMake. The desktop simulator has a different host/setup path.","The scope is movies and TV shows, excluding music, photos, live TV and DVR. Selected relay/encrypted-server paths lack end-to-end viewing tests; timing and playback results remain author/device-specific.","GPL-3.0-or-later for project code, with separate brand and third-party terms including bundled FFmpeg."],"requirements_zh":["需要 Plex 账号/服务器和兼容 LG 电视。基线为 webOS 4.0+，另有明确记录的 3.4.3/3.9.3 例外；后者需要比预编译 v0.8.0 更新的源码构建。","Developer Mode 通常不需 root，但需要续期。部分 k5lp/k3lp 设备在该沙箱下无法播放，k6hp 崩溃仍未解决。","产品构建需要 macOS（x86_64 或 arm64）或 arm64 Linux、webOS NDK、固定 Rust 工具链及 CMake；桌面模拟器使用不同的宿主/安装路径。","范围为电影和电视剧，不含音乐、照片、直播电视或 DVR。部分中继/加密服务器路径尚未完成全流程观看测试；耗时与播放结果仍是作者在特定设备上的报告。","项目代码采用 GPL-3.0-or-later，品牌和包括内置 FFmpeg 在内的第三方条款另行处理。"],"targets":["app"],"url":"https://github.com/GLinnik21/plx-native","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/N0zoM1z0/th08/blob/08c7f00f81e35db8206d917b14f47883930beef6/docs/BUILD_MATCHING.md","https://github.com/N0zoM1z0/th08/blob/08c7f00f81e35db8206d917b14f47883930beef6/docs/REPLAY_RESULTS.md","https://github.com/N0zoM1z0/th08/blob/08c7f00f81e35db8206d917b14f47883930beef6/LICENSE","https://github.com/N0zoM1z0/th08/issues/10","https://github.com/N0zoM1z0/th08/pull/13"],"category":"reconstruction-cases","description_en":"Reconstructs the original Japanese Touhou 8 version 1.00d against its binary and original compiler, then adapts the recovered code for other platforms. Source presence, strict function matching, whole-executable identity and playable-port checks are recorded as different milestones.","description_zh":"依据原二进制和原编译器重建日版 Touhou 8 的 1.00d 版本，再将恢复的代码适配到其他平台。项目分别记录源码存在、严格函数匹配、完整可执行文件一致性和移植可玩性里程碑。","entry_url":"https://awesomerea.org/resources/th08-reconstruction-case/","entry_url_zh":"https://awesomerea.org/zh/resources/th08-reconstruction-case/","evidence_url":"https://github.com/N0zoM1z0/th08/blob/08c7f00f81e35db8206d917b14f47883930beef6/README.md","group":"cases","id":"th08-reconstruction-case","json_url":"https://awesomerea.org/resources/th08-reconstruction-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/th08-reconstruction-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/th08-reconstruction-case/index.md","name":"TH08: exact-source reconstruction and separately tested ports","name_zh":"TH08：精确源码重建与单独验证的移植","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","scope","scope","testing","license"],"requirements":["Exact checks require the user’s original Japanese TH08 1.00d executable and Visual C++ .NET 2002 toolchain. Ledgers and analysis helpers need Python 3.11+; Linux/macOS toolchain setup also needs Wine and msiextract. Playable products still need original game data.","The pinned main README reports source for 1,107 authored functions and strict acceptance of 1,106, with whole-executable identity still in progress.","The VC7 i386 runtime checkpoint is distinct from a redistributable modern Windows release; macOS remains in progress. Exact normal-build checks and bugfix playtests have different purposes.","A historical oracle accepted instruction bytes while missing wrong floating-literal data. The linked issue/PR records later data-reference checks.","MIT covers repository code/docs, not the original game. Historical source lineage and agent contributions retain their attribution."],"requirements_zh":["精确检查需要用户自己的日版 TH08 1.00d 可执行文件及 Visual C++ .NET 2002 工具链。记录表和分析工具需要 Python 3.11+；Linux/macOS 工具链安装还需要 Wine 和 msiextract。可玩产品仍需要原游戏数据。","固定 main README 报告 1,107 个作者函数均有源码，其中 1,106 个通过严格验收，完整可执行文件一致性仍在进行。","VC7 i386 运行时检查点与可再分发的现代 Windows 发布版是不同里程碑；macOS 仍在进行。normal 构建的精确检查与 bugfix 试玩用途不同。","历史验收器曾接受指令字节，却漏掉错误的浮点常量数据。链接的 issue/PR 记录了后续数据引用检查。","MIT 覆盖仓库代码和文档，不覆盖原游戏。历史源码来源和智能体贡献保留各自归属。"],"targets":["game"],"url":"https://github.com/N0zoM1z0/th08","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/morluto/rea/blob/c360cfcd6d7901514b16dd6113eba2e0b0fdf422/website/public/assets/licenses/dinosaur.txt"],"category":"official-case-studies","description_en":"REA’s documented teaching case inspects the HTTP t-rex-runner edition and reconstructs its speed-update rule. A separate controlled original-game check and a new demonstration compare update counts, including the floating-point step that crosses the nominal speed threshold.","description_zh":"REA 的教学案例检查 HTTP 版 t-rex-runner，并重建其速度更新规则。单独进行的受控原游戏检查与新演示对比更新次数，包含浮点递增越过名义速度阈值的一步。","entry_url":"https://awesomerea.org/resources/rea-dinosaur-speed-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-dinosaur-speed-case/","evidence_url":"https://github.com/morluto/rea/blob/c360cfcd6d7901514b16dd6113eba2e0b0fdf422/website/evidence/calculator-and-dino.md","group":"rea","id":"rea-dinosaur-speed-case","json_url":"https://awesomerea.org/resources/rea-dinosaur-speed-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rea-dinosaur-speed-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-dinosaur-speed-case/index.md","name":"Dinosaur runner: recovering one acceleration rule","name_zh":"恐龙跑酷：恢复一条加速规则","record_type":"resource","relationship":"official-case-study","requirement_facets":["scope","attribution","limits","testing"],"requirements":["The recorded target is wayou’s HTTP browser edition at the cited revision, not chrome://dino/. Source and observation hashes identify that edition.","After read-only inspection, a separate Playwright controller disabled future scheduling and obstacles to call the original update function under controlled conditions.","The reconstructed claim is limited to acceleration. Drawing, jumping, collisions and controls in the teaching game are newly authored, not independently recovered original gameplay.","Public result tables and code document the author’s checks. The cited original-source excerpts retain Chromium attribution and BSD-3-Clause terms."],"requirements_zh":["记录目标为所引版本的 wayou HTTP 浏览器版本，而非 chrome://dino/；源码与观察哈希标识该版本。","只读检查后，单独的 Playwright 控制器关闭后续调度和障碍物，在受控条件下调用原更新函数。","重建结论仅限加速规则。教学游戏中的绘制、跳跃、碰撞和控件是新编写的，不是独立恢复的原玩法。","公开结果表和代码记录作者的检查。引用的原源码片段保留 Chromium 署名和 BSD-3-Clause 条款。"],"targets":["game","website"],"url":"https://github.com/morluto/rea/blob/c360cfcd6d7901514b16dd6113eba2e0b0fdf422/website/evidence/calculator-and-dino.md#dinosaur-speed","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/morluto/rea/pull/1272"],"category":"official-case-studies","description_en":"REA’s case traces the installed Windows Calculator model DLL to explain different percentage behavior for multiplication/division and other operations. An analyst-selected function is interpreted against public Microsoft source and demonstrated with fixed browser examples.","description_zh":"REA 案例追踪已安装 Windows Calculator 的模型 DLL，解释乘除运算与其他运算中不同的百分比行为。分析人员选定函数后，对照微软公开源码解释，并通过固定输入的浏览器示例演示。","entry_url":"https://awesomerea.org/resources/rea-calculator-percent-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-calculator-percent-case/","evidence_url":"https://github.com/morluto/rea/blob/c360cfcd6d7901514b16dd6113eba2e0b0fdf422/website/evidence/calculator-and-dino.md","group":"rea","id":"rea-calculator-percent-case","json_url":"https://awesomerea.org/resources/rea-calculator-percent-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rea-calculator-percent-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-calculator-percent-case/index.md","name":"Windows Calculator: reconstructing percentage rules","name_zh":"Windows Calculator：重建百分比规则","record_type":"resource","relationship":"official-case-study","requirement_facets":["scope","attribution","license"],"requirements":["The documented target is Calculator 11.2508.4.0 x64. The public source commit is an interpretation cross-check, not an identified build commit for that installed DLL.","Function selection was analyst-assisted.","This reconstructs a bounded arithmetic rule, not the Calculator application. Public Microsoft source is MIT-licensed; access and rights to the installed target remain separate."],"requirements_zh":["文档目标为 Calculator 11.2508.4.0 x64。公开源码提交用于解释交叉核对，不是已确认生成该 DLL 的构建提交。","函数选择有分析人员协助。","这只重建有限的算术规则，不是整个 Calculator 应用。微软公开源码采用 MIT；已安装目标的访问和权利另行处理。"],"targets":["app","binary"],"url":"https://github.com/morluto/rea/blob/c360cfcd6d7901514b16dd6113eba2e0b0fdf422/website/evidence/calculator-and-dino.md#windows-calculator","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","category":"community-case-studies","description_en":"The author reports using Codex and REA analysis to adapt a separate macOS Feishu copy with its own application identity, data directory and single-instance lock. The account describes local signing and separation checks while retaining the original app unchanged.","description_zh":"作者报告借助 Codex 与 REA 分析，修改独立的 macOS 飞书副本，为其设置不同的应用身份、数据目录和单实例锁。文章描述本地签名与隔离检查，并称原应用保持不变。","entry_url":"https://awesomerea.org/resources/feishu-dual-instance-case/","entry_url_zh":"https://awesomerea.org/zh/resources/feishu-dual-instance-case/","evidence_url":"https://benx.ai/blog/posts/rea-reverse-engineer-feishu-dual-instance/","group":"rea","id":"feishu-dual-instance-case","json_url":"https://awesomerea.org/resources/feishu-dual-instance-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/feishu-dual-instance-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/feishu-dual-instance-case/index.md","name":"Feishu: an author-reported isolated second app instance","name_zh":"飞书：作者报告的隔离第二应用实例","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["scope","scope","attribution","limits"],"requirements":["The report targets Feishu 8.1.17 with REA 6.5.0 on the author’s Mac; reported elapsed times and isolation results.","The modified copy is locally signed and has automatic updates disabled. The article does not publish a redistributable replacement app or original-source reconstruction.","The author attributes some architecture tracing directly to Codex and cites prior feishu-clone work.","Original hash/signature and process/data separation checks are author-reported."],"requirements_zh":["报告目标是作者 Mac 上的飞书 8.1.17 和 REA 6.5.0；报告耗时和隔离结果。","修改副本采用本地签名并禁用自动更新。文章没有发布可再分发的替代应用，也不是原始源码重建。","作者将部分架构追踪明确归于 Codex，并引用既有 feishu-clone 工作。","原文件哈希/签名和进程/数据隔离检查属于作者报告。"],"targets":["app"],"url":"https://benx.ai/blog/posts/rea-reverse-engineer-feishu-dual-instance/","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/Zelda64Recomp/Zelda64Recomp/blob/b65c482ed672258eb684ab94a4e8c8aa662615ee/CMakeLists.txt","https://github.com/Zelda64Recomp/Zelda64Recomp/blob/b65c482ed672258eb684ab94a4e8c8aa662615ee/COPYING","https://github.com/Zelda64Recomp/Zelda64Recomp/blob/b65c482ed672258eb684ab94a4e8c8aa662615ee/BUILDING.md","https://github.com/Zelda64Recomp/Zelda64Recomp/blob/b65c482ed672258eb684ab94a4e8c8aa662615ee/CONTRIBUTING.md"],"category":"reconstruction-cases","description_en":"Uses N64Recomp to translate Majora’s Mask into a native application and RT64 for rendering. The project separates static recompilation from source decompilation while reusing decompilation headers and selected functions for patches and enhancements.","description_zh":"通过 N64Recomp 将《姆吉拉的假面》转为原生应用，并使用 RT64 渲染。项目区分静态重编译与源码反编译，同时借用反编译项目的头文件和部分函数实现补丁与增强功能。","entry_url":"https://awesomerea.org/resources/zelda64recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/zelda64recomp-case/","evidence_url":"https://github.com/Zelda64Recomp/Zelda64Recomp/blob/b65c482ed672258eb684ab94a4e8c8aa662615ee/README.md","group":"cases","id":"zelda64recomp-case","json_url":"https://awesomerea.org/resources/zelda64recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/zelda64recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/zelda64recomp-case/index.md","name":"Zelda 64: Recompiled — a native Majora’s Mask port without a full source decompilation","name_zh":"Zelda 64: Recompiled：无需完整源码反编译的《姆吉拉的假面》原生移植","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed build accepts the US Nintendo 64 Majora’s Mask ROM supplied by the user; game assets are not included. Ocarina of Time remains planned, and this is not an emulator for arbitrary ROMs.","Runtime graphics require Direct3D 12.0 with Shader Model 6, Vulkan 1.2, or Metal Argument Buffers Tier 2. x86-64 needs SSE4.1; the README lists macOS 13.0+ with Apple Silicon or a 7th-generation Intel CPU.","Source builds additionally require submodules, CMake 3.20+, C++20 tooling, N64Recomp/RSPRecomp and the specified decompressed ROM. The build guide lists SDL2 and platform dependencies; ordinary play uses the standard ROM.","The project documents high-frame-rate, widescreen, camera and save enhancements, plus overlay and cutscene issues. These are project claims.","GPLv3 project license; original game content and dependencies retain separate terms. The team states that it does not use generative AI and bans contributions using GenAI tooling in any capacity."],"requirements_zh":["所审阅版本接受用户自备的美版 Nintendo 64《姆吉拉的假面》ROM，不附带游戏素材。《时之笛》支持仍在计划中；它不是可运行任意 ROM 的模拟器。","运行时显卡需支持带 Shader Model 6 的 Direct3D 12.0、Vulkan 1.2 或 Metal Argument Buffers Tier 2；x86-64 需要 SSE4.1。README 列出的 Mac 条件为 macOS 13.0+，配备 Apple Silicon 或第 7 代 Intel CPU。","源码构建还需要子模块、CMake 3.20+、C++20 工具链、N64Recomp/RSPRecomp 以及指定的解压后 ROM。构建指南列出 SDL2 和平台依赖；正常游玩使用标准 ROM。","项目记录高帧率、宽屏、镜头和存档增强功能，同时列出叠加层与过场动画问题。这些是项目方描述。","项目采用 GPLv3；原游戏内容和依赖保留各自条款。团队声明不使用生成式 AI，并禁止以任何方式使用生成式 AI 工具的贡献。"],"targets":["game"],"url":"https://github.com/Zelda64Recomp/Zelda64Recomp","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/open-goal/jak-project/blob/32c3cf73970f885c0a588623208232db72a74a58/CMakeLists.txt","https://github.com/open-goal/jak-project/blob/32c3cf73970f885c0a588623208232db72a74a58/LICENSE","https://github.com/open-goal/jak-project/blob/32c3cf73970f885c0a588623208232db72a74a58/docs/setup/system/linux.md","https://github.com/open-goal/jak-project/blob/32c3cf73970f885c0a588623208232db72a74a58/docs/setup/system/macos.md"],"category":"reconstruction-cases","description_en":"Reconstructs readable GOAL code from the original Jak binaries and compiles it with a new GOAL compiler for modern PCs. Its workflow combines a specialized decompiler, manually supplied type information, asset extraction and an interactive development runtime.","description_zh":"从 Jak 原二进制重建可读的 GOAL 代码，再用新编写的 GOAL 编译器为现代 PC 编译。流程结合专用反编译器、人工补充的类型信息、素材提取和交互式开发运行时。","entry_url":"https://awesomerea.org/resources/opengoal-jak-case/","entry_url_zh":"https://awesomerea.org/zh/resources/opengoal-jak-case/","evidence_url":"https://github.com/open-goal/jak-project/blob/32c3cf73970f885c0a588623208232db72a74a58/README.md","group":"cases","id":"opengoal-jak-case","json_url":"https://awesomerea.org/resources/opengoal-jak-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/opengoal-jak-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/opengoal-jak-case/index.md","name":"OpenGOAL: recovering GOAL code and rebuilding the Jak games","name_zh":"OpenGOAL：恢复 GOAL 代码并重建 Jak 系列游戏","reconstruction_method":"decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","scope","prerequisites","prerequisites","license"],"requirements":["Requires the user’s original PS2 game copy and extracted assets. The README covers retail PAL, NTSC and NTSC-J editions, including Greatest Hits, and excludes later PS3/PS4/PS5 releases.","The pinned README reports Jak 1 as complete, Jak 2 as beta with remaining issues, and substantial work still needed for Jak 3.","The supported runtime is x86-64 on Windows, Linux and macOS. The macOS guide requires Rosetta 2 on Apple Silicon and lists macOS Sequoia; native ARM64 builds are experimental and unsupported. No mobile release is planned.","Development uses C++20, CMake, NASM and platform libraries, then the project’s asset-extraction and GOAL compilation steps. The documented task commands need the corresponding task runner; runtime code editing is a development feature.","ISC license for project work; original game assets and third-party components retain their own rights."],"requirements_zh":["需要用户自备原版 PS2 游戏及提取出的素材。README 涵盖 PAL、NTSC、NTSC-J 零售版和 Greatest Hits 版，不涵盖后来的 PS3/PS4/PS5 版本。","固定版本 README 将 Jak 1 列为完成、Jak 2 列为仍有问题的测试版，并称 Jak 3 尚有大量工作。","受支持的运行时为 Windows、Linux 和 macOS 上的 x86-64 版本。macOS 指南要求 Apple Silicon 使用 Rosetta 2，并列出 macOS Sequoia；原生 ARM64 构建仍属实验性且不受支持。项目没有移动版计划。","开发需要 C++20、CMake、NASM 和平台库，再执行项目的素材提取与 GOAL 编译流程。文档中的 task 命令需要相应任务运行器；运行时代码编辑属于开发功能。","项目自身工作采用 ISC 许可；原游戏素材和第三方组件保留各自权利。"],"targets":["game"],"url":"https://github.com/open-goal/jak-project","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/isledecomp/isle/blob/8119bd013645972c72480e4de21529f1e91ce5c7/CMakeLists.txt","https://github.com/isledecomp/isle/blob/8119bd013645972c72480e4de21529f1e91ce5c7/LICENSE"],"category":"reconstruction-cases","description_en":"Reconstructs the English LEGO Island 1.1 source for its original 32-bit Windows target. The project distinguishes function-comparison reports, ReproBit’s reported byte-identical retail rebuilds and ordinary developer builds; its modern portable adaptation is a separate repository.","description_zh":"针对英文版 LEGO Island 1.1 的原始 32 位 Windows 目标重建源码。项目区分函数对比报告、ReproBit 报告的零售版逐字节一致重构建，以及普通开发构建；现代跨平台适配位于另一仓库。","entry_url":"https://awesomerea.org/resources/lego-island-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/lego-island-decomp-case/","evidence_url":"https://github.com/isledecomp/isle/blob/8119bd013645972c72480e4de21529f1e91ce5c7/README.md","group":"cases","id":"lego-island-decomp-case","json_url":"https://awesomerea.org/resources/lego-island-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/lego-island-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/lego-island-decomp-case/index.md","name":"LEGO Island: source reconstruction with separately reported exact rebuilds","name_zh":"LEGO Island：源码重建与单独记录的精确重构建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","testing","scope","prerequisites","license"],"requirements":["Exact verification requires the user’s matching English 1.1 CONFIG.EXE, ISLE.EXE and LEGO1.DLL, the original Visual C++ 4.2 toolchain, Python 3.11+, Git and ReproBit; Linux/macOS also need Wine.","The pinned README reports a cold rebuild matching all three retail binaries byte for byte.","The ordinary CMake path is for development and is not the release-verification path. This repository targets 32-bit Windows only; cross-platform and Web support belongs to isle-portable.","Running the rebuilt executables still requires the original installed game data and the documented data paths. The README notes that d3drm.dll may also be needed on newer Windows systems.","The repository carries the LGPLv3 license; original game data and toolchain rights remain separate."],"requirements_zh":["精确核对需要用户自备匹配的英文 1.1 版 CONFIG.EXE、ISLE.EXE 和 LEGO1.DLL，以及原 Visual C++ 4.2 工具链、Python 3.11+、Git 和 ReproBit；Linux/macOS 还需要 Wine。","固定版本 README 报告从头构建后，三个零售版二进制均逐字节一致。","普通 CMake 路径用于开发，并非发行版验证路径。此仓库只面向 32 位 Windows；跨平台及 Web 支持属于 isle-portable。","运行重构建的可执行文件仍需要原安装中的游戏数据和文档指定的数据路径。README 提醒较新的 Windows 可能还需要 d3drm.dll。","仓库采用 LGPLv3；原游戏数据和工具链的权利另行保留。"],"targets":["game"],"url":"https://github.com/isledecomp/isle","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/tuunanet/rea-ski-or-die-reconstruction/blob/0eac0671c90e21a16e663da7772b60710101ef7f/Cargo.toml","https://github.com/tuunanet/rea-ski-or-die-reconstruction/blob/0eac0671c90e21a16e663da7772b60710101ef7f/LICENSE.md","https://github.com/tuunanet/rea-ski-or-die-reconstruction/blob/0eac0671c90e21a16e663da7772b60710101ef7f/docs/reverse-engineering-notes.md","https://github.com/tuunanet/rea-ski-or-die-reconstruction/blob/0eac0671c90e21a16e663da7772b60710101ef7f/tests/gameplay.rs"],"category":"community-case-studies","description_en":"The author uses REA’s Ghidra workflow to investigate the DOS Ski or Die binary, document Snowball War rules and rebuild that one minigame in Rust with SDL2. The public notes distinguish recovered tables and mechanics from approximations and deliberate presentation changes.","description_zh":"作者通过 REA 的 Ghidra 工作流调查 DOS 版 Ski or Die 二进制，记录 Snowball War 的规则，再用 Rust 与 SDL2 重建这一小游戏。公开笔记区分恢复的数据表和机制、近似实现以及有意调整的表现效果。","entry_url":"https://awesomerea.org/resources/snowball-war-rea-case/","entry_url_zh":"https://awesomerea.org/zh/resources/snowball-war-rea-case/","evidence_url":"https://github.com/tuunanet/rea-ski-or-die-reconstruction/blob/0eac0671c90e21a16e663da7772b60710101ef7f/README.md","group":"rea","id":"snowball-war-rea-case","json_url":"https://awesomerea.org/resources/snowball-war-rea-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/snowball-war-rea-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/snowball-war-rea-case/index.md","name":"Snowball War: a bounded REA-assisted minigame reconstruction","name_zh":"Snowball War：范围明确的 REA 辅助小游戏重建","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","attribution","scope","limits","license"],"requirements":["Requires the user’s matching DOS/EGA game files and Python 3 for asset extraction. The Linux build uses Rust stable (author-tested with 1.93), Cargo and SDL2 development libraries; Cargo.toml specifies the SDL2 binding 0.37.","The reported analysis used Ghidra 12.1.4 and JDK 21 through the REA CLI after unpacking EXEPACK. Caller-supplied function/code seeds are assertions.","Only Snowball War is reconstructed. Other events and the original engine are excluded; menus are new, and the close-up animation is deliberately restricted to the fort zone rather than reproducing every original placement.","The frame rate is approximated at 35 Hz, the original PRNG was not recovered, pause/exit keys are approximations, and audio playback is missing.","The pinned LICENSE.md and Cargo.toml offer MIT OR Apache-2.0, while the README’s license sentence mentions MIT only. Original art/audio must be extracted separately."],"requirements_zh":["需要用户自备匹配的 DOS/EGA 游戏文件，并用 Python 3 提取素材。Linux 构建使用 Rust stable（作者测试版本为 1.93）、Cargo 和 SDL2 开发库；Cargo.toml 指定 SDL2 绑定版本 0.37。","报告中的分析在解开 EXEPACK 后，通过 REA CLI 使用 Ghidra 12.1.4 和 JDK 21。调用者提供的函数与代码种子属于调用者断言。","只重建 Snowball War，不涵盖其他比赛项目或原引擎；菜单为新写，特写动画也被有意限制在雪堡区域，没有复现原版全部出现位置。","帧率近似为 35 Hz，原伪随机算法未恢复，暂停与退出按键属于近似实现，声音播放尚未实现。","固定版本 LICENSE.md 与 Cargo.toml 提供 MIT OR Apache-2.0 双许可，README 的许可句仅提到 MIT。原美术与音频须另行提取。"],"targets":["game"],"url":"https://github.com/tuunanet/rea-ski-or-die-reconstruction","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/k4zmu2a/SpaceCadetPinball/blob/cb9b7b886244a27773f66b0b19fdc2998392565e/CMakeLists.txt","https://github.com/k4zmu2a/SpaceCadetPinball/blob/cb9b7b886244a27773f66b0b19fdc2998392565e/LICENSE","https://github.com/k4zmu2a/SpaceCadetPinball/releases/tag/Release_2.1.0"],"category":"reconstruction-cases","description_en":"Converts the reverse-engineered Space Cadet pinball game into compilable C++ for desktop platforms. The README identifies the Windows XP executable and public PDB, a Full Tilt executable, and the work of recovering structures, naming variables and adapting the decompiled routines.","description_zh":"将逆向分析后的 Space Cadet 弹球游戏转为可编译的 C++，面向桌面平台。README 标明 Windows XP 可执行文件及公开 PDB、Full Tilt 可执行文件，并描述恢复结构、命名变量和适配反编译例程的工作。","entry_url":"https://awesomerea.org/resources/space-cadet-pinball-case/","entry_url_zh":"https://awesomerea.org/zh/resources/space-cadet-pinball-case/","evidence_url":"https://github.com/k4zmu2a/SpaceCadetPinball/blob/cb9b7b886244a27773f66b0b19fdc2998392565e/README.md","group":"cases","id":"space-cadet-pinball-case","json_url":"https://awesomerea.org/resources/space-cadet-pinball-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/space-cadet-pinball-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/space-cadet-pinball-case/index.md","name":"SpaceCadetPinball: decompiled game logic adapted to SDL2","name_zh":"SpaceCadetPinball：将反编译游戏逻辑适配到 SDL2","reconstruction_method":"decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","scope","prerequisites","scope","license","scope"],"requirements":["Requires original game resources supplied separately. The project supports resource data from Windows and Full Tilt editions; its releases do not supply those assets.","The main project targets desktop Windows, Linux and macOS. Its list of console, mobile and browser ports points to separate projects.","Source builds require C++11, CMake, SDL2 and SDL2_mixer. The README gives Visual Studio, GCC/Clang and Xcode build paths, including x86_64 or arm64 selection on macOS.","The README reports that all subroutines were decompiled and converted to C++. Full Tilt feature work and possible support for its other two tables remain separate plans.","MIT license for this repository; original game resources and dependencies retain their own terms.","As checked on 2026-10-20, the latest release is Release_2.1.0 (2023-10-16); the reviewed 2024-08-21 commit is still the master head and GitHub’s last recorded push, the repository is not archived and the README does not mark it as maintained, superseded or archived."],"requirements_zh":["需要另行提供原游戏资源。项目支持 Windows 与 Full Tilt 版本的资源数据，发行包不提供这些素材。","主项目面向桌面 Windows、Linux 和 macOS。列表中的主机、移动端和浏览器移植指向其他项目。","源码构建需要 C++11、CMake、SDL2 和 SDL2_mixer。README 给出 Visual Studio、GCC/Clang 和 Xcode 构建路径，macOS 可选择 x86_64 或 arm64。","README 报告所有子程序均已反编译并转为 C++。Full Tilt 的功能完善及其另外两张球桌的潜在支持仍是单独计划。","此仓库采用 MIT 许可；原游戏资源和依赖保留各自条款。","据 2026-10-20 核查，最新发布版本为 Release_2.1.0（2023-10-16）；所审阅的 2024-08-21 提交仍是 master 分支最新提交，也是 GitHub 记录的最后一次推送，仓库未归档，README 未标注其仍在维护、已被取代或已归档。"],"targets":["game"],"url":"https://github.com/k4zmu2a/SpaceCadetPinball","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/n64decomp/sm64/blob/9921382a68bb0c865e5e45eb594d9c64db59b1af/Makefile","https://github.com/n64decomp/sm64/blob/9921382a68bb0c865e5e45eb594d9c64db59b1af/Jenkinsfile","https://github.com/n64decomp/sm64/blob/9921382a68bb0c865e5e45eb594d9c64db59b1af/LICENSE.md","https://github.com/n64decomp/sm64/releases/tag/irix2"],"category":"reconstruction-cases","description_en":"Reconstructs Super Mario 64 source for Japanese, North American, European, Shindou and iQue releases. Its build files distinguish original-ROM hash comparison from nonmatching or modified configurations, while source naming and documentation remain ongoing.","description_zh":"为日版、北美版、欧洲版、Shindou 版和 iQue 版 Super Mario 64 重建源码。构建文件区分原 ROM 哈希比较与非匹配或修改配置；源码命名和文档工作仍在推进。","entry_url":"https://awesomerea.org/resources/sm64-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sm64-decomp-case/","evidence_url":"https://github.com/n64decomp/sm64/blob/9921382a68bb0c865e5e45eb594d9c64db59b1af/README.md","group":"cases","id":"sm64-decomp-case","json_url":"https://awesomerea.org/resources/sm64-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sm64-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sm64-decomp-case/index.md","name":"Super Mario 64: ROM reconstruction with explicit comparison gates","name_zh":"Super Mario 64：带明确比较开关的 ROM 重建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","testing","testing","license","scope"],"requirements":["Requires the user’s matching original ROM for asset extraction. The five target releases are separate.","The documented build uses GNU make, Python 3.6+, MIPS binutils, pkgconf and host development tools. Windows instructions use WSL/Linux; macOS instructions require an appropriate MIPS toolchain and newer GNU make.","The Makefile normally checks the output ROM’s SHA-1 against the selected reference. NON_MATCHING, a non-N64 target or nonstandard configurations disable comparison.","The pinned Jenkins configuration explicitly sets COMPARE=0 for iQue and enhancement builds.","The repository carries CC0-1.0; original Nintendo content and any separate third-party rights are not supplied by that declaration.","As checked on 2026-10-20, the reviewed 2023-08-17 commit is still the master head and GitHub’s last recorded push was 2024-02-04; the only GitHub releases are 2019 qemu-irix helper binaries, not game builds, the repository is not archived and the README does not mark it as maintained, superseded or archived."],"requirements_zh":["需要用户自备匹配的原 ROM 来提取素材。五个目标版本分别处理。","文档中的构建使用 GNU make、Python 3.6+、MIPS binutils、pkgconf 和宿主开发工具。Windows 指南采用 WSL/Linux；macOS 指南要求合适的 MIPS 工具链及较新的 GNU make。","Makefile 通常把输出 ROM 的 SHA-1 与所选参考哈希比较；NON_MATCHING、非 N64 目标或非标准配置会关闭比较。","固定版本 Jenkins 配置明确为 iQue 和增强补丁构建设置 COMPARE=0。","仓库包含 CC0-1.0 声明；该声明不提供原 Nintendo 内容或其他第三方权利。","据 2026-10-20 核查，所审阅的 2023-08-17 提交仍是 master 分支最新提交，GitHub 记录的最后一次推送为 2024-02-04；仅有的 GitHub 发布版本是 2019 年的 qemu-irix 辅助程序，并非游戏构建，仓库未归档，README 未标注其仍在维护、已被取代或已归档。"],"targets":["game"],"url":"https://github.com/n64decomp/sm64","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/hedge-dev/UnleashedRecomp/blob/cf829a9eca8fb680fba4b0409ddeb6ca92f22e3c/docs/BUILDING.md","https://github.com/hedge-dev/UnleashedRecomp/blob/cf829a9eca8fb680fba4b0409ddeb6ca92f22e3c/CMakeLists.txt","https://github.com/hedge-dev/UnleashedRecomp/blob/cf829a9eca8fb680fba4b0409ddeb6ca92f22e3c/COPYING"],"category":"reconstruction-cases","description_en":"Builds an unofficial Sonic Unleashed PC port by statically recompiling Xbox 360 PowerPC code with XenonRecomp and Xenos shaders with XenosRecomp. The port adds modern display and modding options while documenting original-engine limits and remaining compatibility issues.","description_zh":"使用 XenonRecomp 静态重编译 Xbox 360 PowerPC 代码，并用 XenosRecomp 转换 Xenos 着色器，构建非官方 Sonic Unleashed PC 移植。项目增加现代显示与模组选项，同时记录原引擎限制和仍存在的兼容性问题。","entry_url":"https://awesomerea.org/resources/unleashed-recompiled-case/","entry_url_zh":"https://awesomerea.org/zh/resources/unleashed-recompiled-case/","evidence_url":"https://github.com/hedge-dev/UnleashedRecomp/blob/cf829a9eca8fb680fba4b0409ddeb6ca92f22e3c/README.md","group":"cases","id":"unleashed-recompiled-case","json_url":"https://awesomerea.org/resources/unleashed-recompiled-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/unleashed-recompiled-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/unleashed-recompiled-case/index.md","name":"Unleashed Recompiled: translating Xbox 360 game code and shaders","name_zh":"Unleashed Recompiled：转换 Xbox 360 游戏代码与着色器","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","prerequisites","limits","license"],"requirements":["Requires the user’s US or EU Xbox 360 game files and the title update; the Japanese release and PS3 files are unsupported by the reviewed installation guide. DLC is optional, and the project does not provide game assets.","The README’s Windows/Linux baseline includes an AVX-capable CPU, 8 GB RAM and Direct3D 12.0 with Shader Model 6 or Vulkan 1.2 graphics. It lists Windows 10 version 1909 and a modern Linux distribution such as Ubuntu 22.04.","Source builds require submodules, CMake 3.20+, C++20 tooling, vcpkg with VCPKG_ROOT configured, and matching executable/update/shader inputs. At the same revision, BUILDING.md documents Xcode 16.3+ and macOS presets while the README says macOS is not on the roadmap.","High-frame-rate gameplay glitches, loading stutters and ultrawide cutscene issues remain documented. Mods replacing the original executable or shaders are unsupported.","GPLv3 project license, with separate original-game and dependency terms. This is static recompilation."],"requirements_zh":["需要用户自备美版或欧版 Xbox 360 游戏文件及更新；所审阅安装指南不支持日版或 PS3 文件。DLC 为可选内容，项目不提供游戏素材。","README 的 Windows/Linux 基线包括支持 AVX 的 CPU、8 GB 内存，以及支持带 Shader Model 6 的 Direct3D 12.0 或 Vulkan 1.2 的显卡；列出的系统为 Windows 10 版本 1909 和 Ubuntu 22.04 等现代 Linux 发行版。","源码构建需要子模块、CMake 3.20+、C++20 工具链、配置 VCPKG_ROOT 的 vcpkg，以及相互匹配的可执行文件、更新和着色器输入。同一修订的 BUILDING.md 记录了 Xcode 16.3+ 和 macOS 预设，而 README 称 macOS 不在计划中。","文档仍记录高帧率玩法异常、加载停顿和超宽屏过场问题；不支持替换原可执行文件或着色器的模组。","项目采用 GPLv3，原游戏及依赖另有条款。这是静态重编译。"],"targets":["game"],"url":"https://github.com/hedge-dev/UnleashedRecomp","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/OpenMW/openmw/blob/5fdc0f1c4d1d07575f9b360b8cf1d6562232bf8e/CMakeLists.txt","https://github.com/OpenMW/openmw/blob/5fdc0f1c4d1d07575f9b360b8cf1d6562232bf8e/LICENSE","https://github.com/OpenMW/openmw/blob/5fdc0f1c4d1d07575f9b360b8cf1d6562232bf8e/docs/source/manuals/installation/install-game-files.rst","https://github.com/OpenMW/openmw/blob/5fdc0f1c4d1d07575f9b360b8cf1d6562232bf8e/scripts/data/morrowind_tests/README.md","https://github.com/OpenMW/openmw/blob/5fdc0f1c4d1d07575f9b360b8cf1d6562232bf8e/CI/run_integration_tests.sh"],"category":"reconstruction-cases","description_en":"Provides an independent engine for playing Morrowind and an alternative editor, OpenMW-CS. It loads original game content through its own runtime and documents script and mod compatibility differences; it is an engine replacement rather than a recovered Bethesda source tree.","description_zh":"提供用于运行 Morrowind 的独立引擎和替代编辑器 OpenMW-CS，通过自己的运行时加载原游戏内容，并记录脚本及模组兼容性差异。这是引擎替代实现，而非恢复出的 Bethesda 源码树。","entry_url":"https://awesomerea.org/resources/openmw-engine-case/","entry_url_zh":"https://awesomerea.org/zh/resources/openmw-engine-case/","evidence_url":"https://github.com/OpenMW/openmw/blob/5fdc0f1c4d1d07575f9b360b8cf1d6562232bf8e/README.md","group":"cases","id":"openmw-engine-case","json_url":"https://awesomerea.org/resources/openmw-engine-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/openmw-engine-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/openmw-engine-case/index.md","name":"OpenMW: replacing Morrowind’s engine while reusing original content","name_zh":"OpenMW：复用原内容并替代 Morrowind 引擎","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","scope","prerequisites","testing","license"],"requirements":["Playing Morrowind requires the user’s original game data, including Morrowind.esm and the installation settings. Tribunal and Bloodmoon are optional expansions; the installation guide recommends both for best results. OpenMW-CS can also support separately authored projects.","The pinned README and build files identify version 0.52.0; this is a source-snapshot identifier. The README lists Windows 10+, macOS 14.8+ and Linux, with no 32-bit support.","The source configuration uses CMake 3.16+, C++20, SDL2 2.26+, OpenSceneGraph 3.6.5+, Boost 1.70+ and OpenAL; launcher/editor/wizard builds use Qt6. Additional dependencies depend on enabled components.","The project reports the main quests as completable, but warns about side quests and mods that depend on original-engine quirks. Example Suite integration tests and the separate Morrowind-content test setup cover selected behavior.","The official GitHub mirror points to the main GitLab project. GPLv3 covers project code, with separate font/dependency terms and original-game data rights."],"requirements_zh":["运行 Morrowind 需要用户自备原游戏数据，包括 Morrowind.esm 和安装设置。Tribunal 与 Bloodmoon 是可选扩展；安装指南建议同时安装以取得最佳效果。OpenMW-CS 也可支持另行创作的项目。","固定版本 README 和构建文件标明 0.52.0；这是源码快照标识。README 列出 Windows 10+、macOS 14.8+ 和 Linux，并说明不支持 32 位平台。","源码配置使用 CMake 3.16+、C++20、SDL2 2.26+、OpenSceneGraph 3.6.5+、Boost 1.70+ 和 OpenAL；启动器、编辑器及向导构建使用 Qt6。其他依赖随启用组件而异。","项目报告主线任务可完成，但提醒支线和依赖原引擎特殊行为的模组仍有问题。Example Suite 集成测试及独立的 Morrowind 内容测试配置只覆盖特定行为。","官方 GitHub 镜像指向主 GitLab 项目。项目代码采用 GPLv3，字体、依赖和原游戏数据各有条款。"],"targets":["game"],"url":"https://github.com/OpenMW/openmw","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/OpenDriver2/REDRIVER2/blob/b2d8857426f815007486def9bd23f9a6007a2c64/src_rebuild/premake5.lua","https://github.com/OpenDriver2/REDRIVER2/blob/b2d8857426f815007486def9bd23f9a6007a2c64/data/install/conv.sh","https://github.com/OpenDriver2/REDRIVER2/blob/b2d8857426f815007486def9bd23f9a6007a2c64/appveyor.yml","https://github.com/OpenDriver2/REDRIVER2/blob/b2d8857426f815007486def9bd23f9a6007a2c64/LICENSE","https://github.com/OpenDriver2/REDRIVER2/wiki/Installation-instructions/35c32de044cc80e10574838860489e5fe773fed3","https://github.com/OpenDriver2/REDRIVER2/wiki/Contributing-to-project/35c32de044cc80e10574838860489e5fe773fed3"],"category":"reconstruction-cases","description_en":"Translates reverse-engineered Driver 2 MIPS routines into C/C++ and uses Psy-X/Psy-Cross to adapt PlayStation interfaces for desktop systems. The project documents symbol-assisted Ghidra/IDA work alongside intentional bug fixes and gameplay changes.","description_zh":"将逆向分析的 Driver 2 MIPS 例程转为 C/C++，并用 Psy-X/Psy-Cross 将 PlayStation 接口适配到桌面系统。项目记录借助符号的 Ghidra/IDA 分析，同时明确包含有意修复的错误和玩法改动。","entry_url":"https://awesomerea.org/resources/redriver2-case/","entry_url_zh":"https://awesomerea.org/zh/resources/redriver2-case/","evidence_url":"https://github.com/OpenDriver2/REDRIVER2/blob/b2d8857426f815007486def9bd23f9a6007a2c64/README.md","group":"cases","id":"redriver2-case","json_url":"https://awesomerea.org/resources/redriver2-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/redriver2-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/redriver2-case/index.md","name":"REDRIVER2: reconstructing Driver 2 through a PlayStation compatibility layer","name_zh":"REDRIVER2：借助 PlayStation 兼容层重建 Driver 2","reconstruction_method":"decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","prerequisites","limits","license"],"requirements":["Requires the user’s copies of both Driver 2 discs. The pinned installation wiki lists English PAL EU and NTSC US revisions 1.0/1.1; other languages remain planned.","Documented play paths cover Windows and Linux; installation converts disc video/audio using Java. Linux runtime instructions list SDL2 and OpenAL; original game content is not supplied by the project.","Source builds use submodules, Premake5 and a C++ toolchain. The Windows guide uses Visual Studio 2022; Linux builds link SDL2, OpenAL, OpenGL and libjpeg.","The README reports a playable reconstruction but explicitly excludes the memory-card menu from its decompilation claim. Original bugs and some gameplay are deliberately changed; [D], [T] and [A] annotations distinguish decompiled, tested and altered code.","MIT license for project code; original game data and third-party components retain their own rights."],"requirements_zh":["需要用户自备 Driver 2 的两张游戏光盘。固定修订的安装 wiki 列出英文 PAL 欧洲版和 NTSC 美版的 1.0/1.1 版本，其他语言仍在计划中。","文档中的运行路径面向 Windows 和 Linux；安装阶段用 Java 转换光盘视频与音频。Linux 运行说明列出 SDL2 和 OpenAL；项目不提供原游戏内容。","源码构建使用子模块、Premake5 和 C++ 工具链。Windows 指南采用 Visual Studio 2022；Linux 构建链接 SDL2、OpenAL、OpenGL 和 libjpeg。","README 报告重建结果可玩，但明确把记忆卡菜单排除在反编译声明之外；部分原错误和玩法被有意修改。[D]、[T]、[A] 标记区分反编译、测试及改动代码。","项目代码采用 MIT 许可；原游戏数据和第三方组件保留各自权利。"],"targets":["game"],"url":"https://github.com/OpenDriver2/REDRIVER2","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/storytold/photocraft/blob/5f65579ecb44047c2a619036c18ff273202e1389/Cargo.toml","https://github.com/storytold/photocraft/blob/5f65579ecb44047c2a619036c18ff273202e1389/docs/target-app-parity.md","https://github.com/storytold/photocraft/blob/5f65579ecb44047c2a619036c18ff273202e1389/crates/io/tests/corpus.rs","https://github.com/storytold/photocraft/blob/5f65579ecb44047c2a619036c18ff273202e1389/crates/psd/tests/corpus.rs","https://github.com/storytold/photocraft/blob/5f65579ecb44047c2a619036c18ff273202e1389/LICENSE-MIT","https://github.com/storytold/photocraft/blob/5f65579ecb44047c2a619036c18ff273202e1389/LICENSE-APACHE","https://github.com/storytold/photocraft/blob/5f65579ecb44047c2a619036c18ff273202e1389/NOTICE","https://github.com/storytold/photocraft/blob/5f65579ecb44047c2a619036c18ff273202e1389/docs/brand/LICENSE-brand.txt"],"category":"reconstruction-cases","description_en":"The authors describe this Rust image editor as a clean-room reimplementation of Photoshop-style workflows. Its document engine, UI and automation interfaces share editing commands, while the source distinguishes PSD editor round trips from byte preservation in the standalone file codec.","description_zh":"作者将这款 Rust 图像编辑器描述为 Photoshop 风格流程的净室重实现。文档引擎、界面与自动化接口共用编辑命令；源码区分编辑器中的 PSD 往返处理与独立文件编解码器的字节保留。","entry_url":"https://awesomerea.org/resources/photocraft-case/","entry_url_zh":"https://awesomerea.org/zh/resources/photocraft-case/","evidence_url":"https://github.com/storytold/photocraft/blob/5f65579ecb44047c2a619036c18ff273202e1389/README.md","group":"cases","id":"photocraft-case","json_url":"https://awesomerea.org/resources/photocraft-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/photocraft-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/photocraft-case/index.md","name":"PhotoCraft: editor workflow reconstruction and PSD round-trip boundaries","name_zh":"PhotoCraft：编辑流程重建与 PSD 往返边界","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","scope","testing","limits","license"],"requirements":["The pinned workspace identifies version 0.9.0 and declares Rust 1.95+ for source builds with Cargo. Native and WebAssembly paths have platform-specific dependencies; optional font inputs and reference documents are separate.","This is an implemented document/compositing engine and editing interface, not merely a screenshot mockup.","The editor-level corpus tests compare rendering before and after export/reimport. Separate PSD codec tests compare bytes for parseable files, with a named malformed-file exception. Editor saves are explicitly not byte-identical to their inputs.","The project remains alpha and distinguishes menu-command coverage from behavioral fidelity. Its dated parity assessment retains gaps in PSD exchange, typography, professional workflows, performance and plug-in compatibility.","Project code is MIT OR Apache-2.0, subject to NOTICE; fonts, artwork and other assets retain separate terms. ArtCraft branding is excluded; published modified versions must remove it, apart from contribution-only forks."],"requirements_zh":["固定版本工作区标明 0.9.0，声明源码构建使用 Rust 1.95+ 与 Cargo。原生和 WebAssembly 路径各有平台依赖，可选字体输入与参考文档另行提供。","它包含文档／合成引擎与编辑界面，并非只有截图模型。","编辑器层面的语料测试比较导出再导入前后的渲染结果；独立 PSD 编解码测试对可解析文件比较字节，并列出一个畸形文件例外。编辑器保存明确不保证与输入逐字节相同。","项目仍处于 alpha，并区分菜单命令覆盖率与行为保真度。注明日期的对比评估保留 PSD 交换、排版、专业流程、性能及插件兼容性等缺口。","项目代码采用 MIT OR Apache-2.0，并须遵守 NOTICE；字体、美术和其他素材另有条款。ArtCraft 品牌不在这些代码许可内；公开发布修改版须移除品牌，仅用于向上游提议改动的 fork 除外。"],"targets":["app"],"url":"https://github.com/storytold/photocraft","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/storytold/wordcraft/blob/eae242176108d328c5dd81fbc10370c51ab90706/Cargo.toml","https://github.com/storytold/wordcraft/blob/eae242176108d328c5dd81fbc10370c51ab90706/docs/target-app-parity.md","https://github.com/storytold/wordcraft/blob/eae242176108d328c5dd81fbc10370c51ab90706/crates/docx/tests/passthrough.rs","https://github.com/storytold/wordcraft/blob/eae242176108d328c5dd81fbc10370c51ab90706/crates/docx/tests/roundtrip.rs","https://github.com/storytold/wordcraft/blob/eae242176108d328c5dd81fbc10370c51ab90706/LICENSE-MIT","https://github.com/storytold/wordcraft/blob/eae242176108d328c5dd81fbc10370c51ab90706/LICENSE-APACHE","https://github.com/storytold/wordcraft/blob/eae242176108d328c5dd81fbc10370c51ab90706/NOTICE","https://github.com/storytold/wordcraft/blob/eae242176108d328c5dd81fbc10370c51ab90706/docs/brand/LICENSE-brand.txt"],"category":"reconstruction-cases","description_en":"The authors describe WordCraft as a clean-room Rust implementation of familiar Microsoft Word workflows. It provides its own document model, layout engine and DOCX reader/writer, with desktop and browser interfaces; source tests exercise selected editing and file-preservation behavior.","description_zh":"作者将 WordCraft 描述为以 Rust 净室重实现熟悉的 Microsoft Word 流程。项目提供自己的文档模型、排版引擎和 DOCX 读写器，以及桌面与浏览器界面；源码测试覆盖选定的编辑与文件保留行为。","entry_url":"https://awesomerea.org/resources/wordcraft-case/","entry_url_zh":"https://awesomerea.org/zh/resources/wordcraft-case/","evidence_url":"https://github.com/storytold/wordcraft/blob/eae242176108d328c5dd81fbc10370c51ab90706/README.md","group":"cases","id":"wordcraft-case","json_url":"https://awesomerea.org/resources/wordcraft-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/wordcraft-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wordcraft-case/index.md","name":"WordCraft: document workflow reconstruction and bounded DOCX compatibility","name_zh":"WordCraft：文档流程重建与有限范围 DOCX 兼容","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","scope","testing","limits","license"],"requirements":["The pinned workspace identifies version 0.7.0 and declares Rust 1.95+ with Cargo. The documented browser build uses Trunk; native builds and faithful layout require the relevant platform dependencies and fonts.","The outcome is a document-engine and interaction implementation. CLI/MCP and control-channel support are automation surfaces.","The reviewed DOCX tests use constructed documents and specification-based XML fixtures to check modeled properties and passthrough parts. The dated assessment against Word for Mac 16.113.4 explicitly says real-world side-by-side file/page comparisons were not performed in that assessment pass.","The project is alpha. File fidelity, page layout, advanced typography, stability and ecosystem compatibility remain limited; ribbon-command counts and author readiness estimates are not acceptance-test pass rates.","Code is MIT OR Apache-2.0 with NOTICE obligations; fonts and other assets retain separate rights, and ArtCraft branding has separate restricted terms. Clean-room is the authors’ characterization."],"requirements_zh":["固定版本工作区标明 0.7.0，声明使用 Rust 1.95+ 与 Cargo；文档中的浏览器构建使用 Trunk。原生构建及准确排版需要相应平台依赖与字体。","成果是文档引擎与交互实现。CLI/MCP 和控制通道属于自动化接口。","所审阅 DOCX 测试以构造文档和按规范编写的 XML 样例检查已建模属性及透传部分。针对 Word for Mac 16.113.4 的注明日期评估明确表示，该轮未执行真实文档的双应用文件／页面对照。","项目处于 alpha；文件保真度、页面布局、高级排版、稳定性和生态兼容性仍有限。功能区命令数量及作者的成熟度估算不是验收测试通过率。","代码采用 MIT OR Apache-2.0，并有 NOTICE 义务；字体及其他素材保留各自权利，ArtCraft 品牌另有受限条款。净室只是作者的说法。"],"targets":["app"],"url":"https://github.com/storytold/wordcraft","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/storytold/gridcraft/blob/f1894c6da64d4326022ae644c767581816a23c2c/Cargo.toml","https://github.com/storytold/gridcraft/blob/f1894c6da64d4326022ae644c767581816a23c2c/.github/workflows/ci.yml","https://github.com/storytold/gridcraft/blob/f1894c6da64d4326022ae644c767581816a23c2c/docs/target-app-parity.md","https://github.com/storytold/gridcraft/blob/f1894c6da64d4326022ae644c767581816a23c2c/crates/xlsx/src/tests/roundtrip.rs","https://github.com/storytold/gridcraft/blob/f1894c6da64d4326022ae644c767581816a23c2c/crates/xlsx/src/tests/passthrough_tests.rs","https://github.com/storytold/gridcraft/blob/f1894c6da64d4326022ae644c767581816a23c2c/crates/calc/src/tests.rs","https://github.com/storytold/gridcraft/blob/f1894c6da64d4326022ae644c767581816a23c2c/LICENSE-MIT","https://github.com/storytold/gridcraft/blob/f1894c6da64d4326022ae644c767581816a23c2c/LICENSE-APACHE","https://github.com/storytold/gridcraft/blob/f1894c6da64d4326022ae644c767581816a23c2c/NOTICE","https://github.com/storytold/gridcraft/blob/f1894c6da64d4326022ae644c767581816a23c2c/docs/brand/LICENSE-brand.txt"],"category":"reconstruction-cases","description_en":"The authors describe GridCraft as a clean-room Rust implementation of Excel-style spreadsheet workflows. A workbook model, formula parser and dependency-driven recalculation are connected to XLSX I/O and a shared editing-command layer for desktop, browser and automation interfaces.","description_zh":"作者将 GridCraft 描述为以 Rust 净室重实现 Excel 风格的电子表格流程。工作簿模型、公式解析器与依赖驱动的重新计算连接到 XLSX 读写，以及供桌面、浏览器和自动化接口共用的编辑命令层。","entry_url":"https://awesomerea.org/resources/gridcraft-case/","entry_url_zh":"https://awesomerea.org/zh/resources/gridcraft-case/","evidence_url":"https://github.com/storytold/gridcraft/blob/f1894c6da64d4326022ae644c767581816a23c2c/README.md","group":"cases","id":"gridcraft-case","json_url":"https://awesomerea.org/resources/gridcraft-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/gridcraft-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/gridcraft-case/index.md","name":"GridCraft: spreadsheet workflow reconstruction and XLSX round-trip limits","name_zh":"GridCraft：电子表格流程重建与 XLSX 往返边界","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","testing","testing","limits","license"],"requirements":["The pinned workspace identifies version 0.7.0 and declares Rust 1.90+ with Cargo. Browser builds use Trunk and wasm32-unknown-unknown; native Linux CI lists X11/Wayland, GTK, fontconfig/FreeType and graphics dependencies. Fonts and input workbooks are separate.","Reviewed XLSX tests construct workbooks and OOXML packages, compare modeled values after writing and reading, and check selected unmodeled parts and relationships.","Calculation tests use expected values for selected formulas, dependency changes and spilled arrays. The dated assessment against Excel for Mac 16.113.4 records the absence of Excel-computed conformance oracles.","The project remains alpha. File fidelity, advanced workflows, performance and ecosystem compatibility remain bounded, and the README documents graphics-driver startup issues.","Code is MIT OR Apache-2.0 with NOTICE obligations; optional fonts and ArtCraft branding have separate terms. Published modified versions must remove the ArtCraft marks, except contribution-only forks. Clean-room is the authors’ characterization."],"requirements_zh":["固定版本工作区标明 0.7.0，声明使用 Rust 1.90+ 与 Cargo。浏览器构建采用 Trunk 和 wasm32-unknown-unknown；原生 Linux CI 列出 X11/Wayland、GTK、fontconfig/FreeType 及图形依赖。字体与输入工作簿另行提供。","所审阅 XLSX 测试构造工作簿与 OOXML 包，比较写入再读取后的已建模值，并检查选定的未建模部件及关系。","计算测试使用预期值检查选定公式、依赖变化和溢出数组。针对 Excel for Mac 16.113.4 的注明日期评估记录缺少以 Excel 计算结果为基准的一致性测试。","项目仍处于 alpha；文件保真度、高级流程、性能与生态兼容性仍有边界，README 还记录图形驱动启动问题。","代码采用 MIT OR Apache-2.0，并有 NOTICE 义务；可选字体与 ArtCraft 品牌另有条款。公开发布修改版须移除 ArtCraft 标识，仅用于向上游提议改动的 fork 除外。净室只是作者的说法。"],"targets":["app"],"url":"https://github.com/storytold/gridcraft","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/Cargo.toml","https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/.github/workflows/ci.yml","https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/apps/deckcraft-web/Trunk.toml","https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/docs/target-app-parity.md","https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/crates/pptx/tests/corpus.rs","https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/crates/pptx/tests/roundtrip.rs","https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/crates/pptx/tests/kept_parts.rs","https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/LICENSE-MIT","https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/LICENSE-APACHE","https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/NOTICE","https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/docs/brand/LICENSE-brand.txt"],"category":"reconstruction-cases","description_en":"The authors describe DeckCraft as a clean-room Rust implementation of PowerPoint-style presentation workflows. Its slide model, rendering and command layers support desktop/browser editing and PPTX interchange; reviewed source tests check constructed decks and selected preserved package parts.","description_zh":"作者将 DeckCraft 描述为以 Rust 净室重实现 PowerPoint 风格的演示文稿流程。其幻灯片模型、渲染与命令层支撑桌面／浏览器编辑及 PPTX 交换；所审阅源码测试检查构造的文稿和选定的保留包部件。","entry_url":"https://awesomerea.org/resources/deckcraft-case/","entry_url_zh":"https://awesomerea.org/zh/resources/deckcraft-case/","evidence_url":"https://github.com/storytold/deckcraft/blob/1dc69720db64323370dda061226becb09ad79fd4/README.md","group":"cases","id":"deckcraft-case","json_url":"https://awesomerea.org/resources/deckcraft-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/deckcraft-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/deckcraft-case/index.md","name":"DeckCraft: presentation workflow reconstruction and bounded PPTX interchange","name_zh":"DeckCraft：演示文稿流程重建与有限范围 PPTX 交换","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","testing","testing","limits","license"],"requirements":["The pinned workspace identifies version 0.7.0 and declares Rust 1.95+ with Cargo. Linux source builds need ALSA headers and display/window dependencies; the browser path uses Trunk and wasm32-unknown-unknown. Optional craft-fonts inputs affect rendering, with system-font fallback documented.","The reviewed PPTX corpus is authored in code, not collected from PowerPoint. Tests check retained text and content-part counts after saving, then part names and text after another save. Separate tests preserve selected XML metadata.","The dated assessment against PowerPoint for Mac 16.113.4 explicitly says rendering fidelity, performance against PowerPoint and end-to-end workflows with real users’ decks were not measured in that assessment. Feature breadth and readiness percentages are checklist counts or author estimates.","The project is alpha and has documented file-exchange, presentation-workflow, stability and ecosystem gaps. Source snapshots and older assessment rows differ.","Code is MIT OR Apache-2.0 with NOTICE obligations. Fonts/icons retain separate terms, and NOTICE lists the Symphonia audio decoder under MPL-2.0. ArtCraft marks have restricted terms and must be removed from published modified versions except contribution-only forks. Clean-room remains author-attributed."],"requirements_zh":["固定版本工作区标明 0.7.0，声明使用 Rust 1.95+ 与 Cargo。Linux 源码构建需要 ALSA 头文件及显示／窗口依赖；浏览器路径采用 Trunk 和 wasm32-unknown-unknown。可选 craft-fonts 输入会影响渲染，文档也说明了系统字体回退。","所审阅 PPTX 语料由代码构造，并非从 PowerPoint 收集。测试检查保存后的文本与内容部件数量，再检查再次保存后的部件名称和文本；另有测试保留选定 XML 元数据。","针对 PowerPoint for Mac 16.113.4 的注明日期评估明确表示，该轮未测量相对 PowerPoint 的渲染保真度、性能或真实用户文稿的端到端流程。功能广度与成熟度百分比是检查表计数或作者估算。","项目处于 alpha，文档记录文件交换、演示流程、稳定性和生态缺口；源码快照与较旧评估条目存在差异。","代码采用 MIT OR Apache-2.0，并有 NOTICE 义务。字体／图标另有条款，NOTICE 将 Symphonia 音频解码器列为 MPL-2.0。ArtCraft 标识采用受限条款，公开发布修改版须移除，仅用于向上游提议改动的 fork 除外。净室仍为作者的说法。"],"targets":["app"],"url":"https://github.com/storytold/deckcraft","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/diasurgical/DevilutionX/blob/94433061f847d22863e5d705c398f7c13d7bab85/docs/BACKGROUND.md","https://github.com/diasurgical/DevilutionX/blob/94433061f847d22863e5d705c398f7c13d7bab85/VERSION","https://github.com/diasurgical/DevilutionX/blob/94433061f847d22863e5d705c398f7c13d7bab85/CMakeLists.txt","https://github.com/diasurgical/DevilutionX/blob/94433061f847d22863e5d705c398f7c13d7bab85/docs/building.md","https://github.com/diasurgical/DevilutionX/blob/94433061f847d22863e5d705c398f7c13d7bab85/test/timedemo_test.cpp","https://github.com/diasurgical/DevilutionX/blob/94433061f847d22863e5d705c398f7c13d7bab85/test/drlg_l1_test.cpp","https://github.com/diasurgical/DevilutionX/blob/94433061f847d22863e5d705c398f7c13d7bab85/LICENSE.md","https://github.com/diasurgical/DevilutionX/blob/94433061f847d22863e5d705c398f7c13d7bab85/Packaging/windows/README.txt","https://github.com/diasurgical/DevilutionX/blob/94433061f847d22863e5d705c398f7c13d7bab85/Packaging/resources/README-SDL.txt"],"category":"reconstruction-cases","description_en":"Builds a modern Diablo and Hellfire port on the Devilution reconstruction, with platform support, bug fixes and optional quality-of-life features. The project documents the original symbol-assisted reconstruction and includes selected dungeon-generation and saved-game regression checks.","description_zh":"基于 Devilution 重建成果提供现代平台上的 Diablo 与 Hellfire 移植，加入平台支持、错误修复及可选便利功能。项目记录了早期借助符号信息的重建过程，并包含特定地牢生成与存档回归检查。","entry_url":"https://awesomerea.org/resources/devilutionx-case/","entry_url_zh":"https://awesomerea.org/zh/resources/devilutionx-case/","evidence_url":"https://github.com/diasurgical/DevilutionX/blob/94433061f847d22863e5d705c398f7c13d7bab85/README.md","group":"cases","id":"devilutionx-case","json_url":"https://awesomerea.org/resources/devilutionx-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/devilutionx-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/devilutionx-case/index.md","name":"DevilutionX: porting Diablo’s reconstructed engine","name_zh":"DevilutionX：移植重建后的 Diablo 引擎","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","scope","testing","license","license"],"requirements":["Full Diablo play requires the user’s original DIABDAT.MPQ. Hellfire additionally needs hellfire.mpq, hfmonk.mpq, hfmusic.mpq and hfvoice.mpq. The separately offered spawn.mpq supports only the shareware portion; source availability does not supply rights to original game content.","The pinned source identifies 1.6.0-dev and requires CMake 3.22 and C++23. SDL2 is the default, with separate SDL1/SDL3 options; build documentation lists platform-dependent libraries and packaging steps.","The background describes Devilution’s use of PlayStation debug symbols, assertion strings, compiler information and assembly comparisons.","The reviewed timedemo test replays a warrior’s level-1-to-2 session and compares saved hero state; it skips without MPQ data and explicitly selects shareware mode. Separate dungeon tests compare seeded fixtures. These are bounded regression checks.","The root LICENSE.md declares Sustainable Use License 1.0: use/modification is limited to internal business purposes, non-commercial use or personal use, while distribution must be free and non-commercial. Components and original game data retain separate terms.","The same snapshot retains conflicting Public Domain wording in the Windows package README and Unlicense metadata in the Apple bundle configuration."],"requirements_zh":["完整运行 Diablo 需要用户自备原版 DIABDAT.MPQ。Hellfire 还需 hellfire.mpq、hfmonk.mpq、hfmusic.mpq 和 hfvoice.mpq。另行提供的 spawn.mpq 只支持共享版部分；源码公开不附带原游戏内容的使用权。","固定源码标识为 1.6.0-dev，要求 CMake 3.22 和 C++23。默认使用 SDL2，另有 SDL1／SDL3 选项；构建文档列出各平台依赖及打包步骤。","背景文档说明 Devilution 借助 PlayStation 调试符号、断言字符串、编译器信息和汇编对照开展重建。","所审阅的 timedemo 测试回放战士从一级到二级的流程并对比角色存档状态；缺少 MPQ 时会跳过，而且明确使用共享版模式。另有地牢测试对比固定随机种子的样本。这些是有限回归检查。","根目录 LICENSE.md 声明采用 Sustainable Use License 1.0：使用／修改限于内部业务、非商业或个人用途，分发须免费且用于非商业目的。各组件与原游戏数据仍有各自条款。","同一快照的 Windows 打包 README 仍写有 Public Domain，Apple 应用包配置仍含 Unlicense 元数据。"],"targets":["game"],"url":"https://github.com/diasurgical/DevilutionX","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/findings/WINDOWS-DRIVER.md","https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/findings/TESTING.md","https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/kernel/README.md","https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/libcamera/README.md","https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/kernel/patches/0000-cover-letter.patch","https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/libcamera/patches/libcamera-lsc-0.7.1.patch","https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/tools/aiqb.py","https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/tools/gen-tuning.py","https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/rpms/README.md","https://blogs.gnome.org/uraeus/2026/10/15/aiandreverseengineerhardware/","https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/tools/README.md","https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/tools/raw.py"],"category":"reconstruction-cases","description_en":"Recovers selected camera-tuning structures from an Intel Windows driver package and uses them to repair Linux image capture on one ThinkPad model. Public CPFF/AIQB parsers, kernel patches and libcamera changes accompany the author’s Claude-assisted investigation and bounded before/after measurements.","description_zh":"从 Intel Windows 驱动包中恢复选定的相机调校结构，用于修复一个 ThinkPad 型号在 Linux 下的图像采集。公开的 CPFF／AIQB 解析器、内核补丁及 libcamera 修改，配有作者报告的 Claude 辅助调查和有限范围的前后测量。","entry_url":"https://awesomerea.org/resources/thinkpad-imx471-camera-case/","entry_url_zh":"https://awesomerea.org/zh/resources/thinkpad-imx471-camera-case/","evidence_url":"https://github.com/cschalle/mipi-fixes-x1-aura/blob/533d995b7acbd6965e5b0b85c97f8bafab9fed4e/README.md","group":"cases","id":"thinkpad-imx471-camera-case","json_url":"https://awesomerea.org/resources/thinkpad-imx471-camera-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/thinkpad-imx471-camera-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/thinkpad-imx471-camera-case/index.md","name":"ThinkPad IMX471: recovering camera tuning for Linux","name_zh":"ThinkPad IMX471：为 Linux 恢复相机调校信息","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","testing","limits","attribution","license"],"requirements":["The reviewed target is a Lenovo ThinkPad X1 Carbon Gen 14 (Aura Edition), with a Sony IMX471 sensor behind Intel IPU7. The author tested Fedora 44 kernel 7.2.8 and a libcamera 0.7.1 backport. The published kernel package omits BTF/debug information and is described as a test kernel, not a daily-driver recommendation.","The Python 3 analysis tools use NumPy and assume a 1928x1088 RG10 stream with a 3904-byte stride. Some scripts embed the author’s local layout and need path adaptation. Repeating the tuning analysis requires the corresponding vendor driver-package data or device captures.","The author’s controlled low-light comparison holds 400 frames for convergence and reports frame brightness rising from 31.1 to 90.9. The test record describes crop-selection, colour-bar and analogue-gain checks on the affected device. Its 46/46 v4l2-compliance passes occurred before and after the crop fix, so that pass count alone did not detect the defect.","The work adds three kernel fixes plus lens-shading and white-balance-statistics changes to an existing Linux driver and software ISP. Low-light blue remains about 17% short, an 18.8 ms exposure ceiling is not fixed here, and the second IR camera is outside scope. It does not recover the entire Windows driver, emulate the laptop or establish compatibility across camera models.","The dated investigation includes corrected and withdrawn hypotheses. The patch cover letter attributes Claude assistance and hardware checking to the author. The later blog reports submission/review activity.","No top-level project license is present at the pinned revision. Newly added libcamera implementation files in the patch declare LGPL-2.1-or-later, and the tuning-data section declares CC0-1.0; these are component notices, not a blanket license for every script or vendor-derived input. Existing kernel/libcamera code and vendor materials retain their separate terms."],"requirements_zh":["所审阅目标是 Lenovo ThinkPad X1 Carbon Gen 14（Aura Edition），采用 Intel IPU7 后端的 Sony IMX471 传感器。作者测试了 Fedora 44 内核 7.2.8 和 libcamera 0.7.1 回移补丁。发布的内核包省略 BTF／调试信息，被描述为测试内核，并非日常使用推荐。","Python 3 分析工具使用 NumPy，并假定输入为 1928x1088 RG10 流、每行跨度 3904 字节。部分脚本写入了作者的本地目录布局，需要调整路径。重做调校分析需另行提供相应厂商驱动包数据或设备采集记录。","作者在受控弱光比较中等待 400 帧以使算法收敛，报告画面亮度由 31.1 升至 90.9。测试记录描述了受影响设备上的裁剪区域查询、彩条和模拟增益检查。v4l2-compliance 在裁剪修复前后均为 46/46 通过，因此该通过数本身未检测出缺陷。","工作在既有 Linux 驱动和软件 ISP 上增加三项内核修复，以及镜头阴影校正和白平衡统计修改。弱光下蓝色仍约不足 17%，18.8 ms 的曝光上限尚未在此修复，第二个红外相机不在范围内。项目不恢复完整 Windows 驱动、不仿真整台笔记本，也不确立跨相机型号兼容性。","注明日期的调查包含已更正和撤回的假设。补丁说明将 Claude 辅助和硬件检查归于作者；后续博客报告提交／审阅活动。","固定版本没有顶层项目许可证。补丁中新添的 libcamera 实现文件声明 LGPL-2.1-or-later，调校数据部分声明 CC0-1.0；这些是组件声明，不是覆盖全部脚本或厂商派生输入的统一许可。既有内核／libcamera 代码和厂商材料仍适用各自条款。"],"targets":["firmware"],"url":"https://github.com/cschalle/mipi-fixes-x1-aura","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/lxistired/ledger-reborn/blob/d7f6b8a1f4ad6c4ae8b10100d1c93cf15940c21d/README.md","https://github.com/lxistired/ledger-reborn/blob/d7f6b8a1f4ad6c4ae8b10100d1c93cf15940c21d/ENGINE_README.md","https://github.com/lxistired/ledger-reborn/blob/d7f6b8a1f4ad6c4ae8b10100d1c93cf15940c21d/BUILDING.md","https://github.com/lxistired/ledger-reborn/blob/d7f6b8a1f4ad6c4ae8b10100d1c93cf15940c21d/requirements-desktop.txt","https://github.com/lxistired/ledger-reborn/blob/d7f6b8a1f4ad6c4ae8b10100d1c93cf15940c21d/docs/EVIDENCE.md","https://github.com/lxistired/ledger-reborn/blob/d7f6b8a1f4ad6c4ae8b10100d1c93cf15940c21d/docs/PUBLICATION_SCOPE.md","https://github.com/lxistired/ledger-reborn/blob/d7f6b8a1f4ad6c4ae8b10100d1c93cf15940c21d/docs/BRAND_AND_PROVENANCE.md","https://github.com/lxistired/ledger-reborn/blob/d7f6b8a1f4ad6c4ae8b10100d1c93cf15940c21d/ledger.py","https://github.com/lxistired/ledger-reborn/blob/d7f6b8a1f4ad6c4ae8b10100d1c93cf15940c21d/tests/test_acceptance.py","https://github.com/lxistired/ledger-reborn/blob/d7f6b8a1f4ad6c4ae8b10100d1c93cf15940c21d/fixtures/FROZEN.sha256","https://github.com/lxistired/ledger-reborn/blob/d7f6b8a1f4ad6c4ae8b10100d1c93cf15940c21d/fixtures/expected.json","https://github.com/lxistired/ledger-reborn/blob/d7f6b8a1f4ad6c4ae8b10100d1c93cf15940c21d/LICENSE"],"category":"community-case-studies","description_en":"The maintainer reports using REA and Ghidra to study selected QuickBooks Desktop for Mac behavior, then independently implements a local accounting application. Its Python/SQLite engine persists double-entry journals, invoices, inventory and payments, while public synthetic fixtures test bounded accounting and rollback behavior.","description_zh":"维护者报告使用 REA 与 Ghidra 研究 QuickBooks Desktop for Mac 的选定行为，随后独立实现本地记账应用。Python／SQLite 引擎持久保存复式分录、发票、库存和付款；公开合成样例检查有限范围的记账与回滚行为。","entry_url":"https://awesomerea.org/resources/ledger-reborn-accounting-case/","entry_url_zh":"https://awesomerea.org/zh/resources/ledger-reborn-accounting-case/","evidence_url":"https://github.com/lxistired/ledger-reborn/blob/d7f6b8a1f4ad6c4ae8b10100d1c93cf15940c21d/docs/CASE_STUDY.md","group":"rea","id":"ledger-reborn-accounting-case","json_url":"https://awesomerea.org/resources/ledger-reborn-accounting-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/ledger-reborn-accounting-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ledger-reborn-accounting-case/index.md","name":"Ledger Reborn: an independent accounting app informed by QuickBooks study","name_zh":"Ledger Reborn：基于 QuickBooks 研究的独立记账实现","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","attribution","testing","testing","limits","license"],"requirements":["The reviewed release is 2026.10.12-preview.1. The local browser edition needs Python 3.11+; the accounting core uses the standard library and SQLite. Native desktop builds use pywebview 6.2.1, PyInstaller 6.22.3 and Pillow 12.3.0, built on the target OS; Windows additionally needs the separately installed WebView2 runtime.","The maintainer identifies QuickBooks Desktop for Mac 2024 Trial, version 23.1.13.962 R14 Trial, as the investigation target. REA 6.4.0 with Ghidra, NIB decoding and selected runtime observations informed inventory arithmetic, budget signs, reconciliation paths and layouts. The Python/SQLite engine and frontend are independently written, not recovered Intuit source.","Public synthetic fixtures contain frozen, independently specified integer-cent expectations. Reviewed tests compare reports and check atomic rollback of invalid journals, bills and inventory operations. These are implementation checks.","The separate original-software comparison reportedly matched three official-sample reports account-by-account to the cent. The vendor sample company and exports are not public here, so that result remains author-reported.","The preview is single-user, local and USD-only. Payroll, tax filing, live bank/payment services, multicurrency and complete QuickBooks migration are outside the implementation. Its cash-basis output is a defined management cash view.","MIT covers the authored application; vendor inputs and bundled runtime dependencies keep separate terms. The preview is not Developer ID-signed or notarized on macOS and lacks Windows publisher signing. Package smoke tests and selected native-window observations have separate scopes."],"requirements_zh":["所审阅版本为 2026.10.12-preview.1。本地浏览器版本需要 Python 3.11+；记账核心使用标准库与 SQLite。原生桌面构建使用 pywebview 6.2.1、PyInstaller 6.22.3 和 Pillow 12.3.0，须在目标操作系统上构建；Windows 还需要另行安装 WebView2 运行时。","维护者将 QuickBooks Desktop for Mac 2024 Trial、版本 23.1.13.962 R14 Trial 标为调查目标。REA 6.4.0 配合 Ghidra、NIB 解码及选定运行观察，为库存算法、预算符号、对账路径和布局提供依据。Python／SQLite 引擎与前端为独立编写，并非恢复出的 Intuit 源码。","公开合成样例包含冻结且独立指定的整数分金额期望值。所审阅测试比较报表，并检查无效分录、账单和库存操作的原子回滚。这些是实现检查。","单独进行的原软件比较据称使三份官方样例报表逐账户精确到分一致。厂商样例公司与导出文件未在此公开，因此该结果仍为作者报告。","预览版仅支持单用户、本地运行和 USD。工资核算、报税、实时银行／付款服务、多币种及完整 QuickBooks 迁移不在实现范围内。其现金制输出是明确定义的管理现金视图。","MIT 覆盖项目自编应用；厂商输入与捆绑运行时依赖保留各自条款。预览版在 macOS 上没有 Developer ID 签名或公证，也没有 Windows 发布者签名。打包程序冒烟测试与选定原生窗口观察各有范围。"],"targets":["app"],"url":"https://github.com/lxistired/ledger-reborn","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/boyang-hu/website-rebuild-skill/blob/ac60c9d8a2ab40045a89b5403c3457f1404e92b3/README.en.md","https://github.com/boyang-hu/website-rebuild-skill/blob/ac60c9d8a2ab40045a89b5403c3457f1404e92b3/skills/website-rebuild/references/case-studies/rsc-reconstruction.md","https://github.com/boyang-hu/website-rebuild-skill/blob/ac60c9d8a2ab40045a89b5403c3457f1404e92b3/skills/website-rebuild/scripts/flight-decode.mjs","https://github.com/boyang-hu/website-rebuild-skill/blob/ac60c9d8a2ab40045a89b5403c3457f1404e92b3/skills/website-rebuild/scripts/verify-flight.mjs","https://github.com/boyang-hu/website-rebuild-skill/blob/ac60c9d8a2ab40045a89b5403c3457f1404e92b3/skills/website-rebuild/tools/flight-to-mdx.mjs","https://github.com/boyang-hu/website-rebuild-skill/blob/ac60c9d8a2ab40045a89b5403c3457f1404e92b3/selftest/run.mjs","https://github.com/boyang-hu/website-rebuild-skill/blob/ac60c9d8a2ab40045a89b5403c3457f1404e92b3/LICENSE"],"category":"reconstruction-cases","description_en":"Documents a website-rebuild-skill case that decodes browser-delivered React Server Component Flight streams, reconstructs a buildable Next project and compares its output with a captured site. The reported rauchg.com campaign uses route-tree comparison and module-reference mapping; the new server source is inferred from observable output.","description_zh":"记录 website-rebuild-skill 的一个案例：解码浏览器收到的 React 服务端组件 Flight 流，重建可构建的 Next 项目，再与捕获站点的输出比较。作者报告的 rauchg.com 重建过程采用路由树比较与模块引用映射；新服务端源码由可观察输出推断。","entry_url":"https://awesomerea.org/resources/rauchg-rsc-reconstruction-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rauchg-rsc-reconstruction-case/","evidence_url":"https://github.com/boyang-hu/website-rebuild-skill/blob/ac60c9d8a2ab40045a89b5403c3457f1404e92b3/skills/website-rebuild/references/rsc-reconstruction.md","group":"cases","id":"rauchg-rsc-reconstruction-case","json_url":"https://awesomerea.org/resources/rauchg-rsc-reconstruction-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rauchg-rsc-reconstruction-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rauchg-rsc-reconstruction-case/index.md","name":"rauchg.com: rebuilding an RSC blog from captured Flight output","name_zh":"rauchg.com：根据捕获的 Flight 输出重建 RSC 博客","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","scope","testing","testing","limits","license"],"requirements":["The documented rauchg.com snapshot used Next 16.1.1, Turbopack and React 19 canary. The tooling requires Node.js 22+ and a local Chrome/Chromium for comparison; some stages invoke version-pinned external tools. Repeating the method needs an authorized target snapshot and a separately built reconstruction, not just the skill repository.","Flight decoding exposes delivered element trees, route state and client-module references. The reconstructed server-component source is explicitly an inference from that output; flight-to-mdx also needs site-specific shape/link adaptations.","The author reports 18/18 routes passing a Flight semantic gate and a runtime sweep for this case. The gate compares normalized trees and enforces a global module-ID bijection. It normalizes build-hash namespaces and selected encoding differences; configured prop/class exclusions can omit registered fields or subtrees.","The gate does not check CSS, so layout, fonts and rendered pixels need separate comparisons. Public synthetic self-tests include changed-text rejection and rejection of a one-to-many module mapping.","The method explicitly leaves unobserved error responses, database/write paths, server caches, dynamic-image generator source and unlinked routes unresolved. The author also notes possible model-training familiarity with a nominally blind target.","MIT applies to the skill and tooling, not to reconstructed websites, their scripts, fonts or other assets. The source documents separate authorization/publication decisions and private, noindex output defaults."],"requirements_zh":["文档中的 rauchg.com 快照使用 Next 16.1.1、Turbopack 和 React 19 canary。工具需要 Node.js 22+，并使用本地 Chrome／Chromium 做比较；部分阶段调用固定版本的外部工具。重做该方法需要获授权的目标快照和另行构建的重建结果，而不只是技能仓库。","Flight 解码呈现已下发的元素树、路由状态和客户端模块引用。重建的服务端组件源码被明确视为根据这些输出推断的结果；flight-to-mdx 也需要针对站点调整结构与链接处理。","作者报告此案例的 18/18 条路由通过 Flight 语义检查与运行遍历。检查器比较规范化后的树，并要求模块 ID 建立全局一一映射；它归一化构建哈希命名及选定编码差异，配置的属性／类排除项还可忽略已登记字段或子树。","该检查器不检查 CSS，因此布局、字体与渲染像素需要另行比较。公开合成自测包括拒绝文本变更和拒绝一个源模块对应多个重建模块。","方法明确留下未观察到的错误响应、数据库／写入路径、服务端缓存、动态图像生成器源码及无入链路由等未恢复范围。作者也说明，名义上的盲测目标可能已存在于模型训练知识中。","MIT 适用于技能与工具，不适用于重建网站及其脚本、字体或其他素材。源码文档将授权与发布另行处理，输出默认私有并设置 noindex。"],"targets":["website"],"url":"https://github.com/boyang-hu/website-rebuild-skill/blob/ac60c9d8a2ab40045a89b5403c3457f1404e92b3/skills/website-rebuild/references/rsc-reconstruction.md","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/WildweaselMS/NJFE/blob/992866c6609f8c813f459ff79840cf04d5883f8e/NOTICE","https://github.com/WildweaselMS/NJFE/blob/992866c6609f8c813f459ff79840cf04d5883f8e/REUSE.toml","https://github.com/WildweaselMS/NJFE/blob/992866c6609f8c813f459ff79840cf04d5883f8e/LICENSE","https://github.com/WildweaselMS/NJFE/blob/992866c6609f8c813f459ff79840cf04d5883f8e/SECURITY.md","https://github.com/WildweaselMS/NJFE/blob/992866c6609f8c813f459ff79840cf04d5883f8e/wifi_scanner/platformio.ini","https://github.com/WildweaselMS/NJFE/blob/992866c6609f8c813f459ff79840cf04d5883f8e/wifi_scanner/tools/requirements.txt","https://github.com/WildweaselMS/NJFE/blob/992866c6609f8c813f459ff79840cf04d5883f8e/wifi_scanner/src_i4season/main.cpp","https://github.com/WildweaselMS/NJFE/blob/992866c6609f8c813f459ff79840cf04d5883f8e/wifi_scanner/tools/viewer.py","https://github.com/WildweaselMS/NJFE/blob/992866c6609f8c813f459ff79840cf04d5883f8e/wifi_scanner/tools/gui.py","https://github.com/rbeilvert/otoscope/blob/d14ac8e368854146ded4f3347614a24539e6696a/README.md","https://github.com/rbeilvert/otoscope/blob/d14ac8e368854146ded4f3347614a24539e6696a/app/src/main/kotlin/dev/rubec/otoscope/stream/i4season/I4seasonProtocol.kt","https://github.com/rbeilvert/otoscope/blob/d14ac8e368854146ded4f3347614a24539e6696a/app/src/main/kotlin/dev/rubec/otoscope/stream/i4season/FrameAssembler.kt"],"category":"reconstruction-cases","description_en":"Reuses otoscope's reverse-engineered i4season/Soulear protocol in an ESP32-C3 bridge and Python desktop viewer. The author credits Claude Code for implementation and reports streaming one Hopefox Find T to a Windows PC, with recording, orientation and LED controls.","description_zh":"在 ESP32-C3 桥接器与 Python 电脑查看器中复用 otoscope 经逆向得到的 i4season／Soulear 协议。作者将实现归功于 Claude Code 辅助，报告把一台 Hopefox Find T 的视频传到 Windows 电脑，并提供录像、方向调整及 LED 控制。","entry_url":"https://awesomerea.org/resources/njfe-ear-camera-bridge-case/","entry_url_zh":"https://awesomerea.org/zh/resources/njfe-ear-camera-bridge-case/","evidence_url":"https://github.com/WildweaselMS/NJFE/blob/992866c6609f8c813f459ff79840cf04d5883f8e/README.md","group":"cases","id":"njfe-ear-camera-bridge-case","json_url":"https://awesomerea.org/resources/njfe-ear-camera-bridge-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/njfe-ear-camera-bridge-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/njfe-ear-camera-bridge-case/index.md","name":"NJFE: a Soulear camera protocol bridge for desktop inspection","name_zh":"NJFE：用于电脑检查的 Soulear 相机协议桥接","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","attribution","testing","limits","license"],"requirements":["Input is the camera’s Wi-Fi i4season/Soulear UDP traffic. An ESP32-C3 SuperMini with a 0.42-inch, 72×40 SSD1306 OLED reassembles JPEG frames and sends them with accelerometer data over custom USB CDC serial to the viewer. It is not a UVC webcam, the camera’s USB port is charge-only, and no vendor firmware or full app source is recovered.","Builds with PlatformIO espressif32 6.11.0, Arduino core 2.0.17 and U8g2 ^2.35.30; the desktop tools need Python with Tkinter, pyserial >=3.5, opencv-python >=4.8, NumPy >=1.24 and Pillow >=12.3.0. Only Windows testing is reported.","Packet format, commands, frame assembly and rotation logic are credited to rbeilvert/otoscope, which reverse engineered Soulear’s libWifiCamera.so; NJFE does not pin the borrowed revision.","Results come from a single HKV41B-firmware Hopefox Find T (480×480 JPEG at about 17 fps). The --test N mode needs the hardware and there is no offline conformance suite.","The camera network is open: the bridge accepts unauthenticated UDP that can inject images or replies, serial access is trusted and recordings are unencrypted. It is an inspection tool, not a medical device.","GPL-3.0-or-later, with protocol code and roll calculation derived from GPL otoscope; third-party libraries keep their licenses, and no rights to vendor software or images are granted."],"requirements_zh":["输入是相机的 Wi-Fi i4season／Soulear UDP 流量。ESP32-C3 SuperMini 配合 0.42 英寸、72×40 SSD1306 OLED 重组 JPEG 帧，并通过自定义 USB CDC 串口将图像与加速度计数据送入查看器。输出不是 UVC 摄像头，相机自身的 USB 口仅供充电，项目也未恢复厂商固件或完整应用源码。","构建使用 PlatformIO espressif32 6.11.0、Arduino core 2.0.17 和 U8g2 ^2.35.30；电脑工具需要带 Tkinter 的 Python，以及 pyserial >=3.5、opencv-python >=4.8、NumPy >=1.24 和 Pillow >=12.3.0。项目只报告了 Windows 测试。","数据包格式、命令、帧组装与旋转逻辑归功于 rbeilvert/otoscope，该项目逆向了 Soulear 的 libWifiCamera.so；NJFE 未固定所借用的修订版本。","结果仅来自一台固件为 HKV41B 的 Hopefox Find T（480×480 JPEG，约 17 fps）。--test N 模式需要连接硬件，且没有离线一致性测试集。","相机网络是开放的：桥接器接收未经认证、可能被注入图像或回复的 UDP 流量，串口访问被视为可信，录像未加密保存。项目定位为检查工具，而非医疗器械。","采用 GPL-3.0-or-later，协议代码与姿态角计算派生自 GPL otoscope；第三方库保留各自许可证，也不授予厂商软件或图像的使用权。"],"targets":["protocol"],"url":"https://github.com/WildweaselMS/NJFE","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/JimLiu/baocut/blob/b8585e0c8d7a82bdee9f0ed019cf6edb075e41c1/packages/slides-runtime/README.md","https://github.com/JimLiu/baocut/blob/b8585e0c8d7a82bdee9f0ed019cf6edb075e41c1/LICENSE","https://github.com/JimLiu/baocut/blob/b8585e0c8d7a82bdee9f0ed019cf6edb075e41c1/THIRD_PARTY_NOTICES.md","https://github.com/JimLiu/baocut/blob/b8585e0c8d7a82bdee9f0ed019cf6edb075e41c1/package.json","https://github.com/JimLiu/baocut/blob/b8585e0c8d7a82bdee9f0ed019cf6edb075e41c1/packages/slides-runtime/package.json","https://github.com/JimLiu/baocut/blob/b8585e0c8d7a82bdee9f0ed019cf6edb075e41c1/apps/slides-editor/build.mjs","https://github.com/JimLiu/baocut/blob/b8585e0c8d7a82bdee9f0ed019cf6edb075e41c1/packages/slides/src/deck-store.ts","https://github.com/JimLiu/baocut/blob/b8585e0c8d7a82bdee9f0ed019cf6edb075e41c1/packages/slides/src/deck-store.test.ts","https://github.com/JimLiu/baocut/blob/b8585e0c8d7a82bdee9f0ed019cf6edb075e41c1/packages/slides/src/deck-routes.test.ts","https://github.com/JimLiu/baocut/blob/b8585e0c8d7a82bdee9f0ed019cf6edb075e41c1/packages/slides/src/deck-check.test.ts","https://github.com/JimLiu/baocut/blob/b8585e0c8d7a82bdee9f0ed019cf6edb075e41c1/packages/slides/src/editor/editor-host.test.ts","https://github.com/JimLiu/baocut/blob/b8585e0c8d7a82bdee9f0ed019cf6edb075e41c1/packages/harness/src/slide-annotations.test.ts"],"category":"reconstruction-cases","description_en":"Documents BaoCut’s interactive slide editor, whose author says the implementation draws on Claude Slides. It adds a local deck store, HTML/CSS compiler and annotation-to-agent bridge for browser and desktop hosts; the design reports a Web-flow check, without establishing original backend recovery or full behavioral parity.","description_zh":"记录 BaoCut 交互式幻灯片编辑器，作者称其实现借鉴自 Claude Slides。它为浏览器与桌面宿主加入本地文稿存储、HTML/CSS 编译器及标注到智能体的桥接；设计说明报告了 Web 流程检查，但未确立原有后端恢复或完整行为一致性。","entry_url":"https://awesomerea.org/resources/baocut-slides-editor-case/","entry_url_zh":"https://awesomerea.org/zh/resources/baocut-slides-editor-case/","evidence_url":"https://github.com/JimLiu/baocut/blob/b8585e0c8d7a82bdee9f0ed019cf6edb075e41c1/docs/design/slides/slides-design.md","group":"cases","id":"baocut-slides-editor-case","json_url":"https://awesomerea.org/resources/baocut-slides-editor-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/baocut-slides-editor-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/baocut-slides-editor-case/index.md","name":"BaoCut Slides: adapting an interactive web editor","name_zh":"BaoCut Slides：交互式网页编辑器改编","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","limits","testing","license","attribution"],"requirements":["The pinned Slides component is an editor runtime, a restricted HTML/CSS slide compiler and a new BaoCut host; decks are a v4 deck.json index with per-slide HTML and local assets.","Needs Node.js >=22.12.0, npm workspace dependencies, the apps/slides-editor build and a BaoCut Runtime/host; the runtime declares React ^19.3.0 and patched PptxGenJS 3.12.0. Full BaoCut builds add Rust/Cargo, CMake and C++ tools, with full Xcode/Metal for Apple Silicon inference. Agent-made decks need Codex CLI, Claude Code or another configured engine under its own terms.","Single-user and file-backed, with per-file conflict checks but no whole-batch rollback. Shared rooms/presence, share links, persistent comment threads and sending to Google Drive/Slides are out of scope; PPTX/PDF downloads remain P1.","End-to-end validation covers only the Web annotation flow, not Electron; the published tests use fakes and no comparison with the original.","BaoCut Community License 1.0 is source-available: personal/internal use and content creation are allowed; commercializing the code or commercial hosting needs a separate license. PptxGenJS (MIT) and mediabunny (MPL-2.0) keep their terms; no reuse rights are shown for Claude material or the bundled icon font, slated for replacement.","Use independently authorized slide content."],"requirements_zh":["固定版本的 Slides 组件包括编辑器运行时、支持有限 HTML/CSS 子集的幻灯片编译器和新建的 BaoCut 宿主；文稿由 v4 deck.json 索引、逐页 HTML 与本地素材组成。","需要 Node.js >=22.12.0、npm 工作区依赖、apps/slides-editor 构建产物及 BaoCut Runtime／宿主；运行时声明 React ^19.3.0 与带项目补丁的 PptxGenJS 3.12.0。完整 BaoCut 构建另需 Rust/Cargo、CMake 和 C++ 工具，Apple Silicon 推理需要完整 Xcode／Metal。由智能体创建文稿需要 Codex CLI、Claude Code 或其他已配置引擎，并遵守其条款。","单用户、本地文件存储，逐文件冲突检查不代表整批回滚。共享房间／在线状态、分享链接、持久化评论线程及发送到 Google Drive／Slides 均不在范围内；PPTX/PDF 下载仍列于 P1。","端到端验证只覆盖 Web 标注流程，不含 Electron；公开测试使用模拟组件，也未与原版对照。","BaoCut Community License 1.0 是源码可见许可：允许个人／内部使用及内容创作，将代码商业化或进行商业托管需另行许可。PptxGenJS（MIT）与 mediabunny（MPL-2.0）保留各自条款；来源未确立 Claude 相关材料或随包图标字体的复用权，该字体计划替换。","请使用已获独立授权的幻灯片内容。"],"targets":["app","website"],"url":"https://github.com/JimLiu/baocut/tree/b8585e0c8d7a82bdee9f0ed019cf6edb075e41c1/packages/slides-runtime","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/590e65dd99596c7fb66598eaa5d6c051c2ec9a5f/evals/reference/WALKTHROUGH.md","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/590e65dd99596c7fb66598eaa5d6c051c2ec9a5f/evals/reference/TASK.md","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/590e65dd99596c7fb66598eaa5d6c051c2ec9a5f/evals/reference/target/pocket-tasks.mjs","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/590e65dd99596c7fb66598eaa5d6c051c2ec9a5f/evals/reference/walkthrough/rea-excerpt.json","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/590e65dd99596c7fb66598eaa5d6c051c2ec9a5f/evals/reference/walkthrough/runtime-observations.json","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/590e65dd99596c7fb66598eaa5d6c051c2ec9a5f/evals/reference/reconstruction/candidate.mjs","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/590e65dd99596c7fb66598eaa5d6c051c2ec9a5f/evals/reference/reconstruction/validate.mjs","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/590e65dd99596c7fb66598eaa5d6c051c2ec9a5f/evals/reference/reconstruction/validation-report.json","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/590e65dd99596c7fb66598eaa5d6c051c2ec9a5f/evals/reference/reconstruction/validation-history.json","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/590e65dd99596c7fb66598eaa5d6c051c2ec9a5f/evals/reference/check.mjs","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/590e65dd99596c7fb66598eaa5d6c051c2ec9a5f/evals/reference/reviewer/scenarios.mjs","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/590e65dd99596c7fb66598eaa5d6c051c2ec9a5f/tests/reference-reconstruction.test.mjs","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/590e65dd99596c7fb66598eaa5d6c051c2ec9a5f/LICENSE","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/ad6dccd7760fae50f5e45fe74f1f2ef92a452239/evals/reference/TASK.md"],"category":"community-case-studies","description_en":"A teaching case with disclosed prior source access carries a REA-assisted investigation of a small command-line app into a separate Node implementation. It preserves observed task editing, persistence and selection behavior, then compares scoped outputs against fixed expectations and captured reference sessions.","description_zh":"此教学案例明确披露作者先前接触过源码，将一次 REA 辅助的小型命令行应用调查推进为另行编写的 Node 实现。它保留所观察到的任务编辑、持久保存及选择行为，再将限定范围的输出与固定期望值及捕获的参考会话比较。","entry_url":"https://awesomerea.org/resources/pocket-tasks-reconstruction-case/","entry_url_zh":"https://awesomerea.org/zh/resources/pocket-tasks-reconstruction-case/","evidence_url":"https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/590e65dd99596c7fb66598eaa5d6c051c2ec9a5f/evals/reference/reconstruction/README.md","group":"rea","id":"pocket-tasks-reconstruction-case","json_url":"https://awesomerea.org/resources/pocket-tasks-reconstruction-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/pocket-tasks-reconstruction-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pocket-tasks-reconstruction-case/index.md","name":"Pocket Tasks: reconstructing task state and persistence","name_zh":"Pocket Tasks：重建任务状态与持久保存行为","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["scope","attribution","attribution","testing","testing","limits"],"requirements":["Pocket Tasks 1.0.0 is an authored local command-line app, not a commercial app or native-binary benchmark. The Node.js 20+ candidate implements nine commands and schema-1 JSON storage with only the standard library and disposable local stores; there is no GUI or network backend.","The REA excerpt identifies the target bytes but keeps semantic coverage unknown, with 230 semantic unknowns; it is not a canonical Evidence bundle, and the later Node validator does not repeat the REA session.","The author saw the target source, scenarios, tests and prior answers before implementing.","Reported 16/16 checker sessions (12 scenarios) and 10/10 replays (seven scenarios) overlap; expectations are hand-authored, and the report keeps humanReview=pending, reaTrial=unverified and independentEvaluation=false.","Six recorded hashes and the oracle digest match the reviewed source, but the TASK.md packet hash matches an earlier wording-only revision, so the packet is historical evidence. A restricted-Windows attempt (five passes, four failures) preceded nine passes with unchanged code.","Limits: 64 commands and 65,536 UTF-8 bytes per invocation, 32 tasks and 80 UTF-16 code units per title. Concurrent writers, crash durability, filesystem races, UI, hidden backends and production performance are outside the parity claim. MIT covers the authored example only."],"requirements_zh":["Pocket Tasks 1.0.0 是作者自编的本地命令行应用，不是商业应用或原生二进制评测基准。Node.js 20+ 候选实现支持九条命令与 schema-1 JSON 存储，只需标准库和一次性本地数据文件；没有图形界面或网络后端。","REA 摘录标识了相同目标字节，但语义覆盖仍属未知，保留 230 项语义未知；它不是规范 Evidence 包，后续 Node 验证器也不重跑该次 REA 会话。","实现前作者已看过目标源码、场景、测试及先前答案。","报告中 12 个场景的 16/16 次检查器会话与七个场景的 10/10 次回放互有重叠；期望值为人工编写，报告仍标注 humanReview=pending、reaTrial=unverified 和 independentEvaluation=false。","六项记录哈希与预期场景摘要和所审阅源码一致，但 TASK.md 证据包哈希对应仅措辞不同的较早版本，因此该证据包属历史证据。受限 Windows 环境下的首次尝试五项通过、四项失败，之后代码未变时九项通过。","限制：每次调用最多 64 条命令和 65,536 个 UTF-8 字节，最多 32 个任务，标题最多 80 个 UTF-16 码元。并发写入、崩溃持久性、文件系统竞态、界面、隐藏后端和生产性能不在一致性主张内。MIT 仅覆盖作者自编示例。"],"targets":["app"],"url":"https://github.com/ShadowSwaps/REA-Reconstruction-Companion/tree/main/evals/reference/reconstruction","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/glauberlima/open-scrantic/blob/2db75008931eb744f79d0c3fb12e0d89950466ff/docs/ENGINE.md","https://github.com/glauberlima/open-scrantic/blob/2db75008931eb744f79d0c3fb12e0d89950466ff/docs/ARCHITECTURE.md","https://github.com/glauberlima/open-scrantic/blob/2db75008931eb744f79d0c3fb12e0d89950466ff/Cargo.toml","https://github.com/glauberlima/open-scrantic/blob/2db75008931eb744f79d0c3fb12e0d89950466ff/rust-toolchain.toml","https://github.com/glauberlima/open-scrantic/blob/2db75008931eb744f79d0c3fb12e0d89950466ff/LICENSE","https://github.com/glauberlima/open-scrantic/blob/2db75008931eb744f79d0c3fb12e0d89950466ff/src/assets/exe.rs","https://github.com/glauberlima/open-scrantic/blob/2db75008931eb744f79d0c3fb12e0d89950466ff/src/assets/mod.rs","https://github.com/glauberlima/open-scrantic/blob/2db75008931eb744f79d0c3fb12e0d89950466ff/src/engine/mod.rs","https://github.com/glauberlima/open-scrantic/blob/2db75008931eb744f79d0c3fb12e0d89950466ff/src/engine/config.rs","https://github.com/glauberlima/open-scrantic/blob/2db75008931eb744f79d0c3fb12e0d89950466ff/src/engine/rng.rs","https://github.com/glauberlima/open-scrantic/blob/2db75008931eb744f79d0c3fb12e0d89950466ff/examples/snapshot.rs","https://github.com/glauberlima/open-scrantic/blob/2db75008931eb744f79d0c3fb12e0d89950466ff/.github/workflows/ci.yml","https://github.com/glauberlima/open-scrantic/blob/2db75008931eb744f79d0c3fb12e0d89950466ff/CHANGELOG.md"],"category":"community-case-studies","description_en":"Reconstructs the Johnny Castaway screensaver engine in Rust, with author-disclosed REA and Claude Code use. It reads original files to run recovered animation scripts and calendar-based story state on modern desktops; documented deviations and limited tests stop short of complete behavioral equivalence.","description_zh":"以 Rust 重建 Johnny Castaway 屏幕保护程序引擎，作者明确披露使用 REA 与 Claude Code。它读取原始文件，在现代桌面上运行恢复的动画脚本及按日历推进的故事状态；文档保留实现差异与有限测试范围，未确立完整行为等价。","entry_url":"https://awesomerea.org/resources/open-scrantic-screensaver-case/","entry_url_zh":"https://awesomerea.org/zh/resources/open-scrantic-screensaver-case/","evidence_url":"https://github.com/glauberlima/open-scrantic/blob/2db75008931eb744f79d0c3fb12e0d89950466ff/README.md","group":"rea","id":"open-scrantic-screensaver-case","json_url":"https://awesomerea.org/resources/open-scrantic-screensaver-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/open-scrantic-screensaver-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/open-scrantic-screensaver-case/index.md","name":"Open Scrantic: reconstructing the Johnny Castaway screensaver engine","name_zh":"Open Scrantic：重建 Johnny Castaway 屏幕保护程序引擎","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["scope","prerequisites","prerequisites","limits","testing","license"],"requirements":["Reviewed at v0.3.0: this is a Windows 3.1 screensaver-engine reconstruction, not a game port. The author reports recovering formats and TTM/ADS script semantics from disassembly, with human-directed REA/Claude Code work and comparisons against the original.","Builds pin Rust 1.99.1; Cargo declares minimum Rust 1.99 and edition 2024. The project targets Windows, macOS and Linux using winit, softbuffer and rodio. Linux builds also require ALSA development headers and pkg-config.","Runtime requires separately obtained SCRANTIC.SCR, RESOURCE.MAP and RESOURCE.001 beside the executable. README sizes and SHA-256 values identify the expected original files; the loader instead checks known executable strings/layout, not whole-file hashes. Arbitrary original builds are unsupported. Options and story state use SCRANTIC.INI, saved on normal exit.","Deliberate differences include full-frame redraw, potentially one-pixel line/ellipse differences, bounded final-scene selection and a fixed two-second title display. Optional dedithering and softened audio default off. The original settings dialog and password feature are absent, as are unused animated-palette, 256-color and ADS-variable features.","The headless test runs 6,000 steps and requires three completed scenes, without original-frame comparison. Data-dependent tests silently return when OPEN_SCRANTIC_DATA is unset; other tests cover parsing and arithmetic. CI checks formatting, lint, three-platform builds and --version, not cargo test or original-data playback. Snapshot output supports inspection, not an automated original-output oracle.","MIT covers project source, not original executable content, art, scripts or sounds, which users must supply with appropriate authorization. The author describes independent, non-commercial interoperability without Sierra/Dynamix endorsement."],"requirements_zh":["审阅版本为 v0.3.0：这是 Windows 3.1 屏幕保护程序引擎重建，并非游戏移植。作者报告通过反汇编恢复格式及 TTM/ADS 脚本语义，由人工指导 REA／Claude Code 工作并对照原版检查。","构建固定使用 Rust 1.99.1；Cargo 声明最低 Rust 1.99 和 edition 2024。项目借助 winit、softbuffer 和 rodio 面向 Windows、macOS 和 Linux。Linux 构建还需 ALSA 开发头文件及 pkg-config。","运行时需将另行取得的 SCRANTIC.SCR、RESOURCE.MAP 和 RESOURCE.001 放在可执行文件旁。README 中的大小和 SHA-256 标识预期的原始文件；加载器实际检查已知程序字符串／布局，而非整文件哈希。不支持任意原版构建。选项与故事状态存放在 SCRANTIC.INI 中，正常退出时保存。","刻意差异包括全帧重绘、线条／椭圆可能相差一个像素、结尾场景选择次数上限，以及固定两秒的标题显示。可选的去抖色和柔化音频默认关闭。未实现原设置对话框和密码功能，也未实现此屏保未使用的动态调色板、256 色及 ADS 变量功能。","无界面测试运行 6,000 步并要求完成三个场景，不与原版画面比较。未设置 OPEN_SCRANTIC_DATA 时，依赖数据的测试直接返回、不作检查；其他测试覆盖解析和运算。CI 检查格式、lint、三平台构建及 --version，不运行 cargo test 或原始数据播放。快照输出用于检查，不是自动对照原版的验证器。","MIT 覆盖项目源码，不覆盖原可执行文件内容、美术、脚本或声音；使用者须取得适当授权后自行提供这些内容。作者将其描述为独立、非商业的互操作项目，未获 Sierra／Dynamix 背书。"],"targets":["app"],"url":"https://github.com/glauberlima/open-scrantic","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/Zfinix/eleven/blob/94760718dfd741ba93fcc9b591eb39a96c034103/THIRD_PARTY_NOTICES.md","https://github.com/Zfinix/eleven/blob/94760718dfd741ba93fcc9b591eb39a96c034103/LICENSE","https://github.com/Zfinix/eleven/blob/94760718dfd741ba93fcc9b591eb39a96c034103/app/package.json","https://github.com/Zfinix/eleven/blob/94760718dfd741ba93fcc9b591eb39a96c034103/docs/mcp-tools.md","https://github.com/Zfinix/eleven/blob/94760718dfd741ba93fcc9b591eb39a96c034103/app/src/engine/rea.ts","https://github.com/Zfinix/eleven/blob/94760718dfd741ba93fcc9b591eb39a96c034103/app/src/bridge/reaProxy.ts","https://github.com/Zfinix/eleven/blob/94760718dfd741ba93fcc9b591eb39a96c034103/app/script/bundle-macos","https://github.com/Zfinix/eleven/blob/94760718dfd741ba93fcc9b591eb39a96c034103/app/script/test","https://github.com/Zfinix/eleven/blob/94760718dfd741ba93fcc9b591eb39a96c034103/.github/workflows/release.yml","https://github.com/Zfinix/eleven/blob/94760718dfd741ba93fcc9b591eb39a96c034103/.github/workflows/ci.yml"],"category":"community-integrations","description_en":"An agent-first desktop reverse-engineering app that opens Mach-O, ELF and PE binaries, Android packages and GPU kernels, and lets any Agent Client Protocol agent read code, rename functions, add notes and propose patches in a shared window. Native code is decompiled by Ghidra through a bundled REA build, with Rizin and jadx as alternative engines. It is a workbench around existing engines, not a new decompiler or a reconstruction case.","description_zh":"以智能体为核心的桌面逆向工程应用，可打开 Mach-O、ELF、PE 二进制、Android 安装包和 GPU 内核，让任何支持 Agent Client Protocol 的智能体在同一窗口中阅读代码、重命名函数、添加笔记并提出补丁。原生代码通过内置的 REA 构建交由 Ghidra 反编译，也可改用 Rizin 和 jadx。它是围绕现有引擎的工作台，并非新的反编译器或重建案例。","entry_url":"https://awesomerea.org/resources/eleven-agent-re-workbench/","entry_url_zh":"https://awesomerea.org/zh/resources/eleven-agent-re-workbench/","evidence_url":"https://github.com/Zfinix/eleven/blob/94760718dfd741ba93fcc9b591eb39a96c034103/README.md","group":"rea","id":"eleven-agent-re-workbench","json_url":"https://awesomerea.org/resources/eleven-agent-re-workbench/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/eleven-agent-re-workbench/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/eleven-agent-re-workbench/index.md","name":"Eleven","name_zh":"Eleven","record_type":"resource","relationship":"community-integration","requirements":["Reviewed version 0.1.9 (release dated 2026-10-16) targets macOS 14+ on Apple Silicon, Windows x64 and Linux x64. The documented macOS and Windows installers pipe a remote script into the shell; macOS builds are not notarized, so the installer clears the download quarantine. Users supply the apps, binaries or APKs they analyze.","Native analysis uses Ghidra 12.x with Java 21 through REA, or Rizin for faster opening; first-run setup downloads missing engines or reuses local copies, and Ghidra is not bundled. Android packages need jadx, with apktool optional for smali. Building from source needs Bun, Node 20+, Ghidra, a JDK and a REA 6.x checkout; the release workflow builds REA from the Zfinix/rea fork’s feat/set-code-type branch rather than an upstream release.","Agents connect over the Agent Client Protocol, including the README’s Claude, Codex, Gemini, Cursor and Copilot options; model access, cost and data handling follow the chosen agent. Agents receive Eleven’s own MCP server and an eleven-rea proxy that passes REA tools through but redirects REA’s name, comment, bookmark and code-type writes into Eleven’s project. Per-tool Allow/Ask/Never permissions and privacy prompts are settings.","Byte patches are written to a copy, agent patches arrive as suggestions, and project changes are logged with their author and can be undone. CI at the reviewed commit runs typechecks on Ubuntu and macOS; the Ghidra-backed test suite is a separate local script.","Eleven is Apache-2.0; the bundled REA and Node.js keep their MIT and other licenses, and agent logos remain their owners’ trademarks. The tool grants no rights to analyze, patch or redistribute third-party software, and its outputs are agent-assisted analysis."],"requirements_zh":["审阅版本为 0.1.9（发布日期 2026-10-16），面向 Apple Silicon 上的 macOS 14+、Windows x64 和 Linux x64。文档中的 macOS 与 Windows 安装方式会把远程脚本直接交给命令行执行；macOS 构建未经公证，因此安装脚本会清除下载隔离标记。待分析的应用、二进制或 APK 需由使用者自行提供。","原生分析通过 REA 调用 Ghidra 12.x 与 Java 21，或改用打开更快的 Rizin；首次运行会下载缺失的引擎或复用本机已有副本，Ghidra 本身不随应用捆绑。分析 Android 安装包需要 jadx，apktool 为可选，用于生成 smali。从源码构建需要 Bun、Node 20+、Ghidra、JDK 和 REA 6.x 检出；发布工作流使用 Zfinix/rea 分叉的 feat/set-code-type 分支构建 REA，而非上游正式版本。","智能体通过 Agent Client Protocol 接入，README 列出 Claude、Codex、Gemini、Cursor、Copilot 等选项；模型访问、费用和数据处理取决于所选智能体。智能体可获得 Eleven 自身的 MCP 服务，以及 eleven-rea 代理：该代理转发 REA 工具，但把 REA 的命名、注释、书签和代码类型写入改由 Eleven 项目处理。按工具设置的允许／询问／禁止权限和隐私提示只是配置项。","字节补丁写入副本，智能体补丁以建议形式出现，项目修改会记录作者并可撤销。所审阅提交的 CI 在 Ubuntu 和 macOS 上运行类型检查；依赖 Ghidra 的测试套件是单独的本地脚本。","Eleven 采用 Apache-2.0；内置的 REA 和 Node.js 保留各自的 MIT 及其他许可，智能体标志仍归各自所有者。该工具不授予分析、修补或再分发第三方软件的权利，其输出属于智能体辅助分析。"],"targets":["app","binary"],"url":"https://github.com/Zfinix/eleven","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/morluto/rea/blob/c12d9eda87aa5a022ee7e18ea96d8d03bfd12e96/scripts/verify-flutter.mjs","https://github.com/morluto/rea/blob/c12d9eda87aa5a022ee7e18ea96d8d03bfd12e96/scripts/fixtures/flutter-gallery-expectations.json","https://github.com/morluto/rea/blob/c12d9eda87aa5a022ee7e18ea96d8d03bfd12e96/README.md","https://github.com/morluto/rea/blob/c12d9eda87aa5a022ee7e18ea96d8d03bfd12e96/package.json","https://github.com/morluto/rea/blob/c12d9eda87aa5a022ee7e18ea96d8d03bfd12e96/LICENSE","https://github.com/morluto/rea/pull/1582"],"category":"workflow-guides","description_en":"Identifies a Flutter APK’s Dart snapshot hash, per-ABI library digests and engine build provenance, then inspects one ABI’s AOT snapshot sections, through REA’s pure-parsing CLI and MCP tools. The string-pool output is a bounded byte-pattern projection of package and SDK URIs, not deserialized Dart classes or recovered source.","description_zh":"通过 REA 的纯解析命令行与 MCP 工具，识别 Flutter APK 的 Dart 快照哈希、各 ABI 库摘要与引擎构建来源，再检查单个 ABI 的 AOT 快照段。字符串池输出是对 package 与 SDK URI 的有界字节模式投影，并非反序列化的 Dart 类或恢复的源码。","entry_url":"https://awesomerea.org/resources/rea-flutter-guide/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-flutter-guide/","evidence_url":"https://github.com/morluto/rea/blob/c12d9eda87aa5a022ee7e18ea96d8d03bfd12e96/docs/flutter-analysis.md","group":"rea","id":"rea-flutter-guide","json_url":"https://awesomerea.org/resources/rea-flutter-guide/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/rea-flutter-guide/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-flutter-guide/index.md","name":"Flutter build identification","name_zh":"Flutter 构建识别","record_type":"resource","relationship":"official-documentation","requirements":["Reviewed on main as rea-agents 6.7.0, which declares Node ^22.19.0, ^24.11.0 or 26+. identify-flutter-build and inspect-dart-aot (MCP identify_flutter_build and inspect_dart_aot) parse a caller-supplied APK’s libapp.so and libflutter.so without an engine, external tool, execution or network lookup. Inputs are copied into an owned read-only snapshot, with documented bounds such as 2 GiB per APK and 256 MiB per library.","REA performs no hash-to-SDK lookup; mapping a snapshot hash to a Dart release needs an external dataset such as reFlutter’s. Complete structural coverage currently requires the FullAOT kind of the supported Dart 2.14 snapshot layout, and other kinds are kept with partial coverage. Typed class and function recovery needs an SDK-specific parser, and class-like tokens include incidental matches.","The documented verifier runs both tools through the compiled CLI and stdio MCP on the Flutter Gallery 2.9.2 release APK against a pinned expectations file: one agreeing snapshot hash on all three ABIs, engine labels and URI counts. A plain aapt2-built APK checks negative detection. The guide reports the Gallery workflow and 147 focused tests passing on macOS 14.8.9 x86-64 and Windows 11 x64 guests.","In merged PR #1582, an independent reviewer reports that hashes, ELF sections and package lists matched readelf/strings checks on three F-Droid apps, PocketDhamma, Flutter McSweepy and cone, on pre-merge heads, with a non-Flutter control not detected; the thread records fixes for gaps found. These checks cover build identity and structure. REA declares MIT; analysed APKs keep their own licenses."],"requirements_zh":["审阅时 main 上为 rea-agents 6.7.0，声明支持 Node ^22.19.0、^24.11.0 或 26 及以上。identify-flutter-build 与 inspect-dart-aot（对应 MCP 的 identify_flutter_build 与 inspect_dart_aot）解析使用者提供的 APK 中的 libapp.so 和 libflutter.so，无需引擎、外部工具、执行或联网查询。输入先复制为分析器独占的只读快照，并有文档列明的上限，例如每个 APK 2 GiB、每个库 256 MiB。","REA 不做哈希到 SDK 的查询；把快照哈希对应到 Dart 版本需借助外部数据集，例如 reFlutter 维护的数据。目前只有所支持的 Dart 2.14 快照布局中的 FullAOT 类型能得到完整结构覆盖，其他类型会保留为部分覆盖。恢复带类型的类与函数需要针对特定 SDK 的解析器，类名样式的标记也包含偶然匹配。","文档中的验证脚本经编译后的命令行与 stdio MCP 运行两个工具，以 Flutter Gallery 2.9.2 发布版 APK 对照固定的期望文件：三个 ABI 上快照哈希一致，并核对引擎标签与 URI 数量；另用普通 aapt2 构建的 APK 检查不误报。指南报告 Gallery 流程与 147 项 Flutter 专项测试在 macOS 14.8.9 x86-64 与 Windows 11 x64 虚拟机中通过。","在已合并的 PR #1582 中，一位独立审阅者报告：在合并前的分支版本上，三个 F-Droid 应用 PocketDhamma、Flutter McSweepy 与 cone 的哈希、ELF 段和 package 列表与 readelf／strings 检查一致，非 Flutter 对照应用未被识别为 Flutter；讨论串记录了对所发现问题的修复。这些检查针对构建身份与结构。REA 声明 MIT，所分析的 APK 保留各自许可。"],"targets":["app"],"url":"https://github.com/morluto/rea/blob/main/docs/flutter-analysis.md","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/morluto/rea/blob/093ce695f0a7c3407c7fde520ed8b20c0981b408/package.json","https://github.com/morluto/rea/blob/093ce695f0a7c3407c7fde520ed8b20c0981b408/LICENSE","https://github.com/morluto/rea/pull/1447"],"category":"workflow-guides","description_en":"Inventories HarmonyOS HAP, HSP and App Pack files through REA’s hardened ZIP reader and projects an execution-free application graph: component paths, IDs and hashes, Stage/FA packaging hints, runtime-family hints and path-based native-bridge hypotheses. Every claim rests on path presence; manifests, Ark bytecode, resources and signatures are not decoded or verified.","description_zh":"通过 REA 加固的 ZIP 读取器清点 HarmonyOS 的 HAP、HSP 与 App Pack 文件，并投影出无需执行的应用图：组件路径、ID 与哈希、Stage／FA 打包模型提示、运行时类别提示，以及基于路径的原生桥接假设。所有结论仅基于路径存在；清单、Ark 字节码、资源和签名均未被解码或验证。","entry_url":"https://awesomerea.org/resources/rea-harmony-guide/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-harmony-guide/","evidence_url":"https://github.com/morluto/rea/blob/093ce695f0a7c3407c7fde520ed8b20c0981b408/docs/harmony-analysis.md","group":"rea","id":"rea-harmony-guide","json_url":"https://awesomerea.org/resources/rea-harmony-guide/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/rea-harmony-guide/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-harmony-guide/index.md","name":"Static HarmonyOS package inventory","name_zh":"HarmonyOS 应用包静态清点","record_type":"resource","relationship":"official-documentation","requirements":["Reviewed on main as rea-agents 6.7.0, which declares Node ^22.19.0, ^24.11.0 or 26+. No HarmonyOS SDK, toolchain or engine is needed: inspect-artifact produces the inventory and project-harmony-application-graph (MCP project_harmony_application_graph) projects it, with CLI and MCP sharing one workflow. .hap, .hsp and ZIP-verified root .app inputs are recognized; .har shared libraries are deferred because the suffix also names HTTP Archive JSON.","Outputs are path-presence claims: Stage is inferred only from module.json and FA only from config.json, App Pack children are listed without recursive inventory, encrypted or unavailable entries make coverage partial, and N-API bridge entries are hypotheses. Manifest semantics, Ark bytecode contents and versions, resource resolution, signing verification and observed native boundaries stay listed as limitations, and inventories that cannot be authenticated fail closed.","The verification lane downloads a SHA-256-pinned harmony-next-pipeline 1.0.1 HAP from an MIT-licensed source repository into an ignored directory and checks inventory authenticity, projection determinism, Stage path hints, exact component sets, complete coverage and CLI/MCP parity. The fixture’s compiler/SDK versions and reproducible build are not established, and the lane does not complete the pinned-toolchain acceptance in roadmap issue #1431.","REA declares MIT. Analysed packages keep their own licenses, and the guide says the fixture’s bundled component licenses were not independently audited; the downloaded artifact is not redistributed. Merged PR #1447 introduced this increment."],"requirements_zh":["审阅时 main 上为 rea-agents 6.7.0，声明支持 Node ^22.19.0、^24.11.0 或 26 及以上。无需 HarmonyOS SDK、工具链或引擎：inspect-artifact 生成清单，project-harmony-application-graph（对应 MCP 的 project_harmony_application_graph）对其投影，命令行与 MCP 共用同一工作流。可识别 .hap、.hsp 及经 ZIP 校验的根级 .app 输入；由于后缀 .har 也用于 HTTP Archive JSON，HarmonyOS 共享库 .har 暂不支持。","输出均为基于路径存在的结论：仅凭 module.json 判断 Stage 模型、仅凭 config.json 判断 FA 模型；App Pack 的子包只列出路径而不递归清点；加密或不可用的条目会使覆盖率标为部分；N-API 桥接条目仅为假设。清单语义、Ark 字节码内容与版本、资源解析、签名验证以及实际观察到的原生边界均列为局限；无法验证真实性的清单会直接失败。","验证流程将一个以 SHA-256 固定的 harmony-next-pipeline 1.0.1 HAP（源码仓库采用 MIT 许可）下载到被忽略的目录，检查清单真实性、投影确定性、Stage 路径提示、精确组件集合、完整覆盖以及命令行与 MCP 的一致性。该测试包的编译器／SDK 版本与可复现构建尚未确立，此流程也未完成路线图 issue #1431 中固定工具链的验收。","REA 声明 MIT。被分析的应用包保留各自许可；指南说明测试包内捆绑组件的许可未经独立审核，下载的产物也不会再分发。已合并的 PR #1447 引入了这一增量。"],"targets":["app"],"url":"https://github.com/morluto/rea/blob/main/docs/harmony-analysis.md","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/morluto/rea/issues/1620","https://github.com/morluto/rea/pull/1898","https://github.com/morluto/rea/blob/c12d9eda87aa5a022ee7e18ea96d8d03bfd12e96/scripts/verify-real-ghidra-mips.mjs","https://github.com/morluto/rea/blob/c12d9eda87aa5a022ee7e18ea96d8d03bfd12e96/tests/conformance/ghidra/mips-fixture.mjs","https://github.com/morluto/rea/blob/c12d9eda87aa5a022ee7e18ea96d8d03bfd12e96/src/ghidra/GhidraMipsProfile.ts","https://github.com/morluto/rea/blob/c12d9eda87aa5a022ee7e18ea96d8d03bfd12e96/LICENSE"],"category":"workflow-guides","description_en":"Documents REA’s Ghidra lane for MIPS ELF executables, relocatable objects and MIPS16 shared images, including a pinned 32-bit language for recordless legacy firmware executables that Ghidra would otherwise import as 64-bit. Admission is bounded by declared header and ABI-record facts, and verification compares source-owned fixtures with independent readelf output rather than executing or rehosting firmware.","description_zh":"说明 REA 通过 Ghidra 分析 MIPS ELF 可执行文件、可重定位目标文件与 MIPS16 共享镜像的流程，包括为缺少 ABI 记录的旧式固件可执行文件固定 32 位语言，以免 Ghidra 将其按 64 位导入。准入以文件头声明和 ABI 记录为界；验证将项目自有的测试样本与独立的 readelf 输出对照，而不执行或重新托管固件。","entry_url":"https://awesomerea.org/resources/rea-ghidra-mips-guide/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-ghidra-mips-guide/","evidence_url":"https://github.com/morluto/rea/blob/c12d9eda87aa5a022ee7e18ea96d8d03bfd12e96/docs/ghidra-mips.md","group":"rea","id":"rea-ghidra-mips-guide","json_url":"https://awesomerea.org/resources/rea-ghidra-mips-guide/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/rea-ghidra-mips-guide/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-ghidra-mips-guide/index.md","name":"MIPS ELF analysis through Ghidra","name_zh":"通过 Ghidra 分析 MIPS ELF","record_type":"resource","relationship":"official-documentation","requirements":["Needs a caller-installed Ghidra and compatible JDK on a supported Linux or macOS host; Windows Ghidra P0 does not admit MIPS, and Hopper/IDA gain no MIPS support. The lane does not execute MIPS code or rehost firmware. The standard profile admits ELF32 executables and relocatable objects declaring o32 and MIPS32r2; MIPS16 shared images have a separate bounded profile. ELF64, n32/n64, microMIPS, machine variants, FP64, NAN2008 and PSP PRX are refused.","Merged PR #1898, for issue #1620, admits recordless legacy ELF32 executables with EF_MIPS_ARCH_32 or 32R2, an unspecified ABI field and an inspected absence of ABI-flags records. It pins MIPS:<LE|BE>:32:default and checks the language Ghidra reports after import. o32 is recorded as an analysis assumption, not a declared fact, and floating-point ABI semantics stay unverified.","Optional real-provider lanes need caller-supplied Clang with MIPS targets, LLD, GNU readelf or MIPS cross-binutils, and Ghidra. They build source-owned fixtures in both byte orders without executing them, comparing instruction bytes, symbols, languages and relocations with independent readelf facts. The guide states that pseudocode presence and decoding agreement do not establish runtime, delay-slot or complete floating-point semantics.","The issue author reports gating a local patch on four real MIPS32 LE firmware ELFs whose function entries matched separate 32-bit Ghidra exports, and 400 of 5,250 functions lost on one image under auto-selection; those files are not public. A PR reviewer tested header-edited OpenWrt kernels and BusyBox builds with Capstone cross-checks and found no unedited public recordless file.","REA declares MIT. Ghidra, compilers, binutils and analysed firmware keep their own terms, and the firmware behind the author’s results is not supplied."],"requirements_zh":["需要使用者自行安装 Ghidra 及兼容的 JDK，并在受支持的 Linux 或 macOS 宿主上运行；Windows 版 Ghidra P0 不接受 MIPS 目标，Hopper／IDA 也不因此获得 MIPS 支持。该流程不执行 MIPS 代码，也不重新托管固件。标准配置接受声明 o32 与 MIPS32r2 的 ELF32 可执行文件和可重定位目标文件；MIPS16 共享镜像另有受限配置。ELF64、n32／n64、microMIPS、特定机型变体、FP64、NAN2008 与 PSP PRX 均被拒绝。","已合并的 PR #1898（对应议题 #1620）接受缺少 ABI 记录的旧式 ELF32 可执行文件：文件头为 EF_MIPS_ARCH_32 或 32R2、ABI 字段未指定，且经检查确无 ABI 标志记录。它固定 MIPS:<LE|BE>:32:default，并在导入后核对 Ghidra 报告的语言。o32 被记为分析假设而非声明事实，浮点 ABI 语义仍未验证。","可选的真实分析引擎验证流程需自行提供支持 MIPS 目标的 Clang、LLD、GNU readelf 或 MIPS 交叉 binutils，以及 Ghidra。流程以两种字节序构建项目自有的测试样本但不执行，并将指令字节、符号、语言与重定位结果同独立的 readelf 信息对照。指南说明，能生成伪代码或解码结果一致，并不证明运行时、延迟槽或完整浮点语义。","议题作者报告曾在四个真实 MIPS32 小端固件 ELF 上检验本地补丁，其函数入口与另行生成的 32 位 Ghidra 导出一致，并报告其中一个镜像在自动选择语言时丢失 5,250 个函数中的 400 个；这些文件未公开。一位 PR 审阅者测试了改写文件头的 OpenWrt 内核与 BusyBox 构建，用 Capstone 交叉核对，且未找到未经改写的公开无记录文件。","REA 声明 MIT。Ghidra、编译器、binutils 与所分析的固件仍有各自条款，作者结果所用的固件也未提供。"],"targets":["binary","firmware"],"url":"https://github.com/morluto/rea/blob/main/docs/ghidra-mips.md","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/morluto/rea/issues/1330","https://github.com/morluto/rea/pull/1599","https://github.com/morluto/rea/blob/c12d9eda87aa5a022ee7e18ea96d8d03bfd12e96/scripts/verify-real-ghidra-mips.mjs","https://github.com/morluto/rea/blob/c12d9eda87aa5a022ee7e18ea96d8d03bfd12e96/src/ghidra/GhidraPspProfile.ts","https://github.com/morluto/rea/blob/c12d9eda87aa5a022ee7e18ea96d8d03bfd12e96/src/ghidra/GhidraPspExtension.ts","https://github.com/morluto/rea/tree/c12d9eda87aa5a022ee7e18ea96d8d03bfd12e96/tests/conformance/psp","https://github.com/morluto/rea/blob/c12d9eda87aa5a022ee7e18ea96d8d03bfd12e96/LICENSE"],"category":"workflow-guides","description_en":"Documents REA’s bounded Ghidra profile for static PSP ELF executables, which leaves Allegrex instructions, PSP loading and calling conventions to a caller-installed ghidra-allegrex extension while reusing REA’s CLI, MCP, Evidence and snapshot workflows. It admits one PSPSDK header and ABI declaration on Linux x64 and verifies selected static facts on a self-built fixture, not commercial games or PRX modules.","description_zh":"说明 REA 针对静态 PSP ELF 可执行文件的受限 Ghidra 配置：Allegrex 指令、PSP 加载与调用约定交由使用者安装的 ghidra-allegrex 扩展处理，同时沿用 REA 的命令行、MCP、证据与快照流程。它仅在 Linux x64 上接受一种 PSPSDK 文件头与 ABI 声明，并在自行构建的测试样本上验证选定的静态事实，不涉及商业游戏或 PRX 模块。","entry_url":"https://awesomerea.org/resources/rea-ghidra-psp-guide/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-ghidra-psp-guide/","evidence_url":"https://github.com/morluto/rea/blob/c12d9eda87aa5a022ee7e18ea96d8d03bfd12e96/docs/ghidra-psp.md","group":"rea","id":"rea-ghidra-psp-guide","json_url":"https://awesomerea.org/resources/rea-ghidra-psp-guide/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/rea-ghidra-psp-guide/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-ghidra-psp-guide/index.md","name":"PSP static ELF analysis through Ghidra","name_zh":"通过 Ghidra 静态分析 PSP ELF","record_type":"resource","relationship":"official-documentation","requirements":["The initial profile runs on a Linux x64 host and admits little-endian ELF32 executables with the PSPSDK declaration e_flags 0x10a23001 and an inspected version-0 ABI-flags record matching the documented single-float Allegrex declarations. PRX, relocatable or shared images, PBP/ISO/CSO containers, emulation and live overlays are out of scope; missing or different declarations are refused, and file names do not identify a target.","Install a compatible ghidra-allegrex extension inside the selected Ghidra distribution; REA never downloads, installs, rebuilds or vendors it, and fingerprints its files before launch. The published compatibility pairing is Ghidra 12.1.3, extension v21.4, PSPDEV v20261001 and JDK 21. Missing prerequisites return PSP_EXTENSION_UNAVAILABLE without fallback.","Verification uses the real MIPS verifier’s PSP mode with caller-supplied PSPDEV tools. A maintained fixture built from tests/conformance/psp is analysed without execution and checked against PSP GNU tool observations: known functions, a direct call, an immediate, BITREV, a global word, snapshot reopening and an A-B-A target switch. Merged PR #1599 reports a passing real-Ghidra run on an earlier contribution head and says the final head was not freshly revalidated by that run.","These are selected static facts; the extension does not fully model VFPU prefix effects. No commercial game data is used or reconstructed, and issue #1330 remains open. REA declares MIT; ghidra-allegrex, Ghidra, PSPDEV and analysed executables keep their own terms."],"requirements_zh":["初始配置只在 Linux x64 宿主上运行，接受小端 ELF32 可执行文件，要求文件头为 PSPSDK 声明 e_flags 0x10a23001，并有经检查的版本 0 ABI 标志记录，与文档列明的单精度浮点 Allegrex 声明一致。PRX、可重定位或共享镜像、PBP／ISO／CSO 容器、模拟执行与实时代码覆盖均不在范围内；缺失或不同的声明会被拒绝，文件名也不能用来识别目标。","需在所选 Ghidra 发行版内安装兼容的 ghidra-allegrex 扩展；REA 从不下载、安装、重新构建或内置该扩展，并在启动前为其文件计算指纹。公开的兼容组合为 Ghidra 12.1.3、扩展 v21.4、PSPDEV v20261001 与 JDK 21。缺少前置条件时返回 PSP_EXTENSION_UNAVAILABLE，不会回退到其他分析引擎。","验证使用真实 MIPS 验证脚本的 PSP 模式，需自行提供 PSPDEV 工具。由 tests/conformance/psp 构建的维护样本只做静态分析、不执行，并与 PSP GNU 工具的观察结果对照：已知函数、一次直接调用、一个立即数、BITREV、一个全局字、快照重新打开，以及 A-B-A 目标切换。已合并的 PR #1599 报告在较早的贡献分支版本上通过了真实 Ghidra 验证，并说明该次运行并未重新验证最终版本。","这些检查只是选定的静态事实；该扩展也未完整模拟 VFPU 前缀效果。未使用或重建任何商业游戏数据，议题 #1330 仍处于开放状态。REA 声明 MIT；ghidra-allegrex、Ghidra、PSPDEV 与所分析的可执行文件仍有各自条款。"],"targets":["binary","game"],"url":"https://github.com/morluto/rea/blob/main/docs/ghidra-psp.md","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/morluto/rea/blob/c12d9eda87aa5a022ee7e18ea96d8d03bfd12e96/website/public/blog/touhou-reconstruction/index.html","https://github.com/morluto/rea/pull/1475","https://github.com/N0zoM1z0/th08/issues/10","https://github.com/N0zoM1z0/th08/pull/11","https://github.com/N0zoM1z0/th08/pull/13"],"category":"official-case-studies","description_en":"An essay published on REA’s site, with pinned evidence notes, describes one author’s agent-driven reconstructions of TH08, TH095 and TH04. It dates milestones from public commits and progress ledgers, separates exact-comparison and playable-build oracles, and documents a TH08 check that missed wrong floating-literal data. Project results remain author-reported, and REA is credited with supplying analysis evidence, not the reconstructions themselves.","description_zh":"REA 网站发表的一篇文章及其固定版本的证据说明，介绍一位作者以智能体驱动重建 TH08、TH095 与 TH04 的过程。文章依据公开提交与进度记录标注里程碑，区分精确比对与可游玩构建两类判定依据，并记录 TH08 一项检查漏查错误浮点字面量数据的问题。项目结果仍为作者报告；REA 的作用是为智能体提供分析证据，而非完成重建本身。","entry_url":"https://awesomerea.org/resources/rea-touhou-reconstruction-method-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-touhou-reconstruction-method-case/","evidence_url":"https://github.com/morluto/rea/blob/c12d9eda87aa5a022ee7e18ea96d8d03bfd12e96/website/evidence/touhou-reconstruction-method.md","group":"rea","id":"rea-touhou-reconstruction-method-case","json_url":"https://awesomerea.org/resources/rea-touhou-reconstruction-method-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rea-touhou-reconstruction-method-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-touhou-reconstruction-method-case/index.md","name":"Touhou reconstructions: an agent-driven method across three games","name_zh":"东方 Project 重建：贯穿三款游戏的智能体驱动方法","reconstruction_method":"other","record_type":"resource","relationship":"official-case-study","requirement_facets":["scope","testing","testing","prerequisites","attribution"],"requirements":["The evidence notes, checked on 10 October 2026, treat three separate projects: a continuation of GensokyoClub’s TH08 1.00d reconstruction, a TH095 1.02a reconstruction started from zero confirmed functions, and a PC-98 TH04 reconstruction crediting ReC98. Milestone intervals use public commit timestamps and measure recorded spacing.","Pinned ledgers report 1,106 of 1,107 TH08 functions accepted, 696 exact TH095 functions out of 697 confirmed, and 661 exact TH04 functions out of 663 reviewed candidates, each under its own definitions; the notes warn against cross-game rates or whole-executable completion percentages. TH08 Linux and Web ports, a playable TH095 Windows i386 build and four TH04 DOS products are recorded milestones. TH04 play results rest on the maintainer’s manual observations, and its 64-bit port is in development.","In TH08, an instruction-byte comparison accepted source using 0.0 where the original executable used 128.0, because it did not check the referenced literal data. TH08 PRs #11 and #13 added literal-data checks and corrected twelve more stale references among 1,548 audited.","The essay and notes supply no game files, compilers or builds; each project’s repository documents its own original-game and toolchain requirements, and game rights stay with their owners. GensokyoClub’s TH08 history keeps its attribution and license.","REA is described as supplying analysis evidence to agents; the projects also used their own analysis bridges and tooling. The author presents the method and its industrial analogy as an account and argument."],"requirements_zh":["证据说明于 2026 年 10 月 10 日核查，涉及三个独立项目：延续 GensokyoClub 的 TH08 1.00d 重建、从零个已确认函数起步的 TH095 1.02a 重建，以及注明借鉴 ReC98 的 PC-98 版 TH04 重建。里程碑间隔依据公开提交的时间戳计算，衡量的是记录上的时间间隔。","固定版本的进度记录报告：TH08 的 1,107 个函数中 1,106 个通过验收，TH095 的 697 个已确认函数中 696 个精确一致，TH04 的 663 个已审阅候选中 661 个精确一致，各自采用不同定义；说明明确提醒不要据此计算跨游戏比率或整个可执行文件的完成百分比。TH08 的 Linux 与 Web 移植、可游玩的 TH095 Windows i386 构建，以及 TH04 的四个 DOS 产物均为记录在案的里程碑。TH04 的游玩结果依据维护者的手动观察，其 64 位移植仍在开发中。","在 TH08 中，一项指令字节比对因未检查所引用的字面量数据，接受了用 0.0 代替原可执行文件中 128.0 的源码。TH08 的 PR #11 与 #13 加入字面量数据检查，并在审计的 1,548 处引用中另外修正了十二处过时引用。","文章与说明不提供游戏文件、编译器或构建产物；各项目仓库自行说明对原游戏与工具链的要求，游戏权利仍归原权利人。GensokyoClub 的 TH08 历史保留其署名与许可。","文章说明 REA 为智能体提供分析证据；各项目也使用了自己的分析桥接与工具。作者将该方法及其工业化类比作为经验陈述和观点提出。"],"targets":["binary","game"],"url":"https://rea.tools/blog/touhou-reconstruction/","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/heaven-hm/re-agent/blob/a84c61e8baa65d445485722420a57ff4132b90d3/benchmarks/README.md","https://github.com/heaven-hm/re-agent/blob/a84c61e8baa65d445485722420a57ff4132b90d3/docs/verification/rea-engine/game-report-current-2026-10-14.json","https://github.com/heaven-hm/re-agent/blob/a84c61e8baa65d445485722420a57ff4132b90d3/scripts/recover-tictactoe-replica.mjs","https://github.com/heaven-hm/re-agent/blob/a84c61e8baa65d445485722420a57ff4132b90d3/scripts/verify-tictactoe-reconstruction.mjs","https://github.com/heaven-hm/re-agent/blob/a84c61e8baa65d445485722420a57ff4132b90d3/scripts/benchmarks/TicTacToeProbe.cs","https://github.com/heaven-hm/re-agent/blob/a84c61e8baa65d445485722420a57ff4132b90d3/benchmarks/tictactoe/LICENSE","https://github.com/heaven-hm/re-agent/blob/a84c61e8baa65d445485722420a57ff4132b90d3/README.md","https://github.com/heaven-hm/re-agent/blob/a84c61e8baa65d445485722420a57ff4132b90d3/THIRD_PARTY_NOTICES.md","https://github.com/heaven-hm/re-agent/blob/a84c61e8baa65d445485722420a57ff4132b90d3/LICENSE","https://github.com/heaven-hm/re-agent/blob/a84c61e8baa65d445485722420a57ff4132b90d3/package.json","https://github.com/tatlead/TicTacToe-AI/tree/ce0f81b05e190dcfb72ea68c5fbb1114fa994a5a"],"category":"community-case-studies","description_en":"The author’s REA fork, posted as rea-engine and since renamed RE-Agent, decompiles the shipped .NET executable of the GPL-licensed TicTacToe-AI game, recompiles the recovered C# and resources, and repairs one decompiler error against the original IL. A differential probe runs original and rebuilt code on all 19,683 board assignments for one status method and compares six form renders. The report passes only that method; the whole game remains partial.","description_zh":"作者的 REA 分叉（发帖时名为 rea-engine，后更名为 RE-Agent）反编译 GPL 许可的 TicTacToe-AI 游戏所发布的 .NET 可执行文件，重新编译恢复出的 C# 与资源，并依据原始 IL 修复一处反编译错误。差分探针在一个状态判定方法的全部 19,683 种棋盘赋值上运行原版与重建代码，并比较六张窗体渲染图。报告只判定该方法通过，整个游戏仍属部分重建。","entry_url":"https://awesomerea.org/resources/rea-engine-tictactoe-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-engine-tictactoe-case/","evidence_url":"https://github.com/heaven-hm/re-agent/blob/a84c61e8baa65d445485722420a57ff4132b90d3/benchmarks/native-windows-ports/reports/targets/tictactoe.md","group":"rea","id":"rea-engine-tictactoe-case","json_url":"https://awesomerea.org/resources/rea-engine-tictactoe-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rea-engine-tictactoe-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-engine-tictactoe-case/index.md","name":"TicTacToe-AI: a bounded REA-fork reconstruction of one game method","name_zh":"TicTacToe-AI：REA 分叉对单个游戏方法的有限重建","reconstruction_method":"decompilation","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["testing","scope","prerequisites","testing","license"],"requirements":["The reviewed develop commit (2026-10-15) reports Feature PASS for CheckGameStatus over its declared 3^9 board domain and PARTIAL for the whole game. AI move selection and RNG, menus, timing and sound are unverified, the executables are not byte-identical, and raw terminal captures differ by one carriage return. The posts’ “byte for byte” wording applies to structured board records and six render PNGs.","The input is the published TicTacToe-AI executable from tatlead’s GPL-3.0 repository, identified by SHA-256 in the report. The repository redistributes it with the GPL text and a source archive kept for license compliance; the statement that this source was not consulted during reconstruction is author-reported.","The fork needs Node.js 22.19+ or 24.11+; recovery uses ilspycmd plus a host Roslyn compiler and Mono references, with script defaults pointing at Homebrew paths on macOS. Verification needs a local X11 display and Mono/libgdiplus. The recorded run used macOS 15.3.1 on ARM64 with Xvfb, so both renders come from the same Mono runtime rather than native Windows.","Scripts recover a fresh replica, then a probe executes the original and rebuilt assemblies, compares return values and indicator bytes for every board, and captures Form.DrawToBitmap images after button sequences. The current result JSON records zero board-record mismatches and terminalBytesEqual false.","The fork is MIT with morluto’s REA copyright retained and lists optional engines such as Ghidra and Frida under their own licenses; the game and its reconstruction carry GPL-3.0 obligations. Fork-specific code is not part of upstream REA releases, and the repository was renamed after the posts, whose rea-engine link now redirects to RE-Agent."],"requirements_zh":["所审阅的 develop 提交（2026-10-15）报告 CheckGameStatus 在其声明的 3^9 棋盘输入域上功能通过（Feature PASS），整个游戏为部分重建（PARTIAL）。AI 落子与随机数、菜单、计时和声音均未验证，可执行文件并非逐字节相同，原始终端捕获也相差一个回车符。帖子中“逐字节一致”的说法仅适用于结构化棋盘记录和六张渲染 PNG。","输入是 tatlead 的 GPL-3.0 仓库所发布的 TicTacToe-AI 可执行文件，报告以 SHA-256 标识。仓库随 GPL 文本一并再分发该文件，并为履行许可义务保留一份源码归档；“重建过程中未参考该源码”属于作者报告。","该分叉需要 Node.js 22.19+ 或 24.11+；恢复步骤使用 ilspycmd 以及本机 Roslyn 编译器和 Mono 引用，脚本默认指向 macOS 上的 Homebrew 路径。验证需要本地 X11 显示和 Mono／libgdiplus。记录的运行环境是 ARM64 上的 macOS 15.3.1 加 Xvfb，因此两张渲染图都来自同一 Mono 运行时，而非原生 Windows。","脚本先重新恢复出副本，再由探针执行原版与重建程序集，逐一比较每种棋盘的返回值和指示状态字节，并在按钮操作序列后捕获 Form.DrawToBitmap 图像。当前结果 JSON 记录棋盘记录零差异、terminalBytesEqual 为 false。","该分叉采用 MIT，保留 morluto 的 REA 版权声明，并列出 Ghidra、Frida 等可选引擎及其各自许可；游戏及其重建负有 GPL-3.0 义务。分叉特有的代码不在上游 REA 版本中；仓库在发帖后更名，帖子中的 rea-engine 链接现会重定向到 RE-Agent。"],"targets":["game"],"url":"https://github.com/heaven-hm/re-agent/tree/develop/benchmarks/tictactoe","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","category":"community-case-studies","description_en":"A Japanese field report connects REA 6.4.0 to Claude Code in a separate project directory, denies 43 of its 170 tools and common shell launch forms, and compares REA-enabled and REA-disabled runs on two real tasks: an Electron terminal’s packaged files and a saved HAR capture. Both arms answered correctly, while the REA arm took up to 2.00× the time and 1.67× the API-equivalent cost. It is an analysis-evaluation and safety-configuration case, not a reconstruction.","description_zh":"一篇日文实践报告在单独的项目目录中把 REA 6.4.0 接入 Claude Code，屏蔽其 170 个工具中的 43 个以及常见的命令行启动方式，并在两个真实任务上比较启用与禁用 REA 的运行：一个 Electron 终端的分发文件，以及一份保存的 HAR 通信记录。两组都给出正确答案，而启用 REA 的一组耗时最多为 2.00 倍、按 API 计价的费用最多为 1.67 倍。这是分析评估与安全配置案例，而非重建案例。","entry_url":"https://awesomerea.org/resources/rea-claude-code-isolated-ab-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-claude-code-isolated-ab-case/","evidence_url":"https://zenn.dev/keigoly/articles/8738d8d241b5a1","group":"rea","id":"rea-claude-code-isolated-ab-case","json_url":"https://awesomerea.org/resources/rea-claude-code-isolated-ab-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rea-claude-code-isolated-ab-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-claude-code-isolated-ab-case/index.md","name":"REA in Claude Code: an isolated static-analysis A/B trial","name_zh":"Claude Code 中的 REA：隔离配置下的静态分析 A/B 试验","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["scope","limits","scope","limits","attribution"],"requirements":["The article by keigoly was published on Zenn on 2026-10-14 (JST). It pins REA 6.4.0 from the rea-agents package and runs it with a checksum-verified official Node.js 24.21.0 placed inside the project, because the host’s Homebrew Node 25.8.1 is outside REA’s supported range. All trials used non-interactive claude -p with Claude Opus 5.5 and permission prompts bypassed; the Claude Code version is not stated.","Isolation is configuration, not a sandbox: REA is enabled only through a project-local .mcp.json, a generated deny list blocks 43 tools selected from effect metadata, and Bash prefix rules block common package-runner launches. The author states that deny rules are a fence rather than isolation, that other invocation forms bypass the prefix rules, and that prompt injection through analysis output was not tested.","The tasks were MIT-licensed Orca terminal v1.4.224 (128 MB of distributed Electron files) and a 2.5 MB HAR from an unnamed venue website; answers were checked against Orca’s public source and the HAR data. The author excluded DRM or license circumvention, online multiplayer games, business or customer data and malware from scope.","Each condition ran once (n=1), the REA arm was told to prefer REA tools, parallel processes make timings approximate, and only static JavaScript/web work with one model was tested; an interrupted run was excluded and repeated. One REA analysis result exceeded the 10 MB MCP response limit. Scripts and JSONL logs are excerpted rather than published.","The author reports that REA helped with extraction, such as asar unpacking and HAR element extraction, while grep and small scripts carried code reading in both arms. Nothing was reconstructed: the HAR task identified an existing request path. Native binaries and APKs are deferred to a planned second step; Orca, the venue site, REA and the model service keep their own terms."],"requirements_zh":["文章由 keigoly 于 2026-10-14（日本时间）发布在 Zenn。它固定使用 rea-agents 软件包中的 REA 6.4.0，并在项目内放置经校验和核对的官方 Node.js 24.21.0 来运行，因为本机 Homebrew 的 Node 25.8.1 不在 REA 支持范围内。所有试验均使用非交互的 claude -p、Claude Opus 5.5，并跳过权限确认；文章未说明 Claude Code 版本。","隔离依靠配置而非沙箱：REA 只通过项目内的 .mcp.json 启用，按效果元数据生成的拒绝列表屏蔽 43 个工具，Bash 前缀规则拦截常见的包运行器启动方式。作者明确表示拒绝规则只是围栏而非隔离，其他调用写法可以绕过前缀规则，且未测试经由分析输出进行的提示注入。","任务对象是 MIT 许可的 Orca 终端 v1.4.224（128 MB 的 Electron 分发文件），以及一个未具名会场网站的 2.5 MB HAR；答案依据 Orca 公开源码和 HAR 数据核对。作者将 DRM 或许可认证规避、在线对战游戏、业务或客户数据以及恶意软件排除在范围之外。","每种条件只运行一次（n=1），启用 REA 的一组被要求优先使用 REA 工具，多个进程并行运行使耗时只能作参考，且只测试了单一模型下的静态 JavaScript／Web 工作；一次中断的运行被剔除并重做。有一项 REA 分析结果超过了 MCP 的 10 MB 响应上限。脚本和 JSONL 日志只以摘录形式出现而未公开。","作者报告 REA 在提取环节（如展开 asar、从 HAR 中提取元素）有所帮助，而两组的代码阅读都主要依靠 grep 和小脚本。没有重建任何内容：HAR 任务确认的是一条已有的请求路径。原生二进制和 APK 留待计划中的第二步；Orca、会场网站、REA 及模型服务保留各自条款。"],"targets":["app","website"],"url":"https://zenn.dev/keigoly/articles/8738d8d241b5a1","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/morluto/rea/blob/093ce695f0a7c3407c7fde520ed8b20c0981b408/docs/testing.md","https://github.com/morluto/rea/blob/093ce695f0a7c3407c7fde520ed8b20c0981b408/licenses/nativeaot-parser-MIT.txt","https://github.com/morluto/rea/blob/093ce695f0a7c3407c7fde520ed8b20c0981b408/package.json","https://github.com/morluto/rea/blob/093ce695f0a7c3407c7fde520ed8b20c0981b408/LICENSE","https://github.com/morluto/rea/pull/748","https://github.com/morluto/rea/issues/744"],"category":"workflow-guides","description_en":"Recovers .NET 8 NativeAOT metadata from x64 PE executables during REA’s Ghidra analysis: MethodTable relationships, virtual slots and frozen strings from RTR 9.1 data, through a built-in read-only parser or an optional headless adapter that annotates the Ghidra database. Generated names, inferred prototypes and recovered native pseudocode stay separate from the unknown original C# names, fields and source.","description_zh":"在 REA 的 Ghidra 分析中，从 x64 PE 可执行文件恢复 .NET 8 NativeAOT 元数据：通过内置只读解析器或可选的无界面适配器（会为 Ghidra 数据库添加注释），从 RTR 9.1 数据中取得 MethodTable 关系、虚表槽位与冻结字符串。生成的名称、推断的原型和恢复的原生伪代码，与未知的原始 C# 名称、字段和源码明确区分。","entry_url":"https://awesomerea.org/resources/rea-ghidra-nativeaot-guide/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-ghidra-nativeaot-guide/","evidence_url":"https://github.com/morluto/rea/blob/093ce695f0a7c3407c7fde520ed8b20c0981b408/docs/ghidra-nativeaot.md","group":"rea","id":"rea-ghidra-nativeaot-guide","json_url":"https://awesomerea.org/resources/rea-ghidra-nativeaot-guide/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/rea-ghidra-nativeaot-guide/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-ghidra-nativeaot-guide/index.md","name":"NativeAOT metadata recovery with Ghidra","name_zh":"借助 Ghidra 恢复 NativeAOT 元数据","record_type":"resource","relationship":"official-documentation","requirements":["Reviewed on main as rea-agents 6.7.0, which declares Node ^22.19.0, ^24.11.0 or 26+. Bring your own Ghidra and JDK; the guide’s Windows check used Ghidra 12.1.4 and JDK 21. The built-in parser handles x64 PE32+ with .NET 8 RTR 9.1 metadata and needs a unique RTR header and exactly one DEHYDRATED_DATA row; other RTR versions and PE architectures are reported as unsupported or partial. Ordinary PE/CLI or ReadyToRun assemblies belong to REA’s managed-code tools instead.","The optional adapter is built from a clean pinned checkout of Washi1337/ghidra-nativeaot with existing git, javac and jar; REA records the JAR’s SHA-256, copies it and rechecks the digest before loading, and JARs run inside Ghidra, so supply a trusted build. It annotates within an ephemeral Program transaction and never changes the original executable. It is unavailable on Windows Ghidra P0, where database tools do not see rehydrated bytes and slot targets come from the parser report.","Outputs include MethodTable addresses, base types, interfaces, virtual slots and frozen strings, within documented local limits such as 128 MiB of captured PE bytes and 4 MiB of report JSON; rows beyond the report budget are omitted with partial coverage. Type identification uses upstream heuristics and prototypes remain inferences. Pseudocode is recovered native logic, not original C# source, and original class/member names and custom field layouts stay unknown.","Verification uses benign source-built .NET 8.0.22 fixtures with independent compiler/linker-symbol and directory-byte oracles, plus stripped and negative inputs; fixtures are never executed, and building them needs .NET SDK 8.0.416 and platform NativeAOT tools. The real MCP lane runs only on Linux x64 with the adapter. Windows-host behavior was checked manually once on Windows 11 x64 without the JAR against the fixture oracle and linker map; no CI lane repeats that check.","REA declares MIT. The parser’s hydration semantics are adapted from Washi1337/ghidra-nativeaot (MIT, with its notice shipped under licenses/) and cross-checked against .NET’s MethodTable.h. Analysed executables keep their own licenses. Merged PR #748 introduced the integration and issue #744 records the request and its closure."],"requirements_zh":["审阅时 main 上为 rea-agents 6.7.0，声明支持 Node ^22.19.0、^24.11.0 或 26 及以上。需自备 Ghidra 与 JDK；指南中的 Windows 检查使用 Ghidra 12.1.4 与 JDK 21。内置解析器支持带 .NET 8 RTR 9.1 元数据的 x64 PE32+，要求 RTR 头唯一且恰有一行 DEHYDRATED_DATA；其他 RTR 版本与 PE 架构会报告为不支持或部分覆盖。普通 PE/CLI 或 ReadyToRun 程序集应改用 REA 的托管代码工具。","可选适配器需用现有的 git、javac 与 jar，从固定版本且未修改的 Washi1337/ghidra-nativeaot 检出构建；REA 记录 JAR 的 SHA-256，复制后在加载前重新校验摘要。JAR 在 Ghidra 内执行，请使用可信的构建。适配器在临时 Program 事务中添加注释，从不修改原始可执行文件。它在 Windows Ghidra P0 上不可用；在该环境中，读取数据库的工具看不到重新水合的字节，槽位目标来自解析器报告。","输出包括 MethodTable 地址、基类型、接口、虚表槽位与冻结字符串，并受文档列明的本地上限约束，例如采集的 PE 字节最多 128 MiB、报告 JSON 最多 4 MiB；超出报告预算的行会被省略并标为部分覆盖。类型识别采用上游的启发式方法，方法原型仍属推断。伪代码是恢复的原生逻辑，并非原始 C# 源码；原始类／成员名称及自定义字段布局仍然未知。","验证使用自行构建的无害 .NET 8.0.22 测试程序，以独立的编译器／链接器符号和目录字节作为对照基准，另有去除符号的样本和负面输入；测试程序从不执行，构建它们需要 .NET SDK 8.0.416 及对应平台的 NativeAOT 工具。真实 MCP 测试流程只在装有适配器的 Linux x64 主机上运行。Windows 主机行为仅在 Windows 11 x64 上不带 JAR 手动检查过一次，对照测试程序基准与链接映射；没有 CI 流程重复该检查。","REA 声明 MIT。解析器的水合语义改编自 Washi1337/ghidra-nativeaot（MIT，其声明随附于 licenses/ 目录），并对照 .NET 的 MethodTable.h 核对。被分析的可执行文件保留各自许可。已合并的 PR #748 引入了该集成，issue #744 记录了相应请求及其关闭。"],"targets":["binary"],"url":"https://github.com/morluto/rea/blob/main/docs/ghidra-nativeaot.md","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/tylergraydev/UltraSunnyMoon/blob/913eed4969163ea15e354dacb8e2bfe0a2439de5/docs/STATUS.md","https://github.com/tylergraydev/UltraSunnyMoon/blob/913eed4969163ea15e354dacb8e2bfe0a2439de5/docs/SETUP.md","https://github.com/tylergraydev/UltraSunnyMoon/blob/913eed4969163ea15e354dacb8e2bfe0a2439de5/docs/TARGET.md","https://github.com/tylergraydev/UltraSunnyMoon/blob/913eed4969163ea15e354dacb8e2bfe0a2439de5/docs/DECOMP_WORKFLOW.md","https://github.com/tylergraydev/UltraSunnyMoon/blob/913eed4969163ea15e354dacb8e2bfe0a2439de5/docs/MAIN_REBUILD.md","https://github.com/tylergraydev/UltraSunnyMoon/blob/913eed4969163ea15e354dacb8e2bfe0a2439de5/docs/REBUILD.md","https://github.com/tylergraydev/UltraSunnyMoon/blob/913eed4969163ea15e354dacb8e2bfe0a2439de5/docs/FIRST_SOURCE.md","https://github.com/tylergraydev/UltraSunnyMoon/blob/913eed4969163ea15e354dacb8e2bfe0a2439de5/docs/STARTUP_BSS.md","https://github.com/tylergraydev/UltraSunnyMoon/blob/913eed4969163ea15e354dacb8e2bfe0a2439de5/docs/RUNTIME.md","https://github.com/tylergraydev/UltraSunnyMoon/blob/913eed4969163ea15e354dacb8e2bfe0a2439de5/AGENTS.md","https://github.com/tylergraydev/UltraSunnyMoon/blob/913eed4969163ea15e354dacb8e2bfe0a2439de5/tools/rea.sh","https://github.com/morluto/rea/tree/7ae3c50a9d49c480035855de9fcc4484befacd92"],"category":"community-case-studies","description_en":"The author uses a pinned REA build with Ghidra to analyze a user-supplied Pokémon Ultra Sun base executable, rebuild it byte for byte from split objects, and swap in two small compiled C runtime routines. Both replacements are behavior-tested but nonmatching and every other byte stays original; one recorded input movie drives the original and hybrid builds to the same bedroom movement in the Azahar emulator. Retail compiler identity, exact matching, module loading and broader gameplay remain open.","description_zh":"作者使用固定版本的 REA 与 Ghidra，分析使用者自备的《宝可梦 究极之日》基础版可执行文件，由拆分出的对象逐字节重建该文件，并替换进两个编译后的小型 C 运行时例程。两处替换均经行为测试但与原字节不一致，其余字节均保持原样；同一段录制输入在 Azahar 模拟器中让原版与混合构建到达相同的卧室移动场景。零售编译器识别、精确匹配、模块加载及更广泛的游戏行为仍待解决。","entry_url":"https://awesomerea.org/resources/ultrasunnymoon-rea-case/","entry_url_zh":"https://awesomerea.org/zh/resources/ultrasunnymoon-rea-case/","evidence_url":"https://github.com/tylergraydev/UltraSunnyMoon/blob/913eed4969163ea15e354dacb8e2bfe0a2439de5/README.md","group":"rea","id":"ultrasunnymoon-rea-case","json_url":"https://awesomerea.org/resources/ultrasunnymoon-rea-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/ultrasunnymoon-rea-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ultrasunnymoon-rea-case/index.md","name":"UltraSunnyMoon: a partial, REA-led Pokémon Ultra Sun reconstruction","name_zh":"UltraSunnyMoon：以 REA 主导的部分《宝可梦 究极之日》重建","reconstruction_method":"decompilation","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["scope","prerequisites","prerequisites","testing","attribution"],"requirements":["README reports that the original and combined rebuilt games reproduce controllable bedroom gameplay, that both C replacements are behavior-tested but nonmatching, and that no completion percentage is claimed. STATUS.md (updated 2026-10-12) lists an unchanged main executable and one CRO module rebuilt byte for byte, the integrated __aeabi_vec_ctor_nocookie_nodtor helper and a 36-byte startup BSS clearer. The hybrid builds still contain mostly original code and assets and need a 3DS runtime; a native PC port is a later phase.","Requires the user’s own Ultra Sun base version 0 container (title 00040000001b5000, product code CTR-P-A2AA) kept locally; the v1.2 update stays a separate comparison input. TARGET.md records the author’s base container SHA-256 3bb3b4eb0d17f18875d8b847c871dc97a172beeda03ce99e59e62a78ed5c1a53 and notes that these hashes identify the supplied dumps, not every copy. Retail containers, extracted code, raw REA dossiers, game frames and emulator logs stay in ignored private directories.","SETUP.md uses Ubuntu WSL on Windows with Node.js 22, Python 3, GCC and readelf. Its bootstrap builds REA from source revision 7ae3c50a9d49c480035855de9fcc4484befacd92 (package version 6.4.0) and runs it with Ghidra 12.1.4 and Temurin JDK 21, with Capstone 5.0.7 as an independent decoder. Rebuilds use a pinned 3DS Decomp Pipeline revision, the C replacements were compiled with Ubuntu’s gcc-arm-none-eabi (GCC 10.3.1), and runtime checks use Azahar 2126.2 and its RPC interface.","The project reports independent byte checks of the unchanged rebuilds, isolated behavior tests and live RPC readbacks for the replaced routines, and 60 passing source-owned tests. Runtime evidence is a bounded startup, setup and bedroom comparison under one input movie; routine execution counts, battles, overworld coverage, full-movie completion and timing determinism remain unverified. The tests use source-owned fixtures, not retail bytes.","README directs agent-accessible analysis through REA and Ghidra and requires AI-assisted reconstructions to be reviewed against binary evidence; AGENTS.md and HANDOFF.md are written for continuing agent sessions, and RUNTIME.md records frame review by an independent reviewing agent. The repository has no license file and GitHub detects none; it describes itself as an independent fan project unaffiliated with Nintendo, Game Freak or The Pokémon Company."],"requirements_zh":["README 报告原版与组合重建版都能重现可操作的卧室场景游玩，两处 C 替换均经行为测试但与原字节不一致，且不主张任何完成百分比。STATUS.md（2026-10-12 更新）列出：未改动的主可执行文件和一个 CRO 模块已逐字节重建，已集成 __aeabi_vec_ctor_nocookie_nodtor 辅助函数和一个 36 字节的启动 BSS 清零例程。混合构建仍主要由原始代码和素材组成，需要 3DS 运行环境；原生 PC 移植属于后续阶段。","需使用者自备《宝可梦 究极之日》基础版 0 容器（title 00040000001b5000，产品代码 CTR-P-A2AA）并保存在本地；v1.2 更新仅作为单独的比较输入。TARGET.md 记录作者基础容器的 SHA-256 为 3bb3b4eb0d17f18875d8b847c871dc97a172beeda03ce99e59e62a78ed5c1a53，并说明这些哈希只标识所用转储，而非所有副本。零售容器、提取的代码、原始 REA 档案、游戏画面和模拟器日志均保存在被忽略的私有目录中。","SETUP.md 在 Windows 的 Ubuntu WSL 中使用 Node.js 22、Python 3、GCC 和 readelf。引导脚本从源码修订 7ae3c50a9d49c480035855de9fcc4484befacd92（包版本 6.4.0）构建 REA，并搭配 Ghidra 12.1.4 与 Temurin JDK 21 运行，另用 Capstone 5.0.7 作为独立解码器。重建使用固定修订的 3DS Decomp Pipeline，C 替换以 Ubuntu 的 gcc-arm-none-eabi（GCC 10.3.1）编译，运行检查使用 Azahar 2126.2 及其 RPC 接口。","项目报告对未改动重建做了独立字节核对，对替换例程做了隔离行为测试与运行时 RPC 回读，并有 60 项源码自带测试通过。运行证据只是同一段录制输入下有限的启动、设置与卧室场景对比；例程执行次数、战斗、野外地图覆盖、完整录像播放和时序确定性仍未验证。测试使用项目自有的样例数据而非零售字节。","README 规定通过 REA 与 Ghidra 进行可供代理访问的分析，并要求 AI 辅助的重建必须依据二进制证据审查；AGENTS.md 和 HANDOFF.md 面向继续工作的代理会话编写，RUNTIME.md 记录了由独立审查代理检查画面的过程。仓库没有许可证文件，GitHub 也未识别出许可证；项目自称是与 Nintendo、Game Freak 及 The Pokémon Company 无关的独立爱好者研究。"],"targets":["game"],"url":"https://github.com/tylergraydev/UltraSunnyMoon","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://reversedwithai.com/policy","https://reversedwithai.com/learn/getting-started-with-rea"],"category":"related-lists","description_en":"A moderated website directory of AI-assisted reverse-engineering projects across games, firmware, file formats, APIs and protocols, apps and legacy software. Each entry links to its primary source and records the author-reported model, tools, time, cost and outcome, with four checks for public source, reproduction steps, real-hardware testing and third-party confirmation.","description_zh":"经人工审核的网站目录，收录游戏、固件、文件格式、API 与协议、应用及旧软件领域的 AI 辅助逆向项目。每个条目链接一手来源，记录作者报告的模型、工具、耗时、费用与结果，并标注源码公开、复现步骤、真实硬件测试和第三方确认四项检查。","entry_url":"https://awesomerea.org/resources/reversed-with-ai-directory/","entry_url_zh":"https://awesomerea.org/zh/resources/reversed-with-ai-directory/","evidence_url":"https://reversedwithai.com/about","group":"learn","id":"reversed-with-ai-directory","json_url":"https://awesomerea.org/resources/reversed-with-ai-directory/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/reversed-with-ai-directory/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/reversed-with-ai-directory/index.md","name":"Reversed with AI","name_zh":"Reversed with AI：AI 辅助逆向项目目录","record_type":"resource","relationship":"community-learning-resource","requirements":["Reviewed as a live website on 2026-10-18, when the homepage reported 180 projects, 100 marked Works, 12 guides and 166 tools, and the sitemap listed 180 project pages. The site has no pinned revision or public source repository, so entries, counts and labels can change after this review.","Entries record target, model, tools, time, cost, outcome (Works, Partial or Research), a 1–5 human-effort scale and four reproducibility checks. The About page says figures are reported by authors, not measured by the site, and unknown fields are marked Not reported; a Works label is the author’s claim. A Reproducible badge needs Works plus public source and repro steps, with real-hardware or third-party confirmation for firmware and devices.","The policy lists interoperability, preservation, modding that does not bypass DRM or anti-cheat, legacy-software recovery, format, protocol and API documentation, the user’s own devices, CTFs and defensive malware analysis without live samples. It declines DRM, licence-check and anti-cheat bypasses, online cheats, leaked source, live malware samples and weaponised exploits. The site says it hosts no binaries or code and accepts takedown requests.","The maintainer, smyaseen (@whyamas on X), reviews every submission; sponsored placements are labelled, and the site says sponsors do not affect listings or order. Its guides include a third-party REA setup guide updated 2026-10-14, but the directory covers many tools beyond REA and is not an official REA resource. The reviewed pages show a copyright notice and no reuse license for directory content."],"requirements_zh":["作为在线网站于 2026-10-18 审阅；当时首页显示 180 个项目、100 个标为“可用”、12 篇指南与 166 个工具，站点地图列出 180 个项目页面。网站没有固定版本或公开源码仓库，因此条目、计数与标签可能在审阅后变化。","条目记录目标、模型、工具、耗时、费用、结果（可用、部分或研究）、1–5 级人工投入程度，以及四项可复现性检查。“关于”页面说明数据由作者报告、并非网站测量，未知字段标为“未报告”；“可用”标签是作者的说法。“可复现”徽章要求结果可用且源码公开、具备复现步骤；固件与设备项目还需真实硬件测试或第三方确认。","收录政策包括互操作、保存、不绕过 DRM 或反作弊的模组制作、旧软件恢复、文件格式／协议／API 文档、用户自有设备、CTF 以及不含活体样本的防御性恶意软件分析；不收录 DRM、许可证检查与反作弊绕过、在线游戏作弊、泄露源码、活体恶意软件样本和武器化漏洞利用。网站称不托管二进制或代码，并受理下架请求。","维护者 smyaseen（X 账号 @whyamas）审核每条提交；赞助位置均有标注，网站称赞助不影响收录或排序。其指南包括一篇 2026-10-14 更新的第三方 REA 安装指南，但目录涵盖 REA 以外的大量工具，并非 REA 官方资源。所审页面显示版权声明，未提供目录内容的复用许可。"],"targets":["app","binary","firmware","game","protocol"],"url":"https://reversedwithai.com/","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/NousResearch/hermes-official-plugins/blob/6dacaaddbfd8e98dfc524096c44f712f743246b8/rea/mcp.json","https://github.com/NousResearch/hermes-official-plugins/blob/6dacaaddbfd8e98dfc524096c44f712f743246b8/rea/plugin.json","https://github.com/NousResearch/hermes-official-plugins/blob/6dacaaddbfd8e98dfc524096c44f712f743246b8/rea/skills/reverse-engineer-anything/SKILL.md","https://github.com/NousResearch/hermes-official-plugins/blob/6dacaaddbfd8e98dfc524096c44f712f743246b8/rea/skills/crash-triage/SKILL.md","https://github.com/NousResearch/hermes-official-plugins/blob/6dacaaddbfd8e98dfc524096c44f712f743246b8/rea/LICENSE","https://github.com/NousResearch/hermes-official-plugins/commit/69ea758bf3a9793f98933c757ec457b79338a994","https://github.com/NousResearch/hermes-agent/blob/22063fc099ec9ad8357d7f8f6e6248a0400680d3/plugin-catalog/rea.yaml","https://hermes-agent.nousresearch.com/docs/plugins/rea"],"category":"community-integrations","description_en":"Nous Research’s Hermes Agent plugin package for REA. One catalog install registers REA’s MCP server, pinned to rea-agents 6.4.0 and launched through npx over stdio, with REA’s workflow skill adapted for Hermes and a separate crash-triage skill. About 170 REA tools stay behind Hermes’ on-demand tool search, and the adapted skill asks before tools that run programs, drive apps or change a connected Android device.","description_zh":"Nous Research 在 Hermes Agent 官方插件库中发布的 REA 插件包。一次目录安装即可注册 REA 的 MCP 服务（固定为 rea-agents 6.4.0，经 npx 以 stdio 启动），并附带为 Hermes 改编的 REA 工作流技能和独立的崩溃分诊技能。约 170 个 REA 工具通过 Hermes 的按需工具检索提供；改编技能要求在运行程序、驱动应用或改动已连接 Android 设备的工具前先征得同意。","entry_url":"https://awesomerea.org/resources/hermes-rea-plugin/","entry_url_zh":"https://awesomerea.org/zh/resources/hermes-rea-plugin/","evidence_url":"https://github.com/NousResearch/hermes-official-plugins/blob/6dacaaddbfd8e98dfc524096c44f712f743246b8/rea/README.md","group":"rea","id":"hermes-rea-plugin","json_url":"https://awesomerea.org/resources/hermes-rea-plugin/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/hermes-rea-plugin/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hermes-rea-plugin/index.md","name":"REA plugin for Hermes Agent","name_zh":"Hermes Agent 的 REA 插件","record_type":"resource","relationship":"community-integration","requirements":["plugin.json declares 0.1.0 under MIT. Hermes’ catalog lists it as an official Nous Research plugin for Hermes 0.22.0+, installed with hermes plugins install rea and hermes plugins enable rea; it is not published by REA. Requires Node.js 22.19+, 24.11+ or 26+ with npx, not 23 or 25. A later rea-agents setup for Hermes replaces the pinned server entry.","Static JavaScript/ASAR, package, Go/Rust, PE, .NET and HAR analysis needs nothing else. Core-dump and ELF-layout tools need a Python with pwntools 4.15.0, pyelftools 0.33 and Unicorn 2.1.2 set in Hermes’ .env. Native decompilation needs Ghidra with a JDK, Hopper or IDA; Android needs JADX and Java; firmware and captures need Binwalk/Unblob, TShark, sigrok or WABT.","Only the adapted skill asks: Hermes itself does not prompt before REA tools that run PTY commands, drive apps, change Android devices or overwrite files; skip them in unattended runs. Analyze untrusted programs in a prepared environment.","In the README’s WinSCP 6.7 test the GUI import took 663 seconds under a 1000-second call budget, an author observation rather than a guarantee. Ghidra’s startup deadline is 900 seconds, while each call keeps Hermes’ 300-second MCP default.","Hermes v0.22.2 installs the package; the per-server call budget needs v0.23.0. The about-170-tool and 460 KB schema figures describe REA 6.4.0. REA’s MIT notice is included and the crash-triage workflow credits crashlens (MIT); external engines and targets keep their own terms."],"requirements_zh":["plugin.json 声明版本 0.1.0，采用 MIT。Hermes 插件目录将其列为 Nous Research 官方插件，要求 Hermes 0.22.0 或更高版本，通过 hermes plugins install rea 与 hermes plugins enable rea 安装；它并非由 REA 发布。需要 Node.js 22.19+、24.11+ 或 26+ 及 npx，不支持 23 与 25。之后若为 Hermes 运行 rea-agents setup，会替换固定版本的服务配置。","静态 JavaScript／ASAR、软件包、Go／Rust、PE、.NET 与 HAR 分析无需其他组件。核心转储与 ELF 布局工具需要装有 pwntools 4.15.0、pyelftools 0.33 和 Unicorn 2.1.2 的 Python，并在 Hermes 的 .env 中指定。原生反编译需要 Ghidra 及 JDK、Hopper 或 IDA；Android 需要 JADX 与 Java；固件和抓包格式需要 Binwalk／Unblob、TShark、sigrok 或 WABT。","只有改编技能会先询问：对于在 PTY 中运行命令、操控应用、改动 Android 设备或覆盖文件的 REA 工具，Hermes 本身调用前不会提示；无人值守运行时应跳过。不受信任的程序应在专门准备的环境中分析。","README 的 WinSCP 6.7 测试中，GUI 程序导入耗时 663 秒，使用 1000 秒调用预算；这是作者的观察结果，并非耗时保证。Ghidra 启动时限为 900 秒，每次调用仍使用 Hermes 默认的 300 秒 MCP 时限。","Hermes v0.22.2 可安装该插件包；按服务的调用预算需要 v0.23.0。约 170 个工具和约 460 KB 工具定义的数字针对 REA 6.4.0。附有 REA 的 MIT 声明，崩溃分诊流程注明来自 crashlens（MIT）；外部引擎与目标适用各自条款。"],"targets":["app","binary","firmware","website"],"url":"https://github.com/NousResearch/hermes-official-plugins/tree/main/rea","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/mingleiw/crashlens/blob/7188611a506e058a8f4937acf3dfd3035545f2d1/plugin/skills/crashlens/SKILL.md","https://github.com/mingleiw/crashlens/blob/7188611a506e058a8f4937acf3dfd3035545f2d1/docs/prompts/crash-triage.md","https://github.com/mingleiw/crashlens/blob/7188611a506e058a8f4937acf3dfd3035545f2d1/src/rea.ts","https://github.com/mingleiw/crashlens/blob/7188611a506e058a8f4937acf3dfd3035545f2d1/src/mcp.ts","https://github.com/mingleiw/crashlens/blob/7188611a506e058a8f4937acf3dfd3035545f2d1/package.json","https://github.com/mingleiw/crashlens/blob/7188611a506e058a8f4937acf3dfd3035545f2d1/plugin/.claude-plugin/plugin.json","https://github.com/mingleiw/crashlens/blob/7188611a506e058a8f4937acf3dfd3035545f2d1/.github/workflows/ci.yml","https://github.com/mingleiw/crashlens/blob/7188611a506e058a8f4937acf3dfd3035545f2d1/test/e2e.test.ts","https://github.com/mingleiw/crashlens/blob/7188611a506e058a8f4937acf3dfd3035545f2d1/LICENSE","https://x.com/rae1101x/status/2111052456151154858"],"category":"community-integrations","description_en":"A crash-triage tool that turns Linux core dumps, runtime panics, exception traces and sanitizer reports into Markdown bug reports naming the crash type, the first frame in the user’s code and a stable signature. Its core-dump path calls the REA CLI to read the recorded crash and the binary layout, and can ask REA’s Ghidra provider for pseudocode of stripped functions; a Claude Code plugin bundles a skill and read-only MCP tools. It is a debugging integration around REA, not a reconstruction case, and its diagnostic accuracy remains author-reported.","description_zh":"崩溃分诊工具，将 Linux 核心转储、运行时 panic、异常堆栈和 sanitizer 报告整理为 Markdown 缺陷报告，指出崩溃类型、首个用户代码帧和稳定签名。核心转储分析通过 REA 命令行读取崩溃记录与二进制布局，并可调用 REA 的 Ghidra 引擎为无符号函数生成伪代码；附带的 Claude Code 插件包含技能与只读 MCP 工具。它是围绕 REA 的调试集成，不是重建案例，诊断准确性仍为作者报告。","entry_url":"https://awesomerea.org/resources/crashlens-rea-crash-triage/","entry_url_zh":"https://awesomerea.org/zh/resources/crashlens-rea-crash-triage/","evidence_url":"https://github.com/mingleiw/crashlens/blob/7188611a506e058a8f4937acf3dfd3035545f2d1/README.md","group":"rea","id":"crashlens-rea-crash-triage","json_url":"https://awesomerea.org/resources/crashlens-rea-crash-triage/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/crashlens-rea-crash-triage/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/crashlens-rea-crash-triage/index.md","name":"crashlens","name_zh":"crashlens 崩溃分诊工具","record_type":"resource","relationship":"community-integration","requirements":["Package 0.1.0 and plugin 0.2.0 are an early prototype. Panic, trace and ASan/LSan/UBSan text inputs need only Node.js 22.19+ or 24.11+. Core dumps need Linux x86-64, Python 3, rea-agents and a pwntools environment named by REA_PWNTOOLS_PYTHON; gdb, objdump and Ghidra 12.1.x with JDK 21 are optional. Windows minidumps and macOS crash reports remain roadmap items.","Supply the core dump and the exact binary that crashed; crashlens compares GNU build IDs and warns on a mismatch. rea-agents 6.4.0 or later is an optional peer dependency, and the author describes only a pinned 6.4.0 as compatible.","The plugin’s MCP server defines four read-only tools, analyze_failure, analyze_core_dump, decompile_function and analyze_crash_folder. Pseudocode is decompiler output, and crash types are heuristics with a stated confidence.","The analyzed program is not executed; gdb runs with script auto-loading and debuginfod disabled. The optional --ai flag sends the report, including code snippets and log lines, to the Anthropic API; the local web app binds 127.0.0.1 behind a session token. Core dumps can hold secrets, and reports include local paths and register values.","CI runs typechecks and unit tests on Node 22 and 24 plus an end-to-end NULL-dereference check with the latest rea-agents; the six-of-seven root-cause claim has no published transcripts.","MIT, using MIT-licensed REA through its public CLI; Ghidra, the Anthropic API and analyzed programs keep their own terms."],"requirements_zh":["软件包 0.1.0 与插件 0.2.0 仍是早期原型。panic、堆栈及 ASan／LSan／UBSan 文本输入只需 Node.js 22.19+ 或 24.11+。核心转储需要 Linux x86-64、Python 3、rea-agents，以及通过 REA_PWNTOOLS_PYTHON 指定的 pwntools 环境；gdb、objdump 以及 Ghidra 12.1.x 与 JDK 21 为可选项。Windows minidump 与 macOS 崩溃报告仍在路线图中。","需提供核心转储及发生崩溃的同一二进制；crashlens 比对 GNU build ID，不一致时发出警告。rea-agents 6.4.0 及以上为可选对等依赖，作者只说明可配合固定的 6.4.0 使用。","插件的 MCP 服务定义了四个只读工具：analyze_failure、analyze_core_dump、decompile_function 与 analyze_crash_folder。伪代码属于反编译器输出，崩溃类型是附带置信度的启发式判断。","不会运行被分析的程序；gdb 打开核心文件时关闭脚本自动加载与 debuginfod。可选的 --ai 参数会把报告（包括代码片段和日志行）发送至 Anthropic API；本地网页应用只监听 127.0.0.1 并要求会话令牌。核心转储可能含有机密信息，报告也会包含本地路径和寄存器值。","CI 在 Node 22 与 24 上运行类型检查和单元测试，另有一项使用最新版 rea-agents 的空指针解引用端到端检查；“七类中找出六类根因”的说法未公开对话记录。","采用 MIT，并通过公开命令行使用同为 MIT 许可的 REA；Ghidra、Anthropic API 及被分析程序适用各自条款。"],"targets":["binary"],"url":"https://github.com/mingleiw/crashlens","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/zhxunzh84/rea-dino-reverse-engineering/blob/1fa0ae9faae97d65754f2abf89d3e8326aea9525/docs/reverse-engineering.md","https://github.com/zhxunzh84/rea-dino-reverse-engineering/blob/1fa0ae9faae97d65754f2abf89d3e8326aea9525/docs/testing.md","https://github.com/zhxunzh84/rea-dino-reverse-engineering/blob/1fa0ae9faae97d65754f2abf89d3e8326aea9525/docs/lessons-learned.md","https://github.com/zhxunzh84/rea-dino-reverse-engineering/blob/1fa0ae9faae97d65754f2abf89d3e8326aea9525/dino-demo.html","https://github.com/zhxunzh84/rea-dino-reverse-engineering/blob/1fa0ae9faae97d65754f2abf89d3e8326aea9525/THIRD_PARTY_NOTICES.md","https://github.com/zhxunzh84/rea-dino-reverse-engineering/blob/1fa0ae9faae97d65754f2abf89d3e8326aea9525/LICENSE"],"category":"community-case-studies","description_en":"The author uses REA’s MCP browser tools to passively capture the JavaScript loaded by wayou’s open-source T-Rex Runner page, then has Codex rebuild its acceleration rule in one self-contained HTML5 Canvas game. The report identifies the captured script by SHA-256 and separates verified source facts from reconstruction choices; only the speed rule is claimed, not full gameplay equivalence.","description_zh":"作者使用 REA 的 MCP 浏览器工具被动捕获 wayou 开源 T-Rex Runner 页面已加载的 JavaScript，再由 Codex 在一个自包含的 HTML5 Canvas 游戏中重建其加速规则。报告以 SHA-256 标识所捕获的脚本，并区分已核实的源码事实与重建选择；只主张速度规则一致，不主张完整玩法等价。","entry_url":"https://awesomerea.org/resources/rea-dino-runner-community-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-dino-runner-community-case/","evidence_url":"https://github.com/zhxunzh84/rea-dino-reverse-engineering/blob/1fa0ae9faae97d65754f2abf89d3e8326aea9525/README.md","group":"rea","id":"rea-dino-runner-community-case","json_url":"https://awesomerea.org/resources/rea-dino-runner-community-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rea-dino-runner-community-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-dino-runner-community-case/index.md","name":"Dinosaur runner: an REA-inspected speed rule rebuilt with Codex","name_zh":"恐龙跑酷：经 REA 检查、由 Codex 重建的速度规则","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["scope","attribution","prerequisites","testing","license"],"requirements":["The target is wayou’s open-source, Chromium-derived T-Rex Runner page, not chrome://dino/ or hidden proprietary code; the investigation read JavaScript the browser had already loaded. Only the acceleration rule is reconstructed: start at 6 and add 0.001 per eligible update while below 13, with no elapsed-time factor. Artwork, physics, obstacles and scoring are new or simplified, and the intro, ducking, audio and narrow-screen speed reduction are omitted.","README and the report record REA MCP list_browser_targets and inspect_web_page calls over a local Chrome DevTools Protocol endpoint, with no navigation, clicks or page evaluation; Codex handled analysis, implementation and tests. Evidence IDs and excerpts come from the author’s REA results, but the full evidence bundle is not published and the live upstream script may change.","Playing needs only a browser: dino-demo.html is self-contained, with no external assets, packages or build step, and a GitHub Pages copy is linked. The embedded tests run from the page’s Run speed tests button, the browser console or the documented Node.js harness with mocked DOM, Canvas and animation-frame interfaces.","The author reports 67 of 67 embedded tests passing (15 unit, 52 integration), ten rejected in-memory mutations and seven owner-reported manual browser checks on 2026-10-13 without browser or OS details. Floating-point results such as the extra step past 13 at update 7,001 were measured in the reconstruction, not sampled from the original. There is no CI or cross-browser coverage.","The project is MIT-licensed; short original-source excerpts keep the Chromium BSD-style header, and THIRD_PARTY_NOTICES.md reproduces the upstream BSD-3-Clause terms. This third-party repository is separate from REA’s own dinosaur-speed teaching case."],"requirements_zh":["调查对象是 wayou 的开源 T-Rex Runner 页面（源自 Chromium），不是 chrome://dino/，也不是隐藏的专有代码；调查读取的是浏览器已加载的 JavaScript。仅重建加速规则：从 6 开始，速度低于 13 时每次符合条件的更新加 0.001，不乘以经过时间。美术、物理、障碍物和计分为新写或简化实现，并省略开场动画、下蹲、音频及窄屏降速。","README 与报告记录了通过本地 Chrome DevTools Protocol 端点调用 REA MCP 的 list_browser_targets 和 inspect_web_page，未进行页面导航、点击或页面内求值；分析、实现和测试由 Codex 完成。证据 ID 与摘录来自作者的 REA 结果，但完整证据包未公开，线上的上游脚本也可能变化。","运行只需浏览器：dino-demo.html 为自包含文件，无外部素材、依赖包或构建步骤，并附有 GitHub Pages 版本链接。内嵌测试可通过页面上的 Run speed tests 按钮、浏览器控制台，或文档给出的 Node.js 测试脚本（模拟 DOM、Canvas 和动画帧接口）运行。","作者报告 67 项内嵌测试全部通过（15 项单元测试、52 项集成测试），10 个内存中的变异版本均被测试拒绝，项目所有者另报告于 2026-10-13 完成 7 项手动浏览器检查，但未提供浏览器或操作系统信息。第 7,001 次更新越过 13 多加一步等浮点结果是在重建版本中测得，并非对原游戏采样。没有 CI 或跨浏览器覆盖。","项目采用 MIT 许可；简短的原始源码摘录保留 Chromium 的 BSD 风格版权头，THIRD_PARTY_NOTICES.md 完整转载上游 BSD-3-Clause 条款。此第三方仓库与 REA 官方的恐龙加速教学案例相互独立。"],"targets":["game","website"],"url":"https://github.com/zhxunzh84/rea-dino-reverse-engineering","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://x.com/HanZhang415188/status/2109843188341207283"],"category":"community-case-studies","description_en":"The author reports using REA to map Screen Studio’s Electron package, reading six auto-zoom and cursor rules from its obfuscated code with Claude Code’s help, and having Claude Code write an independent recorder and renderer from those rules. The article describes the commands, evidence, a cursor-alignment check and the clone’s gaps; neither the clone nor the decoded code is published.","description_zh":"作者报告借助 REA 梳理 Screen Studio 的 Electron 安装包，在 Claude Code 协助下从混淆代码中读出六条自动缩放与光标规则，再让 Claude Code 依据这些规则编写独立的录屏和渲染程序。文章介绍了所用命令、证据、光标对齐检查以及复刻版的不足；复刻版和解出的代码均未公开。","entry_url":"https://awesomerea.org/resources/screen-studio-auto-zoom-case/","entry_url_zh":"https://awesomerea.org/zh/resources/screen-studio-auto-zoom-case/","evidence_url":"https://x.com/i/article/2109834677343432704","group":"rea","id":"screen-studio-auto-zoom-case","json_url":"https://awesomerea.org/resources/screen-studio-auto-zoom-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/screen-studio-auto-zoom-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/screen-studio-auto-zoom-case/index.md","name":"Screen Studio: an author-reported REA study of auto-zoom rules","name_zh":"Screen Studio：作者报告的 REA 自动缩放规则研究","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["scope","attribution","testing","limits","license"],"requirements":["The 2026-10-13 article targets the macOS Screen Studio app’s app.asar with REA’s JavaScript application analyzer, run from the command line on the author’s Mac with a supported Node.js version and Xcode Command Line Tools; it names neither the REA nor the Screen Studio version. The author reports a 101-second run producing a 124 MB evidence file over 3,695 files, using an integrity policy that records, rather than stops on, 25 bundled native programs whose fingerprints no longer matched.","The relevant code was obfuscated. The author says REA’s source-recovery command was unavailable on macOS, so Claude Code wrote a separate script to make it readable; that step is the agent’s work, not REA output. The decoded code is deliberately unpublished.","From the six rules, Claude Code reportedly wrote about 1,300 lines from scratch: a Swift ScreenCaptureKit recorder that logs cursor positions separately, and a Remotion renderer. The author reports 60 fps capture without dropped frames and a 22-second clip rendered in about 50 seconds on an M4 Pro, and says a redrawn cursor overlaid on a recording of the system cursor matched in most frames, with one fast-motion frame off by a few pixels.","The author lists gaps: no graphical editor, three cursor types, simplified motion blur, no typing zoom or click sounds, and camera and microphone code that has not been tested with a real camera; the clone is far from replacing Screen Studio. Its source is unpublished.","The author says the clone uses no Screen Studio code or assets and advises reading a product’s user agreement first."],"requirements_zh":["这篇 2026-10-13 的文章在作者的 Mac 上用命令行运行 REA 的 JavaScript 应用分析器，分析 macOS 版 Screen Studio 的 app.asar，环境为受支持的 Node.js 版本和 Xcode Command Line Tools；文中未注明 REA 或 Screen Studio 的版本。作者报告这次运行用时 101 秒，生成覆盖 3,695 个文件的 124 MB 证据文件；由于 25 个随包原生程序的指纹不再匹配，运行时采用了只记录而不停止的完整性策略。","相关代码经过混淆。作者称 REA 的源码还原命令在 macOS 上不可用，于是由 Claude Code 另写脚本使代码可读；这一步是 Agent 的工作而非 REA 的输出。解出的代码按作者意愿不公开。","据作者报告，Claude Code 依据六条规则从零写了约 1,300 行代码：一个单独记录光标位置的 Swift ScreenCaptureKit 录屏器，以及一个 Remotion 渲染器。作者报告在 M4 Pro 上以 60 fps 录制无丢帧，22 秒的片子约 50 秒渲染完成；并称把重绘光标叠加到录有系统光标的画面上逐帧比对，大多数帧完全重合，只有一帧快速移动时偏差几个像素。","作者列出的不足包括：没有图形界面编辑器、只有三种光标、运动模糊较简单、没有打字放大和点击音效，摄像头与麦克风代码已写好但尚未用真实摄像头测试；复刻版距离替代 Screen Studio 还差得远。其源码未公开。","作者称复刻版未使用 Screen Studio 的代码和素材，并建议分析他人软件前先阅读其用户协议。"],"targets":["app"],"url":"https://x.com/i/article/2109834677343432704","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/Henry-fan88/claude-code-background/blob/3dbd1065835508be6027137927deeddb8c30fe55/README.md","https://github.com/Henry-fan88/claude-code-background/blob/3dbd1065835508be6027137927deeddb8c30fe55/docs/VALIDATION.md","https://github.com/Henry-fan88/claude-code-background/blob/3dbd1065835508be6027137927deeddb8c30fe55/THIRD_PARTY_NOTICES.md","https://github.com/Henry-fan88/claude-code-background/blob/3dbd1065835508be6027137927deeddb8c30fe55/.github/workflows/ci.yml","https://github.com/Henry-fan88/claude-code-background/blob/3dbd1065835508be6027137927deeddb8c30fe55/scripts/check_release.py","https://github.com/Henry-fan88/claude-code-background/blob/3dbd1065835508be6027137927deeddb8c30fe55/scripts/renderer.test.cjs","https://github.com/Henry-fan88/claude-code-background/blob/3dbd1065835508be6027137927deeddb8c30fe55/CONTRIBUTING.md","https://github.com/Henry-fan88/claude-code-background/blob/3dbd1065835508be6027137927deeddb8c30fe55/LICENSE"],"category":"community-case-studies","description_en":"Reimplements the glyph-wind background of the Claude desktop app’s Claude Code New session view as an offline WebGL2 page with a 38-slider control panel. The author reports a static REA investigation of the desktop shell and its remote web bundle, followed by a newly written renderer that reuses recovered timing and layout values. It shares the original’s visual vocabulary and interaction model but is not a pixel-identical extraction.","description_zh":"将 Claude 桌面应用中 Claude Code“新会话”界面的字符风场背景，重新实现为可离线运行的 WebGL2 页面，并附带 38 个滑块的控制面板。作者报告先用 REA 对桌面外壳及其远程网页包进行静态调查，再以新编写的渲染器复用恢复出的时序与布局参数。它与原效果的视觉语言和交互方式相近，但不是逐像素一致的提取。","entry_url":"https://awesomerea.org/resources/claude-code-background-lab-case/","entry_url_zh":"https://awesomerea.org/zh/resources/claude-code-background-lab-case/","evidence_url":"https://github.com/Henry-fan88/claude-code-background/blob/3dbd1065835508be6027137927deeddb8c30fe55/docs/PROVENANCE.md","group":"rea","id":"claude-code-background-lab-case","json_url":"https://awesomerea.org/resources/claude-code-background-lab-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/claude-code-background-lab-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/claude-code-background-lab-case/index.md","name":"Claude Code background lab: an REA-informed reimplementation of a desktop animation","name_zh":"Claude Code 背景动画实验室：基于 REA 调查的桌面动画重新实现","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["scope","scope","prerequisites","testing","license"],"requirements":["The reviewed pin is the repository’s single public commit, dated 16 October 2026. PROVENANCE.md reports that the study targeted Claude desktop 2.37337.1, began with REA’s analyze_javascript_application, traced the shell’s remote page to the background module and stayed static: Claude was not launched or inspected at runtime. It records SHA-256 hashes of the retained ASAR and the decoded module and lists local REA evidence IDs whose archives are not published.","The public edition reuses recovered factual parameters, including 6.5 × 13 CSS-pixel cells, a nominal 9 px font, a 3 s entrance delay and fade-in, a 4 s wind reveal, a 500 ms focus fade-out and 42–64 px/s wind speeds. Its shaders, noise field, random generator, glyph sequences and single-pass instanced rendering are newly written. The author states that an earlier private prototype used extracted source and a bundled font.","Running it needs only a WebGL2 browser opening index.html, or a local static server where the browser restricts local files; there is no Canvas2D fallback, and system monospace fonts change glyph metrics. Development needs Python 3 and Node.js 18+, with no third-party runtime or build dependencies.","CI runs six Node tests of deterministic helpers, rebuilds the offline page, checks that it is current and runs a release check for offline output, syntax, local links and excluded extracted assets and local paths. VALIDATION.md reports manual Chrome-on-macOS checks of rendering and controls, but not a browser-verified settings import, runtime testing of Claude or a pixel comparison with the original. The reference recording’s remote build, seed, theme and font are unknown.","MIT covers the original code and documentation. The repository states that it distributes no recovered Anthropic source, shaders, fonts, ASAR files, screenshots of the original, recordings or account data, and that its license grants no rights in Anthropic’s software, fonts or trademarks. It is unofficial and unaffiliated with Anthropic; REA is credited as the investigation tool rather than bundled, and the author also credits AI-assisted development."],"requirements_zh":["所审阅的固定版本是仓库唯一的公开提交，日期为 2026 年 10 月 16 日。PROVENANCE.md 报告该调查针对 Claude 桌面版 2.37337.1，从 REA 的 analyze_javascript_application 开始，沿桌面外壳加载的远程页面追踪到背景模块，且全程为静态分析：未启动 Claude，也未在运行时检查。文档记录了保留的 ASAR 与解码后模块的 SHA-256，并列出本地 REA 证据 ID，但相应的证据归档未公开。","公开版本复用了恢复出的事实性参数，包括 6.5 × 13 CSS 像素的单元格、标称 9 px 字号、3 秒入场延迟与淡入、4 秒风场显现、500 毫秒失焦淡出，以及每秒 42–64 像素的风速。着色器、噪声场、随机数生成器、字符序列和单通道实例化渲染均为新编写。作者说明早期的私有原型曾使用提取的源码与内置字体。","运行时只需用支持 WebGL2 的浏览器打开 index.html；若浏览器限制本地文件，可改用本地静态服务器。项目没有 Canvas2D 回退方案，系统等宽字体也会改变字形度量。开发需要 Python 3 与 Node.js 18+，没有第三方运行时或构建依赖。","CI 运行六项针对确定性辅助函数的 Node 测试，重新构建离线页面并检查其为最新，再执行发布检查，涵盖离线输出、语法、本地链接，以及排除提取素材与本地路径。VALIDATION.md 报告在 macOS 的 Chrome 中手动检查了渲染与控件，但设置导入未经浏览器验证，也未对 Claude 进行运行测试或与原效果逐像素比较。参考录像所用的远程构建、种子、主题与字体均不明确。","MIT 许可覆盖原创代码与文档。仓库声明不分发任何恢复出的 Anthropic 源码、着色器、字体、ASAR 文件、原应用截图、录像或账号数据，其许可也不授予 Anthropic 软件、字体或商标的任何权利。项目为非官方项目，与 Anthropic 无关联；REA 被署名为调查工具而非随附依赖，作者另注明开发过程借助了 AI。"],"targets":["app"],"url":"https://github.com/Henry-fan88/claude-code-background","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/N0zoM1z0/dx-ball/blob/d1251ea4bd000c7204c895c029194cae1d269731/docs/REA.md","https://github.com/N0zoM1z0/dx-ball/blob/d1251ea4bd000c7204c895c029194cae1d269731/docs/MATCHING.md","https://github.com/N0zoM1z0/dx-ball/blob/d1251ea4bd000c7204c895c029194cae1d269731/docs/BUILD.md","https://github.com/N0zoM1z0/dx-ball/blob/d1251ea4bd000c7204c895c029194cae1d269731/docs/PROGRESS.md","https://github.com/N0zoM1z0/dx-ball/blob/d1251ea4bd000c7204c895c029194cae1d269731/docs/research/ORIGINAL_CAMPAIGN.md","https://github.com/N0zoM1z0/dx-ball/blob/d1251ea4bd000c7204c895c029194cae1d269731/config/target.toml","https://github.com/N0zoM1z0/dx-ball/blob/d1251ea4bd000c7204c895c029194cae1d269731/config/tools.lock.toml","https://github.com/N0zoM1z0/dx-ball/blob/d1251ea4bd000c7204c895c029194cae1d269731/config/rea.lock.json","https://github.com/N0zoM1z0/dx-ball/blob/d1251ea4bd000c7204c895c029194cae1d269731/tests/test_boards_differential.py","https://github.com/N0zoM1z0/dx-ball/blob/d1251ea4bd000c7204c895c029194cae1d269731/.github/workflows/ci.yml","https://github.com/N0zoM1z0/dx-ball/blob/d1251ea4bd000c7204c895c029194cae1d269731/LICENSE"],"category":"community-case-studies","description_en":"The author has Codex use REA’s Ghidra tools to inspect the English DX-Ball 1.07 executable and recover it as typed C/C++, then compiles each function with the original-era Visual C++ 4.0 and compares it byte for byte with the original after mapping relocations. The same source also builds a MinGW Windows game and a portable core library. Exact reconstruction is still in progress; REA’s separate sound-pan showcase covers just one function.","description_zh":"作者让 Codex 通过 REA 的 Ghidra 工具检查英文版 DX-Ball 1.07 可执行文件并恢复为带类型的 C/C++，再用同时代的 Visual C++ 4.0 编译每个函数，在映射重定位后与原文件逐字节比较。同一套源码还可构建 MinGW Windows 游戏和可移植核心库。精确重建仍在进行中；REA 另行发布的声像展示只覆盖其中一个函数。","entry_url":"https://awesomerea.org/resources/dx-ball-rea-reconstruction-case/","entry_url_zh":"https://awesomerea.org/zh/resources/dx-ball-rea-reconstruction-case/","evidence_url":"https://github.com/N0zoM1z0/dx-ball/blob/d1251ea4bd000c7204c895c029194cae1d269731/README.md","group":"rea","id":"dx-ball-rea-reconstruction-case","json_url":"https://awesomerea.org/resources/dx-ball-rea-reconstruction-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/dx-ball-rea-reconstruction-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dx-ball-rea-reconstruction-case/index.md","name":"DX-Ball: an REA-guided function-level reconstruction with Codex","name_zh":"DX-Ball：借助 REA 并由 Codex 完成的函数级重建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README marks exact reconstruction as in progress, to be followed by a playable Visual C++ 4.0 build and later platform ports. Generated PROGRESS.md counts 553 provisional function candidates, 475 with source, 395 byte-exact (85,106 exact code bytes) and 249 with scoped semantic acceptance, and says both Windows builds completed recorded original-board campaigns under Wine. A separate 50-board restored-CRT attempt on October 17 ended at its time limit without a full pass.","Supply the English v1.07 Windows archive identified in config/target.toml; the importer verifies the archive and DXBALL.EXE hashes and puts the executable and assets in the git-ignored original/ directory. README points to a third-party download site for that archive; the repository does not establish its distribution rights.","The documented host is Linux x86-64 with Git, Python 3.11+, Node.js 22.19.0, 32-bit Wine, Xvfb, CMake, Ninja and GCC or Clang, plus i686 MinGW for Windows cross-builds. Bootstrap scripts fetch a hash-pinned JDK, Ghidra and a Visual C++ 4.0 compiler from a third-party archive repository. The REA lock file pins rea-agents 6.5.0 with Ghidra 12.1.4, while docs/REA.md still names 6.4.0; the Codex goal workflow needs Codex 0.128.0 or newer.","An exact unit has zero differences across the whole function after COFF relocations are mapped to original functions, imports and data, with literal data also checked; match-units.toml records the inputs needed to replay each unit. Differential tests run original x86 routines under Unicorn emulation against the compiled maintained C, and public CI builds the portable source, validates recorded evidence and compiles the Windows adapter without game resources. All results are project-reported.","MIT covers repository code; the original game, credited to Michael P. Welch with 3D graphics by Seumas McNally, is supplied separately and keeps its own rights, as do the downloaded compiler and tools. REA use is documented through saved responses and a worked projectile-list example, but agent effectiveness is not independently measured."],"requirements_zh":["README 将精确重建标注为进行中，之后才会推进可游玩的 Visual C++ 4.0 构建及其他平台移植。自动生成的 PROGRESS.md 统计 553 个暂定函数候选，其中 475 个具备源码、395 个逐字节一致（85,106 个一致代码字节）、249 个通过有范围的语义验收，并称两个 Windows 构建都已在 Wine 下完成有记录的原版关卡流程。10 月 17 日另一次 50 关的 restored-CRT 尝试在时限到达时结束，未完成全部流程。","需自备 config/target.toml 所标识的英文版 v1.07 Windows 压缩包；导入程序校验压缩包与 DXBALL.EXE 的哈希，并将可执行文件和素材放入被 git 忽略的 original/ 目录。README 指向一个第三方下载网站获取该压缩包；仓库并未确立其分发权利。","文档说明的宿主为 Linux x86-64，需要 Git、Python 3.11+、Node.js 22.19.0、32 位 Wine、Xvfb、CMake、Ninja 以及 GCC 或 Clang；Windows 交叉构建还需 i686 MinGW。初始化脚本获取以哈希固定的 JDK、Ghidra，以及来自第三方存档仓库的 Visual C++ 4.0 编译器。REA 锁定文件固定 rea-agents 6.5.0 与 Ghidra 12.1.4，而 docs/REA.md 仍写作 6.4.0；Codex goal 工作流需要 Codex 0.128.0 或更新版本。","一个一致单元须在 COFF 重定位映射到原函数、导入项和数据后，整个函数零差异，并同时检查字面量数据；match-units.toml 记录重放每个单元所需的输入。差分测试在 Unicorn 模拟中运行原 x86 例程，与编译后的维护版 C 代码对照；公开 CI 构建可移植源码、校验记录的证据，并在不含游戏资源的情况下编译 Windows 适配层。所有结果均为项目报告。","MIT 许可覆盖仓库代码；原游戏署名为 Michael P. Welch，3D 图形由 Seumas McNally 制作，需另行提供并保留其自身权利，下载的编译器与工具亦各有条款。REA 的使用通过保存的响应和一个弹丸链表的实例说明记录，但智能体的成效未经独立测量。"],"targets":["binary","game"],"url":"https://github.com/N0zoM1z0/dx-ball","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/eray1605/re2ds/blob/f1e120ec50f6b072d7283a2d3dd35611d656c9b7/ROADMAP.md","https://github.com/eray1605/re2ds/blob/f1e120ec50f6b072d7283a2d3dd35611d656c9b7/Makefile","https://github.com/eray1605/re2ds/blob/f1e120ec50f6b072d7283a2d3dd35611d656c9b7/.gitignore","https://github.com/eray1605/re2ds/blob/f1e120ec50f6b072d7283a2d3dd35611d656c9b7/docs/engine-notes.md","https://github.com/eray1605/re2ds/blob/f1e120ec50f6b072d7283a2d3dd35611d656c9b7/tools/research/psxexe_to_elf.py","https://www.reddit.com/r/ReverseEngineering/comments/1x85dp5/a_port_of_resident_evil_2_for_the_nintendo_ds/","https://github.com/OpenBiohazard2/OpenBiohazard2/blob/173f900d174a41af56bd478692892254a2e31aae/LICENSE.md"],"category":"community-case-studies","description_en":"Reimplements Resident Evil 2’s PS1 game rules in a native Nintendo DS engine, with converters that turn data from the user’s own disc into DS formats. A helper wraps the PS1 executable as an ELF for REA’s Ghidra lane, analysis notes name the PS1 functions and tables each part follows, and the Reddit post linking it credits REA and Claude Code. Leon’s disc 1 is reported playable, while Claire’s disc, most enemy types and some menus remain unfinished.","description_zh":"在原生 Nintendo DS 引擎中重新实现 Resident Evil 2 PS1 版的游戏规则，并用转换工具把使用者自有光盘中的数据转为 DS 格式。辅助脚本把 PS1 可执行文件包装成 ELF，供 REA 的 Ghidra 通道分析；分析笔记注明各部分所依据的 PS1 函数与数据表，链接该项目的 Reddit 帖称其借助 REA 和 Claude Code 完成。据报告 Leon 第一张光盘已可游玩，Claire 光盘、多数敌人类型和部分菜单仍未完成。","entry_url":"https://awesomerea.org/resources/re2ds-nds-engine-case/","entry_url_zh":"https://awesomerea.org/zh/resources/re2ds-nds-engine-case/","evidence_url":"https://github.com/eray1605/re2ds/blob/f1e120ec50f6b072d7283a2d3dd35611d656c9b7/README.md","group":"rea","id":"re2ds-nds-engine-case","json_url":"https://awesomerea.org/resources/re2ds-nds-engine-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/re2ds-nds-engine-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/re2ds-nds-engine-case/index.md","name":"re2ds: a native Nintendo DS engine for Resident Evil 2","name_zh":"re2ds：Resident Evil 2 的原生 Nintendo DS 引擎","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed commit targets the PAL PS1 release (SLES-00972), disc 1 with Leon. README reports all 125 disc 1 rooms, a script interpreter covering every opcode used on that disc, zombies, the lower-screen status menu, sound, voices, the opening movies and typewriter saves; it lists the map and files, other enemy types, the remaining movies and Claire’s disc as missing. It is a native engine, not an emulator, a matching decompilation or a complete port.","Requires the user’s own Resident Evil 2 PAL disc 1 as a .bin/.cue dump, of which only Track 1 is used; local conversion produces about 290 MB of DS data. The repository states that it contains no game data and that the generated build/, nitrofiles/ and re2ds.nds outputs contain Capcom data that must never be committed or shared.","Building uses devkitARM and libnds (devkitPro nds-dev), Python 3, FFmpeg with its development libraries, a C compiler and pkg-config. Windows builds run in WSL Ubuntu, and make falls back to devkitPro’s Docker image when no local devkitARM is found. The README plays the ROM in melonDS, needs DLDI SD-card setup for saves and shows a photo captioned as running on a Nintendo DSi XL.","Host tests compile the platform-independent script, enemy and cutscene code for a PC and run it against the user’s converted data; the script test reports unknown opcodes, and scd_disasm.py --check validates jump targets across rooms. Analysis notes cite PS1 addresses and mark observed versus assumed behavior. psxexe_to_elf.py wraps the executable and symbol lists as a MIPS ELF accepted by REA’s Ghidra lane; Claude Code use is stated only in the Reddit post.","No license file is present at the reviewed commit. The README credits the MIT-licensed OpenBiohazard2 reimplementation’s file-format work and script opcode table as the starting point for several converters. Capcom’s game data, movies and audio stay outside the repository and retain their own rights."],"requirements_zh":["所审阅的提交针对 PS1 PAL 版（SLES-00972）的第一张光盘，即 Leon 篇。README 报告已覆盖第一张光盘的全部 125 个房间、可执行该光盘所用全部操作码的脚本解释器、丧尸、下屏状态菜单、音效、语音、开场动画及打字机存档；同时列出地图与文件、其他敌人类型、其余动画以及 Claire 光盘仍缺失。这是原生引擎，不是模拟器、匹配反编译或完整移植。","需要使用者自有的 Resident Evil 2 PAL 第一张光盘的 .bin/.cue 镜像，且只使用 Track 1；本地转换会生成约 290 MB 的 DS 数据。仓库声明不含任何游戏数据，并说明生成的 build/、nitrofiles/ 及 re2ds.nds 含有 Capcom 的数据，绝不能提交或分享。","构建需要 devkitARM 与 libnds（devkitPro nds-dev）、Python 3、FFmpeg 及其开发库、C 编译器和 pkg-config。Windows 下在 WSL Ubuntu 中构建；未找到本地 devkitARM 时，make 会改用 devkitPro 的 Docker 镜像。README 使用 melonDS 运行 ROM，存档需要设置 DLDI SD 卡，并附有一张标注为在 Nintendo DSi XL 上运行的照片。","宿主测试会在 PC 上编译与平台无关的脚本、敌人和过场代码，并以使用者转换出的数据运行；脚本测试会报告未知操作码，scd_disasm.py --check 会校验所有房间的跳转目标。分析笔记引用 PS1 地址，并区分观察所得与推测的行为。psxexe_to_elf.py 把可执行文件和符号列表包装成 REA 的 Ghidra 通道可接受的 MIPS ELF；Claude Code 的使用只见于 Reddit 帖。","所审阅的提交中没有许可证文件。README 说明，若干转换工具以采用 MIT 许可的 OpenBiohazard2 重新实现项目的文件格式成果和脚本操作码表为起点。Capcom 的游戏数据、动画和音频不在仓库中，仍受其各自权利约束。"],"targets":["game"],"url":"https://github.com/eray1605/re2ds","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/dobest1024/rea-workspace-template/blob/fc15b9a4ba2a8b40510d19a2dd80209f665711c5/docs/VALIDATION.md","https://github.com/dobest1024/rea-workspace-template/blob/fc15b9a4ba2a8b40510d19a2dd80209f665711c5/docs/SOURCES.md","https://github.com/dobest1024/rea-workspace-template/blob/fc15b9a4ba2a8b40510d19a2dd80209f665711c5/AGENTS.md","https://github.com/dobest1024/rea-workspace-template/blob/fc15b9a4ba2a8b40510d19a2dd80209f665711c5/.mcp.json","https://github.com/dobest1024/rea-workspace-template/blob/fc15b9a4ba2a8b40510d19a2dd80209f665711c5/.codex/config.toml","https://github.com/dobest1024/rea-workspace-template/blob/fc15b9a4ba2a8b40510d19a2dd80209f665711c5/.claude/settings.json","https://github.com/dobest1024/rea-workspace-template/blob/fc15b9a4ba2a8b40510d19a2dd80209f665711c5/scripts/workspace.py","https://github.com/dobest1024/rea-workspace-template/blob/fc15b9a4ba2a8b40510d19a2dd80209f665711c5/scripts/sanitize_har.py","https://github.com/dobest1024/rea-workspace-template/blob/fc15b9a4ba2a8b40510d19a2dd80209f665711c5/prompts/02-reconstruct-api.md","https://github.com/dobest1024/rea-workspace-template/blob/fc15b9a4ba2a8b40510d19a2dd80209f665711c5/prompts/04-native.md"],"category":"community-integrations","description_en":"A clone-first Chinese workspace template for analyzing one target per workspace with REA from Claude Code or Codex. It ships project-level REA MCP settings, agent rules that require CONFIRMED/GUESS labels with evidence locations, seven task prompts and standard-library scripts that hash imported originals, stage writable copies and strip values from HAR captures. It organizes analysis rather than performing it, and its acceptance run used only synthetic samples.","description_zh":"一个可直接克隆的中文工作区模板，用于在 Claude Code 或 Codex 中借助 REA，按“一个目标一个工作区”开展分析。它提供项目级 REA MCP 配置、要求结论标注 CONFIRMED／GUESS 并附证据位置的智能体规则、七套任务提示词，以及仅依赖标准库的脚本：为导入的原件生成哈希基线、创建可写分析副本，并去除 HAR 抓包中的取值。它负责组织分析而非完成分析，其验收只使用了合成样本。","entry_url":"https://awesomerea.org/resources/rea-workspace-template/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-workspace-template/","evidence_url":"https://github.com/dobest1024/rea-workspace-template/blob/fc15b9a4ba2a8b40510d19a2dd80209f665711c5/README.md","group":"rea","id":"rea-workspace-template","json_url":"https://awesomerea.org/resources/rea-workspace-template/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/rea-workspace-template/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-workspace-template/index.md","name":"REA Workspace Template","name_zh":"REA 工作区模板","record_type":"resource","relationship":"community-integration","requirements":["The reviewed pin is the repository’s only commit, dated 2026-10-17. It needs Git, Python 3.11+, Node.js with npm, and Claude Code or Codex; README installs rea-agents 6.4.0, the version it was validated with, and the bundled .mcp.json and .codex/config.toml both start a locally installed rea --mcp. The template supplies no REA program, decompiler or model configuration, and it adapts workflow ideas from a third-party post.","Engines are separate: APK DEX work needs JADX and a full JDK, native targets need a Ghidra, Hopper or IDA provider configured through REA’s installation guide, and commercial engines need their own licenses; source, JS/Electron and saved-HAR workflows need no native decompiler. The prompts cover source mapping, API reconstruction from a sanitized HAR to OpenAPI 3.1 and a TypeScript client, JavaScript, native binaries (at most 30 functions per round), APKs, unknown file formats and session handoff.","scripts/workspace.py copies one target into a Git-ignored target/ directory without running it, records SHA-256 baselines, sets files to 0444, rejects symlinks and special files, and creates a writable work/ copy; verify reports changed, added or missing files. sanitize_har.py rebuilds a structural HAR copy, removing header values, cookies, URL credentials and query strings and replacing JSON values with placeholders. README warns that hosts, paths and field names can still identify users and need manual review.","docs/VALIDATION.md (2026-10-17) reports 12 passing standard-library tests, a healthy rea mcp doctor run listing 170 tools, and REA static analysis of a synthetic JavaScript app and a synthetic HAR with Node 24.18.0 and Python 3.12.7. It lists client MCP connection after restart, real APK and native targets, real-HAR anonymization and runtime work as unverified, and its smoke-test outputs are not committed.","README states that the Claude Code permission rules, read-only file modes and SHA-256 baselines are not an isolation boundary, and recommends read-only mounts and controlled networking where strong isolation is needed. AGENTS.md defaults to static analysis and reserves running samples, connecting devices and contacting target services for authorized tasks. The repository has no license file, so reuse terms are unstated; REA, analysis engines, clients and targets keep their own terms."],"requirements_zh":["所审阅的固定版本是该仓库唯一的提交，日期为 2026-10-17。使用前需安装 Git、Python 3.11+、Node.js 与 npm，以及 Claude Code 或 Codex；README 安装其验证过的 rea-agents 6.4.0，随附的 .mcp.json 与 .codex/config.toml 均启动本机已安装的 rea --mcp。模板不提供 REA 程序、反编译器或模型配置；它借鉴了一篇第三方帖子的工作思路。","分析引擎需另行准备：APK 的 DEX 分析需要 JADX 与完整 JDK，原生目标需要按 REA 安装文档配置 Ghidra、Hopper 或 IDA 等 provider，商业引擎需自备许可证；源码、JS／Electron 与已保存 HAR 的流程无需原生反编译器。提示词涵盖源码地图、从已脱敏 HAR 重建 OpenAPI 3.1 与 TypeScript 客户端、JavaScript、原生二进制（每轮最多深入 30 个函数）、APK、未知文件格式及会话交接。","scripts/workspace.py 将单个目标复制到被 Git 忽略的 target/ 目录且不运行它，记录 SHA-256 基线、把文件设为 0444、拒绝软链接和特殊文件，并创建可写的 work/ 副本；verify 会报告被修改、新增或缺失的文件。sanitize_har.py 重新生成只保留结构的 HAR 副本，去除 header 取值、cookie、URL 凭据与查询参数，并把 JSON 取值替换为占位值。README 提醒主机名、路径和字段名仍可能识别用户，需要人工复查。","docs/VALIDATION.md（2026-10-17）报告：12 项标准库测试通过，rea mcp doctor 运行健康并列出 170 个工具，并在 Node 24.18.0 与 Python 3.12.7 下用 REA 静态分析了一个合成 JavaScript 应用和一个合成 HAR。文档将客户端重启后的 MCP 接入、真实 APK 与原生目标、真实 HAR 的匿名化以及运行时工作列为未验证，冒烟测试输出也未提交。","README 说明 Claude Code 权限规则、只读文件权限和 SHA-256 基线都不构成隔离边界，需要强隔离时建议使用只读挂载和受控网络。AGENTS.md 默认只做静态分析，仅在任务获得授权时才运行样本、连接设备或访问目标服务。仓库没有许可证文件，复用条款未作说明；REA、分析引擎、客户端与分析目标各有其条款。"],"targets":["app","binary","website"],"url":"https://github.com/dobest1024/rea-workspace-template","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/9daa5c8b3b8871fd643df636413f7d9e74520669/skills/rea-reconstruction-companion/SKILL.md","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/9daa5c8b3b8871fd643df636413f7d9e74520669/INSTALL.md","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/9daa5c8b3b8871fd643df636413f7d9e74520669/integration/rea-companion.md","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/9daa5c8b3b8871fd643df636413f7d9e74520669/evals/README.md","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/9daa5c8b3b8871fd643df636413f7d9e74520669/evals/artifact/README.md","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/9daa5c8b3b8871fd643df636413f7d9e74520669/.github/workflows/test.yml","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/9daa5c8b3b8871fd643df636413f7d9e74520669/package.json","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/9daa5c8b3b8871fd643df636413f7d9e74520669/LICENSE","https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/9daa5c8b3b8871fd643df636413f7d9e74520669/evals/fixtures/wycheproof-LICENSE.txt"],"category":"community-integrations","description_en":"A third-party Agent Skill that works alongside REA’s own skill to turn reverse-engineering evidence into scoped requirements, design, staged implementation and validation, from one feature or format to a whole app. An optional installer can add a marked routing block to the user’s REA SKILL.md so that relevant reconstruction requests load both skills. Its bundled evaluation kit consists of source-exposed, maintainer-authored examples with literal oracles, not a model benchmark.","description_zh":"第三方 Agent Skill，与 REA 自身的技能配合使用，把逆向分析证据整理成限定范围的需求、设计、分阶段实现与验证，范围可从单个功能或格式扩展到整个应用。可选安装程序能在用户的 REA SKILL.md 中加入带标记的路由段落，使相关重建请求同时加载两个技能。附带的评估套件由维护者编写、已接触源码的示例及字面预期值组成，并非模型基准。","entry_url":"https://awesomerea.org/resources/rea-reconstruction-companion/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-reconstruction-companion/","evidence_url":"https://github.com/ShadowSwaps/REA-Reconstruction-Companion/blob/9daa5c8b3b8871fd643df636413f7d9e74520669/README.md","group":"rea","id":"rea-reconstruction-companion","json_url":"https://awesomerea.org/resources/rea-reconstruction-companion/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/rea-reconstruction-companion/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-reconstruction-companion/index.md","name":"REA Reconstruction Companion","name_zh":"REA Reconstruction Companion 重建配套技能","record_type":"resource","relationship":"community-integration","requirements":["The reviewed pin is package version 1.3.27; the repository was created on 2026-10-15, and a v1.3.27 release followed on 2026-10-18. The core is plain-Markdown Agent Skills instructions with reference guides. It supplies no analysis engine and expects REA tools or supplied REA evidence for actual investigation. README documents Codex and Claude Code installation; other agents can use an explicit skills directory.","The installer and the optional weekly update helper need Node.js 20+ and only its standard library; release building needs Python 3.10+. With --integration on, the installer edits the selected REA SKILL.md between marked comments and keeps backups, while off leaves REA untouched. README warns that REA 6.5.0’s doctor reports the edited skill as stale, and that rea setup or rea update can remove the block.","The instructions forbid actions that could add charges, treat recovered target material as untrusted evidence, and require observations, inferences, unknowns and design choices to stay separate. These are instructions to the host agent, not enforcement: README says they do not override client policies, grant tool permissions or guarantee model compliance.","CI runs the installer, package-integrity and evaluation-harness tests on Windows, macOS and Linux with Node 20, 22 and 24, then builds and verifies a release archive. The evaluation kit supplies fixtures such as Pocket Tasks, a 5,120-byte .NET Parcel.exe built from included source, a browser app and file formats, with literal oracles and human-review rubrics. Its examples are disclosed as source-exposed and same-agent; no live model trial, independent evaluation or cross-host certification is recorded.","Original code, instructions, tests and documentation are MIT, and a small Wycheproof test-data subset is Apache-2.0. No REA code is bundled; REA, target applications and model hosts keep their own terms."],"requirements_zh":["所审阅的固定版本对应包版本 1.3.27；仓库创建于 2026-10-15，v1.3.27 版于 2026-10-18 发布。核心是 Agent Skills 格式的纯 Markdown 指令及参考指南。它不提供分析引擎，实际调查需依靠 REA 工具或现成的 REA 证据。README 说明了 Codex 与 Claude Code 的安装方式，其他智能体可通过显式指定的技能目录使用。","安装程序和可选的每周更新助手需 Node.js 20+，只使用其标准库；构建发布包需 Python 3.10+。选择 --integration on 时，安装程序会在所选 REA SKILL.md 的标记注释之间写入内容并保留备份；选择 off 则不改动 REA。README 提醒，REA 6.5.0 的 doctor 会把改动后的技能报告为过期，rea setup 或 rea update 也可能移除这段内容。","指令禁止可能产生额外费用的操作，把恢复出的目标材料视为不可信证据，并要求区分观察、推断、未知项与设计选择。这些只是对宿主智能体的指令，并无强制效力：README 说明它们不会覆盖客户端策略、授予工具权限或保证模型遵从。","CI 在 Windows、macOS 和 Linux 上以 Node 20、22、24 运行安装程序、包完整性与评估框架测试，然后构建并校验发布归档。评估套件提供 Pocket Tasks、一个由所附源码构建的 5,120 字节 .NET Parcel.exe、一个浏览器应用及若干文件格式等测试对象，配有字面预期值和人工审阅评分标准。其示例明确说明已接触源码且由同一智能体完成；未记录真实模型试验、独立评估或跨宿主认证。","原创代码、指令、测试和文档采用 MIT，一小部分 Wycheproof 测试数据采用 Apache-2.0。仓库不包含 REA 代码；REA、目标应用和模型宿主仍受各自条款约束。"],"targets":["app","binary"],"url":"https://github.com/ShadowSwaps/REA-Reconstruction-Companion","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-20","additional_evidence_urls":["https://x.com/Noflag404/status/2111625626893660269","https://x.com/Noflag404/status/2111626304097538278"],"category":"community-case-studies","description_en":"An unofficial field study that reads REA's source and then drives the running server through 1,012 recorded calls across 27 artifact classes, measuring its content-addressed Evidence records, revision-chained unknown ledger, typed refusals, cold starts and response limits. The author maps those mechanisms onto vulnerability-research agents as an argument for not overclaiming. It evaluates REA's tool surface; it is not a reconstruction or a vulnerability finding.","description_zh":"一篇非官方的实测研究：先阅读 REA 源码，再在 27 类分析对象上对运行中的服务器发出 1,012 次有记录的调用，测量其按内容寻址的 Evidence 记录、按修订串联的未知项台账、带类型的拒绝、冷启动及响应上限。作者把这些机制对应到漏洞研究智能体上，论证为何不应过度声称结论。它评估的是 REA 的工具接口，而非重建案例或漏洞发现。","entry_url":"https://awesomerea.org/resources/noflag-rea-evidence-architecture-study/","entry_url_zh":"https://awesomerea.org/zh/resources/noflag-rea-evidence-architecture-study/","evidence_url":"https://no-flag.com/2026/10/18/REA-paper/","group":"rea","id":"noflag-rea-evidence-architecture-study","json_url":"https://awesomerea.org/resources/noflag-rea-evidence-architecture-study/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/noflag-rea-evidence-architecture-study/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/noflag-rea-evidence-architecture-study/index.md","name":"Show Your Work: a measured dissection of REA's evidence architecture","name_zh":"Show Your Work：对 REA 证据架构的实测剖析","record_type":"resource","relationship":"community-reported-mixed-workflow","requirements":["Published 2026-10-18 on the author's HackThe4O4 blog under the byline Noflag, who calls it unofficial, not peer-reviewed and unaffiliated with REA's maintainers, and says the official source wins where they disagree. The main study used the published rea-agents 6.5.0 package for 993 of the 1,012 calls; 19 calls comparing two deep providers ran a build of commit fe2a398dd, 286 commits later.","All runs used one Debian-derived Linux VM (4 vCPU, 7.9 GB RAM) with operator-supplied engines, including a headless Ghidra 12.x decompiler, GDB, Rizin, a packet dissector, firmware tools, headless Chromium and Electron; the Android device was a container sharing the host kernel. The decompiler startup deadline was raised to 1,200 s, and macOS-only tools, a GUI-attached disassembler's cursor tools and an unlicensed commercial Java decompiler could not be exercised.","The author reports calling all 207 advertised tools, 178 with at least one success, and 454 Evidence-bearing replies. Oversized replies were refused with a retained-Evidence pointer, but a 10.1 MiB request dropped the connection without a reply. Decompiler cold starts ranged from 14 s to 827 s, and two schema switches cut the default 3.09 MB tool catalog to 215 KB.","Timings come from one lightly loaded VM and are offered as orders of magnitude. The calls came from the author's scripted campaign driver acting as an informed caller, and the article names no analyzed targets. The security-agent mapping is presented as argument, not a built system. Per-call records, campaign files and scripts are described as accompanying the research but are not linked from the page.","This evaluates REA's evidence model and tool surface; no reconstruction, exploit or vulnerability is reported. The page states no license; REA, the third-party engines and the analyzed artifacts keep their own terms."],"requirements_zh":["文章于 2026-10-18 发布在作者的 HackThe4O4 博客，署名 Noflag。作者称其为非官方、未经同行评审、与 REA 维护者无关的研究，并表示与官方来源不一致时以官方为准。主研究的 1,012 次调用中有 993 次使用已发布的 rea-agents 6.5.0 软件包；另有 19 次比较两个深度分析提供方的调用，运行的是晚 286 个提交的 fe2a398dd 构建。","所有运行都在一台 Debian 系 Linux 虚拟机（4 个 vCPU、7.9 GB 内存）上进行，分析引擎由操作者自备，包括无界面的 Ghidra 12.x 反编译器、GDB、Rizin、数据包解析器、固件工具、无界面 Chromium 和 Electron；Android 设备是与宿主共享内核的容器。反编译器的启动时限被调高到 1,200 秒；仅限 macOS 的工具、依赖图形界面反汇编器光标的工具，以及未获授权的商业 Java 反编译器均无法测试。","作者报告调用了全部 207 个已公布工具，其中 178 个至少成功一次，共有 454 次回复带有 Evidence 记录。超大的回复会被拒绝并附上已保留 Evidence 的引用，但 10.1 MiB 的请求会在无回复的情况下断开连接。反编译器冷启动耗时从 14 秒到 827 秒不等；两个模式开关可将默认 3.09 MB 的工具目录缩小到 215 KB。","耗时数据来自一台轻负载虚拟机，仅作数量级参考。调用由作者编写的脚本化测试驱动程序以熟悉接口的调用方身份发出，文章也未说明具体分析对象。对安全智能体的对应分析属于论证，而非已构建的系统。文中称逐次调用记录、测试配置和脚本随研究提供，但页面并未给出链接。","本文评估的是 REA 的证据模型与工具接口，未报告任何重建、漏洞利用或漏洞。页面未声明许可；REA、第三方引擎及被分析对象保留各自条款。"],"targets":["binary"],"url":"https://no-flag.com/2026/10/18/REA-paper/","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-27","additional_evidence_urls":["https://x.com/i/status/2110963427791487391"],"category":"community-case-studies","description_en":"A Chinese article breaks three versions of a Python CSV exporter that reproduces the Notes teaching app shipped with REA. It shows that a simple export-and-read-back test passes all three, while byte comparisons against the official JavaScript formatter on 215 fixed inputs catch each one. The author also connects REA 6.5.0 over MCP, reruns its JavaScript analysis and checks that an edited evidence record is rejected on import; this is a study of acceptance checks, not a new reconstruction.","description_zh":"一篇中文文章把复刻 REA 自带 Notes 教学应用的 Python CSV 导出器故意改坏三个版本，展示简单的“导出再读回”测试能让三者全部通过，而以官方 JavaScript 格式化函数为参照、在 215 组固定输入上逐字节比较则能逐一识破。作者还通过 MCP 连接 REA 6.5.0，重新运行其 JavaScript 分析，并验证被改动的证据记录在导入时会被拒绝；这是对验收检查的研究，而非新的重建。","entry_url":"https://awesomerea.org/resources/rea-notes-csv-oracle-mutation-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-notes-csv-oracle-mutation-case/","evidence_url":"https://x.com/i/article/2110962506604929025","group":"rea","id":"rea-notes-csv-oracle-mutation-case","json_url":"https://awesomerea.org/resources/rea-notes-csv-oracle-mutation-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rea-notes-csv-oracle-mutation-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-notes-csv-oracle-mutation-case/index.md","name":"Notes CSV export: an author-reported REA check of reconstruction oracles","name_zh":"Notes CSV 导出：作者报告的 REA 重建验收器检查","record_type":"resource","relationship":"community-reported-mixed-workflow","requirements":["The 2026-10-16 article by @superfang119 follows the author’s earlier walkthrough, in which a Python reimplementation of the Notes app’s CSV export reportedly matched the original byte for byte on 215 inputs. It used Windows, Node 22.19.0 and rea-agents 6.5.0 through a temporary stdio client that listed 207 tools; the JavaScript analysis returned 6 files, 32 nodes and 45 edges. The author notes that this static graph locates the export path.","The frozen byte contract quotes every title, doubles inner quotes and ends lines and the file with LF, for safe-integer ids and string titles. Each mutant changes one rule: quoting only when needed, leaving inner quotes unescaped, or dropping the final LF. A one-note read-back test passed all three. Against references from running the official JavaScript formatter on 15 fixed edge cases and 200 seeded inputs, the baseline matched 215/215 and the mutants differed on 26, 166 and 215 inputs.","Changing one evidence field from 6 to 999 while keeping its evidence_id made the same REA server reject the import with evidence_integrity_mismatch and leave session evidence unchanged; the author adds that this detects tampering but cannot show an interpretation is correct. The article also cites, without rerunning it, a TH08 project fix in which a comparator missed a 128.0 constant written as 0.0.","Analysis and implementation ran in the same Codex context, so the author states this is not clean-room separation, and the handoff prompts offered are proposals rather than a tested protocol. Scripts, mutants and outputs are not published; the three probes do not cover permissions, write failures, concurrency or the full interface. The target is REA’s own teaching sample, not a third-party product."],"requirements_zh":["这篇 2026-10-16 的文章由 @superfang119 撰写，承接作者此前的实测：其中 Notes 应用 CSV 导出功能的 Python 复刻版据称在 215 组输入上与原版逐字节一致。本次环境为 Windows、Node 22.19.0 和 rea-agents 6.5.0，经由临时 stdio 客户端连接，服务端列出 207 个工具；JavaScript 分析返回 6 个文件、32 个节点和 45 条边。作者指出，这张静态图能定位导出路径。","冻结的字节契约要求每个标题都加双引号、标题内部的双引号写成两个，行尾和文件末尾都使用 LF，输入限定为安全整数 id 和字符串标题。三个变异版本各只改一条规则：仅在需要时加引号、不转义内部引号、删去末尾 LF。单条笔记的读回测试让三者全部通过。以官方 JavaScript 格式化函数在 15 组固定边界输入和 200 组固定种子输入上的输出为参照，基线 215/215 一致，三个变异版本分别有 26、166 和 215 组不一致。","把一条证据中的字段从 6 改为 999 并保留其 evidence_id 后，同一个 REA 服务端以 evidence_integrity_mismatch 拒绝导入，会话证据保持不变；作者补充说，这能发现篡改，却不能证明解释正确。文章还引用了 TH08 项目的一次修复：比较器曾漏掉一个被写成 0.0 的 128.0 常量，作者未重新运行该项目。","分析与实现在同一个 Codex 上下文中完成，作者明确表示这不是洁净室隔离，文中的交接提示词只是建议，并非经过测试的流程。脚本、变异版本和输出均未公开；三个探针也不覆盖权限、写盘失败、并发或完整界面。分析对象是 REA 自带的教学示例，而非第三方产品。"],"targets":["app"],"url":"https://x.com/i/article/2110962506604929025","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/codegeeksai/codegeeksai.github.io/blob/8384782c20b1636362495b9505f1bd597ff5941b/src/content/posts/en/static-malware-analysis-rea-codex.md","https://codegeeksai.github.io/it/blog/analisi-statica-malware-rea-codex/","https://github.com/codegeeksai/codegeeksai.github.io/blob/8384782c20b1636362495b9505f1bd597ff5941b/src/content/posts/it/analisi-statica-malware-rea-codex.md"],"category":"community-case-studies","description_en":"Fedele Mantuano reports using Codex with REA in an offline Docker lab to statically analyze a public Windows malware sample without executing it. The article separates behavior supported by the extracted JavaScript bundle from claims that would depend on remote components that were never obtained, and reclassifies a suspected infostealer as a loader. It is a defensive analysis case built on an author-reviewed agent report, not a reconstruction or a dynamic detonation.","description_zh":"Fedele Mantuano 报告在离线 Docker 实验环境中让 Codex 借助 REA，对一个公开的 Windows 恶意软件样本做静态分析，全程不执行样本。文章区分了提取出的 JavaScript 代码包能够支持的行为与依赖从未获取的远程组件的推断，并将原本疑为信息窃取程序的样本重新归类为加载器。这是以作者审阅过的智能体报告为基础的防御性分析案例，不是重建，也不是动态引爆分析。","entry_url":"https://awesomerea.org/resources/windows-loader-static-analysis-case/","entry_url_zh":"https://awesomerea.org/zh/resources/windows-loader-static-analysis-case/","evidence_url":"https://codegeeksai.github.io/en/blog/static-malware-analysis-rea-codex/","group":"rea","id":"windows-loader-static-analysis-case","json_url":"https://awesomerea.org/resources/windows-loader-static-analysis-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/windows-loader-static-analysis-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/windows-loader-static-analysis-case/index.md","name":"Windows loader: static malware analysis with REA and Codex","name_zh":"Windows 加载器：借助 REA 与 Codex 的静态恶意软件分析","record_type":"resource","relationship":"community-reported-mixed-workflow","requirements":["The Code Geeks article by Fedele Mantuano is dated 2026-10-18, with an Italian version, and reports an analysis performed on 2026-10-17. Codex was asked to use REA on one Windows x64 executable obtained from MalwareBazaar and to write a Markdown report on files, processes, persistence, network destinations, updates, defensive indicators and limits. The agent’s technical report, artifacts and code references are not published; the author offers further details privately.","Analysis ran in a Linux/amd64 Docker Desktop container with REA 6.5.0 and Node 24.22.0, no network, a read-only root filesystem and sample mount, an unprivileged user and dropped capabilities. Neither the sample nor extracted code was executed, and Wine was not used; the author notes that Codex still communicated with its model service while the container was offline. The appendix separately documents a macOS Apple Silicon setup of REA 6.5.0, Ghidra 12.1.4, Temurin JDK 25.0.4.1 and Node.js 24.21.0 connected to Codex over MCP with the REA skill; it was not repeated on a clean Mac or tested on other hosts.","After initial PE inspection, work focused on a JavaScript bundle extracted from the executable’s embedded Bun runtime; the roughly 98 MB native executable was not fully decompiled. The author reports analyst-written decoders for the bundle’s layered string obfuscation, run without evaluating the sample’s code, and spot checks of hashes, the extraction range and decoded tables, partly against an independent Python implementation. These checks support specific findings.","The author reclassifies the suspected infostealer as a loader: its code supports host and screenshot collection, encrypted reporting, download and in-memory loading of further components, and server changes through fixed fallbacks and a remote lookup, with no DGA found in the bundle. Those further components were not obtained, so mining, credential theft, persistence and execution on a victim system remain unestablished, and one reported initialization inconsistency is left for dynamic verification. The article’s threat-intelligence pipeline is a proposed use, not an implemented or measured one.","Handling live malware needs an isolated lab and the analyst’s own authorization. The article credits REA, Ghidra and Codex together and relies on an agent-written report reviewed by the author. The pinned blog repository has no license file; REA, Ghidra, Codex and the model service keep their own terms."],"requirements_zh":["Code Geeks 上这篇由 Fedele Mantuano 撰写的文章标注日期为 2026-10-18，另有意大利文版本，所述分析于 2026-10-17 完成。作者要求 Codex 使用 REA 检查一个取自 MalwareBazaar 的 Windows x64 可执行文件，并撰写 Markdown 报告，涵盖文件、进程、持久化、网络目标、更新、防御指标与局限。智能体生成的技术报告、产物和代码引用均未公开；作者表示可私下提供更多细节。","分析在 Docker Desktop 的 Linux/amd64 容器中进行，使用 REA 6.5.0 与 Node 24.22.0，无网络，根文件系统与样本挂载均为只读，以非特权用户运行并移除 capabilities。样本及提取出的代码均未执行，也未使用 Wine；作者指出容器离线时 Codex 仍在与模型服务通信。附录另行记录了在 macOS Apple Silicon 上安装 REA 6.5.0、Ghidra 12.1.4、Temurin JDK 25.0.4.1 与 Node.js 24.21.0，并通过 MCP 和 REA 技能接入 Codex 的步骤；该流程未在全新 Mac 上重做，也未在其他宿主上测试。","初步检查 PE 后，工作集中于从该可执行文件内嵌 Bun 运行时中提取的 JavaScript 代码包；约 98 MB 的原生可执行文件未被完整反编译。作者报告使用分析人员编写的解码器处理代码包的多层字符串混淆，过程中不运行样本代码，并抽查了哈希、提取范围和解码表，部分结果与独立的 Python 实现对照。这些检查支持具体结论。","作者将原本疑为信息窃取程序的样本重新归类为加载器：其代码支持收集主机信息与截图、加密回传、下载并在内存中加载后续组件，以及通过固定备用地址和远程查询更换服务器，且代码包中未发现 DGA。这些后续组件未获取，因此挖矿、凭据窃取、持久化以及在受害系统上的实际执行均未确立；报告中一处初始化不一致之处留待动态验证。文中的威胁情报流水线只是设想用途，并未实现或测量。","处理真实恶意软件需要隔离实验环境及分析者自身获得的授权。文章将成果归于 REA、Ghidra 与 Codex 的共同使用，并依赖经作者审阅的智能体报告。固定版本的博客仓库没有许可证文件；REA、Ghidra、Codex 及模型服务各有其条款。"],"targets":["binary"],"url":"https://codegeeksai.github.io/en/blog/static-malware-analysis-rea-codex/","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-30","additional_evidence_urls":["https://github.com/ludovic111/horizon/blob/d500f28ee4939d83d9796931b7079632b72dc948/tools/rea_vanilla.py","https://github.com/ludovic111/horizon/blob/d500f28ee4939d83d9796931b7079632b72dc948/CONTRIBUTING.md","https://github.com/ludovic111/horizon/blob/d500f28ee4939d83d9796931b7079632b72dc948/research-lock.json","https://github.com/ludovic111/horizon/blob/d500f28ee4939d83d9796931b7079632b72dc948/docs/parity-workflow.md","https://github.com/ludovic111/horizon/blob/d500f28ee4939d83d9796931b7079632b72dc948/.github/workflows/ci.yml","https://github.com/ludovic111/horizon/tree/d500f28ee4939d83d9796931b7079632b72dc948/mods/horizon","https://github.com/ludovic111/horizon/blob/d500f28ee4939d83d9796931b7079632b72dc948/THIRD_PARTY_NOTICES.md","https://github.com/ludovic111/horizon/blob/d500f28ee4939d83d9796931b7079632b72dc948/LICENSE","https://github.com/ludovic111/horizon/releases/tag/v2026.10.19.12","https://www.npmjs.com/package/rea-agents/v/6.4.0"],"category":"community-case-studies","description_en":"Rewrites Minecraft: Java Edition 26.3 as a native Rust client, dedicated server and launcher that prepare their resources from the user’s own copy of the game. Contributors are told to read the vanilla code first, and tools/rea_vanilla.py runs a pinned REA release with a headless JADX engine over the shipped client and server jars to inspect classes, methods and callers. Differential harnesses run Java oracles against the real game and Rust probes against Horizon; README reports all 281 passing, which covers only what they compare.","description_zh":"以原生 Rust 客户端、专用服务器和启动器重写 Minecraft: Java Edition 26.3，资源均由使用者自有的游戏副本生成。项目要求贡献者先阅读原版代码，tools/rea_vanilla.py 会调用固定版本的 REA，配合无界面 JADX 引擎分析官方发布的客户端与服务器 jar，查询类、方法及调用方。差分测试工具分别对真实游戏运行 Java 对照程序、对 Horizon 运行 Rust 探针；README 称全部 281 个测试通过，但这只涵盖它们所比较的内容。","entry_url":"https://awesomerea.org/resources/horizon-minecraft-rust-rewrite-case/","entry_url_zh":"https://awesomerea.org/zh/resources/horizon-minecraft-rust-rewrite-case/","evidence_url":"https://github.com/ludovic111/horizon/blob/d500f28ee4939d83d9796931b7079632b72dc948/README.md","group":"rea","id":"horizon-minecraft-rust-rewrite-case","json_url":"https://awesomerea.org/resources/horizon-minecraft-rust-rewrite-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/horizon-minecraft-rust-rewrite-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/horizon-minecraft-rust-rewrite-case/index.md","name":"Horizon: a Rust rewrite of Minecraft: Java Edition 26.3 with REA bytecode queries","name_zh":"Horizon：借助 REA 字节码查询的 Minecraft: Java Edition 26.3 Rust 重写","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"community-reported-mixed-workflow","requirements":["The repository was created on 2026-10-03, and the reviewed main snapshot (2026-10-19) follows the date-tagged release v2026.10.19.12. README reports a playable client on Linux, macOS (Apple Silicon) and Windows with vanilla world generation, mobs and their AI, villagers, raids, redstone, every command, Anvil saves and joining vanilla servers, and its own audit of 2026-10-13 scores every subsystem complete. Listed known issues include unsupported online-mode servers, skin and pack-icon gaps, unwired creative hotbar keys and missing attribute lines in tooltips.","Needs Minecraft: Java Edition installed with the official launcher and 26.3 played once, plus the 26.3 server jar for the first preparation; research-lock.json pins the client and server jar SHA-1 checksums. horizon-prepare (Python 3.10+ and JDK 25) builds resources from that copy into the gitignored .local/ directory. README says Horizon never downloads game files and never publishes decompiled source or prepared resources, and tools/check_public_tree.py rejects them in commits.","Players install through the Horizon launcher for Linux x86-64, macOS Apple Silicon or Windows x64, which also starts a dedicated server that needs no Java; rendering needs Vulkan on Linux and Windows. Source builds need Rust 1.90+, Python 3.10+, JDK 25 and, on Linux, the ALSA and udev headers; development and the vanilla harnesses run on Linux. tools/rea_vanilla.py needs Node.js 22.19+ and Java 17+, runs rea-agents 6.4.0 through npx unless that version is installed, and downloads jadx-headless-mcp 0.7.1 checked by SHA-256.","Each tools/test_*_parity.py harness drives the same inputs through a Java oracle under mods/horizon running the vanilla code and through a Rust probe, then compares the outputs; README says 100% means 100% of what the harnesses compare, not proof that nothing else differs. CI runs the Python and cargo tests on GitHub-hosted Linux runners and the vanilla harnesses on a self-hosted runner holding the maintainer’s copy of the game.","LICENSE applies MIT to the project’s original work; dependencies, including the wgpu-hal copy under third_party/, keep their own licences, and README says Minecraft code and assets belong to Mojang and Microsoft under the Minecraft EULA and that the project is not affiliated with them. docs/parity-workflow.md describes agents working in parallel worktrees behind a shared gate, and horizon-ctl exposes the game to AI agents as a CLI and MCP server. REA’s documented role is limited to the bytecode queries in CONTRIBUTING.md and tools/rea_vanilla.py."],"requirements_zh":["该仓库创建于 2026-10-03，所审阅的 main 快照（2026-10-19）晚于按日期标记的发行版 v2026.10.19.12。README 称客户端可在 Linux、macOS（Apple Silicon）和 Windows 上游玩，具备原版世界生成、生物及其 AI、村民、袭击、红石、全部命令、Anvil 存档以及加入原版服务器等功能；项目自己在 2026-10-13 的审核中将所有子系统评为完成。列出的已知问题包括不支持正版验证模式的服务器、皮肤和资源包图标的缺陷、创造模式快捷栏按键未接通，以及物品提示缺少属性行。","需要用官方启动器安装 Minecraft: Java Edition 并至少运行一次 26.3 版，首次准备时还需要 26.3 的服务器 jar；research-lock.json 固定了客户端和服务器 jar 的 SHA-1 校验值。horizon-prepare（需要 Python 3.10+ 和 JDK 25）从该副本生成资源，放入被 Git 忽略的 .local/ 目录。README 称 Horizon 从不下载游戏文件，也从不发布反编译源码或生成的资源，tools/check_public_tree.py 会在提交时拒绝这些内容。","玩家通过 Horizon 启动器安装，支持 Linux x86-64、macOS Apple Silicon 和 Windows x64，启动器也可启动无需 Java 的专用服务器；在 Linux 和 Windows 上渲染需要 Vulkan。从源码构建需要 Rust 1.90+、Python 3.10+、JDK 25，在 Linux 上还需要 ALSA 和 udev 开发头文件；开发和原版对照测试都在 Linux 上进行。tools/rea_vanilla.py 需要 Node.js 22.19+ 和 Java 17+，在未安装该版本时通过 npx 运行 rea-agents 6.4.0，并下载经 SHA-256 校验的 jadx-headless-mcp 0.7.1。","每个 tools/test_*_parity.py 测试都把相同输入分别交给 mods/horizon 下运行原版代码的 Java 对照程序和 Rust 探针，再比较输出；README 说明 100% 指的是测试所比较内容的 100%，并不证明其他方面没有差异。CI 在 GitHub 托管的 Linux 运行器上执行 Python 和 cargo 测试，原版对照测试则在存有维护者自有游戏副本的自托管运行器上执行。","LICENSE 对项目原创部分采用 MIT；依赖项（包括 third_party/ 下的 wgpu-hal 副本）各自保留许可证，README 声明 Minecraft 的代码和素材属于 Mojang 和 Microsoft，受 Minecraft EULA 约束，项目与二者无关。docs/parity-workflow.md 描述了多个智能体在并行工作树中经共享检查关卡提交改动，horizon-ctl 则以命令行和 MCP 服务器的形式向 AI 智能体开放游戏操作。文档中 REA 的作用仅限于 CONTRIBUTING.md 和 tools/rea_vanilla.py 所述的字节码查询。"],"targets":["game"],"url":"https://github.com/ludovic111/horizon","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-01","additional_evidence_urls":["https://az9713.github.io/untangle-rebuild/receipt/rebuild-receipt.html","https://az9713.github.io/untangle-rebuild/rebuild/index.html"],"category":"community-case-studies","description_en":"An author-documented REA/Ghidra investigation of the shipped Untangle Windows binary produces a single-page playable rebuild and a claim-by-claim grading receipt. The report separates frozen findings, a later source-code answer key and a prior-knowledge audit.","description_zh":"作者记录了以 REA/Ghidra 调查已发布的 Untangle Windows 二进制，产出单页可玩重建与逐项判定的证据收据，并分开保留冻结发现、后取的源码答案及先验知识审计。","entry_url":"https://awesomerea.org/resources/untangle-rea-evidence-rebuild-case/","entry_url_zh":"https://awesomerea.org/zh/resources/untangle-rea-evidence-rebuild-case/","evidence_url":"https://github.com/az9713/untangle-rebuild/blob/6e9925105247268befeb6faed69025dfce4778fc/README.md","group":"rea","id":"untangle-rea-evidence-rebuild-case","json_url":"https://awesomerea.org/resources/untangle-rea-evidence-rebuild-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/untangle-rea-evidence-rebuild-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/untangle-rea-evidence-rebuild-case/index.md","name":"Untangle: a browser rebuild from REA and Ghidra evidence","name_zh":"Untangle：基于 REA 与 Ghidra 证据的浏览器重建","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","testing","limits","license"],"requirements":["The recorded run uses REA 6.3.0, Ghidra 12.1.4 and Windows 11 against puzzles version 20260923.616da16; the rebuild is available as a browser page.","The reported 52/54 correct claims and L3 seed fidelity are the author's grading results; ten names absent from REA output indicate possible prior-knowledge contamination.","The 72 MB evidence export is omitted; its hash is retained. The README documents a pre-publication history rewrite and maps old commit hashes to new ones.","Original puzzle binary and source retain Simon Tatham and contributors' MIT license."],"requirements_zh":["记录使用 REA 6.3.0、Ghidra 12.1.4 和 Windows 11，目标为 puzzles 20260923.616da16；重建提供浏览器页面。","52/54 条正确及 L3 同种子一致性来自作者评分；十个未出现在 REA 输出中的名称提示可能受先验知识影响。","72 MB 证据导出未提交，仅保留哈希；README 说明发布前曾重写历史，并提供新旧提交对应关系。","原始谜题二进制与源码保留 Simon Tatham 等贡献者的 MIT 许可。"],"targets":["binary","game"],"url":"https://github.com/az9713/untangle-rebuild","verification":"source-reviewed","verified_at":"2026-11-01T16:36:25Z"},{"added_at":"2026-11-01","additional_evidence_urls":["https://www.reddit.com/r/AndroidTVApps/comments/1xa9tv3/i_had_ai_reverseengineer_tcls_browsehere_and/","https://github.com/sonalder-darlene/sofa-tv-browser/releases"],"category":"community-case-studies","description_en":"An Android TV browser follows BrowseHere's remote-control interaction design with its own implementation. The author reports using REA to inspect the BrowseHere APK and Claude to build Sofa; the repository documents APK releases, screenshots and current feature limits.","description_zh":"Android TV 浏览器以自己的实现沿用 BrowseHere 的遥控交互设计；作者报告先用 REA 检查 BrowseHere APK，再用 Claude 构建 Sofa，仓库提供 APK 发布、截图及当前功能限制。","entry_url":"https://awesomerea.org/resources/sofa-tv-browser-browsehere-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sofa-tv-browser-browsehere-case/","evidence_url":"https://github.com/sonalder-darlene/sofa-tv-browser/blob/6b3afc9544d8e7d2893ed85f184904c8382c02fb/README.md","group":"rea","id":"sofa-tv-browser-browsehere-case","json_url":"https://awesomerea.org/resources/sofa-tv-browser-browsehere-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sofa-tv-browser-browsehere-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sofa-tv-browser-browsehere-case/index.md","name":"Sofa TV Browser: a remote-friendly BrowseHere alternative","name_zh":"Sofa TV Browser：面向遥控操作的 BrowseHere 替代应用","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","attribution","limits","license"],"requirements":["Android 7.0+ with Android System WebView; APKs are linked from GitHub releases. Source builds need the documented JDK/Android SDK or Nix environment.","The author's REA attribution is in the linked Reddit report, rather than a published REA evidence bundle; this is an author-reported mixed workflow.","Tabs, reader mode, phone typing, translations and user scripts are listed as missing or planned. DRM playback and frame-rate switching depend on the TV and WebView.","GPL-3.0-only; the README states that BrowseHere code, assets and text are not included. Third-party components retain their own notices."],"requirements_zh":["需要 Android 7.0+ 和 Android System WebView；GitHub releases 提供 APK，源码构建需要文档列出的 JDK/Android SDK 或 Nix 环境。","REA 使用归因来自所链接的作者 Reddit 报告，未发布 REA 证据包；属于作者报告的混合工具工作流。","标签页、阅读模式、手机输入、翻译和用户脚本仍缺失或待实现；DRM 播放与帧率切换取决于电视和 WebView。","采用 GPL-3.0-only；README 声明不含 BrowseHere 的代码、素材及文字，第三方组件保留各自许可说明。"],"targets":["app"],"url":"https://github.com/sonalder-darlene/sofa-tv-browser","verification":"source-reviewed","verified_at":"2026-11-01T16:36:25Z"},{"added_at":"2026-11-01","category":"community-case-studies","description_en":"A REA/Ghidra report studies the Ubuntu netcat-openbsd 1.234-1 ELF binary and publishes evidence envelopes, decompiled functions and a function inventory. Its output is a static investigation, rather than a rebuilt netcat application.","description_zh":"REA/Ghidra 报告研究 Ubuntu netcat-openbsd 1.234-1 ELF 二进制，公开证据封套、反编译函数及函数清单；产物是静态调查，而非重建后的 netcat 应用。","entry_url":"https://awesomerea.org/resources/netcat-openbsd-rea-static-case/","entry_url_zh":"https://awesomerea.org/zh/resources/netcat-openbsd-rea-static-case/","evidence_url":"https://github.com/NullLabTests/OpenBSD_netcat_REA/blob/cc1870d34e83bad0b8a6ca2489f6fa177efa6a2a/README.md","group":"rea","id":"netcat-openbsd-rea-static-case","json_url":"https://awesomerea.org/resources/netcat-openbsd-rea-static-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/netcat-openbsd-rea-static-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/netcat-openbsd-rea-static-case/index.md","name":"OpenBSD netcat: static REA and Ghidra investigation","name_zh":"OpenBSD netcat：REA 与 Ghidra 静态调查","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","limits","scope","license"],"requirements":["Reproducing the documented analysis needs the target package binary, REA, Ghidra 12.1.x and JDK 21; the README records additional pwntools tooling.","The author explicitly reports no target execution or dynamic analysis. Function roles remain inferred, and compiler inlining or hot/cold splitting obscures boundaries.","Upstream netcat.c was consulted for function naming; recovered pseudocode is not an independently reconstructed or behaviorally validated program.","Analysis and documentation use MIT; upstream BSD attribution is retained in NOTICE."],"requirements_zh":["复做文档中的分析需要目标软件包二进制、REA、Ghidra 12.1.x 和 JDK 21；README 还列出 pwntools 工具环境。","作者明确未执行目标或开展动态分析；函数角色仍含推断，编译器内联及冷热分割会模糊函数边界。","作者参考上游 netcat.c 为函数命名；恢复的伪代码并非独立重建或经过行为验证的程序。","分析与文档采用 MIT，NOTICE 保留上游 BSD 署名。"],"targets":["binary"],"url":"https://github.com/NullLabTests/OpenBSD_netcat_REA","verification":"source-reviewed","verified_at":"2026-11-01T16:36:25Z"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/dmytrobsp/fastview-rea/releases"],"category":"community-case-studies","description_en":"A Rust desktop reconstruction of Mekhanotronika Fast View 5 uses REA and Ghidra research to reproduce oscillogram analysis and relay-characteristic views. The project publishes behavioral specifications, factual indexes, screenshots and cross-platform builds, with explicit format and visual-fidelity gaps.","description_zh":"Rust 桌面重建以 REA 与 Ghidra 的研究复现 Mekhanotronika Fast View 5 的录波分析和继电保护特性视图，公开行为规格、事实索引、截图及跨平台构建，并列明格式与视觉保真度缺口。","entry_url":"https://awesomerea.org/resources/fastview-rea-relay-analysis-rebuild-case/","entry_url_zh":"https://awesomerea.org/zh/resources/fastview-rea-relay-analysis-rebuild-case/","evidence_url":"https://github.com/dmytrobsp/fastview-rea/blob/deb89ea4134414a894ba887508ad5d320449be41/README.md","group":"rea","id":"fastview-rea-relay-analysis-rebuild-case","json_url":"https://awesomerea.org/resources/fastview-rea-relay-analysis-rebuild-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/fastview-rea-relay-analysis-rebuild-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fastview-rea-relay-analysis-rebuild-case/index.md","name":"FastView-REA: a Rust reconstruction of Fast View 5","name_zh":"FastView-REA：Fast View 5 的 Rust 重建","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","testing","limits","license"],"requirements":["Source builds need the documented Rust toolchain; release archives target Linux, Windows and macOS. Linux needs GTK 3 and a Wayland or X11 session.","The README attributes the reverse engineering to REA and Ghidra 12.1.3. Its behavioral-identity and validation statements are author-reported.","Native .sto input lacks a supplied sample, and the egui interface is not pixel-identical to original GDI/MFC rendering; original bitmaps are replaced.","Reconstruction code offers MIT or Apache-2.0. Embedded fonts and Intel-derived trigonometry keep separate licenses; the bundled FastView.fvb characteristic data remains original-vendor data."],"requirements_zh":["源码构建需要文档列出的 Rust 工具链；发布包面向 Linux、Windows 和 macOS，Linux 需要 GTK 3 及 Wayland 或 X11 会话。","README 将逆向研究归于 REA 和 Ghidra 12.1.3；行为一致性与验证结果为作者报告。","原生 .sto 输入缺少所需样例；egui 界面与原版 GDI/MFC 并非像素一致，原版位图由自绘图形替代。","重建代码可选 MIT 或 Apache-2.0；内嵌字体及源自 Intel 的三角函数保留独立许可，附带的 FastView.fvb 特性数据仍属原始厂商数据。"],"targets":["app"],"url":"https://github.com/dmytrobsp/fastview-rea","verification":"source-reviewed","verified_at":"2026-11-01T16:43:00Z"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/Moxnatiy/OpenBattlefield2/blob/1486ef18f52cb0070c8ae8ae06277a413ecb3977/CLAUDE.md","https://github.com/Moxnatiy/OpenBattlefield2/blob/1486ef18f52cb0070c8ae8ae06277a413ecb3977/docs/functions/hud-crosshair.md"],"category":"community-case-studies","description_en":"A C++20 reimplementation of Battlefield 2’s Refractor 2 engine reads original game data and documents menu rendering, level loading and server interoperability. Published crosshair research cites REA/Ghidra evidence IDs and binary addresses; major gameplay systems remain unfinished.","description_zh":"C++20 重实现 Battlefield 2 的 Refractor 2 引擎，读取原始游戏数据，记录菜单渲染、关卡载入及服务器互通；公开的准星研究引用 REA/Ghidra 证据 ID 和二进制地址，主要玩法系统仍未完成。","entry_url":"https://awesomerea.org/resources/openbattlefield2-refractor-engine-case/","entry_url_zh":"https://awesomerea.org/zh/resources/openbattlefield2-refractor-engine-case/","evidence_url":"https://github.com/Moxnatiy/OpenBattlefield2/blob/1486ef18f52cb0070c8ae8ae06277a413ecb3977/README.md","group":"rea","id":"openbattlefield2-refractor-engine-case","json_url":"https://awesomerea.org/resources/openbattlefield2-refractor-engine-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/openbattlefield2-refractor-engine-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/openbattlefield2-refractor-engine-case/index.md","name":"OpenBattlefield2: an unfinished Refractor 2 engine reimplementation","name_zh":"OpenBattlefield2：尚未完成的 Refractor 2 引擎重实现","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","attribution","testing","limits","license"],"requirements":["Requires an owned Battlefield 2 1.5 installation, CMake 3.24+, Ninja, a C++20 compiler and SDL3; the Flash menu additionally needs Rust and Ruffle.","Published crosshair research cites REA Evidence IDs; CLAUDE.md describes the mixed REA/Ghidra workflow and its payload and temporary-project limitations.","macOS arm64 is the primary platform; the Windows preset is kept building but is not exercised. Tests needing game files can pass with a note when those files are absent.","Ammunition/reloading, recoil, projectiles, audio, driving and full commander/squad interaction remain unfinished; this is an engine research project, not a complete game port.","MIT covers the project code; no original Battlefield 2 game content is redistributed."],"requirements_zh":["需要自有 Battlefield 2 1.5 安装、CMake 3.24+、Ninja、C++20 编译器及 SDL3；Flash 菜单还需要 Rust 和 Ruffle。","公开的准星研究引用 REA Evidence ID；CLAUDE.md 说明混合 REA/Ghidra 工作流及其大载荷、临时项目限制。","主要平台为 macOS arm64；Windows 预设维持构建但未实际测试。依赖游戏数据的测试在缺少文件时可提示后通过。","弹药与装填、后坐力、弹道、音频、驾驶和完整指挥官/小队交互仍未完成；这是引擎研究项目，并非完整游戏移植。","MIT 覆盖项目代码，不分发原始 Battlefield 2 游戏内容。"],"targets":["binary","game"],"url":"https://github.com/Moxnatiy/OpenBattlefield2","verification":"source-reviewed","verified_at":"2026-11-01"},{"added_at":"2026-11-01","category":"community-case-studies","description_en":"A native Linux and browser port of Commander Keen Episode One is documented as a function-by-function REA/Ghidra reconstruction of KEEN1.EXE. Published analysis artifacts accompany the C/SDL2 game; the scope is the first episode, rather than the entire series.","description_zh":"Linux 原生与浏览器移植面向 Commander Keen 第一章，作者记录以 REA/Ghidra 对 KEEN1.EXE 逐函数研究并重建 C/SDL2 游戏，附带公开分析资料；范围仅为第一章，并非全系列。","entry_url":"https://awesomerea.org/resources/keen-clone-rea-commander-keen-case/","entry_url_zh":"https://awesomerea.org/zh/resources/keen-clone-rea-commander-keen-case/","evidence_url":"https://github.com/carlhako/keen-clone/blob/9c6ac72734c95c3260c23b57158ea5876abc14b3/README.md","group":"rea","id":"keen-clone-rea-commander-keen-case","json_url":"https://awesomerea.org/resources/keen-clone-rea-commander-keen-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/keen-clone-rea-commander-keen-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/keen-clone-rea-commander-keen-case/index.md","name":"keen-clone: a Commander Keen 1 C/SDL2 port","name_zh":"keen-clone：Commander Keen 1 的 C/SDL2 移植","reconstruction_method":"decompilation","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","limits","testing","license"],"requirements":["Native builds need a C compiler, make and SDL2 development files, plus the user's Keen 1 data files including KEEN1.EXE; the README lists v1.1 and shareware v1.31.","Browser builds require Emscripten and supplied game data; the documented web packaging is restricted to the shareware episode. Browser shortcuts and per-origin IndexedDB storage differ from the native host.","The repository lists decompilation/disassembly, a call graph and raw REA output as analysis artifacts. It does not provide an independent behavioral-parity or full-playthrough evaluation.","No project license file was present in the reviewed root. Commander Keen and its original data retain their owners' rights; public source access supplies no additional reuse grant."],"requirements_zh":["原生构建需要 C 编译器、make、SDL2 开发文件及自有 Keen 1 数据（含 KEEN1.EXE）；README 列出 v1.1 与共享软件 v1.31。","浏览器构建需要 Emscripten 和自备游戏数据；文档将网页打包限定于共享软件章节，浏览器快捷键及按来源隔离的 IndexedDB 存储与原生宿主不同。","仓库列出反编译/反汇编、调用图和原始 REA 输出等分析资料，未提供独立的行为一致性或完整通关评估。","核查时仓库根目录没有项目许可文件；Commander Keen 及原始数据保留各自权利，公开源码不额外授予复用许可。"],"targets":["binary","game"],"url":"https://github.com/carlhako/keen-clone","verification":"source-reviewed","verified_at":"2026-11-01"},{"added_at":"2026-11-01","category":"community-case-studies","description_en":"A documented REA/Ghidra investigation maps SA-MP 0.3.DL-R1 client subsystems to a new C++ DLL, loader and smoke-test executable. The result is an architectural reconstruction with explicitly unresolved network and graphics behavior, not an established retail-compatible client.","description_zh":"REA/Ghidra 调查将 SA-MP 0.3.DL-R1 客户端子系统映射到新的 C++ DLL、加载器和冒烟测试程序，产物属于架构重建，网络与图形行为仍有明确未知项，未建立零售版兼容性。","entry_url":"https://awesomerea.org/resources/samp-client-rea-partial-reconstruction-case/","entry_url_zh":"https://awesomerea.org/zh/resources/samp-client-rea-partial-reconstruction-case/","evidence_url":"https://github.com/NathanKanaeru/samp-client-re/blob/6efde5d3042ee87f0c183a6c68b7e1b26a000cac/README.md","group":"rea","id":"samp-client-rea-partial-reconstruction-case","json_url":"https://awesomerea.org/resources/samp-client-rea-partial-reconstruction-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/samp-client-rea-partial-reconstruction-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/samp-client-rea-partial-reconstruction-case/index.md","name":"samp-client-re: a partial SA-MP client reconstruction","name_zh":"samp-client-re：局部重建的 SA-MP 客户端","reconstruction_method":"other","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["testing","attribution","limits","license"],"requirements":["The README reports a Windows/MinGW x64 build and a GTA-independent smoke executable; actual GTA: San Andreas use requires a separate 32-bit toolchain/build.","The architecture table attributes addresses and recovered procedures to REA/Ghidra 12.1.4; names inferred from the stripped binary remain analyst interpretations.","Full RCON/RPC handling, the default-port wire format and the exact Present trampoline are marked unknown/TODO. The archive parser is described as behavior-equivalent, not a complete decryptor.","No project license file was present in the reviewed root. Original GTA and SA-MP components remain separate prerequisites with their own rights."],"requirements_zh":["README 报告 Windows/MinGW x64 构建及不依赖 GTA 的冒烟程序；用于 GTA: San Andreas 另需 32 位工具链和构建。","架构表将地址及恢复过程归于 REA/Ghidra 12.1.4；被剥离二进制中的推断名称仍是分析者解释。","完整 RCON/RPC 处理、默认端口报文格式及精确 Present 跳板仍标为未知/TODO；归档解析器自述为行为等效实现，不是完整解密器。","核查时仓库根目录没有项目许可文件；原始 GTA 与 SA-MP 组件仍是独立前提，保留各自权利。"],"targets":["binary","game"],"url":"https://github.com/NathanKanaeru/samp-client-re","verification":"source-reviewed","verified_at":"2026-11-01"},{"added_at":"2026-11-01","category":"community-case-studies","description_en":"A Swift/macOS and JavaScript/browser port recreates the Desktop Games screen-smashing toy from a captured image. The author documents Claude and REA/Ghidra work on the Peter interpreter, a decompiled program tree and extracted assets, with explicit visual differences and no project license.","description_zh":"Swift/macOS 与 JavaScript/浏览器移植在截图上重现 Desktop Games 的桌面破坏玩具；作者记录 Claude 与 REA/Ghidra 对 Peter 解释器的研究、反编译程序树及提取素材，并明确列出视觉差异和未提供项目许可。","entry_url":"https://awesomerea.org/resources/desktop-games-nostalgia-rea-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/desktop-games-nostalgia-rea-port-case/","evidence_url":"https://github.com/ucodia/desktop-games-nostalgia/blob/27946dfe49d4a9b522dfe017c14eefbc0ca40b2a/README.md","group":"rea","id":"desktop-games-nostalgia-rea-port-case","json_url":"https://awesomerea.org/resources/desktop-games-nostalgia-rea-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/desktop-games-nostalgia-rea-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/desktop-games-nostalgia-rea-port-case/index.md","name":"Desktop Games Nostalgia: a macOS and browser port","name_zh":"Desktop Games Nostalgia：macOS 与浏览器移植","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","attribution","limits","license"],"requirements":["Native use requires macOS 14+; Screen Recording access captures one screen image, while wallpaper mode is available without it. The browser version uses a simulated desktop and needs a mouse/keyboard.","The README attributes interpreter analysis to REA/Ghidra and the port to Claude Code; extracted images/sounds are included upstream. The effects alter an image, not the real desktop files.","True-color rendering and translucent sprite shadows differ from the original palette renderer. The browser cannot capture the actual desktop; no independent parity measurements are supplied.","The author explicitly provides no project license and retains Gemtree credit for original design/art/sound. Desktop decoration and other upstream assets retain their separate rights."],"requirements_zh":["原生版本需要 macOS 14+；屏幕录制权限用于截取一次屏幕图像，也可无权限使用壁纸模式。浏览器版本使用模拟桌面，需要鼠标和键盘。","README 将解释器分析归于 REA/Ghidra、移植归于 Claude Code；上游包含提取的图像/声音，效果作用于图像而不修改真实桌面文件。","真彩色渲染和半透明精灵阴影与原版调色板渲染不同；浏览器无法捕获真实桌面，未提供独立一致性测量。","作者明确未提供项目许可，原始设计、图像与声音保留 Gemtree 署名；桌面装饰等上游素材保留独立权利。"],"targets":["binary","game"],"url":"https://github.com/ucodia/desktop-games-nostalgia","verification":"source-reviewed","verified_at":"2026-11-01"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/OpenRsG/GunZRs/releases/tag/v0.1.0"],"category":"community-case-studies","description_en":"A Rust/Bevy port reads GunZ: The Duel files from the user's installation and provides native releases, browser build tooling, screenshots and a documented REA/Ghidra investigation framework. Its LAN protocol and inferred movement behavior remain distinct from retail-server compatibility and proven gameplay parity.","description_zh":"Rust/Bevy 移植从用户安装中读取 GunZ: The Duel 数据，提供原生发布包、浏览器构建工具、截图及 REA/Ghidra 调查框架；自有局域网协议和推断的移动行为不代表兼容零售服务器或已证明玩法一致。","entry_url":"https://awesomerea.org/resources/gunzrs-rea-rust-reimplementation-case/","entry_url_zh":"https://awesomerea.org/zh/resources/gunzrs-rea-rust-reimplementation-case/","evidence_url":"https://github.com/OpenRsG/GunZRs/blob/485575b7451912ed1d62661c388663b08dce4faf/README.md","group":"rea","id":"gunzrs-rea-rust-reimplementation-case","json_url":"https://awesomerea.org/resources/gunzrs-rea-rust-reimplementation-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/gunzrs-rea-rust-reimplementation-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/gunzrs-rea-rust-reimplementation-case/index.md","name":"GunZRs: a Rust reimplementation of GunZ: The Duel","name_zh":"GunZRs：GunZ: The Duel 的 Rust 重实现","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","attribution","limits","license"],"requirements":["Requires the user's GunZ: The Duel installation; no original game files are included. Native downloads target Linux/Windows, with Linux builds requiring the documented system libraries; WebGPU needs localhost or HTTPS and packs built from the user's data.","The README documents REA/Ghidra use for static questions about retail files.","LAN uses the port's own protocol and does not connect to retail servers; several round/quest/Blitzkrieg modes are not played over LAN. Movement constants and some content choices are inferred.","The project says gameplay has been exercised on Linux. Code is Apache-2.0, bundled fonts retain OFL terms, and original game files remain separately owned."],"requirements_zh":["需要自有 GunZ: The Duel 安装，不附带原始游戏文件；原生下载面向 Linux/Windows，Linux 需文档列出的系统库。WebGPU 需要 localhost 或 HTTPS，并从自有数据构建资源包。","README 记录以 REA/Ghidra 静态调查零售文件。","局域网采用移植版自有协议，无法连接零售服务器；若干回合、任务及 Blitzkrieg 模式尚未支持局域网，移动常量和部分内容为推断。","项目仅报告在 Linux 实际游玩。代码采用 Apache-2.0，内嵌字体保留 OFL 条款，原始游戏文件仍属各自权利人。"],"targets":["game"],"url":"https://github.com/OpenRsG/GunZRs","verification":"source-reviewed","verified_at":"2026-11-01"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/morluto/rea/discussions/8248"],"category":"community-case-studies","description_en":"An owner documents identifying an RK3229 TV box, investigating its stock Android ROM and repurposing it with a userspace gamepad driver and Armbian. REA assisted ADB inventory and Android-provider routing; APK analysis and device changes are reported as a mixed workflow, not firmware reconstruction.","description_zh":"设备所有者记录了 RK3229 电视盒的硬件识别、原厂 Android ROM 调查、用户态手柄驱动及 Armbian 改造；REA 用于 ADB 清点和 Android 分析引擎引导，APK 分析与设备修改属于混合工作流，并非固件重建。","entry_url":"https://awesomerea.org/resources/mxqpro-rk3229-rea-repurposing-case/","entry_url_zh":"https://awesomerea.org/zh/resources/mxqpro-rk3229-rea-repurposing-case/","evidence_url":"https://github.com/bigtower17/mxqpro-rk3229/blob/b9079b419373eec439d85df4a8a11be549cd2f56/README.md","group":"rea","id":"mxqpro-rk3229-rea-repurposing-case","json_url":"https://awesomerea.org/resources/mxqpro-rk3229-rea-repurposing-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/mxqpro-rk3229-rea-repurposing-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mxqpro-rk3229-rea-repurposing-case/index.md","name":"MXQ PRO RK3229: an Android firmware investigation and Linux repurposing","name_zh":"MXQ PRO RK3229：Android 固件调查与 Linux 改造","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","attribution","testing","license"],"requirements":["Requires an owned, correctly identified RK3228/RK3229-class board and its matching firmware/backups; the MXQ PRO sales label alone does not identify the hardware.","The author limits REA's role to device inventory and the Android provider pointer; JADX and separate host/device tools perform other parts of the work.","The report covers one unit and describes replacing its stock system. Partition layout, board support and boot behavior are device-specific.","Large/proprietary images, system APKs and decompiled third-party source are excluded upstream. A project-wide license grant is not stated in the reviewed README."],"requirements_zh":["需要自有且正确识别的 RK3228/RK3229 类主板及对应固件/备份；MXQ PRO 销售标签不足以识别真实硬件。","作者将 REA 的作用限定为设备清点和 Android 引擎指引，其他部分由 JADX 及独立宿主/设备工具完成。","报告仅覆盖一台设备，并描述替换原厂系统；分区、主板支持及启动行为依设备而异。","上游不提供大型/专有镜像、系统 APK 或反编译的第三方源码；核查的 README 未声明统一的项目许可授权。"],"targets":["firmware"],"url":"https://github.com/bigtower17/mxqpro-rk3229","verification":"source-reviewed","verified_at":"2026-11-01"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/Vittuu/icsee-localmod/blob/52f0ca06064faa2e62ee6d9c600f048bd1768207/docs/REA-GHIDRA-WORKFLOW.md","https://github.com/morluto/rea/discussions/8070"],"category":"community-case-studies","description_en":"An owner-authorized XM530V200 camera case uses REA/Ghidra to investigate native Sofia command handlers, then adds local control and Home Assistant integration while preserving stock drivers and recording. The source-only extension documents separate static, emulated-protocol and physical-device evidence.","description_zh":"XM530V200 摄像头所有者授权案例以 REA/Ghidra 调查原生 Sofia 命令处理器，再添加本地控制及 Home Assistant 集成，保留原厂驱动和录像；源码扩展明确区分静态、模拟协议及实机证据。","entry_url":"https://awesomerea.org/resources/icsee-localmod-rea-camera-case/","entry_url_zh":"https://awesomerea.org/zh/resources/icsee-localmod-rea-camera-case/","evidence_url":"https://github.com/Vittuu/icsee-localmod/blob/52f0ca06064faa2e62ee6d9c600f048bd1768207/README.md","group":"rea","id":"icsee-localmod-rea-camera-case","json_url":"https://awesomerea.org/resources/icsee-localmod-rea-camera-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/icsee-localmod-rea-camera-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/icsee-localmod-rea-camera-case/index.md","name":"iCSee LocalMod: a stock-firmware camera control extension","name_zh":"iCSee LocalMod：保留原厂固件的摄像头控制扩展","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","attribution","testing","limits"],"requirements":["Tested only on one XM530V200 / IPG-X2-WQ-BL unit. There is no universal image or public flash installer; source builds need a compatible ARM toolchain and matching Dropbear crypto library.","The documented investigation used REA 6.8.0 and Ghidra 12.1.4. Binary addresses are specific to the analyzed Sofia build; the project is stock firmware with additions, not OpenIPC or a full DVRIP implementation.","The owner reports physical PTZ/LED/audio and restart/SD-recording checks. QEMU tests use fake backends.","The local bridge uses the existing device account over plain HTTP; the route-removal guard is not a firewall. Original additions are MIT, while stock firmware/drivers and third-party components retain their own rights."],"requirements_zh":["仅在一台 XM530V200 / IPG-X2-WQ-BL 设备上验证；没有通用镜像或公开刷写安装器，源码构建需兼容 ARM 工具链及匹配的 Dropbear 加密库。","文档调查使用 REA 6.8.0 和 Ghidra 12.1.4；二进制地址仅适用于所分析的 Sofia 构建，这是原厂固件加扩展，并非 OpenIPC 或完整 DVRIP 实现。","所有者报告了 PTZ/LED/音频及重启/SD 录像实机检查；QEMU 测试使用假后端。","本地桥接使用现有设备账户和明文 HTTP，删路由保护不等于防火墙；原创扩展采用 MIT，原厂固件/驱动及第三方组件保留各自权利。"],"targets":["binary","firmware","protocol"],"url":"https://github.com/Vittuu/icsee-localmod","verification":"source-reviewed","verified_at":"2026-11-01"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/Eliot5566/app-xray/blob/66a7b06fb45d99e0e1d1dbcf221856a62639faab/docs/en/guide.md","https://github.com/morluto/rea/discussions/7974"],"category":"community-integrations","description_en":"Builds evidence-linked HTML/JSON reports, summary cards and diffs from REA analysis of app packages, native build metadata and model files. Its component and configuration findings come from static inputs; they are not observed runtime traffic, a complete security audit or reconstructed software.","description_zh":"基于 REA 对应用包、原生构建元数据和模型文件的分析生成带证据链接的 HTML/JSON 报告、摘要卡片及差异；组件与配置发现来自静态输入，并非实测流量、完整安全审计或重建软件。","entry_url":"https://awesomerea.org/resources/app-xray-rea-evidence-reports/","entry_url_zh":"https://awesomerea.org/zh/resources/app-xray-rea-evidence-reports/","evidence_url":"https://github.com/Eliot5566/app-xray/blob/66a7b06fb45d99e0e1d1dbcf221856a62639faab/README.md","group":"rea","id":"app-xray-rea-evidence-reports","json_url":"https://awesomerea.org/resources/app-xray-rea-evidence-reports/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/app-xray-rea-evidence-reports/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/app-xray-rea-evidence-reports/index.md","name":"App X-Ray","name_zh":"App X-Ray","record_type":"resource","relationship":"community-integration","requirement_facets":["prerequisites","limits","testing","license"],"requirements":["README requires Node.js 22+; supported inputs include Electron/app.asar/source folders, APKs, Go/Rust executables and listed model formats. REA analysis requirements vary with the input.","Rules see literal values and metadata; runtime-generated addresses are missed. A detected setting or dependency does not prove runtime behavior or exploitability, and unsupported/obfuscated inputs can leave unknowns.","The public gallery uses open-source app snapshots. Report-derived REA-Bench answers reuse those reports as their reference.","Code is MIT; bundled Inter fonts retain SIL OFL 1.1. Reports omit target app code, and upstream software/model rights remain separate."],"requirements_zh":["README 要求 Node.js 22+；输入包括 Electron/app.asar/源码目录、APK、Go/Rust 可执行文件及所列模型格式，REA 分析依赖随输入变化。","规则读取字面量和元数据，可能漏掉运行时生成的地址；发现配置或依赖不代表运行时行为或可利用性，不支持/混淆的输入仍可能留下未知项。","公开画廊使用开源应用快照；从报告生成的 REA-Bench 答案仍以这些报告为参考。","代码采用 MIT，内嵌 Inter 字体保留 SIL OFL 1.1；报告不包含目标应用代码，上游软件/模型权利独立保留。"],"targets":["app","binary"],"url":"https://github.com/Eliot5566/app-xray","verification":"source-reviewed","verified_at":"2026-11-01"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/KarlssonChristoffer/DiskLens/blob/c7d67f4b084b408d9b3e1bb22ee8723727494488/docs/research.md"],"category":"community-case-studies","description_en":"A Rust/Tauri disk analyzer combines REA/Ghidra investigation of WinDirStat 2.5.0 with source-code ports of its treemap and color handling. Its documentation distinguishes binary-confirmed findings from source-derived algorithms and leaves several file actions and Windows integrations untested.","description_zh":"Rust/Tauri 磁盘分析器结合 REA/Ghidra 对 WinDirStat 2.5.0 的调查及其树图、色彩算法的源码移植；文档区分二进制核对结果与源码来源，并列明多项文件操作和 Windows 集成尚未经实机测试。","entry_url":"https://awesomerea.org/resources/disklens-windirstat-rea-case/","entry_url_zh":"https://awesomerea.org/zh/resources/disklens-windirstat-rea-case/","evidence_url":"https://github.com/KarlssonChristoffer/DiskLens/blob/c7d67f4b084b408d9b3e1bb22ee8723727494488/README.md","group":"rea","id":"disklens-windirstat-rea-case","json_url":"https://awesomerea.org/resources/disklens-windirstat-rea-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/disklens-windirstat-rea-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/disklens-windirstat-rea-case/index.md","name":"DiskLens: a WinDirStat-derived disk usage analyzer","name_zh":"DiskLens：基于 WinDirStat 研究的磁盘用量分析器","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","attribution","testing","license"],"requirements":["Requires Windows 10/11, Rust MSVC/Visual Studio build tools and Node.js for source builds; Mica styling needs Windows 11.","REA/Ghidra cross-checked the installed WinDirStat binary, while much algorithm work used its public source.","The author reports engine tests and drive scans, but new file-action routes, cleanup integrations and several dialogs are untested in the app. Fast MFT scanning is absent and hard links are counted repeatedly.","README states GPL-3.0-or-later for DiskLens and credits GPL-2.0-or-later WinDirStat code ports; third-party components keep separate licenses."],"requirements_zh":["源码构建需要 Windows 10/11、Rust MSVC/Visual Studio 构建工具及 Node.js；Mica 样式需要 Windows 11。","REA/Ghidra 核对已安装的 WinDirStat 二进制，而大量算法来自其公开源码。","作者报告了引擎测试及磁盘扫描，但新文件操作路径、清理集成和若干对话框尚未在应用中实测；缺少快速 MFT 扫描，硬链接会重复计数。","README 将 DiskLens 标为 GPL-3.0-or-later，并署名 GPL-2.0-or-later 的 WinDirStat 代码移植；第三方组件保留独立许可。"],"targets":["app","binary"],"url":"https://github.com/KarlssonChristoffer/DiskLens","verification":"source-reviewed","verified_at":"2026-11-01"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/B-Howell/soundconnect-desktop/blob/481f4af2da2c96026bd14d19f366c76aa737ccd0/docs/research/SoundConnect%20Desktop%20-%20Upstream%20Security%20Review.md"],"category":"community-case-studies","description_en":"A Windows Sony-headphone client adopts existing libmdr/libmdr-bt engine DLLs after a documented REA-assisted binary inventory and source review. The desktop interface is modeled on Sound Connect, while protocol implementation and device support are inherited rather than newly reconstructed.","description_zh":"Windows 索尼耳机客户端在 REA 辅助二进制清点及源码检查后采用既有 libmdr/libmdr-bt 引擎 DLL，桌面界面参考 Sound Connect；协议实现和设备支持来自上游复用，并非本项目重新恢复。","entry_url":"https://awesomerea.org/resources/soundconnect-desktop-rea-engine-case/","entry_url_zh":"https://awesomerea.org/zh/resources/soundconnect-desktop-rea-engine-case/","evidence_url":"https://github.com/B-Howell/soundconnect-desktop/blob/481f4af2da2c96026bd14d19f366c76aa737ccd0/README.md","group":"rea","id":"soundconnect-desktop-rea-engine-case","json_url":"https://awesomerea.org/resources/soundconnect-desktop-rea-engine-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/soundconnect-desktop-rea-engine-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/soundconnect-desktop-rea-engine-case/index.md","name":"SoundConnect Desktop: a Windows client reusing a reviewed headset engine","name_zh":"SoundConnect Desktop：复用已调查耳机引擎的 Windows 客户端","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","attribution","limits","license"],"requirements":["Requires Windows 10/11 and compatible Bluetooth headphones. Source builds need Node 24, pnpm 10, Rust MSVC and pinned engine DLLs or their Visual Studio/CMake build environment.","REA inspected upstream PE resources, strings and provenance before engine adoption.","Only WH-1000XM4 hardware is reported tested; other models rely on upstream support. Concurrent phone-app control, XM4 paired-device mutations and 360 Reality Audio setup are unsupported; the installer is unsigned.","MIT covers the app and credited engine; Sony identification images retain Sony rights."],"requirements_zh":["需要 Windows 10/11 和兼容的蓝牙耳机；源码构建需 Node 24、pnpm 10、Rust MSVC，以及固定版本的引擎 DLL 或其 Visual Studio/CMake 构建环境。","REA 在采用引擎前检查上游 PE 资源、字符串与来源。","仅报告 WH-1000XM4 实机测试，其他型号依赖上游支持；不支持手机应用同时控制、XM4 配对设备修改及 360 Reality Audio 设置，安装器未签名。","应用及署名的引擎采用 MIT，索尼识别图片保留索尼权利。"],"targets":["app","binary"],"url":"https://github.com/B-Howell/soundconnect-desktop","verification":"source-reviewed","verified_at":"2026-11-01"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/michaelshimeles/rec-rs/blob/93dd4948cdc8919e8b444a5af0141cf7c3628e7c/analysis/OBS_ARCHITECTURE.md","https://github.com/michaelshimeles/rec-rs/releases/tag/v0.1.2"],"category":"community-case-studies","description_en":"A macOS recorder is informed by OBS architecture research using REA package inspection, platform tools and public source references. It offers screen/camera recording and streaming with a deliberately smaller scene/source feature set; the research notes record unavailable native-analysis providers.","description_zh":"macOS 录制器参考 OBS 架构，研究结合 REA 软件包检查、平台工具及公开源码资料；提供屏幕/摄像头录制和推流，但场景、输入源功能范围更小，研究笔记明确记录原生分析引擎不可用。","entry_url":"https://awesomerea.org/resources/rec-rs-obs-rea-recorder-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rec-rs-obs-rea-recorder-case/","evidence_url":"https://github.com/michaelshimeles/rec-rs/blob/93dd4948cdc8919e8b444a5af0141cf7c3628e7c/README.md","group":"rea","id":"rec-rs-obs-rea-recorder-case","json_url":"https://awesomerea.org/resources/rec-rs-obs-rea-recorder-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rec-rs-obs-rea-recorder-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rec-rs-obs-rea-recorder-case/index.md","name":"rec-rs: an OBS-informed Rust recorder for macOS","name_zh":"rec-rs：参考 OBS 架构的 Rust macOS 录制器","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","attribution","limits","testing","license"],"requirements":["Universal releases target macOS 15+; building needs the documented Rust/macOS toolchain. Screen, microphone and camera capture depend on the relevant system permissions.","REA 6.4.0 plist/signature inspection succeeded, but native analyze/layout operations failed or were unavailable; notes also studied OBS source and used separate macOS inspection tools.","No free scene-layout editor, transitions, application/multi-display capture or audio filters; output is 8-bit SDR and the webcam overlay is baked in. Region capture is CLI-only.","The README supplies self-test/soak tooling; YouTube HEVC streaming was checked only against a local server.","Code is documented as MIT OR Apache-2.0; the author states that original OBS code/assets are not included."],"requirements_zh":["通用发布包面向 macOS 15+；源码构建需要文档列出的 Rust/macOS 工具链，屏幕、麦克风与摄像头捕获依赖相应系统权限。","REA 6.4.0 的 plist/签名检查成功，但原生 analyze/layout 操作失败或不可用；笔记也参考 OBS 源码并使用独立 macOS 检查工具。","没有自由场景编辑器、转场、应用/多屏捕获或音频滤镜；输出为 8 位 SDR，摄像头叠层直接合成，区域捕获仅支持命令行。","README 提供自测与持续录制测试工具；YouTube HEVC 推流仅对本地服务器测试。","代码声明采用 MIT 或 Apache-2.0；作者声明不包含原始 OBS 代码或素材。"],"targets":["app"],"url":"https://github.com/michaelshimeles/rec-rs","verification":"source-reviewed","verified_at":"2026-11-01"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/michaelshimeles/sketch/blob/af814b7ab2bd77328a906a1986a048c233e25f9c/analysis/PAPER_ARCHITECTURE.md","https://github.com/michaelshimeles/sketch/releases/tag/v0.1.0"],"category":"community-case-studies","description_en":"A Rust canvas models Paper-like editing behavior after REA investigation of the Paper Desktop shell. The hosted editor was not recovered: research separates observed shell integration from inferred editor features, and the new geometric document model differs from Paper HTML/CSS.","description_zh":"Rust 画布在 REA 调查 Paper Desktop 壳层后参考其编辑行为；没有恢复托管编辑器，研究区分已观察的壳层集成与推断的编辑器功能，新几何文档模型也不同于 Paper 的 HTML/CSS。","entry_url":"https://awesomerea.org/resources/sketch-paper-rea-canvas-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sketch-paper-rea-canvas-case/","evidence_url":"https://github.com/michaelshimeles/sketch/blob/af814b7ab2bd77328a906a1986a048c233e25f9c/README.md","group":"rea","id":"sketch-paper-rea-canvas-case","json_url":"https://awesomerea.org/resources/sketch-paper-rea-canvas-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sketch-paper-rea-canvas-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sketch-paper-rea-canvas-case/index.md","name":"Sketch: a Paper-shell-informed native Rust canvas","name_zh":"Sketch：基于 Paper 壳层研究的原生 Rust 画布","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","attribution","limits","testing","license"],"requirements":["Requires Rust 1.95+ for source builds; macOS releases target 11+, Linux uses the documented graphics libraries and XDG portal for file dialogs.","Research targeted licensed Paper Desktop 0.5.15. The hosted editor was absent from the bundle; several editor-level capabilities were inferred from shell integration or the implementation brief.","No HTML/CSS document model, CSS/code export, rotation or complex-script shaping; several blend, clipping and SVG-import behaviors are approximations.","Linux window tests used Xvfb; macOS smoke evidence is narrower than complete input/menu/Intel testing.","Code is MIT OR Apache-2.0; Inter fonts retain SIL OFL 1.1 and bundled agent skills have separate notices."],"requirements_zh":["源码构建需要 Rust 1.95+；macOS 发布包面向 11+，Linux 使用文档列出的图形库，文件对话框需要 XDG portal。","研究目标为合法安装的 Paper Desktop 0.5.15；软件包不含托管编辑器，多项编辑器能力来自壳层集成推断或实现需求。","没有 HTML/CSS 文档模型、CSS/代码导出、旋转或复杂文字排版，部分混合、裁切和 SVG 导入行为为近似实现。","Linux 窗口测试使用 Xvfb；macOS 冒烟证据不覆盖完整输入、菜单及 Intel 实测。","代码采用 MIT 或 Apache-2.0，Inter 字体保留 SIL OFL 1.1，内嵌智能体技能另有许可说明。"],"targets":["app"],"url":"https://github.com/michaelshimeles/sketch","verification":"source-reviewed","verified_at":"2026-11-01"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/michaelshimeles/terminal/blob/94bb329d683471518dcd210f9ca9fca073c15d0b/docs/analysis/README.md"],"category":"community-case-studies","description_en":"An independent Rust market interface uses REA browser-scenario research on public logged-out TradingView chart interactions. The notes retain observed/documented/inferred/unknown labels; the result supplies its own chart engine and data providers rather than recovering TradingView or Bloomberg server software.","description_zh":"独立 Rust 市场界面参考 REA 对公开、未登录 TradingView 图表交互的场景研究；笔记保留观察、文档、推断及未知标签，产物使用自己的图表引擎和数据源，而非恢复 TradingView 或 Bloomberg 服务端软件。","entry_url":"https://awesomerea.org/resources/terminal-tradingview-rea-chart-case/","entry_url_zh":"https://awesomerea.org/zh/resources/terminal-tradingview-rea-chart-case/","evidence_url":"https://github.com/michaelshimeles/terminal/blob/94bb329d683471518dcd210f9ca9fca073c15d0b/README.md","group":"rea","id":"terminal-tradingview-rea-chart-case","json_url":"https://awesomerea.org/resources/terminal-tradingview-rea-chart-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/terminal-tradingview-rea-chart-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/terminal-tradingview-rea-chart-case/index.md","name":"Terminal: a Rust terminal informed by TradingView chart research","name_zh":"Terminal：参考 TradingView 图表研究的 Rust 终端","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","attribution","limits","license"],"requirements":["Source builds need Rust and the documented platform graphics setup. Data can use an offline sample or external providers; brokerage connectivity is optional and requires the user's own provider/account setup.","REA captured browser scenarios from a public logged-out chart. Login-only behavior, some pointer gestures and unavailable interactions remain unknown.","Scanned disclosure PDFs are not OCR-processed; unofficial data endpoints are rate-limited and upstream filing-use terms still apply.","No project-wide license was identified in the reviewed root/README; repository access does not grant rights to external market data."],"requirements_zh":["源码构建需要 Rust 及文档列出的平台图形环境；数据可使用离线样例或外部提供商，可选券商连接需要用户自己的提供商/账户配置。","REA 从公开、未登录图表捕获浏览器场景；登录功能、部分指针手势和无法触发的交互仍未知。","扫描版披露 PDF 未进行 OCR，非官方数据接口受限流，披露数据仍适用上游使用条款。","核查的根目录/README 未识别出统一项目许可；仓库访问不授予外部市场数据权利。"],"targets":["app","website"],"url":"https://github.com/michaelshimeles/terminal","verification":"source-reviewed","verified_at":"2026-11-01"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/rshipp/awesome-malware-analysis/blob/179887b9bfb04bb736348b2dc9d331bc860c6ef7/LICENSE"],"category":"related-lists","description_en":"A long-running single-README list of malware analysis tools and resources, grouped into 17 top-level sections covering open-source threat intelligence, detection and classification, online scanners and sandboxes, document and shellcode analysis, deobfuscation, debugging and reverse engineering, network, memory forensics, Windows artifacts, plus books and other references. Each entry is a name linked to an external tool or resource with a short description. The repository also keeps a Simplified Chinese translation of the list.","description_zh":"长期维护的单 README 恶意软件分析工具与资源清单，分为 17 个一级章节，涵盖开源威胁情报、检测与分类、在线扫描器与沙箱、文档与 shellcode 分析、反混淆、调试与逆向、网络、内存取证、Windows 取证痕迹，以及书籍和其他参考资料。每个条目是链接到外部工具或资源的名称并附简短说明。仓库中另附有该清单的简体中文翻译。","entry_url":"https://awesomerea.org/resources/awesome-malware-analysis/","entry_url_zh":"https://awesomerea.org/zh/resources/awesome-malware-analysis/","evidence_url":"https://github.com/rshipp/awesome-malware-analysis/blob/179887b9bfb04bb736348b2dc9d331bc860c6ef7/README.md","group":"learn","id":"awesome-malware-analysis","json_url":"https://awesomerea.org/resources/awesome-malware-analysis/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/awesome-malware-analysis/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/awesome-malware-analysis/index.md","name":"Awesome Malware Analysis","name_zh":"Awesome Malware Analysis 恶意软件分析合集","record_type":"resource","relationship":"learning","requirements":["The reviewed README, last committed 2026-05-30, links roughly 428 entries across 17 top-level sections; it is a list of pointers, and one tool can appear under several sections.","Entries give a name, an external link and a one-line description, and state no license, platform or maintenance status. Links point to varied destinations including project pages, vendors and online services.","A Malware Collection section links out to external malware corpora, sample feeds and honeypots; the list itself hosts no samples, and following those links means handling live malware, which requires an isolated environment and appropriate authorization.","The list text is licensed CC BY 4.0; linked tools and resources keep their own licenses and terms. An independent discovery list."],"requirements_zh":["所审阅的 README 最后提交于 2026-05-30，在 17 个一级章节下收录约 428 个条目；它是指引清单，同一工具可能出现在多个章节。","每个条目提供名称、外部链接和一句话说明，不标注许可证、平台或维护状态。链接指向多种目标，包括项目页面、厂商和在线服务。","Malware Collection 章节链接到外部恶意软件语料库、样本源和蜜罐；清单本身不托管样本，点击这些链接意味着要处理真实恶意软件，需要隔离环境和适当授权。","清单正文采用 CC BY 4.0 许可；所链接的工具和资源沿用各自的许可证与条款。此为独立发现清单。"],"targets":["binary"],"url":"https://github.com/rshipp/awesome-malware-analysis","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/V33RU/awesome-connected-things-sec/blob/0015dcee55cc0cd6eff3b4afbada2f22c245a9cc/LICENSE"],"category":"related-lists","description_en":"A single-README list of security-research references for IoT, embedded, industrial and automotive systems, organized into sections on hardware attacks, wireless protocols (BLE, Zigbee/Z-Wave, LoRa, Matter/Thread, cellular, NFC/RFID, Wi-Fi, USB), firmware security including extraction, static and dynamic analysis and secure boot, network and web protocols, cloud backends, mobile apps, and industrial and automotive topics. Each entry links out to an external tool, talk, paper, write-up or course with a short note. The README reports 900+ resources.","description_zh":"面向 IoT、嵌入式、工业和汽车系统的单 README 安全研究资料清单，按章节组织，涵盖硬件攻击、无线协议（BLE、Zigbee/Z-Wave、LoRa、Matter/Thread、蜂窝、NFC/RFID、Wi-Fi、USB）、固件安全（含提取、静态与动态分析和安全启动）、网络与 Web 协议、云后端、移动应用，以及工业和汽车相关主题。每个条目链接到外部的工具、演讲、论文、文章或课程并附简短说明。README 称收录 900 多项资源。","entry_url":"https://awesomerea.org/resources/awesome-connected-things-sec/","entry_url_zh":"https://awesomerea.org/zh/resources/awesome-connected-things-sec/","evidence_url":"https://github.com/V33RU/awesome-connected-things-sec/blob/0015dcee55cc0cd6eff3b4afbada2f22c245a9cc/README.md","group":"learn","id":"awesome-connected-things-sec","json_url":"https://awesomerea.org/resources/awesome-connected-things-sec/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/awesome-connected-things-sec/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/awesome-connected-things-sec/index.md","name":"Awesome Connected Things Security","name_zh":"Awesome Connected Things Security 互联设备安全合集","record_type":"resource","relationship":"learning","requirements":["The README, last committed 2026-10-16, links roughly 979 entries and states 900+ resources; it is a list of pointers, and one entry can fit several sections.","Entries give a name, an external link and a short note, and state no license, platform or maintenance status.","The list is oriented toward security research and exploitation, with sections such as hardware attacks, memory extraction, side-channel and fault injection, firmware extraction and secure-boot bypasses. Hardware and radio work needs physical access, appropriate equipment and authorization.","The list text is released under CC0-1.0; linked tools and resources keep their own licenses and terms. An independent discovery list."],"requirements_zh":["README 最后提交于 2026-10-16，约收录 979 个条目，自述有 900 多项资源；它是指引清单，同一条目可能归入多个章节。","每个条目提供名称、外部链接和简短说明，不标注许可证、平台或维护状态。","该清单以安全研究与漏洞利用为导向，设有硬件攻击、内存提取、侧信道与故障注入、固件提取和安全启动绕过等章节。硬件和射频相关工作需要物理接触、相应设备和授权。","清单正文以 CC0-1.0 发布；所链接的工具和资源沿用各自的许可证与条款。此为独立发现清单。"],"targets":["firmware","protocol"],"url":"https://github.com/V33RU/awesome-connected-things-sec","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/iDoka/awesome-canbus/blob/77c59133db2fcdd4e4f891a55e440629e0178b8e/license"],"category":"related-lists","description_en":"A single-README list of CAN bus tools, hardware and resources for automotive and embedded work, grouped into sections for reverse-engineering tools, test equipment and simulators, higher-layer protocols (OBD-II, UDS, ISO-TP, J1939, J2534), general and Linux utilities, CAN database formats (DBC, KCD) with converters, and hardware for ARM, Arduino, ESP32, single-board computers and FPGA cores. Each entry links out to an external project or resource with a short description.","description_zh":"面向汽车和嵌入式领域的单 README CAN 总线工具、硬件与资源清单，分为逆向工程工具、测试设备与模拟器、上层协议（OBD-II、UDS、ISO-TP、J1939、J2534）、通用与 Linux 实用工具、CAN 数据库格式（DBC、KCD）及转换器，以及面向 ARM、Arduino、ESP32、单板计算机和 FPGA 核心的硬件等章节。每个条目链接到外部项目或资源并附简短说明。","entry_url":"https://awesomerea.org/resources/awesome-canbus/","entry_url_zh":"https://awesomerea.org/zh/resources/awesome-canbus/","evidence_url":"https://github.com/iDoka/awesome-canbus/blob/77c59133db2fcdd4e4f891a55e440629e0178b8e/README.md","group":"learn","id":"awesome-canbus","json_url":"https://awesomerea.org/resources/awesome-canbus/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/awesome-canbus/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/awesome-canbus/index.md","name":"Awesome CAN Bus","name_zh":"Awesome CAN Bus CAN 总线合集","record_type":"resource","relationship":"learning","requirements":["The README, last committed 2026-08-07, links roughly 260 entries across its sections; it is a list of pointers, and one project can appear under several sections.","Entries give a name, an external link and a short description, and state no license, platform or maintenance status.","CAN bus analysis and the listed hardware need physical access to a vehicle or bus and appropriate interface hardware; the list covers the CAN protocol and higher-layer automotive protocols as its subject.","The list text is released under CC0-1.0; linked projects and resources keep their own licenses and terms. An independent discovery list."],"requirements_zh":["README 最后提交于 2026-08-07，各章节合计约收录 260 个条目；它是指引清单，同一项目可能出现在多个章节。","每个条目提供名称、外部链接和简短说明，不标注许可证、平台或维护状态。","CAN 总线分析及所列硬件需要物理接触车辆或总线，并配备相应的接口硬件；清单以 CAN 协议及上层汽车协议为主题。","清单正文以 CC0-1.0 发布；所链接的项目和资源沿用各自的许可证与条款。此为独立发现清单。"],"targets":["firmware","protocol"],"url":"https://github.com/iDoka/awesome-canbus","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/iDoka/awesome-automotive-can-id/blob/8eff640cd49984df4b37d996da46deaf81e53b52/license","https://github.com/iDoka/awesome-automotive-can-id/blob/8eff640cd49984df4b37d996da46deaf81e53b52/contributing.md","https://github.com/iDoka/awesome-automotive-can-id/blob/8eff640cd49984df4b37d996da46deaf81e53b52/.github/workflows/main.yml"],"category":"related-lists","description_en":"A single-README list that gathers links to CAN message identifier and payload decodings in one place, grouped by vehicle make and model under about 30 car brands and brand groups plus BMW, Ducati and KTM motorcycles. Its links lead to DBC files, decoding spreadsheets, wiki pages, sniffing notes and small libraries maintained elsewhere, after a Common section of general databases such as comma.ai’s opendbc and the OpenGarages CAN ID references.","description_zh":"以单个 README 维护的清单，把 CAN 报文标识符与载荷解码资料的链接汇集在一处，按车辆品牌和车型分组，涵盖约 30 个汽车品牌及品牌集团，另有 BMW、Ducati 和 KTM 摩托车。条目链接到其他地方维护的 DBC 文件、解码表格、wiki 页面、抓包笔记和小型库；开头的 Common 部分收录 comma.ai 的 opendbc 和 OpenGarages CAN ID 参考等通用数据库。","entry_url":"https://awesomerea.org/resources/awesome-automotive-can-id/","entry_url_zh":"https://awesomerea.org/zh/resources/awesome-automotive-can-id/","evidence_url":"https://github.com/iDoka/awesome-automotive-can-id/blob/8eff640cd49984df4b37d996da46deaf81e53b52/README.md","group":"learn","id":"awesome-automotive-can-id","json_url":"https://awesomerea.org/resources/awesome-automotive-can-id/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/awesome-automotive-can-id/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/awesome-automotive-can-id/index.md","name":"Awesome CAN ID","name_zh":"Awesome CAN ID 汽车 CAN 报文标识符合集","record_type":"resource","relationship":"learning","requirements":["The README, last changed by a merge on 2026-08-12, holds 148 links under 57 headings, the Common section and make, model and brand-group headings; the Acura, Lotus, Peugeot, DS, SAAB, Porsche and Seat headings are still empty. About 107 links go to GitHub and the rest to Google spreadsheets, wikis, forums and blog posts, several of them in Russian; two already point to Web Archive copies.","Entries give only the make or model, a link and a short note such as a model year, ECU or bus name. They state no license, verification status or coverage. Applying the decodings means reading traffic on a vehicle bus with suitable interface hardware.","Repository CI runs only awesome-lint. The list text is dedicated under CC0-1.0; linked databases, documents and code keep their own licenses and terms. Its footnotes point to the same maintainer’s CAN bus and LIN bus tool lists. An independent discovery list."],"requirements_zh":["README 最近一次由 2026-08-12 的合并修改，在 57 个标题下收录 148 个链接，包括 Common 部分及各品牌、车型和品牌集团标题；Acura、Lotus、Peugeot、DS、SAAB、Porsche 和 Seat 标题下仍为空。约 107 个链接指向 GitHub，其余指向 Google 表格、wiki、论坛和博客文章，其中有数篇为俄语；已有两个链接指向 Web Archive 存档。","条目只给出品牌或车型、链接和简短说明，如车型年份、ECU 或总线名称，不标注许可证、核实状态或覆盖范围。应用这些解码需要借助相应的接口硬件读取车辆总线上的通信。","仓库 CI 只运行 awesome-lint。清单正文以 CC0-1.0 发布；所链接的数据库、文档和代码沿用各自的许可证与条款。其脚注指向同一维护者的 CAN 总线和 LIN 总线工具清单。此为独立发现清单。"],"targets":["protocol"],"url":"https://github.com/iDoka/awesome-automotive-can-id","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/morluto/rea/blob/e8da7e1edd075feec0e6beedec93d5645fed8125/website/public/blog/reverse-engineering-models/index.html","https://github.com/N0zoM1z0/th08/commit/a393f400786e4cc6cbb1000af0dad3276da12c78"],"category":"official-case-studies","description_en":"An essay on REA’s site by N0zoM1z0 (13 October 2026) uses dated Touhou reconstruction commits to ask whether exact function matching needs a larger general model, a compiler-specialist model or better retrieval. It walks through TH09, TH095, TH04 and TH08 cases where later GPT-6-series sessions closed stubborn matches, and the TH08 audit that found accepted functions with wrong floating constants. Specialist and reinforcement-learning comparisons are proposed as future experiments; no trained specialist was evaluated.","description_zh":"REA 网站上 N0zoM1z0 的一篇文章（2026 年 10 月 13 日）依据注明日期的东方 Project 重建提交，探讨精确的函数匹配究竟需要更大的通用模型、针对编译器的专用模型，还是更好的检索。文章逐一介绍 TH09、TH095、TH04 与 TH08 中较晚的 GPT-6 系列会话攻克难以匹配函数的案例，以及 TH08 一次审计发现部分已接受函数含有错误浮点常量的经过。专用模型与强化学习的对比被作为未来实验提出，并未评估任何经过训练的专用模型。","entry_url":"https://awesomerea.org/resources/rea-bigger-model-essay-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rea-bigger-model-essay-case/","evidence_url":"https://github.com/morluto/rea/blob/e8da7e1edd075feec0e6beedec93d5645fed8125/website/evidence/reverse-engineering-models.md","group":"rea","id":"rea-bigger-model-essay-case","json_url":"https://awesomerea.org/resources/rea-bigger-model-essay-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rea-bigger-model-essay-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rea-bigger-model-essay-case/index.md","name":"Does reverse engineering need a bigger model? General and specialist models in Touhou reconstruction","name_zh":"逆向工程需要更大的模型吗？东方 Project 重建中的通用模型与专用模型","reconstruction_method":"other","record_type":"resource","relationship":"official-case-study","requirement_facets":["prerequisites","scope","limits","testing","license"],"requirements":["The essay and its notes supply no game files, compilers or builds; each linked Touhou repository documents its own requirements.","The essay is dated 13 October 2026. Its examples are function-level comparisons recorded in linked TH09, TH095, TH04 and TH08 commits.","Later sessions inherited earlier source, diagnostics and failed experiments, so the before-and-after closures are not controlled estimates of model-size effects. The notes treat gpt-web as a changing label that does not identify a run’s model, per-run reasoning effort and budgets are not uniformly recorded, and the GPT-6-Luna-max closure is presented as a discovery across model tiers, not a measured smaller-model advantage.","The TH08 example comes from commit a393f400 (2 September), which target-checks every VC7 floating-literal relocation; the follow-up audits 1,548 relocations and corrects 12 stale rows in five accepted units. The essay’s concern that a reward built on the old check could reinforce wrong source is stated as an inference: the notes record no actual RL exploit or trained model doing so.","Game rights stay with their owners."],"requirements_zh":["文章与证据说明不提供游戏文件、编译器或构建产物；所链接的各东方 Project 仓库自行说明其要求。","文章注明日期为 2026 年 10 月 13 日。文中示例是链接的 TH09、TH095、TH04 与 TH08 提交中记录的函数级比对。","较晚的会话继承了此前的源码、诊断和失败实验，因此前后对比的攻克结果并非对模型规模效应的受控估计。证据说明指出 gpt-web 是随时间变化的标签，无法据此确定单次运行所用模型；各次运行的推理强度和预算并未统一记录；GPT-6-Luna-max 的那次攻克被表述为跨模型档位的发现，而非经测量的小模型优势。","TH08 的例子来自提交 a393f400（9 月 2 日），该提交对每个 VC7 浮点字面量重定位都对照目标进行检查；后续审计共检查 1,548 处重定位，修正了五个已接受单元中的 12 条过时记录。文章担心以旧检查为基础的奖励可能强化错误源码，但这被明确表述为推断：证据说明并未记录任何实际的强化学习利用或训练模型这样做。","游戏权利仍归原权利人。"],"targets":["binary","game"],"url":"https://rea.tools/blog/reverse-engineering-models/","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/AIshihzong/awesome-reverse-engineer-anything/blob/55f9ff058c44a55b63cef83aaf6ea42dcbd6e5b2/README.zh-CN.md","https://github.com/AIshihzong/awesome-reverse-engineer-anything/blob/55f9ff058c44a55b63cef83aaf6ea42dcbd6e5b2/docs/is-it-rea.md","https://github.com/AIshihzong/awesome-reverse-engineer-anything/blob/55f9ff058c44a55b63cef83aaf6ea42dcbd6e5b2/CONTRIBUTING.md","https://github.com/AIshihzong/awesome-reverse-engineer-anything/blob/55f9ff058c44a55b63cef83aaf6ea42dcbd6e5b2/.github/workflows/discover-candidates.yml","https://github.com/AIshihzong/awesome-reverse-engineer-anything/blob/55f9ff058c44a55b63cef83aaf6ea42dcbd6e5b2/LICENSE"],"category":"related-lists","description_en":"An unofficial, bilingual awesome list of what AI agents have reverse-engineered and rebuilt, tagged by whether each case's own sources show that REA was used. It gathers REA's official resources and showcases; community cases in games, apps, hardware and protocols, and security evaluations; the wider wave of AI reverse engineering and clean-room rebuilds without confirmed REA; plugins, guides and research, related MCP tools, other lists and press; and a section on legal questions and controversy.","description_zh":"一份非官方的中英双语 awesome 清单，收录 AI 智能体逆向分析并重建过的项目，并按各案例自身来源能否证明使用了 REA 加注标签。内容包括 REA 的官方资源与展示案例；游戏、应用、硬件与协议以及安全评估方面的社区案例；未确认使用 REA 的更广泛 AI 逆向与净室重写项目；插件、指南与研究、相关 MCP 工具、其他清单和媒体报道；另有一节讨论法律问题与争议。","entry_url":"https://awesomerea.org/resources/aishihzong-awesome-reverse-engineer-anything/","entry_url_zh":"https://awesomerea.org/zh/resources/aishihzong-awesome-reverse-engineer-anything/","evidence_url":"https://github.com/AIshihzong/awesome-reverse-engineer-anything/blob/55f9ff058c44a55b63cef83aaf6ea42dcbd6e5b2/README.md","group":"learn","id":"aishihzong-awesome-reverse-engineer-anything","json_url":"https://awesomerea.org/resources/aishihzong-awesome-reverse-engineer-anything/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/aishihzong-awesome-reverse-engineer-anything/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/aishihzong-awesome-reverse-engineer-anything/index.md","name":"Awesome REA: Reverse Engineer Anything with AI (AIshihzong)","name_zh":"Awesome REA：用 AI 逆向一切（AIshihzong）","record_type":"resource","relationship":"community-learning-resource","requirements":["Started 2026-10-13, with 50 commits on six days through 2026-10-26. At the commit of that day the English README, mirrored in Simplified Chinese, has about 110 one-line entries, with separate pages that index projects by the app they replace, check each \"built with REA\" claim, list new additions and collect X posts and press. The README says figures were checked on 2026-10-21 and partly refreshed on 2026-10-26, and warns that numbers move weekly.","Tags separate cases whose README, author's post or official showcase says REA was used (REA) from AI reverse engineering with other or unnamed tools (AI-RE), clean-room rewrites without reverse-engineering evidence (Rebuild) and unverified claims (Claim?). Claim checks are the maintainer's reading of public sources; the claim page says X posts could not be opened when it was checked. A short evidence section summarises two third-party controlled comparisons of REA, rea-lab and leanrea.","It links this collection among its other lists, and it names other REA case trackers such as awesome-REA-cases. A daily workflow searches GitHub and posts candidates to an issue, but entries are added by hand, and a validator checks entries against the rules stated in the list's CONTRIBUTING.md.","The README calls the list unofficial. It excludes mirrors, pure forks and projects mainly aimed at bypassing licensing, copying paid features or distributing copyrighted assets, and accepts takedown requests. The list is released under CC0-1.0."],"requirements_zh":["始建于 2026-10-13，截至 2026-10-26 共有分布在六天内的 50 个提交。在当天提交中，英文 README（另有简体中文版本）约有 110 个单行条目，另有独立页面按所替代的应用索引项目、逐一核查“使用 REA 构建”的说法、列出新增条目，并汇总 X 帖子与媒体报道。README 称数据核对于 2026-10-21，并于 2026-10-26 部分更新，同时提醒这些数字每周都在变化。","标签区分以下几类：README、作者帖子或官方展示案例表明使用了 REA 的案例（REA），使用其他工具或未说明工具的 AI 逆向（AI-RE），没有逆向证据的净室重写（Rebuild），以及尚未核实的说法（Claim?）。说法核查是维护者对公开来源的解读；核查页面说明核查时无法打开 X 帖子。一个简短的证据部分概述了两项第三方 REA 对照测试 rea-lab 和 leanrea。","它在“其他清单”中链接了本合集，也列出了 awesome-REA-cases 等其他 REA 案例追踪清单。每日运行的工作流会搜索 GitHub 并把候选项发布到一个议题中，但条目均由人工添加；另有校验脚本按清单自己的 CONTRIBUTING.md 所述规则检查条目。","README 说明该清单为非官方。它不收录镜像、纯分支以及主要用于绕过许可、复制付费功能或分发受版权保护素材的项目，并受理下架请求。清单以 CC0-1.0 发布。"],"targets":["app","binary","game","protocol"],"url":"https://github.com/AIshihzong/awesome-reverse-engineer-anything","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-04","additional_evidence_urls":["https://github.com/a-barzanti/ai-rebuilds/blob/8092b23421fca9c8c4c52d51e34d4dc602f95923/data/projects.json","https://github.com/a-barzanti/ai-rebuilds/blob/8092b23421fca9c8c4c52d51e34d4dc602f95923/CONTRIBUTING.md","https://github.com/a-barzanti/ai-rebuilds/blob/8092b23421fca9c8c4c52d51e34d4dc602f95923/LICENSE","https://github.com/a-barzanti/ai-rebuilds/blob/8092b23421fca9c8c4c52d51e34d4dc602f95923/.github/workflows/refresh.yml","https://github.com/a-barzanti/ai-rebuilds/blob/8092b23421fca9c8c4c52d51e34d4dc602f95923/guide/index.html","https://ai-rebuilds.com/guide/","https://github.com/morluto/rea/blob/2cb29693c3d574c4898832047fe309ac1ad00e9d/README.md"],"category":"related-lists","description_en":"A website and GitHub list of 81 projects that rebuild existing software or games without the original source: AI-built clean-room apps such as the ArtCraft suite, software rewritten with coding agents, AI-assisted game decompilations, game engine reimplementations, human-led decompilations and ports, clean-room classics such as Wine and ReactOS, and tools for rebuilders. Each entry says what it rebuilds and carries a method label and an AI-involvement label, and the site can be searched, filtered and sorted by stars or recent activity. A separate guide describes a clean-room rebuild workflow with REA.","description_zh":"网站及 GitHub 列表，收录 81 个在没有原始源码的情况下重建现有软件或游戏的项目：由 AI 构建的净室应用（如 ArtCraft 套件）、借助编码智能体重写的软件、AI 辅助的游戏反编译、游戏引擎重新实现、由人主导的反编译与移植、Wine 和 ReactOS 等经典净室实现，以及重建工具。每个条目说明重建对象，并带有方法标签和 AI 参与程度标签；网站支持搜索、筛选，并可按星标数或近期活跃度排序。另有一篇指南介绍借助 REA 进行净室重建的流程。","entry_url":"https://awesomerea.org/resources/ai-rebuilds-directory/","entry_url_zh":"https://awesomerea.org/zh/resources/ai-rebuilds-directory/","evidence_url":"https://github.com/a-barzanti/ai-rebuilds/blob/8092b23421fca9c8c4c52d51e34d4dc602f95923/README.md","group":"learn","id":"ai-rebuilds-directory","json_url":"https://awesomerea.org/resources/ai-rebuilds-directory/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/ai-rebuilds-directory/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ai-rebuilds-directory/index.md","name":"AI Rebuilds","name_zh":"AI Rebuilds：无源码重建软件与游戏的项目目录","record_type":"resource","relationship":"community-learning-resource","requirement_facets":["scope","scope","attribution","license"],"requirements":["At commit 8092b23, data/projects.json (list updated 2026-10-29, GitHub figures refreshed 2026-11-02) holds 81 projects in seven categories and generates both the README and ai-rebuilds.com.","Method labels are clean-room, reimplementation, decompilation, recompilation, port, rewrite or tool. AI labels (built, assisted, none or unknown) follow each project's own description, and 49 entries are labelled with no AI involvement. A weekly workflow refreshes stars, last-push dates, archive status and licences from the GitHub API and checks links. Entries may not distribute the original's code, binaries, ROMs or assets; the site hosts no software and takes fix and removal requests.","REA is listed first among 13 tools, and only the DX-Ball entry is described as using it. The site's third-party guide “Rebuild something with REA” covers installing rea-agents, choosing REA tools by input type, a two-agent clean-room split and checks against the original; its Node.js minimums (22.19+, 24.11+ or 26+) are older than the 22.23.4+, 24.22.1+ or 26.12.1+ that REA's README now requires.","MIT for the code and the list; the LICENSE excludes original games, their code and assets. Descriptions are the site's own, and the lists it drew entries from are credited, among them CC BY-SA 4.0 and CC0 lists."],"requirements_zh":["在提交 8092b23 中，data/projects.json（列表更新于 2026-10-29，GitHub 数据刷新于 2026-11-02）收录七个分类共 81 个项目，并同时生成 README 和 ai-rebuilds.com。","方法标签分为净室、重新实现、反编译、重编译、移植、重写和工具。AI 标签（AI 构建、AI 辅助、无 AI 或未知）依据各项目自身的说明，其中 49 个条目标为无 AI 参与。每周运行的工作流会通过 GitHub API 刷新星标数、最近推送日期、归档状态与许可证，并检查链接。收录条目不得分发原作的代码、二进制文件、ROM 或素材；网站不托管任何软件，并受理更正与下架请求。","REA 在 13 个工具中排第一，且只有 DX-Ball 条目说明使用了 REA。网站的第三方指南《Rebuild something with REA》介绍了安装 rea-agents、按输入类型选择 REA 工具、双智能体净室分工以及与原作对照检查；但其中的 Node.js 最低版本（22.19+、24.11+ 或 26+）早于 REA README 现在要求的 22.23.4+、24.22.1+ 或 26.12.1+。","代码与列表采用 MIT 许可；LICENSE 说明许可不涵盖原版游戏及其代码与素材。条目说明由网站自行撰写，并注明了收录时参考的列表，其中包括采用 CC BY-SA 4.0 和 CC0 的列表。"],"targets":["app","binary","game"],"url":"https://ai-rebuilds.com/","verification":"source-reviewed","verified_at":"2026-11-02"},{"added_at":"2026-11-04","additional_evidence_urls":["https://reaguide.com/install/","https://reaguide.com/troubleshooting/","https://reaguide.com/claude-setup/","https://reaguide.com/android-apk/","https://reaguide.com/gemini-cli-400-invalid-argument/","https://reaguide.com/install-windows/","https://reaguide.com/fake-rea-copies/","https://reaguide.com/config-generator/","https://github.com/morluto/rea/blob/2cb29693c3d574c4898832047fe309ac1ad00e9d/README.md","https://github.com/morluto/rea/blob/2cb29693c3d574c4898832047fe309ac1ad00e9d/docs/android-analysis.md"],"category":"community-labs","description_en":"An unofficial, independently run guide to installing REA and connecting it to coding agents, in 32 pages: install paths for npx, npm and Bun including Windows, MCP setup for Claude Code and Desktop, Codex, Cursor, Windsurf and Gemini CLI, a config generator for 24 clients, Ghidra, IDA and JADX provider setup, and troubleshooting pages that match exact error text to upstream REA issues. Several pages record the author's own runs, such as Android APK analysis through headless JADX on rea-agents 6.5.0 and a Claude Code setup re-test on 6.8.0. The site also compares REA with Ghidra, IDA and other reverse-engineering MCP servers and documents look-alike REA copies.","description_zh":"由个人独立运营的非官方 REA 指南，共 32 个页面，介绍如何安装 REA 并接入编码智能体：涵盖 npx、npm 与 Bun 安装路径（含 Windows），Claude Code 与 Claude Desktop、Codex、Cursor、Windsurf 和 Gemini CLI 的 MCP 配置，支持 24 种客户端的配置生成器，Ghidra、IDA 与 JADX 分析引擎设置，以及把确切报错文本对应到 REA 上游 issue 的故障排查页面。部分页面记录了作者自己的运行结果，例如在 rea-agents 6.5.0 上通过无界面 JADX 分析 Android APK，以及在 6.8.0 上重新测试 Claude Code 配置。网站还将 REA 与 Ghidra、IDA 及其他逆向 MCP 服务器作比较，并记录冒充 REA 的仿冒副本。","entry_url":"https://awesomerea.org/resources/reaguide-unofficial-rea-guide/","entry_url_zh":"https://awesomerea.org/zh/resources/reaguide-unofficial-rea-guide/","evidence_url":"https://reaguide.com/","group":"learn","id":"reaguide-unofficial-rea-guide","json_url":"https://awesomerea.org/resources/reaguide-unofficial-rea-guide/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/reaguide-unofficial-rea-guide/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/reaguide-unofficial-rea-guide/index.md","name":"REA & AI RE Tools Guide (unofficial)","name_zh":"REA & AI RE Tools Guide（非官方）：REA 安装、接入与故障排查社区指南","record_type":"resource","relationship":"community-learning-resource","requirement_facets":["scope","testing","attribution","license"],"requirements":["Reviewed as a live website on 2026-11-02, when its sitemap listed 32 pages. There is no public source repository or pinned revision; each page dates the check of the commands it restates (2026-10-13 to 2026-10-27 on the reviewed pages). The home page named rea-agents 6.8.0 and Node.js 22.23.4+, 24.22.1+ or 26.12.1+, matching npm and REA's README at review.","Tested pages state their platform and versions: Android APK analysis on Debian 13 with rea-agents 6.5.0, JDK 21 and jadx-headless-mcp 0.7.1 on an F-Droid APK, and Claude Code setup re-run on rea-agents 6.8.0. The Gemini CLI page scanned REA's tool schemas on 6.5.0 and 6.7.0 but sent no request to Gemini, and the Windows page draws on REA's documentation and issue reports.","Every page calls the site an independent community guide not affiliated with the REA project and names rea.tools and morluto/rea as authoritative; its fake-copies page lists only morluto/rea, rea.tools and the rea-agents npm package as official. The pages carry no ads or affiliate links and load Cloudflare Web Analytics.","The pages state no license for the guide's own text. REA is MIT; commercial engines it can drive, such as IDA Pro and Hopper, need their own licenses."],"requirements_zh":["作为在线网站于 2026-11-02 审阅，当时站点地图列出 32 个页面。网站没有公开的源码仓库或固定版本；每个页面都注明其转述命令的核对日期（所审页面为 2026-10-13 至 2026-10-27）。首页写明 rea-agents 6.8.0，以及 Node.js 22.23.4+、24.22.1+ 或 26.12.1+，与审阅时 npm 和 REA README 的信息一致。","经测试的页面注明了平台与版本：在 Debian 13 上用 rea-agents 6.5.0、JDK 21 和 jadx-headless-mcp 0.7.1 分析一个 F-Droid APK，以及在 rea-agents 6.8.0 上重新运行 Claude Code 配置。Gemini CLI 页面在 6.5.0 和 6.7.0 上扫描了 REA 的工具模式，但没有向 Gemini 发送请求；Windows 页面依据的是 REA 文档和 issue 报告。","每个页面都声明本站是独立社区指南、与 REA 项目无关，并将 rea.tools 和 morluto/rea 列为权威来源；其仿冒副本页面只把 morluto/rea、rea.tools 和 npm 包 rea-agents 列为官方来源。页面没有广告或推广返利链接，会加载 Cloudflare Web Analytics 统计脚本。","页面未说明指南自身文字的许可。REA 采用 MIT 许可；它可驱动的商业分析引擎（如 IDA Pro 和 Hopper）需另行取得许可。"],"targets":["app","binary","website"],"url":"https://reaguide.com/","verification":"source-reviewed","verified_at":"2026-11-02"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/ankushKun/sh23ds/blob/08673f69aa99b4f3c00a181b31c7adc26c186408/docs/RESEARCH.md","https://github.com/ankushKun/sh23ds/blob/08673f69aa99b4f3c00a181b31c7adc26c186408/port/STATUS.md"],"category":"community-case-studies","description_en":"sh23ds rebuilds Silent Hill 2: Director's Cut as a native C engine for Nintendo 3DS using the player's PC game data. Game logic, camera, lighting and events were reconstructed from the PC executable; the research notes report analysis with Ghidra and REA. The author reports a complete playthrough in Azahar, while real-console testing and some PC behaviors remain unfinished.","description_zh":"sh23ds 以 C 为 Nintendo 3DS 重建《寂静岭 2：导演剪辑版》的原生引擎，游戏数据由玩家自己的 PC 版本转换。项目从 PC 可执行文件还原逻辑、镜头、光照和事件；研究笔记记载使用 Ghidra 与 REA。作者报告在 Azahar 中可通关，但实体主机测试和部分 PC 行为仍待完善。","entry_url":"https://awesomerea.org/resources/sh23ds-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sh23ds-case/","evidence_url":"https://github.com/ankushKun/sh23ds/blob/08673f69aa99b4f3c00a181b31c7adc26c186408/README.md","group":"rea","id":"sh23ds-case","json_url":"https://awesomerea.org/resources/sh23ds-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sh23ds-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sh23ds-case/index.md","name":"sh23ds: a native 3DS reconstruction of Silent Hill 2","name_zh":"sh23ds：《寂静岭 2》的 3DS 原生重建","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"community-reported-mixed-workflow","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["A 3DS or 2DS running Luma3DS, a copy of Silent Hill 2: Director's Cut for PC and about 1.8 GB of SD-card space are required.","DSP firmware must be dumped once with DSP1 for sound.","The build is in development; the author reports little testing on real consoles and remaining behavior and rendering gaps.","GPL-3.0 license; bundled third-party code keeps its own licenses."],"requirements_zh":["需要运行 Luma3DS 的 3DS 或 2DS、《寂静岭 2：导演剪辑版》PC 版副本，以及约 1.8 GB 的 SD 卡空间。","声音功能需先用 DSP1 导出一次 DSP 固件。","当前为开发版本；作者报告实体主机测试很少，行为和渲染仍有缺口。","采用 GPL-3.0 许可证；附带的第三方代码保留各自许可证。"],"targets":["game"],"url":"https://github.com/ankushKun/sh23ds","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-10-16","category":"agent-mcp","description_en":"Official Hex-Rays MCP server for agent access to IDA databases, with headless operation and optional GUI integration.","description_zh":"Hex-Rays 官方 MCP 服务，让智能体操作 IDA 数据库，支持无界面分析和可选 GUI 联动。","entry_url":"https://awesomerea.org/resources/hex-rays-ida-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/hex-rays-ida-mcp/","evidence_url":"https://github.com/HexRaysSA/ida-mcp/blob/a03842843d6972eb8780f5b3d2f4e8b6d0c9589e/README.md","group":"agents","id":"hex-rays-ida-mcp","json_url":"https://awesomerea.org/resources/hex-rays-ida-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/hex-rays-ida-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hex-rays-ida-mcp/index.md","name":"Hex-Rays IDA MCP","name_zh":"Hex-Rays IDA MCP","record_type":"resource","relationship":"independent-agent-integration","requirements":["IDA 9.4+ with idalib, Python 3.11+, Git and uv; the GUI plugin is optional for headless use."],"requirements_zh":["IDA 9.4+、idalib、Python 3.11+、Git 和 uv；GUI 插件按需安装。"],"targets":["binary"],"url":"https://github.com/HexRaysSA/ida-mcp","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"agent-mcp","description_en":"Ghidra extension and MCP bridge exposing decompilation, symbol navigation and renaming to agents, with GUI and headless modes.","description_zh":"通过 Ghidra 扩展和 MCP 桥接提供反编译、符号导航与重命名，支持 GUI 和无界面运行。","entry_url":"https://awesomerea.org/resources/ghidramcp/","entry_url_zh":"https://awesomerea.org/zh/resources/ghidramcp/","evidence_url":"https://github.com/LaurieWired/GhidraMCP/blob/1e980252087b2479a21b9ca6d82d5829538651a7/README.md","group":"agents","id":"ghidramcp","json_url":"https://awesomerea.org/resources/ghidramcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/ghidramcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghidramcp/index.md","name":"GhidraMCP","name_zh":"GhidraMCP","record_type":"resource","relationship":"independent-agent-integration","requirements":["Match the extension to the documented Ghidra release; Python 3.10+ for the bridge, with additional PyGhidra requirements for headless mode."],"requirements_zh":["Ghidra 扩展须与文档列出的 Ghidra 版本匹配；桥接需要 Python 3.10+，无界面模式另有 PyGhidra 相关要求。"],"targets":["binary"],"url":"https://github.com/LaurieWired/GhidraMCP","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-16","additional_evidence_urls":["https://binary.ninja/2026/09/03/binary-ninja-6.0-krypton.html#mcp"],"category":"agent-mcp","description_en":"Binary Ninja's own MCP interface exposes functions, symbols, disassembly, intermediate languages and decompiled text to agents.","description_zh":"Binary Ninja 自带的 MCP 接口向智能体提供函数、符号、反汇编、中间语言和反编译文本。","entry_url":"https://awesomerea.org/resources/binary-ninja-official-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/binary-ninja-official-mcp/","evidence_url":"https://docs.binary.ninja/guide/mcp.html","group":"agents","id":"binary-ninja-official-mcp","json_url":"https://awesomerea.org/resources/binary-ninja-official-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/binary-ninja-official-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binary-ninja-official-mcp/index.md","name":"Binary Ninja MCP (official)","name_zh":"Binary Ninja MCP（官方）","record_type":"resource","relationship":"independent-agent-integration","requirements":["First shipped in stable Binary Ninja 6.0 (2026-09-03). The GUI server uses HTTP and is included in every edition, Free included; headless stdio binaryninja_mcp requires Commercial or Ultimate on macOS/Linux and is not yet in native Windows packages, where upstream suggests the Linux build under WSL."],"requirements_zh":["Binary Ninja 6.0 稳定版（2026-09-03）首次提供。GUI 服务器使用 HTTP，包括 Free 在内的所有版本均已包含；无界面 stdio 服务器 binaryninja_mcp 需要 macOS/Linux 上的 Commercial 或 Ultimate，原生 Windows 安装包尚未包含，上游建议在 WSL 中使用 Linux 版。"],"targets":["binary"],"url":"https://docs.binary.ninja/guide/mcp.html","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-16","category":"agent-mcp","description_en":"Community Binary Ninja plugin and bridge for MCP clients, including workflows that switch among multiple open binaries.","description_zh":"社区维护的 Binary Ninja 插件与 MCP 桥接，支持在多个已打开的二进制目标间切换。","entry_url":"https://awesomerea.org/resources/binary-ninja-community-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/binary-ninja-community-mcp/","evidence_url":"https://github.com/fosdickio/binary_ninja_mcp/blob/eaf8a980050bee123f1be30334e74b15d21c009c/README.md","group":"agents","id":"binary-ninja-community-mcp","json_url":"https://awesomerea.org/resources/binary-ninja-community-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/binary-ninja-community-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binary-ninja-community-mcp/index.md","name":"Binary Ninja MCP (fosdickio)","name_zh":"Binary Ninja MCP（fosdickio）","record_type":"resource","relationship":"independent-agent-integration","requirements":["Binary Ninja, Python 3.12+ and an MCP client; install the plugin separately from the client bridge."],"requirements_zh":["需安装 Binary Ninja 插件及客户端桥接；README 要求 Python 3.12+。"],"targets":["binary"],"url":"https://github.com/fosdickio/binary_ninja_mcp","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"agent-mcp","description_en":"Community IDA integration useful for existing setups and migration context; its maintainer now recommends the official Hex-Rays MCP server.","description_zh":"已有工作流可参考的社区 IDA 集成；维护者目前推荐迁移到 Hex-Rays 官方 MCP 服务。","entry_url":"https://awesomerea.org/resources/ida-pro-mcp-community/","entry_url_zh":"https://awesomerea.org/zh/resources/ida-pro-mcp-community/","evidence_url":"https://github.com/mrexodia/ida-pro-mcp/blob/c133c3853faa111a9b00ee615c013b720d0c4acd/README.md","group":"agents","id":"ida-pro-mcp-community","json_url":"https://awesomerea.org/resources/ida-pro-mcp-community/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/ida-pro-mcp-community/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ida-pro-mcp-community/index.md","name":"IDA Pro MCP (mrexodia)","name_zh":"IDA Pro MCP（mrexodia）","record_type":"resource","relationship":"independent-agent-integration","requirements":["IDA Pro rather than IDA Free, Python 3.11+ and an MCP client; consult the upstream migration notice before choosing a new setup."],"requirements_zh":["需要 IDA Pro（不支持 IDA Free）、Python 3.11+ 和 MCP 客户端；选择新配置前，请先查看上游的迁移说明。"],"targets":["binary"],"url":"https://github.com/mrexodia/ida-pro-mcp","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-16","category":"agent-mcp","description_en":"Native radare2 MCP server offering binary-analysis tools, reusable sessions and configurable read-only access.","description_zh":"基于 radare2 原生接口的 MCP 服务，提供二进制分析、会话复用和可配置的只读访问。","entry_url":"https://awesomerea.org/resources/radare2-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/radare2-mcp/","evidence_url":"https://github.com/radareorg/radare2-mcp/blob/562c0cf23c42b65b3052f0b294d8778c20facbde/README.md","group":"agents","id":"radare2-mcp","json_url":"https://awesomerea.org/resources/radare2-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/radare2-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/radare2-mcp/index.md","name":"Radare2 MCP Server","name_zh":"Radare2 MCP Server","record_type":"resource","relationship":"independent-agent-integration","requirements":["A compatible radare2 build and r2pm, plus an MCP client; advanced HTTP session features depend on the radare2 ABI."],"requirements_zh":["需要匹配的 radare2/r2pm；HTTP 多会话功能受 radare2 ABI 约束。"],"targets":["binary"],"url":"https://github.com/radareorg/radare2-mcp","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-16","category":"agent-workflows","description_en":"AI plugins inside radare2 for function explanations, naming suggestions and model-assisted decompilation using local or remote models.","description_zh":"在 radare2 内使用本地或远程模型，辅助解释函数、改善命名和反编译结果。","entry_url":"https://awesomerea.org/resources/r2ai/","entry_url_zh":"https://awesomerea.org/zh/resources/r2ai/","evidence_url":"https://github.com/radareorg/r2ai/blob/312921c2a1a39cc6934160f416baecf1330d679e/README.md","group":"agents","id":"r2ai","json_url":"https://awesomerea.org/resources/r2ai/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/r2ai/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/r2ai/index.md","name":"r2ai","name_zh":"r2ai","record_type":"resource","relationship":"independent-agent-integration","requirements":["radare2 with the matching r2ai/decai plugins; configure a local model or the credentials required by the selected remote provider."],"requirements_zh":["需要 radare2 及匹配的 r2ai/decai 插件；配置本地模型，或所选远程服务商要求的凭据。"],"targets":["binary"],"url":"https://github.com/radareorg/r2ai","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"agent-workflows","description_en":"Decompiler-independent AI assistant for function summaries and naming across IDA, Ghidra, Binary Ninja and angr-management.","description_zh":"跨 IDA、Ghidra、Binary Ninja 与 angr-management 的 AI 助手，用于函数摘要和命名辅助。","entry_url":"https://awesomerea.org/resources/daila/","entry_url_zh":"https://awesomerea.org/zh/resources/daila/","evidence_url":"https://github.com/mahaloz/DAILA/blob/af4d6491a327af85f9e0aae0ffa7b7a5acbbbfb8/README.md","group":"agents","id":"daila","json_url":"https://awesomerea.org/resources/daila/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/daila/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/daila/index.md","name":"DAILA","name_zh":"DAILA","record_type":"resource","relationship":"independent-agent-integration","requirements":["A supported decompiler and dailalib; configure a model backend. Ghidra requires the documented PyGhidra setup."],"requirements_zh":["需要受支持的反编译器和模型后端；Ghidra 按文档启用 PyGhidra。"],"targets":["binary"],"url":"https://github.com/mahaloz/DAILA","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"agent-workflows","description_en":"Connects Ghidra to RevEng.AI for function similarity, recovered names, AI explanations and agent-assisted annotation.","description_zh":"将 Ghidra 接入 RevEng.AI，用于函数相似性匹配、名称恢复、AI 解释及辅助标注。","entry_url":"https://awesomerea.org/resources/revengai-ghidra/","entry_url_zh":"https://awesomerea.org/zh/resources/revengai-ghidra/","evidence_url":"https://github.com/RevEngAI/plugin-ghidra/blob/7d386f772530905222c8aa9276de06995b289930/README.md","group":"agents","id":"revengai-ghidra","json_url":"https://awesomerea.org/resources/revengai-ghidra/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/revengai-ghidra/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/revengai-ghidra/index.md","name":"RevEng.AI Ghidra Plugin","name_zh":"RevEng.AI Ghidra 插件","record_type":"resource","relationship":"independent-agent-integration","requirements":["A compatible Ghidra/Java build and a RevEng.AI API key; creating service-side analysis uploads the selected binary."],"requirements_zh":["需要兼容的 Ghidra/Java 构建和 RevEng.AI API key；创建服务端分析会上传所选二进制文件。"],"targets":["binary"],"url":"https://github.com/RevEngAI/plugin-ghidra","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-16","category":"agent-mcp","description_en":"JADX plugin paired with a Python MCP server to inspect decompiled Android classes, resources, cross-references and debugger context.","description_zh":"结合 JADX 插件与 Python MCP 服务，读取 Android 反编译代码、资源、交叉引用和调试上下文。","entry_url":"https://awesomerea.org/resources/jadx-ai-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/jadx-ai-mcp/","evidence_url":"https://github.com/zinja-coder/jadx-ai-mcp/blob/ce64f2261b1d17083210ec87bf52f738c50dc48d/README.md","group":"agents","id":"jadx-ai-mcp","json_url":"https://awesomerea.org/resources/jadx-ai-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/jadx-ai-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/jadx-ai-mcp/index.md","name":"JADX-AI-MCP","name_zh":"JADX-AI-MCP","record_type":"resource","relationship":"independent-agent-integration","requirements":["JADX with the plugin and the separate JADX MCP Server component; upstream lists Java 11+ and Python 3.10+."],"requirements_zh":["JADX 插件和独立 Python MCP 服务都要安装；Java 11+、Python 3.10+。"],"targets":["app"],"url":"https://github.com/zinja-coder/jadx-ai-mcp","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/zinja-coder/apktool-mcp-server/blob/12bb33134af905923a0a58643dcc35fd694ad6f6/apktool_mcp_server.py","https://github.com/zinja-coder/apktool-mcp-server/blob/12bb33134af905923a0a58643dcc35fd694ad6f6/pyproject.toml","https://github.com/zinja-coder/apktool-mcp-server/blob/12bb33134af905923a0a58643dcc35fd694ad6f6/LICENSE","https://github.com/zinja-coder/apktool-mcp-server/releases/tag/V3.0.2"],"category":"agent-mcp","description_en":"Python MCP server that drives a local Apktool install so agents can decode APKs; list, read, search and edit smali and resource files; read AndroidManifest.xml and apktool.yml; and rebuild the project.","description_zh":"基于 Python 的 MCP 服务，调用本地安装的 Apktool，使智能体能够解码 APK，列出、读取、搜索和修改 smali 与资源文件，读取 AndroidManifest.xml 与 apktool.yml，并重新构建项目。","entry_url":"https://awesomerea.org/resources/apktool-mcp-server/","entry_url_zh":"https://awesomerea.org/zh/resources/apktool-mcp-server/","evidence_url":"https://github.com/zinja-coder/apktool-mcp-server/blob/12bb33134af905923a0a58643dcc35fd694ad6f6/README.md","group":"agents","id":"apktool-mcp-server","json_url":"https://awesomerea.org/resources/apktool-mcp-server/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/apktool-mcp-server/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/apktool-mcp-server/index.md","name":"apktool-mcp-server","name_zh":"apktool-mcp-server Apktool MCP 服务","record_type":"resource","relationship":"independent-agent-integration","requirements":["Apktool must be installed and available on PATH. Reviewed release: V3.0.2, published 2026-07-02 and identical to the default branch at review. Run it with uv; the README and script header state Python 3.10+, while pyproject.toml declares >=3.13. Apache-2.0.","MCP is served over stdio by default, or over streamable HTTP on port 8652 with --http. The README lists 13 tools; the reviewed script also registers health_check, analyze_project_structure and get_workspace_info. Project paths must stay inside the workspace directory (apktool_mcp_server_workspace by default).","modify_smali_file, modify_resource_file, clean_project and build_apk change the decoded project, so work on copies; the modify tools keep timestamped backups by default."],"requirements_zh":["需安装 Apktool 并确保其位于 PATH 中。所审阅版本为 V3.0.2，发布于 2026-07-02，审阅时与默认分支一致。使用 uv 运行；README 和脚本头部声明 Python 3.10+，而 pyproject.toml 声明 >=3.13。采用 Apache-2.0 许可证。","默认通过 stdio 提供 MCP 服务，使用 --http 时改为在 8652 端口提供 Streamable HTTP 传输。README 列出 13 个工具；所审阅脚本另外注册了 health_check、analyze_project_structure 和 get_workspace_info。项目路径必须位于工作区目录内（默认为 apktool_mcp_server_workspace）。","modify_smali_file、modify_resource_file、clean_project 和 build_apk 会改动已解码的项目，应在副本上操作；修改类工具默认保留带时间戳的备份。"],"targets":["app"],"url":"https://github.com/zinja-coder/apktool-mcp-server","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/yfe404/frida-mcp/blob/fb7d6c7c74bd249dbc86b8a3c14df79d9486b114/package.json","https://github.com/yfe404/frida-mcp/tree/fb7d6c7c74bd249dbc86b8a3c14df79d9486b114"],"category":"agent-mcp","description_en":"Frida MCP server with persistent instrumentation sessions, runtime inspection and Android static-to-dynamic navigation.","description_zh":"Frida MCP 服务，提供持久插桩会话、运行时检查和 Android 静态代码与动态现场之间的导航。","entry_url":"https://awesomerea.org/resources/frida-mcp-yfe404/","entry_url_zh":"https://awesomerea.org/zh/resources/frida-mcp-yfe404/","evidence_url":"https://github.com/yfe404/frida-mcp/blob/fb7d6c7c74bd249dbc86b8a3c14df79d9486b114/README.md","group":"agents","id":"frida-mcp-yfe404","json_url":"https://awesomerea.org/resources/frida-mcp-yfe404/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/frida-mcp-yfe404/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/frida-mcp-yfe404/index.md","name":"frida-mcp (yfe404)","name_zh":"frida-mcp (yfe404)","record_type":"resource","relationship":"independent-agent-integration","requirements":["Node.js 20+, Frida 17 and an accessible target; on-device operations require the documented device/frida-server setup.","The README’s License heading names MIT, but the pinned commit has no LICENSE file and package.json has no license field; the declaration appears only in the README."],"requirements_zh":["需要 Node.js 20+、Frida 17 和可访问的目标；设备端操作需按文档配置设备和 frida-server。","README 的 License 标题下写明 MIT，但固定提交中没有 LICENSE 文件，package.json 也没有 license 字段；该声明仅见于 README。"],"targets":["app","game"],"url":"https://github.com/yfe404/frida-mcp","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-16","category":"agent-mcp","description_en":"Single-binary Frida MCP server for discovering devices, managing process sessions and loading instrumentation scripts.","description_zh":"单个可执行文件形式的 Frida MCP 服务，用于发现设备、管理进程会话和加载插桩脚本。","entry_url":"https://awesomerea.org/resources/super-trouper/","entry_url_zh":"https://awesomerea.org/zh/resources/super-trouper/","evidence_url":"https://github.com/crissyfield/super-trouper/blob/b3d31adbdb4be2f1a456dc9108ef25655ea206fe/README.md","group":"agents","id":"super-trouper","json_url":"https://awesomerea.org/resources/super-trouper/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/super-trouper/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/super-trouper/index.md","name":"Super Trouper","name_zh":"Super Trouper","record_type":"resource","relationship":"independent-agent-integration","requirements":["Published host binaries target macOS/Linux; target connectivity must support Frida. Source builds need Go, CGO and a matching Frida Core DevKit."],"requirements_zh":["发布的主机二进制面向 macOS/Linux；目标连接方式须支持 Frida。从源码构建需要 Go、CGO 及匹配的 Frida Core DevKit。"],"targets":["app","game"],"url":"https://github.com/crissyfield/super-trouper","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/llvm/llvm-project/blob/793ff02cdb351f064b019681663b805e10cdc9b2/lldb/docs/use/mcp.md"],"category":"agent-mcp","description_en":"LLDB's official MCP interface gives agents debugger sessions and commands for breakpoints, memory inspection and stepping.","description_zh":"LLDB 官方 MCP 接口提供调试会话与命令，使智能体可以设置断点、检查内存和单步执行。","entry_url":"https://awesomerea.org/resources/lldb-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/lldb-mcp/","evidence_url":"https://lldb.llvm.org/use/mcp.html","group":"agents","id":"lldb-mcp","json_url":"https://awesomerea.org/resources/lldb-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/lldb-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/lldb-mcp/index.md","name":"LLDB MCP","name_zh":"LLDB MCP","record_type":"resource","relationship":"independent-agent-integration","requirements":["An LLDB distribution/build containing lldb-mcp and a compatible stdio MCP client; debug-target access follows the host platform's requirements."],"requirements_zh":["需要包含 lldb-mcp 的 LLDB 发行版或构建，以及兼容的 stdio MCP 客户端；对调试目标的访问遵循宿主平台的要求。"],"targets":["app","binary"],"url":"https://lldb.llvm.org/use/mcp.html","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-16","category":"agent-workflows","description_en":"Community agent skill for triage, headless exports and evidence-based RE reports; explicitly documents workflows with REA and other MCP servers.","description_zh":"社区智能体技能，覆盖分诊、无界面导出和证据报告，并明确说明 REA 及其他 MCP 服务的工作流。","entry_url":"https://awesomerea.org/resources/claude-reverse-engineering-skill/","entry_url_zh":"https://awesomerea.org/zh/resources/claude-reverse-engineering-skill/","evidence_url":"https://github.com/EncidXVII/claude-reverse-engineering-skill/blob/bf4605e92b06511d9d0e2e958ecd00e1f6856c3a/README.md","group":"agents","id":"claude-reverse-engineering-skill","json_url":"https://awesomerea.org/resources/claude-reverse-engineering-skill/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/claude-reverse-engineering-skill/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/claude-reverse-engineering-skill/index.md","name":"Claude Reverse Engineering Skill","name_zh":"Claude 逆向工程技能","record_type":"resource","relationship":"independent-agent-integration","requirements":["An Agent Skills-compatible client and Python 3.8+ for bundled scripts; analysis engines and MCP servers are configured separately."],"requirements_zh":["Python 3.8+；分析引擎和 MCP 服务独立配置，属于社区项目。"],"targets":["app","binary"],"url":"https://github.com/EncidXVII/claude-reverse-engineering-skill","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"agent-workflows","description_en":"Focused Binary Ninja and Ghidra analysis skills that describe MCP tool use, analysis recipes and annotation practices.","description_zh":"针对 Binary Ninja 与 Ghidra 的分析技能，提供 MCP 工具使用、分析步骤和标注方法。","entry_url":"https://awesomerea.org/resources/specterops-re-skills/","entry_url_zh":"https://awesomerea.org/zh/resources/specterops-re-skills/","evidence_url":"https://github.com/SpecterOps/skills/blob/a78853eaeaed9fb40aba52a0e52ab43785515318/plugins/reverse-engineering/README.md","group":"agents","id":"specterops-re-skills","json_url":"https://awesomerea.org/resources/specterops-re-skills/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/specterops-re-skills/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/specterops-re-skills/index.md","name":"SpecterOps Reverse Engineering Skills","name_zh":"SpecterOps 逆向工程技能","record_type":"resource","relationship":"independent-agent-integration","requirements":["Configure the chosen Binary Ninja or Ghidra MCP integration separately; the skill package does not install or wrap those servers."],"requirements_zh":["只提供方法与参考，Binary Ninja/Ghidra MCP 需要另行安装配置。"],"targets":["binary"],"url":"https://github.com/SpecterOps/skills/tree/main/plugins/reverse-engineering","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"native-analysis","description_en":"Open-source analysis suite for disassembly, decompilation, graphs and Java/Python automation across executable formats.","description_zh":"开源二进制分析套件，提供反汇编、反编译、图形分析及 Java/Python 自动化接口。","entry_url":"https://awesomerea.org/resources/ghidra/","entry_url_zh":"https://awesomerea.org/zh/resources/ghidra/","evidence_url":"https://github.com/NationalSecurityAgency/ghidra/blob/864999d7ca67cd3f533be600860f102e54370661/README.md","group":"tools","id":"ghidra","json_url":"https://awesomerea.org/resources/ghidra/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ghidra/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghidra/index.md","name":"Ghidra","name_zh":"Ghidra","record_type":"resource","relationship":"foundation","requirements":["An official Ghidra release and its required JDK; extension and script compatibility must match the installed release."],"requirements_zh":["使用正式发行包及对应 JDK；扩展需匹配 Ghidra 版本。"],"targets":["binary","firmware","game"],"url":"https://github.com/NationalSecurityAgency/ghidra","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"native-analysis","description_en":"Scriptable command-line framework for inspecting, disassembling, debugging and modifying binaries across many architectures.","description_zh":"可脚本化的命令行逆向框架，支持多架构二进制检查、反汇编、调试和修改。","entry_url":"https://awesomerea.org/resources/radare2/","entry_url_zh":"https://awesomerea.org/zh/resources/radare2/","evidence_url":"https://github.com/radareorg/radare2/blob/6ac96f50eafef46c1ac75a478a1460819968c66f/README.md","group":"tools","id":"radare2","json_url":"https://awesomerea.org/resources/radare2/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/radare2/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/radare2/index.md","name":"radare2","name_zh":"radare2","record_type":"resource","relationship":"foundation","requirements":["Use the release/build for your host; decompilers and other optional functionality may require separate plugins."],"requirements_zh":["按主机平台选择发行版；反编译器等能力可能来自独立插件。"],"targets":["binary","game"],"url":"https://github.com/radareorg/radare2","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"native-analysis","description_en":"Rizin-powered graphical reverse-engineering workspace with extensible views and Ghidra decompiler integration.","description_zh":"基于 Rizin 的图形逆向工作台，提供可扩展视图及 Ghidra 反编译器集成。","entry_url":"https://awesomerea.org/resources/cutter/","entry_url_zh":"https://awesomerea.org/zh/resources/cutter/","evidence_url":"https://github.com/rizinorg/cutter/blob/734acd17061a4527d9a89668537e3bc64a475e54/README.md","group":"tools","id":"cutter","json_url":"https://awesomerea.org/resources/cutter/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/cutter/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cutter/index.md","name":"Cutter","name_zh":"Cutter","record_type":"resource","relationship":"foundation","requirements":["Desktop builds are available for Linux, macOS and Windows; use plugins compatible with the selected Cutter release."],"requirements_zh":["Linux/macOS/Windows 桌面工具；插件需匹配发布版本。"],"targets":["binary","game"],"url":"https://github.com/rizinorg/cutter","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"dynamic-analysis","description_en":"Dynamic instrumentation toolkit for observing and scripting the behavior of live native and managed processes.","description_zh":"动态插桩工具，用脚本观察和分析运行中的原生及托管进程行为。","entry_url":"https://awesomerea.org/resources/frida/","entry_url_zh":"https://awesomerea.org/zh/resources/frida/","evidence_url":"https://github.com/frida/frida/blob/e598d053f4154fa78a26bb60d4f6cbc407ea387c/README.md","group":"tools","id":"frida","json_url":"https://awesomerea.org/resources/frida/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/frida/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/frida/index.md","name":"Frida","name_zh":"Frida","record_type":"resource","relationship":"foundation","requirements":["Host bindings or CLI tools and a supported target setup; mobile/server/Gadget and signing requirements vary by platform."],"requirements_zh":["需要主机端绑定或 CLI 工具，以及受支持的目标环境；移动端、server/Gadget 与签名要求因平台而异。"],"targets":["app","game"],"url":"https://github.com/frida/frida","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"android","description_en":"Dex-to-Java decompiler with CLI/GUI navigation, resource decoding and cross-reference search for Android packages.","description_zh":"将 Dex 反编译为 Java 的 CLI/GUI 工具，提供 Android 资源解码、代码导航和引用搜索。","entry_url":"https://awesomerea.org/resources/jadx/","entry_url_zh":"https://awesomerea.org/zh/resources/jadx/","evidence_url":"https://github.com/skylot/jadx/blob/c4c45fde27b4f3386dc2ff016ff187229a60a716/README.md","group":"tools","id":"jadx","json_url":"https://awesomerea.org/resources/jadx/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/jadx/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/jadx/index.md","name":"JADX","name_zh":"JADX","record_type":"resource","relationship":"foundation","requirements":["64-bit Java 11+ unless using a bundled runtime; decompilation can be incomplete and should be checked against bytecode."],"requirements_zh":["需要 64 位 Java 11+，使用内置运行时的版本除外；反编译可能不完整，应对照字节码核查。"],"targets":["app"],"url":"https://github.com/skylot/jadx","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-16","category":"android","description_en":"Decodes Android resources and smali into a project-like tree and can rebuild modified packages.","description_zh":"将 Android 资源与 smali 解码为项目目录，并支持重新构建修改后的安装包。","entry_url":"https://awesomerea.org/resources/apktool/","entry_url_zh":"https://awesomerea.org/zh/resources/apktool/","evidence_url":"https://github.com/iBotPeaches/Apktool/blob/0312d212c713c9ebc568b7d9295eec0f47858bfa/README.md","group":"tools","id":"apktool","json_url":"https://awesomerea.org/resources/apktool/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/apktool/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/apktool/index.md","name":"Apktool","name_zh":"Apktool","record_type":"resource","relationship":"foundation","requirements":["A supported Java runtime and the release-specific launcher; rebuilding is distinct from recovering original Java source."],"requirements_zh":["需要对应版本的 Java/启动器；重建 APK 与恢复 Java 源码是不同能力。"],"targets":["app"],"url":"https://github.com/iBotPeaches/Apktool","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"android","description_en":"Python toolkit for APK/DEX metadata, bytecode and reference analysis; the v5 source branch also documents agent skills and MCP.","description_zh":"用于 APK/DEX 元数据、字节码及引用分析的 Python 工具集；v5 源码分支还提供智能体技能和 MCP 文档。","entry_url":"https://awesomerea.org/resources/androguard/","entry_url_zh":"https://awesomerea.org/zh/resources/androguard/","evidence_url":"https://github.com/androguard/androguard/blob/90e7b42940a8f73228368e761bb20227d3d9249a/README.md","group":"tools","id":"androguard","json_url":"https://awesomerea.org/resources/androguard/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/androguard/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/androguard/index.md","name":"Androguard","name_zh":"Androguard","record_type":"resource","relationship":"foundation","requirements":["Version-sensitive: the reviewed README distinguishes the v5 source tree from PyPI 4.1.4; v5 extras require additional Rust/Python components."],"requirements_zh":["当前 README 区分 v5 源码与 PyPI 4.1.4。"],"targets":["app"],"url":"https://github.com/androguard/androguard","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"dotnet","description_en":".NET assembly browser and C# decompiler with whole-project export, metadata inspection and a scriptable command-line frontend.","description_zh":".NET 程序集浏览器与 C# 反编译器，支持完整项目导出、元数据检查和命令行处理。","entry_url":"https://awesomerea.org/resources/ilspy/","entry_url_zh":"https://awesomerea.org/zh/resources/ilspy/","evidence_url":"https://github.com/icsharpcode/ILSpy/blob/729b5dc4d12b8bc08c2a0b1294bbb161098a6211/README.md","group":"tools","id":"ilspy","json_url":"https://awesomerea.org/resources/ilspy/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ilspy/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ilspy/index.md","name":"ILSpy","name_zh":"ILSpy","record_type":"resource","relationship":"foundation","requirements":["Choose a desktop or ILSpyCmd release and its matching .NET runtime; frontend and operating-system support are release-dependent."],"requirements_zh":["选择桌面版或 ILSpyCmd 发行版及匹配的 .NET 运行时；前端与操作系统支持取决于具体版本。"],"targets":["app"],"url":"https://github.com/icsharpcode/ILSpy","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"dotnet","description_en":"Community continuation of dnSpy for debugging and editing .NET assemblies without the original source.","description_zh":"dnSpy 的社区延续项目，可在没有原始源码时调试和编辑 .NET 程序集。","entry_url":"https://awesomerea.org/resources/dnspyex/","entry_url_zh":"https://awesomerea.org/zh/resources/dnspyex/","evidence_url":"https://github.com/dnSpyEx/dnSpy/blob/de5a83051161e0becc70f32834c2596db6239fbd/README.md","group":"tools","id":"dnspyex","json_url":"https://awesomerea.org/resources/dnspyex/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dnspyex/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dnspyex/index.md","name":"dnSpyEx","name_zh":"dnSpyEx","record_type":"resource","relationship":"foundation","requirements":["Windows desktop workflow; Unity debugging requires the companion runtime setup documented by the project."],"requirements_zh":["Windows 工作流；Unity 调试另需配套运行时。"],"targets":["app"],"url":"https://github.com/dnSpyEx/dnSpy","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"javascript-electron","description_en":"Electron's archive tool lists and extracts ASAR contents so packaged JavaScript and application assets can be inspected.","description_zh":"Electron 官方归档工具，可列出和提取 ASAR 内容，便于检查打包后的 JavaScript 与应用资源。","entry_url":"https://awesomerea.org/resources/electron-asar/","entry_url_zh":"https://awesomerea.org/zh/resources/electron-asar/","evidence_url":"https://github.com/electron/asar/blob/01bc908255640c544ac68ea2fe14926a7b80da37/README.md","group":"tools","id":"electron-asar","json_url":"https://awesomerea.org/resources/electron-asar/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/electron-asar/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/electron-asar/index.md","name":"@electron/asar","name_zh":"@electron/asar","record_type":"resource","relationship":"foundation","requirements":["The reviewed release requires Node.js 22.12+."],"requirements_zh":["当前 README 要求 Node.js 22.12+。"],"targets":["app","website"],"url":"https://github.com/electron/asar","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"javascript-electron","description_en":"Improves JavaScript readability by reversing supported obfuscation patterns and unpacking webpack/Browserify bundles.","description_zh":"识别支持的 JavaScript 混淆模式，并拆解 webpack/Browserify 打包文件，改善代码可读性。","entry_url":"https://awesomerea.org/resources/webcrack/","entry_url_zh":"https://awesomerea.org/zh/resources/webcrack/","evidence_url":"https://github.com/j4k0xb/webcrack/blob/0d83a6f2b04e86fa2e87ee4cb6853848cc719308/README.md","group":"tools","id":"webcrack","json_url":"https://awesomerea.org/resources/webcrack/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/webcrack/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/webcrack/index.md","name":"webcrack","name_zh":"webcrack","record_type":"resource","relationship":"foundation","requirements":["The reviewed README specifies Node.js 22 or 24; results depend on the obfuscator/bundler patterns present in the input."],"requirements_zh":["当前 README 指定 Node.js 22 或 24；效果取决于混淆和打包模式。"],"targets":["app","website"],"url":"https://github.com/j4k0xb/webcrack","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/jehna/humanify/blob/65b90bc4743b23317f13d01894776643dbde7fdb/Cargo.toml","https://github.com/jehna/humanify/blob/65b90bc4743b23317f13d01894776643dbde7fdb/LICENSE","https://github.com/jehna/humanify/releases/tag/v3.1.1"],"category":"javascript-electron","description_en":"Rename identifiers in minified JavaScript with LLM-suggested names, applied through scope-aware AST rewriting so the program structure stays unchanged. The new names are model suggestions, not recovered original identifiers.","description_zh":"借助 LLM 为压缩后的 JavaScript 标识符建议名称，并通过遵循作用域的 AST 改写完成重命名，程序结构保持不变。新名称是模型给出的推测，并非恢复出的原始标识符。","entry_url":"https://awesomerea.org/resources/humanify/","entry_url_zh":"https://awesomerea.org/zh/resources/humanify/","evidence_url":"https://github.com/jehna/humanify/blob/65b90bc4743b23317f13d01894776643dbde7fdb/README.md","group":"tools","id":"humanify","json_url":"https://awesomerea.org/resources/humanify/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/humanify/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/humanify/index.md","name":"humanify","name_zh":"humanify JavaScript 标识符重命名工具","record_type":"resource","relationship":"foundation","requirements":["Reviewed release: v3.1.1, published 2026-07-29. Version 3 is a single Rust binary with release builds for macOS arm64/x64, Linux x64/arm64 and Windows x64; source builds use cargo install. MIT-licensed.","Select a provider preset: OpenAI, Gemini, Anthropic, OpenRouter and Requesty need an API key, while Ollama runs a local model. humanify makes one model call per identifier with surrounding code context (500 characters by default); hosted modes send that context to the selected provider, and cost and rate limits scale with the identifier count.","Each run processes one JavaScript file and renames identifiers only: it does not unbundle webpack output or remove control-flow obfuscation, and upstream suggests running webcrack first. Name quality depends on the model; upstream describes local models as slower and less accurate than hosted providers."],"requirements_zh":["所审阅版本为 v3.1.1，发布于 2026-07-29。第 3 版为单个 Rust 可执行文件，发行版提供 macOS arm64/x64、Linux x64/arm64 和 Windows x64 构建；也可通过 cargo install 从源码构建。采用 MIT 许可证。","需选择模型提供方预设：OpenAI、Gemini、Anthropic、OpenRouter 和 Requesty 需要 API 密钥，Ollama 则运行本地模型。humanify 对每个标识符调用一次模型，并附带其周围代码上下文（默认 500 个字符）；使用托管服务时，这些上下文会发送给所选提供方，费用和速率限制随标识符数量增长。","每次运行处理一个 JavaScript 文件，且只重命名标识符：不会拆解 webpack 打包结果，也不会去除控制流混淆，上游建议先用 webcrack 处理。命名质量取决于所用模型；上游指出本地模型比托管服务更慢、准确度更低。"],"targets":["website"],"url":"https://github.com/jehna/humanify","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-16","category":"webassembly","description_en":"WebAssembly tools for binary-to-text conversion, section inspection, validation, interpretation and C translation.","description_zh":"WebAssembly 二进制与文本转换、节区检查、验证、解释执行及 C 转换工具集。","entry_url":"https://awesomerea.org/resources/wabt/","entry_url_zh":"https://awesomerea.org/zh/resources/wabt/","evidence_url":"https://github.com/WebAssembly/wabt/blob/806787e92904571c4628065277344f42c55ece05/README.md","group":"tools","id":"wabt","json_url":"https://awesomerea.org/resources/wabt/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/wabt/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wabt/index.md","name":"WABT","name_zh":"WABT","record_type":"resource","relationship":"foundation","requirements":["Select a release supporting the module's WebAssembly features; optional proposals may require explicit flags."],"requirements_zh":["选择支持目标 WASM 特性的版本；部分提案需要显式选项。"],"targets":["binary","website"],"url":"https://github.com/WebAssembly/wabt","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"webassembly","description_en":"Bytecode Alliance CLI and Rust libraries for inspecting WebAssembly modules, metadata, components and WIT interfaces.","description_zh":"Bytecode Alliance 提供的 CLI 与 Rust 库，用于检查 WebAssembly 模块、元数据、组件和 WIT 接口。","entry_url":"https://awesomerea.org/resources/wasm-tools/","entry_url_zh":"https://awesomerea.org/zh/resources/wasm-tools/","evidence_url":"https://github.com/bytecodealliance/wasm-tools/blob/a56e8d3d2a0b754e0465c668f8e4b68bad97590f/README.md","group":"tools","id":"wasm-tools","json_url":"https://awesomerea.org/resources/wasm-tools/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/wasm-tools/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wasm-tools/index.md","name":"wasm-tools","name_zh":"wasm-tools","record_type":"resource","relationship":"foundation","requirements":["Use prebuilt release artifacts or a Rust toolchain; proposal/component support depends on the selected release."],"requirements_zh":["可用预编译版本或 Rust 工具链；组件/提案支持随版本变化。"],"targets":["binary","website"],"url":"https://github.com/bytecodealliance/wasm-tools","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"firmware","description_en":"Identifies embedded formats and optionally extracts their contents, with entropy analysis for firmware triage.","description_zh":"识别固件中的嵌入格式并按需提取内容，辅以熵分析帮助初步分诊。","entry_url":"https://awesomerea.org/resources/binwalk/","entry_url_zh":"https://awesomerea.org/zh/resources/binwalk/","evidence_url":"https://github.com/ReFirmLabs/binwalk/blob/e0a4434159f22ff926c1baa3872d93a5f8dbf87e/README.md","group":"tools","id":"binwalk","json_url":"https://awesomerea.org/resources/binwalk/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/binwalk/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binwalk/index.md","name":"Binwalk","name_zh":"Binwalk","record_type":"resource","relationship":"foundation","requirements":["The current v3 implementation is Rust-based; extraction needs the appropriate external tools or the documented container environment."],"requirements_zh":["v3 为 Rust 实现；提取能力依赖外部工具或完整容器环境。"],"targets":["firmware"],"url":"https://github.com/ReFirmLabs/binwalk","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"firmware","description_en":"Recursively extracts archives and filesystems from binary blobs while reporting chunk boundaries and unknown regions.","description_zh":"递归提取二进制数据中的归档与文件系统，同时报告数据块边界和未识别区域。","entry_url":"https://awesomerea.org/resources/unblob/","entry_url_zh":"https://awesomerea.org/zh/resources/unblob/","evidence_url":"https://github.com/onekey-sec/unblob/blob/3b470cd1c33e10a3ae977a6caaab5dbcbf2d5ce8/README.md","group":"tools","id":"unblob","json_url":"https://awesomerea.org/resources/unblob/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/unblob/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/unblob/index.md","name":"unblob","name_zh":"unblob","record_type":"resource","relationship":"foundation","requirements":["Python package plus external extractors, or the bundled Docker image; check the project's dependency inventory for the formats needed."],"requirements_zh":["需 Python 包及外部解包器，或自带依赖的 Docker 镜像；所需格式请查阅项目的依赖清单。"],"targets":["firmware"],"url":"https://github.com/onekey-sec/unblob","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"firmware","description_en":"Ghidra loaders and helpers for PCI option ROMs, UEFI firmware volumes, Intel flash descriptors and coreboot images.","description_zh":"面向 PCI Option ROM、UEFI 固件卷、Intel Flash Descriptor 和 coreboot 镜像的 Ghidra 加载器与辅助脚本。","entry_url":"https://awesomerea.org/resources/ghidra-firmware-utils/","entry_url_zh":"https://awesomerea.org/zh/resources/ghidra-firmware-utils/","evidence_url":"https://github.com/al3xtjames/ghidra-firmware-utils/blob/f54438b90a0effc0a89ef7c0ea3053e5086f422f/README.md","group":"tools","id":"ghidra-firmware-utils","json_url":"https://awesomerea.org/resources/ghidra-firmware-utils/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ghidra-firmware-utils/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghidra-firmware-utils/index.md","name":"Ghidra Firmware Utilities","name_zh":"Ghidra 固件工具集","record_type":"resource","relationship":"foundation","requirements":["The reviewed build instructions require Ghidra 12.0+ and JDK 21+; build against the same Ghidra/JRE environment used for analysis."],"requirements_zh":["当前构建要求 Ghidra 12.0+、JDK 21+，仍须与实际安装环境匹配。"],"targets":["firmware"],"url":"https://github.com/al3xtjames/ghidra-firmware-utils","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"dynamic-analysis","description_en":"Python emulation framework that adds OS, filesystem and API behavior around CPU emulation for instrumented binary analysis.","description_zh":"在 CPU 仿真之上补充操作系统、文件系统和 API 行为的 Python 框架，用于可插桩的二进制分析。","entry_url":"https://awesomerea.org/resources/qiling/","entry_url_zh":"https://awesomerea.org/zh/resources/qiling/","evidence_url":"https://github.com/qilingframework/qiling/blob/206b90fd891cee4bc0056d2198ddf85678b55f96/README.md","group":"tools","id":"qiling","json_url":"https://awesomerea.org/resources/qiling/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/qiling/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/qiling/index.md","name":"Qiling","name_zh":"Qiling","record_type":"resource","relationship":"foundation","requirements":["A supported Python environment and the target's required root filesystem/libraries; emulation coverage varies by platform."],"requirements_zh":["需要受支持的 Python 环境，并为目标准备对应的根文件系统和依赖库；仿真覆盖范围因平台而异。"],"targets":["binary","firmware"],"url":"https://github.com/qilingframework/qiling","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"binary-libraries","description_en":"Multi-architecture CPU emulator for executing selected instruction ranges with register, memory and hook control.","description_zh":"多架构 CPU 仿真引擎，可控制寄存器、内存和钩子，执行选定的指令片段。","entry_url":"https://awesomerea.org/resources/unicorn/","entry_url_zh":"https://awesomerea.org/zh/resources/unicorn/","evidence_url":"https://github.com/unicorn-engine/unicorn/blob/c24c9ebe773ce6fbecb0e39f68ffb23b7326b17f/README.md","group":"tools","id":"unicorn","json_url":"https://awesomerea.org/resources/unicorn/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/unicorn/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/unicorn/index.md","name":"Unicorn Engine","name_zh":"Unicorn Engine","record_type":"resource","relationship":"foundation","requirements":["Use a supported binding and explicitly supply the CPU state and memory model; it is a CPU emulator rather than a complete OS environment."],"requirements_zh":["要自行提供 CPU 状态、内存和外部行为；不是完整操作系统模拟器。"],"targets":["binary","firmware","game"],"url":"https://github.com/unicorn-engine/unicorn","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"binary-libraries","description_en":"Python binary-analysis framework combining control-flow recovery, symbolic execution, data-flow analysis and decompilation.","description_zh":"结合控制流恢复、符号执行、数据流分析和反编译的 Python 二进制分析框架。","entry_url":"https://awesomerea.org/resources/angr/","entry_url_zh":"https://awesomerea.org/zh/resources/angr/","evidence_url":"https://github.com/angr/angr/blob/ae9f5786fd94410ca400063bf21719aa8b564d3e/README.md","group":"tools","id":"angr","json_url":"https://awesomerea.org/resources/angr/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/angr/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/angr/index.md","name":"angr","name_zh":"angr","record_type":"resource","relationship":"foundation","requirements":["A compatible Python 3 environment; useful results require an appropriate model of program inputs, state and external functions."],"requirements_zh":["需要兼容的 Python 3 环境；要获得有用结果，还需合理建模程序输入、状态和外部函数。"],"targets":["binary"],"url":"https://github.com/angr/angr","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-16","category":"binary-libraries","description_en":"Library for structured parsing and modification of executable formats including ELF, PE and Mach-O.","description_zh":"对 ELF、PE、Mach-O 等可执行文件格式进行结构化解析与修改的库。","entry_url":"https://awesomerea.org/resources/lief/","entry_url_zh":"https://awesomerea.org/zh/resources/lief/","evidence_url":"https://github.com/lief-project/LIEF/blob/b68429c52d5f704e34445e92890fd801937f10e3/README.md","group":"tools","id":"lief","json_url":"https://awesomerea.org/resources/lief/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/lief/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/lief/index.md","name":"LIEF","name_zh":"LIEF","record_type":"resource","relationship":"foundation","requirements":["C++, Python or Rust integration; check the distinction between core and extended features for the selected distribution."],"requirements_zh":["C++/Python/Rust 接口；核心与扩展版功能需分别核对。"],"targets":["binary"],"url":"https://github.com/lief-project/LIEF","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"binary-libraries","description_en":"Disassembly library with architecture-neutral APIs and instruction details for custom binary-analysis pipelines.","description_zh":"提供统一 API 和指令细节的多架构反汇编库，适合构建自定义二进制分析流程。","entry_url":"https://awesomerea.org/resources/capstone/","entry_url_zh":"https://awesomerea.org/zh/resources/capstone/","evidence_url":"https://github.com/capstone-engine/capstone/blob/d7ef910bc6e76561e705511db4db964ffde015e2/README.md","group":"tools","id":"capstone","json_url":"https://awesomerea.org/resources/capstone/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/capstone/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/capstone/index.md","name":"Capstone","name_zh":"Capstone","record_type":"resource","relationship":"foundation","requirements":["Select a library/binding release supporting the target ISA and mode; the next branch can differ from stable releases."],"requirements_zh":["按 ISA 和模式选择绑定/版本；开发分支与稳定版本可能不同。"],"targets":["binary"],"url":"https://github.com/capstone-engine/capstone","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"native-analysis","description_en":"Hex editor with a binary-pattern language, structured data inspection and visual tools for understanding file formats.","description_zh":"带二进制模式语言、结构化数据检查及可视化功能的十六进制编辑器，适合理解文件格式。","entry_url":"https://awesomerea.org/resources/imhex/","entry_url_zh":"https://awesomerea.org/zh/resources/imhex/","evidence_url":"https://github.com/WerWolv/ImHex/blob/fddad83966128b96dc1a8c9d55ba0ccd0721e276/README.md","group":"tools","id":"imhex","json_url":"https://awesomerea.org/resources/imhex/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/imhex/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/imhex/index.md","name":"ImHex","name_zh":"ImHex","record_type":"resource","relationship":"foundation","requirements":["Desktop build or web edition; some data sources and features depend on the platform and selected build."],"requirements_zh":["桌面或 Web 版本；数据来源及功能可用性因平台而异。"],"targets":["binary","firmware","game"],"url":"https://github.com/WerWolv/ImHex","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"dynamic-analysis","description_en":"Windows binary debugger with disassembly, memory views and plugins for analyzing programs without source code.","description_zh":"Windows 二进制调试器，通过反汇编、内存视图和插件分析没有源码的程序。","entry_url":"https://awesomerea.org/resources/x64dbg/","entry_url_zh":"https://awesomerea.org/zh/resources/x64dbg/","evidence_url":"https://github.com/x64dbg/x64dbg/blob/ac4db12e133a3b2a91756fd2fbe864aa8dd1c453/README.md","group":"tools","id":"x64dbg","json_url":"https://awesomerea.org/resources/x64dbg/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/x64dbg/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/x64dbg/index.md","name":"x64dbg","name_zh":"x64dbg","record_type":"resource","relationship":"foundation","requirements":["Windows; choose x32dbg or x64dbg according to the executable's architecture."],"requirements_zh":["Windows；根据目标位数选择 x32dbg 或 x64dbg。"],"targets":["binary"],"url":"https://github.com/x64dbg/x64dbg","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"dynamic-analysis","description_en":"Native and remote debugger for controlling execution and inspecting live or crashed program state.","description_zh":"支持本地与远程调试，可控制执行并检查运行中或崩溃后的程序状态。","entry_url":"https://awesomerea.org/resources/gdb/","entry_url_zh":"https://awesomerea.org/zh/resources/gdb/","evidence_url":"https://www.sourceware.org/gdb/","group":"tools","id":"gdb","json_url":"https://awesomerea.org/resources/gdb/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/gdb/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/gdb/index.md","name":"GDB","name_zh":"GDB","record_type":"resource","relationship":"foundation","requirements":["A GDB build supporting the target architecture and a permitted local process, core dump, simulator or remote debug endpoint."],"requirements_zh":["需要支持目标架构的 GDB 构建，以及获准调试的本地进程、核心转储、模拟器或远程调试端点。"],"targets":["binary"],"url":"https://sourceware.org/gdb/","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"dynamic-analysis","description_en":"Records process execution and replays it under GDB, enabling repeatable inspection and reverse execution.","description_zh":"记录进程执行并在 GDB 下重放，便于重复检查现场和反向执行。","entry_url":"https://awesomerea.org/resources/rr/","entry_url_zh":"https://awesomerea.org/zh/resources/rr/","evidence_url":"https://github.com/rr-debugger/rr/blob/7ff9786535d6b6bfab78a22bd7bb2570287b44a1/README.md","group":"tools","id":"rr","json_url":"https://awesomerea.org/resources/rr/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/rr/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rr/index.md","name":"rr","name_zh":"rr","record_type":"resource","relationship":"foundation","requirements":["Linux with supported CPU performance counters; VM use depends on counter virtualization and the project's hardware requirements."],"requirements_zh":["Linux；需要支持的 CPU 性能计数器，虚拟机另需计数器虚拟化。"],"targets":["binary"],"url":"https://github.com/rr-debugger/rr","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"binary-diffing","description_en":"IDA-based binary diffing that matches functions and transfers names, comments and types between analyzed versions.","description_zh":"基于 IDA 的二进制差异分析工具，可匹配函数并迁移名称、注释与类型信息。","entry_url":"https://awesomerea.org/resources/diaphora/","entry_url_zh":"https://awesomerea.org/zh/resources/diaphora/","evidence_url":"https://github.com/joxeankoret/diaphora/blob/a7e15949942e13e3343615c3959e3326e78aa325/README.md","group":"tools","id":"diaphora","json_url":"https://awesomerea.org/resources/diaphora/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/diaphora/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/diaphora/index.md","name":"Diaphora","name_zh":"Diaphora","record_type":"resource","relationship":"foundation","requirements":["IDA with Python 3 support; richer pseudocode and microcode comparisons depend on the corresponding decompiler capabilities."],"requirements_zh":["依赖 IDA 与 Python 3；伪代码/微码比较取决于反编译器能力。"],"targets":["binary","game"],"url":"https://github.com/joxeankoret/diaphora","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"binary-diffing","description_en":"Compares disassembled binaries to find matching functions and changed code across versions.","description_zh":"比较反汇编后的二进制文件，定位不同版本中的对应函数与代码变化。","entry_url":"https://awesomerea.org/resources/bindiff/","entry_url_zh":"https://awesomerea.org/zh/resources/bindiff/","evidence_url":"https://github.com/google/bindiff/blob/882333b463b9d98e1e5ddf221921f5622b3936e9/README.md","group":"tools","id":"bindiff","json_url":"https://awesomerea.org/resources/bindiff/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/bindiff/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bindiff/index.md","name":"BinDiff","name_zh":"BinDiff","record_type":"resource","relationship":"foundation","requirements":["Requires a separate supported disassembler/export pipeline; upstream documents IDA Pro, Binary Ninja and Ghidra configurations."],"requirements_zh":["需要单独的反汇编/导出流程；官方说明覆盖 IDA、Binary Ninja 和 Ghidra。"],"targets":["binary","game"],"url":"https://github.com/google/bindiff","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"native-analysis","description_en":"Format-aware file identification and static inspection using parsers, signatures and programmable heuristics.","description_zh":"结合格式解析器、签名和可编程启发式规则进行文件识别与静态检查。","entry_url":"https://awesomerea.org/resources/detect-it-easy/","entry_url_zh":"https://awesomerea.org/zh/resources/detect-it-easy/","evidence_url":"https://github.com/horsicq/Detect-It-Easy/blob/bd693a6c31f4e2748ca14ed01da05e055eb2b0c7/README.md","group":"tools","id":"detect-it-easy","json_url":"https://awesomerea.org/resources/detect-it-easy/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/detect-it-easy/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/detect-it-easy/index.md","name":"Detect It Easy","name_zh":"Detect It Easy","record_type":"resource","relationship":"foundation","requirements":["Use the project-linked DIE-engine releases for the host platform; identification results require analyst interpretation."],"requirements_zh":["从项目指向的 DIE-engine 发行版获取程序；签名与启发式结果仍需判断。"],"targets":["binary","game"],"url":"https://github.com/horsicq/Detect-It-Easy","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"learning","description_en":"Free self-paced security courses with learning paths for reverse engineering, firmware and systems foundations.","description_zh":"免费的自主学习课程，提供逆向工程、固件和系统基础等学习路线。","entry_url":"https://awesomerea.org/resources/ost2/","entry_url_zh":"https://awesomerea.org/zh/resources/ost2/","evidence_url":"https://ost2.fyi/Learning-Paths.html","group":"learn","id":"ost2","json_url":"https://awesomerea.org/resources/ost2/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/ost2/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ost2/index.md","name":"OpenSecurityTraining2","name_zh":"OpenSecurityTraining2","record_type":"resource","relationship":"learning","requirements":["Browser access; choose classes according to their published prerequisites and lab requirements."],"requirements_zh":["需要浏览器访问；按各课程公布的前置知识与实验要求选择课程。"],"targets":["binary"],"url":"https://ost2.fyi/","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"learning","description_en":"Hands-on reverse-engineering module covering functions, data access, static tools and dynamic tools with hosted exercises.","description_zh":"包含托管练习的逆向工程课程，覆盖函数、数据访问、静态工具和动态工具。","entry_url":"https://awesomerea.org/resources/pwn-college-re/","entry_url_zh":"https://awesomerea.org/zh/resources/pwn-college-re/","evidence_url":"https://pwn.college/program-security/reverse-engineering/","group":"learn","id":"pwn-college-re","json_url":"https://awesomerea.org/resources/pwn-college-re/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/pwn-college-re/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pwn-college-re/index.md","name":"pwn.college: Reverse Engineering","name_zh":"pwn.college：逆向工程","record_type":"resource","relationship":"learning","requirements":["Browser access and the platform's account/environment setup for interactive challenges."],"requirements_zh":["需要浏览器访问；交互式挑战需要平台账户及其环境设置。"],"targets":["binary"],"url":"https://pwn.college/program-security/reverse-engineering/","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"learning","description_en":"Dennis Yurichev's free book on understanding compiled programs and assembly, available in multiple languages.","description_zh":"Dennis Yurichev 编写的免费逆向入门书，以汇编与编译后程序理解为核心，提供多语言版本。","entry_url":"https://awesomerea.org/resources/re-for-beginners/","entry_url_zh":"https://awesomerea.org/zh/resources/re-for-beginners/","evidence_url":"https://beginners.re/","group":"learn","id":"re-for-beginners","json_url":"https://awesomerea.org/resources/re-for-beginners/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/re-for-beginners/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/re-for-beginners/index.md","name":"Reverse Engineering for Beginners","name_zh":"逆向工程入门","record_type":"resource","relationship":"learning","requirements":["A browser or PDF reader; use the toolchains relevant to the exercises being followed."],"requirements_zh":["可在线阅读或下载 PDF；练习使用书中相应工具链。"],"targets":["binary"],"url":"https://beginners.re/","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"learning","description_en":"Official practical reference for radare2 analysis, disassembly, scripting, debugging and related plugins.","description_zh":"radare2 官方实践参考，覆盖分析、反汇编、脚本、调试及相关插件。","entry_url":"https://awesomerea.org/resources/radare2-book/","entry_url_zh":"https://awesomerea.org/zh/resources/radare2-book/","evidence_url":"https://book.rada.re/","group":"learn","id":"radare2-book","json_url":"https://awesomerea.org/resources/radare2-book/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/radare2-book/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/radare2-book/index.md","name":"The Official Radare2 Book","name_zh":"radare2 官方手册","record_type":"resource","relationship":"learning","requirements":["Upstream lists radare2 5.8.x as the minimum and recommends a current release for following the examples."],"requirements_zh":["官方列出最低 radare2 5.8.x，建议使用当前发布版本。"],"targets":["binary"],"url":"https://book.rada.re/","verification":"source-reviewed","verified_at":"2026-10-15"},{"added_at":"2026-10-16","category":"game-analysis","description_en":"Inspect frame captures, draw calls, shaders, and graphics resources in your own game or graphics application.","description_zh":"检查自己游戏或图形应用的帧捕获、绘制调用、着色器和图形资源。","entry_url":"https://awesomerea.org/resources/renderdoc/","entry_url_zh":"https://awesomerea.org/zh/resources/renderdoc/","evidence_url":"https://github.com/baldurk/renderdoc/blob/5ce2e4ae6dd54f0c8455103a2c984540614020bf/README.md","group":"tools","id":"renderdoc","json_url":"https://awesomerea.org/resources/renderdoc/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/renderdoc/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/renderdoc/index.md","name":"RenderDoc","name_zh":"RenderDoc","record_type":"resource","relationship":"foundation","requirements":["Supported graphics API and replay platform; upstream supports captures of your own, open-source, or free projects. Metal is not supported."],"requirements_zh":["需要受支持的图形 API 和重放平台；上游支持捕获自有、开源或免费项目。暂不支持 Metal。"],"targets":["app","game"],"url":"https://github.com/baldurk/renderdoc","verification":"source-reviewed","verified_at":"2026-10-16T01:05:01Z"},{"added_at":"2026-10-16","category":"game-analysis","description_en":"Analyze Unity game files, inspect asset dependencies, and convert supported assets into Unity project formats.","description_zh":"分析 Unity 游戏文件，检查资源依赖并将支持的资源转换为 Unity 工程格式。","entry_url":"https://awesomerea.org/resources/assetripper/","entry_url_zh":"https://awesomerea.org/zh/resources/assetripper/","evidence_url":"https://github.com/AssetRipper/AssetRipper/blob/62ec21e916b7dec29b10c2020ecead186773438b/README.md","group":"tools","id":"assetripper","json_url":"https://awesomerea.org/resources/assetripper/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/assetripper/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/assetripper/index.md","name":"AssetRipper","name_zh":"AssetRipper","record_type":"resource","relationship":"foundation","requirements":["Unity 3.5.0–6000.4.X coverage varies by version; GPL-3.0 open-source edition, with separate premium features."],"requirements_zh":["Unity 3.5.0–6000.4.X 的覆盖程度因版本而异；开源版采用 GPL-3.0，另有独立高级功能。"],"targets":["game"],"url":"https://github.com/AssetRipper/AssetRipper","verification":"source-reviewed","verified_at":"2026-10-16T01:05:01Z"},{"added_at":"2026-10-16","category":"game-analysis","description_en":"Recover managed representations from Unity IL2CPP builds using binary and metadata analysis; reconstruction remains a work in progress.","description_zh":"结合二进制与元数据分析，从 Unity IL2CPP 构建恢复托管表示；重建能力仍在开发中。","entry_url":"https://awesomerea.org/resources/cpp2il/","entry_url_zh":"https://awesomerea.org/zh/resources/cpp2il/","evidence_url":"https://github.com/SamboyCoding/Cpp2IL/blob/7fd44cac62d39914d81e10c07600ffd4110d29a9/README.md","group":"tools","id":"cpp2il","json_url":"https://awesomerea.org/resources/cpp2il/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/cpp2il/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cpp2il/index.md","name":"Cpp2IL","name_zh":"Cpp2IL","record_type":"resource","relationship":"foundation","requirements":["Compatible Unity build and metadata; current development branch is a major rewrite and primarily targets .NET 9.0."],"requirements_zh":["需要兼容的 Unity 构建和元数据；当前开发分支为重大重写，主要面向 .NET 9.0。"],"targets":["app","binary","game"],"url":"https://github.com/SamboyCoding/Cpp2IL","verification":"source-reviewed","verified_at":"2026-10-16T01:05:01Z"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/Perfare/Il2CppDumper/releases/tag/v6.7.46"],"category":"game-analysis","description_en":"Recover IL2CPP metadata and dummy assemblies, and generate helper scripts for native analysis tools; method code is not restored.","description_zh":"恢复 IL2CPP 元数据及占位程序集，为原生分析工具生成辅助脚本；不会还原方法代码。","entry_url":"https://awesomerea.org/resources/il2cppdumper/","entry_url_zh":"https://awesomerea.org/zh/resources/il2cppdumper/","evidence_url":"https://github.com/Perfare/Il2CppDumper/blob/101f3c62ef3dd3183aad4ab0b547ead63ffb45d0/README.md","group":"tools","id":"il2cppdumper","json_url":"https://awesomerea.org/resources/il2cppdumper/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/il2cppdumper/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/il2cppdumper/index.md","name":"Il2CppDumper","name_zh":"Il2CppDumper","record_type":"resource","relationship":"foundation","requirements":["Matching IL2CPP executable and global-metadata.dat; documented Unity support is 5.3–2022.2.","As checked on 2026-10-20, the latest release is v6.7.46 (2024-07-06) and the master head is a same-day commit, four commits after the reviewed one with the README unchanged; GitHub’s last recorded push was 2024-08-18, the repository is not archived and the README does not mark it as maintained, superseded or archived."],"requirements_zh":["需要匹配的 IL2CPP 可执行文件和 global-metadata.dat；文档支持 Unity 5.3–2022.2。","据 2026-10-20 核查，最新发布版本为 v6.7.46（2024-07-06），master 分支最新提交为同日提交，比所审阅的提交晚四个提交，README 未改动；GitHub 记录的最后一次推送为 2024-08-18，仓库未归档，README 未标注其仍在维护、已被取代或已归档。"],"targets":["app","binary","game"],"url":"https://github.com/Perfare/Il2CppDumper","verification":"source-reviewed","verified_at":"2026-10-16T01:05:01Z"},{"added_at":"2026-10-16","category":"agent-mcp","description_en":"Expose existing RenderDoc captures to an agent for bounded frame, pipeline, resource, and shader inspection.","description_zh":"向智能体开放已有 RenderDoc 捕获文件，分步检查帧、管线、资源和着色器。","entry_url":"https://awesomerea.org/resources/renderdoc-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/renderdoc-mcp/","evidence_url":"https://github.com/scarletfantasy/renderdoc-mcp/blob/ea360049b2add5e5f783bee2c084dfccf8337051/README.md","group":"agents","id":"renderdoc-mcp","json_url":"https://awesomerea.org/resources/renderdoc-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/renderdoc-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/renderdoc-mcp/index.md","name":"RenderDoc MCP","name_zh":"RenderDoc MCP","record_type":"resource","relationship":"independent-agent-integration","requirements":["Windows and replayable .rdc capture; maintainer baseline is RenderDoc 1.43. Optional native Python backend needs a source-built binding."],"requirements_zh":["需要 Windows 及可重放的 .rdc 捕获文件；维护者基准版本为 RenderDoc 1.43。可选原生 Python 后端需自行编译绑定。"],"targets":["app","game"],"url":"https://github.com/scarletfantasy/renderdoc-mcp","verification":"source-reviewed","verified_at":"2026-10-16T01:05:01Z"},{"added_at":"2026-10-16","category":"agent-mcp","description_en":"Connect an agent to Chrome for live page inspection, network debugging, and performance traces.","description_zh":"连接智能体与 Chrome，检查实时页面、调试网络并记录性能轨迹。","entry_url":"https://awesomerea.org/resources/chrome-devtools-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/chrome-devtools-mcp/","evidence_url":"https://github.com/ChromeDevTools/chrome-devtools-mcp/blob/5463101120f94fc7c79d43c44c01a4ab57835279/README.md","group":"agents","id":"chrome-devtools-mcp","json_url":"https://awesomerea.org/resources/chrome-devtools-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/chrome-devtools-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/chrome-devtools-mcp/index.md","name":"Chrome DevTools MCP","name_zh":"Chrome DevTools MCP","record_type":"resource","relationship":"independent-agent-integration","requirements":["Supported Node.js LTS, Chrome, and an MCP client; selected browser profile and target must be available locally."],"requirements_zh":["需要受支持的 Node.js LTS、Chrome 和 MCP 客户端；所选浏览器配置与目标需在本地可用。"],"targets":["website"],"url":"https://github.com/ChromeDevTools/chrome-devtools-mcp","verification":"source-reviewed","verified_at":"2026-10-16T01:05:01Z"},{"added_at":"2026-10-16","category":"web-analysis","description_en":"Inspect and record HTTP traffic with an interactive proxy, web interface, or scriptable command-line tools.","description_zh":"通过交互代理、Web 界面或可脚本化命令行检查和记录 HTTP 流量。","entry_url":"https://awesomerea.org/resources/mitmproxy/","entry_url_zh":"https://awesomerea.org/zh/resources/mitmproxy/","evidence_url":"https://github.com/mitmproxy/mitmproxy/blob/7458ea26ccec7d06ffdc434f878e8d92973aec7e/README.md","group":"tools","id":"mitmproxy","json_url":"https://awesomerea.org/resources/mitmproxy/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/mitmproxy/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mitmproxy/index.md","name":"mitmproxy","name_zh":"mitmproxy","record_type":"resource","relationship":"foundation","requirements":["Configure the client proxy; HTTPS inspection requires the appropriate local trust configuration. Saved captures and live interception are distinct workflows."],"requirements_zh":["需要配置客户端代理；HTTPS 检查需要相应的本地信任配置。已保存捕获文件与实时拦截是不同工作流。"],"targets":["app","protocol","website"],"url":"https://github.com/mitmproxy/mitmproxy","verification":"source-reviewed","verified_at":"2026-10-16T01:05:01Z"},{"added_at":"2026-10-16","category":"agent-mcp","description_en":"Drive browser interactions through structured accessibility snapshots to investigate reproducible web behavior.","description_zh":"通过结构化无障碍快照驱动浏览器交互，调查可复现的网页行为。","entry_url":"https://awesomerea.org/resources/playwright-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/playwright-mcp/","evidence_url":"https://github.com/microsoft/playwright-mcp/blob/ea00e62b711700733a9eff05b149b48cd3eb1b48/README.md","group":"agents","id":"playwright-mcp","json_url":"https://awesomerea.org/resources/playwright-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/playwright-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/playwright-mcp/index.md","name":"Playwright MCP","name_zh":"Playwright MCP","record_type":"resource","relationship":"independent-agent-integration","requirements":["Node.js 18+ and an MCP client; the upstream also offers a separate CLI-and-skills approach for coding agents."],"requirements_zh":["需要 Node.js 18+ 和 MCP 客户端；上游另有面向编码智能体的 CLI 与技能方案。"],"targets":["website"],"url":"https://github.com/microsoft/playwright-mcp","verification":"source-reviewed","verified_at":"2026-10-16T01:05:01Z"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/PortSwigger/mcp-server/blob/5f76126409780ecba2b766c7f7388f465c5b5f94/src/main/kotlin/net/portswigger/mcp/tools/Tools.kt","https://github.com/PortSwigger/mcp-server/blob/5f76126409780ecba2b766c7f7388f465c5b5f94/src/main/kotlin/net/portswigger/mcp/config/McpConfig.kt","https://github.com/PortSwigger/mcp-server/blob/5f76126409780ecba2b766c7f7388f465c5b5f94/BappManifest.bmf","https://github.com/PortSwigger/mcp-server/blob/5f76126409780ecba2b766c7f7388f465c5b5f94/gradle.properties","https://github.com/PortSwigger/mcp-server/blob/5f76126409780ecba2b766c7f7388f465c5b5f94/LICENSE","https://github.com/PortSwigger/mcp-server/releases/tag/v1.3.0","https://portswigger.net/bappstore/9952290f04ed4f628e624d0aa9dccebc","https://portswigger.net/burp/eula"],"category":"agent-mcp","description_en":"PortSwigger's Burp Suite extension serves an MCP endpoint, plus a packaged stdio proxy, so agents can query proxy HTTP and WebSocket history, send HTTP/1.1 or HTTP/2 requests, and open Repeater or Intruder tabs.","description_zh":"PortSwigger 官方 Burp Suite 扩展，提供 MCP 端点并附带 stdio 代理，使智能体可以查询代理中的 HTTP 与 WebSocket 历史记录、发送 HTTP/1.1 或 HTTP/2 请求，并打开 Repeater 或 Intruder 标签页。","entry_url":"https://awesomerea.org/resources/burp-suite-mcp-server/","entry_url_zh":"https://awesomerea.org/zh/resources/burp-suite-mcp-server/","evidence_url":"https://github.com/PortSwigger/mcp-server/blob/5f76126409780ecba2b766c7f7388f465c5b5f94/README.md","group":"agents","id":"burp-suite-mcp-server","json_url":"https://awesomerea.org/resources/burp-suite-mcp-server/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/burp-suite-mcp-server/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/burp-suite-mcp-server/index.md","name":"Burp Suite MCP Server","name_zh":"Burp Suite MCP Server 扩展","record_type":"resource","relationship":"independent-agent-integration","requirements":["Requires Burp Suite, proprietary PortSwigger software under its own EULA: Professional is a paid subscription, while Community Edition is free under separate Community terms. The extension's GPL-3.0 license does not cover Burp. The extension manifest lists both editions as supported.","Reviewed release: v1.3.0, published 2026-05-26 with a prebuilt burp-mcp-all.jar and also listed in the BApp Store. Source builds use Gradle and need Java and the jar command on PATH; the reviewed build targets a Java 21 toolchain.","The SSE server listens on 127.0.0.1:9876 by default; stdio-only clients use the packaged proxy JAR. Approval prompts for sending HTTP requests and for reading HTTP history, WebSocket history and Organizer items are on by default. Config-editing tools are opt-in, and exported options filter credentials by default.","Scanner-issue and Collaborator tools are registered only in Burp Suite Professional. Data returned to the MCP client is handled by that client's model provider. The default branch was seven commits ahead of v1.3.0 at review, with the same registered tool set."],"requirements_zh":["需要安装 Burp Suite。Burp Suite 是 PortSwigger 的专有软件，适用其自身的最终用户许可协议：Professional 为付费订阅，Community Edition 按单独的社区版条款免费使用。扩展本身的 GPL-3.0 许可证不涵盖 Burp。扩展清单标明两个版本均受支持。","所审阅版本为 v1.3.0，发布于 2026-05-26，提供预编译的 burp-mcp-all.jar，也已上架 BApp Store。从源码构建需使用 Gradle，并要求 PATH 中有 Java 与 jar 命令；所审阅的构建使用 Java 21 工具链。","SSE 服务默认监听 127.0.0.1:9876；只支持 stdio 的客户端可使用随附的代理 JAR。发送 HTTP 请求以及读取 HTTP 历史、WebSocket 历史和 Organizer 条目时，默认会弹出审批提示。修改配置的工具需手动启用，导出配置时默认过滤凭据。","扫描器问题与 Collaborator 工具仅在 Burp Suite Professional 中注册。返回给 MCP 客户端的数据由该客户端所用的模型提供方处理。审阅时默认分支比 v1.3.0 多 7 个提交，注册的工具集合保持不变。"],"targets":["app","website"],"url":"https://github.com/PortSwigger/mcp-server","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/pionxzh/wakaru/blob/d77ed638d7af07500be39f512e2f058fd8d53cd1/npm/package.json","https://github.com/pionxzh/wakaru/releases/tag/v1.14.0"],"category":"web-analysis","description_en":"Recover readable modules from shipped JavaScript bundles by reversing recognized minifier and transpiler patterns. Supports bundle splitting and modern-syntax recovery for inspecting production frontend code.","description_zh":"通过还原已识别的压缩与转译模式，从发布后的 JavaScript 包中恢复可读模块，支持拆包与现代语法恢复，便于分析生产环境前端代码。","entry_url":"https://awesomerea.org/resources/wakaru/","entry_url_zh":"https://awesomerea.org/zh/resources/wakaru/","evidence_url":"https://github.com/pionxzh/wakaru/blob/d77ed638d7af07500be39f512e2f058fd8d53cd1/README.md","group":"tools","id":"wakaru","json_url":"https://awesomerea.org/resources/wakaru/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/wakaru/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wakaru/index.md","name":"Wakaru","name_zh":"Wakaru","record_type":"resource","relationship":"foundation","requirements":["The npm CLI declares Node.js >=16; standalone v1.14.0 binaries are published for macOS arm64, Linux arm64/x64, and Windows arm64/x64.","Provide supported JavaScript bundles or source maps. Original identifiers may be unrecoverable without maps; heavy control-flow or VM obfuscation requires other tooling. Package/version inventory is explicitly still in development."],"requirements_zh":["npm CLI 声明需要 Node.js >=16；v1.14.0 提供 macOS arm64、Linux arm64/x64 和 Windows arm64/x64 独立程序。","输入须为支持的 JavaScript 包或源码映射。没有映射时可能无法恢复原始标识符；重度控制流或虚拟机混淆需要其他工具。包名与版本清单功能仍在开发中。"],"targets":["website"],"url":"https://github.com/pionxzh/wakaru","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/spectral-mcp/spectral/blob/4c0367a1e88849acfe80f3d49ba0cfc649d405c5/pyproject.toml","https://github.com/spectral-mcp/spectral/releases/tag/v0.11.0"],"category":"web-analysis","description_en":"Analyze captured application HTTP traffic with an LLM to generate MCP tools, OpenAPI 3.1 specifications, or GraphQL schemas. Generated tools call the observed API directly after capture and authentication setup.","description_zh":"用 LLM 分析捕获的应用 HTTP 流量，生成 MCP 工具、OpenAPI 3.1 规范或 GraphQL 模式；完成抓包与认证配置后，生成的工具可直接调用已观察到的 API。","entry_url":"https://awesomerea.org/resources/spectral-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/spectral-mcp/","evidence_url":"https://github.com/spectral-mcp/spectral/blob/4c0367a1e88849acfe80f3d49ba0cfc649d405c5/README.md","group":"agents","id":"spectral-mcp","json_url":"https://awesomerea.org/resources/spectral-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/spectral-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/spectral-mcp/index.md","name":"Spectral","name_zh":"Spectral","record_type":"resource","relationship":"independent-agent-integration","requirements":["Python >=3.11; capture through the Chrome extension or MITM proxy, and configure a supported LLM provider or local Ollama endpoint.","The reviewed v0.11.0 workflow depends on captured traffic and valid application authentication. Analysis and automatic repair use the configured LLM."],"requirements_zh":["需要 Python >=3.11，通过 Chrome 扩展或中间人代理抓取流量，并配置支持的 LLM 提供商或本地 Ollama 端点。","已审阅的 v0.11.0 工作流依赖实际捕获的流量和有效的应用认证。分析与自动修复会调用配置的 LLM。"],"targets":["app","protocol","website"],"url":"https://github.com/spectral-mcp/spectral","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/Owl4444/jsdeob-workbench/blob/e51a8281cb2ee11e95c5f7cafaa2090569a91abf/package.json","https://github.com/Owl4444/jsdeob-workbench/tree/e51a8281cb2ee11e95c5f7cafaa2090569a91abf"],"category":"web-analysis","description_en":"Inspect JavaScript ASTs and variable scopes while building visual chains of Babel transforms. Save analysis projects and reusable plugins to iteratively simplify obfuscated scripts.","description_zh":"在查看 JavaScript AST 和变量作用域的同时，可视化编排 Babel 转换链；保存分析项目与可复用插件，逐步简化混淆脚本。","entry_url":"https://awesomerea.org/resources/jsdeob-workbench/","entry_url_zh":"https://awesomerea.org/zh/resources/jsdeob-workbench/","evidence_url":"https://github.com/Owl4444/jsdeob-workbench/blob/e51a8281cb2ee11e95c5f7cafaa2090569a91abf/README.md","group":"tools","id":"jsdeob-workbench","json_url":"https://awesomerea.org/resources/jsdeob-workbench/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/jsdeob-workbench/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/jsdeob-workbench/index.md","name":"jsdeob-workbench","name_zh":"jsdeob-workbench","record_type":"resource","relationship":"foundation","requirements":["Run from source with Node.js and npm; the documented default standalone build targets Windows. No GitHub release was available at review time.","Built-in transforms may need sample-specific scripts, and deeply nested input can overflow the stack. Its optional evaluation helper executes code and should be used in a local sandbox, as upstream explicitly advises.","No license was found at the pinned commit: the repository root has no LICENSE file, and neither the README nor package.json declares one. Public source availability is not a reuse grant."],"requirements_zh":["通过 Node.js 和 npm 从源码运行；文档中的默认独立构建目标为 Windows。审阅时未提供 GitHub Release。","内置转换可能需要针对样本编写脚本，深层嵌套输入可能造成栈溢出。可选的求值辅助功能会执行代码，上游明确建议在本地沙箱中使用。","固定提交中未找到许可证：仓库根目录没有 LICENSE 文件，README 和 package.json 也未声明许可证。源码公开不等于授予复用许可。"],"targets":["website"],"url":"https://github.com/Owl4444/jsdeob-workbench","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/UnderminersTeam/UndertaleModTool/releases/tag/0.9.2.0"],"category":"game-analysis","description_en":"Browse and modify supported GameMaker data files, extract assets, and decompile or compile GML VM code. Includes room editing, scripted changes, a CLI, and the reusable UndertaleModLib library.","description_zh":"浏览和修改受支持的 GameMaker 数据文件、提取资源，以及反编译或编译 GML VM 代码；提供房间编辑、脚本化修改、CLI 和可复用的 UndertaleModLib 库。","entry_url":"https://awesomerea.org/resources/undertalemodtool/","entry_url_zh":"https://awesomerea.org/zh/resources/undertalemodtool/","evidence_url":"https://github.com/UnderminersTeam/UndertaleModTool/blob/f43e12c445c37d50dc6244caa12ccab232983f3f/README.md","group":"tools","id":"undertalemodtool","json_url":"https://awesomerea.org/resources/undertalemodtool/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/undertalemodtool/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/undertalemodtool/index.md","name":"UndertaleModTool","name_zh":"UndertaleModTool","record_type":"resource","relationship":"foundation","requirements":["Supply a supported game data file such as data.win, game.ios, or game.unx. Stable 0.9.2.0 provides a 64-bit Windows GUI and CLI packages for Windows, Ubuntu, and macOS.","GML VM code editing excludes YYC, and some language features remain unsupported. Building the reviewed source requires the .NET 10 SDK or later and recursive submodules; the GUI build requires Windows."],"requirements_zh":["需提供支持的游戏数据文件，如 data.win、game.ios 或 game.unx。稳定版 0.9.2.0 提供 64 位 Windows GUI，以及 Windows、Ubuntu 和 macOS 的 CLI 包。","GML VM 代码编辑不支持 YYC，部分语言功能尚未支持。构建所审阅源码需要 .NET 10 SDK 或更新版本并递归获取子模块；构建 GUI 需要 Windows。"],"targets":["game"],"url":"https://github.com/UnderminersTeam/UndertaleModTool","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/vfsfitvnm/frida-il2cpp-bridge/blob/af361f544de8c0016d7cc24be7a87e83b3c4029d/package.json","https://github.com/vfsfitvnm/frida-il2cpp-bridge/blob/af361f544de8c0016d7cc24be7a87e83b3c4029d/cli/main.py","https://github.com/vfsfitvnm/frida-il2cpp-bridge/releases/tag/v0.14.0","https://github.com/vfsfitvnm/frida-il2cpp-bridge/blob/af361f544de8c0016d7cc24be7a87e83b3c4029d/cli/src/app.py"],"category":"game-analysis","description_en":"Inspect IL2CPP classes, methods, and fields in a live process, and trace or intercept method calls without supplying global-metadata.dat. Complements static IL2CPP dumpers with runtime observation.","description_zh":"在运行中的进程里检查 IL2CPP 类、方法和字段，无需提供 global-metadata.dat 即可跟踪或拦截方法调用，为静态 IL2CPP 转储工具补充运行时观察能力。","entry_url":"https://awesomerea.org/resources/frida-il2cpp-bridge/","entry_url_zh":"https://awesomerea.org/zh/resources/frida-il2cpp-bridge/","evidence_url":"https://github.com/vfsfitvnm/frida-il2cpp-bridge/blob/af361f544de8c0016d7cc24be7a87e83b3c4029d/README.md","group":"tools","id":"frida-il2cpp-bridge","json_url":"https://awesomerea.org/resources/frida-il2cpp-bridge/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/frida-il2cpp-bridge/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/frida-il2cpp-bridge/index.md","name":"frida-il2cpp-bridge","name_zh":"frida-il2cpp-bridge","record_type":"resource","relationship":"foundation","requirements":["Requires Frida access to a running IL2CPP application and the npm module. The current bundled CLI needs Python 3.12+ (inferred from its typing.override import) and Frida tooling.","The reviewed README states Unity 5.3.0–6000.3.x support. Android and Linux are the platforms upstream tests; Windows, iOS, and macOS are listed as supported with explicit warnings of possible breakage. Latest release at review: v0.14.0."],"requirements_zh":["需要通过 Frida 访问运行中的 IL2CPP 应用，并使用 npm 模块。当前附带 CLI 需要 Python 3.12+（根据 typing.override 导入推断）及 Frida 工具。","所审阅 README 声明支持 Unity 5.3.0–6000.3.x。上游测试的平台为 Android 与 Linux；Windows、iOS、macOS 虽列为支持，但明确提示可能出现问题。审阅时最新版本为 v0.14.0。"],"targets":["app","game"],"url":"https://github.com/vfsfitvnm/frida-il2cpp-bridge","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/encounter/objdiff/releases/tag/v3.8.2","https://github.com/encounter/objdiff/blob/eed74b99c4e94dd154882259931201badc6fdbd1/objdiff-cli/src/cmd/diff.rs#L83-L90"],"category":"game-analysis","description_en":"Compare functions and data in reference and rebuilt object files to guide matching decompilation. Displays instruction-level differences, demangles C++ symbols, and can rebuild when source files change.","description_zh":"比较参考目标文件与重新编译目标文件中的函数和数据，辅助匹配反编译；显示指令级差异、还原 C++ 符号，并可在源码变更时自动重新构建。","entry_url":"https://awesomerea.org/resources/objdiff/","entry_url_zh":"https://awesomerea.org/zh/resources/objdiff/","evidence_url":"https://github.com/encounter/objdiff/blob/eed74b99c4e94dd154882259931201badc6fdbd1/README.md","group":"tools","id":"objdiff","json_url":"https://awesomerea.org/resources/objdiff/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/objdiff/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/objdiff/index.md","name":"objdiff","name_zh":"objdiff","record_type":"resource","relationship":"foundation","requirements":["Provide reference and rebuilt object files. Project integration and automatic rebuilding use objdiff.json plus a working toolchain and build command; direct CLI comparisons can use file paths.","v3.8.2 provides GUI binaries for Windows/Linux x86_64 and macOS arm64/x86_64, with additional CLI targets. Building from source requires Rust. Supported architectures include ARM, ARM64, MIPS, PowerPC, SuperH, and x86/x86_64."],"requirements_zh":["需提供参考与重新编译的目标文件。项目集成和自动重新构建使用 objdiff.json 及可用的工具链与构建命令；直接 CLI 比较可传入文件路径。","v3.8.2 提供 Windows/Linux x86_64 和 macOS arm64/x86_64 GUI，CLI 还支持其他目标。源码构建需要 Rust。支持 ARM、ARM64、MIPS、PowerPC、SuperH 与 x86/x86_64。"],"targets":["binary","game"],"url":"https://github.com/encounter/objdiff","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/simonlindholm/decomp-permuter/blob/8556c81d80d1c1af98a858c8f4dc951357f29139/LICENSE"],"category":"game-analysis","description_en":"Randomly or systematically permutes one C function, recompiling each variant and scoring it against a target object file to search for matching compiler output. PERM macros specify manual alternatives, and the optional permuter@home mode distributes runs to other workers.","description_zh":"随机或系统地改写单个 C 函数，逐个重新编译变体并与目标文件评分对比，以寻找与原编译输出一致的写法。可用 PERM 宏指定手动备选写法，可选的 permuter@home 模式能把运行分发给其他工作节点。","entry_url":"https://awesomerea.org/resources/decomp-permuter/","entry_url_zh":"https://awesomerea.org/zh/resources/decomp-permuter/","evidence_url":"https://github.com/simonlindholm/decomp-permuter/blob/8556c81d80d1c1af98a858c8f4dc951357f29139/README.md","group":"tools","id":"decomp-permuter","json_url":"https://awesomerea.org/resources/decomp-permuter/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/decomp-permuter/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/decomp-permuter/index.md","name":"decomp-permuter","name_zh":"decomp-permuter","record_type":"resource","relationship":"foundation","requirements":["Each input directory needs a single-function .c file, the target .o, a project-specific compile script and a settings .toml; import.py can generate them for configured Make or Ninja projects. The README lists MIPS (IDO, possibly GCC), PowerPC and ARM32 assembly.","Requires Python 3 and toml; pynacl and Levenshtein are optional. permuter@home needs access granted by an existing network member, supports a limited compiler list and does not run on native Windows; workers also need Docker.","A zero score means the scored disassembly matches. The README warns that random passes often find nonsensical changes, so a human must still choose readable, non-overfitted code; the tool does not recover names, types or semantics.","MIT license. No packaged release; last commit at review: 2026-10-06."],"requirements_zh":["每个输入目录需要只含一个函数的 .c 文件、待匹配的 .o 目标文件、项目专用的编译脚本和设置 .toml；已配置好的 Make 或 Ninja 项目可用 import.py 自动生成。README 列出的支持范围为 MIPS（IDO，GCC 可能可用）、PowerPC 和 ARM32 汇编。","需要 Python 3 和 toml；pynacl 与 Levenshtein 为可选依赖。permuter@home 需由已加入网络的成员授权，只支持有限的编译器，不能在原生 Windows 上运行；工作节点还需要 Docker。","得分为零只表示评分所用的反汇编一致。README 提醒随机改写常会找到不合常理的变化，仍需由人挑选可读、未过拟合的写法；工具不会恢复名称、类型或语义。","MIT 许可证。没有打包发布版本；审阅时最后一次提交为 2026-10-06。"],"targets":["binary","game"],"url":"https://github.com/simonlindholm/decomp-permuter","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/simonlindholm/asm-differ/blob/0dd09af8f8008f1f880327cf0aca3b26d2562ea2/LICENSE","https://github.com/simonlindholm/asm-differ/blob/0dd09af8f8008f1f880327cf0aca3b26d2562ea2/diff_settings.py","https://github.com/decompme/decomp.me/blob/6056cf56b3bf4f1cfcf2496fe97f83cc09b08010/frontend/src/lib/settings.ts#L55-L58"],"category":"game-analysis","description_en":"Diffs original and rebuilt assembly for one function or ROM address to guide matching decompilation; its watch mode can rerun make when sources change. The README describes it as decomp.me’s default diff viewer and points to objdiff as a modern alternative.","description_zh":"对比单个函数或 ROM 地址的原始汇编与重新编译后的汇编，辅助匹配反编译；监视模式可在源码变更时重新运行 make。README 称它是 decomp.me 的默认差异查看器，并推荐 objdiff 作为现代替代方案。","entry_url":"https://awesomerea.org/resources/asm-differ/","entry_url_zh":"https://awesomerea.org/zh/resources/asm-differ/","evidence_url":"https://github.com/simonlindholm/asm-differ/blob/0dd09af8f8008f1f880327cf0aca3b26d2562ea2/README.md","group":"tools","id":"asm-differ","json_url":"https://awesomerea.org/resources/asm-differ/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/asm-differ/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/asm-differ/index.md","name":"asm-differ","name_zh":"asm-differ","record_type":"resource","relationship":"foundation","requirements":["Each project needs a diff_settings.py naming the original and rebuilt images and linker map; object-file mode compares against references in an expected/ directory. Requires Python 3 with colorama, watchdog, levenshtein and cxxfilt, plus an objdump for the target.","The README lists MIPS, PPC, AArch64, ARM32, SH2, SH4, m68k and limited x86. Install it as a submodule, by copying diff.py or with pip from Git; there is no packaged release. Last commit at review: 2026-09-06.","Released under the Unlicense. It shows instruction-level differences only and does not recover names, types or semantics."],"requirements_zh":["每个项目需要一个 diff_settings.py，指明原始镜像、重新编译的镜像和链接映射文件；目标文件模式与 expected/ 目录中的参考文件对比。需要 Python 3 及 colorama、watchdog、levenshtein、cxxfilt，并需对应目标架构的 objdump。","README 列出 MIPS、PPC、AArch64、ARM32、SH2、SH4、m68k，以及有限的 x86 支持。可作为子模块、直接复制 diff.py 或通过 pip 从 Git 安装；没有打包发布版本。审阅时最后一次提交为 2026-09-06。","采用 Unlicense。只显示指令级差异，不会恢复名称、类型或语义。"],"targets":["binary","game"],"url":"https://github.com/simonlindholm/asm-differ","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/UE-Explorer/UE-Explorer/releases/tag/1.6.2"],"category":"game-analysis","description_en":"Explore Unreal packages through class, property, and dependency trees; decompile and export UnrealScript classes, inspect bytecode, and examine structured binary data.","description_zh":"通过类、属性与依赖树浏览 Unreal 包，反编译和导出 UnrealScript 类、检查字节码，并查看结构化二进制数据。","entry_url":"https://awesomerea.org/resources/ue-explorer/","entry_url_zh":"https://awesomerea.org/zh/resources/ue-explorer/","evidence_url":"https://github.com/UE-Explorer/UE-Explorer/blob/9ef6670933da6154e26a9631a9e22ce9e7d3333f/README.md","group":"tools","id":"ue-explorer","json_url":"https://awesomerea.org/resources/ue-explorer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ue-explorer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ue-explorer/index.md","name":"UE Explorer","name_zh":"UE Explorer","record_type":"resource","relationship":"foundation","requirements":["Windows application built on .NET Framework 4.8; provide supported Unreal Engine 1, 2/2.5, or 3 packages. Latest stable release at review: 1.6.2.","UE2X and UE4/5 are not generally supported; only limited experimental parsing of loose UE4 .uasset containers is documented. Game-specific engine modifications can affect compatibility; older 1.6-and-earlier builds require decompressed packages."],"requirements_zh":["基于 .NET Framework 4.8 的 Windows 应用，需要受支持的 Unreal Engine 1、2/2.5 或 3 包。审阅时最新稳定版为 1.6.2。","不普遍支持 UE2X 和 UE4/5；文档仅列出对独立 UE4 .uasset 容器的有限实验性解析。游戏自定义引擎改动可能影响兼容性，1.6 及更早版本需要先解压包文件。"],"targets":["binary","game"],"url":"https://github.com/UE-Explorer/UE-Explorer","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/morkt/GARbro/releases/tag/v1.5.44","https://morkt.github.io/GARbro/supported.html"],"category":"game-analysis","description_en":"Browse recognized visual-novel resource archives as folders, preview their contents, and extract images or audio with conversion to common formats.","description_zh":"像浏览文件夹一样查看已识别的视觉小说资源归档，预览内容，并在提取图像或音频时转换为常用格式。","entry_url":"https://awesomerea.org/resources/garbro/","entry_url_zh":"https://awesomerea.org/zh/resources/garbro/","evidence_url":"https://github.com/morkt/GARbro/blob/b09ee4570ccb1daf6ac56710ee8934dc0b8baeb0/README.md","group":"tools","id":"garbro","json_url":"https://awesomerea.org/resources/garbro/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/garbro/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/garbro/index.md","name":"GARbro","name_zh":"GARbro","record_type":"resource","relationship":"foundation","requirements":["Requires Windows and .NET Framework 4.6 or newer; archive browsing and conversion depend on the supported game/format list. Encrypted archives may require credentials or a recognized game selection.","Latest GitHub release at review remains v1.5.44 (2019-03-31). As checked on 2026-10-20, the reviewed 2023-10-27 commit is still the master head, GitHub’s last recorded push was 2024-07-08, the repository is not archived and the README does not mark it as maintained, superseded or archived."],"requirements_zh":["需要 Windows 与 .NET Framework 4.6 或更新版本；归档浏览和转换取决于已支持的游戏及格式。加密归档可能需要凭据或选择已识别的游戏。","审阅时最新 GitHub 版本仍为 v1.5.44（2019-03-31）。据 2026-10-20 核查，所审阅的 2023-10-27 提交仍是 master 分支最新提交，GitHub 记录的最后一次推送为 2024-07-08，仓库未归档，README 未标注其仍在维护、已被取代或已归档。"],"targets":["game"],"url":"https://github.com/morkt/GARbro","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/MobSF/Mobile-Security-Framework-MobSF/blob/08872c8454e59f8a6347c35b46852c9929f5eb5e/README.md"],"category":"android","description_en":"Inspect mobile application packages with static analysis and supported-device dynamic testing, including runtime behavior and network traffic, through a web interface and APIs.","description_zh":"通过 Web 界面与 API 检查移动应用包，结合静态分析及受支持设备上的动态测试，分析运行时行为与网络流量。","entry_url":"https://awesomerea.org/resources/mobsf/","entry_url_zh":"https://awesomerea.org/zh/resources/mobsf/","evidence_url":"https://github.com/MobSF/docs/blob/d3dc0f64b0767914c5dc6e42c8427ee645532623/running_mobsf_docker.md","group":"tools","id":"mobsf","json_url":"https://awesomerea.org/resources/mobsf/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/mobsf/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mobsf/index.md","name":"Mobile Security Framework (MobSF)","name_zh":"Mobile Security Framework（MobSF）","record_type":"resource","relationship":"foundation","requirements":["The documented container setup recommends Docker 20.10+; dynamic analysis additionally needs a supported device or emulator accessible from the container.","Android dynamic analysis is documented for rooted Android 4.1–11, up to API 30; Android 12+ is not supported by that workflow.","iOS dynamic analysis uses Corellium or a jailbroken device; the physical-device route is marked beta."],"requirements_zh":["文档中的容器方案建议使用 Docker 20.10+；动态分析还需要容器可访问的受支持设备或模拟器。","Android 动态分析支持已 root 的 Android 4.1–11，最高 API 30；该流程不支持 Android 12 及以上版本。","iOS 动态分析使用 Corellium 或越狱设备；真实设备方案标为测试阶段。"],"targets":["app"],"url":"https://github.com/MobSF/Mobile-Security-Framework-MobSF","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","category":"android","description_en":"Explore running Android and iOS apps with a Frida-backed command interface for inspecting app storage, memory, runtime objects, and instrumented behavior.","description_zh":"通过基于 Frida 的命令界面探索运行中的 Android 与 iOS 应用，检查应用存储、内存、运行时对象和插桩后的行为。","entry_url":"https://awesomerea.org/resources/objection/","entry_url_zh":"https://awesomerea.org/zh/resources/objection/","evidence_url":"https://github.com/sensepost/objection/blob/35c4e2c9e68a0354b21db4833252e0c4acd5bd28/pyproject.toml","group":"tools","id":"objection","json_url":"https://awesomerea.org/resources/objection/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/objection/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/objection/index.md","name":"objection","name_zh":"objection","record_type":"resource","relationship":"foundation","requirements":["Current package metadata requires Python 3.11+ and Frida 16+; this supersedes the older Python minimum still shown in the installation wiki.","The target must support the documented Frida attachment or patched-app workflow. Android patching requires Android build tools and Apktool 2.9.0+; iOS patching requires the documented Xcode and signing tools."],"requirements_zh":["当前软件包元数据要求 Python 3.11+ 和 Frida 16+，应以此为准，而非安装 Wiki 中仍保留的旧 Python 最低版本。","目标需满足文档中的 Frida 附加或应用修补流程。Android 修补需要 Android 构建工具及 Apktool 2.9.0+；iOS 修补需要文档规定的 Xcode 与签名工具。"],"targets":["app"],"url":"https://github.com/sensepost/objection","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/ChiChou/grapefruit/blob/b7176b409793a1395503fe78153e3b0ba888f77d/package.json","https://github.com/ChiChou/grapefruit/blob/b7176b409793a1395503fe78153e3b0ba888f77d/src/lib/env.ts","https://github.com/ChiChou/grapefruit/blob/b7176b409793a1395503fe78153e3b0ba888f77d/docs/llm.md","https://github.com/ChiChou/grapefruit/blob/b7176b409793a1395503fe78153e3b0ba888f77d/LICENSE","https://github.com/ChiChou/grapefruit/releases/tag/v1.1.2","https://github.com/ChiChou/grapefruit/blob/05852a9b6e32dcc5f1c7e5ca8d91bfabc9d691b9/README.md"],"category":"dynamic-analysis","description_en":"Inspect and hook running iOS and Android apps from a Frida-based web interface, with method and crypto-API hooks, filesystem and SQLite browsers, iOS keychain and UI-hierarchy views, and HTTP capture from common networking libraries.","description_zh":"通过基于 Frida 的 Web 界面检查并 Hook 运行中的 iOS 与 Android 应用，提供方法与加密 API 拦截、文件系统与 SQLite 浏览、iOS 钥匙串与界面层级查看，以及常见网络库的 HTTP 流量捕获。","entry_url":"https://awesomerea.org/resources/grapefruit/","entry_url_zh":"https://awesomerea.org/zh/resources/grapefruit/","evidence_url":"https://github.com/ChiChou/grapefruit/blob/b7176b409793a1395503fe78153e3b0ba888f77d/README.md","group":"tools","id":"grapefruit","json_url":"https://awesomerea.org/resources/grapefruit/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/grapefruit/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/grapefruit/index.md","name":"Grapefruit","name_zh":"Grapefruit 移动应用动态插桩工具","record_type":"resource","relationship":"foundation","requirements":["Requires a Frida server running on the target device, set up through Frida's iOS or Android guides; the reviewed release works with Frida 16 or 17 (default 17).","Reviewed release: v1.1.2 (npm package igf), published 2026-03-30. The npm package requires Node.js >=22.18.0 and is not compatible with bunx; prebuilt binaries cover macOS arm64/x64, Linux x64 and Windows x64. The server binds to localhost port 31337 by default; the default-branch README warns that it has no built-in authentication.","Optional AI features, including hook-script generation, use an LLM configured through LLM_* environment variables: Anthropic, OpenAI, Gemini, OpenRouter or an OpenAI-compatible endpoint such as local Ollama. Prompts are sent to the configured endpoint.","Upstream deliberately ships no Frida-detection, certificate-pinning or jailbreak/root-detection bypasses and suggests combining it with dedicated bypass tooling for authorized assessments. The default branch was 47 commits ahead of v1.1.2 and adds Dart AOT snapshot exploration that the release README does not list. MIT-licensed."],"requirements_zh":["需在目标设备上运行 Frida server，并按照 Frida 官方 iOS 或 Android 指南完成配置；所审阅版本支持 Frida 16 或 17（默认 17）。","所审阅版本为 v1.1.2（npm 包名 igf），发布于 2026-03-30。npm 包要求 Node.js >=22.18.0，且不兼容 bunx；预编译程序覆盖 macOS arm64/x64、Linux x64 和 Windows x64。服务默认绑定 localhost 的 31337 端口；默认分支 README 提醒其没有内置身份验证。","可选的 AI 功能（包括生成 Hook 脚本）通过 LLM_* 环境变量配置模型：Anthropic、OpenAI、Gemini、OpenRouter，或本地 Ollama 等兼容 OpenAI 接口的端点；提示内容会发送到所配置的端点。","上游有意不内置 Frida 检测、证书固定或越狱／root 检测的绕过功能，并建议在获得授权的评估中配合专门的绕过工具使用。默认分支比 v1.1.2 多 47 个提交，新增了发行版 README 未列出的 Dart AOT 快照浏览功能。采用 MIT 许可证。"],"targets":["app"],"url":"https://github.com/ChiChou/grapefruit","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-16","category":"dynamic-analysis","description_en":"Use radare2 commands and Frida instrumentation together to inspect local or remote process memory, symbols, classes, and runtime calls on desktop and mobile targets.","description_zh":"结合 radare2 命令与 Frida 插桩，检查桌面和移动目标中本地或远程进程的内存、符号、类及运行时调用。","entry_url":"https://awesomerea.org/resources/r2frida/","entry_url_zh":"https://awesomerea.org/zh/resources/r2frida/","evidence_url":"https://github.com/nowsecure/r2frida/blob/4f1f8d7b1096ed0ca29778688d0f164461d56f05/README.md","group":"tools","id":"r2frida","json_url":"https://awesomerea.org/resources/r2frida/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/r2frida/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/r2frida/index.md","name":"r2frida","name_zh":"r2frida","record_type":"resource","relationship":"foundation","requirements":["Install with r2pm or use a plugin build matching the radare2 major/minor ABI; the reviewed README reports CI against radare2 6.2.2 and git master.","Mobile or remote operation needs a reachable Frida target, such as frida-server over USB or TCP. The plugin bundles the host Frida library; separate host frida-tools are not required."],"requirements_zh":["通过 r2pm 安装，或使用与 radare2 主版本和次版本 ABI 匹配的插件构建；复核时 README 说明 CI 测试覆盖 radare2 6.2.2 和主分支。","移动或远程操作需要可连接的 Frida 目标，例如通过 USB 或 TCP 连接的 frida-server。插件包含主机端 Frida 库，无需单独安装主机端 frida-tools。"],"targets":["app","binary"],"url":"https://github.com/nowsecure/r2frida","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","category":"firmware","description_en":"Extract firmware, combine static checks with emulation-based analysis, inventory software components, and generate web reports and SBOMs for further investigation.","description_zh":"提取固件，结合静态检查与仿真分析，整理软件组件清单，并生成 Web 报告和 SBOM，供进一步调查。","entry_url":"https://awesomerea.org/resources/emba/","entry_url_zh":"https://awesomerea.org/zh/resources/emba/","evidence_url":"https://github.com/e-m-b-a/emba/wiki/Installation/35b42245dc59e3545a07dcc209e9ee58f8cf2590","group":"tools","id":"emba","json_url":"https://awesomerea.org/resources/emba/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/emba/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/emba/index.md","name":"EMBA","name_zh":"EMBA","record_type":"resource","relationship":"foundation","requirements":["Upstream recommends an x86-64 Kali Linux VM and the default Docker mode; Ubuntu 22.04/24.04 is also listed. Native ARM execution is not supported.","Documented resource guidance is at least 16 GB RAM, 8 CPU cores recommended, and 30–100 GB free disk space; larger firmware or more parallel workers need more resources.","Install the external dependencies through the project installer. Emulation can execute firmware content; upstream reserves developer mode for development, and findings still require interpretation."],"requirements_zh":["上游建议使用 x86-64 Kali Linux 虚拟机和默认 Docker 模式，也列出 Ubuntu 22.04/24.04。不支持在 ARM 上原生运行。","文档建议至少 16 GB 内存、8 个 CPU 核心及 30–100 GB 可用磁盘空间；更大固件或更多并行任务需要更多资源。","外部依赖通过项目安装器配置。仿真可能执行固件内容；上游将开发者模式限定用于开发，检测结果仍需分析判断。"],"targets":["firmware"],"url":"https://github.com/e-m-b-a/emba","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","category":"firmware","description_en":"Unpack and analyze firmware through an extensible platform whose web interface and HTTP API make component contents and analysis results searchable and comparable across samples.","description_zh":"通过可扩展平台解包和分析固件，使用 Web 界面与 HTTP API 搜索组件内容和分析结果，并比较不同样本。","entry_url":"https://awesomerea.org/resources/fact-core/","entry_url_zh":"https://awesomerea.org/zh/resources/fact-core/","evidence_url":"https://github.com/fkie-cad/FACT_core/blob/dc594e8f2ed120b1e04aaf3c52dda201be967dff/README.md","group":"tools","id":"fact-core","json_url":"https://awesomerea.org/resources/fact-core/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/fact-core/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fact-core/index.md","name":"Firmware Analysis and Comparison Tool (FACT)","name_zh":"固件分析与比较工具（FACT）","record_type":"resource","relationship":"foundation","requirements":["The reviewed installer supports Debian 13 and Ubuntu 22.04/24.04/26.04; Kali support is experimental. The README lists Python 3.10–3.14.","Minimum documented resources are 4 CPU cores, 8 GB RAM, and about 10 GB for installation, plus storage for unpacked firmware and results.","The standalone FACT_docker distribution is marked unmaintained; use the documented local or Vagrant setup. Some analysis plugins have separate licenses."],"requirements_zh":["复核时安装器支持 Debian 13 和 Ubuntu 22.04/24.04/26.04；Kali 为实验性支持。README 列出的 Python 范围为 3.10–3.14。","文档最低配置为 4 个 CPU 核心、8 GB 内存和约 10 GB 安装空间，另需为解包固件和结果预留存储。","独立的 FACT_docker 发行项目已标记为无人维护，应采用文档中的本地安装或 Vagrant 方案。部分分析插件使用独立许可证。"],"targets":["firmware"],"url":"https://github.com/fkie-cad/FACT_core","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/redballoonsecurity/ofrak/blob/1e1ef750222c1a842248ae7bdcae576bfdedae65/docs/install/pypi.md","https://github.com/redballoonsecurity/ofrak/blob/1e1ef750222c1a842248ae7bdcae576bfdedae65/docs/install/docker.md"],"category":"firmware","description_en":"Recursively identify, unpack, analyze, modify, and repack firmware and binary formats using a resource-tree GUI and Python API, with optional disassembler backends.","description_zh":"通过资源树图形界面与 Python API，递归识别、解包、分析、修改和重新打包固件及二进制格式，并可接入可选反汇编后端。","entry_url":"https://awesomerea.org/resources/ofrak/","entry_url_zh":"https://awesomerea.org/zh/resources/ofrak/","evidence_url":"https://github.com/redballoonsecurity/ofrak/blob/1e1ef750222c1a842248ae7bdcae576bfdedae65/README.md","group":"tools","id":"ofrak","json_url":"https://awesomerea.org/resources/ofrak/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ofrak/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ofrak/index.md","name":"OFRAK","name_zh":"OFRAK","record_type":"resource","relationship":"foundation","requirements":["The PyPI installation guide requires Python 3.9+ and format-specific external tools; macOS also needs cmake and libmagic, avoiding the documented libmagic 5.47 regression.","Docker builds require BuildKit; Docker 23+ enables it by default. Analysis backends such as Ghidra or Binary Ninja have their own installation and licensing requirements.","OFRAK uses its own Community License for personal and educational use; commercial users should review the separate Pro or Enterprise licensing terms."],"requirements_zh":["PyPI 安装指南要求 Python 3.9+ 及各格式所需的外部工具；macOS 还需 cmake 和 libmagic，并应避开文档指出存在回归问题的 libmagic 5.47。","Docker 构建需要 BuildKit，Docker 23+ 默认启用。Ghidra、Binary Ninja 等分析后端具有各自的安装与许可要求。","OFRAK 使用其独立的社区许可证，面向个人和教育用途；商业用户应查看独立的 Pro 或 Enterprise 许可条款。"],"targets":["binary","firmware"],"url":"https://github.com/redballoonsecurity/ofrak","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/pr0v3rbs/FirmAE/blob/653565b5d14e6d69a1dd242aa88ecfb4b090a74a/install.sh"],"category":"firmware","description_en":"Emulate router and IP-camera firmware to inspect network services and runtime behavior, with automated emulation checks and separate analysis, run, and debugging modes.","description_zh":"仿真路由器与 IP 摄像机固件，检查网络服务和运行时行为，提供自动仿真检查，以及独立的分析、运行和调试模式。","entry_url":"https://awesomerea.org/resources/firmae/","entry_url_zh":"https://awesomerea.org/zh/resources/firmae/","evidence_url":"https://github.com/pr0v3rbs/FirmAE/blob/653565b5d14e6d69a1dd242aa88ecfb4b090a74a/README.md","group":"tools","id":"firmae","json_url":"https://awesomerea.org/resources/firmae/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/firmae/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/firmae/index.md","name":"FirmAE","name_zh":"FirmAE","record_type":"resource","relationship":"foundation","requirements":["The README documents Ubuntu 20.04 as the tested host; prepare the recursive source checkout, downloaded dependencies, initialized database, and a supported firmware image.","The installer configures QEMU, PostgreSQL, extraction tools, and other host packages; documented run modes require elevated privileges. Docker orchestration is also provided.","Successful emulation depends on the firmware image; upstream benchmark results are not a guarantee for an untested device or newer host distribution."],"requirements_zh":["README 将 Ubuntu 20.04 列为测试主机；需准备包含子模块的源代码、下载的依赖、已初始化数据库及受支持的固件镜像。","安装器会配置 QEMU、PostgreSQL、提取工具等主机软件包；文档中的运行模式需要提升权限，也提供 Docker 编排方案。","仿真能否成功取决于固件镜像；上游基准结果不保证适用于未经测试的设备或更新的主机发行版。"],"targets":["firmware"],"url":"https://github.com/pr0v3rbs/FirmAE","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://arxiv.org/abs/2403.05286"],"category":"learning","description_en":"Research on direct binary decompilation and refinement of Ghidra output with language models. Evaluates re-executability on HumanEval and ExeBench; useful for distinguishing readable output from functional recovery.","description_zh":"研究使用语言模型直接反编译二进制，以及改进 Ghidra 输出。在 HumanEval 与 ExeBench 上评估重新执行能力，可用于区分代码可读性与功能恢复。","entry_url":"https://awesomerea.org/resources/llm4decompile-paper/","entry_url_zh":"https://awesomerea.org/zh/resources/llm4decompile-paper/","evidence_url":"https://aclanthology.org/2024.emnlp-main.203/","group":"learn","id":"llm4decompile-paper","json_url":"https://awesomerea.org/resources/llm4decompile-paper/record.json","kind":"research","markdown_url":"https://awesomerea.org/resources/llm4decompile-paper/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/llm4decompile-paper/index.md","name":"LLM4Decompile (EMNLP 2024)","name_zh":"LLM4Decompile（EMNLP 2024）","record_type":"resource","relationship":"learning","requirements":["EMNLP 2024 paper. Results are author-reported for the evaluated models and benchmarks."],"requirements_zh":["EMNLP 2024 论文。结论来自作者在特定模型与基准上的实验。"],"targets":["binary"],"url":"https://aclanthology.org/2024.emnlp-main.203/","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://arxiv.org/abs/2505.11340"],"category":"learning","description_en":"A benchmark combining functions from real programs, runtime-aware validation, and LLM-assisted assessment of decompiled-code usability. Helps separate functional correctness from perceived understandability when comparing decompilers.","description_zh":"结合真实程序函数、运行时验证与 LLM 辅助可用性评判的反编译基准，用于比较反编译器的功能正确性与代码可理解性。","entry_url":"https://awesomerea.org/resources/decompilebench-paper/","entry_url_zh":"https://awesomerea.org/zh/resources/decompilebench-paper/","evidence_url":"https://aclanthology.org/2025.findings-acl.1194/","group":"learn","id":"decompilebench-paper","json_url":"https://awesomerea.org/resources/decompilebench-paper/record.json","kind":"research","markdown_url":"https://awesomerea.org/resources/decompilebench-paper/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/decompilebench-paper/index.md","name":"DecompileBench (Findings of ACL 2025)","name_zh":"DecompileBench（Findings of ACL 2025）","record_type":"resource","relationship":"learning","requirements":["Findings of ACL 2025 paper. LLM-as-judge assessments and runtime correctness measure different properties."],"requirements_zh":["Findings of ACL 2025 论文。LLM 评判与运行时正确性衡量不同属性。"],"targets":["binary"],"url":"https://aclanthology.org/2025.findings-acl.1194/","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://www.cs.purdue.edu/homes/lintan/publications/resym-ccs24.pdf"],"category":"learning","description_en":"Combines language models and program analysis to recover variable and user-defined data-structure symbols from stripped binaries. The authors provide training, inference, evaluation, and posterior-reasoning artifacts.","description_zh":"结合语言模型与程序分析，从去符号二进制中恢复变量和用户定义数据结构的符号信息。作者提供训练、推理、评测与后验推理材料。","entry_url":"https://awesomerea.org/resources/resym-paper/","entry_url_zh":"https://awesomerea.org/zh/resources/resym-paper/","evidence_url":"https://github.com/lt-asset/resym/tree/437b4acac21a5a60edecf0c4423f7172f991271f","group":"learn","id":"resym-paper","json_url":"https://awesomerea.org/resources/resym-paper/record.json","kind":"research","markdown_url":"https://awesomerea.org/resources/resym-paper/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/resym-paper/index.md","name":"ReSym (CCS 2024)","name_zh":"ReSym（CCS 2024）","record_type":"resource","relationship":"learning","requirements":["CCS 2024 paper with author-provided artifacts."],"requirements_zh":["CCS 2024 论文及作者提供的实验材料。"],"targets":["binary"],"url":"https://doi.org/10.1145/3658644.3670340","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","category":"reconstruction-cases","description_en":"A native desktop reconstruction of the 2019 Switch version of Link’s Awakening using static recompilation. The author attributes most code, tooling and reverse-engineering work to Claude Code with human direction and review.","description_zh":"通过静态重编译，将 2019 年 Switch 版《塞尔达传说：织梦岛》重建为原生桌面程序。作者称大部分代码、工具与逆向工作由 Claude Code 完成，人类负责指导和复核。","entry_url":"https://awesomerea.org/resources/lasrecomp/","entry_url_zh":"https://awesomerea.org/zh/resources/lasrecomp/","evidence_url":"https://github.com/peiikai/LASRecomp/blob/6244eb9d4d3497094e21cac7dabe998ded1f2800/README.md","group":"cases","id":"lasrecomp","json_url":"https://awesomerea.org/resources/lasrecomp/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/lasrecomp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/lasrecomp/index.md","name":"LASRecomp: Link’s Awakening static recompilation","name_zh":"LASRecomp：《织梦岛》静态重编译案例","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits"],"requirements":["Users must supply their own legally obtained v1.0.0 game files; the repository and release builds omit Nintendo game code, assets and fonts.","Release requirements include macOS 15+ on Apple Silicon or Windows 10+/Linux on x86-64; the x86-64 paths need AVX2 and Vulkan 1.3. Linux ARM remains experimental and untested on hardware.","Beta status includes documented crashes and rendering defects. AI involvement is author-reported."],"requirements_zh":["用户需提供合法取得的 v1.0.0 游戏文件；仓库与发行包不附带任天堂游戏代码、素材或字体。","发行版要求 Apple Silicon 上的 macOS 15+，或 x86-64 的 Windows 10+／Linux；x86-64 路径需要 AVX2 与 Vulkan 1.3。Linux ARM 仍为实验性支持，未完成实机验证。","项目处于 beta 阶段，记录了崩溃和渲染缺陷。AI 贡献比例来自作者陈述。"],"targets":["game"],"url":"https://github.com/peiikai/LASRecomp","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/GDRETools/gdsdecomp/releases/tag/v2.7.4","https://github.com/GDRETools/gdsdecomp/blob/e2780fcc73ab14083967d3945e513d1f6af1dbd0/LICENSE"],"category":"game-analysis","description_en":"Recover supported Godot project files, GDScript and imported resources from exported games. Includes PCK inspection and extraction, script decompilation, and resource conversion for examining and rebuilding project structure.","description_zh":"从已导出的游戏中恢复受支持的 Godot 工程文件、GDScript 与导入资源，提供 PCK 检查与提取、脚本反编译及资源转换，便于分析和重建工程结构。","entry_url":"https://awesomerea.org/resources/godot-re-tools/","entry_url_zh":"https://awesomerea.org/zh/resources/godot-re-tools/","evidence_url":"https://github.com/GDRETools/gdsdecomp/blob/e2780fcc73ab14083967d3945e513d1f6af1dbd0/README.md","group":"tools","id":"godot-re-tools","json_url":"https://awesomerea.org/resources/godot-re-tools/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/godot-re-tools/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/godot-re-tools/index.md","name":"Godot RE Tools","name_zh":"Godot 逆向工程工具","record_type":"resource","relationship":"foundation","requirements":["Supports Godot 2.x, 3.x and 4.x project decompilation; release builds are available for Windows, macOS and Linux. Edit recovered projects with the original game's Godot version.","Encrypted inputs require the corresponding key. Godot 2.x model conversion and GDNative/GDExtension script recovery are not supported.","The tool is MIT-licensed. Building current source additionally requires the documented Godot fork, rustup and .NET 10 SDK."],"requirements_zh":["支持 Godot 2.x、3.x 和 4.x 工程反编译，提供 Windows、macOS 与 Linux 发行程序。编辑恢复的工程时应使用原游戏对应的 Godot 版本。","加密输入需要对应密钥；不支持 Godot 2.x 模型转换，以及 GDNative/GDExtension 脚本恢复。","工具采用 MIT 许可证。编译当前源码还需要文档指定的 Godot 分支、rustup 和 .NET 10 SDK。"],"targets":["game"],"url":"https://github.com/GDRETools/gdsdecomp","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/UE4SS-RE/RE-UE4SS/releases/tag/v3.0.1","https://github.com/UE4SS-RE/RE-UE4SS/blob/1ba38db4b5faf5cfad9d058a6843c12e815bc60b/LICENSE"],"category":"game-analysis","description_en":"Inspect Unreal Engine games at runtime through live UObject property views, reflected C++ header dumps, property mappings and actor dumps. Lua and C++ APIs support experiments while reconstructing game structures.","description_zh":"通过实时 UObject 属性视图、反射 C++ 头文件导出、属性映射和 Actor 转储分析虚幻引擎游戏；Lua 与 C++ API 可辅助实验和重建游戏结构。","entry_url":"https://awesomerea.org/resources/ue4ss/","entry_url_zh":"https://awesomerea.org/zh/resources/ue4ss/","evidence_url":"https://github.com/UE4SS-RE/RE-UE4SS/blob/1ba38db4b5faf5cfad9d058a6843c12e815bc60b/README.md","group":"tools","id":"ue4ss","json_url":"https://awesomerea.org/resources/ue4ss/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ue4ss/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ue4ss/index.md","name":"UE4SS","name_zh":"UE4SS（虚幻引擎脚本系统）","record_type":"resource","relationship":"foundation","requirements":["Targets Win64 Unreal Engine games; compatibility is game-dependent and may require custom signatures or configuration.","The development README targets UE 4.7–5.8, while the latest stable tag is v3.0.1 from 2024. Match documentation to the chosen build rather than assuming the stable release has every development feature.","MIT-licensed. Current source builds require the documented C++23, Rust and CMake toolchains plus Epic-authorized Unreal submodule access; Linux cross-compilation produces Windows binaries."],"requirements_zh":["面向 Win64 虚幻引擎游戏；兼容性取决于具体游戏，可能需要自定义特征码或配置。","开发分支 README 的目标范围为 UE 4.7–5.8，而最新稳定标签仍是 2024 年的 v3.0.1。应使用与所选构建对应的文档，不能假定稳定版包含全部开发功能。","采用 MIT 许可证。当前源码构建需要文档指定的 C++23、Rust 与 CMake 工具链，以及经 Epic 授权的 Unreal 子模块访问权限；Linux 交叉编译产物仍是 Windows 程序。"],"targets":["game"],"url":"https://github.com/UE4SS-RE/RE-UE4SS","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/4sval/FModel/wiki/Installing-FModel/0b4b7eab2df210703c96a0159200df51756f9d43","https://github.com/4sval/FModel/wiki/Getting-Started/d348b55f641767b1ede4933b26b319863632a4dd","https://github.com/4sval/FModel/blob/05cfbdd1648afe2928109b70ab63880a4bc8f7b4/FModel/FModel.csproj","https://github.com/4sval/FModel/releases/tag/aug-2026","https://github.com/4sval/FModel/blob/05cfbdd1648afe2928109b70ab63880a4bc8f7b4/LICENSE"],"category":"game-analysis","description_en":"Explore Unreal Engine game archives with CUE4Parse-backed package and property inspection, asset previews and export. The 2026 summer release adds USD world export for reconstructing supported scene content.","description_zh":"基于 CUE4Parse 浏览虚幻引擎游戏归档，检查资源包和属性，预览并导出资源；2026 年夏季发行版新增 USD 世界导出，可辅助重建受支持的场景内容。","entry_url":"https://awesomerea.org/resources/fmodel/","entry_url_zh":"https://awesomerea.org/zh/resources/fmodel/","evidence_url":"https://github.com/4sval/FModel/blob/05cfbdd1648afe2928109b70ab63880a4bc8f7b4/README.md","group":"tools","id":"fmodel","json_url":"https://awesomerea.org/resources/fmodel/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/fmodel/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fmodel/index.md","name":"FModel","name_zh":"FModel 游戏资源浏览器","record_type":"resource","relationship":"foundation","requirements":["Windows x64 and the .NET 10 Desktop Runtime or later; provide supported Unreal Engine game archives. Encrypted archives require the appropriate AES key.","World export in the reviewed aug-2026 release is USD-only; sockets and attachments may be positioned incorrectly.","GPL-3.0-licensed project; bundled dependencies have their own notices."],"requirements_zh":["需要 Windows x64 与 .NET 10 或更高版本的桌面运行时，输入须为受支持的虚幻引擎游戏归档；加密归档需要对应的 AES 密钥。","所审阅的 aug-2026 版本仅支持以 USD 导出世界，插槽与附属对象可能定位不准。","项目采用 GPL-3.0 许可证；所附依赖另有各自的声明。"],"targets":["game"],"url":"https://github.com/4sval/FModel","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/worawit/blutter/blob/4a60ac648bf448c5a7596437243bcd0b9376fdf0/LICENSE"],"category":"android","description_en":"Analyze Flutter Android ARM64 AOT binaries using the matching Dart runtime. Produces annotated assembly, object-pool dumps and a target-specific Frida script template for investigating compiled Dart application logic.","description_zh":"利用匹配的 Dart 运行时分析 Flutter Android ARM64 AOT 二进制，生成带符号的汇编、对象池转储及面向目标的 Frida 脚本模板，辅助研究编译后的 Dart 应用逻辑。","entry_url":"https://awesomerea.org/resources/blutter/","entry_url_zh":"https://awesomerea.org/zh/resources/blutter/","evidence_url":"https://github.com/worawit/blutter/blob/4a60ac648bf448c5a7596437243bcd0b9376fdf0/README.md","group":"tools","id":"blutter","json_url":"https://awesomerea.org/resources/blutter/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/blutter/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/blutter/index.md","name":"Blutter","name_zh":"Blutter","record_type":"resource","relationship":"foundation","requirements":["Provide extracted Android ARM64 libraries, including libapp.so and the Flutter engine; only recent Dart versions are supported. Direct APK/IPA input and iOS binary reading remain TODOs.","Requires Python 3 and a C++20-capable toolchain such as GCC 13+ or Clang 16+, with the documented native dependencies. The wrapper may download and compile matching Dart sources.","Linux is recommended; Windows and macOS setup is documented. MIT-licensed. Obfuscated applications can still have missing functions, and this is not a complete Dart source decompiler."],"requirements_zh":["输入须为已提取的 Android ARM64 库，包含 libapp.so 与 Flutter 引擎；仅支持较新的 Dart 版本。直接读取 APK/IPA 及 iOS 二进制仍列为待实现功能。","需要 Python 3、支持 C++20 的工具链（如 GCC 13+ 或 Clang 16+）及文档列出的原生依赖；包装脚本可能下载并编译匹配的 Dart 源码。","上游推荐 Linux，也提供 Windows 与 macOS 配置说明。采用 MIT 许可证；混淆应用仍可能缺失函数，工具并非完整的 Dart 源码反编译器。"],"targets":["app","binary"],"url":"https://github.com/worawit/blutter","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/P1sec/hermes-dec/blob/2e796663e1fedb93dca51060797ebf3327b3fedb/pyproject.toml","https://p1sec.github.io/hermes-dec/opcodes_table.html","https://github.com/P1sec/hermes-dec/releases/tag/0.1.8","https://github.com/P1sec/hermes-dec/blob/2e796663e1fedb93dca51060797ebf3327b3fedb/LICENSE"],"category":"android","description_en":"Parse, disassemble and partially decompile React Native Hermes bytecode bundles. Makes HBC headers and instructions inspectable and emits pseudocode for understanding compiled application logic.","description_zh":"解析、反汇编并部分反编译 React Native 的 Hermes 字节码包，展示 HBC 文件头和指令，并生成伪代码以帮助理解编译后的应用逻辑。","entry_url":"https://awesomerea.org/resources/hermes-dec/","entry_url_zh":"https://awesomerea.org/zh/resources/hermes-dec/","evidence_url":"https://github.com/P1sec/hermes-dec/blob/2e796663e1fedb93dca51060797ebf3327b3fedb/README.md","group":"tools","id":"hermes-dec","json_url":"https://awesomerea.org/resources/hermes-dec/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/hermes-dec/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hermes-dec/index.md","name":"hermes-dec","name_zh":"hermes-dec","record_type":"resource","relationship":"foundation","requirements":["Current package metadata requires Python 3.10+; the application uses the Python standard library. Supply an extracted Hermes HBC bundle, not a plain-text minified JavaScript bundle.","Decompiler output is not executable JavaScript: loop and conditional structure reconstruction is incomplete. Bytecode compatibility depends on the supported opcode definitions.","The tool is AGPL-3.0-or-later, distinct from the Hermes VM's license."],"requirements_zh":["当前包元数据要求 Python 3.10+，程序使用 Python 标准库。输入须为已提取的 Hermes HBC 包，而非纯文本压缩 JavaScript 包。","反编译输出不能直接作为 JavaScript 执行：循环和条件结构尚未完整重建。字节码兼容性取决于已支持的操作码定义。","工具采用 AGPL-3.0-or-later 许可证，与 Hermes 虚拟机本身的许可证不同。"],"targets":["app"],"url":"https://github.com/P1sec/hermes-dec","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://recaf.coley.software/user/install/requirements.html","https://github.com/Col-E/Recaf/blob/7ce7b5d2c077d5ebaa895915df8d372b9477d5cc/build.gradle","https://github.com/Col-E/Recaf/releases/tag/4.0.0-alpha","https://github.com/Col-E/Recaf/blob/7ce7b5d2c077d5ebaa895915df8d372b9477d5cc/LICENSE"],"category":"jvm","description_en":"Inspect and modify compiled JVM applications with integrated decompilers, bytecode assembly, reference search, mappings and deobfuscation tools. The reviewed 4.0 preview also provides basic read-only Android bytecode inspection.","description_zh":"通过集成反编译器、字节码汇编、引用搜索、映射与去混淆工具检查和修改已编译的 JVM 应用；所审阅的 4.0 预览版还提供基础的只读 Android 字节码分析。","entry_url":"https://awesomerea.org/resources/recaf/","entry_url_zh":"https://awesomerea.org/zh/resources/recaf/","evidence_url":"https://github.com/Col-E/Recaf/blob/7ce7b5d2c077d5ebaa895915df8d372b9477d5cc/README.md","group":"tools","id":"recaf","json_url":"https://awesomerea.org/resources/recaf/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/recaf/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/recaf/index.md","name":"Recaf","name_zh":"Recaf 字节码分析与编辑工具","record_type":"resource","relationship":"foundation","requirements":["Requires JDK 22+ and JavaFX 22+; the recommended launcher downloads compatible JavaFX artifacts. Select a build matching the operating system and CPU.","The 4.0.0-alpha GitHub release is explicitly a preview despite being listed as a regular release. Its Android support is read-only; do not assume JVM editing features apply to Android.","MIT-licensed. Provide compiled application inputs; recovered decompiled text is an analysis view, not guaranteed original source."],"requirements_zh":["需要 JDK 22+ 与 JavaFX 22+；推荐启动器会下载兼容的 JavaFX 组件。应选择与操作系统及 CPU 匹配的构建。","4.0.0-alpha 在 GitHub 上虽然列为常规发行版，上游仍明确称其为预览版。该版本的 Android 支持为只读，不能将 JVM 编辑能力视为 Android 编辑能力。","采用 MIT 许可证。输入须为已编译的应用；反编译文本用于分析，不保证还原原始源码。"],"targets":["app","binary"],"url":"https://github.com/Col-E/Recaf","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/kaitai-io/kaitai_struct_compiler/blob/fd2594257834241455f27121ae1adf296bcf09b9/README.md","https://kaitai.io/","https://github.com/kaitai-io/kaitai_struct_compiler/releases/tag/0.11"],"category":"binary-libraries","description_en":"Turn documented binary layouts into reusable parsers for files and network packets. A .ksy specification can be inspected with visualizers and compiled to multiple languages, helping preserve reverse-engineered format knowledge in interoperable implementations.","description_zh":"将已描述的二进制布局转换为可复用的文件与网络报文解析器；同一份 .ksy 规范可通过可视化工具检查，并编译为多种语言，便于把逆向获得的格式知识落实为可互操作的实现。","entry_url":"https://awesomerea.org/resources/kaitai-struct/","entry_url_zh":"https://awesomerea.org/zh/resources/kaitai-struct/","evidence_url":"https://github.com/kaitai-io/kaitai_struct/blob/5ca6630c7761d7f0d9c57fd8a4af1cc8adb75a6c/README.md","group":"tools","id":"kaitai-struct","json_url":"https://awesomerea.org/resources/kaitai-struct/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/kaitai-struct/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/kaitai-struct/index.md","name":"Kaitai Struct","name_zh":"Kaitai Struct 二进制格式描述与解析工具","record_type":"resource","relationship":"foundation","requirements":["Provide a .ksy specification or adapt an existing format description; Kaitai generates parsers from that description rather than discovering unknown protocol semantics automatically.","The stable 0.11 universal compiler runs on Linux, macOS and Windows with Java 8+; Java 21 LTS is recommended. Generated parsers also need the selected language's Kaitai runtime.","Compiler and visualizer are GPL-3.0-or-later; runtimes have separate licenses, including MIT and Apache-2.0. Compiler licensing does not impose its license on input specifications or generated output."],"requirements_zh":["需要提供 .ksy 规范，或改编已有格式描述；Kaitai 根据规范生成解析器，不会自动发现未知协议的语义。","稳定版 0.11 通用编译器可在 Linux、macOS 和 Windows 上运行，需要 Java 8+，推荐 Java 21 LTS；生成的解析器还需要目标语言的 Kaitai 运行库。","编译器与可视化工具采用 GPL-3.0-or-later，运行库分别采用 MIT、Apache-2.0 等许可证；编译器许可证不会因此强制施加于输入规范或生成结果。"],"targets":["binary","firmware","protocol"],"url":"https://github.com/kaitai-io/kaitai_struct","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/wireshark/wireshark/blob/e1087b1870cfc7686b229836dda8838c8f45ea0f/README.md","https://www.wireshark.org/docs/wsug_html_chunked/ChapterIntroduction.html","https://www.wireshark.org/docs/wsug_html_chunked/ChIntroPlatforms.html","https://www.wireshark.org/docs/wsdg_html_chunked/ChapterDissection.html"],"category":"protocol-analysis","description_en":"Inspect captured application and device traffic as decoded protocol fields, with filtering and shared GUI/TShark dissection. Custom dissectors let an analyst encode newly understood packet formats and compare protocol implementations.","description_zh":"将捕获的应用与设备流量解析为协议字段，支持过滤，并由 GUI 与 TShark 共用解析逻辑；自定义解析器可将新识别的报文格式固化下来，辅助比较协议实现。","entry_url":"https://awesomerea.org/resources/wireshark/","entry_url_zh":"https://awesomerea.org/zh/resources/wireshark/","evidence_url":"https://gitlab.com/wireshark/wireshark/-/blob/e1087b1870cfc7686b229836dda8838c8f45ea0f/README.md","group":"tools","id":"wireshark","json_url":"https://awesomerea.org/resources/wireshark/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/wireshark/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wireshark/index.md","name":"Wireshark","name_zh":"Wireshark 协议分析工具","record_type":"resource","relationship":"foundation","requirements":["Use a supported Windows, macOS or Linux/Unix build and a compatible capture file. Live capture additionally needs a supported interface, capture driver and appropriate capture permissions.","Media support depends on the operating system and hardware. Custom formats need an appropriate dissector; packet inspection does not automatically recover a peer's full implementation.","Distributed under GNU GPLv2, with additional component notices. The GitLab repository is upstream; GitHub is its official read-only mirror."],"requirements_zh":["使用受支持的 Windows、macOS 或 Linux/Unix 构建及兼容的抓包文件；实时抓包还需要受支持的接口、抓包驱动和相应访问权限。","可捕获的介质取决于操作系统与硬件。自定义格式需要适合的协议解析器；检查报文不会自动恢复通信对端的完整实现。","发行软件采用 GNU GPLv2，并附有组件各自的许可声明。GitLab 为上游仓库，GitHub 是官方只读镜像。"],"targets":["app","firmware","protocol"],"url":"https://gitlab.com/wireshark/wireshark","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/sigrokproject/pulseview/blob/af02198741b4e57c9f9b796bd5e6c0f2ae9f2f2b/CMakeLists.txt","https://sigrok.org/wiki/PulseView","https://sigrok.org/doc/pulseview/unstable/manual.html","https://sigrok.org/wiki/Protocol_decoders"],"category":"firmware","description_en":"Examine captured logic and analog waveforms with sigrok's graphical frontend. Protocol decoders and decoder stacking expose bus messages and higher-level device operations, making hardware communication traces useful for firmware and interoperability investigations.","description_zh":"通过 sigrok 的图形前端检查逻辑与模拟波形；协议解码器及分层解码可展示总线消息和更高层的设备操作，便于利用硬件通信记录开展固件与互操作性分析。","entry_url":"https://awesomerea.org/resources/pulseview/","entry_url_zh":"https://awesomerea.org/zh/resources/pulseview/","evidence_url":"https://github.com/sigrokproject/pulseview/blob/af02198741b4e57c9f9b796bd5e6c0f2ae9f2f2b/README","group":"tools","id":"pulseview","json_url":"https://awesomerea.org/resources/pulseview/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pulseview/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pulseview/index.md","name":"PulseView","name_zh":"PulseView 信号与协议分析工具","record_type":"resource","relationship":"foundation","requirements":["Supply a supported recorded trace, or use a compatible logic analyzer/oscilloscope with the needed device access. Device support is narrower than the whole sigrok suite; PulseView is not the multimeter frontend.","Protocol decoding requires libsigrokdecode and operates on logic signals; analog captures need suitable conversion. The reviewed source accepts Qt 5.3+ or Qt 6.2+, libsigrokcxx 0.5.2+ and libsigrokdecode 0.5.2+.","GPL-3.0-or-later. GitHub is the official mirror. Development snapshots and packaged releases may differ."],"requirements_zh":["需要受支持的已录制波形，或兼容的逻辑分析仪、示波器及相应设备访问权限。设备覆盖范围小于整个 sigrok 套件，PulseView 并非万用表前端。","协议解码需要 libsigrokdecode，且作用于逻辑信号；模拟采样需要适当转换。所审阅源码接受 Qt 5.3+ 或 Qt 6.2+、libsigrokcxx 0.5.2+ 与 libsigrokdecode 0.5.2+。","软件采用 GPL-3.0-or-later，GitHub 仓库为官方镜像。开发快照与打包发行版可能不同。"],"targets":["firmware","protocol"],"url":"https://github.com/sigrokproject/pulseview","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/LongSoft/UEFITool/releases/tag/A75","https://github.com/LongSoft/UEFITool/blob/dac91b26733ca21cb204e41614c1b8c81cc50860/LICENSE.md"],"category":"firmware","description_en":"Parse UEFI firmware images into an inspectable tree and check their structure. Companion UEFIExtract and UEFIFind tools extract parsed contents and locate patterns, supporting analysis of firmware components and vendor formats.","description_zh":"将 UEFI 固件镜像解析为可检查的树状结构，并检查其结构；配套的 UEFIExtract 与 UEFIFind 可提取解析后的内容、查找模式，辅助分析固件组件与厂商格式。","entry_url":"https://awesomerea.org/resources/uefitool/","entry_url_zh":"https://awesomerea.org/zh/resources/uefitool/","evidence_url":"https://github.com/LongSoft/UEFITool/blob/dac91b26733ca21cb204e41614c1b8c81cc50860/README.md","group":"tools","id":"uefitool","json_url":"https://awesomerea.org/resources/uefitool/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/uefitool/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/uefitool/index.md","name":"UEFITool","name_zh":"UEFITool 固件镜像分析工具","record_type":"resource","relationship":"foundation","requirements":["Provide a compatible firmware image. A75 has Windows, macOS, Linux and FreeBSD builds; building the GUI requires a C++ compiler and Qt5 or Qt6.","The current new engine does not rebuild images. Editing requires the explicitly outdated, unsupported 0.28 old engine.","A75 still disables AMD image parsing. Some vendor update containers are unsupported or may parse incorrectly. The project uses the BSD-2-Clause license."],"requirements_zh":["输入须为兼容的固件镜像。A75 提供 Windows、macOS、Linux 与 FreeBSD 构建；编译 GUI 需要 C++ 编译器及 Qt5 或 Qt6。","当前新引擎不支持镜像重建；编辑功能依赖已被上游明确标为过时、停止支持的 0.28 旧引擎。","A75 仍禁用 AMD 镜像解析，部分厂商更新容器不受支持或可能解析错误。项目采用 BSD-2-Clause 许可证。"],"targets":["firmware"],"url":"https://github.com/LongSoft/UEFITool","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/Dvurechensky/Browser.Reverse.Engineering.Toolkit/blob/ecbe61af5004f6efa493749a623fbd98ab307a37/SiteSnapshotter/README.md","https://github.com/Dvurechensky/Browser.Reverse.Engineering.Toolkit/blob/ecbe61af5004f6efa493749a623fbd98ab307a37/SiteCrawlerSnapshotter/README.md","https://github.com/Dvurechensky/Browser.Reverse.Engineering.Toolkit/blob/ecbe61af5004f6efa493749a623fbd98ab307a37/SiteCrawlerSnapshotter/package.json","https://github.com/Dvurechensky/Browser.Reverse.Engineering.Toolkit/blob/ecbe61af5004f6efa493749a623fbd98ab307a37/SiteReconstructor/README.md","https://github.com/Dvurechensky/Browser.Reverse.Engineering.Toolkit/blob/ecbe61af5004f6efa493749a623fbd98ab307a37/SiteReconstructor/package.json","https://github.com/Dvurechensky/Browser.Reverse.Engineering.Toolkit/blob/ecbe61af5004f6efa493749a623fbd98ab307a37/SiteSnapshotter/docs/security.md","https://github.com/Dvurechensky/Browser.Reverse.Engineering.Toolkit/blob/ecbe61af5004f6efa493749a623fbd98ab307a37/SiteReconstructor/docs/security-and-privacy.md","https://github.com/Dvurechensky/Browser.Reverse.Engineering.Toolkit/blob/ecbe61af5004f6efa493749a623fbd98ab307a37/LICENSE"],"category":"web-analysis","description_en":"Capture browser-session evidence, crawl websites in a persistent Chromium session, and generate offline architecture/API reports plus OpenAPI, SDK and mock-server drafts from saved captures.","description_zh":"采集浏览器会话证据，在持久 Chromium 会话中抓取网站，并根据已保存的捕获数据生成离线架构／API 报告，以及 OpenAPI、SDK 和模拟服务器草稿。","entry_url":"https://awesomerea.org/resources/browser-reverse-engineering-toolkit/","entry_url_zh":"https://awesomerea.org/zh/resources/browser-reverse-engineering-toolkit/","evidence_url":"https://github.com/Dvurechensky/Browser.Reverse.Engineering.Toolkit/blob/ecbe61af5004f6efa493749a623fbd98ab307a37/README.md","group":"tools","id":"browser-reverse-engineering-toolkit","json_url":"https://awesomerea.org/resources/browser-reverse-engineering-toolkit/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/browser-reverse-engineering-toolkit/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/browser-reverse-engineering-toolkit/index.md","name":"Browser Reverse Engineering Toolkit","name_zh":"Browser Reverse Engineering Toolkit 浏览器逆向工程工具集","record_type":"resource","relationship":"foundation","requirements":["Manual capture needs access to the target browser session. Crawling requires Node.js/npm, Playwright and its Chromium browser; the reviewed package declares Playwright ^1.44.0 but no Node engines minimum.","The Node.js reconstructor processes saved captures offline. The toolkit is experimental; generated architecture, OpenAPI, SDK and mock-server outputs need review.","Browser-side capture cannot read HttpOnly cookies or bypass authorization. Request hooks see traffic only after installation; source-map references are hints, and true screenshots require browser automation.","Authenticated captures may contain sensitive data. MIT-licensed."],"requirements_zh":["手动捕获需要访问目标浏览器会话。抓取需要 Node.js/npm、Playwright 及其 Chromium 浏览器；所审阅的软件包声明 Playwright ^1.44.0，但未声明 Node engines 最低版本。","Node.js 重建器离线处理已保存的捕获数据。工具集仍处于实验阶段，生成的架构、OpenAPI、SDK 和模拟服务器结果需要复核。","浏览器端捕获不能读取 HttpOnly Cookie 或绕过授权。请求钩子只能观察安装后的流量；源码映射引用仅作为线索，真实截图需要浏览器自动化。","含认证状态的捕获数据可能包含敏感信息。采用 MIT 许可证。"],"targets":["website"],"url":"https://github.com/Dvurechensky/Browser.Reverse.Engineering.Toolkit","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/abi/screenshot-to-code/blob/a8139779f7c5ae231b7f2a86fa7f83ddc5f7badc/LICENSE","https://github.com/abi/screenshot-to-code/blob/a8139779f7c5ae231b7f2a86fa7f83ddc5f7badc/backend/pyproject.toml","https://github.com/abi/screenshot-to-code/blob/a8139779f7c5ae231b7f2a86fa7f83ddc5f7badc/frontend/package.json"],"category":"web-analysis","description_en":"Generate HTML/CSS, Tailwind, React, Vue, Bootstrap or Ionic front-end code from screenshots, mockups, Figma designs or screen recordings with multimodal models; an optional headless-browser preview lets the model check its rendered output. The result is a visual reconstruction of the interface, not recovered original source or backend behavior.","description_zh":"借助多模态模型，根据截图、设计稿、Figma 设计或屏幕录像生成 HTML/CSS、Tailwind、React、Vue、Bootstrap 或 Ionic 前端代码；可选的无头浏览器预览可让模型渲染并自查输出。结果是对界面外观的视觉重建，并非恢复原始源码或后端行为。","entry_url":"https://awesomerea.org/resources/screenshot-to-code/","entry_url_zh":"https://awesomerea.org/zh/resources/screenshot-to-code/","evidence_url":"https://github.com/abi/screenshot-to-code/blob/a8139779f7c5ae231b7f2a86fa7f83ddc5f7badc/README.md","group":"tools","id":"screenshot-to-code","json_url":"https://awesomerea.org/resources/screenshot-to-code/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/screenshot-to-code/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/screenshot-to-code/index.md","name":"screenshot-to-code","name_zh":"screenshot-to-code 截图转前端代码工具","record_type":"resource","relationship":"foundation","requirements":["Self-host the MIT-licensed repository: a FastAPI backend managed with Poetry (Python ^3.10) and a React/Vite frontend run with pnpm, or both through Docker Compose. No GitHub release or tag existed at review.","At least one OpenAI, Anthropic or Gemini API key is required, and inputs are processed by the selected providers. Gemini is required for video mode and handles asset extraction; a Replicate key is optional but recommended upstream for image generation, editing and background removal. The self-check preview needs Playwright's Chromium.","The README reports no fidelity or accuracy figures. Generated code needs review and cannot recover backend logic, APIs or data that the input does not show."],"requirements_zh":["需自行部署这一采用 MIT 许可证的仓库：后端为使用 Poetry 管理的 FastAPI（Python ^3.10），前端为通过 pnpm 运行的 React/Vite，也可用 Docker Compose 一并启动。审阅时没有 GitHub Release 或标签。","至少需要一个 OpenAI、Anthropic 或 Gemini API 密钥，输入内容会交由所选提供方处理。视频模式必须使用 Gemini，素材提取也由 Gemini 完成；Replicate 密钥为可选项，上游建议配置以启用图像生成、编辑和背景移除。自检预览需要安装 Playwright 的 Chromium。","README 未报告还原度或准确率数据。生成代码需要人工复核，无法恢复输入中未呈现的后端逻辑、API 或数据。"],"targets":["website"],"url":"https://github.com/abi/screenshot-to-code","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/tokenbleed/nibkit/blob/fcf4670db8ba5d5d94ab62951a971be949b7b21f/go.mod","https://github.com/tokenbleed/nibkit/blob/fcf4670db8ba5d5d94ab62951a971be949b7b21f/LICENSE","https://github.com/tokenbleed/nibkit/blob/fcf4670db8ba5d5d94ab62951a971be949b7b21f/docs/format.adoc"],"category":"native-analysis","description_en":"Decode compiled iOS/macOS interface archives into object trees, Outlet/Action connections, custom classes and navigation relationships. Exports JSON or Mermaid diagrams and exposes read-only inspection commands through MCP.","description_zh":"将已编译的 iOS/macOS 界面归档解码为对象树、Outlet／Action 连接、自定义类及导航关系，可导出 JSON 或 Mermaid 图，并通过 MCP 提供只读检查命令。","entry_url":"https://awesomerea.org/resources/nibkit/","entry_url_zh":"https://awesomerea.org/zh/resources/nibkit/","evidence_url":"https://github.com/tokenbleed/nibkit/blob/fcf4670db8ba5d5d94ab62951a971be949b7b21f/README.adoc","group":"tools","id":"nibkit","json_url":"https://awesomerea.org/resources/nibkit/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/nibkit/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/nibkit/index.md","name":"nibkit","name_zh":"nibkit 原生界面结构分析工具","record_type":"resource","relationship":"foundation","requirements":["Supply supported .nib/.storyboardc files, an .app/directory, or an .ipa for automatic extraction. The reviewed README lists NIBArchive coder versions 9, 10 and 11 plus older binary-plist/NSKeyedArchive formats.","Source builds require Go 1.22 or later according to go.mod. The README states a standard-library-only implementation and advertises darwin/linux arm64/amd64 prebuilt binaries with no runtime dependencies; a Windows release was not verified.","Recovery concerns compiled interface structure and wiring. Format documentation is based on reverse-engineered observations. MIT-licensed."],"requirements_zh":["输入须为受支持的 .nib／.storyboardc 文件、.app／目录，或可自动提取的 .ipa。所审阅 README 列出 NIBArchive 编码器版本 9、10、11，以及较旧的二进制 plist／NSKeyedArchive 格式。","根据 go.mod，从源码构建需要 Go 1.22 或更高版本。README 声明实现仅使用标准库，并提供 darwin／linux 的 arm64／amd64 预编译程序，无运行时依赖；未核实 Windows 发行版。","恢复对象是已编译界面的结构与连接关系。格式文档基于逆向观察编写。采用 MIT 许可证。"],"targets":["app"],"url":"https://github.com/tokenbleed/nibkit","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/snuri00/psp-web-recomp/blob/37826ab881d9a593efb842fe47adfae2e9118b5d/LICENSE","https://github.com/snuri00/psp-web-recomp/blob/37826ab881d9a593efb842fe47adfae2e9118b5d/docs/internals.md"],"category":"game-analysis","description_en":"Translate PSP MIPS executables into C++ and WebAssembly, backed by a PSP high-level emulation runtime and WebGL2 renderer. Native tracing, frame capture and audio tools support investigating missing behavior during game porting.","description_zh":"将 PSP MIPS 可执行文件转换为 C++ 与 WebAssembly，配合 PSP 高层仿真运行时和 WebGL2 渲染器；原生跟踪、画面捕获及音频工具可辅助调查游戏移植中缺失的行为。","entry_url":"https://awesomerea.org/resources/psp-web-recomp/","entry_url_zh":"https://awesomerea.org/zh/resources/psp-web-recomp/","evidence_url":"https://github.com/snuri00/psp-web-recomp/blob/37826ab881d9a593efb842fe47adfae2e9118b5d/README.md","group":"tools","id":"psp-web-recomp","json_url":"https://awesomerea.org/resources/psp-web-recomp/record.json","kind":"project","markdown_url":"https://awesomerea.org/resources/psp-web-recomp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/psp-web-recomp/index.md","name":"PSP Web Recomp","name_zh":"PSP Web Recomp 浏览器游戏重编译项目","record_type":"resource","relationship":"foundation","requirements":["Provide an image of a game you own and a compatible executable decrypter. Builds need Git, CMake, Ninja, C++20, Python 3, PSPRecomp and Emscripten. Linux is the documented tested build host; macOS is untested.","Author demonstrations cover two Ready at Dawn titles sharing an engine. Other games can require missing HLE calls or graphics features. Movies are skipped, and encrypted saves from a PSP or PPSSPP do not yet load.","Threaded browser hosting requires cross-origin isolation headers and HTTP Range support. The optional native runner also requires EGL/OpenGL ES development headers.","Upstream states that game data is not included and asks users not to redistribute generated game C++ or WebAssembly. Project code uses MIT; the bundled ATRAC decoder retains LGPL-2.1-or-later."],"requirements_zh":["需自行提供自有游戏的镜像及兼容的可执行文件解密工具。构建需要 Git、CMake、Ninja、C++20、Python 3、PSPRecomp 和 Emscripten。文档测试的构建主机为 Linux，macOS 未经测试。","作者演示仅覆盖两款使用同一引擎的 Ready at Dawn 游戏，其他游戏可能需要补充 HLE 调用或图形功能。目前跳过影片，尚不能加载 PSP 或 PPSSPP 的加密存档。","浏览器多线程托管需要跨源隔离响应头及 HTTP Range 支持。可选的原生运行程序还需要 EGL／OpenGL ES 开发头文件。","上游说明不附带游戏数据，并要求用户不要再分发生成的游戏 C++ 或 WebAssembly。项目代码采用 MIT；所附 ATRAC 解码器保留 LGPL-2.1-or-later 许可。"],"targets":["game","website"],"url":"https://github.com/snuri00/psp-web-recomp","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/N64Recomp/N64Recomp/blob/ffb39cdad1da5de07eaaa48bd1db4a89a7986771/LICENSE","https://github.com/N64Recomp/N64Recomp/blob/ffb39cdad1da5de07eaaa48bd1db4a89a7986771/src/main.cpp#L426-L443","https://github.com/N64Recomp/N64Recomp/releases/tag/mod-tool-release"],"category":"game-analysis","description_en":"Statically recompiles N64 MIPS binaries into C functions from symbol metadata, emitting function lookups and relocation macros so a runtime can handle statically linked and relocatable overlays. The output needs a runtime such as N64ModernRuntime; the repository also includes RSP microcode and mod tooling.","description_zh":"依据符号元数据将 N64 MIPS 二进制静态重编译为 C 函数，并生成函数查找与重定位宏，供运行时处理静态链接和可重定位的覆盖段。输出需配合 N64ModernRuntime 等运行时；仓库还包含 RSP 微码重编译与模组工具。","entry_url":"https://awesomerea.org/resources/n64recomp/","entry_url_zh":"https://awesomerea.org/zh/resources/n64recomp/","evidence_url":"https://github.com/N64Recomp/N64Recomp/blob/ffb39cdad1da5de07eaaa48bd1db4a89a7986771/README.md","group":"tools","id":"n64recomp","json_url":"https://awesomerea.org/resources/n64recomp/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/n64recomp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/n64recomp/index.md","name":"N64: Recompiled","name_zh":"N64: Recompiled","record_type":"resource","relationship":"foundation","requirements":["The README documents an ELF as the metadata source, most easily produced from an existing disassembly or decompilation; the reviewed source also accepts a symbols file plus ROM, which the README does not yet describe. A TOML file sets inputs, stubs, skips and instruction patches; full option documentation is not available.","Build N64Recomp from a recursive clone with CMake 3.20+ and a C++20 compiler. The only GitHub release (2025-05-04) packages the separate Recomp Mod Tool, not the recompiler. Last commit at review: 2026-05-27.","Testing has mostly covered old MIPS compilers (GCC 2.7.2, IDO) and modern clang; modern MIPS GCC output may need specific flags, and relocation support for TLB-mapped code is still planned.","MIT-licensed tool; submodules keep their own licenses. It ships no game code or assets. Downstream recompilations such as Zelda 64: Recompiled are separate projects."],"requirements_zh":["README 说明元数据需以 ELF 文件提供，最简便的来源是目标游戏已有的反汇编或反编译项目；所审阅的源码还接受符号文件加 ROM 的输入方式，README 尚未说明。TOML 配置文件指定输入、桩函数、跳过的函数及单条指令补丁；目前没有完整的选项文档。","N64Recomp 需递归克隆，并用 CMake 3.20+ 和支持 C++20 的编译器构建。GitHub 上唯一的发布版本（2025-05-04）是独立的 Recomp Mod Tool，而非重编译器本身。审阅时最后一次提交为 2026-05-27。","测试主要覆盖旧版 MIPS 编译器（GCC 2.7.2、IDO）和现代 clang 的输出；现代 MIPS GCC 编译的代码可能需要特定编译参数，TLB 映射代码的重定位支持仍在计划中。","工具采用 MIT 许可证，子模块保留各自的许可。工具本身不附带游戏代码或资产。Zelda 64: Recompiled 等下游重编译项目各自独立。"],"targets":["binary","game"],"url":"https://github.com/N64Recomp/N64Recomp","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/hedge-dev/XenonRecomp/blob/ddd128bcca99fe8bfbb99bea583c972351fa6ace/LICENSE.md"],"category":"game-analysis","description_en":"Converts Xbox 360 PowerPC executables into C++ that can be compiled for other platforms, with the XenonAnalyse companion detecting jump tables and function boundaries. Output is a literal instruction translation rather than decompiled code and needs a runtime that the project does not supply.","description_zh":"将 Xbox 360 PowerPC 可执行文件转换为可在其他平台编译的 C++ 代码，配套的 XenonAnalyse 负责检测跳转表和函数边界。输出是逐条指令的直译而非反编译代码，并需要项目本身不提供的运行时。","entry_url":"https://awesomerea.org/resources/xenonrecomp/","entry_url_zh":"https://awesomerea.org/zh/resources/xenonrecomp/","evidence_url":"https://github.com/hedge-dev/XenonRecomp/blob/ddd128bcca99fe8bfbb99bea583c972351fa6ace/README.md","group":"tools","id":"xenonrecomp","json_url":"https://awesomerea.org/resources/xenonrecomp/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/xenonrecomp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/xenonrecomp/index.md","name":"XenonRecomp","name_zh":"XenonRecomp","record_type":"resource","relationship":"foundation","requirements":["A per-game TOML file supplies the XEX (plus an optional title-update XEXP), output directory, jump-table file and addresses of register save/restore and setjmp/longjmp functions; some function boundaries may need manual entries. Jump-table detection targets Sonic Unleashed patterns and may need changes for other games.","The README disclaimer states that no runtime is provided and that making a game work is the user’s responsibility. MMIO is unimplemented, exceptions are unsupported, and some PPC instruction variants are missing.","Building needs a recursive clone, CMake 3.20+ and Clang 18+; other compilers are untested and not recommended, including for generated output. There is no GitHub release; last commit at review: 2025-08-04.","MIT-licensed project code; submodules keep their own licenses. It ships no game code or assets."],"requirements_zh":["每款游戏需要一个 TOML 配置，提供 XEX（以及可选的标题更新 XEXP）、输出目录、跳转表文件，以及寄存器保存／恢复函数和 setjmp/longjmp 的地址；部分函数边界可能需要手动填写。跳转表检测针对 Sonic Unleashed 的代码模式，其他游戏可能需要修改。","README 免责声明指出项目不提供运行时，让游戏正常运行是使用者自己的责任。MMIO 尚未实现，不支持异常，部分 PPC 指令变体仍缺失。","构建需递归克隆，并使用 CMake 3.20+ 和 Clang 18+；其他编译器未经测试且不推荐，包括用于编译生成代码。GitHub 上没有发布版本；审阅时最后一次提交为 2025-08-04。","项目代码采用 MIT 许可证，子模块保留各自的许可。工具本身不附带游戏代码或资产。"],"targets":["binary","game"],"url":"https://github.com/hedge-dev/XenonRecomp","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/BroNils/aotopsy/blob/01011df108eaf5a0c1757cf5842115f9fb8b6303/go.mod","https://github.com/BroNils/aotopsy/blob/01011df108eaf5a0c1757cf5842115f9fb8b6303/LICENSE","https://github.com/BroNils/aotopsy/blob/01011df108eaf5a0c1757cf5842115f9fb8b6303/SECURITY.md"],"category":"android","description_en":"Statically inspect Flutter/Dart AOT libapp.so files to recover available metadata, class structures, call edges and pseudocode without embedding a Dart VM or compiling a matching SDK. Supports ARM64 and x86_64 analysis paths.","description_zh":"静态检查 Flutter/Dart AOT libapp.so 文件，恢复可用元数据、类结构、调用关系及伪代码，无需嵌入 Dart VM 或编译匹配的 SDK，提供 ARM64 与 x86_64 分析路径。","entry_url":"https://awesomerea.org/resources/aotopsy/","entry_url_zh":"https://awesomerea.org/zh/resources/aotopsy/","evidence_url":"https://github.com/BroNils/aotopsy/blob/01011df108eaf5a0c1757cf5842115f9fb8b6303/README.md","group":"tools","id":"aotopsy","json_url":"https://awesomerea.org/resources/aotopsy/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/aotopsy/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/aotopsy/index.md","name":"AOTopsy","name_zh":"AOTopsy Flutter/Dart 静态分析工具","record_type":"resource","relationship":"foundation","requirements":["Source builds require Go 1.25.4 according to go.mod (README says 1.25+). Supply a supported libapp.so AOT snapshot; the reviewed README models Dart 2.10–3.13. JIT snapshots are outside scope.","Ghidra/IDA integration is ARM64-only. Most instance-field names and local/captured variable names are removed from release builds; polymorphic dispatch and virtual-call reachability remain limited. Reconstructed Dart output is not guaranteed original or behaviorally equivalent source.","Unbounded --all decompilation can need about 64 GB RAM; use targeted or capped analysis. Accuracy and syntax measurements are author-reported, and the nonredistributable ground-truth corpus tests do not run in public CI.","BSD-3-Clause. AOTopsy credits the original unflutter project and its authors; Dart SDK-derived tables retain their own notices."],"requirements_zh":["go.mod 要求从源码构建时使用 Go 1.25.4（README 表述为 1.25+）。需提供受支持的 libapp.so AOT 快照；所审阅 README 建模覆盖 Dart 2.10–3.13，不支持 JIT 快照。","Ghidra／IDA 集成仅支持 ARM64。发布构建会删除大部分实例字段名和局部／捕获变量名，多态分派与虚调用可达性分析仍有限制。重建的 Dart 输出不保证是原始源码或行为等价源码。","不加限制的 --all 反编译可能需要约 64 GB 内存，应使用定向或设有上限的分析。准确率和语法测量由作者报告；不可再分发的基准真值语料测试不会在公共 CI 中运行。","采用 BSD-3-Clause。AOTopsy 保留对原始 unflutter 项目及作者的署名，来自 Dart SDK 的表数据另保留对应声明。"],"targets":["app","binary"],"url":"https://github.com/BroNils/aotopsy","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-16","additional_evidence_urls":["https://github.com/bongtrop/hbctool/blob/389b351bfdd988e93da5cce1a9e3bfd860548e7a/pyproject.toml","https://github.com/bongtrop/hbctool/blob/389b351bfdd988e93da5cce1a9e3bfd860548e7a/LICENSE","https://pypi.org/project/hbctool/0.1.5/"],"category":"android","description_en":"Disassemble and reassemble supported React Native Hermes bytecode bundles through HASM files, enabling bytecode inspection and editing for the explicitly supported legacy HBC versions.","description_zh":"通过 HASM 文件反汇编和重新汇编受支持的 React Native Hermes 字节码包，为明确支持的旧版 HBC 提供字节码检查与修改能力。","entry_url":"https://awesomerea.org/resources/hbctool/","entry_url_zh":"https://awesomerea.org/zh/resources/hbctool/","evidence_url":"https://github.com/bongtrop/hbctool/blob/389b351bfdd988e93da5cce1a9e3bfd860548e7a/README.md","group":"tools","id":"hbctool","json_url":"https://awesomerea.org/resources/hbctool/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/hbctool/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hbctool/index.md","name":"hbctool","name_zh":"hbctool Hermes 字节码汇编与反汇编工具","record_type":"resource","relationship":"foundation","requirements":["The reviewed package metadata is 0.1.5 and classified Alpha; it declares Python ^3.6 and docopt ^0.6.2. As checked on 2026-10-20, v0.1.5 is the latest tag and PyPI release (uploaded 2021-09-17) and there are no GitHub releases; the reviewed 2023-04-10 commit is still the main head, GitHub’s last recorded push was 2023-12-10, the repository is not archived and the README does not mark it as maintained, superseded or archived.","README support is limited to HBC versions 59, 62, 74 and 76. Supply a compatible Hermes bytecode bundle.","This is a bytecode assembler/disassembler, not complete original-JavaScript recovery. Overflow patching is listed as future work. MIT-licensed."],"requirements_zh":["所审阅的软件包元数据版本为 0.1.5，标记为 Alpha，声明依赖 Python ^3.6 和 docopt ^0.6.2。据 2026-10-20 核查，v0.1.5 是最新标签和 PyPI 版本（上传于 2021-09-17），没有 GitHub 发布版本；所审阅的 2023-04-10 提交仍是 main 分支最新提交，GitHub 记录的最后一次推送为 2023-12-10，仓库未归档，README 未标注其仍在维护、已被取代或已归档。","README 明确仅支持 HBC 版本 59、62、74 和 76。需提供兼容的 Hermes 字节码包。","这是字节码汇编与反汇编工具，不代表完整恢复原始 JavaScript。溢出修补仍列为后续工作。采用 MIT 许可证。"],"targets":["app"],"url":"https://github.com/bongtrop/hbctool","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/roberdorfer/kef-lsx-volume/blob/6fbd7f76c63bf6d7da0979db4a1b312a064e0b4b/docs/usb-volume-curve.md","https://github.com/roberdorfer/kef-lsx-volume/blob/6fbd7f76c63bf6d7da0979db4a1b312a064e0b4b/LICENSE"],"category":"reconstruction-cases","description_en":"Uses measured USB-volume behavior and a macOS audio proxy to map volume keys to a KEF LSX II’s LAN control. The project reports more even steps while forwarding USB audio; the speaker firmware is unchanged.","description_zh":"根据实测 USB 音量行为，通过 macOS 音频代理将音量键映射到 KEF LSX II 的局域网控制。项目报告音量步进更均匀，同时转发 USB 音频；扬声器固件未修改。","entry_url":"https://awesomerea.org/resources/kef-lsx-volume-case/","entry_url_zh":"https://awesomerea.org/zh/resources/kef-lsx-volume-case/","evidence_url":"https://github.com/roberdorfer/kef-lsx-volume/blob/6fbd7f76c63bf6d7da0979db4a1b312a064e0b4b/README.md","group":"cases","id":"kef-lsx-volume-case","json_url":"https://awesomerea.org/resources/kef-lsx-volume-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/kef-lsx-volume-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/kef-lsx-volume-case/index.md","name":"LSX II Volume Fixer: reconstructing volume behavior","name_zh":"LSX II 音量修正器：重建音量行为","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","testing"],"requirements":["Requires an LSX II connected by USB and on the same LAN, macOS 14+, Xcode Command Line Tools and administrator installation. The author reports testing on macOS 27; only LSX II is tested.","Builds from source with ad-hoc signing; Windows support is only proposed. MIT source is available.","The volume curve, latency and audio claims are author-reported."],"requirements_zh":["需要通过 USB 连接且与 Mac 位于同一局域网的 LSX II、macOS 14+、Xcode 命令行工具及管理员安装权限。作者报告在 macOS 27 上测试；仅测试了 LSX II。","从源码构建并临时签名；Windows 支持尚只是提议。源码采用 MIT 许可。","音量曲线、延迟与音频结论均为作者报告。"],"targets":["app"],"url":"https://github.com/roberdorfer/kef-lsx-volume","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/luki-1/ArkWeb/blob/17ec697bd431fce96a60fff1075f7e399d296058/PHASE2.md","https://github.com/luki-1/ArkWeb/commit/a936b62f8ba66864aaae24fd2829303197664e1d"],"category":"reconstruction-cases","description_en":"Runs Spider-Man Remastered and Arkham Knight together, streaming Gotham collision into Spider-Man’s physics world and compositing his rendered frame into Arkham. This experimental runtime bridge is not a recovered standalone game or new engine.","description_zh":"同时运行《漫威蜘蛛侠：重制版》与《蝙蝠侠：阿卡姆骑士》，将哥谭碰撞数据传入蜘蛛侠的物理世界，再将其渲染画面合成到阿卡姆中。这是实验性的运行时桥接，并非恢复出的独立游戏或新引擎。","entry_url":"https://awesomerea.org/resources/arkweb-two-game-case/","entry_url_zh":"https://awesomerea.org/zh/resources/arkweb-two-game-case/","evidence_url":"https://github.com/luki-1/ArkWeb/blob/17ec697bd431fce96a60fff1075f7e399d296058/README.md","group":"cases","id":"arkweb-two-game-case","json_url":"https://awesomerea.org/resources/arkweb-two-game-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/arkweb-two-game-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/arkweb-two-game-case/index.md","name":"ArkWeb: a two-game movement and collision experiment","name_zh":"ArkWeb：双游戏动作与碰撞桥接实验","reconstruction_method":"other","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","attribution"],"requirements":["Requires owned Steam copies of both games, Spider-Man 4.0630 specifically, Windows 10 x64, an Xbox-style controller and hardware able to run both games simultaneously.","Build prerequisites include Visual Studio 2019 C++ tools, Windows 10 SDK and Python 3.12 dependencies. Collision gaps, clipping, lighting and combat-pose limitations remain.","End-to-end operation is project-reported. AI setup/documentation collaboration is visible. Public source has no repository-wide license found in the reviewed tree; game files are not supplied."],"requirements_zh":["需要自行持有两款游戏的 Steam 版本，其中蜘蛛侠必须为4.0630；还需 Windows 10 x64、Xbox 类手柄及可同时运行两款游戏的硬件。","构建需要 Visual Studio 2019 C++ 工具、Windows 10 SDK 与 Python 3.12 依赖。碰撞缺口、穿模、光照及战斗姿态限制仍然存在。","端到端运行是项目方报告。可见 AI 安装指导与文档协作。核查的文件树中未发现仓库级许可证；项目不提供游戏文件。"],"targets":["game"],"url":"https://github.com/luki-1/ArkWeb","verification":"source-reviewed","verified_at":"2026-10-16"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/cschalle/hw-harness/blob/093afc5c576c200f29b771d01624a327d0ff1806/README.md","https://github.com/cschalle/hw-harness/blob/093afc5c576c200f29b771d01624a327d0ff1806/doc/method.md","https://github.com/cschalle/hw-harness/blob/093afc5c576c200f29b771d01624a327d0ff1806/examples/ipu7-imx471/README.md","https://github.com/cschalle/hw-harness/blob/093afc5c576c200f29b771d01624a327d0ff1806/LICENSE","https://blogs.gnome.org/uraeus/2026/10/15/aiandreverseengineerhardware/"],"category":"reconstruction-cases","description_en":"Documents an author-reported scanner investigation comparing vendor-driver USB control transfers with Linux-driver traces to infer initialization, timing and resolution parameters. The released harness organizes reference capture and comparison; it does not automatically recover a complete protocol specification.","description_zh":"记录作者报告的扫描仪调查：比较厂商驱动的 USB 控制传输与 Linux 驱动的记录，推断初始化、时序及分辨率参数。公开工具负责组织参考采集与比较，并不自动恢复完整协议规范。","entry_url":"https://awesomerea.org/resources/hw-harness-reference-case/","entry_url_zh":"https://awesomerea.org/zh/resources/hw-harness-reference-case/","evidence_url":"https://github.com/cschalle/hw-harness/blob/093afc5c576c200f29b771d01624a327d0ff1806/examples/plustek-film-scanner/README.md","group":"cases","id":"hw-harness-reference-case","json_url":"https://awesomerea.org/resources/hw-harness-reference-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/hw-harness-reference-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hw-harness-reference-case/index.md","name":"hw-harness: scanner USB protocol investigation","name_zh":"hw-harness：扫描仪 USB 协议调查","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","scope","testing","license"],"requirements":["Developed on Fedora with libvirt/KVM and a Windows 11 Pro guest running the vendor driver. The documented USB case uses a Plustek scanner with device ID 07b3:1825; physical hardware is required.","USB passthrough, host-side usbmon capture, appropriate host privileges and a matching Linux-side operation are needed for comparable traces. The harness supplies capture/control tooling rather than an automatic protocol decoder.","The generic harness was published after the original bespoke investigation. Its separate MIPI camera example inspects configuration, ACPI and calibration data rather than using the scanner’s USB capture path.","Hardware outcomes and Claude involvement are author-reported.","The pinned harness code is MIT-licensed. Vendor software and driver dependencies remain separate inputs."],"requirements_zh":["在 Fedora 上开发，使用 libvirt/KVM 与运行厂商驱动的 Windows 11 Pro 虚拟机。所记录的 USB 案例使用设备 ID 为 07b3:1825 的 Plustek 扫描仪，需要实物硬件。","要获得可比较的记录，需要 USB 直通、宿主机侧 usbmon 采集、相应宿主权限及匹配的 Linux 端操作。工具提供采集与控制能力，并非自动协议解码器。","通用工具发布于原先专用调查之后。另一个 MIPI 摄像头示例检查配置、ACPI 及校准数据，并不使用扫描仪的 USB 采集路径。","硬件结果及 Claude 参与情况均为作者报告。","固定提交下的工具代码采用 MIT 许可。厂商软件与驱动依赖仍是独立输入。"],"targets":["protocol"],"url":"https://github.com/cschalle/hw-harness","verification":"source-reviewed","verified_at":"2026-10-17T02:37:34.781877Z"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/netzob/netzob/blob/088fe769e98e0bfbd3ed99e66b3982446bf8d197/setup.py","https://github.com/netzob/netzob/blob/088fe769e98e0bfbd3ed99e66b3982446bf8d197/pyproject.toml","https://github.com/netzob/netzob/blob/088fe769e98e0bfbd3ed99e66b3982446bf8d197/src/netzob/release.py","https://github.com/netzob/netzob/blob/088fe769e98e0bfbd3ed99e66b3982446bf8d197/COPYING.txt","https://github.com/netzob/netzob/blob/088fe769e98e0bfbd3ed99e66b3982446bf8d197/src/netzob/Inference/Grammar/ActiveGrammarInferer.py","https://github.com/netzob/netzob/blob/088fe769e98e0bfbd3ed99e66b3982446bf8d197/src/netzob/Inference/Grammar/all.py","https://github.com/netzob/netzob/blob/088fe769e98e0bfbd3ed99e66b3982446bf8d197/doc/documentation/source/tutorials/discover_features.rst","https://github.com/netzob/netzob/blob/088fe769e98e0bfbd3ed99e66b3982446bf8d197/doc/documentation/source/index.rst","https://netzob.github.io/netzob/installation/python.html","https://pypi.org/project/Netzob/2.0.0/","https://github.com/netzob/netzob/blob/088fe769e98e0bfbd3ed99e66b3982446bf8d197/src/netzob/Inference/Grammar/GenericMAT.py"],"category":"protocol-analysis","description_en":"Model communication protocols and infer message layouts from traces, with configured active learning for protocol state machines. Python APIs expose message fields, symbols and automata for parsing, traffic generation and fuzzing.","description_zh":"对通信协议建模并从流量记录推断报文布局，通过配置主动学习来推断协议状态机。Python API 提供报文字段、符号和自动机，用于解析、流量生成及模糊测试。","entry_url":"https://awesomerea.org/resources/netzob/","entry_url_zh":"https://awesomerea.org/zh/resources/netzob/","evidence_url":"https://github.com/netzob/netzob/blob/088fe769e98e0bfbd3ed99e66b3982446bf8d197/README.rst","group":"tools","id":"netzob","json_url":"https://awesomerea.org/resources/netzob/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/netzob/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/netzob/index.md","name":"Netzob","name_zh":"Netzob 协议建模与推断框架","record_type":"resource","relationship":"foundation","requirements":["The upstream README requires Python 3.8+; the reviewed release metadata lists Linux x86/x64. Source builds need native build tools, Python headers, libpcap/libffi development libraries and the documented Graph::Easy dependency.","Latest PyPI release at review: 2.0.0, uploaded 2023-01-08. The reviewed source head identifies itself as 2.0.1.dev0, not a newer stable release. Its build pins Cython 0.29.32 and older dependencies including NumPy 1.24.1. As checked on 2026-10-20, the reviewed 2023-01-08 commit is still the master head and GitHub’s latest release is also 2.0.0; GitHub’s last recorded push was 2024-04-18, the repository is not archived and the README does not mark it as maintained, superseded or archived.","Provide representative raw/PCAP messages and analyst-selected models or symbols. Active grammar learning requires input/output symbols, a communication channel and target process control. The current inference documentation is explicitly unfinished.","GPL-3.0-or-later in the reviewed source notices; documentation uses CC-BY-SA. Inference and generated models require analyst validation."],"requirements_zh":["上游 README 要求 Python 3.8+；核查的版本元数据列出 Linux x86/x64。源码构建需要原生编译工具、Python 头文件、libpcap／libffi 开发库，以及文档指定的 Graph::Easy 依赖。","核查时最新 PyPI 版本为 2.0.0，上传于 2023-01-08。所审阅源码头版本标为 2.0.1.dev0，不能视为更新的稳定版。其构建固定使用 Cython 0.29.32，并依赖 NumPy 1.24.1 等较旧版本。据 2026-10-20 核查，所审阅的 2023-01-08 提交仍是 master 分支最新提交，GitHub 最新发布版本同样是 2.0.0；GitHub 记录的最后一次推送为 2024-04-18，仓库未归档，README 未标注其仍在维护、已被取代或已归档。","需要有代表性的原始报文／PCAP 记录，以及分析者选择的模型或符号。主动语法学习需要输入／输出符号、通信通道和目标进程控制。当前协议推断文档明确尚未完成。","核查的源码声明 GPL-3.0-or-later，文档采用 CC-BY-SA。推断结果及生成模型需要分析者验证。"],"targets":["protocol"],"url":"https://github.com/netzob/netzob","verification":"source-reviewed","verified_at":"2026-10-17T02:53:06.350416Z"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/secdev/scapy/blob/e2e35c07bce2f40e7513e1b29a6d300d5329dbc3/pyproject.toml","https://github.com/secdev/scapy/blob/e2e35c07bce2f40e7513e1b29a6d300d5329dbc3/LICENSE","https://github.com/secdev/scapy/blob/e2e35c07bce2f40e7513e1b29a6d300d5329dbc3/doc/scapy/installation.rst","https://github.com/secdev/scapy/blob/e2e35c07bce2f40e7513e1b29a6d300d5329dbc3/doc/scapy/build_dissect.rst","https://scapy.readthedocs.io/en/stable/introduction.html","https://github.com/secdev/scapy/releases/tag/v2.8.0","https://pypi.org/project/scapy/2.8.0/"],"category":"protocol-analysis","description_en":"Script packet dissection, construction, request/reply matching and capture-file analysis in Python. Custom packet fields and layer bindings let analysts encode understood wire formats and investigate protocol behavior.","description_zh":"使用 Python 编写报文解析、构造、请求／响应匹配及捕获文件分析流程；自定义报文字段与层绑定可将已理解的线格式编码为可操作模型，辅助研究协议行为。","entry_url":"https://awesomerea.org/resources/scapy/","entry_url_zh":"https://awesomerea.org/zh/resources/scapy/","evidence_url":"https://github.com/secdev/scapy/blob/e2e35c07bce2f40e7513e1b29a6d300d5329dbc3/README.md","group":"tools","id":"scapy","json_url":"https://awesomerea.org/resources/scapy/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/scapy/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/scapy/index.md","name":"Scapy","name_zh":"Scapy 报文分析与构造工具","record_type":"resource","relationship":"foundation","requirements":["Reviewed stable release: 2.8.0, published 2026-10-02. Its package metadata requires Python >=3.7,<4; upstream says the 2.8 major version is the last to support Python 3.7 and 3.8. Use release-matched documentation rather than older cached version pages.","Linux, macOS and BSD have documented platform support; Windows requires Npcap. Live capture or packet transmission needs suitable interfaces and privileges. Offline capture analysis is a separate workflow, and libpcap requirements vary by platform and feature.","Optional features have additional dependencies, such as cryptography for cryptographic functionality and plotting tools for visual reports. Unknown formats require suitable custom Packet/Field definitions and bindings; dissection does not automatically infer complete protocol semantics or peer implementations.","GPL-2.0-only in the reviewed package metadata, with dependency and capture-driver licenses separate. The 2.8.0 release notes describe security fixes."],"requirements_zh":["核查稳定版本为 2.8.0，发布于 2026-10-02。包元数据要求 Python >=3.7,<4；上游说明 2.8 大版本是最后支持 Python 3.7 和 3.8 的版本系列。应使用匹配该版本的文档，而非较旧的缓存页面。","文档提供 Linux、macOS 和 BSD 的平台支持说明；Windows 需要 Npcap。实时抓包或发送报文需要适合的接口与权限。离线捕获文件分析属于不同工作流，libpcap 的要求随平台及功能而异。","可选功能具有额外依赖，例如密码学功能所需的 cryptography，以及可视化报告所需的绘图工具。未知格式需要适用的自定义 Packet／Field 定义及绑定；解析不会自动推断完整协议语义或通信对端实现。","核查的包元数据声明 GPL-2.0-only，依赖项与抓包驱动的许可单独适用。2.8.0 发布说明列出了安全修复。"],"targets":["protocol"],"url":"https://github.com/secdev/scapy","verification":"source-reviewed","verified_at":"2026-10-17T02:53:06.350416Z"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/jopohl/urh/blob/1403d92987cc3d01d41aff64250955ce455dabd2/setup.py","https://github.com/jopohl/urh/blob/1403d92987cc3d01d41aff64250955ce455dabd2/LICENSE","https://github.com/jopohl/urh/releases/tag/v2.10.0","https://pypi.org/project/urh/2.10.0/","https://github.com/jopohl/urh/wiki/Supported-devices/32fb197d4a7055f11f7f91fe9cb68450469c6cd4","https://github.com/jopohl/urh/wiki/SDR-udev-rules/9095b3c39026e8dde89a1a0ae79c023f446817f7"],"category":"protocol-analysis","description_en":"Demodulate and decode signals captured with software-defined radios, with automatic modulation-parameter detection and customizable decodings. Analysts assign protocol fields and message types by hand or review rule-based automatic field inference; a fuzzer targets stateless protocols and a simulator supports stateful exchanges.","description_zh":"解调并解码通过软件无线电捕获的信号，支持自动检测调制参数和自定义解码。分析者可手动标注协议字段与消息类型，或复核基于规则的字段自动推断结果；模糊测试组件面向无状态协议，仿真环境则用于有状态交互。","entry_url":"https://awesomerea.org/resources/universal-radio-hacker/","entry_url_zh":"https://awesomerea.org/zh/resources/universal-radio-hacker/","evidence_url":"https://github.com/jopohl/urh/blob/1403d92987cc3d01d41aff64250955ce455dabd2/README.md","group":"tools","id":"universal-radio-hacker","json_url":"https://awesomerea.org/resources/universal-radio-hacker/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/universal-radio-hacker/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/universal-radio-hacker/index.md","name":"Universal Radio Hacker (URH)","name_zh":"Universal Radio Hacker（URH）无线协议分析工具","record_type":"resource","relationship":"foundation","requirements":["GitHub marks the repository archived and read-only since 2026-03-29. The last release is v2.10.0, published 2025-12-17 with a Windows x64 installer and a macOS DMG; PyPI 2.10.0 requires Python >=3.9.","Install options are the Windows installer, the macOS DMG (macOS 13+ recommended) or Homebrew, pipx on Linux (recommended, with precompiled native extensions), distribution packages and the Docker image. Source installs need Python 3.9+ and setuptools, and build C++ extensions.","Recording and sending need a supported SDR with a native or external backend; several listed devices are receive-only. Non-root Linux access requires the documented udev rules, and native support from distribution packages needs the SDR -dev packages installed first.","GPL-3.0. Automatic field inference gives the analyst a rule-based starting point. Fuzzing and simulation transmit through a TX-capable SDR."],"requirements_zh":["GitHub 自 2026-03-29 起将该仓库标记为已归档、只读。最后一个版本为 v2.10.0，发布于 2025-12-17，提供 Windows x64 安装程序和 macOS DMG；PyPI 上的 2.10.0 要求 Python >=3.9。","可使用 Windows 安装程序、macOS DMG（建议 macOS 13 及以上）或 Homebrew、Linux 上推荐的 pipx（附带预编译原生扩展）、发行版软件包以及 Docker 镜像安装。从源码安装需要 Python 3.9+ 和 setuptools，并会编译 C++ 扩展。","录制和发送信号需要受支持的 SDR 及其原生或外部后端，列表中有若干设备只能接收。Linux 下以非 root 用户访问设备需安装文档提供的 udev 规则；通过发行版软件包使用原生支持时，需先安装对应 SDR 的 -dev 软件包。","采用 GPL-3.0。字段自动推断为分析者提供基于规则的起点。模糊测试和仿真需要通过支持发射的 SDR 发出信号。"],"targets":["protocol"],"url":"https://github.com/jopohl/urh","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/collin80/SavvyCAN/blob/3166d8cc6c8d12c2c7db78d96b24fc0f8bced1ef/LICENSE","https://github.com/collin80/SavvyCAN/blob/3166d8cc6c8d12c2c7db78d96b24fc0f8bced1ef/help/sniffer.md","https://github.com/collin80/SavvyCAN/blob/3166d8cc6c8d12c2c7db78d96b24fc0f8bced1ef/help/graphwindow.md","https://github.com/collin80/SavvyCAN/blob/3166d8cc6c8d12c2c7db78d96b24fc0f8bced1ef/help/filecomparison.md","https://github.com/collin80/SavvyCAN/blob/3166d8cc6c8d12c2c7db78d96b24fc0f8bced1ef/help/isotp_decoder.md","https://github.com/collin80/SavvyCAN/blob/3166d8cc6c8d12c2c7db78d96b24fc0f8bced1ef/help/dbc_manager.md","https://github.com/collin80/SavvyCAN/blob/3166d8cc6c8d12c2c7db78d96b24fc0f8bced1ef/help/customsender.md","https://github.com/collin80/SavvyCAN/blob/3166d8cc6c8d12c2c7db78d96b24fc0f8bced1ef/help/fuzzingwindow.md","https://github.com/collin80/SavvyCAN/blob/3166d8cc6c8d12c2c7db78d96b24fc0f8bced1ef/help/uds_scanner.md","https://github.com/collin80/SavvyCAN/releases/tag/V220","https://www.savvycan.com/"],"category":"protocol-analysis","description_en":"Capture or load CAN bus traffic and investigate frames with sniffer, graphing, file-comparison and ISO-TP/UDS decoding views; loaded or analyst-edited DBC files map raw bytes to named signals. Separate custom-sender, fuzzing and UDS-scan windows transmit frames on a live bus.","description_zh":"捕获或载入 CAN 总线流量，通过嗅探、绘图、文件比对及 ISO-TP／UDS 解码视图分析帧；借助载入或由分析者编辑的 DBC 文件，将原始字节映射为具名信号。自定义发送、模糊测试和 UDS 扫描则是独立窗口，会主动向实时总线发送帧。","entry_url":"https://awesomerea.org/resources/savvycan/","entry_url_zh":"https://awesomerea.org/zh/resources/savvycan/","evidence_url":"https://github.com/collin80/SavvyCAN/blob/3166d8cc6c8d12c2c7db78d96b24fc0f8bced1ef/README.md","group":"tools","id":"savvycan","json_url":"https://awesomerea.org/resources/savvycan/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/savvycan/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/savvycan/index.md","name":"SavvyCAN","name_zh":"SavvyCAN CAN 总线分析工具","record_type":"resource","relationship":"foundation","requirements":["Latest GitHub release: V220, published 2025-05-09, with Linux AppImage, Windows x64 and macOS builds; the README says the current macOS build appears to need macOS 10.15+. The project site's binary links and changelog end at V208 (2022) and are not V220 release notes. Its continuous build follows the newest commit without stability promises.","Source builds need Qt 5.14+ with QtSerialBus support; a Qt 6 work-in-progress branch is described as beta quality. The interface needs at least a 1024x768 display.","Live capture uses GVRET-firmware boards such as the recommended CANDue, or Qt SerialBus drivers including SocketCAN, Vector, PEAK and TinyCAN. Loading the listed log formats needs no capture device; CANDump/Kayak, PCAN Viewer and Wireshark SocketCAN PCAP support is read-only.","MIT. Fuzzing and UDS scanning send frames to connected vehicles or devices, and the fuzzing help warns this can cause unsafe behavior. Signal meanings come from DBC definitions or analyst work rather than automatic recovery."],"requirements_zh":["GitHub 最新版本为 V220，发布于 2025-05-09，提供 Linux AppImage、Windows x64 和 macOS 构建；README 称当前 macOS 构建似乎需要 macOS 10.15+。项目网站上的二进制链接和更新日志止于 V208（2022 年），不能视为 V220 的发布说明。网站提到的持续构建跟随最新提交，不保证稳定性。","从源码构建需要带 QtSerialBus 支持的 Qt 5.14+；适配 Qt 6 的开发中分支，README 称其约为 beta 质量。界面至少需要 1024x768 分辨率。","实时采集可使用运行 GVRET 固件的板卡（如推荐的 CANDue），或 SocketCAN、Vector、PEAK、TinyCAN 等 Qt SerialBus 驱动。载入所列日志格式无需采集设备；CANDump／Kayak、PCAN Viewer 和 Wireshark SocketCAN PCAP 仅支持读取。","采用 MIT 许可。模糊测试和 UDS 扫描会向连接的车辆或设备发送帧，模糊测试帮助文档警告这可能引发危险行为。信号含义来自 DBC 定义或分析者的工作，并非自动恢复。"],"targets":["protocol"],"url":"https://github.com/collin80/SavvyCAN","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/DES-Lab/AALpy/blob/335c50a1b4b5a830d788f86b7c30a8cb6c73ecc0/pyproject.toml","https://github.com/DES-Lab/AALpy/blob/335c50a1b4b5a830d788f86b7c30a8cb6c73ecc0/LICENCE.txt","https://github.com/DES-Lab/AALpy/releases/tag/v.1.6.2","https://pypi.org/project/aalpy/1.6.2/","https://github.com/apferscher/ble-learning/blob/febd774109c41a6635659b8847cc766e667841dd/README.md"],"category":"protocol-analysis","description_en":"General-purpose Python automata-learning library that infers deterministic, non-deterministic, stochastic and pushdown models of black-box systems from active queries or passive traces. Its README links a separate Bluetooth Low Energy study whose repository reports learned connection and legacy-pairing state machines; message formats are not inferred.","description_zh":"通用的 Python 自动机学习库，可通过主动查询或被动轨迹数据，推断黑盒系统的确定性、非确定性、随机及下推自动机模型。其 README 链接了一项独立的低功耗蓝牙（BLE）研究，该研究的仓库报告了学习得到的设备连接与传统配对（legacy pairing）状态机；该库本身不推断报文格式。","entry_url":"https://awesomerea.org/resources/aalpy/","entry_url_zh":"https://awesomerea.org/zh/resources/aalpy/","evidence_url":"https://github.com/DES-Lab/AALpy/blob/335c50a1b4b5a830d788f86b7c30a8cb6c73ecc0/README.md","group":"tools","id":"aalpy","json_url":"https://awesomerea.org/resources/aalpy/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/aalpy/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/aalpy/index.md","name":"AALpy","name_zh":"AALpy 自动机学习库","record_type":"resource","relationship":"foundation","requirements":["Latest PyPI release: 1.6.2, uploaded 2026-08-03, requiring Python >=3.6. The reviewed master branch identifies itself as unreleased 2.0.0 and requires Python 3.10+; upstream says 1.6.2 is the last release for older Python versions.","Active learning needs a user-written system-under-learning adapter, an input alphabet and an equivalence oracle; passive learning needs traces in the documented format. Learned models are bounded by the chosen alphabet, abstraction and oracle.","pydot is the only Python dependency; visualizing models needs Graphviz on the PATH. MIT-licensed.","The ble-learning study repository is separate: it needs an nRF52840 dongle or development kit flashed with the supplied SweynTooth-derived firmware, Python 3.9 and its listed libraries, and it has no repository license file."],"requirements_zh":["PyPI 最新版本为 1.6.2，上传于 2026-08-03，要求 Python >=3.6。所审阅的 master 分支自标为尚未发布的 2.0.0，要求 Python 3.10+；上游说明 1.6.2 是支持旧版 Python 的最后一个版本。","主动学习需要用户编写的被学习系统（SUL）适配器、输入字母表和等价判定器（equivalence oracle）；被动学习需要符合文档格式的轨迹数据。学到的模型受所选字母表、抽象方式和判定器限制。","唯一的 Python 依赖是 pydot；可视化模型需要将 Graphviz 加入 PATH。采用 MIT 许可。","ble-learning 研究仓库独立于本库：需要一块 nRF52840 Dongle 或开发板，并刷入仓库提供的、源自 SweynTooth 的固件，还需要 Python 3.9 和所列依赖库；该仓库没有许可证文件。"],"targets":["protocol"],"url":"https://github.com/DES-Lab/AALpy","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/GlasgowEmbedded/glasgow/blob/d51713b2141bba7958a073e99166ad01f5024c42/docs/manual/src/license.rst","https://github.com/GlasgowEmbedded/glasgow/blob/d51713b2141bba7958a073e99166ad01f5024c42/docs/manual/src/purchase.rst","https://github.com/GlasgowEmbedded/glasgow/blob/d51713b2141bba7958a073e99166ad01f5024c42/docs/manual/src/install/binary.rst","https://github.com/GlasgowEmbedded/glasgow/blob/d51713b2141bba7958a073e99166ad01f5024c42/docs/manual/src/install/source.rst","https://github.com/GlasgowEmbedded/glasgow/blob/d51713b2141bba7958a073e99166ad01f5024c42/software/pyproject.toml"],"category":"firmware","description_en":"Use FPGA-based open hardware and Python applets to read and write SPI flash, I2C EEPROM and parallel memory chips, determine JTAG pinouts, debug supported processors and analyze UART, SPI and QSPI transactions on physical devices.","description_zh":"借助基于 FPGA 的开源硬件和 Python 小程序（applet），读写 SPI 闪存、I2C EEPROM 及并行存储芯片，自动确定 JTAG 引脚，调试受支持的处理器，并分析实体设备上的 UART、SPI 和 QSPI 事务。","entry_url":"https://awesomerea.org/resources/glasgow-interface-explorer/","entry_url_zh":"https://awesomerea.org/zh/resources/glasgow-interface-explorer/","evidence_url":"https://github.com/GlasgowEmbedded/glasgow/blob/d51713b2141bba7958a073e99166ad01f5024c42/docs/manual/src/intro.rst","group":"tools","id":"glasgow-interface-explorer","json_url":"https://awesomerea.org/resources/glasgow-interface-explorer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/glasgow-interface-explorer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/glasgow-interface-explorer/index.md","name":"Glasgow Interface Explorer","name_zh":"Glasgow Interface Explorer 数字接口探索工具","record_type":"resource","relationship":"foundation","requirements":["Requires Glasgow hardware, bought pre-assembled or built from the open design, plus physical access and correct wiring to the target; some targets need external power. The manual lists its features as working with a revC board, except the analyzer2 logic-analyzer applet, which is currently revD0+ only.","Windows has self-contained MSI installers for Windows 7 SP1 or newer (Windows 7 also needs update KB4457144). Other platforms use the documented git and pipx source install with Python >=3.13,<3.16; Linux also needs the supplied udev rules. The repository has no tagged releases, and the package metadata marks the software as alpha.","Dual-licensed 0BSD or Apache-2.0. The built-in cycle-accurate logic analyzer for debugging applets is documented as temporarily removed pending internal architecture improvements. Applets cover the documented interfaces and memory or processor families; the target interface and parameters must still be identified, and Glasgow does not extract firmware automatically."],"requirements_zh":["需要 Glasgow 硬件（可购买成品或依据开源设计自行制作），并能实际接触目标、正确接线；部分目标还需外部供电。手册称所列功能用 revC 板即可完成，但 analyzer2 逻辑分析仪小程序目前仅支持 revD0 及更新版本。","Windows 提供自带全部依赖的 MSI 安装包，支持 Windows 7 SP1 及更新版本（Windows 7 还需先安装 KB4457144 更新）。其他平台按文档使用 git 和 pipx 从源码安装，需要 Python >=3.13,<3.16；Linux 还需安装随附的 udev 规则。仓库没有打标签的发行版本，包元数据将软件标为 alpha 阶段。","采用 0BSD 或 Apache-2.0 双许可。用于调试小程序的内置周期精确逻辑分析仪，文档说明已暂时移除，待内部架构改进后恢复。小程序只覆盖文档列出的接口以及存储器、处理器类型；使用时仍需识别目标接口和参数，Glasgow 不会自动提取固件。"],"targets":["firmware","protocol"],"url":"https://github.com/GlasgowEmbedded/glasgow","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/rehosting/penguin/blob/b645cd23852a41781181a651779b82a48c0c3fd3/LICENSE","https://github.com/rehosting/penguin/blob/b645cd23852a41781181a651779b82a48c0c3fd3/docs/workflow.md","https://github.com/rehosting/penguin/blob/b645cd23852a41781181a651779b82a48c0c3fd3/docs/schema_doc.md","https://github.com/rehosting/penguin/releases/tag/v3.1.21","https://www.ndss-symposium.org/wp-content/uploads/bar2025-final10.pdf"],"category":"firmware","description_en":"Rehost embedded Linux firmware from an extracted root filesystem using a generated, editable configuration of emulation transformations, then refine it through a guest root shell, forwarded network services and recorded dynamic-analysis output.","description_zh":"以提取出的根文件系统为输入，生成可编辑的仿真变换配置来重托管嵌入式 Linux 固件，再借助客户机 root shell、转发到主机的网络服务和记录下的动态分析输出，逐步完善配置。","entry_url":"https://awesomerea.org/resources/penguin/","entry_url_zh":"https://awesomerea.org/zh/resources/penguin/","evidence_url":"https://github.com/rehosting/penguin/blob/b645cd23852a41781181a651779b82a48c0c3fd3/README.md","group":"tools","id":"penguin","json_url":"https://awesomerea.org/resources/penguin/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/penguin/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/penguin/index.md","name":"Penguin","name_zh":"Penguin 固件重托管工具","record_type":"resource","relationship":"foundation","requirements":["Reviewed release: v3.1.21, published 2026-10-06 and tagged at the reviewed commit. Install by pulling the rehosting/penguin container from Docker Hub and installing its penguin wrapper script; source and Nix builds are documented separately.","Input is a root-filesystem tarball with permissions and ownership preserved, made with the bundled fw2tar or by hand. Penguin uses whole-system emulation with a replacement kernel selected for the detected architecture; it does not reproduce the original device faithfully or recover source code. Failed rehostings are refined by editing the configuration and rerunning.","The BAR 2025 workshop paper, co-located with NDSS, reports author-run results on 13,649 embedded Linux images from 69 vendors, with working rehostings for 75% more firmware than the prior state of the art. That evaluation predates this release.","GPL-2.0-or-later; the README also carries a U.S. Government rights notice. Findings from the emulated system need analyst interpretation."],"requirements_zh":["所审阅版本为 v3.1.21，发布于 2026-10-06，其标签指向所审阅的提交。安装方式是从 Docker Hub 拉取 rehosting/penguin 容器，再安装其 penguin 包装脚本；源码构建和 Nix 构建另有文档说明。","输入为保留权限和属主信息的根文件系统 tar 包，可用附带的 fw2tar 生成或手工制作。Penguin 采用整机仿真，并根据检测到的架构换用替代内核，不能如实复现原始设备，也不恢复源代码。重托管失败时，需修改配置后重新运行。","与 NDSS 同期举办的 BAR 2025 研讨会论文报告了作者在 69 家厂商的 13,649 个嵌入式 Linux 镜像上的结果：能构建出可用重托管环境的固件比此前最佳方法多 75%。该评估早于本版本。","采用 GPL-2.0-or-later；README 另附美国政府权利声明。仿真系统中的发现需要分析者解读。"],"targets":["firmware"],"url":"https://github.com/rehosting/penguin","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/clearbluejar/pyghidra-mcp/blob/323fbdb29dfed42241e6574806223a3454aca908/pyproject.toml","https://github.com/clearbluejar/pyghidra-mcp/blob/323fbdb29dfed42241e6574806223a3454aca908/cli/pyproject.toml","https://github.com/clearbluejar/pyghidra-mcp/blob/323fbdb29dfed42241e6574806223a3454aca908/LICENSE","https://github.com/clearbluejar/pyghidra-mcp/releases/tag/v0.2.7","https://pypi.org/project/pyghidra-mcp/0.2.7/","https://github.com/clearbluejar/pyghidra-mcp/compare/v0.2.7...42d8f80551a765441b1a723f6f1ff45aa3914d5e"],"category":"agent-mcp","description_en":"PyGhidra-based MCP server that analyzes every binary in a Ghidra project and exposes decompilation, cross-references, call graphs, symbol and string search, indexed semantic code search, and renaming, typing and comment edits. A separate HTTP CLI client and an optional mode driving a Ghidra GUI it launches are included.","description_zh":"基于 PyGhidra 的 MCP 服务器，可分析 Ghidra 项目中的全部二进制，提供反编译、交叉引用、调用图、符号与字符串搜索、基于索引的语义代码检索，以及重命名、类型和注释编辑。另附基于 HTTP 的独立命令行客户端，以及可选的图形界面模式：由服务器自行启动 Ghidra 图形界面并加以操控。","entry_url":"https://awesomerea.org/resources/pyghidra-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/pyghidra-mcp/","evidence_url":"https://github.com/clearbluejar/pyghidra-mcp/blob/323fbdb29dfed42241e6574806223a3454aca908/README.md","group":"agents","id":"pyghidra-mcp","json_url":"https://awesomerea.org/resources/pyghidra-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/pyghidra-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pyghidra-mcp/index.md","name":"pyghidra-mcp","name_zh":"pyghidra-mcp 项目级 Ghidra MCP 服务器","record_type":"resource","relationship":"independent-agent-integration","requirements":["Reviewed release: v0.2.7, published 2026-09-25, with package metadata requiring Python >=3.10. The README describes the project as beta and under active development; main has later, unreleased MCP Python SDK 2 changes.","Outside the published container image, install Ghidra separately and point GHIDRA_INSTALL_DIR at it. Semantic search uses a local ChromaDB index built in the background, so it can lag behind decompilation on large projects; ChromaDB and GZF artifacts are stored beside the Ghidra project.","The CLI client and GUI mode require the streamable HTTP transport; GUI mode launches Ghidra in-process and cannot attach to an already-running Ghidra. Import, delete, rename, type and comment tools change the project.","Apache-2.0."],"requirements_zh":["所审阅版本为 v0.2.7，发布于 2026-09-25，包元数据要求 Python >=3.10。README 称该项目处于 beta 阶段并在积极开发中；main 分支另有尚未发布的 MCP Python SDK 2 相关改动。","除使用官方发布的容器镜像外，需单独安装 Ghidra，并将 GHIDRA_INSTALL_DIR 指向安装目录。语义检索依赖后台构建的本地 ChromaDB 索引，在大型项目中可能晚于反编译功能就绪；ChromaDB 与 GZF 产物保存在与 Ghidra 项目同级的目录中。","命令行客户端和图形界面模式都需要 streamable HTTP 传输；图形界面模式在同一进程内启动 Ghidra，无法连接已在运行的 Ghidra。导入、删除、重命名、类型和注释类工具会修改项目。","采用 Apache-2.0。"],"targets":["binary"],"url":"https://github.com/clearbluejar/pyghidra-mcp","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/mandiant/GoReSym/blob/722897e0a80da0a06c00c5e40591a253a551f04e/LICENSE","https://github.com/mandiant/GoReSym/blob/722897e0a80da0a06c00c5e40591a253a551f04e/IDAPython/goresym_rename.py","https://github.com/mandiant/GoReSym/releases/tag/v3.4.1","https://cloud.google.com/blog/topics/threat-intelligence/golang-internals-symbol-recovery"],"category":"native-analysis","description_en":"Recover Go build metadata, function names and address ranges, source file and line tables, embedded types and strings from Go binaries, including stripped and some malformed unpacked samples. JSON output can be imported into IDA Pro with the included IDAPython script.","description_zh":"从 Go 二进制中恢复构建元数据、函数名与地址范围、源文件和行号表、内嵌类型及字符串，也可处理已剥离符号以及部分经 UPX 等脱壳后结构异常的样本。JSON 输出可借助附带的 IDAPython 脚本导入 IDA Pro。","entry_url":"https://awesomerea.org/resources/goresym/","entry_url_zh":"https://awesomerea.org/zh/resources/goresym/","evidence_url":"https://github.com/mandiant/GoReSym/blob/722897e0a80da0a06c00c5e40591a253a551f04e/README.md","group":"tools","id":"goresym","json_url":"https://awesomerea.org/resources/goresym/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/goresym/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/goresym/index.md","name":"GoReSym","name_zh":"GoReSym Go 符号恢复工具","record_type":"resource","relationship":"foundation","requirements":["Reviewed release: v3.4.1, published 2026-09-14 and tagged at the reviewed commit, with prebuilt Linux, macOS and Windows archives; source builds need a recent Go toolchain.","Documented support covers ARM64 and Intel x86/x64 Mach-O, ELF and PE binaries in either endianness; pclntab parsing and moduledata location need Go 1.2+, and type parsing Go 1.5+. Some stripped binaries need a manual version override, and type parsing fails if that version is wrong.","MIT. Output is runtime and symbol metadata, not original source or decompiled code. The README's write-up link now redirects to a generic Mandiant page; the article is on the Google Cloud blog."],"requirements_zh":["所审阅版本为 v3.4.1，发布于 2026-09-14，其标签指向所审阅的提交，提供 Linux、macOS 和 Windows 预编译压缩包；从源码构建需要较新的 Go 工具链。","文档所列支持范围涵盖 ARM64 与 Intel x86/x64 架构、Mach-O/ELF/PE 格式及大小端的各种组合；pclntab 解析和 moduledata 定位需要 Go 1.2+，类型解析需要 Go 1.5+。部分已剥离符号的二进制需手动指定 Go 版本，若版本不准确，类型解析会失败。","采用 MIT 许可。输出是运行时与符号元数据，并非原始源码或反编译代码。README 中的技术文章链接现跳转到 Mandiant 通用页面，文章本身位于 Google Cloud 博客。"],"targets":["binary"],"url":"https://github.com/mandiant/GoReSym","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/revng/revng/blob/57d81a3b0d946ccaa9fed8a13c9871dc36b94747/README.md","https://github.com/revng/revng/blob/57d81a3b0d946ccaa9fed8a13c9871dc36b94747/share/doc/revng/user-manual/initial-setup.md","https://github.com/revng/revng/blob/57d81a3b0d946ccaa9fed8a13c9871dc36b94747/LICENSE","https://github.com/revng/revng/blob/57d81a3b0d946ccaa9fed8a13c9871dc36b94747/LICENSE.mit","https://rev.ng/"],"category":"native-analysis","description_en":"Open-source decompilation pipeline that lifts x86-64, AArch64, i386, ARM and MIPS code with QEMU, runs LLVM-based analyses and emits C designed to be valid and recompilable. Data layout analysis infers structures from pointer use; an editable YAML model and Python or TypeScript wrappers support automation. Its VSCode-based UI is a separate closed-beta product, with commercial plans announced.","description_zh":"开源反编译流水线：借助 QEMU 将 x86-64、AArch64、i386、ARM 和 MIPS 代码提升为与架构无关的表示，以 LLVM 进行分析，并输出以合法、可重新编译为设计目标的 C 代码。数据布局分析可根据指针用法推断数据结构；可编辑的 YAML 模型及 Python、TypeScript 封装便于自动化。基于 VSCode 的界面是单独的产品，目前处于封闭测试阶段，并计划推出商业方案。","entry_url":"https://awesomerea.org/resources/revng/","entry_url_zh":"https://awesomerea.org/zh/resources/revng/","evidence_url":"https://github.com/revng/revng/blob/57d81a3b0d946ccaa9fed8a13c9871dc36b94747/share/doc/revng/what-is-revng.md","group":"tools","id":"revng","json_url":"https://awesomerea.org/resources/revng/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/revng/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/revng/index.md","name":"rev.ng","name_zh":"rev.ng 二进制分析框架与反编译器","record_type":"resource","relationship":"foundation","requirements":["Runs only on Linux x86-64; the docs suggest WSL on Windows and Docker on macOS, using linux/amd64 on Apple Silicon. The user installer downloads the current master distributable and the repository has no tagged releases, so this entry pins the reviewed develop-branch commit.","Developer setups use the orchestra package manager with binary archives or source builds. Scripting connects to a GraphQL API, locally or over the network; QEMU serves only as a lifter and code is not emulated.","GPL-2.0 as a whole because it depends on GPLv2 components such as QEMU; individual files are MIT-licensed. The rev.ng site describes the decompilation pipeline as Free Software. The UI is in closed beta, with free cloud use planned for public projects and commercial plans for private projects and a fully offline version.","Valid, recompilable C is a stated design goal; inferred types and names need analyst review."],"requirements_zh":["仅能在 Linux x86-64 上运行；文档建议 Windows 用户使用 WSL，macOS 用户使用 Docker（Apple Silicon 需指定 linux/amd64 平台）。用户安装脚本下载 master 分支的当前发行包，仓库也没有打标签的版本，因此本条目固定到所审阅的 develop 分支提交。","开发环境通过 orchestra 包管理器安装，可使用二进制归档或从源码构建。脚本可在本地或经网络连接 GraphQL API；QEMU 仅用作提升器，不会仿真执行代码。","由于依赖 QEMU 等 GPLv2 组件，项目整体采用 GPL-2.0，单个文件采用 MIT 许可。rev.ng 网站将反编译流水线描述为自由软件。界面目前处于封闭测试阶段，计划免费提供公开项目的云端使用，私有项目及完全离线版本则将推出商业方案。","生成合法且可重新编译的 C 代码是项目的设计目标；推断出的类型和名称需要分析者复核。"],"targets":["binary"],"url":"https://github.com/revng/revng","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-17","additional_evidence_urls":["https://github.com/aicodeking/leanrea/blob/09ba4aa0217f82cd880f855a60b877f59f39b22b/leanrea/SKILL.md","https://github.com/aicodeking/leanrea/blob/09ba4aa0217f82cd880f855a60b877f59f39b22b/bench/BENCHMARK.md","https://github.com/aicodeking/leanrea/blob/09ba4aa0217f82cd880f855a60b877f59f39b22b/bench/results/final.jsonl","https://github.com/aicodeking/leanrea/blob/09ba4aa0217f82cd880f855a60b877f59f39b22b/bench/tasks.json","https://github.com/aicodeking/leanrea/blob/09ba4aa0217f82cd880f855a60b877f59f39b22b/bench/run.py","https://github.com/aicodeking/leanrea/blob/09ba4aa0217f82cd880f855a60b877f59f39b22b/bench/setup.sh","https://github.com/aicodeking/leanrea/blob/09ba4aa0217f82cd880f855a60b877f59f39b22b/bench/ctx.sh","https://github.com/aicodeking/leanrea/blob/09ba4aa0217f82cd880f855a60b877f59f39b22b/LICENSE","https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/README.md","https://github.com/morluto/rea/blob/808339f0b1cf3837445f392b5d5f1f362d64a27d/.agents/skills/reverse-engineer-anything/SKILL.md"],"category":"agent-workflows","description_en":"An independent agent skill that routes application and binary investigations through ordinary command-line tools. It supplies batched triage recipes, targeted source/disassembly reading and explicit seen/inferred/unknown evidence labels, accompanied by a small author-reported comparison against an REA MCP workflow.","description_zh":"独立智能体技能，使用普通命令行工具开展应用与二进制调查，提供批量初查、针对性源码／反汇编阅读，以及明确的已观察／推断／未知证据标记，并附有作者报告的 REA MCP 工作流小规模对照。","entry_url":"https://awesomerea.org/resources/leanrea-skill/","entry_url_zh":"https://awesomerea.org/zh/resources/leanrea-skill/","evidence_url":"https://github.com/aicodeking/leanrea/blob/09ba4aa0217f82cd880f855a60b877f59f39b22b/README.md","group":"agents","id":"leanrea-skill","json_url":"https://awesomerea.org/resources/leanrea-skill/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/leanrea-skill/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/leanrea-skill/index.md","name":"LeanREA","name_zh":"LeanREA 命令行逆向分析技能","record_type":"resource","relationship":"independent-agent-integration","requirements":["A plain-text skill for a shell-capable agent; it installs no analysis engine or decompiler and needs no REA MCP server. Manual installation needs a compatible skill client, the optional npx route Node.js/npm. Recipes need their own tools, such as ripgrep, jq, Go, Electron asar tooling or Xcode command-line tools; DecompileAll.java is not bundled.","The author’s benchmark used Claude Code 2.1.301, Sonnet 5.5 and macOS arm64 on Notion 7.35.1 app.asar, mac_utils.node and a gh binary built with Go 1.27.1, against rea-agents 6.5.0 over MCP. Reproducing it needs those locally obtained targets, Python 3, Node/npm, macOS tools and model access.","Across 12 runs per arm, LeanREA scores 74/75 checks to REA’s 75/75 at lower time, cost and turn counts; these are author records, and the no-skill arm’s correction from 66/75 to 67/75 rests on an unpublished answer.","Ground truth is hand-written regex keys, not behavioral-equivalence tests. Transcripts, target hashes and the resolved model ID (the default is the mutable sonnet alias) are unpublished, and the arms ran concurrently.","The 400.7k-token figure is a separate all-tools context probe, not the comparison setup. Native analysis engines and Android were not tested, and REA also offers a CLI.","MIT for the skill and benchmark code, crediting REA’s code and documentation and disclaiming affiliation; external tools, model services and targets keep their own terms."],"requirements_zh":["供具备终端访问能力的智能体使用的纯文本技能；不安装分析引擎或反编译器，也不需要 REA MCP 服务。手动安装需要兼容的技能客户端，可选的 npx 安装方式需要 Node.js/npm。各类示例依赖各自工具，例如 ripgrep、jq、Go、Electron asar 工具或 Xcode 命令行工具；仓库未附带 DecompileAll.java。","作者的基准使用 Claude Code 2.1.301、Sonnet 5.5 与 macOS arm64，目标为 Notion 7.35.1 的 app.asar、mac_utils.node 以及用 Go 1.27.1 构建的 gh 二进制，对照组通过 MCP 使用 rea-agents 6.5.0。复现需要自行获取这些本地目标，以及 Python 3、Node/npm、macOS 工具和模型服务。","每组 12 次运行中，LeanREA 得到 74/75 项检查，REA 为 75/75，耗时、费用和轮数更少；这些是作者记录。无技能组由 66/75 修正为 67/75，所依据的回答未公开。","答案依据是手工编写的正则表达式，不是行为等价测试。回答转录、目标哈希及最终解析的模型标识（默认为可变的 sonnet 别名）均未公开，三个实验组并发运行。","400.7k token 来自一次加载全部工具的独立上下文探针，并非对照实验配置。未测试原生分析引擎与 Android；REA 也提供 CLI。","技能与基准代码采用 MIT，并将工作流细节归功于 REA 的代码与文档，同时声明没有隶属关系；外部工具、模型服务与目标仍有各自条款。"],"targets":["app","binary"],"url":"https://github.com/aicodeking/leanrea","verification":"source-reviewed","verified_at":"2026-10-17"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/VallierDev/uu-remote-linux/blob/696cf10e334b2e7fe1afcb698b354c09ee328447/README.md","https://github.com/VallierDev/uu-remote-linux/blob/696cf10e334b2e7fe1afcb698b354c09ee328447/AGENTS.md","https://github.com/VallierDev/uu-remote-linux/blob/696cf10e334b2e7fe1afcb698b354c09ee328447/Cargo.toml","https://github.com/VallierDev/uu-remote-linux/blob/696cf10e334b2e7fe1afcb698b354c09ee328447/LICENSE","https://github.com/VallierDev/uu-remote-linux/blob/696cf10e334b2e7fe1afcb698b354c09ee328447/src/control_protocol.rs","https://github.com/VallierDev/uu-remote-linux/blob/696cf10e334b2e7fe1afcb698b354c09ee328447/src/protocol.rs","https://github.com/VallierDev/uu-remote-linux/blob/696cf10e334b2e7fe1afcb698b354c09ee328447/src/initialization.rs","https://github.com/VallierDev/uu-remote-linux/blob/696cf10e334b2e7fe1afcb698b354c09ee328447/src/desktop_control_tests.rs","https://github.com/VallierDev/uu-remote-linux/blob/696cf10e334b2e7fe1afcb698b354c09ee328447/src/webrtc_lifecycle_tests.rs","https://github.com/VallierDev/uu-remote-linux/blob/696cf10e334b2e7fe1afcb698b354c09ee328447/src/viewer/wire.rs","https://github.com/VallierDev/uu-remote-linux/blob/696cf10e334b2e7fe1afcb698b354c09ee328447/src/viewer/tests.rs","https://github.com/VallierDev/uu-remote-linux/blob/696cf10e334b2e7fe1afcb698b354c09ee328447/.github/workflows/ci.yml"],"category":"reconstruction-cases","description_en":"Implements an unofficial native Linux host for NetEase UU Remote, using protocol behavior the maintainer says was recovered from official-client traffic and shipped programs. The Rust implementation connects selected desktop, input and auxiliary-tool channels to Linux services; an additional Linux viewer remains experimental. The author attributes development to Claude and Codex, without establishing REA use.","description_zh":"实现网易 UU 远程的非官方原生 Linux 被控端；维护者称协议行为来自对官方客户端流量及已发布程序的调查。Rust 实现将选定的桌面、输入和辅助工具通道连接到 Linux 服务，另有仍处于实验阶段的 Linux 控制端。作者将开发归因于 Claude 与 Codex，未确立 REA 使用。","entry_url":"https://awesomerea.org/resources/uu-remote-linux-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/uu-remote-linux-protocol-case/","evidence_url":"https://github.com/VallierDev/uu-remote-linux/blob/696cf10e334b2e7fe1afcb698b354c09ee328447/README.en.md","group":"cases","id":"uu-remote-linux-protocol-case","json_url":"https://awesomerea.org/resources/uu-remote-linux-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/uu-remote-linux-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/uu-remote-linux-protocol-case/index.md","name":"UU Remote on Linux: an unofficial protocol implementation","name_zh":"Linux 上的 UU 远程：非官方协议实现","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","testing","limits"],"requirements":["Reviewed version 0.2.8 implements selected protocol formats and session behavior in native Rust with small C components, without Wine or bundled NetEase binaries. The additional Linux viewer is experimental. Cargo.toml declares GPL-3.0-or-later; dependencies and official clients/services retain separate terms. This is not recovered vendor source or a replacement cloud backend.","The host needs Linux, stable Rust, a C toolchain, pkg-config, X11 development libraries and FFmpeg. GTK3 supports graphical login; the optional viewer also needs SDL2. Wayland/portal builds require additional libraries and authorized desktop access. Dependencies vary by feature.","UU cloud services remain required; the host and experimental viewer interoperate with supported official clients and hosts. Account connections use the user’s own authorized account; experimental remote assistance requires an explicitly enabled host and recipient-provided connection details. The project is unaffiliated with NetEase.","Public parsing and initialization code has synthetic checks for malformed inputs, capability replies and echo correlation. Local/virtual WebRTC peers test pending-desktop responses, independent tool connections and session isolation. These are implementation checks.","The README reports real-machine GNOME/X11 use and selected GNOME Wayland checks; other desktop coverage is largely virtual-machine based. Its viewer acceptance matrix is explicitly partial, with different official-host coverage for clipboard, audio, codecs and keyboards. These remain author-reported observations.","Wayland remains experimental, with single-screen and resolution/recovery limits. Multi-monitor switching is under development; HDR, privacy-screen mode, microphone forwarding and the Linux pre-login screen are unsupported. Restrictive-network relay behavior is not thoroughly tested."],"requirements_zh":["所审阅版本为 0.2.8，以原生 Rust 和少量 C 组件实现选定协议格式与会话行为，不使用 Wine 或捆绑网易二进制程序。另附的 Linux 控制端仍属实验性功能。Cargo.toml 声明 GPL-3.0-or-later；依赖及官方客户端／服务保留各自条款。这并非恢复厂商源码或替代云后端。","被控端需要 Linux、stable Rust、C 工具链、pkg-config、X11 开发库及 FFmpeg。GTK3 用于图形登录；可选控制端还需要 SDL2。Wayland／portal 构建需额外库和获授权的桌面访问。依赖随功能变化。","仍需 UU 云服务；被控端与实验性控制端可同受支持的官方客户端及被控端互通。账号连接使用用户自己的获授权账号；实验性远程协助要求被控端明确开启，并由接受协助的一方提供连接信息。项目与网易无隶属关系。","公开的解析与初始化代码通过合成检查覆盖畸形输入、能力回复及回显关联；本地／虚拟 WebRTC 对端测试桌面未就绪时的回复、独立工具连接和会话隔离。这些是实现检查。","README 报告了 GNOME/X11 真机使用及部分 GNOME Wayland 检查，其他桌面覆盖主要来自虚拟机。控制端验收矩阵明确不完整，面向官方被控端的剪贴板、音频、编解码器和键盘覆盖各不相同。这些仍为作者报告。","Wayland 仍属实验性支持，存在单屏、分辨率与恢复限制。多显示器切换仍在开发；不支持 HDR、防窥模式、麦克风转发及 Linux 登录前界面。受限网络中的中继行为未充分测试。"],"targets":["app","protocol"],"url":"https://github.com/VallierDev/uu-remote-linux","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/n64decomp/perfect_dark/blob/169ed48bdcbfb3b568b028bd5bebb27680073514/Makefile","https://github.com/n64decomp/perfect_dark/blob/169ed48bdcbfb3b568b028bd5bebb27680073514/LICENSE","https://github.com/n64decomp/perfect_dark/blob/169ed48bdcbfb3b568b028bd5bebb27680073514/.gitmodules","https://github.com/n64decomp/perfect_dark/blob/169ed48bdcbfb3b568b028bd5bebb27680073514/tools/extract","https://github.com/n64decomp/perfect_dark/blob/169ed48bdcbfb3b568b028bd5bebb27680073514/checksums.ntsc-final.md5","https://github.com/n64decomp/perfect_dark/blob/169ed48bdcbfb3b568b028bd5bebb27680073514/checksums.ntsc-beta.md5","https://github.com/n64decomp/perfect_dark/blob/169ed48bdcbfb3b568b028bd5bebb27680073514/checksums.ntsc-1.0.md5","https://github.com/n64decomp/perfect_dark/blob/169ed48bdcbfb3b568b028bd5bebb27680073514/checksums.pal-beta.md5","https://github.com/n64decomp/perfect_dark/blob/169ed48bdcbfb3b568b028bd5bebb27680073514/checksums.pal-final.md5","https://github.com/n64decomp/perfect_dark/blob/169ed48bdcbfb3b568b028bd5bebb27680073514/checksums.jpn-final.md5","https://github.com/Emill/ido-static-recomp/blob/421e546956ceae984927e609b083195e9e81659e/README.md","https://github.com/Emill/ido-static-recomp/blob/421e546956ceae984927e609b083195e9e81659e/ido/5.3/LICENSE.md","https://ryandwyer.gitlab.io/pdstatus/","https://gitlab.com/ryandwyer/perfect-dark/-/tree/46d3393bed1a3d5fbefbdba6df7237579b5c66e0"],"category":"reconstruction-cases","description_en":"Reconstructs Perfect Dark’s Nintendo 64 code with a documented matching-ROM build. The project combines reconstructed source with assets from a user-supplied original ROM, then checks version-specific artifact hashes. It is a reproducible-build research case, distinct from the separate native PC port; matching results remain project-reported here.","description_zh":"重建 Perfect Dark 的 Nintendo 64 代码，并提供生成一致 ROM 的构建流程。项目将重建源码与使用者自备原 ROM 中的素材结合，再检查各版本产物的哈希。这是可复现构建研究案例，与独立的原生 PC 移植不同；此处的一致性结果仍为项目报告。","entry_url":"https://awesomerea.org/resources/perfect-dark-matching-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/perfect-dark-matching-decomp-case/","evidence_url":"https://github.com/n64decomp/perfect_dark/blob/169ed48bdcbfb3b568b028bd5bebb27680073514/README.md","group":"cases","id":"perfect-dark-matching-decomp-case","json_url":"https://awesomerea.org/resources/perfect-dark-matching-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/perfect-dark-matching-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/perfect-dark-matching-decomp-case/index.md","name":"Perfect Dark: matching Nintendo 64 decompilation","name_zh":"Perfect Dark：生成一致 ROM 的 Nintendo 64 反编译重建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed GitHub repository mirrors Ryan Dwyer’s GitLab project. README describes a complete matching decompilation; six build targets cover NTSC beta, NTSC 1.0/final, PAL beta/final and Japanese final, with ntsc-final as default. This reconstructs an N64 ROM, not a Windows/Linux/macOS game executable or the separate Perfect Dark PC port.","Supply an independently authorized original ROM in non-byteswapped .z64 form, with header 0x80371240, named for the selected ROMID. make extract reads assets and comparison segments from that ROM; final builds also reuse extracted boot code. Existing extracted files are not overwritten, so modified inputs can invalidate matching results.","The documented host setup is Linux: GNU Make, host C/C++ tools, Python 3, MIPS binutils/GCC, armips, Capstone development files and the listed 32-bit libc headers. Initialize the pinned ido-static-recomp submodule. Matching mode reconstructs IDO 5.3 and 7.1 compiler tools from its IRIX inputs; optional GCC builds are nonmatching and limited to ntsc-1.0/ntsc-final.","After building, make test runs quiet MD5 verification against the selected version’s checksum manifest, including the final ROM and intermediate artifacts. The README also documents comparing base/built ROM hashes. The mutable status page reports all six versions complete/matching.","The repository declares MIT for source; original ROMs and extracted game assets retain separate rights. Compiler components have their own terms, including the submodule’s SGI notice for IDO 5.3; the project’s MIT declaration does not replace them."],"requirements_zh":["所审阅的 GitHub 仓库是 Ryan Dwyer 的 GitLab 项目的镜像。README 将其描述为完整的一致性反编译重建；六个构建目标涵盖 NTSC 测试版、NTSC 1.0／最终版、PAL 测试版／最终版及日版最终版，默认 ntsc-final。产物为 N64 ROM，不是 Windows／Linux／macOS 游戏可执行文件，也不是独立的 Perfect Dark PC 移植。","需自行取得获授权的原始 ROM，采用未交换字节序的 .z64 格式，文件头为 0x80371240，并按所选 ROMID 命名。make extract 从该 ROM 读取素材及用于比较的代码段；最终构建也复用提取的启动代码。已有提取文件不会被覆盖，因此修改后的输入可能破坏一致性结果。","文档说明的构建宿主为 Linux：需 GNU Make、宿主 C／C++ 工具、Python 3、MIPS binutils／GCC、armips、Capstone 开发文件及列明的 32 位 libc 头文件。还需初始化固定版本的 ido-static-recomp 子模块。一致性模式使用其中的 IRIX 输入重建 IDO 5.3 和 7.1 编译器工具；可选 GCC 构建不保证匹配，且仅支持 ntsc-1.0／ntsc-final。","构建后，make test 依据所选版本的校验清单，静默执行 MD5 校验，覆盖最终 ROM 及中间产物。README 也说明如何比较原 ROM 与构建 ROM 的哈希。可变的项目状态页报告六个版本均已完成且匹配。","仓库声明源码采用 MIT；原 ROM 和提取的游戏素材仍有各自权利约束。编译器组件另有条款，包括子模块为 IDO 5.3 附带的 SGI 声明，项目的 MIT 声明不能替代这些条款。"],"targets":["game"],"url":"https://github.com/n64decomp/perfect_dark","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/umarz317/TCLimate/blob/2a33c2013dbf3f297238131ca9eb6e287b2beb67/README.md","https://github.com/umarz317/TCLimate/blob/2a33c2013dbf3f297238131ca9eb6e287b2beb67/Docs/Releases/v0.1.6.md","https://github.com/umarz317/TCLimate/blob/2a33c2013dbf3f297238131ca9eb6e287b2beb67/Package.swift","https://github.com/umarz317/TCLimate/blob/2a33c2013dbf3f297238131ca9eb6e287b2beb67/Scripts/build-app.sh","https://github.com/umarz317/TCLimate/blob/2a33c2013dbf3f297238131ca9eb6e287b2beb67/Sources/TCLCore/ACControls.swift","https://github.com/umarz317/TCLimate/blob/2a33c2013dbf3f297238131ca9eb6e287b2beb67/Sources/TCLCore/CloudClient.swift","https://github.com/umarz317/TCLimate/blob/2a33c2013dbf3f297238131ca9eb6e287b2beb67/Sources/TCLCore/EnergyReport.swift","https://github.com/umarz317/TCLimate/blob/2a33c2013dbf3f297238131ca9eb6e287b2beb67/Sources/TCLMenuBar/AppStore.swift","https://github.com/umarz317/TCLimate/blob/2a33c2013dbf3f297238131ca9eb6e287b2beb67/LICENSE","https://github.com/umarz317/TCLimate/blob/2a33c2013dbf3f297238131ca9eb6e287b2beb67/THIRD_PARTY_NOTICES.md","https://github.com/nemesa/ha-tcl-home-unofficial-integration/blob/fdba4d7a0b8213f4f68a74b4ce0f932343802b6b/LICENSE"],"category":"reconstruction-cases","description_en":"Implements selected TCL Home air-conditioner controls and electricity reporting in a native macOS menu-bar app. It adapts earlier community protocol work and documents an Android-module investigation to recover a separate statistics request. Reported validation checks cloud state, not independent physical operation or complete device equivalence.","description_zh":"在原生 macOS 菜单栏应用中实现选定的 TCL Home 空调控制与用电量报告。项目改编既有社区协议实现，并记录通过调查 Android 模块恢复另一条统计请求的过程。报告的验证检查云端状态，不等于独立核实设备实际运行或完整设备等价性。","entry_url":"https://awesomerea.org/resources/tclimate-cloud-controls-case/","entry_url_zh":"https://awesomerea.org/zh/resources/tclimate-cloud-controls-case/","evidence_url":"https://github.com/umarz317/TCLimate/blob/2a33c2013dbf3f297238131ca9eb6e287b2beb67/Docs/Investigation.md","group":"cases","id":"tclimate-cloud-controls-case","json_url":"https://awesomerea.org/resources/tclimate-cloud-controls-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/tclimate-cloud-controls-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/tclimate-cloud-controls-case/index.md","name":"TCLimate: reconstructing selected TCL Home cloud controls","name_zh":"TCLimate：重建选定的 TCL Home 云端控制","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","attribution","scope","testing","scope","license"],"requirements":["Reviewed v0.1.6 beta requires macOS 14+, internet access and a TCL account with already-paired ACs. Building needs Swift 6.0+, Xcode Command Line Tools and a persistent signing certificate for the packaged app. Pairing still uses TCL Home; local LAN control and direct Google sign-in are absent.","The protocol implementation credits nemesa’s MIT-licensed Home Assistant integration. The electricity API was reportedly identified through Android Flutter-module inspection and a successful request capture; original packages, captures and detailed investigation logs are not included in the repository.","Source guards commands using reported model/state fields, restricts target temperature to whole degrees from 16–30°C, and checks reported state after sending. Unsuccessful confirmation is marked. Extra controls depend on available fields and modes.","Author validation covers a Pakistan account and two Split AC-1 units: authentication, discovery, reported state, power, temperature and daily electricity. Modes, fan, airflow and other optional controls lack physical validation; other regions/models remain unverified.","Energy parsing preserves genuine zeros, excludes invalid readings and leaves missing days as gaps; a seven-day total requires all seven readings. No persistent energy history or cost estimate is implemented. Offline tests are reported but absent from the reviewed tree/package targets.","MIT covers project code, with attribution retained for the earlier integration. Official services and third-party material retain separate terms. This is an unofficial cloud-dependent client, not recovered TCL source or firmware; APIs may change independently of the app."],"requirements_zh":["审阅版本为 v0.1.6 beta，需要 macOS 14+、互联网连接及已配对空调的 TCL 账号。构建需要 Swift 6.0+、Xcode Command Line Tools，以及供应用打包使用的固定签名证书。配对仍通过 TCL Home 完成；未实现局域网控制或直接使用 Google 登录。","协议实现明确归功于 nemesa 的 MIT 许可 Home Assistant 集成。文档报告通过检查 Android Flutter 模块及一次成功请求的抓包确定用电量 API；原始安装包、抓包及详细调查日志未收录在仓库中。","源码根据设备上报的型号／状态字段限制命令，将目标温度限定为 16–30°C 的整数，并在发送后核对上报状态。未确认的命令会被标记。额外控制项取决于可用字段与模式。","作者验证覆盖一个巴基斯坦账号和两台 Split AC-1：认证、发现、上报状态、电源、温度及每日用电量。模式、风速、风向和其他可选控制缺少实物验证；其他地区／型号仍未经验证。","用电量解析保留真实零值、排除无效读数，并将缺失日期留为空缺；七日总量需具备全部七天的读数。未实现持久用电历史或费用估算。文档报告了离线测试，但所审阅文件树／包目标未包含这些测试。","MIT 覆盖项目代码，并保留既有集成的署名。官方服务及第三方材料保留各自条款。这是依赖云端的非官方客户端，并非恢复 TCL 源码或固件；API 可独立于应用发生变化。"],"targets":["app","protocol"],"url":"https://github.com/umarz317/TCLimate","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/rehan-remade/universal-modder/blob/6a8865ae171b406f50892c7f46fc5f45655269eb/AGENTS.md","https://github.com/rehan-remade/universal-modder/blob/6a8865ae171b406f50892c7f46fc5f45655269eb/skills/reverse-engineering/SKILL.md","https://github.com/rehan-remade/universal-modder/blob/6a8865ae171b406f50892c7f46fc5f45655269eb/skills/mod-any-game/references/safety.md","https://github.com/rehan-remade/universal-modder/blob/6a8865ae171b406f50892c7f46fc5f45655269eb/examples/aoe2-de-civ/README.md","https://github.com/rehan-remade/universal-modder/blob/6a8865ae171b406f50892c7f46fc5f45655269eb/knowledge/README.md","https://github.com/rehan-remade/universal-modder/blob/6a8865ae171b406f50892c7f46fc5f45655269eb/CONTRIBUTING.md","https://github.com/rehan-remade/universal-modder/blob/6a8865ae171b406f50892c7f46fc5f45655269eb/.github/workflows/test.yml","https://github.com/rehan-remade/universal-modder/blob/6a8865ae171b406f50892c7f46fc5f45655269eb/pyproject.toml","https://github.com/rehan-remade/universal-modder/blob/6a8865ae171b406f50892c7f46fc5f45655269eb/LICENSE"],"category":"agent-workflows","description_en":"Packages agent skills, three role briefs, a Python CLI and preconfigured fal MCP settings for modding PC games the user owns. Its reverse-engineering guidance sends managed, native and data-format work to external decompilers and debuggers, and requires a round-trip check before a reverse-engineered file format is used; one worked example ships an Age of Empires II sprite writer built this way. It is a modding toolkit with agent-written field notes, not a game decompilation, and its example results remain project-reported.","description_zh":"为修改用户自有的 PC 游戏打包智能体技能、三份角色说明、Python 命令行工具及预配置的 fal MCP 设置。其逆向分析指南把托管代码、原生代码和数据格式工作交给外部反编译器与调试器，并要求逆向得到的文件格式先通过往返检查再投入使用；其中一个示例附带按此方法实现的 Age of Empires II 精灵写入器。它是附带智能体实践笔记的模组工具包，不是游戏反编译重建，示例结果仍为项目报告。","entry_url":"https://awesomerea.org/resources/universal-modder-agent-toolkit/","entry_url_zh":"https://awesomerea.org/zh/resources/universal-modder-agent-toolkit/","evidence_url":"https://github.com/rehan-remade/universal-modder/blob/6a8865ae171b406f50892c7f46fc5f45655269eb/README.md","group":"agents","id":"universal-modder-agent-toolkit","json_url":"https://awesomerea.org/resources/universal-modder-agent-toolkit/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/universal-modder-agent-toolkit/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/universal-modder-agent-toolkit/index.md","name":"Universal Modder","name_zh":"Universal Modder 游戏模组智能体工具包","record_type":"resource","relationship":"independent-agent-integration","requirements":["Package 0.2.0 ships twelve skills, three subagent role files, the um CLI and fal MCP settings for Claude Code, Codex, Gemini CLI, VS Code/Copilot, Cursor and OpenCode. Hosts need Git, Python 3.10+ and ffmpeg (uv recommended; Blender only for 3D-to-sprite rendering); Windows capture, input and launch run natively or from WSL.","Start from a game installation you own; no game files, ROMs or decompiled code are supplied, and decompiles and extracted assets stay out of the repository. Asset generation needs a fal API key or browser sign-in; ComfyUI is a local image alternative and Sprixen a separate paid API. Tools such as ILSpy, Cpp2IL, Ghidra, IDA, Cheat Engine, Frida and RenderDoc are installed separately.","The AoE2 DE .sld writer’s 0.9/255 mean error on a stock sprite, its September 2026 in-game test and a Terraria movement port’s 99.9% velocity match are author results.","CI checks the toolkit (tests, CLI help, index and a publish lint blocking game files, decompiled code and secrets). Field notes are agent-written with self-declared verification.","Rules limit work to owned games offline or on self-hosted servers and refuse injection into anti-cheat-protected online clients, cheats against other players, and DRM, anti-cheat or ownership-check bypasses. Code is MIT with fonts under the SIL OFL; generated assets follow fal and model terms, and games and tools keep theirs."],"requirements_zh":["Python 包 0.2.0 提供十二个技能、三份子智能体角色文件、um 命令行工具，以及 Claude Code、Codex、Gemini CLI、VS Code／Copilot、Cursor 与 OpenCode 连接 fal MCP 的配置。宿主需要 Git、Python 3.10+ 与 ffmpeg（建议使用 uv；仅 3D 转精灵渲染需要 Blender）；Windows 截图、输入与启动命令可在本机或通过 WSL 运行。","工作从用户自有的游戏安装开始；不提供游戏文件、ROM 或反编译代码，反编译结果与提取的素材应放在仓库之外。生成素材需要 fal API 密钥或浏览器登录；本地 ComfyUI 可替代图像生成，Sprixen 是另行付费的 API。技能中提到的 ILSpy、Cpp2IL、Ghidra、IDA、Cheat Engine、Frida 与 RenderDoc 等工具需另行安装。","AoE2 DE .sld 写入器在原版精灵上 0.9/255 的平均误差、2026 年 9 月的游戏内测试，以及 Terraria 移动规则移植 99.9% 的速度吻合度，均为作者结果。","CI 检查工具包本身（测试、命令行帮助、索引，以及阻止发布游戏文件、反编译代码和密钥的检查）。实践笔记由智能体撰写、验证情况自行声明。","项目规则将工作限定于自有游戏，且只在离线或自建服务器上进行；拒绝注入受反作弊保护的在线客户端、针对其他玩家的作弊，以及绕过 DRM、反作弊或所有权检查。代码采用 MIT，字体采用 SIL OFL；生成素材遵循 fal 及模型条款，游戏与工具适用各自条款。"],"targets":["game"],"url":"https://github.com/rehan-remade/universal-modder","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/browserbase/claude-code-plugin/blob/b399af34a1b1cc365d1e1c0089823c4fa5e10ea5/README.md","https://github.com/browserbase/claude-code-plugin/blob/b399af34a1b1cc365d1e1c0089823c4fa5e10ea5/browserbase-client.js","https://github.com/browserbase/claude-code-plugin/blob/b399af34a1b1cc365d1e1c0089823c4fa5e10ea5/index.js","https://github.com/browserbase/claude-code-plugin/blob/b399af34a1b1cc365d1e1c0089823c4fa5e10ea5/hooks/hooks.json","https://github.com/browserbase/claude-code-plugin/blob/b399af34a1b1cc365d1e1c0089823c4fa5e10ea5/scripts/session-start.sh","https://github.com/browserbase/claude-code-plugin/blob/b399af34a1b1cc365d1e1c0089823c4fa5e10ea5/package.json","https://github.com/browserbase/claude-code-plugin/blob/b399af34a1b1cc365d1e1c0089823c4fa5e10ea5/.claude-plugin/marketplace.json","https://x.com/pk_iv/status/2005694082627297735","https://x.com/pk_iv/status/2005694088038015106","https://x.com/pk_iv/status/2005694096791523692"],"category":"reconstruction-cases","description_en":"Stands in for the Claude in Chrome extension side of Claude Code’s local browser bridge and runs the requested actions in Browserbase cloud browsers. The author’s thread describes the reverse-engineered framing, a 4-byte little-endian length before each JSON tool call, and the plugin maps 17 named tools onto Stagehand/CDP operations. It is an archived interoperability shim with several placeholder tools, not recovered Anthropic code or a verified equivalent of the extension.","description_zh":"在 Claude Code 本地浏览器桥接中替代 Claude in Chrome 扩展一端，把请求的操作交给 Browserbase 云端浏览器执行。作者的帖子串描述了逆向得到的消息格式，即每条 JSON 工具调用前加 4 字节小端长度；插件则将 17 个具名工具映射为 Stagehand／CDP 操作。这是已归档的互操作适配层，部分工具仅为占位实现，并非恢复出的 Anthropic 代码，也未经验证与扩展等价。","entry_url":"https://awesomerea.org/resources/browserbase-claude-chrome-bridge-case/","entry_url_zh":"https://awesomerea.org/zh/resources/browserbase-claude-chrome-bridge-case/","evidence_url":"https://github.com/browserbase/claude-code-plugin/blob/b399af34a1b1cc365d1e1c0089823c4fa5e10ea5/forwarding-server.js","group":"cases","id":"browserbase-claude-chrome-bridge-case","json_url":"https://awesomerea.org/resources/browserbase-claude-chrome-bridge-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/browserbase-claude-chrome-bridge-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/browserbase-claude-chrome-bridge-case/index.md","name":"Browserbase plugin: re-hosting Claude in Chrome’s browser bridge","name_zh":"Browserbase 插件：将 Claude in Chrome 浏览器桥接转接到云端","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","limits","testing","license"],"requirements":["The reviewed main branch is archived, and its commits are dated 2025-12-27. A SessionStart hook launches a Node forwarding server that moves any existing claude-mcp-browser-bridge-<user> socket in the temporary directory aside and listens in its place. Messages carry a 4-byte little-endian length plus JSON; only the execute_tool method is accepted, with 17 named tool handlers and errors for anything else.","Requires Claude Code with plugin support, the Claude in Chrome extension, Node.js 18+, the Browserbase SDK and Stagehand npm packages, and a Browserbase API key and project ID. As written, the start hook looks for the extension only under the macOS Chrome profile directory and stops when it is missing, so other hosts fail that check.","Navigation, input, screenshots, page reading, form filling and JavaScript run through Stagehand on cloud sessions; console and network reads rely on the plugin’s own listeners and page-injected tracking. update_plan only echoes the submitted plan, shortcuts return an empty list or a placeholder, and image upload and GIF export are placeholders. The author’s thread counts 19 extension tools; the reviewed dispatcher names 17.","The protocol account comes from the author’s X thread, not Anthropic documentation, and no captures or comparisons against the real extension are published. package.json declares Node test scripts, but the reviewed tree has no tests directory. The undocumented local interface may change with Claude Code or extension updates.","README states MIT, but the reviewed tree has no LICENSE file and GitHub detects no license. Claude Code, the Claude in Chrome extension and Browserbase services keep their own terms, and browsed pages are processed on Browserbase infrastructure."],"requirements_zh":["所审阅的 main 分支已归档，提交日期均为 2025-12-27。SessionStart 钩子会启动 Node 转发服务器：它把临时目录中已有的 claude-mcp-browser-bridge-<用户名> 套接字移到一旁，再在原位置监听。消息由 4 字节小端长度加 JSON 组成；仅接受 execute_tool 方法，含 17 个具名工具处理器，其余请求返回错误。","需要支持插件的 Claude Code、Claude in Chrome 扩展、Node.js 18+、Browserbase SDK 与 Stagehand npm 包，以及 Browserbase API 密钥和项目 ID。按现有写法，启动钩子只在 macOS 的 Chrome 配置目录中查找扩展，找不到即停止，因此其他系统无法通过这项检查。","导航、输入、截图、页面读取、表单填写和 JavaScript 均通过 Stagehand 在云端会话中执行；控制台和网络读取依赖插件自身的监听器及注入页面的跟踪脚本。update_plan 只回显提交的计划，快捷方式工具返回空列表或占位结果，图片上传和 GIF 导出也是占位实现。作者帖子串称扩展有 19 个工具，所审阅的分发代码列出 17 个。","协议说明来自作者的 X 帖子串，而非 Anthropic 文档；未公开与真实扩展的抓包或对照结果。package.json 声明了 Node 测试脚本，但所审阅的代码树中没有 tests 目录。这一未公开的本地接口可能随 Claude Code 或扩展更新而改变。","README 声明 MIT，但所审阅代码树中没有 LICENSE 文件，GitHub 也未识别出许可证。Claude Code、Claude in Chrome 扩展及 Browserbase 服务各自保留条款，浏览的页面会在 Browserbase 基础设施上处理。"],"targets":["app","protocol"],"url":"https://github.com/browserbase/claude-code-plugin","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/macedonga/visor/blob/8caaa12df919c014c249efb71fdfa32b263f6c3e/CLAUDE.md","https://github.com/macedonga/visor/blob/8caaa12df919c014c249efb71fdfa32b263f6c3e/CONTRIBUTING.md","https://github.com/macedonga/visor/blob/8caaa12df919c014c249efb71fdfa32b263f6c3e/SECURITY.md","https://github.com/macedonga/visor/blob/8caaa12df919c014c249efb71fdfa32b263f6c3e/LICENSE","https://github.com/macedonga/visor/blob/8caaa12df919c014c249efb71fdfa32b263f6c3e/app/build.gradle.kts","https://github.com/macedonga/visor/blob/8caaa12df919c014c249efb71fdfa32b263f6c3e/.github/workflows/build.yml","https://github.com/macedonga/visor/blob/8caaa12df919c014c249efb71fdfa32b263f6c3e/.github/workflows/release.yml","https://github.com/macedonga/visor/blob/8caaa12df919c014c249efb71fdfa32b263f6c3e/core/protocol/src/main/kotlin/com/macedonga/visor/core/protocol/Framing.kt","https://github.com/macedonga/visor/blob/8caaa12df919c014c249efb71fdfa32b263f6c3e/core/protocol/src/main/kotlin/com/macedonga/visor/core/protocol/Cipher.kt","https://github.com/macedonga/visor/blob/8caaa12df919c014c249efb71fdfa32b263f6c3e/core/assistant/src/main/kotlin/com/macedonga/visor/core/assistant/Brain.kt","https://github.com/macedonga/visor/wiki/Home/7358c5a1c39a6354d2170f89133b184f7f2b82e7","https://github.com/macedonga/visor/wiki/Protocol-overview/7358c5a1c39a6354d2170f89133b184f7f2b82e7","https://github.com/macedonga/visor/wiki/Meta-login-and-ownership/7358c5a1c39a6354d2170f89133b184f7f2b82e7","https://github.com/macedonga/visor/wiki/Open-questions/7358c5a1c39a6354d2170f89133b184f7f2b82e7"],"category":"reconstruction-cases","description_en":"Implements an Android replacement for the Meta AI companion app that speaks the Ray-Ban Meta glasses’ own Bluetooth and Wi-Fi Direct protocol, imports media, exposes settings and answers “Hey Meta” with a model the user chooses. The project wiki documents the link layers, encryption, services and Meta-side ownership steps, and lists 153 open questions. Testing is on real glasses rather than test suites, so behavior beyond the stated model and firmware remains unverified.","description_zh":"实现可替代 Meta AI 配套应用的 Android 客户端：直接使用 Ray-Ban Meta 眼镜自有的蓝牙与 Wi-Fi Direct 协议，导入媒体、提供设置，并用用户选择的模型回应“Hey Meta”。项目 wiki 记录了链路分层、加密、服务及 Meta 端的所有权流程，并列出 153 个未解问题。项目以实机试用代替测试套件，因此所述型号和固件之外的行为仍未经验证。","entry_url":"https://awesomerea.org/resources/visor-ray-ban-meta-client-case/","entry_url_zh":"https://awesomerea.org/zh/resources/visor-ray-ban-meta-client-case/","evidence_url":"https://github.com/macedonga/visor/blob/8caaa12df919c014c249efb71fdfa32b263f6c3e/README.md","group":"cases","id":"visor-ray-ban-meta-client-case","json_url":"https://awesomerea.org/resources/visor-ray-ban-meta-client-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/visor-ray-ban-meta-client-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/visor-ray-ban-meta-client-case/index.md","name":"Visor: an independent Ray-Ban Meta glasses client","name_zh":"Visor：独立的 Ray-Ban Meta 眼镜客户端","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","prerequisites","testing","license"],"requirements":["Reviewed just after release v1.3.1 (2026-10-18). README targets Ray-Ban Meta (Gen 2) tested on firmware 72387580077200100; other Meta glasses are untested. It needs an Android 10+ phone, a Meta account using password or email-code login (passkeys do not work) and, for the assistant, an Anthropic or OpenAI-compatible API key. The glasses accept one session at a time, so Visor and the Meta AI app displace each other.","Setup makes Visor the glasses’ owner app through Meta’s login and ownership-receipt services, so it still depends on a Meta account and Meta servers for setup, frame style and language packs. Source builds need three client tokens from the official Meta AI app, which the repository does not include; without them the app builds but login and ownership fail. Release builds read them from CI secrets.","Building needs JDK 21 and the Android SDK with platform 37. CI builds a debug APK with Gradle, and tagged releases publish a signed APK with a SHA-256 file; README lists the release certificate fingerprint. Modules separate wire format and ciphers, transport, session, identity, media, settings and the assistant, which stands in for Meta’s server with Claude or an OpenAI-compatible model.","There are no test suites: CONTRIBUTING asks for hardware trials and wire.log excerpts for protocol changes, and CLAUDE.md says the app works on real glasses as of 2026-10-05. The wiki marks unconfirmed facts and lists open questions, including unread payloads and model-specific values; CLAUDE.md also refers to a desktop Python client snapshot that the repository does not contain.","Visor is AGPL-3.0 and states it is unaffiliated with Meta or EssilorLuxottica; Meta’s services, app tokens, firmware and trademarks keep their own terms. CONTRIBUTING forbids getting unsigned software past the glasses’ signature checks. Claude is one selectable assistant backend, and the repository’s CLAUDE.md is a contributor guide."],"requirements_zh":["审阅时间紧随 v1.3.1 发布（2026-10-18）。README 面向 Ray-Ban Meta（第二代），测试固件为 72387580077200100；其他 Meta 眼镜未经测试。需要 Android 10+ 手机、使用密码或邮箱验证码登录的 Meta 账号（不支持通行密钥），使用助手功能还需 Anthropic 或兼容 OpenAI 接口的 API 密钥。眼镜一次只接受一个会话，因此 Visor 与 Meta AI 应用会互相顶替连接。","设置流程通过 Meta 的登录与所有权凭据服务，使 Visor 成为眼镜的所有者应用，因此设置、镜框样式和语言包仍依赖 Meta 账号及 Meta 服务器。从源码构建需要来自官方 Meta AI 应用的三个客户端令牌，仓库并未包含；缺少令牌时应用可以构建，但登录和所有权步骤会失败。发布构建从 CI 密钥中读取这些令牌。","构建需要 JDK 21 和带 platform 37 的 Android SDK。CI 使用 Gradle 构建调试 APK，打标签的版本会发布签名 APK 及 SHA-256 文件；README 列出了发布证书指纹。模块分为线路格式与加密、传输、会话、身份、媒体、设置和助手；助手模块代替 Meta 服务器，改用 Claude 或兼容 OpenAI 接口的模型。","项目没有测试套件：CONTRIBUTING 要求协议改动附上实机试用说明和 wire.log 片段，CLAUDE.md 称截至 2026-10-05 应用可在实机上运行。wiki 标出未确认的事实并列出未解问题，包括尚未解读的负载和与型号相关的取值；CLAUDE.md 还提到一个桌面 Python 客户端快照，但仓库中并未包含。","Visor 采用 AGPL-3.0，并声明与 Meta 或 EssilorLuxottica 无关；Meta 的服务、应用令牌、固件和商标保留各自条款。CONTRIBUTING 禁止让未经 Meta 签名的软件绕过眼镜的签名检查。Claude 只是可选的助手后端之一，仓库中的 CLAUDE.md 是贡献者指南。"],"targets":["app","protocol"],"url":"https://github.com/macedonga/visor","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/chasem-dev/sms-pc-port/blob/a2ff4eef099b22b2af487d1b5e3ac09ffe667d31/BUILD.md","https://github.com/chasem-dev/sms-pc-port/blob/a2ff4eef099b22b2af487d1b5e3ac09ffe667d31/docs/DEVELOPMENT.md","https://github.com/chasem-dev/sms-pc-port/blob/a2ff4eef099b22b2af487d1b5e3ac09ffe667d31/LICENSE","https://github.com/chasem-dev/sms-pc-port/blob/a2ff4eef099b22b2af487d1b5e3ac09ffe667d31/.gitmodules","https://github.com/chasem-dev/sms-pc-port/blob/a2ff4eef099b22b2af487d1b5e3ac09ffe667d31/assets/progress.svg","https://github.com/chasem-dev/sms-english/blob/967436b8c623834d38a57d34923775f45eca8861/README.md","https://github.com/chasem-dev/sms-english/blob/967436b8c623834d38a57d34923775f45eca8861/PROGRESS.md","https://github.com/chasem-dev/sms-english/blob/967436b8c623834d38a57d34923775f45eca8861/config/GMSE01/README.md","https://github.com/chasem-dev/sms-english/blob/967436b8c623834d38a57d34923775f45eca8861/AGENTS.md","https://github.com/chasem-dev/sms-english/blob/967436b8c623834d38a57d34923775f45eca8861/LICENSE"],"category":"reconstruction-cases","description_en":"Builds a native PC port of Super Mario Sunshine’s North American release from a pinned matching-decompilation fork, adding a host platform layer for graphics, disc, audio, input and OS services. The fork’s README says AI was used extensively to reconstruct and match its code; the port documents scripted regression hashes and lockstep comparisons with retail captures. Functions that do not yet match can still behave differently from retail, and the game must come from the user’s own disc image.","description_zh":"以固定版本的一致性反编译分支为基础，构建 Super Mario Sunshine 北美版的原生 PC 移植，并为图形、光盘、音频、输入和系统服务提供宿主平台层。该分支的 README 称，其代码的重建与匹配大量借助 AI；移植项目记录了脚本化回归哈希，以及与原版捕获数据的逐步对照。尚未匹配的函数仍可能与原版行为不同，游戏数据须来自使用者自己的光盘镜像。","entry_url":"https://awesomerea.org/resources/sms-pc-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sms-pc-port-case/","evidence_url":"https://github.com/chasem-dev/sms-pc-port/blob/a2ff4eef099b22b2af487d1b5e3ac09ffe667d31/README.md","group":"cases","id":"sms-pc-port-case","json_url":"https://awesomerea.org/resources/sms-pc-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sms-pc-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sms-pc-port-case/index.md","name":"Super Mario Sunshine: a native PC port from an AI-assisted decompilation","name_zh":"Super Mario Sunshine：基于 AI 辅助反编译的原生 PC 移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["Targets only the North American GMSE01 Rev 0 release. README reports the 32-bit Linux and macOS builds as playable, 64-bit Linux as playable but still being tested stage by stage, and 64-bit Windows as booting under Wine with native runtime checks. macOS builds x86_64, run under Rosetta 2 on Apple Silicon, because native arm64 cannot map game memory below 4 GiB.","Requires the user’s own GMSE01 Rev 0 disc image as .iso, .gcm or Dolphin .ciso; the port reads models, textures, levels, music and movies from it at run time and ships no game data. Given the image, the build also makes a standalone executable containing the game’s files, which README says must not be shared. Optional language, texture and HD-cutscene packs are separate.","build.sh and run.sh drive CMake, Python 3, patch, SDL2 and a host compiler: Ubuntu/Debian multilib GCC for the default 32-bit Linux build, Homebrew LLVM clang targeting x86_64 on macOS, or MSYS2 MINGW64 GCC on Windows. The decomp submodule is pinned to sms-english 967436b; PC-only changes are patches applied to copies of its sources, and the separate decomp build to a matching mario.dol uses its own GameCube toolchain.","At that pin, the fork’s PROGRESS.md reports, as of 2026-09-27, 99.57% fuzzy, 72.94% byte-perfect and 33.18% source-linked code, with 12,002 of 12,904 functions matching and a byte-identical rebuilt DOL that still links extracted objects for unfinished code; its README gives slightly higher 2026-09-29 figures. The port compiles the decomp’s 588 game, JSystem and THPPlayer units, so non-matching functions can still diverge from retail. It reports scripted headless runs hashed against a baseline and compared between 32- and 64-bit builds, lockstep tracing against retail Dolphin captures and qemu-ppc checks of math routines.","The port is MIT-licensed (SoftwareAura LLC) and the decomp fork is CC0-1.0; the game and the user’s disc contents keep separate rights. AI involvement is stated by the fork’s README and agent guides, which describe Claude and Codex orchestrators."],"requirements_zh":["仅针对北美版 GMSE01 Rev 0。README 报告 32 位 Linux 与 macOS 版本可游玩，64 位 Linux 可游玩但仍在逐关测试，64 位 Windows 可在 Wine 下启动并附有原生运行检查。macOS 构建 x86_64 程序，在 Apple Silicon 上经 Rosetta 2 运行，因为原生 arm64 无法将游戏内存映射到 4 GiB 以下。","需要使用者自己的 GMSE01 Rev 0 光盘镜像，格式为 .iso、.gcm 或 Dolphin .ciso；移植在运行时从中读取模型、纹理、关卡、音乐和影片，本身不附带游戏数据。提供镜像时，构建还会生成内含游戏文件的独立可执行文件，README 说明不得分享。可选的语言包、纹理包和高清过场包需另行获取。","build.sh 与 run.sh 调用 CMake、Python 3、patch、SDL2 和宿主编译器：默认的 32 位 Linux 构建使用 Ubuntu／Debian 多架构 GCC，macOS 使用面向 x86_64 的 Homebrew LLVM clang，Windows 使用 MSYS2 MINGW64 GCC。反编译子模块固定在 sms-english 967436b；仅限 PC 的改动以补丁形式应用于其源码副本，另行构建一致 mario.dol 的反编译工程使用自己的 GameCube 工具链。","在该固定版本中，分支的 PROGRESS.md 报告截至 2026-09-27：模糊相似度 99.57%、逐字节一致代码 72.94%、由源码链接的代码 33.18%，12,904 个函数中有 12,002 个匹配；重建的 DOL 与原版逐字节一致，但未完成部分仍链接提取出的目标文件。其 README 给出 2026-09-29 略高的数字。移植编译反编译中的 588 个游戏、JSystem 和 THPPlayer 单元，因此未匹配的函数仍可能与原版不同。项目报告了按基线哈希核对、并在 32 位与 64 位构建间比较的脚本化无界面运行，与原版 Dolphin 捕获数据的逐步追踪对照，以及在 qemu-ppc 下检查数学例程。","移植项目采用 MIT 许可（SoftwareAura LLC），反编译分支采用 CC0-1.0；游戏本身及使用者光盘内容的权利另行保留。AI 参与情况来自分支 README 和智能体指南（其中描述 Claude 与 Codex 编排流程）。"],"targets":["game"],"url":"https://github.com/chasem-dev/sms-pc-port","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/zeldaret/mm/blob/bf6bd9d0d3a90fe2f8960e034fbfd328e8bdef22/Makefile","https://github.com/zeldaret/mm/blob/bf6bd9d0d3a90fe2f8960e034fbfd328e8bdef22/tools/Makefile","https://github.com/zeldaret/mm/blob/bf6bd9d0d3a90fe2f8960e034fbfd328e8bdef22/baseroms/n64-us/checksum.md5","https://github.com/zeldaret/mm/blob/bf6bd9d0d3a90fe2f8960e034fbfd328e8bdef22/.github/workflows/ci.yml","https://zelda.deco.mp/assets/csv/progress-mm-shield.json","https://github.com/Zelda64Recomp/Zelda64Recomp/blob/b65c482ed672258eb684ab94a4e8c8aa662615ee/README.md"],"category":"reconstruction-cases","description_en":"Recreates a C source base for The Legend of Zelda: Majora’s Mask from information in the game and static or dynamic analysis, then rebuilds the US Nintendo 64 ROM. The build takes assets and assembly from a user-supplied ROM and checks the output against stored MD5 checksums. The team states it will not produce a PC port; the separately curated Zelda 64: Recompiled only credits it for headers and some functions.","description_zh":"依据游戏内信息和静态或动态分析，为《塞尔达传说：姆吉拉的假面》重建 C 源码库，并重新构建美版 Nintendo 64 ROM。构建流程从使用者自备的 ROM 中取得素材和汇编，再用仓库保存的 MD5 校验输出。团队声明不会制作 PC 移植；另行收录的 Zelda 64: Recompiled 只注明借用了其头文件和部分函数。","entry_url":"https://awesomerea.org/resources/zelda-mm-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/zelda-mm-decomp-case/","evidence_url":"https://github.com/zeldaret/mm/blob/bf6bd9d0d3a90fe2f8960e034fbfd328e8bdef22/README.md","group":"cases","id":"zelda-mm-decomp-case","json_url":"https://awesomerea.org/resources/zelda-mm-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/zelda-mm-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/zelda-mm-decomp-case/index.md","name":"Majora’s Mask: matching US N64 decompilation","name_zh":"《姆吉拉的假面》：生成一致美版 N64 ROM 的反编译重建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README calls this a work-in-progress decompilation whose codebase may still change drastically, and warns that some parts of the ROM may not yet be shiftable, so modifications can be difficult. Only N64 US 1.0 is supported; the Makefile also lists a WIP N64 Japan 1.1 target with checksum comparison disabled. Majora’s Mask 3D is out of scope, and the output is an N64 ROM, not a PC executable.","Supply your own US Majora’s Mask ROM as the base ROM; .z64, .n64 and .v64 byte orders are accepted. The repository includes no game assets or assembly: the build decompresses the supplied ROM and derives files, assets and disassembled code and data from it before compiling a ROM and a compressed ROM.","The documented host is Linux, native or under WSL or a VM, with Debian or Ubuntu recommended: Git, build-essential, MIPS binutils, curl, Python 3 with pip and venv, libpng and libxml2. macOS and Docker have separate guides. The default compiler is a static recompilation of IDO 5.3 and 7.1 that the tools Makefile downloads from decompals/ido-static-recomp; GCC and NON_MATCHING builds turn the checksum comparison off.","A default build checks both ROMs against stored MD5 values and prints OK or FAILED; FAILED means a bad base ROM or non-matching code. CI builds the US version in matching mode and Japan 1.1 as non-matching, using base ROMs from the project’s build container. The project’s mutable progress badge read 100% at review while the README still says WIP.","The reviewed tree has no top-level license file and GitHub detects no license, so source reuse terms are unstated; ROM contents and derived assets keep their own rights. The README forbids contributions from anyone who has ever accessed leaked Nintendo 64 SDK, libultra or Zelda 64 source."],"requirements_zh":["README 称其为仍在进行中的反编译项目，代码库仍可能大幅变动，并提醒 ROM 的部分内容可能尚不能移动，因此修改可能较困难。目前只支持 N64 美版 1.0；Makefile 另列出进行中的 N64 日版 1.1 目标，该目标关闭了校验比较。《姆吉拉的假面 3D》不在范围内，产物是 N64 ROM，而不是 PC 可执行文件。","需自备美版《姆吉拉的假面》ROM 作为基础 ROM，可接受 .z64、.n64 和 .v64 字节序。仓库不含任何游戏素材或汇编：构建流程先解压所供 ROM，从中得到文件、素材以及反汇编的代码和数据，再编译出 ROM 和压缩版 ROM。","文档说明的宿主为 Linux（原生、WSL 或虚拟机，推荐 Debian 或 Ubuntu），需 Git、build-essential、MIPS binutils、curl、带 pip 和 venv 的 Python 3、libpng 与 libxml2；macOS 和 Docker 另有指南。默认编译器是 IDO 5.3 和 7.1 的静态重编译版本，由 tools 目录的 Makefile 从 decompals/ido-static-recomp 下载；GCC 和 NON_MATCHING 构建会关闭校验比较。","默认构建会用仓库保存的 MD5 值检查两个 ROM，输出 OK 或 FAILED；FAILED 表示基础 ROM 有误或代码不一致。CI 以一致模式构建美版、以非一致模式构建日版 1.1，基础 ROM 由项目构建容器提供。核查时项目可变的进度徽章显示 100%，README 仍标注为进行中。","所审阅代码树没有顶层许可证文件，GitHub 也未识别出许可证，因此源码的再使用条款未予说明；ROM 内容和由其得到的素材保留各自权利。README 禁止任何曾接触泄露的 Nintendo 64 SDK、libultra 或 Zelda 64 源码的人参与贡献。"],"targets":["game"],"url":"https://github.com/zeldaret/mm","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/designgears/wine-uwp/blob/1cf79d025e0c18167de803820345a1c5f82fd17d/AGENTS.md","https://github.com/designgears/wine-uwp/blob/1cf79d025e0c18167de803820345a1c5f82fd17d/docs/Plan.md","https://github.com/designgears/wine-uwp/blob/1cf79d025e0c18167de803820345a1c5f82fd17d/docs/Findings-M4.md","https://github.com/designgears/wine-uwp/blob/1cf79d025e0c18167de803820345a1c5f82fd17d/wine/README.md","https://github.com/designgears/wine-uwp/blob/1cf79d025e0c18167de803820345a1c5f82fd17d/wine/BASE.txt","https://github.com/designgears/wine-uwp/blob/1cf79d025e0c18167de803820345a1c5f82fd17d/wine/dlls/dcomp/composition.c","https://github.com/designgears/wine-uwp/blob/1cf79d025e0c18167de803820345a1c5f82fd17d/regress.sh","https://github.com/designgears/wine-uwp/blob/1cf79d025e0c18167de803820345a1c5f82fd17d/packaging/harvest/manifest.txt","https://github.com/designgears/shapr3d-linux/blob/58d91731a3cef9f9279a9f277f0f6d87e3ec7e41/README.md","https://github.com/designgears/shapr3d-linux/blob/58d91731a3cef9f9279a9f277f0f6d87e3ec7e41/.gitmodules","https://github.com/designgears/shapr3d-linux/blob/58d91731a3cef9f9279a9f277f0f6d87e3ec7e41/installer/Cargo.toml","https://x.com/DesignGears/status/2109530620321788301","https://x.com/DesignGears/status/2109532140907921698"],"category":"reconstruction-cases","description_en":"Extends Wine 11.17 so that signed MSIX Store apps, with Shapr3D as the main target, install and run on Linux without their source or symbols. About 49,000 changed lines add a DirectComposition implementation, composition swap chains and an app-model host, while Microsoft’s own XAML and app-model DLLs, harvested from a Windows 11 image on the user’s machine, run unmodified. The author says Claude did most of the reverse engineering and code; app support is uneven and checked by a project regression suite.","description_zh":"扩展 Wine 11.17，使已签名的 MSIX 商店应用（主要目标为 Shapr3D）无需源码或符号即可在 Linux 上安装运行。约 49,000 行改动新增了 DirectComposition 实现、合成交换链和应用模型宿主；微软自己的 XAML 与应用模型 DLL 则在使用者机器上从 Windows 11 镜像中提取后原样运行。作者称大部分逆向工程和代码由 Claude 完成；各应用支持程度不一，由项目回归测试检查。","entry_url":"https://awesomerea.org/resources/wine-uwp-store-apps-case/","entry_url_zh":"https://awesomerea.org/zh/resources/wine-uwp-store-apps-case/","evidence_url":"https://github.com/designgears/wine-uwp/blob/1cf79d025e0c18167de803820345a1c5f82fd17d/README.md","group":"cases","id":"wine-uwp-store-apps-case","json_url":"https://awesomerea.org/resources/wine-uwp-store-apps-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/wine-uwp-store-apps-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wine-uwp-store-apps-case/index.md","name":"wine-uwp: running packaged Windows Store apps on a patched Wine","name_zh":"wine-uwp：在修改版 Wine 上运行打包的 Windows 商店应用","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["testing","prerequisites","prerequisites","testing","license"],"requirements":["README’s app table reports Shapr3D sketching, modelling, menus, cloud sync, sign-in and STL/PDF export; Solitaire playable; Media Player playing audio from its own UI; Calculator fully working; Feedback Hub interactive; and Camera only reaching its own error page. Shapr3D for Linux (58d9173) packages this same pinned wine-uwp commit as a beta AppImage and Flatpak; it is unofficial and not affiliated with Shapr3D.","Needs the user’s own app package (.msix or .msixbundle, or Shapr3D’s .appinstaller, from which setup downloads about 1.8 GB) and Windows components extracted from Microsoft’s free Windows 11 evaluation ISO or another Windows 11 image. Neither the repositories nor the release packages contain them, and a commit hook refuses Windows binaries. Shapr3D also needs an account and a browser sign-in.","Building copies the vendored wine/ files over the Wine 11.17 source, then runs autoreconf, configure with --enable-archs=x86_64 and make; the WinRT stand-in shims build with clang-cl and lld-link against Windows SDK headers fetched by xwin. Shapr3D for Linux needs 64-bit Linux with glibc 2.38+, working Vulkan drivers and about 11 GB free during setup, and its releases build with flatpak-builder on the freedesktop 25.08 SDK.","regress.sh requires Calculator to stay pixel-identical to a committed baseline and other apps to come up on a private Xvfb display; release.sh smoke-tests that an empty setup reaches Shapr3D’s first screen. The Findings logs record failed approaches as well as fixes. These checks are project-reported.","Neither repository has a top-level license file, and GitHub detects none. The vendored Wine files carry LGPL-2.1-or-later headers and the setup app’s Cargo manifest declares the same; the shims and investigation tools state no license. Harvested Microsoft components and Store apps keep their own terms, and the plan notes that a distributable product would need clean-room replacements for them. The author’s X posts disclose heavy Claude assistance."],"requirements_zh":["README 的应用列表报告：Shapr3D 的草图、建模、菜单、云同步、登录及 STL／PDF 导出可用；Solitaire 可游玩；Media Player 能从自身界面播放音频；Calculator 完全可用；Feedback Hub 可交互；Camera 只能进入它自己的错误页面。Shapr3D for Linux（58d9173）将同一固定版本的 wine-uwp 打包为测试版 AppImage 和 Flatpak；它是非官方项目，与 Shapr3D 无关。","需要使用者自己的应用包（.msix 或 .msixbundle，或 Shapr3D 的 .appinstaller，安装程序据此下载约 1.8 GB），以及从微软免费的 Windows 11 评估版 ISO 或其他 Windows 11 镜像中提取的 Windows 组件。仓库和发布包均不含这些内容，提交钩子会拒绝 Windows 二进制文件。Shapr3D 还需要账号并通过浏览器登录。","构建时把仓库内的 wine/ 文件复制到 Wine 11.17 源码之上，再运行 autoreconf、带 --enable-archs=x86_64 的 configure 和 make；WinRT 替身组件使用 clang-cl 与 lld-link，针对 xwin 获取的 Windows SDK 头文件构建。Shapr3D for Linux 需要 glibc 2.38+ 的 64 位 Linux、可用的 Vulkan 驱动，安装期间约需 11 GB 空闲空间；其发布包用 flatpak-builder 在 freedesktop 25.08 SDK 中构建。","regress.sh 要求 Calculator 与仓库中保存的基线逐像素一致，并要求其他应用能在私有 Xvfb 显示上启动；release.sh 的冒烟测试检查全新安装能否进入 Shapr3D 的首个界面。Findings 日志既记录修复，也记录失败的尝试。这些检查均为项目自报。","两个仓库都没有顶层许可证文件，GitHub 也未识别出许可证。仓库内的 Wine 文件带有 LGPL-2.1-or-later 声明，安装程序的 Cargo 清单也声明相同许可；替身组件和调查工具未声明许可证。提取的微软组件和商店应用各自保留条款，项目计划也指出，可分发的产品需要以净室方式替换这些组件。作者在 X 帖子中披露大量借助 Claude。"],"targets":["app"],"url":"https://github.com/designgears/wine-uwp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/mochizuki0323/DLSSNR-AMD/blob/ab00d2b23584de0f42ac91eca4d7d2d2fad11465/docs/ARCHITECTURE.md","https://github.com/mochizuki0323/DLSSNR-AMD/blob/ab00d2b23584de0f42ac91eca4d7d2d2fad11465/docs/ngx-verification/310.9.16/NGX-VERIFICATION.md","https://github.com/mochizuki0323/DLSSNR-AMD/blob/ab00d2b23584de0f42ac91eca4d7d2d2fad11465/docs/ngx-verification/310.8.0/NGX-VERIFICATION.md","https://github.com/mochizuki0323/DLSSNR-AMD/blob/ab00d2b23584de0f42ac91eca4d7d2d2fad11465/THIRD_PARTY.md","https://github.com/mochizuki0323/DLSSNR-AMD/blob/ab00d2b23584de0f42ac91eca4d7d2d2fad11465/CLAUDE.md","https://github.com/mochizuki0323/DLSSNR-AMD/blob/ab00d2b23584de0f42ac91eca4d7d2d2fad11465/LICENSE"],"category":"reconstruction-cases","description_en":"Reimplements the neural-rendering network of NVIDIA’s DLSS 5 library as Vulkan compute shaders for AMD RX 9000 (RDNA4) cards and supplies it to games through an NGX-compatible core and ReShade or Vulkan-layer routes. The weights are not distributed: installers extract them, hash-checked, from the user’s own nvngx_dlssnr.dll 310.9.16 or 310.8.0. The project compares its output with NVIDIA’s DLL on an RTX 5090 and reports close, not bit-identical, pictures.","description_zh":"将 NVIDIA DLSS 5 库中的神经渲染网络重新实现为面向 AMD RX 9000（RDNA4）显卡的 Vulkan 计算着色器，并通过兼容 NGX 的核心模块以及 ReShade 或 Vulkan 层等途径提供给游戏。项目不分发权重：安装程序从使用者自己的 nvngx_dlssnr.dll 310.9.16 或 310.8.0 中提取权重并核对哈希。项目将输出与 NVIDIA DLL 在 RTX 5090 上的结果对比，报告画面接近但并非逐位一致。","entry_url":"https://awesomerea.org/resources/dlssnr-amd-neural-rendering-case/","entry_url_zh":"https://awesomerea.org/zh/resources/dlssnr-amd-neural-rendering-case/","evidence_url":"https://github.com/mochizuki0323/DLSSNR-AMD/blob/ab00d2b23584de0f42ac91eca4d7d2d2fad11465/README.md","group":"cases","id":"dlssnr-amd-neural-rendering-case","json_url":"https://awesomerea.org/resources/dlssnr-amd-neural-rendering-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/dlssnr-amd-neural-rendering-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dlssnr-amd-neural-rendering-case/index.md","name":"DLSSNR-AMD: reimplementing DLSS 5 neural rendering for RDNA4","name_zh":"DLSSNR-AMD：为 RDNA4 重新实现 DLSS 5 神经渲染","reconstruction_method":"other","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed 0.0.x main targets RX 9000 cards because the network needs RDNA4 FP8 matrix instructions, reached through VK_KHR_cooperative_matrix; README says it was tested only on an RX 9070 XT. Linux under Steam/Proton with Mesa 26.2+ is the main version; Windows is an experimental preview tested with AMD Software 26.9.2, slower by default and closer to Linux with precompiled ACO machine code. OpenGL games are unsupported, and README warns against online games with anti-cheat.","Requires the user’s own nvngx_dlssnr.dll, version 310.9.16 (both models) or 310.8.0 (the old model only); other versions are refused, and a model file is written only when every extracted entry matches a known hash. README says packages containing the model must not be shared. The optional int4-mixed network derives its weights at install from the user’s model and project calibration tables, which THIRD_PARTY.md says hold no weight values.","The documented build runs on Ubuntu 24.04 with git, curl, Python 3, CMake, Ninja, MinGW-w64 and multilib g++; fetch_deps.sh pins third-party components, including glslang 16.5.0 for reproducible SPIR-V, and the Windows DLLs are cross-compiled. Games reach the network through an NGX core loaded by OptiScaler-NR, for DirectX 11/12 titles with an upscaler option, or through ReShade-based routes that estimate motion from the picture.","For the 310.9.16 model, the verification notes report single-frame PSNR of 49.15–50.59 dB and SSIM of about 0.997 against NVIDIA’s unmodified DLL on an RTX 5090, plus short moving sequences, from one Tomb Raider (2013) frame and its downscales; the 310.8.0 comparison reports 45.56–49.06 dB. These are project measurements on one AMD card.","MIT covers the repository’s code; third-party components keep their own licenses, including GPL-3.0 OptiScaler-NR shipped as released. NVIDIA’s DLL and weights remain NVIDIA’s, and the project states it is not affiliated with NVIDIA or AMD. The repository does not describe how the network structure was recovered; its CLAUDE.md addresses coding assistants."],"requirements_zh":["所审阅的 0.0.x 版 main 分支面向 RX 9000 显卡，因为网络需要通过 VK_KHR_cooperative_matrix 调用 RDNA4 的 FP8 矩阵指令；README 称仅在 RX 9070 XT 上测试。主版本运行于 Steam／Proton 下的 Linux，需要 Mesa 26.2+；Windows 为实验性预览版，测试驱动为 AMD Software 26.9.2，默认较慢，使用预编译的 ACO 机器码后接近 Linux。不支持 OpenGL 游戏，README 还警告不要在带反作弊的在线游戏中使用。","需要使用者自己的 nvngx_dlssnr.dll：310.9.16 版（含两个模型）或 310.8.0 版（仅旧模型）；其他版本会被拒绝，只有当每个提取条目都与已知哈希一致时才会写出模型文件。README 说明不得分享包含模型的软件包。可选的 int4 混合网络在安装时由使用者的模型和项目校准表生成权重，THIRD_PARTY.md 称这些表不含权重数值。","文档说明的构建环境为 Ubuntu 24.04，需要 git、curl、Python 3、CMake、Ninja、MinGW-w64 和 multilib g++；fetch_deps.sh 固定第三方组件版本，其中 glslang 16.5.0 用于生成可复现的 SPIR-V，Windows DLL 通过交叉编译生成。游戏可经由 OptiScaler-NR 加载的 NGX 核心模块接入网络（适用于带超分辨率选项的 DirectX 11／12 游戏），也可经由从画面估计运动的 ReShade 途径接入。","对于 310.9.16 模型，验证说明报告：以一帧 Tomb Raider (2013) 画面及其缩小版本为输入，与在 RTX 5090 上运行的未修改 NVIDIA DLL 相比，单帧 PSNR 为 49.15–50.59 dB，SSIM 约 0.997，并比较了短运动序列；310.8.0 的对比结果为 45.56–49.06 dB。这些是项目在单张 AMD 显卡上的测量。","仓库代码采用 MIT 许可；第三方组件保留各自许可，其中按原样附带的 OptiScaler-NR 为 GPL-3.0。NVIDIA 的 DLL 和权重仍归 NVIDIA 所有，项目声明与 NVIDIA 或 AMD 无关。仓库未说明网络结构如何恢复；其 CLAUDE.md 面向编码助手。"],"targets":["binary","game"],"url":"https://github.com/mochizuki0323/DLSSNR-AMD","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/zeldaret/botw/blob/e78c02499d0f108ae9c00158198289764c5980fe/tools/setup.py","https://github.com/zeldaret/botw/blob/e78c02499d0f108ae9c00158198289764c5980fe/CMakeLists.txt","https://github.com/zeldaret/botw/blob/e78c02499d0f108ae9c00158198289764c5980fe/.gitmodules","https://github.com/zeldaret/botw/blob/e78c02499d0f108ae9c00158198289764c5980fe/tools/config.toml","https://github.com/zeldaret/botw/blob/e78c02499d0f108ae9c00158198289764c5980fe/data/uking_functions.csv","https://github.com/zeldaret/botw/blob/e78c02499d0f108ae9c00158198289764c5980fe/AGENTS.md","https://github.com/open-ead/botw-decomp-www/blob/bafa2192811908bdba7c558dca0e1584900d9866/docs/about.mdx","https://github.com/open-ead/botw-decomp-www/blob/bafa2192811908bdba7c558dca0e1584900d9866/docs/contribute/installation.mdx","https://github.com/open-ead/botw-decomp-www/blob/bafa2192811908bdba7c558dca0e1584900d9866/docs/contribute/how-to-decompile.mdx","https://github.com/open-ead/nx-decomp-tools/blob/e0eae2f7f403befec6b60cb615f6680a6937d0c9/viking/src/functions.rs","https://botw.link/progress"],"category":"reconstruction-cases","description_en":"Reimplements part of Breath of the Wild’s Switch v1.5.0 main executable in C++ and checks each function against the original machine code. The project calls itself a hybrid decompilation/reimplementation: it contains no assets, its ELF holds only reimplemented functions and cannot run the game, and porting is an explicit non-goal.","description_zh":"以 C++ 重新实现《塞尔达传说 旷野之息》Switch v1.5.0 主程序的部分代码，并逐个函数与原始机器码比对。项目自称是反编译与重新实现的混合体：不含游戏素材，生成的 ELF 仅包含已重新实现的函数、无法运行游戏，移植到其他平台也明确不是目标。","entry_url":"https://awesomerea.org/resources/botw-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/botw-decomp-case/","evidence_url":"https://github.com/zeldaret/botw/blob/e78c02499d0f108ae9c00158198289764c5980fe/README.md","group":"cases","id":"botw-decomp-case","json_url":"https://awesomerea.org/resources/botw-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/botw-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/botw-decomp-case/index.md","name":"Breath of the Wild: per-function matching decompilation of the Switch executable","name_zh":"《旷野之息》：Switch 主程序的逐函数一致性反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README calls this an experimental work-in-progress decompilation of Switch v1.5.0. The About page scopes it to the main executable (game code and most statically linked libraries), excluding RomFS assets, dynamically linked SDK libraries, libcurl, NEX and most of Havok. Functions are matched individually rather than placed at original addresses, so this is not a whole-executable matching build, a playable game or a port.","Setup needs the user’s own main NSO executable from the Switch release. The pinned setup script verifies its hash, uses 1.5.0 directly and converts listed 1.6.0 or 1.9.0 executables to 1.5.0 with a project-hosted patch; RomFS and other game content are not used. The About page says the project is useless to anyone who does not own the game.","The installation guide assumes Linux (native or WSL) or macOS and lists Python 3, Ninja, CMake, ccache, xdelta3, Clang and a Rust toolchain; the pinned CMakeLists requires CMake 3.30. Setup fetches Clang 4.0.1 for game code and installs tools/check. Submodules supply sead, agl, EventFlow, NintendoSDK headers and the shared nx-decomp-tools; the decompiling guide works from Hex-Rays or Ghidra output.","tools/check diffs each listed function against the original executable, and data/uking_functions.csv records its status. At the pinned commit that list marks 32,079 of 113,490 functions matching, 514 non-matching, 7,601 work in progress, 6,270 library and 67,026 not decompiled; the mutable botw.link badges showed 17.493% by size and 30.398% by function on review.","The pinned tree has no root license file and GitHub detects none, so no reuse license is stated; submodules and Nintendo content keep their own terms, and the About page calls the work a legal gray zone. AGENTS.md sets disclosure and human-review rules for AI-assisted contributions."],"requirements_zh":["README 称其为 Switch v1.5.0 的实验性、进行中的反编译。About 页面将范围限定为主程序（游戏代码及大部分静态链接库），不包括 RomFS 素材、动态链接的 SDK 库、libcurl、NEX 及 Havok 的大部分代码。函数逐个匹配，不放回原始地址，因此这不是整个可执行文件一致的构建，也不是可游玩的游戏或移植。","设置时需要使用者自己的 Switch 版 main NSO 可执行文件。固定版本的安装脚本会校验其哈希：1.5.0 直接使用，列明的 1.6.0 或 1.9.0 可执行文件则借助项目托管的补丁转换为 1.5.0；不使用 RomFS 或其他游戏内容。About 页面指出，本项目对未拥有该游戏的人毫无用处。","安装指南假定使用 Linux（原生或 WSL）或 macOS，列出 Python 3、Ninja、CMake、ccache、xdelta3、Clang 和 Rust 工具链；固定版本的 CMakeLists 要求 CMake 3.30。安装脚本为游戏代码获取 Clang 4.0.1，并安装 tools/check。子模块提供 sead、agl、EventFlow、NintendoSDK 头文件及共用的 nx-decomp-tools；反编译指南以 Hex-Rays 或 Ghidra 的输出为起点。","tools/check 将每个列出的函数与原可执行文件逐一比对，data/uking_functions.csv 记录各函数状态。在固定提交中，该列表的 113,490 个函数里，32,079 个标为一致，514 个不一致，7,601 个进行中，6,270 个为库函数，67,026 个尚未反编译；审阅时可变的 botw.link 徽章显示按大小计 17.493%、按函数数计 30.398%。","固定版本的仓库根目录没有许可证文件，GitHub 也未识别出许可证，因此未声明复用许可；子模块和任天堂内容各有其条款，About 页面也称这项工作处于法律灰色地带。AGENTS.md 为 AI 辅助贡献规定了披露和人工审核要求。"],"targets":["game"],"url":"https://github.com/zeldaret/botw","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/zeldaret/ss/blob/d3d8e3cbf3d353b2231f06690965cac5366e28a1/configure.py","https://github.com/zeldaret/ss/blob/d3d8e3cbf3d353b2231f06690965cac5366e28a1/tools/project.py","https://github.com/zeldaret/ss/blob/d3d8e3cbf3d353b2231f06690965cac5366e28a1/config/SOUE01/config.yml","https://github.com/zeldaret/ss/blob/d3d8e3cbf3d353b2231f06690965cac5366e28a1/config/SOUE01/build.sha1","https://github.com/zeldaret/ss/blob/d3d8e3cbf3d353b2231f06690965cac5366e28a1/LICENSE","https://github.com/zeldaret/ss/blob/d3d8e3cbf3d353b2231f06690965cac5366e28a1/.github/workflows/build.yml","https://decomp.dev/zeldaret/ss","https://web.archive.org/web/20261020041301/https://decomp.dev/zeldaret/ss/SOUE01/d3d8e3cbf3d353b2231f06690965cac5366e28a1.json"],"category":"reconstruction-cases","description_en":"Reconstructs C++ source for The Legend of Zelda: Skyward Sword’s Wii main.dol and REL modules, starting from the user’s NTSC-U 1.0 (SOUE01) disc files. Objects marked matching are compiled from source and linked with objects split from the original, and the result is checked against SHA-1 hashes; the repository ships no assets or assembly and is not a port.","description_zh":"以使用者自备的 NTSC-U 1.0（SOUE01）光盘文件为起点，为《塞尔达传说 天空之剑》Wii 版的 main.dol 和 REL 模块重建 C++ 源码。标为一致的对象由源码编译，再与从原文件拆分出的其余对象链接，并以 SHA-1 哈希校验结果；仓库不含素材或汇编，也不是移植。","entry_url":"https://awesomerea.org/resources/skyward-sword-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/skyward-sword-decomp-case/","evidence_url":"https://github.com/zeldaret/ss/blob/d3d8e3cbf3d353b2231f06690965cac5366e28a1/README.md","group":"cases","id":"skyward-sword-decomp-case","json_url":"https://awesomerea.org/resources/skyward-sword-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/skyward-sword-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/skyward-sword-decomp-case/index.md","name":"Skyward Sword: Wii decompilation with hash-checked relinking","name_zh":"《天空之剑》：以哈希校验重新链接的 Wii 版反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes a work-in-progress Wii decompilation whose only supported version is SOUE01 (NTSC-U 1.0); configure.py also lists SOUP01, but the pinned tree has configuration only for SOUE01. The output is a rebuilt main.dol and REL set for the Wii, not a PC executable or port.","Building needs the user’s own SOUE01 game: README names sys/main.dol and files/rels.arc from its data partition as the only required files. The repository contains no game assets or assembly; decomp-toolkit splits the user’s files into objects locally, using the input hash and split tables in config/SOUE01.","Builds run natively on Windows with Python and ninja, or on Linux/macOS with ninja and the automatically downloaded wibo wrapper. configure.py pins decomp-toolkit v1.7.1, objdiff v3.4.1, binutils 2.42-1 and a 20250812 compiler bundle, selecting Metrowerks Wii/1.5 for most code and Wii/1.3 for most NW4R code; objdiff compares individual objects during development.","The default ninja target links source-built objects only for units marked Matching (493 in configure.py; 536 remain NonMatching) and uses the original extracted object for the rest, then checks main.dol and 636 RELs against build.sha1. A passing check shows output identity. decomp.dev’s report for the pinned commit lists 27.89% of code bytes and 33,940 of 76,968 functions matched; CI uses a private container holding game files.","The repository carries CC0-1.0; that dedication does not cover Nintendo’s game, its files or the downloaded compilers."],"requirements_zh":["README 称其为进行中的 Wii 版反编译，目前唯一支持的版本是 SOUE01（NTSC-U 1.0）；configure.py 还列出 SOUP01，但固定版本中只有 SOUE01 的配置。产物是 Wii 用的重建 main.dol 和 REL 组，不是 PC 可执行文件或移植。","构建需要使用者自己的 SOUE01 游戏：README 指明只需其数据分区中的 sys/main.dol 和 files/rels.arc。仓库不含游戏素材或汇编；decomp-toolkit 依据 config/SOUE01 中的输入哈希和拆分表，在本地将使用者的文件拆分为对象。","在 Windows 上可直接用 Python 与 ninja 构建；Linux／macOS 需 ninja，并会自动下载 wibo 包装器。configure.py 固定 decomp-toolkit v1.7.1、objdiff v3.4.1、binutils 2.42-1 及 20250812 编译器包，大部分代码选用 Metrowerks Wii/1.5，大部分 NW4R 代码选用 Wii/1.3；开发时用 objdiff 逐个对象比对。","默认 ninja 目标只对标为 Matching 的单元（configure.py 中有 493 个，另有 536 个仍为 NonMatching）链接由源码编译的对象，其余单元使用从原文件提取的对象，再按 build.sha1 校验 main.dol 和 636 个 REL。校验通过表示输出一致。decomp.dev 针对该固定提交的报告显示，27.89% 的代码字节及 76,968 个函数中的 33,940 个已匹配；CI 使用存放游戏文件的私有容器。","仓库采用 CC0-1.0；该声明不涵盖任天堂的游戏及其文件，也不涵盖下载的编译器。"],"targets":["game"],"url":"https://github.com/zeldaret/ss","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/2ship2harkinian/2ship2harkinian/blob/f1dda4c28cb9ed7cc80d8c78337ee31a8d2c7d0e/docs/BUILDING.md","https://github.com/2ship2harkinian/2ship2harkinian/blob/f1dda4c28cb9ed7cc80d8c78337ee31a8d2c7d0e/docs/supportedHashes.json","https://github.com/2ship2harkinian/2ship2harkinian/blob/f1dda4c28cb9ed7cc80d8c78337ee31a8d2c7d0e/decomp_diff.py","https://github.com/2ship2harkinian/2ship2harkinian/blob/f1dda4c28cb9ed7cc80d8c78337ee31a8d2c7d0e/.gitmodules","https://github.com/2ship2harkinian/2ship2harkinian/blob/f1dda4c28cb9ed7cc80d8c78337ee31a8d2c7d0e/LICENSE","https://github.com/2ship2harkinian/2ship2harkinian/releases/tag/5.0.1","https://github.com/Kenix3/libultraship/blob/7f9b86a593c526fc42261d7fe197100cecf57178/README.md","https://github.com/Kenix3/libultraship/blob/7f9b86a593c526fc42261d7fe197100cecf57178/LICENSE"],"category":"reconstruction-cases","description_en":"Builds native Windows, Linux and macOS versions of The Legend of Zelda: Majora’s Mask from an adapted copy of the zeldaret/mm decompilation, with libultraship reimplementing N64 SDK functions. Game data comes from a user-supplied ROM and is packed into an archive that custom asset packs can override. It targets a playable PC port with enhancements, not a byte-identical ROM.","description_zh":"以改编自 zeldaret/mm 反编译的源码为基础，构建《塞尔达传说：姆吉拉的假面》的原生 Windows、Linux 和 macOS 版本，并由 libultraship 重新实现 N64 SDK 函数。游戏数据来自使用者自备的 ROM，打包为可被自定义素材包覆盖的存档文件。它面向带增强功能的可玩 PC 移植，而不是逐字节一致的 ROM。","entry_url":"https://awesomerea.org/resources/2ship2harkinian-mm-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/2ship2harkinian-mm-port-case/","evidence_url":"https://github.com/2ship2harkinian/2ship2harkinian/blob/f1dda4c28cb9ed7cc80d8c78337ee31a8d2c7d0e/README.md","group":"cases","id":"2ship2harkinian-mm-port-case","json_url":"https://awesomerea.org/resources/2ship2harkinian-mm-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/2ship2harkinian-mm-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/2ship2harkinian-mm-port-case/index.md","name":"2 Ship 2 Harkinian: a native Majora’s Mask port built on the decompilation","name_zh":"2 Ship 2 Harkinian：基于反编译的《姆吉拉的假面》原生移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed develop commit follows release 5.0.1 (2026-08-25), published as Windows, Linux and macOS archives; nightly CI builds are for playtesting and may have bugs and crashes. The repository’s decomp_diff.py describes its game sources as changed decompilation code compared with the official zeldaret/mm repository. Rendering uses DirectX 11, OpenGL or Metal.","No copyrighted assets are included: supply a supported copy of Majora’s Mask. The docs list SHA-1 hashes for NTSC-U 1.0 and NTSC-U GC versions. Built-in extraction turns the supplied game into an mm.o2r archive; custom .o2r or .otr packs go in a mods folder, and the README notes that fast64 does not fully support MM.","Source builds need the libultraship, OTRExporter and ZAPDTR submodules plus CMake. Windows uses Visual Studio 2022 with the v143 toolset, Python 3 and at least 8 GB of RAM; the Linux lists include GCC or Clang, Ninja, SDL2, libzip, spdlog, tinyxml2 and Opus/Vorbis libraries; macOS needs Xcode tools with SDL2, libpng, GLEW, Ninja, CMake, nlohmann-json and libzip.","The README and build guide report no matching, checksum or fidelity checks for the port; the release notes list tweaks and bug fixes. Enhancement and randomizer code changes behavior relative to the original game.","The repository is CC0 1.0, and the libultraship submodule is MIT; game content from the user’s copy keeps its own rights, and the README says the project does not condone piracy."],"requirements_zh":["所审阅的 develop 提交位于 5.0.1 版（2026-08-25）之后，该版本提供 Windows、Linux 和 macOS 压缩包；CI 每夜构建仅供试玩，可能存在缺陷和崩溃。仓库中的 decomp_diff.py 将其游戏源码描述为相对官方 zeldaret/mm 仓库有所修改的反编译代码。渲染可使用 DirectX 11、OpenGL 或 Metal。","仓库不含受版权保护的素材：需自备受支持的《姆吉拉的假面》副本。文档列出 NTSC-U 1.0 与 NTSC-U GC 版本的 SHA-1 哈希。内置提取功能会将所供游戏转换为 mm.o2r 存档；自定义 .o2r 或 .otr 素材包放入 mods 文件夹，README 提醒 fast64 尚未完全支持 MM。","源码构建需要 libultraship、OTRExporter 和 ZAPDTR 子模块以及 CMake。Windows 使用带 v143 工具集的 Visual Studio 2022、Python 3，并至少需要 8 GB 内存；Linux 依赖清单包括 GCC 或 Clang、Ninja、SDL2、libzip、spdlog、tinyxml2 以及 Opus/Vorbis 库；macOS 需要 Xcode 工具及 SDL2、libpng、GLEW、Ninja、CMake、nlohmann-json 和 libzip。","README 和构建指南没有报告针对移植版的一致性、校验或保真度检查；发布说明列出的是调整和缺陷修复。增强功能和随机化代码会改变相对原版游戏的行为。","仓库采用 CC0 1.0，libultraship 子模块采用 MIT；来自使用者副本的游戏内容保留各自权利，README 表示项目不纵容盗版。"],"targets":["game"],"url":"https://github.com/2ship2harkinian/2ship2harkinian","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/HarbourMasters/Shipwright/blob/dd702b0679f2240209763d00277e7343ee1424b9/docs/BUILDING.md","https://github.com/HarbourMasters/Shipwright/blob/dd702b0679f2240209763d00277e7343ee1424b9/docs/supportedHashes.json","https://github.com/HarbourMasters/Shipwright/blob/dd702b0679f2240209763d00277e7343ee1424b9/CMakeLists.txt","https://github.com/HarbourMasters/Shipwright/blob/dd702b0679f2240209763d00277e7343ee1424b9/.gitmodules","https://github.com/HarbourMasters/Shipwright/blob/dd702b0679f2240209763d00277e7343ee1424b9/soh/.gitrepo","https://github.com/HarbourMasters/Shipwright/blob/dd702b0679f2240209763d00277e7343ee1424b9/docs/CREDITS.md","https://github.com/HarbourMasters/Shipwright/blob/dd702b0679f2240209763d00277e7343ee1424b9/.github/workflows/generate-builds.yml","https://github.com/HarbourMasters/Shipwright/blob/dd702b0679f2240209763d00277e7343ee1424b9/soh/soh/Enhancements/randomizer/3drando/LICENSE.md"],"category":"reconstruction-cases","description_en":"Builds Ocarina of Time as a native PC application from the OoT decompilation’s source, with libultraship standing in for the N64 libultra SDK and DirectX 11, OpenGL or Metal rendering. No game assets are shipped: they are converted from the user’s supported ROM into an .o2r archive, and the port adds save states, alternate and custom assets and other enhancements.","description_zh":"以《时之笛》反编译项目的源码为基础，将游戏构建为原生 PC 程序，用 libultraship 替代 N64 的 libultra SDK，并以 DirectX 11、OpenGL 或 Metal 渲染。不随附游戏素材，而是从使用者自备的受支持 ROM 转换生成 .o2r 归档；移植版还加入了即时存档、替换与自定义素材等增强功能。","entry_url":"https://awesomerea.org/resources/ship-of-harkinian-oot-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/ship-of-harkinian-oot-port-case/","evidence_url":"https://github.com/HarbourMasters/Shipwright/blob/dd702b0679f2240209763d00277e7343ee1424b9/README.md","group":"cases","id":"ship-of-harkinian-oot-port-case","json_url":"https://awesomerea.org/resources/ship-of-harkinian-oot-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/ship-of-harkinian-oot-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ship-of-harkinian-oot-port-case/index.md","name":"Ship of Harkinian: a native Ocarina of Time port built on the decompilation","name_zh":"Ship of Harkinian：基于反编译源码的《时之笛》原生移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README presents Ship of Harkinian as built on libultraship and dependent on source from the OoT decompilation project; the soh/src tree carries that decomp-derived game code. The output is a modified native port (CMake project version 9.3.0) with added features, not a matching ROM build or a byte-for-byte reconstruction.","Play requires a legally acquired, supported Ocarina of Time ROM; docs/supportedHashes.json lists 19 SHA-1 entries covering PAL, NTSC (US/JP), GameCube, Master Quest and debug variants. Copyrighted assets are not included and are converted from that ROM into oot.o2r or oot-mq.o2r; prebuilt releases still need the ROM.","README documents Windows, Linux (AppImage) and macOS releases with DirectX 11, OpenGL or Metal; CMake also has Nintendo Switch and CafeOS (Wii U) branches. Source builds need CMake 3.26+, Python 3, Git and the libultraship and Torch submodules, plus Visual Studio 2022 (v143) on Windows or the listed distribution packages and minimum GCC/Clang versions on Linux.","The reviewed CI workflow builds Windows, macOS and Linux packages and generates soh.o2r; it runs no gameplay or fidelity comparison against the original game.","The pinned tree has no root license file and GitHub detects none; the randomizer’s 3drando component carries its own license, the submodules are separate repositories and Nintendo content keeps its own rights. README says the project does not condone piracy."],"requirements_zh":["README 介绍 Ship of Harkinian 以 libultraship 为基础，并依赖《时之笛》反编译项目提供的源码；soh/src 目录即为这部分源自反编译的游戏代码。产物是加入新功能的修改版原生移植（CMake 项目版本 9.3.0），不是一致性 ROM 构建，也不是逐字节重建。","游玩需要合法取得且受支持的《时之笛》ROM；docs/supportedHashes.json 列出 19 条 SHA-1 记录，涵盖 PAL、NTSC（美版／日版）、GameCube、Master Quest 及调试版。仓库不含受版权保护的素材，素材由该 ROM 转换为 oot.o2r 或 oot-mq.o2r；使用预构建版本同样需要 ROM。","README 说明提供 Windows、Linux（AppImage）和 macOS 版本，渲染可选 DirectX 11、OpenGL 或 Metal；CMake 中还有 Nintendo Switch 与 CafeOS（Wii U）分支。从源码构建需 CMake 3.26+、Python 3、Git 以及 libultraship 和 Torch 子模块；Windows 另需 Visual Studio 2022（v143），Linux 需列明的发行版软件包及最低 GCC／Clang 版本。","所审 CI 工作流构建 Windows、macOS 和 Linux 软件包并生成 soh.o2r，不与原版游戏进行玩法或保真度比对。","固定版本的仓库根目录没有许可证文件，GitHub 也未识别出许可证；随机器中的 3drando 组件附有自身的许可证，子模块为独立仓库，任天堂内容仍保有其权利。README 声明项目不支持盗版。"],"targets":["game"],"url":"https://github.com/HarbourMasters/Shipwright","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/zeldaret/tmc/blob/6fb6dfb4a7efbe24d0fd1dda5097af6131faacde/INSTALL.md","https://github.com/zeldaret/tmc/blob/6fb6dfb4a7efbe24d0fd1dda5097af6131faacde/Makefile","https://github.com/zeldaret/tmc/blob/6fb6dfb4a7efbe24d0fd1dda5097af6131faacde/GBA.mk","https://github.com/zeldaret/tmc/blob/6fb6dfb4a7efbe24d0fd1dda5097af6131faacde/tmc.sha1","https://github.com/zeldaret/tmc/blob/6fb6dfb4a7efbe24d0fd1dda5097af6131faacde/Jenkinsfile","https://github.com/zeldaret/tmc/blob/6fb6dfb4a7efbe24d0fd1dda5097af6131faacde/progress.py","https://zelda.deco.mp/assets/csv/progress-tmc-matching.csv"],"category":"reconstruction-cases","description_en":"Recreates a C source base for The Legend of Zelda: The Minish Cap from information in the game and static or dynamic analysis, building five Game Boy Advance ROMs: USA, EU, JP and two demos. Each version takes its assets from a user-supplied original ROM, and normal builds check the output’s SHA-1 hash. The project remains a work in progress, and some parts of the ROM may not yet be shiftable.","description_zh":"依据游戏内信息和静态或动态分析，为《塞尔达传说：缩小帽》重建 C 源码库，可构建美版、欧版、日版及两个演示版共五个 Game Boy Advance ROM。每个版本的素材都来自使用者自备的原始 ROM，常规构建会核对产物的 SHA-1 哈希。项目仍在进行中，ROM 的部分内容可能尚不能移动。","entry_url":"https://awesomerea.org/resources/zelda-tmc-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/zelda-tmc-decomp-case/","evidence_url":"https://github.com/zeldaret/tmc/blob/6fb6dfb4a7efbe24d0fd1dda5097af6131faacde/README.md","group":"cases","id":"zelda-tmc-decomp-case","json_url":"https://awesomerea.org/resources/zelda-tmc-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/zelda-tmc-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/zelda-tmc-decomp-case/index.md","name":"The Minish Cap: a GBA decompilation targeting five ROMs","name_zh":"《缩小帽》：面向五个 ROM 的 GBA 反编译重建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README calls this a WIP decompilation whose codebase can still change drastically, and warns that some parts of the ROM may not yet be shiftable, so modifications can be difficult. Its targets are tmc.gba (USA, the default), tmc_eu.gba, tmc_jp.gba, tmc_demo_usa.gba and tmc_demo_jp.gba. The output is a GBA ROM, not a native PC port.","The repository includes no game assets. Each version to be built needs its own original base ROM matching the SHA-1 listed in INSTALL.md; the build derives its assets from that ROM.","Builds run on Linux, on macOS with the Xcode command line tools (GNU make and sed are recommended), or on Windows through WSL, WSL2 or Cygwin. They need build-essential, Git, Python 3 with pip and pycparser, CMake, libpng, an arm-none-eabi-gcc toolchain (standalone or devkitPro gba-dev) and pret’s separate agbcc compiler installed into the tree.","COMPARE runs the SHA-1 check for normal builds and is off for CUSTOM builds, which INSTALL.md requires after modifying the game. The Jenkins pipeline builds all five versions with ROMs held on its build agent and publishes progress from the USA map file. For the reviewed commit, the matching log counts all 647,908 USA code bytes as source by the script’s own rules, which also count asm/src, asm/lib and libc objects, but only 238,628 of 13,933,140 data bytes.","The reviewed tree has no license file and GitHub detects no license, so reuse terms for the source are unstated; original ROMs, derived assets and agbcc keep their own terms."],"requirements_zh":["README 称其为仍在进行中的反编译项目，代码库仍可能大幅变动，并提醒 ROM 的部分内容可能尚不能移动，因此修改可能较困难。构建目标为 tmc.gba（美版，默认）、tmc_eu.gba、tmc_jp.gba、tmc_demo_usa.gba 和 tmc_demo_jp.gba。产物是 GBA ROM，而不是原生 PC 移植。","仓库不含任何游戏素材。每个要构建的版本都需要各自的原始基础 ROM，其 SHA-1 须与 INSTALL.md 所列一致；构建过程从该 ROM 中取得素材。","可在 Linux、装有 Xcode 命令行工具的 macOS（建议使用 GNU make 和 sed），或通过 WSL、WSL2、Cygwin 在 Windows 上构建。需要 build-essential、Git、带 pip 和 pycparser 的 Python 3、CMake、libpng、arm-none-eabi-gcc 工具链（独立安装或 devkitPro 的 gba-dev），以及安装到仓库中的 pret 独立 agbcc 编译器。","COMPARE 对常规构建执行 SHA-1 检查，对 CUSTOM 构建默认关闭；按 INSTALL.md，修改游戏后必须使用 CUSTOM 构建。Jenkins 流水线使用构建节点上保存的 ROM 构建全部五个版本，并依据美版 map 文件发布进度。就所审阅提交而言，一致性进度日志按脚本自身规则（也把 asm/src、asm/lib 和 libc 目标计入）将美版全部 647,908 个代码字节计为源码，而 13,933,140 个数据字节中仅计入 238,628 个。","所审阅代码树没有许可证文件，GitHub 也未识别出许可证，因此源码的再使用条款未予说明；原始 ROM、由其得到的素材以及 agbcc 保留各自条款。"],"targets":["game"],"url":"https://github.com/zeldaret/tmc","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/zeldaret/oot/blob/8a3634ca774a9b58d822cbc2cc09309f31eac6a4/Makefile","https://github.com/zeldaret/oot/blob/8a3634ca774a9b58d822cbc2cc09309f31eac6a4/docs/compilers.md","https://github.com/zeldaret/oot/blob/8a3634ca774a9b58d822cbc2cc09309f31eac6a4/docs/BUILDING_MACOS.md","https://github.com/zeldaret/oot/blob/8a3634ca774a9b58d822cbc2cc09309f31eac6a4/baseroms/ntsc-1.0/checksum-US.md5","https://github.com/zeldaret/oot/blob/8a3634ca774a9b58d822cbc2cc09309f31eac6a4/.github/workflows/ci.yml","https://github.com/zeldaret/oot/actions/runs/38614247271","https://zelda.deco.mp/games/oot"],"category":"reconstruction-cases","description_en":"Recreates a C source base for Ocarina of Time that rebuilds 16 Nintendo 64, GameCube and iQue Player ROM versions, using information from the game and static and dynamic analysis. Assets come from the user’s own ROM and each default build is checked against that version’s MD5; README states the project is not producing a PC port and still calls the repository a work in progress.","description_zh":"借助游戏本身的信息以及静态与动态分析，为《时之笛》重建 C 源码库，可重新构建 Nintendo 64、GameCube 和 iQue Player 共 16 个 ROM 版本。素材取自使用者自备的 ROM，默认构建会以对应版本的 MD5 校验；README 说明项目不制作 PC 移植，并仍称仓库处于开发中。","entry_url":"https://awesomerea.org/resources/ocarina-of-time-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/ocarina-of-time-decomp-case/","evidence_url":"https://github.com/zeldaret/oot/blob/8a3634ca774a9b58d822cbc2cc09309f31eac6a4/README.md","group":"cases","id":"ocarina-of-time-decomp-case","json_url":"https://awesomerea.org/resources/ocarina-of-time-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/ocarina-of-time-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ocarina-of-time-decomp-case/index.md","name":"Ocarina of Time: decompilation with MD5-checked ROM builds for 16 versions","name_zh":"《时之笛》：16 个版本均以 MD5 校验 ROM 构建的反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes recreating a source base from scratch using information inside the game and static and/or dynamic analysis, and states that it is not producing a PC port. It builds 16 N64, GameCube and iQue Player ROM versions (default gc-eu-mq-dbg); some ROM parts may not yet be shiftable, so modding can be difficult.","Each build needs the user’s own base ROM for the chosen version, matching an MD5 listed in README; the repository includes no game assets and extracts them from that ROM during setup. Native ports such as Ship of Harkinian, and recompilation projects, are separate from this repository’s output.","README documents Linux or WSL builds, with separate macOS and Docker guides, needing Git, build-essential, curl, Python 3.10+ with pip and venv, libxml2 and a MIPS binutils toolchain. N64 and GameCube code builds with IDO 7.1 and 5.3 through ido-static-recomp; iQue builds also use EGCS for some files, and an optional GCC build is non-matching.","With the default COMPARE=1, make checks the built ROM’s MD5 against the version’s checksum file and prints OK or FAILED; NON_MATCHING=1 or COMPILER=gcc turns the check off. GitHub Actions, using a private container holding the base ROMs, reported all 16 version builds successful for the pinned commit, and the mutable progress badge read 100% on review.","The pinned tree has no license file and GitHub detects none, so no reuse license is stated; Nintendo content and compiler components keep their own terms."],"requirements_zh":["README 说明项目利用游戏内部信息及静态和／或动态分析，从零重建源码库，并明确表示不制作 PC 移植。项目可构建 N64、GameCube 和 iQue Player 共 16 个 ROM 版本（默认 gc-eu-mq-dbg）；ROM 的部分内容可能尚不能移位，因此修改起来可能较困难。","每次构建都需要使用者自备所选版本的基础 ROM，且须与 README 列出的 MD5 一致；仓库不含游戏素材，素材在设置阶段从该 ROM 中提取。Ship of Harkinian 等原生移植及重编译项目都是独立项目，并非本仓库的产物。","README 说明在 Linux 或 WSL 上构建，另有 macOS 与 Docker 指南；需要 Git、build-essential、curl、带 pip 与 venv 的 Python 3.10+、libxml2 以及 MIPS binutils 工具链。N64 和 GameCube 代码通过 ido-static-recomp 使用 IDO 7.1 与 5.3 编译；iQue 版本还有部分文件使用 EGCS，可选的 GCC 构建不保证一致。","默认 COMPARE=1 时，make 会将构建出的 ROM 的 MD5 与该版本的校验文件比对，并输出 OK 或 FAILED；设置 NON_MATCHING=1 或 COMPILER=gcc 会关闭该检查。GitHub Actions 在存有基础 ROM 的私有容器中运行，报告固定提交的 16 个版本均构建成功；审阅时可变的进度徽章显示 100%。","固定版本的仓库中没有许可证文件，GitHub 也未识别出许可证，因此未声明复用许可；任天堂内容与编译器组件各有其条款。"],"targets":["game"],"url":"https://github.com/zeldaret/oot","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/JimLiu/baocut/blob/7aa049e82e1367da013b7aba80f0b79033fa04ad/packages/design-system-runtime/README.md","https://github.com/JimLiu/baocut/blob/7aa049e82e1367da013b7aba80f0b79033fa04ad/docs/design/canvas/README.md","https://github.com/JimLiu/baocut/blob/7aa049e82e1367da013b7aba80f0b79033fa04ad/docs/acceptance/acceptance-spec.md","https://github.com/JimLiu/baocut/blob/7aa049e82e1367da013b7aba80f0b79033fa04ad/skills/baocut/built-in-skills/design/SKILL.md","https://github.com/JimLiu/baocut/blob/7aa049e82e1367da013b7aba80f0b79033fa04ad/package.json","https://github.com/JimLiu/baocut/blob/7aa049e82e1367da013b7aba80f0b79033fa04ad/packages/design-runtime/package.json","https://github.com/JimLiu/baocut/blob/7aa049e82e1367da013b7aba80f0b79033fa04ad/apps/design-editor/package.json","https://github.com/JimLiu/baocut/blob/7aa049e82e1367da013b7aba80f0b79033fa04ad/packages/design/src/canvas-check.test.ts","https://github.com/JimLiu/baocut/blob/7aa049e82e1367da013b7aba80f0b79033fa04ad/packages/design/src/canvas-routes.test.ts","https://github.com/JimLiu/baocut/blob/7aa049e82e1367da013b7aba80f0b79033fa04ad/packages/design/src/editor/downloads-bridge.test.ts","https://github.com/JimLiu/baocut/blob/7aa049e82e1367da013b7aba80f0b79033fa04ad/packages/design-system/src/routes.test.ts","https://github.com/JimLiu/baocut/blob/7aa049e82e1367da013b7aba80f0b79033fa04ad/packages/design-system/src/editor/comment-targets.test.ts","https://github.com/JimLiu/baocut/blob/7aa049e82e1367da013b7aba80f0b79033fa04ad/LICENSE","https://github.com/JimLiu/baocut/blob/7aa049e82e1367da013b7aba80f0b79033fa04ad/THIRD_PARTY_NOTICES.md","https://github.com/JimLiu/baocut/commit/7aa049e82e1367da013b7aba80f0b79033fa04ad"],"category":"reconstruction-cases","description_en":"Documents BaoCut’s design-canvas and design-system editors, which the project says it ported 1:1 from TypeScript reconstructions of Claude Design’s editors and hosts in agent sessions with annotation and export. Its runtime notes record identifier fixes checked against the original scripts and a structural comparison matching 19,111 of 20,463 canvas main-page functions. Unreviewed differences, the unpublished reconstruction record and reuse rights remain open; no hosted-backend recovery is claimed.","description_zh":"记录 BaoCut 的设计稿（画布）与设计系统编辑器；项目称其按 1:1 移植自 Claude Design 编辑器的 TypeScript 重建，并在智能体会话中提供标注与导出。运行时说明记录了对照原脚本修正的标识符，以及画布主页面 20463 个函数中有 19111 个结构完全一致的比对结果。未审阅的差异、未公开的重建记录及复用权利仍待确认；不主张恢复任何托管后端。","entry_url":"https://awesomerea.org/resources/baocut-design-canvas-case/","entry_url_zh":"https://awesomerea.org/zh/resources/baocut-design-canvas-case/","evidence_url":"https://github.com/JimLiu/baocut/blob/7aa049e82e1367da013b7aba80f0b79033fa04ad/packages/design-runtime/README.md","group":"cases","id":"baocut-design-canvas-case","json_url":"https://awesomerea.org/resources/baocut-design-canvas-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/baocut-design-canvas-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/baocut-design-canvas-case/index.md","name":"BaoCut Design: porting reconstructed canvas and design-system editors","name_zh":"BaoCut Design：移植重建的设计稿与设计系统编辑器","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","scope","prerequisites","license"],"requirements":["The source reconstructions (src/design-type, src/design-system-type) and their evidence are unpublished, and no original release is named.","BaoCut shims replace the globalThis.claude host interface, the parent-origin allowlist is empty, analytics are off, and rooms, sampling and hosted design-system installs are dropped. System fonts replace Anthropic Sans, but the Anthropicons icon font is still inlined with an unconfirmed license and slated for replacement; use independently authorized content.","Needs Node.js >=22.12.0, npm workspace dependencies and the apps/design-editor and apps/design-system-editor builds; the canvas keeps React 18.3.1 beside React 19, with Babel standalone 7.29.0. Full builds add Rust, CMake and platform tools; agent-made designs use a configured local agent CLI such as Codex.","BaoCut Community License 1.0 is source-available: personal, internal and content-creation use only; commercializing BaoCut or its code needs a separate license. Third-party notices give no reuse rights in the reconstructed Claude Design code or the icon font."],"requirements_zh":["作为来源的重建工程（src/design-type、src/design-system-type）及其证据未公开，也未写明对应的原版版本。","BaoCut shim 取代 globalThis.claude 宿主接口，父窗口 origin 白名单为空，使用分析关闭，多人房间、sample 及托管设计系统安装均被去除。系统字体取代 Anthropic Sans，但仍内联 Anthropicons 图标字体，其许可待确认且计划替换；请使用已获独立授权的内容。","需要 Node.js >=22.12.0、npm 工作区依赖以及 apps/design-editor 与 apps/design-system-editor 的构建；画布在 React 19 之外为画板保留 React 18.3.1，并使用 Babel standalone 7.29.0。完整构建另需 Rust、CMake 及平台工具；智能体制作设计稿使用已配置的本机智能体 CLI（如 Codex）。","BaoCut Community License 1.0 是源码可见许可：仅允许个人、内部使用及内容创作，将 BaoCut 或其代码商业化需另行许可。第三方声明不能确立所重建的 Claude Design 代码或图标字体的复用权。"],"targets":["app","website"],"url":"https://github.com/JimLiu/baocut/tree/7aa049e82e1367da013b7aba80f0b79033fa04ad/packages/design-runtime","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/carlosrmz009/arwing/blob/d8fe7aaf67e0f4ba77c9814852d2ffaccd7d63c7/LICENSE","https://github.com/carlosrmz009/arwing/blob/d8fe7aaf67e0f4ba77c9814852d2ffaccd7d63c7/tools/build.py","https://github.com/carlosrmz009/arwing/blob/d8fe7aaf67e0f4ba77c9814852d2ffaccd7d63c7/tools/recomp.py","https://github.com/carlosrmz009/arwing/blob/d8fe7aaf67e0f4ba77c9814852d2ffaccd7d63c7/.github/workflows/build.yml"],"category":"reconstruction-cases","description_en":"Disassembles Star Fox’s 65816 and SuperFX code from runtime coverage and recursive descent, reassembles it into the original ROM, then translates it statically to C on a from-scratch SNES runtime for Windows, macOS and Linux. Code never reached in recorded sessions, and RAM code that no longer matches the ROM, falls back to an interpreter; the README reports identical per-frame hashes for both paths. The generated C is a mechanical translation rather than hand-decompiled source, and results remain project-reported.","description_zh":"依据运行覆盖率和递归下降反汇编 Star Fox 的 65816 与 SuperFX 代码，重新汇编出与原 ROM 一致的文件，再静态翻译为 C，运行于从零编写的 SNES 运行时，支持 Windows、macOS 和 Linux。录制会话中未执行到的代码，以及与 ROM 不再一致的 RAM 代码，回退到解释器执行；README 报告两条路径的逐帧哈希一致。生成的 C 是机械翻译而非手工反编译的源码，结果仍为项目报告。","entry_url":"https://awesomerea.org/resources/project-arwing-star-fox-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/project-arwing-star-fox-recomp-case/","evidence_url":"https://github.com/carlosrmz009/arwing/blob/d8fe7aaf67e0f4ba77c9814852d2ffaccd7d63c7/README.md","group":"cases","id":"project-arwing-star-fox-recomp-case","json_url":"https://awesomerea.org/resources/project-arwing-star-fox-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/project-arwing-star-fox-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/project-arwing-star-fox-recomp-case/index.md","name":"Project Arwing: Star Fox recompiled from a matching disassembly","name_zh":"Project Arwing：由一致性反汇编重编译的 Star Fox","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["testing","prerequisites","prerequisites","testing","license"],"requirements":["README reports a byte-identical ROM rebuild, 34,472 65816 and 14,577 SuperFX instructions, and 99.4% CPU / 100% SuperFX dispatches running recompiled over 20k gameplay frames. It lists the intro, title, training, Corneria and other levels reached by random play as playable. Labels are auto-generated, unreached code remains data run by the interpreter, and audio was checked only indirectly, not against hardware.","Supply your own Star Fox (USA) (Rev 2) ROM matching the SHA-1 in README; other revisions and regions are untested. Graphics, models and music are extracted from it at build time. The source build expects a headerless image, while the installer strips a 512-byte copier header. No game data is included.","Releases target Windows x64, macOS 11+ (not notarized) and Linux x86_64/ARM64 AppImages. Source builds need Python (3.10+ on Windows) with Visual Studio 2022 Build Tools, Xcode command-line tools and SDL2, or gcc, SDL2, FreeType and DejaVu fonts; tools/build.py chains extraction, assembly, recompilation and compilation.","tools/build.py compares the reassembled ROM’s SHA-1 but only warns on a mismatch. The documented contributor check diffs --hashlog output from recompiled and --interp runs. CI assembles and recompiles without a ROM, zero-filling data.","MIT covers tools/, src/, installer/, res/ and the build scripts; LICENSE excludes asm/, a disassembly of Nintendo's Star Fox code, and anything extracted from a ROM. This is an unofficial fan project unaffiliated with Nintendo."],"requirements_zh":["README 报告重新汇编的 ROM 逐字节一致，含 34,472 条 65816 指令和 14,577 条 SuperFX 指令；在 2 万帧游戏过程中，99.4% 的 CPU 分派和 100% 的 SuperFX 分派以重编译代码执行。README 列出可游玩的部分为开场、标题、训练、Corneria 及随机游玩到达的其他关卡。标签均为自动生成，未执行到的代码仍作为数据由解释器运行，音频仅经过间接检查，未与实机对照。","需自备 Star Fox (USA) (Rev 2) ROM，并与 README 给出的 SHA-1 一致；其他修订版和地区版本未经测试。构建时从该 ROM 提取图形、模型与音乐。源码构建需要无文件头的映像，安装程序则会去除 512 字节的拷贝机文件头。仓库不含任何游戏数据。","发布版面向 Windows x64、macOS 11+（未经公证）及 Linux x86_64／ARM64 AppImage。源码构建需要 Python（Windows 上为 3.10+），并分别搭配 Visual Studio 2022 Build Tools、Xcode 命令行工具与 SDL2，或 gcc、SDL2、FreeType 与 DejaVu 字体；tools/build.py 依次执行提取、汇编、重编译和编译。","tools/build.py 会比较重新汇编 ROM 的 SHA-1，但不一致时只发出警告。文档中的贡献者检查会比对重编译运行与 --interp 运行的 --hashlog 输出。CI 在没有 ROM 的情况下以零填充数据完成汇编和重编译。","MIT 覆盖 tools/、src/、installer/、res/ 及构建脚本；LICENSE 排除 asm/（Nintendo Star Fox 代码的反汇编）及任何从 ROM 提取的内容。这是与 Nintendo 无关的非官方爱好者项目。"],"targets":["game"],"url":"https://github.com/carlosrmz009/arwing","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/carlosrmz009/arwing2/blob/15af0bfd85d00a79e8913094f7242e1b938f093f/LICENSE","https://github.com/carlosrmz009/arwing2/blob/15af0bfd85d00a79e8913094f7242e1b938f093f/tools/build.py"],"category":"reconstruction-cases","description_en":"Rebuilds Star Fox 2 from a coverage-seeded 65816 and SuperFX disassembly that reassembles to the original ROM, then translates it statically to C for native Windows, macOS and Linux builds. Unreached code and RAM code that differs from the ROM run through an interpreter, and the README reports identical per-frame hashes against interpreted runs. It accepts the SNES Classic release image, not the 1995 prototypes; results remain project-reported.","description_zh":"从以运行覆盖率为种子的 65816 与 SuperFX 反汇编重建 Star Fox 2：反汇编可重新汇编为与原 ROM 一致的文件，再静态翻译为 C，生成原生 Windows、macOS 和 Linux 版本。未执行到的代码及与 ROM 不一致的 RAM 代码由解释器执行，README 报告其与解释运行的逐帧哈希一致。项目接受 SNES Classic 版映像，不支持 1995 年的原型版；结果仍为项目报告。","entry_url":"https://awesomerea.org/resources/project-arwing-2-star-fox-2-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/project-arwing-2-star-fox-2-recomp-case/","evidence_url":"https://github.com/carlosrmz009/arwing2/blob/15af0bfd85d00a79e8913094f7242e1b938f093f/README.md","group":"cases","id":"project-arwing-2-star-fox-2-recomp-case","json_url":"https://awesomerea.org/resources/project-arwing-2-star-fox-2-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/project-arwing-2-star-fox-2-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/project-arwing-2-star-fox-2-recomp-case/index.md","name":"Project Arwing (2): Star Fox 2 recompiled from a matching disassembly","name_zh":"Project Arwing (2)：由一致性反汇编重编译的 Star Fox 2","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README reports a byte-identical ROM rebuild, 66,520 65816 and 23,186 SuperFX instructions, and 99.7% CPU / 100% SuperFX dispatches running recompiled over 20k gameplay frames, listing intro, title, menus, map and missions as playable. Labels are auto-generated, unreached code stays as interpreted data, and audio was checked only indirectly. README says Smooth mode removes slowdown but, unlike the Star Fox project, adds no interpolated 60 fps frames yet.","Supply your own Star Fox 2 ROM from the SNES Classic / Mini release, matching the SHA-1 in README; the 1995 prototypes will not work. Graphics, models and music are extracted from it at build time, and battery saves are written beside the rebuilt ROM. No game data is included.","Releases target Windows x64, macOS 11+ (not notarized) and Linux x86_64/ARM64 AppImages. Source builds need Python (3.10+ on Windows) with Visual Studio 2022 Build Tools, Xcode command-line tools and SDL2, or gcc, SDL2, FreeType and DejaVu fonts; tools/build.py chains extraction, assembly, recompilation and compilation.","tools/build.py compares the reassembled ROM’s SHA-1 but only warns on a mismatch, and the documented contributor check diffs --hashlog output from recompiled and --interp runs. HD 3D hooks one of several projection routines and recovers sub-pixel positions for about 66–90% of vertices.","MIT covers tools/, src/, installer/, res/ and the build scripts; LICENSE excludes asm/, a disassembly of Nintendo's Star Fox 2 code, and anything extracted from a ROM. This is an unofficial fan project unaffiliated with Nintendo."],"requirements_zh":["README 报告重新汇编的 ROM 逐字节一致，含 66,520 条 65816 指令和 23,186 条 SuperFX 指令；在 2 万帧游戏过程中，99.7% 的 CPU 分派和 100% 的 SuperFX 分派以重编译代码执行，并列出开场、标题、菜单、地图和任务为可游玩。标签均为自动生成，未执行到的代码仍作为数据由解释器运行，音频仅经过间接检查。README 说明 Smooth 模式可消除减速，但与 Star Fox 项目不同，目前尚未加入插值的 60 fps 画面。","需自备 SNES Classic／Mini 版的 Star Fox 2 ROM，并与 README 给出的 SHA-1 一致；1995 年的原型版无法使用。构建时从该 ROM 提取图形、模型与音乐，电池存档写在重建的 ROM 旁边。仓库不含任何游戏数据。","发布版面向 Windows x64、macOS 11+（未经公证）及 Linux x86_64／ARM64 AppImage。源码构建需要 Python（Windows 上为 3.10+），并分别搭配 Visual Studio 2022 Build Tools、Xcode 命令行工具与 SDL2，或 gcc、SDL2、FreeType 与 DejaVu 字体；tools/build.py 依次执行提取、汇编、重编译和编译。","tools/build.py 会比较重新汇编 ROM 的 SHA-1，但不一致时只发出警告；文档中的贡献者检查会比对重编译运行与 --interp 运行的 --hashlog 输出。HD 3D 仅挂接多个投影例程中的一个，约为 66–90% 的顶点恢复亚像素位置。","MIT 覆盖 tools/、src/、installer/、res/ 及构建脚本；LICENSE 排除 asm/（Nintendo Star Fox 2 代码的反汇编）及任何从 ROM 提取的内容。这是与 Nintendo 无关的非官方爱好者项目。"],"targets":["game"],"url":"https://github.com/carlosrmz009/arwing2","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/carlosrmz009/littleplanet/blob/658d834d53d90baf6a899fa1e5d81a6fee187bbb/LICENSE","https://github.com/carlosrmz009/littleplanet/blob/658d834d53d90baf6a899fa1e5d81a6fee187bbb/tools/decomp.sh","https://github.com/carlosrmz009/littleplanet/blob/658d834d53d90baf6a899fa1e5d81a6fee187bbb/tests/rc_check.sh","https://github.com/carlosrmz009/littleplanet/blob/658d834d53d90baf6a899fa1e5d81a6fee187bbb/.github/workflows/build.yml"],"category":"reconstruction-cases","description_en":"Disassembles every executable file on the Sonic CD disc from runtime coverage and recursive descent, reassembles them byte-identically, and translates the code statically to C on a from-scratch Mega-CD runtime that replaces the BIOS with a high-level implementation. Recompiled blocks run only where memory still holds the code they came from, and a script compares 96 stage runs frame by frame against the interpreter. The project also patches in widescreen and per-zone saves; results remain project-reported.","description_zh":"依据运行覆盖率和递归下降，反汇编 Sonic CD 光盘上的全部可执行文件并逐字节一致地重新汇编，再将代码静态翻译为 C，运行于从零编写、以高层实现替代 BIOS 的 Mega-CD 运行时。重编译代码块只在内存仍为其来源代码时执行，并有脚本以 96 段关卡运行逐帧对照解释器。项目还以补丁加入宽屏和逐区存档；结果仍为项目报告。","entry_url":"https://awesomerea.org/resources/little-planet-sonic-cd-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/little-planet-sonic-cd-recomp-case/","evidence_url":"https://github.com/carlosrmz009/littleplanet/blob/658d834d53d90baf6a899fa1e5d81a6fee187bbb/README.md","group":"cases","id":"little-planet-sonic-cd-recomp-case","json_url":"https://awesomerea.org/resources/little-planet-sonic-cd-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/little-planet-sonic-cd-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/little-planet-sonic-cd-recomp-case/index.md","name":"Little Planet: Sonic CD recompiled from a matching disassembly","name_zh":"Little Planet：由一致性反汇编重编译的 Sonic CD","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README reports that all 112 executable files reassemble byte-identically to the Japanese release, that 622k instructions recompile into 22,897 blocks, and that boot, gameplay, audio and bit-exact save states work. The disassembly is code only; graphics, sound and level data stay on the user’s disc. True16:9 widescreen and saves after every zone patch the game’s own programs, so those options depart from the original game.","Supply your own Sonic CD disc image (cue/bin, iso, ccd/img/sub, chd, or cue with compressed audio). The Japanese G-6021 release, identified by a data-track SHA-1 in README, is the tested one; other releases boot but are untested. No BIOS dump is needed, and no disc data is included.","Releases target Windows x64 (installer or portable zip), macOS 11+ (not notarized) and Linux x86_64/ARM64 AppImages. Source builds need Python (3.10+ on Windows) and SDL3, with Visual Studio 2022 Build Tools, Xcode command-line tools or gcc/g++. The optional remastered opening also needs a separately built FFmpeg and a fetched video.","README documents tools/decomp.sh for extracting the disc, reassembling asm/ and comparing each file; tests/rc_check.sh compares per-frame RAM and CPU-PC hashes of recompiled and --interp runs across 96 scripted stages. README also reports SingleStepTests results: all 1.6M Z80 cases, and all 1M 68000 cases apart from some undocumented DIVS/ASR and address-error cases. CI tests only a homebrew test disc.","MIT covers the runtime, tools and installer. third_party/ code, the bundled LGPL 2.1 FFmpeg and LuanUP’s remastered opening, included with permission, keep their own terms, and nothing extracted from a disc is covered. The reviewed LICENSE’s exclusion note names Star Fox 2 rather than Sonic CD. The project is unofficial, unaffiliated with Sega."],"requirements_zh":["README 报告全部 112 个可执行文件可重新汇编为与日版逐字节一致的文件，62.2 万条指令重编译为 22,897 个代码块，启动、游戏、音频及逐位一致的即时存档均可运行。反汇编只含代码，图形、声音和关卡数据保留在使用者的光盘中。True16:9 宽屏和每区存档通过修改游戏自身程序实现，因此这些选项有别于原版游戏。","需自备 Sonic CD 光盘映像（cue/bin、iso、ccd/img/sub、chd，或附压缩音轨的 cue）。经测试的是日版 G-6021，README 给出其数据轨 SHA-1；其他版本可以启动但未经测试。无需 BIOS 转储，仓库也不含任何光盘数据。","发布版面向 Windows x64（安装程序或便携 zip）、macOS 11+（未经公证）及 Linux x86_64／ARM64 AppImage。源码构建需要 Python（Windows 上为 3.10+）和 SDL3，并分别搭配 Visual Studio 2022 Build Tools、Xcode 命令行工具或 gcc/g++。可选的重制版开场还需另行构建 FFmpeg 并获取视频。","README 说明 tools/decomp.sh 用于提取光盘、重新汇编 asm/ 并逐个文件比较；tests/rc_check.sh 在 96 段脚本化关卡中，比较重编译运行与 --interp 运行每帧的 RAM 及 CPU PC 哈希。README 还报告 SingleStepTests 结果：Z80 通过全部 160 万个用例，68000 除部分未公开的 DIVS／ASR 及地址错误用例外通过全部 100 万个用例。CI 仅以自制测试光盘进行测试。","MIT 覆盖运行时、工具和安装程序。third_party/ 代码、随附的 LGPL 2.1 FFmpeg 以及经许可收录的 LuanUP 重制版开场各自保留条款，任何从光盘提取的内容均不在许可范围内。所审阅 LICENSE 的排除说明写的是 Star Fox 2 而非 Sonic CD。该项目为非官方作品，与 Sega 无关。"],"targets":["game"],"url":"https://github.com/carlosrmz009/littleplanet","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/celsowm/vf2-decomp/blob/9a9f7270f090cfa0f38b0ec6a22c3e53dae4bd18/LICENSE","https://github.com/celsowm/vf2-decomp/blob/9a9f7270f090cfa0f38b0ec6a22c3e53dae4bd18/docs/LEGAL.md","https://github.com/celsowm/vf2-decomp/blob/9a9f7270f090cfa0f38b0ec6a22c3e53dae4bd18/THIRD_PARTY.md","https://github.com/celsowm/vf2-decomp/blob/9a9f7270f090cfa0f38b0ec6a22c3e53dae4bd18/docs/STATUS.md","https://github.com/celsowm/vf2-decomp/blob/9a9f7270f090cfa0f38b0ec6a22c3e53dae4bd18/AGENTS.md","https://github.com/celsowm/vf2-decomp/blob/9a9f7270f090cfa0f38b0ec6a22c3e53dae4bd18/config/vf2_v22_roms.csv","https://github.com/celsowm/vf2-decomp/blob/9a9f7270f090cfa0f38b0ec6a22c3e53dae4bd18/.github/workflows/ci.yml"],"category":"reconstruction-cases","description_en":"Recovers Virtua Fighter 2 Version 2.1’s Sega Model 2A i960 program into portable, non-matching C17, accepting each recovered path only when it matches a reference i960 executor at controlled boundaries. The repository adds ROM validation, i960 and 68000 analysis tools, a bounded Model 2A hardware model and snapshot-based differential runners. README states that it is not yet a playable port; match flow, combat, physics, AI, rasterization and much of the audio remain open.","description_zh":"将 Virtua Fighter 2 Version 2.1 的 Sega Model 2A i960 程序恢复为可移植、非一致性的 C17 代码，每条恢复路径须在受控边界上与参考 i960 执行器一致才被接受。仓库还提供 ROM 校验、i960 与 68000 分析工具、有限范围的 Model 2A 硬件模型，以及基于快照的差分运行器。README 说明它尚不是可游玩的移植；对战流程、格斗、物理、AI、光栅化及大部分音频仍未完成。","entry_url":"https://awesomerea.org/resources/vf2-decomp-differential-recovery-case/","entry_url_zh":"https://awesomerea.org/zh/resources/vf2-decomp-differential-recovery-case/","evidence_url":"https://github.com/celsowm/vf2-decomp/blob/9a9f7270f090cfa0f38b0ec6a22c3e53dae4bd18/README.md","group":"cases","id":"vf2-decomp-differential-recovery-case","json_url":"https://awesomerea.org/resources/vf2-decomp-differential-recovery-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/vf2-decomp-differential-recovery-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/vf2-decomp-differential-recovery-case/index.md","name":"vf2-decomp: differentially validated Virtua Fighter 2 recovery","name_zh":"vf2-decomp：经差分验证的 Virtua Fighter 2 代码恢复","reconstruction_method":"decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes a clean-room, non-matching recovery whose native runtime preserves CPU, frame, counter and mutable-memory state through repeated scheduler and gameplay dispatches, including a 1,270,824-instruction post-scheduler corridor with no interpreted instructions. It explicitly does not claim complete decompilation, a playable executable, full Model 2/TGP emulation, SCSP DSP audio or every gameplay branch. Unverified paths fail closed with VF2_ERROR_UNSUPPORTED.","ROM-backed analysis and differential tests need a user-supplied, legally obtained copy of the supported arcade ROM set. config/vf2_v22_roms.csv records only filenames, sizes and hashes, and vf2rom verifies the set. The repository contains no Sega game data, and contributors must not commit ROMs or reconstructed region images.","Builds use CMake with a C17 compiler and warnings treated as errors, plus an optional sanitizer configuration. STATUS lists GCC/Clang CI, and README names native Windows MSVC as the canonical agent workflow. Setting VF2_ROM_DIR enables the ROM-backed CTest targets; otherwise only ROM-independent tests run.","The vf2i960 native-dispatch commands run the recorded differential milestones, and vf2cycles advances recovered C and the reference executor from a shared snapshot, stopping in strict mode at the first unsupported block, reference failure or state mismatch. STATUS reports MATCH for the third through sixth dispatches. CI runs only ROM-independent tests, so the ROM-backed results remain project-reported.","BSD-3-Clause covers the project’s code; MAME and public Intel i960 documentation serve as cross-references, not included source. docs/LEGAL.md discloses 301 original Sega symbol names, taken from a later Model 2 port DLL, as non-clean-room naming, and an untracked Sonic The Fighters disassembly is used only as a navigation aid. AGENTS.md addresses coding agents."],"requirements_zh":["README 将其描述为净室、非一致性的恢复项目：原生运行时在重复的调度器与游戏分派中保持 CPU、调用帧、计数器及可变内存状态，其中调度器之后的一段严格路径包含 1,270,824 条恢复指令，且无解释执行指令。项目明确不主张完整反编译、可游玩的可执行文件、完整的 Model 2／TGP 模拟、SCSP DSP 音频或覆盖全部游戏分支。未验证路径以 VF2_ERROR_UNSUPPORTED 失败关闭。","依赖 ROM 的分析和差分测试，需要使用者自行提供合法取得的受支持街机 ROM 组。config/vf2_v22_roms.csv 仅记录文件名、大小和哈希，vf2rom 用于校验该 ROM 组。仓库不含任何 Sega 游戏数据，贡献者不得提交 ROM 或重建的区域映像。","使用 CMake 与 C17 编译器构建，警告视为错误，并可选用 sanitizer 配置。STATUS 列出 GCC／Clang CI，README 将原生 Windows MSVC 称为代理的标准工作流程。设置 VF2_ROM_DIR 后启用依赖 ROM 的 CTest 目标；否则只运行不依赖 ROM 的测试。","vf2i960 的原生分派命令运行已记录的差分里程碑；vf2cycles 从同一快照推进恢复的 C 代码与参考执行器，严格模式下遇到首个不受支持的代码块、参考执行失败或状态不一致即停止。STATUS 报告第三至第六次分派均为 MATCH。CI 只运行不依赖 ROM 的测试，因此依赖 ROM 的结果仍为项目报告。","项目代码采用 BSD-3-Clause；MAME 与公开的 Intel i960 文档仅作交叉参考，未收录其源码。docs/LEGAL.md 披露 301 个取自后续 Model 2 移植版 DLL 的 Sega 原始符号名，并说明这部分命名并非净室成果；未纳入版本库的 Sonic The Fighters 反汇编快照仅作导航参考。AGENTS.md 面向编码代理。"],"targets":["game"],"url":"https://github.com/celsowm/vf2-decomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/troyedwardsjr/z2rs/blob/4fe7a35f8ccfdccdf32421badf97b48b02d0127f/PROVENANCE.md","https://github.com/troyedwardsjr/z2rs/blob/4fe7a35f8ccfdccdf32421badf97b48b02d0127f/LEGAL.md","https://github.com/troyedwardsjr/z2rs/blob/4fe7a35f8ccfdccdf32421badf97b48b02d0127f/guide/development.md","https://github.com/troyedwardsjr/z2rs/blob/4fe7a35f8ccfdccdf32421badf97b48b02d0127f/ports.toml","https://github.com/troyedwardsjr/z2rs/blob/4fe7a35f8ccfdccdf32421badf97b48b02d0127f/crates/z2-core/src/traps.rs","https://github.com/troyedwardsjr/z2rs/blob/4fe7a35f8ccfdccdf32421badf97b48b02d0127f/.github/workflows/release.yml","https://github.com/troyedwardsjr/z2rs/blob/4fe7a35f8ccfdccdf32421badf97b48b02d0127f/LICENSE","https://github.com/troyedwardsjr/z2rs/releases/tag/v0.5.2","https://z2rs.com/"],"category":"reconstruction-cases","description_en":"Rebuilds Zelda II: The Adventure of Link (NES) in Rust for desktop, browser and Android by replacing the game’s 6502 routines one at a time. A built-in interpreter still runs the user’s ROM and hands ported routines to Rust, while a verifier compares RAM, sprites, palette and frames with a reference emulator. It is a behavioral, clean-room-style reconstruction guided by a community disassembly, not a decompilation or a finished standalone engine.","description_zh":"以 Rust 重建 NES 游戏《塞尔达传说 II：林克的冒险》，逐个替换游戏的 6502 例程，可运行于桌面、浏览器和 Android。内置解释器仍执行使用者的 ROM，并把已移植例程交给 Rust 实现；验证工具将 RAM、精灵、调色板和画面与参考模拟器逐帧比较。它是参考社区反汇编、以行为为准的类净室重建，而不是反编译，也还不是独立完整的引擎。","entry_url":"https://awesomerea.org/resources/z2rs-zelda2-reconstruction-case/","entry_url_zh":"https://awesomerea.org/zh/resources/z2rs-zelda2-reconstruction-case/","evidence_url":"https://github.com/troyedwardsjr/z2rs/blob/4fe7a35f8ccfdccdf32421badf97b48b02d0127f/README.md","group":"cases","id":"z2rs-zelda2-reconstruction-case","json_url":"https://awesomerea.org/resources/z2rs-zelda2-reconstruction-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/z2rs-zelda2-reconstruction-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/z2rs-zelda2-reconstruction-case/index.md","name":"z2rs: an incremental Rust reconstruction of Zelda II checked against an emulator","name_zh":"z2rs：以模拟器对照逐步重建《塞尔达传说 II》的 Rust 项目","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","attribution"],"requirements":["The reviewed commit is release v0.5.2 (2026-10-10), with Linux, macOS (Intel and Apple Silicon) and Windows archives plus an Android 8.0+ APK; z2rs.com hosts the browser build. PROVENANCE.md says it is not yet a standalone reimplementation: ported routines register in trap tables and the rest of the ROM is interpreted. The pinned ports.toml still marks all 2,960 routines unported.","Only the No-Intro USA dump is accepted, identified by the hash of the ROM body without its 16-byte iNES header (CRC32 BA322865). Graphics, maps, text and music are read from that ROM at run time, and nothing from the game is in the repository. Co-op, widescreen, HD packs, the randomizer and other enhancements are optional additions; Android lacks online co-op, the randomizer and enhancements.","Source builds need stable Rust; the browser build adds the wasm32-unknown-unknown target and wasm-pack, Android adds the SDK, NDK and cargo-ndk, and the default desktop netplay feature needs a C compiler. Release archives are not code-signed. Online co-op uses a public signalling server by default, and the desktop build shows Discord presence unless it is turned off.","z2-verify runs the ROM in tetanes-core 0.15 beside z2rs with identical input and compares RAM, battery WRAM, sprite OAM, palette and framebuffer after every frame, with two documented edge allowances for that emulator. Long tests replay TASVideos movies downloaded separately, and ROM-dependent tests skip without their inputs. The reviewed workflow only packages releases; no published verification results were found.","The sole maintainer releases the code under MIT; vendored matchbox_socket is MIT OR Apache-2.0, and the game itself is not covered. Routine layout comes from the CC0 FiendsOfTheElements/z2disassembly submodule and Data Crystal notes; the project describes one maintainer working from that material, not a two-team clean room, and publishes only a snapshot of earlier private history."],"requirements_zh":["所审阅提交即 v0.5.2 版（2026-10-10），提供 Linux、macOS（Intel 与 Apple Silicon）和 Windows 压缩包以及适用于 Android 8.0+ 的 APK；z2rs.com 提供浏览器版本。PROVENANCE.md 表示它还不是独立的重新实现：已移植例程注册在陷阱表中，ROM 的其余部分由解释器执行。固定版本的 ports.toml 仍把全部 2,960 个例程标为未移植。","只接受 No-Intro 美版镜像，以去掉 16 字节 iNES 文件头后的 ROM 主体哈希识别（CRC32 BA322865）。图形、地图、文本和音乐在运行时从该 ROM 读取，仓库中不含任何游戏内容。合作模式、宽屏、高清素材包、随机化和其他增强功能均为可选附加内容；Android 版暂不支持在线合作、随机化和增强功能。","源码构建需要稳定版 Rust；浏览器版本另需 wasm32-unknown-unknown 目标和 wasm-pack，Android 版另需 SDK、NDK 和 cargo-ndk，桌面版默认启用的联网功能还需要 C 编译器。发布包未经代码签名。在线合作默认使用公共信令服务器，桌面版在未关闭时会显示 Discord 状态。","z2-verify 在 tetanes-core 0.15 中与 z2rs 并行运行同一 ROM 并输入相同操作，每帧比较 RAM、电池 WRAM、精灵 OAM、调色板和帧缓冲，并对该模拟器的两处画面边缘差异作了说明性豁免。长时测试回放需另行下载的 TASVideos 录像，缺少输入时依赖 ROM 的测试会自动跳过。所审阅的工作流只负责打包发布；未发现公开的验证结果。","代码由唯一维护者以 MIT 发布；内置的 matchbox_socket 采用 MIT 或 Apache-2.0，游戏本身不在许可范围内。例程布局来自 CC0 的 FiendsOfTheElements/z2disassembly 子模块和 Data Crystal 资料；项目说明这是一名维护者依据这些材料完成的工作，并非双团队净室流程，且只公开了早期私有历史的快照。"],"targets":["game"],"url":"https://github.com/troyedwardsjr/z2rs","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/sm64pc/sm64ex/blob/d7ca2c04364a6dd0dac58b47151e04e26887e6f0/Makefile","https://github.com/sm64pc/sm64ex/blob/d7ca2c04364a6dd0dac58b47151e04e26887e6f0/extract_assets.py","https://github.com/sm64pc/sm64ex/blob/d7ca2c04364a6dd0dac58b47151e04e26887e6f0/Jenkinsfile","https://github.com/sm64pc/sm64ex/blob/d7ca2c04364a6dd0dac58b47151e04e26887e6f0/src/pc/README-n64-fast32-engine.md","https://github.com/sm64pc/sm64ex/wiki/Compiling-on-Linux/f2a7911133395886a2dce815f5cb5773e6c2ad8d","https://github.com/sm64pc/sm64ex/wiki/Compiling-on-Windows/0e64ea14174606d83a7b75f20d14dce1b6e6e200","https://github.com/sm64pc/sm64ex/wiki/Build-options/f9aff0b0db9cd4ec1c40ac7a2bc42af969edb42f","https://github.com/sm64pc/sm64ex/wiki/Known-issues/94d262d19ea9e16990d955de28560df563dc5372","https://github.com/sm64-port/sm64-port/blob/2b17d081c9798b31b91dc71f37994b0da28cffc9/README.md"],"category":"reconstruction-cases","description_en":"Builds native Super Mario 64 executables from decompiled source, extending the sm64-port fork of the n64decomp reconstruction with renderer, input, camera, save-format and external-data options. Game assets are extracted from the user’s own ROM at build time. It is a non-matching enhanced port, not a byte-identical ROM reconstruction.","description_zh":"基于反编译源码构建原生 Super Mario 64 可执行文件，在 n64decomp 重建成果的 sm64-port 分支之上，增加渲染器、输入、视角、存档格式和外部数据等选项。游戏素材在构建时从使用者自备的 ROM 中提取。这是非一致性的增强移植，而不是逐字节一致的 ROM 重建。","entry_url":"https://awesomerea.org/resources/sm64ex-pc-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sm64ex-pc-port-case/","evidence_url":"https://github.com/sm64pc/sm64ex/blob/d7ca2c04364a6dd0dac58b47151e04e26887e6f0/README.md","group":"cases","id":"sm64ex-pc-port-case","json_url":"https://awesomerea.org/resources/sm64ex-pc-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sm64ex-pc-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sm64ex-pc-port-case/index.md","name":"sm64ex: an enhanced Super Mario 64 PC port from the decompilation","name_zh":"sm64ex：基于反编译成果的 Super Mario 64 增强版 PC 移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed nightly branch (last pushed 2024-12-17) describes itself as a fork of sm64-port/sm64-port, which GitHub records as a fork of n64decomp/sm64, the separately catalogued ROM reconstruction. The Makefile builds PC targets only: it defines NON_MATCHING and AVOID_UB and forces COMPARE to 0.","Supply an original Super Mario 64 ROM named baserom.<version>.z64 for each version built (us by default, jp or eu); extract_assets.py compares its SHA-1 with the bundled reference before extracting assets. The sh (Shindou) option skips extraction and is labelled experimental in the Makefile and broken in the wiki option table; a 2020 known-issues page reports buggy EU text and missing EU audio.","The README defers building to the wiki, whose pages cover Linux (Python 3.6+, SDL2, GLEW, host GCC toolchain), Windows through MSYS2, FreeBSD, Raspberry Pi and an Emscripten/WebGL target; cross-compiling for Windows from Linux or WSL needs MXE, and OSX_BUILD enables macOS fixes. Renderers are OpenGL 2.1, OpenGL 1.3, Direct3D 11 and Direct3D 12, the DirectX ones only on Windows.","The Jenkinsfile builds us, eu and jp and rebuilds us after each enhancement patch, all with comparison disabled. Options such as disabled draw distance, analog camera, texture fixes and cheats intentionally change behavior, and the wiki notes the draw-distance option may affect gameplay.","GitHub detects no repository license and the reviewed tree has no root license file; bundled tools carry their own licenses, and the src/pc notice reproduces an n64-fast3d-engine license that forbids binary redistribution. Original Nintendo content is not supplied, and the README forbids uploading copyrighted assets."],"requirements_zh":["所审阅的 nightly 分支（最后推送于 2024-12-17）自述为 sm64-port/sm64-port 的分支，而 GitHub 将后者记录为 n64decomp/sm64 的分支；n64decomp/sm64 这一 ROM 重建项目另行收录。Makefile 只构建 PC 目标：它定义 NON_MATCHING 与 AVOID_UB，并强制将 COMPARE 设为 0。","每构建一个版本，都需自备对应的 Super Mario 64 原始 ROM，命名为 baserom.<version>.z64（默认 us，另可选 jp 或 eu）；extract_assets.py 会先将其 SHA-1 与仓库附带的参考值比对，再提取素材。sh（Shindou）选项跳过提取，Makefile 标注为实验性，wiki 选项表则标注为无法使用；一份 2020 年的已知问题页面报告欧版文本有误且没有声音。","README 将构建说明交由 wiki 提供，相关页面涵盖 Linux（Python 3.6+、SDL2、GLEW、宿主 GCC 工具链）、通过 MSYS2 的 Windows、FreeBSD、Raspberry Pi 及 Emscripten／WebGL 目标；在 Linux 或 WSL 上交叉编译 Windows 版需要 MXE，OSX_BUILD 用于启用 macOS 修正。渲染器包括 OpenGL 2.1、OpenGL 1.3、Direct3D 11 和 Direct3D 12，其中 DirectX 渲染器仅限 Windows。","Jenkinsfile 构建 us、eu、jp 三个版本，并在应用每个增强补丁后重新构建 us 版，全部关闭比较。取消绘制距离、模拟摇杆视角、贴图修正和作弊等选项会有意改变行为，wiki 也指出取消绘制距离可能影响游戏玩法。","GitHub 未检测到仓库许可证，所审阅的代码树根目录也没有许可证文件；附带工具各有许可，src/pc 中的声明转载了禁止以二进制形式再分发的 n64-fast3d-engine 许可。项目不提供任天堂原始内容，README 明确禁止上传受版权保护的素材。"],"targets":["game"],"url":"https://github.com/sm64pc/sm64ex","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/HarbourMasters/Ghostship/blob/40eef13823a954a466574dc78e73187a17a2dd42/docs/building.md","https://github.com/HarbourMasters/Ghostship/blob/40eef13823a954a466574dc78e73187a17a2dd42/CMakeLists.txt","https://github.com/HarbourMasters/Ghostship/blob/40eef13823a954a466574dc78e73187a17a2dd42/.gitmodules","https://github.com/HarbourMasters/Ghostship/blob/40eef13823a954a466574dc78e73187a17a2dd42/LICENSE.md","https://github.com/HarbourMasters/Ghostship/tree/40eef13823a954a466574dc78e73187a17a2dd42/src","https://github.com/HarbourMasters/Ghostship/tree/40eef13823a954a466574dc78e73187a17a2dd42/.github/workflows","https://github.com/HarbourMasters/Ghostship/releases/tag/3.0.0"],"category":"reconstruction-cases","description_en":"Builds Super Mario 64 as a native PC, Switch and Android program by compiling decompilation-style game source against the libultraship platform library. A bundled extractor converts the user’s US or Japanese ROM into an O2R archive at first launch or build time. The project ships modern renderers, configuration menus and mod-archive loading, not a matching ROM.","description_zh":"将反编译风格的游戏源码编译到 libultraship 平台库上，把 Super Mario 64 构建为原生 PC、Switch 和 Android 程序。附带的提取工具会在首次启动或构建时，把使用者自备的美版或日版 ROM 转换为 O2R 存档。项目提供现代渲染器、配置菜单和模组存档加载，而不是生成一致的 ROM。","entry_url":"https://awesomerea.org/resources/ghostship-sm64-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/ghostship-sm64-port-case/","evidence_url":"https://github.com/HarbourMasters/Ghostship/blob/40eef13823a954a466574dc78e73187a17a2dd42/README.md","group":"cases","id":"ghostship-sm64-port-case","json_url":"https://awesomerea.org/resources/ghostship-sm64-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/ghostship-sm64-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghostship-sm64-port-case/index.md","name":"Ghostship: a libultraship native port of Super Mario 64","name_zh":"Ghostship：基于 libultraship 的 Super Mario 64 原生移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["attribution","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed develop branch declares version 3.0.0, matching the latest “Alfa” release. Its src tree keeps the audio, engine, game, goddard and menu layout of the n64decomp/sm64 reconstruction, with port code under src/port.","Supply your own Super Mario 64 ROM in .z64 byte order: the README accepts only the US and Japanese releases and lists their SHA-1 values. PC releases convert it to sm64.o2r; the Switch build reuses an O2R generated on PC, and the Android app checks the ROM hash and converts it on the device. No game data is bundled.","Source builds use CMake with the libultraship and Torch submodules: Visual Studio 2022 with the v143 toolset, Python 3 and CMake on Windows, or GCC/Clang, Ninja, SDL2, libzip and the listed libraries on Linux. Renderers are DirectX 11, OpenGL, Metal and Vulkan where drivers allow. The building guide still names sf64.o2r and 2s2h.elf from other Harbour Masters ports.","GitHub Actions workflows build Windows, macOS, Linux, Switch and web packages. The README calls CI builds playtest-only and warns of bugs and crashes. No matching, regression or original-hardware comparison result is published.","The root LICENSE.md is MIT (2026, Lywx) for the project’s own code. Submodules keep their own terms, and Nintendo’s code-derived content and ROM assets are not licensed by it; the README says it does not condone piracy."],"requirements_zh":["所审阅的 develop 分支声明版本为 3.0.0，与最新的“Alfa”发行版一致。其 src 目录保留了 n64decomp/sm64 重建项目的 audio、engine、game、goddard 和 menu 结构，移植代码位于 src/port。","需自备 .z64 字节序的 Super Mario 64 ROM：README 只接受美版和日版，并列出两者的 SHA-1 值。PC 发行版会把 ROM 转换为 sm64.o2r；Switch 版复用在 PC 上生成的 O2R，Android 应用则先核对 ROM 哈希，再在设备上完成转换。项目不附带任何游戏数据。","源码构建使用 CMake 及 libultraship、Torch 子模块：Windows 需 Visual Studio 2022（v143 工具集）、Python 3 和 CMake，Linux 需 GCC／Clang、Ninja、SDL2、libzip 及列出的其他库。渲染器包括 DirectX 11、OpenGL、Metal，以及驱动支持时的 Vulkan。构建指南仍写着其他 Harbour Masters 移植项目的 sf64.o2r 和 2s2h.elf。","GitHub Actions 工作流构建 Windows、macOS、Linux、Switch 和网页版本。README 称 CI 构建仅供试玩，并提醒可能出现错误和崩溃。项目没有公布一致性、回归或与原硬件对比的结果。","根目录 LICENSE.md 以 MIT（2026，Lywx）授权项目自有代码。子模块各有条款；源自任天堂代码的内容和 ROM 素材不受该许可覆盖，README 表示不支持盗版。"],"targets":["game"],"url":"https://github.com/HarbourMasters/Ghostship","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/doldecomp/sms/blob/b2350a119b0e113e6cebc389fda9af00328ee85e/AGENTS.md","https://github.com/doldecomp/sms/blob/b2350a119b0e113e6cebc389fda9af00328ee85e/configure.py","https://github.com/doldecomp/sms/blob/b2350a119b0e113e6cebc389fda9af00328ee85e/config/GMSJ01/config.yml","https://github.com/doldecomp/sms/blob/b2350a119b0e113e6cebc389fda9af00328ee85e/config/GMSJ01/build.sha1","https://github.com/doldecomp/sms/blob/b2350a119b0e113e6cebc389fda9af00328ee85e/.github/workflows/build.yml","https://github.com/doldecomp/sms/blob/b2350a119b0e113e6cebc389fda9af00328ee85e/docs/AGENT_MATCHING_TIPS.md","https://github.com/doldecomp/sms/blob/b2350a119b0e113e6cebc389fda9af00328ee85e/LICENSE","https://decomp.dev/doldecomp/sms","https://web.archive.org/web/20261020041309/https://decomp.dev/doldecomp/sms/GMSJ01/b2350a119b0e113e6cebc389fda9af00328ee85e.json"],"category":"reconstruction-cases","description_en":"Reconstructs Super Mario Sunshine’s C++ source so that the original Metrowerks compiler reproduces byte-identical object files for four GameCube releases and the Switch 3D All-Stars build. The target binary comes from the user’s own disc image, and objdiff compares rebuilt objects function by function. The work is incomplete, and the repository publishes contribution rules for AI agents alongside its human workflow.","description_zh":"重建 Super Mario Sunshine 的 C++ 源码，目标是让原版 Metrowerks 编译器为四个 GameCube 发行版本及 Switch 版 3D All-Stars 生成逐字节一致的目标文件。目标二进制取自使用者自备的光盘镜像，objdiff 按函数比对重建出的目标文件。工作尚未完成，仓库在人工流程之外还发布了面向 AI 智能体的贡献规则。","entry_url":"https://awesomerea.org/resources/sms-matching-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sms-matching-decomp-case/","evidence_url":"https://github.com/doldecomp/sms/blob/b2350a119b0e113e6cebc389fda9af00328ee85e/README.md","group":"cases","id":"sms-matching-decomp-case","json_url":"https://awesomerea.org/resources/sms-matching-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sms-matching-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sms-matching-decomp-case/index.md","name":"Super Mario Sunshine: an in-progress matching GameCube decompilation","name_zh":"Super Mario Sunshine：仍在推进的 GameCube 一致性反编译重建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","attribution"],"requirements":["The README calls this a work-in-progress decompilation. configure.py defaults to GMSJ01 (JPN Rev 0) and also targets GMSP01, GMSE01, GMSJ01 Rev 1 and the GMSP01_NX build from Super Mario 3D All-Stars. Only objects marked Matching are linked by default; --non-matching links equivalent or modded objects. For GMSJ01 at the reviewed commit, decomp.dev reported 49.51% of code decompiled and 18.42% fully linked.","Copy your own disc image for each version into orig/<version>. ISO (GCM), RVZ, WIA, WBFS, CISO, NFS, GCZ and TGC images are accepted, and the repository says it contains no game assets or assembly. The GMSJ01 symbol configuration is generated from the mario.MAP linker map found on that disc; the CI workflow notes that GMSE01 has no MAP file and skips symbol-order checks for it.","Builds need Python and Ninja on Windows, macOS or Linux; the build fetches decomp-toolkit, binutils and retro Metrowerks compilers (GC 1.2.5 for most code), and runs them through the wibo wrapper on macOS and Linux. objdiff compares rebuilt objects with those extracted from the original DOL, and each version’s build.sha1 records the target DOL hash.","AGENTS.md requires ninja baseline and changes_all regression reports for all five versions, each still reporting its DOL as OK. CI builds every version in a build container that supplies the original files and checks symbol order for changed units. These are project-reported checks and progress figures.","AGENTS.md, symlinked as CLAUDE.md and GEMINI.md, sets workflows for AI agents. It bars unsupervised agents from MSL, MetroTRK, THPPlayer, Dolphin SDK and JSystem code and defers hard judgment calls to humans, but it does not quantify agent-written code. The repository declares CC0-1.0; Nintendo’s game, disc contents and the downloaded compilers keep separate rights."],"requirements_zh":["README 称该项目为仍在进行中的反编译工程。configure.py 默认目标为 GMSJ01（日版 Rev 0），另支持 GMSP01、GMSE01、GMSJ01 Rev 1，以及 Super Mario 3D All-Stars 中的 GMSP01_NX。默认只链接标记为 Matching 的目标文件；--non-matching 会链接等价或经修改的目标文件。在所审阅的提交上，decomp.dev 报告 GMSJ01 已反编译 49.51% 的代码、完全链接 18.42%。","需将各版本自备的光盘镜像放入 orig/<version>。支持 ISO（GCM）、RVZ、WIA、WBFS、CISO、NFS、GCZ 和 TGC 格式，仓库声明不包含任何游戏素材或汇编。GMSJ01 的符号配置由该光盘中的 mario.MAP 链接映射生成；CI 工作流注明 GMSE01 没有 MAP 文件，因此跳过其符号顺序检查。","构建需在 Windows、macOS 或 Linux 上安装 Python 和 Ninja；构建过程会获取 decomp-toolkit、binutils 和旧版 Metrowerks 编译器（大部分代码使用 GC 1.2.5），在 macOS 和 Linux 上通过 wibo 包装器运行。objdiff 将重建的目标文件与从原 DOL 中提取的目标文件比对，各版本的 build.sha1 记录目标 DOL 的哈希。","AGENTS.md 要求对全部五个版本运行 ninja baseline 与 changes_all 生成回归报告，且每个版本的 DOL 仍须显示 OK。CI 在提供原始文件的构建容器中构建所有版本，并对改动的单元检查符号顺序。这些都是项目自报的检查与进度数据。","AGENTS.md（CLAUDE.md 与 GEMINI.md 均为指向它的符号链接）规定了 AI 智能体的工作流程：禁止无人监督的智能体处理 MSL、MetroTRK、THPPlayer、Dolphin SDK 和 JSystem 代码，并把难以判断的决定交给人类，但没有量化智能体编写的代码比例。仓库声明采用 CC0-1.0；任天堂的游戏、光盘内容及下载的编译器另有权利约束。"],"targets":["game"],"url":"https://github.com/doldecomp/sms","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/TwilitRealm/dusklight/blob/34a144a493b7f57adeb4034d382317c826eb5c8d/docs/building.md","https://github.com/TwilitRealm/dusklight/blob/34a144a493b7f57adeb4034d382317c826eb5c8d/LICENSE.md","https://github.com/TwilitRealm/dusklight/blob/34a144a493b7f57adeb4034d382317c826eb5c8d/.gitmodules","https://github.com/TwilitRealm/dusklight/blob/34a144a493b7f57adeb4034d382317c826eb5c8d/CMakeLists.txt","https://github.com/TwilitRealm/dusklight/tree/34a144a493b7f57adeb4034d382317c826eb5c8d/platforms","https://github.com/TwilitRealm/dusklight/blob/34a144a493b7f57adeb4034d382317c826eb5c8d/.github/workflows/build.yml","https://github.com/encounter/aurora/blob/3227d76c60e1e782ca576610bce61c9e7744d8be/README.md"],"category":"reconstruction-cases","description_en":"Reimplements Twilight Princess as a native application for desktop and mobile platforms, building on the zeldaret/tp decompilation and the Aurora GameCube/Wii compatibility layer. It runs from the user’s own disc image with no bundled assets and aims to stay accurate to the original while adding options, enhancements and mods.","description_zh":"以 zeldaret/tp 反编译项目和 Aurora GameCube／Wii 兼容层为基础，将《塞尔达传说 黄昏公主》重新实现为桌面与移动平台的原生应用。程序读取使用者自备的光盘镜像运行，不附带任何素材；项目力求忠于原作，同时加入新选项、增强功能和模组。","entry_url":"https://awesomerea.org/resources/dusklight-twilight-princess-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/dusklight-twilight-princess-port-case/","evidence_url":"https://github.com/TwilitRealm/dusklight/blob/34a144a493b7f57adeb4034d382317c826eb5c8d/README.md","group":"cases","id":"dusklight-twilight-princess-port-case","json_url":"https://awesomerea.org/resources/dusklight-twilight-princess-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/dusklight-twilight-princess-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dusklight-twilight-princess-port-case/index.md","name":"Dusklight: a native Twilight Princess port built on the decompilation","name_zh":"Dusklight：基于反编译的《黄昏公主》原生移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README calls Dusklight a reverse-engineered reimplementation that aims to be as accurate as possible while adding options, enhancements and tools. It is based on the zeldaret/tp decompilation, which README says is matching only for GameCube, so Wii discs still show the GameCube HUD and other GameCube specifics. This is a modified port, not a matching rebuild of the original executable.","No copyrighted assets are provided: the user supplies a dump of their own disc, and README says every commercial disc except the Korean Wii release is supported. The executable reads ISO (GCM), RVZ, WIA, WBFS, CISO and GCZ images directly.","Runtime needs a GPU with D3D12, Vulkan 1.1+ or Metal; D3D11 and Android OpenGL ES are best-effort without full accuracy or performance. The pinned tree has Windows, Linux, macOS, iOS, tvOS and Android platform folders, and CI builds Linux, macOS, iOS, Android and Windows targets. Source builds need CMake 3.25+, Python 3, the listed per-OS toolchains and recursive submodules, including Aurora.","The CI workflow builds packages but runs no comparison against the original game. Accuracy and enhancement claims are project-reported.","LICENSE.md is CC0-1.0; it does not cover Nintendo’s game or disc content, and submodules such as Aurora and the randomizer mod are separate repositories. README says the project does not accept primarily AI-generated contributions and warns of unaffiliated sites spreading AI-generated misinformation."],"requirements_zh":["README 称 Dusklight 是通过逆向工程实现的重新实现，力求尽可能忠于原作，同时提供新选项、增强功能和工具。它基于 zeldaret/tp 反编译项目，而 README 指出该项目目前只有 GameCube 版一致，因此即使使用 Wii 光盘，也会呈现 GameCube 版的 HUD 及其他特性。这是修改后的移植，不是原可执行文件的一致性重建。","项目不提供任何受版权保护的素材：使用者须自行转储自己的光盘；README 说明支持除韩版 Wii 以外的所有正式发行光盘。程序可直接读取 ISO（GCM）、RVZ、WIA、WBFS、CISO 和 GCZ 镜像。","运行需要支持 D3D12、Vulkan 1.1+ 或 Metal 的 GPU；D3D11 和 Android 的 OpenGL ES 仅为尽力支持，无法达到完整的准确性或性能。固定版本中有 Windows、Linux、macOS、iOS、tvOS 和 Android 平台目录，CI 构建 Linux、macOS、iOS、Android 和 Windows 目标。从源码构建需 CMake 3.25+、Python 3、各系统列明的工具链，以及包括 Aurora 在内的递归子模块。","CI 工作流只构建软件包，不与原版游戏进行比对。准确性与增强功能均为项目报告。","LICENSE.md 采用 CC0-1.0，不涵盖任天堂的游戏或光盘内容；Aurora 与随机器模组等子模块为独立仓库。README 声明不接受主要由 AI 生成的贡献，并提醒存在传播 AI 生成错误信息的非官方网站。"],"targets":["game"],"url":"https://github.com/TwilitRealm/dusklight","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/AxioDL/metaforce/blob/de8fc69bd7f345d6cf5f0c8fc2798295e22522d3/CMakeLists.txt","https://github.com/AxioDL/metaforce/blob/de8fc69bd7f345d6cf5f0c8fc2798295e22522d3/configure.py","https://github.com/AxioDL/metaforce/blob/de8fc69bd7f345d6cf5f0c8fc2798295e22522d3/src/Metaforce/Runtime.cpp","https://github.com/AxioDL/metaforce/blob/de8fc69bd7f345d6cf5f0c8fc2798295e22522d3/.github/workflows/build.yml","https://github.com/AxioDL/metaforce/blob/de8fc69bd7f345d6cf5f0c8fc2798295e22522d3/.gitmodules","https://github.com/AxioDL/metaforce/blob/de8fc69bd7f345d6cf5f0c8fc2798295e22522d3/platforms/android/README.md","https://github.com/AxioDL/metaforce/blob/de8fc69bd7f345d6cf5f0c8fc2798295e22522d3/LICENSE","https://github.com/AxioDL/metaforce/blob/de8fc69bd7f345d6cf5f0c8fc2798295e22522d3/LICENSE.decomp","https://github.com/encounter/aurora/blob/40cf48fce6ce85366608596bae018c6188f2b2e7/README.md"],"category":"reconstruction-cases","description_en":"Started in 2015 as a reverse-engineered reimplementation of the Metroid Prime engine, Metaforce has been rewritten on top of the PrimeDecomp matching decompilation. Its native app compiles that game code as non-matching C++ for desktop and mobile through the Aurora GameCube compatibility layer and loads a user-selected disc image. The README says builds are unavailable while the rewrite stabilizes.","description_zh":"Metaforce 于 2015 年作为《密特罗德 Prime》引擎的逆向重实现项目启动，现已在 PrimeDecomp 一致性反编译之上重写。其原生应用借助 Aurora GameCube 兼容层，将这些游戏代码以非一致模式编译为桌面和移动端程序，并读取使用者选择的光盘镜像。README 表示重写稳定之前暂不提供构建版本。","entry_url":"https://awesomerea.org/resources/metaforce-metroid-prime-case/","entry_url_zh":"https://awesomerea.org/zh/resources/metaforce-metroid-prime-case/","evidence_url":"https://github.com/AxioDL/metaforce/blob/de8fc69bd7f345d6cf5f0c8fc2798295e22522d3/README.md","group":"cases","id":"metaforce-metroid-prime-case","json_url":"https://awesomerea.org/resources/metaforce-metroid-prime-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/metaforce-metroid-prime-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/metaforce-metroid-prime-case/index.md","name":"Metaforce: a Metroid Prime engine reimplementation rebuilt on the decompilation","name_zh":"Metaforce：在反编译之上重建的《密特罗德 Prime》引擎重实现","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README dates development to June 2015 by Cirrus and Antidote and says the project was recently rewritten on the PrimeDecomp matching decompilation; builds are unavailable while it stabilizes, although CI builds Windows, Linux, Apple and Android packages. The only GitHub release is a 2015 prerelease, so none corresponds to the rewrite. This is separate from Odrannnn/MetroidPrimePort, another native port built from PrimeDecomp.","The repository ships no game files; its orig/ version folders hold only placeholders. At startup the app takes or asks for a Metroid Prime disc image (ISO, GCM, CISO, GCZ, RVZ, WIA or TGC). CMake compiles the native target with TARGET_PC, NONMATCHING and VERSION=1, and configure.py names version 1 as the default GM8E01_00 (NTSC-U v1.088) build; the README lists no supported disc revisions.","Building needs CMake 3.25+, Python 3 and a recursive clone with the aurora, borealis and musyx submodules; Windows uses Visual Studio 2019 with the Clang and clang-cl components, macOS needs Xcode 11.5+, and Linux needs the listed Ubuntu, Arch or Fedora packages. README platforms are Windows 10+ (D3D12, Vulkan or D3D11), macOS 10.15+ (Metal), Linux (Vulkan), Android (Vulkan or OpenGL ES) and iOS (Metal); Android also needs SDK Platform 37, the NDK and JDK 17+.","configure.py still records per-object matching status across ten disc versions for the separate GameCube build, but CI ignores those files and builds only native packages. The reviewed sources publish no fidelity or gameplay checks for the native app.","Metaforce contributors’ code is MIT, and a separate LICENSE.decomp carries CC0 1.0; the reviewed files do not say which directories each covers. Disc content keeps its own rights."],"requirements_zh":["README 称项目由 Cirrus 和 Antidote 于 2015 年 6 月开始开发，近期已在 PrimeDecomp 一致性反编译之上重写；稳定之前不提供构建版本，尽管 CI 会构建 Windows、Linux、Apple 和 Android 安装包。GitHub 上唯一的发布是 2015 年的预发布版，没有与重写版对应的发布。它与另一个基于 PrimeDecomp 的原生移植 Odrannnn/MetroidPrimePort 是不同项目。","仓库不附带任何游戏文件，orig/ 下各版本文件夹仅有占位文件。应用启动时通过参数或选择窗口读取《密特罗德 Prime》光盘镜像（ISO、GCM、CISO、GCZ、RVZ、WIA 或 TGC）。CMake 以 TARGET_PC、NONMATCHING 和 VERSION=1 编译原生目标，configure.py 将版本 1 定为默认的 GM8E01_00（NTSC-U v1.088）构建；README 未列出受支持的光盘版本。","构建需要 CMake 3.25+、Python 3，并递归克隆 aurora、borealis 和 musyx 子模块；Windows 使用带 Clang 与 clang-cl 组件的 Visual Studio 2019，macOS 需要 Xcode 11.5+，Linux 需要所列的 Ubuntu、Arch 或 Fedora 软件包。README 列出的平台为 Windows 10+（D3D12、Vulkan 或 D3D11）、macOS 10.15+（Metal）、Linux（Vulkan）、Android（Vulkan 或 OpenGL ES）和 iOS（Metal）；Android 另需 SDK Platform 37、NDK 和 JDK 17+。","configure.py 仍为独立的 GameCube 构建记录十个光盘版本的逐对象一致性状态，但 CI 忽略这些文件，只构建原生安装包。所审阅来源未公开原生应用的保真度或游戏行为检查。","Metaforce 贡献者的代码采用 MIT，另有一份 LICENSE.decomp 采用 CC0 1.0；所审阅文件未说明二者各自覆盖哪些目录。光盘内容保留各自权利。"],"targets":["game"],"url":"https://github.com/AxioDL/metaforce","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/chasem-dev/sms-english/blob/d5f4eb3eb54ac49638b5513efb1fc368068805da/PROGRESS.md","https://github.com/chasem-dev/sms-english/blob/d5f4eb3eb54ac49638b5513efb1fc368068805da/config/GMSE01/README.md","https://github.com/chasem-dev/sms-english/blob/d5f4eb3eb54ac49638b5513efb1fc368068805da/AGENTS.md","https://github.com/chasem-dev/sms-english/blob/d5f4eb3eb54ac49638b5513efb1fc368068805da/STRATEGY.md","https://github.com/chasem-dev/sms-english/blob/d5f4eb3eb54ac49638b5513efb1fc368068805da/DECOMPILATION_PLAN.md","https://github.com/chasem-dev/sms-english/blob/d5f4eb3eb54ac49638b5513efb1fc368068805da/.github/workflows/build.yml","https://github.com/chasem-dev/sms-english/blob/d5f4eb3eb54ac49638b5513efb1fc368068805da/LICENSE"],"category":"reconstruction-cases","description_en":"Extends the doldecomp Super Mario Sunshine decompilation to the North American GMSE01 release. The README says AI was used extensively, and the repository’s agent rules, work order and progress files describe batch-based Claude and Codex orchestration. Its rebuilt DOL is reported byte-identical, but unfinished objects are still linked from code extracted from the user’s disc.","description_zh":"将 doldecomp 的 Super Mario Sunshine 反编译工作扩展到北美 GMSE01 版本。README 称大量使用了 AI，仓库中的智能体规则、工作顺序和进度文件也记录了按批次编排 Claude 与 Codex 的方式。项目报告重建的 DOL 逐字节一致，但尚未完成的目标文件仍取自使用者光盘中提取的代码。","entry_url":"https://awesomerea.org/resources/sms-english-gmse01-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sms-english-gmse01-decomp-case/","evidence_url":"https://github.com/chasem-dev/sms-english/blob/d5f4eb3eb54ac49638b5513efb1fc368068805da/README.md","group":"cases","id":"sms-english-gmse01-decomp-case","json_url":"https://awesomerea.org/resources/sms-english-gmse01-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sms-english-gmse01-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sms-english-gmse01-decomp-case/index.md","name":"Super Mario Sunshine (USA): an AI-assisted matching decompilation fork","name_zh":"Super Mario Sunshine（美版）：AI 辅助的一致性反编译分支","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","attribution"],"requirements":["This hobby fork of doldecomp/sms targets GMSE01 (USA Rev 0). The README says it began when upstream’s Japanese decompilation was about 38% matched, and PROGRESS.md names upstream ab00c3c9 as its base. GMSJ01 and GMSP01 configs remain, but the README marks PAL as slightly broken and AGENTS.md says neither can be built or regression-tested in this clone.","Supply your own North American Rev 0 disc image in orig/GMSE01 (ISO, RVZ, WIA, WBFS, CISO, NFS, GCZ or TGC). The GMSE01 build notes record the required extracted-DOL SHA-1. Those notes say the initial symbols came from a community-hosted marioUS.map that is not on the US disc, while AGENTS.md calls the US map a real map shipped on the disc.","Builds use Python 3 and Ninja on Windows, macOS (with Wine Crossover) or Linux (wibo on x86, Wine elsewhere), plus the pinned decomp-toolkit and Metrowerks tools. The output is build/GMSE01/mario.dol, checked against the extracted original. Playing it still needs the original disc image in Dolphin; a separate native PC port uses this fork as its decompilation submodule.","The README (2026-09-29) reports 99.60% fuzzy, 73.65% byte-perfect and 34.79% source-linked code, with 12,052 of 12,904 functions exact and 542 of 732 objects linked; PROGRESS.md (2026-09-27) gives slightly lower figures. The fork’s CI matrix builds only GMSJ01, so GMSE01 results are locally reported.","AGENTS.md, symlinked as CLAUDE.md and GEMINI.md, lifts upstream’s ban on autonomous library work. It requires agents to work only from the binary, the linker map and the repository, and forbids fakematches and leaked SDK sources. The repository keeps CC0-1.0, while Nintendo content and the compilers keep separate rights."],"requirements_zh":["这是 doldecomp/sms 的业余分支，目标为 GMSE01（美版 Rev 0）。README 称分支创建时上游日版反编译约完成 38% 的匹配，PROGRESS.md 注明以上游 ab00c3c9 为基础。GMSJ01 与 GMSP01 配置仍在代码树中，但 README 标注 PAL 版略有问题，AGENTS.md 也说明二者在本分支中都无法构建或做回归测试。","需将自备的北美 Rev 0 光盘镜像放入 orig/GMSE01（ISO、RVZ、WIA、WBFS、CISO、NFS、GCZ 或 TGC）。GMSE01 构建说明记录了提取出的 DOL 必须符合的 SHA-1。该说明称初始符号来自社区托管的 marioUS.map，并不在美版光盘上；而 AGENTS.md 却称美版映射是光盘自带的真实链接映射。","构建需在 Windows、macOS（配合 Wine Crossover）或 Linux（x86 使用 wibo，其他架构使用 Wine）上安装 Python 3 和 Ninja，并使用固定版本的 decomp-toolkit 与 Metrowks 工具。产物为 build/GMSE01/mario.dol，并与提取的原始文件比对。运行时仍需在 Dolphin 中使用原光盘镜像；另有一个原生 PC 移植以该分支作为反编译子模块。","README（2026-09-29）报告：模糊匹配 99.60%、逐字节一致 73.65%、源码链接 34.79%，12,904 个函数中 12,052 个完全一致，732 个目标文件中 542 个由源码链接；PROGRESS.md（2026-09-27）的数字略低。分支的 CI 矩阵只构建 GMSJ01，GMSE01 结果均为本地报告。","AGENTS.md（CLAUDE.md 与 GEMINI.md 为指向它的符号链接）取消了上游对智能体自主处理库代码的禁令。它要求智能体只依据二进制、链接映射和本仓库开展工作，禁止伪匹配和使用泄露的 SDK 源码。仓库沿用 CC0-1.0，任天堂内容和编译器另有权利约束。"],"targets":["game"],"url":"https://github.com/chasem-dev/sms-english","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/Rainchus/Donkey-Kong-64-Recompiled/blob/3b0c36d3fbfeb0b5d2c47923f35cf84b31edcbf7/BUILDING.md","https://github.com/Rainchus/Donkey-Kong-64-Recompiled/blob/3b0c36d3fbfeb0b5d2c47923f35cf84b31edcbf7/us.toml","https://github.com/Rainchus/Donkey-Kong-64-Recompiled/blob/3b0c36d3fbfeb0b5d2c47923f35cf84b31edcbf7/.gitmodules","https://github.com/Rainchus/Donkey-Kong-64-Recompiled/blob/3b0c36d3fbfeb0b5d2c47923f35cf84b31edcbf7/.github/workflows/validate.yml","https://github.com/Rainchus/Donkey-Kong-64-Recompiled/blob/3b0c36d3fbfeb0b5d2c47923f35cf84b31edcbf7/COPYING","https://github.com/Rainchus/Donkey-Kong-64-Recompiled/blob/3b0c36d3fbfeb0b5d2c47923f35cf84b31edcbf7/CONTRIBUTING.md","https://github.com/Rainchus/Donkey-Kong-64-Recompiled/releases/tag/v1.0.3"],"category":"reconstruction-cases","description_en":"Uses N64Recomp to statically recompile the US Nintendo 64 release of Donkey Kong 64 into a native port, with RT64 as the renderer. The port is not built from decompiled source, but borrows headers and some functions from the in-progress DK64 decompilation for patches and enhancements. Its recompiler configuration reads a checked-in symbol dump and the ROM rather than a decompilation ELF.","description_zh":"使用 N64Recomp 将美版 Nintendo 64《大金刚 64》静态重编译为原生移植版，并以 RT64 作为渲染器。该移植并非基于反编译源码构建，但借用仍在进行中的 DK64 反编译项目的头文件和部分函数来实现补丁与增强。其重编译配置读取仓库内的符号转储和 ROM，而非反编译生成的 ELF。","entry_url":"https://awesomerea.org/resources/dk64-recompiled-case/","entry_url_zh":"https://awesomerea.org/zh/resources/dk64-recompiled-case/","evidence_url":"https://github.com/Rainchus/Donkey-Kong-64-Recompiled/blob/3b0c36d3fbfeb0b5d2c47923f35cf84b31edcbf7/README.md","group":"cases","id":"dk64-recompiled-case","json_url":"https://awesomerea.org/resources/dk64-recompiled-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/dk64-recompiled-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dk64-recompiled-case/index.md","name":"Donkey Kong 64: Recompiled — an N64Recomp native port","name_zh":"Donkey Kong 64: Recompiled：基于 N64Recomp 的原生移植","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","prerequisites","testing","license"],"requirements":["Plays only the user’s US Nintendo 64 Donkey Kong 64 ROM; other dump formats of that ROM are converted to .z64. The repository and releases contain no game assets, it is not an emulator for other ROMs, and the README describes modding and other-language support as future work.","Release v1.0.3 (2026-09-30) ships Windows, Linux x64/ARM64, Flatpak x64 and macOS ARM64 archives. The README requires a Direct3D 12.0 (Shader Model 6) or Vulkan 1.2 GPU and an AVX-capable CPU, and lists Intel GPUs on Linux, the prebuilt Linux binary on some distributions, and overlay software as known problems.","Source builds need a recursive clone, CMake and Ninja with Clang (Visual Studio 2022 with Clang and vcpkg curl on Windows), separately built N64Recomp and RSPRecomp, and a decompressed copy of the NTSC-U 1.0 ROM matching the SHA-1 in BUILDING.md; play still uses the standard ROM.","The README reports high-frame-rate, widescreen and input-lag improvements alongside cutscene edge quirks at very wide aspect ratios. It publishes no equivalence or gameplay test; pinned-commit CI only builds the port, with extra inputs from a secret-configured checkout.","GPLv3 project license; the original game, the decompilation submodule and other dependencies keep separate terms. CONTRIBUTING.md forbids AI-generated code contributions."],"requirements_zh":["仅可游玩用户自备的美版 Nintendo 64《大金刚 64》ROM；该 ROM 的其他转储格式会被转换为 .z64。仓库和发布包均不含游戏素材，它不是可运行其他 ROM 的模拟器；README 将模组和其他语言支持列为后续工作。","v1.0.3 版本（2026-09-30）提供 Windows、Linux x64／ARM64、Flatpak x64 和 macOS ARM64 压缩包。README 要求显卡支持带 Shader Model 6 的 Direct3D 12.0 或 Vulkan 1.2，CPU 支持 AVX，并将 Linux 上的 Intel 显卡、部分发行版上的预编译 Linux 程序以及叠加层软件列为已知问题。","源码构建需要递归克隆、CMake 与 Ninja 加 Clang（Windows 上为带 Clang 的 Visual Studio 2022 及 vcpkg curl）、另行构建的 N64Recomp 和 RSPRecomp，以及与 BUILDING.md 所列 SHA-1 一致的 NTSC-U 1.0 ROM 解压副本；游玩时仍使用标准 ROM。","README 称实现了高帧率、宽屏和低输入延迟改进，同时提到极宽画面比例下过场动画边缘的异常。项目未公布等价性或游戏流程测试；固定提交上的 CI 仅构建移植程序，额外输入来自由密钥配置的检出仓库。","项目采用 GPLv3；原游戏、反编译子模块及其他依赖保留各自条款。CONTRIBUTING.md 禁止提交 AI 生成的代码。"],"targets":["game"],"url":"https://github.com/Rainchus/Donkey-Kong-64-Recompiled","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/zeldaret/tp/blob/c8fa8c9e2aab72cf4e5db0e5d1c84a9ea6ee6eb0/configure.py","https://github.com/zeldaret/tp/blob/c8fa8c9e2aab72cf4e5db0e5d1c84a9ea6ee6eb0/tools/project.py","https://github.com/zeldaret/tp/blob/c8fa8c9e2aab72cf4e5db0e5d1c84a9ea6ee6eb0/config/GZ2E01/build.sha1","https://github.com/zeldaret/tp/blob/c8fa8c9e2aab72cf4e5db0e5d1c84a9ea6ee6eb0/LICENSE.md","https://github.com/zeldaret/tp/blob/c8fa8c9e2aab72cf4e5db0e5d1c84a9ea6ee6eb0/.github/workflows/build.yml","https://github.com/zeldaret/tp/actions/runs/28052837187","https://decomp.dev/zeldaret/tp","https://web.archive.org/web/20261020041317/https://decomp.dev/zeldaret/tp/GZ2E01/c8fa8c9e2aab72cf4e5db0e5d1c84a9ea6ee6eb0.json","https://web.archive.org/web/20261020041405/https://decomp.dev/zeldaret/tp/GZ2P01/c8fa8c9e2aab72cf4e5db0e5d1c84a9ea6ee6eb0.json","https://web.archive.org/web/20261020041412/https://decomp.dev/zeldaret/tp/GZ2J01/c8fa8c9e2aab72cf4e5db0e5d1c84a9ea6ee6eb0.json","https://web.archive.org/web/20261020041419/https://decomp.dev/zeldaret/tp/ShieldD/c8fa8c9e2aab72cf4e5db0e5d1c84a9ea6ee6eb0.json","https://web.archive.org/web/20261020042930/https://decomp.dev/zeldaret/tp/RZDE01_00/c8fa8c9e2aab72cf4e5db0e5d1c84a9ea6ee6eb0.json"],"category":"reconstruction-cases","description_en":"Reconstructs Twilight Princess source that compiles back to binaries identical to the originals, building GameCube, Wii and Nvidia Shield releases from one codebase through conditional compilation. README reports the GameCube code as completely matching but not every translation unit linked yet, with Debug and Wii alignment ongoing; the repository ships no assets or assembly and will not produce a port.","description_zh":"重建《塞尔达传说 黄昏公主》的源码，使其能重新编译出与原版一致的二进制文件；GameCube、Wii 与 Nvidia Shield 各版本通过条件编译共用同一套代码。README 报告 GameCube 版代码已完全一致，但尚未链接全部翻译单元，调试版与 Wii 版的对齐仍在进行；仓库不含素材或汇编，也不会制作移植。","entry_url":"https://awesomerea.org/resources/twilight-princess-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/twilight-princess-decomp-case/","evidence_url":"https://github.com/zeldaret/tp/blob/c8fa8c9e2aab72cf4e5db0e5d1c84a9ea6ee6eb0/README.md","group":"cases","id":"twilight-princess-decomp-case","json_url":"https://awesomerea.org/resources/twilight-princess-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/twilight-princess-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/twilight-princess-decomp-case/index.md","name":"Twilight Princess: a decompilation with fully matching GameCube code","name_zh":"《黄昏公主》：GameCube 版代码完全一致的反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes a work-in-progress decompilation with ten listed targets: three GameCube releases (GZ2E01, GZ2P01, GZ2J01), five Wii builds including a kiosk demo, and two Nvidia Shield China builds. Output is the original platform’s executable and REL modules; README states the project will not produce a PC or other port, and Dusklight is a separate project built on this code.","Building needs the user’s own disc image of the chosen version in a supported format (ISO/GCM, RVZ, WIA, WBFS, CISO, NFS, GCZ or TGC), which can be deleted after the first build. The repository contains no game assets or assembly; decomp-toolkit splits the original locally.","Builds run natively on Windows with Python and ninja, or on Linux/macOS with ninja and the automatically downloaded wibo wrapper. configure.py pins decomp-toolkit v1.8.0, objdiff v3.6.1, binutils 2.42-1 and a 20251118 compiler bundle, selecting Metrowerks compiler versions per target and library; objdiff provides per-object diffing.","The default build links source-built objects for units marked complete and original extracted objects for the rest, then checks the output against each version’s build.sha1 (758 entries for GZ2E01). decomp.dev’s reports for the pinned commit list 100% of code matched for all three GameCube versions, with 2,583 of 2,608 units complete, against 54.47% for ShieldD and 47.06% for Wii RZDE01_00. CI runs in a private container holding game files.","LICENSE.md is CC0-1.0; it does not cover Nintendo’s game, disc content or the downloaded compilers."],"requirements_zh":["README 将其描述为进行中的反编译，列出十个目标版本：三个 GameCube 发行版（GZ2E01、GZ2P01、GZ2J01）、包括体验版在内的五个 Wii 版本，以及两个 Nvidia Shield 中国版。产物是原平台的可执行文件和 REL 模块；README 说明项目不会制作 PC 或其他平台的移植，Dusklight 是基于这些代码的独立项目。","构建需要使用者自备所选版本的光盘镜像，格式可为 ISO／GCM、RVZ、WIA、WBFS、CISO、NFS、GCZ 或 TGC，首次构建后即可删除。仓库不含游戏素材或汇编；decomp-toolkit 在本地拆分原文件。","在 Windows 上可直接用 Python 与 ninja 构建；Linux／macOS 需 ninja，并会自动下载 wibo 包装器。configure.py 固定 decomp-toolkit v1.8.0、objdiff v3.6.1、binutils 2.42-1 及 20251118 编译器包，并按目标版本和库选用相应的 Metrowerks 编译器版本；objdiff 用于逐个对象比对。","默认构建对标为完成的单元链接由源码编译的对象，其余单元使用从原文件提取的对象，再按各版本的 build.sha1 校验输出（GZ2E01 有 758 条记录）。decomp.dev 针对该固定提交的报告显示，三个 GameCube 版本的代码均已 100% 匹配，2,608 个单元中有 2,583 个已完成；ShieldD 为 54.47%，Wii 版 RZDE01_00 为 47.06%。CI 在存有游戏文件的私有容器中运行。","LICENSE.md 采用 CC0-1.0，不涵盖任天堂的游戏、光盘内容或下载的编译器。"],"targets":["game"],"url":"https://github.com/zeldaret/tp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/Xeeynamo/sotn-decomp/blob/eddaf22fe86f5189b85fd34915afe6564f19df20/Makefile","https://github.com/Xeeynamo/sotn-decomp/blob/eddaf22fe86f5189b85fd34915afe6564f19df20/LICENSE","https://github.com/Xeeynamo/sotn-decomp/blob/eddaf22fe86f5189b85fd34915afe6564f19df20/CONTRIBUTING.md","https://github.com/Xeeynamo/sotn-decomp/blob/eddaf22fe86f5189b85fd34915afe6564f19df20/.gitmodules","https://github.com/Xeeynamo/sotn-decomp/blob/eddaf22fe86f5189b85fd34915afe6564f19df20/Dockerfile","https://github.com/Xeeynamo/sotn-decomp/blob/eddaf22fe86f5189b85fd34915afe6564f19df20/disks/README","https://github.com/Xeeynamo/sotn-decomp/blob/eddaf22fe86f5189b85fd34915afe6564f19df20/tools/requirements-debian.txt","https://github.com/Xeeynamo/sotn-decomp/blob/eddaf22fe86f5189b85fd34915afe6564f19df20/tools/sotn-assets/build.go","https://github.com/Xeeynamo/sotn-decomp/blob/eddaf22fe86f5189b85fd34915afe6564f19df20/tools/sotn-assets/check.go","https://github.com/Xeeynamo/sotn-decomp/blob/eddaf22fe86f5189b85fd34915afe6564f19df20/config/check.us.sha","https://github.com/Xeeynamo/sotn-decomp/blob/eddaf22fe86f5189b85fd34915afe6564f19df20/config/check.hd.sha","https://github.com/Xeeynamo/sotn-decomp/blob/eddaf22fe86f5189b85fd34915afe6564f19df20/config/check.pspeu.sha","https://github.com/Xeeynamo/sotn-decomp/blob/eddaf22fe86f5189b85fd34915afe6564f19df20/config/check.saturn.sha","https://github.com/Xeeynamo/sotn-decomp/wiki/Build/720bcf3b1212d130b28bb6ccbeda2b887ea96457","https://github.com/Xeeynamo/sotn-decomp/wiki/PC-Port/ebe1b37979d1a1966abb68d388b753e4407cfd3c"],"category":"reconstruction-cases","description_en":"Recreates C source for Castlevania: Symphony of the Night from its PlayStation, PSP and Saturn binaries, aiming for code that compiles byte for byte to the original game files. The work-in-progress build combines decompiled code with assets and assembly extracted from a user-supplied disc image, then checks per-version SHA-1 hashes. Native PC experiments in the same tree are documented as unfinished and are not a released port.","description_zh":"从《恶魔城 月下夜想曲》的 PlayStation、PSP 和 Saturn 版二进制重建 C 源码，目标是逐字节编译出与原游戏文件一致的产物。这一进行中的构建将已反编译代码与从使用者自备光盘镜像提取的素材和汇编结合，再按版本检查 SHA-1 哈希。同一仓库中的原生 PC 实验被文档说明为尚未完成，并不是已发布的移植。","entry_url":"https://awesomerea.org/resources/sotn-matching-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sotn-matching-decomp-case/","evidence_url":"https://github.com/Xeeynamo/sotn-decomp/blob/eddaf22fe86f5189b85fd34915afe6564f19df20/README.md","group":"cases","id":"sotn-matching-decomp-case","json_url":"https://awesomerea.org/resources/sotn-matching-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sotn-matching-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sotn-matching-decomp-case/index.md","name":"Castlevania: Symphony of the Night: matching decompilation across PlayStation, PSP and Saturn builds","name_zh":"Castlevania: Symphony of the Night：覆盖 PlayStation、PSP 与 Saturn 版本的一致性反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes a work-in-progress matching decompilation of four builds: us (PlayStation SLUS-00067, the reference), hd (an unreleased Japanese PS1 build found in Castlevania: Dracula X Chronicles data), pspeu (the European Dracula X Chronicles release) and saturn (the externally developed Saturn port). The Build wiki notes that some non-matching functions remain behind a NON_MATCHING macro and are not guaranteed to be functionally equivalent. README links mutable progress pages on sotn.xee.dev and decomp.dev.","The repository includes no game assets and none of the assembly needed to compile; README requires a prior copy of the game. The Build wiki asks for an unmodified US PlayStation disc as BIN/CUE, while the pinned Makefile reads both PSP-derived builds from a European Dracula X Chronicles ISO and the Saturn build from a Saturn BIN/CUE, each placed under disks/ with a version-specific name.","The Build wiki is tested against Ubuntu 24.04 LTS in CI and also covers Windows through WSL 2 and Arch-based distributions; a Dockerfile provides an Ubuntu Noble environment. Builds need Go, Rust, Python 3.12+, MIPS and SH binutils, a MIPS GCC, ninja and submodule tools such as m2c, maspsx, asm-differ, mipsmatch and decomp-permuter. Project-hosted prebuilt archives, including cc1-psx, mwccpsp, a Cygnus 2.7 toolchain and wibo, are checked against SHA-256 files; the Saturn build also uses dosemu.","Unless SKIP_CHECK is set, the pinned build code hashes its outputs against config/check.<version>.sha, which lists main.exe, DRA.BIN, RIC.BIN and stage and overlay files for us and shorter lists for hd, pspeu and saturn. The wiki still names a make check step that the pinned Makefile does not define. These checks compare file identity for the supplied version.","The Makefile also accepts a pc version and src/pc holds native-port code, but the PC Port wiki page says no working end-to-end port based on the decompilation exists yet. The repository declares AGPL-3.0, while disc images, extracted assets and assembly, and the downloaded compilers keep separate rights. CONTRIBUTING allows coding-agent assistance only for changes contributors can justify and operate manually and requires commits and pull requests without autonomous tooling."],"requirements_zh":["README 将其描述为进行中的一致性反编译，涵盖四个构建：us（PlayStation 版 SLUS-00067，为参考版本）、hd（在 Castlevania: Dracula X Chronicles 数据中发现的未发售日版 PS1 构建）、pspeu（Dracula X Chronicles 欧版）和 saturn（由外部团队开发的 Saturn 移植版）。Build wiki 说明仍有部分不一致函数置于 NON_MATCHING 宏下，不保证功能等价。README 链接 sotn.xee.dev 和 decomp.dev 上会变动的进度页面。","仓库不含游戏素材，也不含编译所需的汇编；README 要求事先拥有游戏副本。Build wiki 要求未经修改的美版 PlayStation 光盘的 BIN/CUE 镜像；固定版本的 Makefile 则从欧版 Dracula X Chronicles ISO 读取两个 PSP 来源的构建，并从 Saturn 的 BIN/CUE 镜像读取 Saturn 构建，这些文件均以对应版本的名称放在 disks/ 下。","Build wiki 以 CI 所用的 Ubuntu 24.04 LTS 为测试环境，也涵盖通过 WSL 2 使用 Windows 以及基于 Arch 的发行版；Dockerfile 提供 Ubuntu Noble 环境。构建需要 Go、Rust、Python 3.12+、MIPS 与 SH binutils、MIPS GCC、ninja，以及 m2c、maspsx、asm-differ、mipsmatch、decomp-permuter 等子模块工具。项目托管的预编译归档（包括 cc1-psx、mwccpsp、Cygnus 2.7 工具链和 wibo）会依据 SHA-256 文件校验；Saturn 构建还需要 dosemu。","除非设置 SKIP_CHECK，固定版本的构建代码会依据 config/check.<version>.sha 对产物计算哈希：us 清单列出 main.exe、DRA.BIN、RIC.BIN 及关卡和覆盖模块文件，hd、pspeu 与 saturn 的清单较短。wiki 仍提到 make check 步骤，但固定版本的 Makefile 并未定义该目标。这些检查比较所供版本的文件一致性。","Makefile 也接受 pc 版本，src/pc 中有原生移植代码，但 PC Port wiki 页面说明目前尚无基于反编译、可端到端运行的移植。仓库声明采用 AGPL-3.0，光盘镜像、提取的素材和汇编以及下载的编译器各有权利约束。CONTRIBUTING 仅允许贡献者能够说明理由并可手动操作的编码代理辅助改动，并要求提交与拉取请求不得由自主工具生成。"],"targets":["game"],"url":"https://github.com/Xeeynamo/sotn-decomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/isledecomp/isle-portable/blob/d0bf04fe605d7ec2a291e65df08bf26712452379/CONTRIBUTING.md","https://github.com/isledecomp/isle-portable/blob/d0bf04fe605d7ec2a291e65df08bf26712452379/CMakeLists.txt","https://github.com/isledecomp/isle-portable/blob/d0bf04fe605d7ec2a291e65df08bf26712452379/.gitmodules","https://github.com/isledecomp/isle-portable/blob/d0bf04fe605d7ec2a291e65df08bf26712452379/.github/workflows/ci.yml","https://github.com/isledecomp/isle-portable/blob/d0bf04fe605d7ec2a291e65df08bf26712452379/installer/README.md","https://github.com/isledecomp/isle-portable/blob/d0bf04fe605d7ec2a291e65df08bf26712452379/installer/index.html","https://github.com/isledecomp/isle-portable/blob/d0bf04fe605d7ec2a291e65df08bf26712452379/docs/README.md","https://github.com/isledecomp/isle-portable/blob/d0bf04fe605d7ec2a291e65df08bf26712452379/LICENSE"],"category":"reconstruction-cases","description_en":"Adapts the LEGO Island decompilation into a portable build for desktop, mobile, console, DOS and Web targets. Windows-only subsystems are replaced with SDL3, miniaudio, iniparser and a custom Direct3D Retained Mode re-implementation, while core gameplay is meant to stay unchanged. It ports reconstructed source rather than checking byte-identical binaries, so it is distinct from the exact-rebuild decompilation case.","description_zh":"将 LEGO Island 反编译源码改造为可在桌面、移动设备、游戏主机、DOS 及 Web 上构建的移植版本。项目以 SDL3、miniaudio、iniparser 和自行重新实现的 Direct3D Retained Mode 替代仅限 Windows 的子系统，并力求保持核心玩法不变。它移植的是重建源码，而不校验与原版逐字节一致的二进制文件，因此有别于精确重构建的反编译案例。","entry_url":"https://awesomerea.org/resources/lego-island-portable-case/","entry_url_zh":"https://awesomerea.org/zh/resources/lego-island-portable-case/","evidence_url":"https://github.com/isledecomp/isle-portable/blob/d0bf04fe605d7ec2a291e65df08bf26712452379/README.md","group":"cases","id":"lego-island-portable-case","json_url":"https://awesomerea.org/resources/lego-island-portable-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/lego-island-portable-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/lego-island-portable-case/index.md","name":"LEGO Island, portable: a multi-platform port of the decompiled source","name_zh":"LEGO Island 可移植版：反编译源码的多平台移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes a portable version of English LEGO Island 1.1 built on isledecomp/isle, aiming at platform independence without gameplay changes or rewrites for their own sake, and the contributor guide accepts LEGO1 changes mainly when they serve platform compatibility. Light modding goes through extensions, which in the reviewed tree include multiplayer, a third-person camera and asset loaders. The status table lists Windows, macOS, Linux, FreeBSD, DOS, Web, iOS, Android, Xbox One, PlayStation Vita, Nintendo Switch and Nintendo 3DS.","An existing copy of LEGO Island is required. The guided installer asks for the retail CD-ROM or a disc image made from it and says any 1.0 or 1.1 retail version in any language works; its optional HD audio pack is limited to English 1.1. The installer describes the isle.pizza Web build as streaming the game without a local disc.","Builds use CMake 3.25+ with a C++17 compiler; by default CMake fetches SDL3 and iniparser, and libsmacker and miniaudio are submodules. README points to the CI workflow instead of a separate build guide; that workflow uses MSVC, MinGW, macOS/Linux toolchains and platform SDKs such as Emscripten, devkitPro, VitaSDK, DJGPP and Android, and the desktop settings tool needs Qt 6. Release downloads are continuous builds of master, which README warns may regress.","CI checks formatting and configures, builds and packages each platform target; it does not run the game or compare its behavior with the original. The per-platform status entries are CI badges. Kaitai Struct descriptions document save, animation, world-database and texture formats.","The repository carries LGPL-3.0; bundled and fetched third-party libraries keep their own terms, and the original game data, LEGO trademarks and the bitmaps the installer takes from the original setup program retain separate rights."],"requirements_zh":["README 将其描述为基于 isledecomp/isle 的英文版 LEGO Island 1.1 可移植版本，目标是实现平台无关，不改动玩法，也不为改进而重写代码；贡献指南表示，对 LEGO1 代码的修改通常只在直接提升平台兼容性时才会接受。轻度模组通过 extensions 实现，所审版本包含多人联机、第三人称镜头和素材加载器。状态表列出 Windows、macOS、Linux、FreeBSD、DOS、Web、iOS、Android、Xbox One、PlayStation Vita、Nintendo Switch 和 Nintendo 3DS。","需已有一份 LEGO Island。引导安装器要求零售版 CD-ROM 或由其制作的光盘镜像，并称任何语言的 1.0 或 1.1 零售版均可；可选的高清音频包仅适用于英文 1.1 版。安装器称 isle.pizza 的 Web 版本以串流方式运行、无需本地光盘。","构建使用 CMake 3.25+ 和 C++17 编译器；CMake 默认下载 SDL3 和 iniparser，libsmacker 与 miniaudio 为子模块。README 未提供单独的构建指南，而是让读者参考 CI 工作流；该工作流使用 MSVC、MinGW、macOS／Linux 工具链以及 Emscripten、devkitPro、VitaSDK、DJGPP、Android 等平台 SDK，桌面设置工具需要 Qt 6。发布下载为 master 的持续构建，README 提醒可能出现回归。","CI 检查代码格式，并为各平台目标完成配置、构建和打包；它不运行游戏，也不与原版行为比较。各平台状态项是 CI 徽章。Kaitai Struct 描述文件记录了存档、动画、世界数据库和纹理格式。","仓库采用 LGPL-3.0；内置及下载的第三方库各自适用其条款，原游戏数据、LEGO 商标以及安装器取自原安装程序的位图仍有各自权利约束。"],"targets":["game"],"url":"https://github.com/isledecomp/isle-portable","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/wurlyfox/c1/blob/256fdcef59f15a190290cc19db3fa9a707843b69/doc/issues.md","https://github.com/wurlyfox/c1/blob/256fdcef59f15a190290cc19db3fa9a707843b69/doc/coding.md","https://github.com/wurlyfox/c1/blob/256fdcef59f15a190290cc19db3fa9a707843b69/doc/changelog.md","https://github.com/wurlyfox/c1/blob/256fdcef59f15a190290cc19db3fa9a707843b69/doc/outline.md","https://github.com/wurlyfox/c1/blob/256fdcef59f15a190290cc19db3fa9a707843b69/src/main.c","https://github.com/wurlyfox/c1/blob/256fdcef59f15a190290cc19db3fa9a707843b69/Makefile"],"category":"reconstruction-cases","description_en":"Ports the original PlayStation Crash Bandicoot game code to C function by function; its coding standard labels functions with the addresses of their original implementations. Only the PC build, using OpenGL, SDL2 and FluidSynth, currently works; it loads asset files from the user’s game disc and is only partially playable.","description_zh":"将 PlayStation 版《古惑狼》的原始游戏代码逐函数移植为 C 语言；其编码规范要求为函数标注原实现的地址。目前只有基于 OpenGL、SDL2 和 FluidSynth 的 PC 构建可用；它读取用户自备游戏光盘中的素材文件，仅能部分游玩。","entry_url":"https://awesomerea.org/resources/crash-bandicoot-c1-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/crash-bandicoot-c1-port-case/","evidence_url":"https://github.com/wurlyfox/c1/blob/256fdcef59f15a190290cc19db3fa9a707843b69/README.md","group":"cases","id":"crash-bandicoot-c1-port-case","json_url":"https://awesomerea.org/resources/crash-bandicoot-c1-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/crash-bandicoot-c1-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/crash-bandicoot-c1-port-case/index.md","name":"c1: a C port of PlayStation Crash Bandicoot","name_zh":"c1：PlayStation 版《古惑狼》的 C 语言移植","reconstruction_method":"decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["limits","prerequisites","prerequisites","testing"],"requirements":["The README reports the code as 100% ported but functionality at 78%. The tracked issue list includes crashes in several levels, incorrect camera and collision behavior, broken demo mode and title states, and behavior that changes under compiler optimization; the PlayStation (Psy-Q) build does not work.","Running needs the NSD/NSF asset files from the user’s own Crash Bandicoot disc; the repository ships no game data and the README does not name a supported disc region or version. The game boots into the title sequence unless a constant is changed and the code recompiled.","Only 32-bit x86 executables are supported, built with GNU Make and a 32-bit GNU toolchain (multilib GCC/G++ on 64-bit hosts) against OpenGL 2.0+, SDL2 and FluidSynth (cimgui is bundled). Compilation has been tested only on Ubuntu/Debian; there are no releases, and the last commit at review is 2024-01-22.","No byte-matching, equivalence or automated gameplay check is published. The repository has no license file, so reuse rights are unspecified, and the original game retains its own rights."],"requirements_zh":["README 称代码已 100% 移植，但功能完成度为 78%。已记录的问题包括多个关卡崩溃、镜头与碰撞行为不正确、演示模式和标题状态失效，以及开启编译器优化后行为改变；PlayStation（Psy-Q）构建无法使用。","运行时需要用户自有《古惑狼》光盘中的 NSD／NSF 素材文件；仓库不附带游戏数据，README 也未注明支持的光盘地区或版本。游戏默认进入标题流程，若要更改需修改常量并重新编译。","仅支持 32 位 x86 可执行文件，需使用 GNU Make 和 32 位 GNU 工具链（64 位宿主上为 multilib GCC／G++），并依赖 OpenGL 2.0+、SDL2 和 FluidSynth（已内置 cimgui）。编译仅在 Ubuntu／Debian 上测试过；没有发布版本，审阅时最后一次提交为 2024-01-22。","项目未公布字节一致、等价性或自动化游戏流程检查。仓库没有许可证文件，复用权利未明确，原游戏保留各自权利。"],"targets":["game"],"url":"https://github.com/wurlyfox/c1","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/Odrannnn/MetroidPrimePort/blob/26febe4e09685ab68e7e0a9822934c0daa306a22/NOTICE","https://github.com/Odrannnn/MetroidPrimePort/blob/26febe4e09685ab68e7e0a9822934c0daa306a22/LICENSE","https://github.com/Odrannnn/MetroidPrimePort/blob/26febe4e09685ab68e7e0a9822934c0daa306a22/docs/NATIVE_PORT.md","https://github.com/Odrannnn/MetroidPrimePort/blob/26febe4e09685ab68e7e0a9822934c0daa306a22/.github/workflows/native-linux.yml","https://github.com/Odrannnn/MetroidPrimePort/releases/tag/v0.29.0"],"category":"reconstruction-cases","description_en":"Compiles the PrimeDecomp decompilation of Metroid Prime’s game and engine code as native C++20 for Linux, Windows and Android, with an experimental macOS build. Aurora supplies the GameCube SDK compatibility layer and rendering, and the port reads a user-supplied disc image at run time. The author states that parts were written with AI coding assistants under their oversight.","description_zh":"将 PrimeDecomp 对《密特罗德 Prime》游戏与引擎代码的反编译结果编译为原生 C++20 程序，支持 Linux、Windows 和 Android，另有实验性 macOS 版本。Aurora 提供 GameCube SDK 兼容层和渲染，移植版在运行时读取使用者自备的光盘镜像。作者声明部分代码是在其监督下借助 AI 编程助手编写的。","entry_url":"https://awesomerea.org/resources/metroid-prime-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/metroid-prime-port-case/","evidence_url":"https://github.com/Odrannnn/MetroidPrimePort/blob/26febe4e09685ab68e7e0a9822934c0daa306a22/README.md","group":"cases","id":"metroid-prime-port-case","json_url":"https://awesomerea.org/resources/metroid-prime-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/metroid-prime-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/metroid-prime-port-case/index.md","name":"Metroid Prime Port: an AI-assisted native port of the PrimeDecomp decompilation","name_zh":"Metroid Prime Port：AI 辅助完成的 PrimeDecomp 反编译原生移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed port-branch commit is 16 commits after release v0.29.0 (2026-10-17), which ships Windows, Linux tarball, AppImage, Flatpak, Android and macOS arm64 packages; the macOS build is experimental and has not been played on a real Mac. The repository forks PrimeDecomp/prime and adds widescreen, uncapped frame rate, controls, save conversion, a randomizer and an Archipelago client. It does not link the separate DolRecomp recompilation experiment, and its decomp/ GameCube build is not used by the port.","No game content is included: supply a GameCube USA 1.00, 1.01 or 1.02 (GM8E01) or PAL (GM8P01) disc image as .iso, .gcm, .rvz, .wbfs, .ciso or .nkit. Japanese, Korean, Wii Trilogy and Remastered releases are not run as the base game; an experimental importer can read models and effects from the user’s own Remastered dump.","Builds need CMake 3.25+, Ninja, a C++20 compiler and a C23-capable C compiler for MusyX; Windows uses clang-cl from LLVM in an MSVC developer environment, and Android builds through Gradle. Configuring downloads about a dozen SHA-256-checked dependencies; Linux links several statically and then needs only OpenSSL 3 and the C/C++ runtime. The macOS app is ad-hoc signed and not notarized.","CI builds and runs the disc-free CTest port suite on Linux with GCC 14 and Clang 18 for pushes and pull requests; Windows and macOS workflows run weekly or by hand, and the Windows job also checks that the package reaches main and reports the missing disc. Opt-in real-disc smoke drivers cover lifecycle, mouse, area-reload and world-jump scenarios, with results reported by the author. The 1.00 sequence-break option restores named script locks, not missing 1.00 geometry.","MIT covers only the project’s platform layer, scripts, tests, tools and docs. NOTICE says the game code in src/ and include/, the decompiled Dolphin SDK and the config/ symbol data derive from the retail executable, remain with their owners and are outside that grant, and that no game assets may be packaged; vendored and fetched components keep their own licenses. AI coding assistance is author-disclosed."],"requirements_zh":["所审阅的 port 分支提交位于 v0.29.0 版（2026-10-17）之后 16 个提交；该版本提供 Windows、Linux 压缩包、AppImage、Flatpak、Android 和 macOS arm64 安装包，其中 macOS 版本仍属实验性质，尚无人在真实 Mac 上游玩。仓库派生自 PrimeDecomp/prime，增加了宽屏、不锁帧率、操作、存档转换、随机化和 Archipelago 客户端等功能。它不链接另一个 DolRecomp 重编译实验，decomp/ 中的 GameCube 构建也不用于移植版。","仓库不含任何游戏内容：需自备 GameCube 美版 1.00、1.01 或 1.02（GM8E01）或 PAL 版（GM8P01）光盘镜像，格式可为 .iso、.gcm、.rvz、.wbfs、.ciso 或 .nkit。日版、韩版、Wii 三部曲和重制版不能作为基础游戏运行；实验性导入功能可从使用者自备的重制版镜像读取模型和特效。","构建需要 CMake 3.25+、Ninja、C++20 编译器，以及支持 C23 的 C 编译器（供 MusyX 使用）；Windows 在 MSVC 开发者环境中使用 LLVM 的 clang-cl，Android 通过 Gradle 构建。配置时会下载约十几个经 SHA-256 校验的依赖；Linux 版本静态链接其中多项，运行时只需 OpenSSL 3 和 C/C++ 运行库。macOS 应用仅作临时签名，未经公证。","CI 在推送和拉取请求时于 Linux 上用 GCC 14 与 Clang 18 构建并运行无需光盘的 CTest 移植测试；Windows 和 macOS 工作流每周运行或手动触发，Windows 作业还检查安装包能进入 main 并报告缺少光盘。可选的真实光盘冒烟驱动覆盖生命周期、鼠标、区域重载和世界跳转等场景，结果由作者报告。1.00 版速通兼容选项只恢复指定的脚本锁，不恢复 1.00 版缺失的几何结构。","MIT 仅覆盖项目自身的平台层、脚本、测试、工具和文档。NOTICE 说明 src/ 与 include/ 中的游戏代码、反编译的 Dolphin SDK 以及 config/ 中的符号数据均源自零售版可执行文件，归各自所有者，不在该授权范围内，且不得随构建打包任何游戏素材；内置和下载的组件保留各自许可。AI 编程辅助由作者自行披露。"],"targets":["game"],"url":"https://github.com/Odrannnn/MetroidPrimePort","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/zeldaret/tww/blob/8b93b372dc8e841f12ddfb7e0215626f62b05417/configure.py","https://github.com/zeldaret/tww/blob/8b93b372dc8e841f12ddfb7e0215626f62b05417/tools/project.py","https://github.com/zeldaret/tww/blob/8b93b372dc8e841f12ddfb7e0215626f62b05417/config/GZLE01/build.sha1","https://github.com/zeldaret/tww/blob/8b93b372dc8e841f12ddfb7e0215626f62b05417/CONTRIBUTING.md","https://github.com/zeldaret/tww/blob/8b93b372dc8e841f12ddfb7e0215626f62b05417/LICENSE","https://github.com/zeldaret/tww/blob/8b93b372dc8e841f12ddfb7e0215626f62b05417/.github/workflows/build.yml","https://github.com/zeldaret/tww/actions/runs/38619222013","https://decomp.dev/zeldaret/tww","https://web.archive.org/web/20261020041528/https://decomp.dev/zeldaret/tww/GZLE01/8b93b372dc8e841f12ddfb7e0215626f62b05417.json","https://web.archive.org/web/20261020041536/https://decomp.dev/zeldaret/tww/GZLJ01/8b93b372dc8e841f12ddfb7e0215626f62b05417.json","https://web.archive.org/web/20261020041545/https://decomp.dev/zeldaret/tww/GZLP01/8b93b372dc8e841f12ddfb7e0215626f62b05417.json","https://web.archive.org/web/20261020041613/https://decomp.dev/zeldaret/tww/D44J01/8b93b372dc8e841f12ddfb7e0215626f62b05417.json"],"category":"reconstruction-cases","description_en":"Reconstructs source for The Wind Waker’s GameCube executable and REL modules across the USA/Korea, PAL and Japanese releases and a Japanese kiosk demo. Matched units are compiled from source and linked with objects split from the user’s disc, then checked against per-version SHA-1 hashes; the repository ships no assets or assembly and covers the GameCube game, not the HD remaster.","description_zh":"为《塞尔达传说 风之杖》GameCube 版的可执行文件和 REL 模块重建源码，涵盖美版／韩版、PAL 版、日版及日本体验版。已匹配的单元由源码编译，再与从使用者光盘中拆分出的对象链接，并按各版本的 SHA-1 哈希校验；仓库不含素材或汇编，范围是 GameCube 版而非 HD 重制版。","entry_url":"https://awesomerea.org/resources/wind-waker-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/wind-waker-decomp-case/","evidence_url":"https://github.com/zeldaret/tww/blob/8b93b372dc8e841f12ddfb7e0215626f62b05417/README.md","group":"cases","id":"wind-waker-decomp-case","json_url":"https://awesomerea.org/resources/wind-waker-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/wind-waker-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wind-waker-decomp-case/index.md","name":"The Wind Waker: a GameCube decompilation with hash-checked relinking","name_zh":"《风之杖》：以哈希校验重新链接的 GameCube 版反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes a work-in-progress GameCube decompilation supporting every GameCube version: GZLE01 (USA Rev 0 and Korea Rev 48), GZLP01 (PAL), GZLJ01 (Japan) and the D44J01 Japanese kiosk demo. Output is the original executable and REL modules, not a port.","Building needs the user’s own disc image of the chosen version in a supported format (ISO/GCM, RVZ, WIA, WBFS, CISO, NFS, GCZ or TGC), which can be deleted after the first build. The repository contains no game assets or assembly; decomp-toolkit splits the original locally.","Builds run natively on Windows with Python and ninja, or on Linux/macOS with ninja and the automatically downloaded wibo wrapper. configure.py pins decomp-toolkit v1.8.3, objdiff v3.7.3, binutils 2.42-1 and a 20251118 compiler bundle; README also describes a shared Ghidra project as an aid whose output is not accurate enough to copy directly.","The default build links source-built objects only for units marked complete, uses original extracted objects for the rest and checks the result against the version’s build.sha1 (415–417 entries per version). decomp.dev’s reports for the pinned commit list 79.58% of GZLE01 code (32,968 of 39,324 functions) matched, 78.38–78.65% for the other retail versions and 74.08% for the demo. CI runs in a private container holding game files.","The repository carries CC0-1.0, which does not cover Nintendo’s game, disc content or the downloaded compilers. CONTRIBUTING.md rejects primarily AI-generated pull requests."],"requirements_zh":["README 将其描述为进行中的 GameCube 版反编译，支持全部 GameCube 版本：GZLE01（美版 Rev 0 与韩版 Rev 48）、GZLP01（PAL 版）、GZLJ01（日版）以及 D44J01 日本体验版。产物是原可执行文件和 REL 模块，不是移植。","构建需要使用者自备所选版本的光盘镜像，格式可为 ISO／GCM、RVZ、WIA、WBFS、CISO、NFS、GCZ 或 TGC，首次构建后即可删除。仓库不含游戏素材或汇编；decomp-toolkit 在本地拆分原文件。","在 Windows 上可直接用 Python 与 ninja 构建；Linux／macOS 需 ninja，并会自动下载 wibo 包装器。configure.py 固定 decomp-toolkit v1.8.3、objdiff v3.7.3、binutils 2.42-1 及 20251118 编译器包；README 还介绍了一个共享 Ghidra 项目作为辅助，但其输出不够准确，不能直接复制使用。","默认构建只对标为完成的单元链接由源码编译的对象，其余单元使用从原文件提取的对象，再按该版本的 build.sha1 校验结果（每个版本 415–417 条记录）。decomp.dev 针对该固定提交的报告显示，GZLE01 有 79.58% 的代码（39,324 个函数中的 32,968 个）已匹配，其他零售版本为 78.38%–78.65%，体验版为 74.08%。CI 在存有游戏文件的私有容器中运行。","仓库采用 CC0-1.0，不涵盖任天堂的游戏、光盘内容或下载的编译器。CONTRIBUTING.md 拒绝主要由 AI 生成的拉取请求。"],"targets":["game"],"url":"https://github.com/zeldaret/tww","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/RSDKModding/Sonic-Mania-Decompilation/blob/9dc699428420d752af9767bdb13f585ee0881bc0/LICENSE.md","https://github.com/RSDKModding/Sonic-Mania-Decompilation/blob/9dc699428420d752af9767bdb13f585ee0881bc0/.gitmodules","https://github.com/RSDKModding/Sonic-Mania-Decompilation/blob/9dc699428420d752af9767bdb13f585ee0881bc0/.github/workflows/build.yml","https://github.com/RSDKModding/Sonic-Mania-Decompilation/releases/tag/v1.1.1"],"category":"reconstruction-cases","description_en":"Reconstructs Sonic Mania’s game code in C and builds it with the separately decompiled RSDKv5 or RSDKv5U engine for Windows, Linux, Switch and Android. Assets must come from an official Sonic Mania (Plus) release; the project adds a mod loader and can build several retail versions. Its license describes the code as mostly functionally the same as the original, not byte-matching.","description_zh":"以 C 重建《索尼克狂欢》的游戏代码，并与另行反编译的 RSDKv5 或 RSDKv5U 引擎一起构建，支持 Windows、Linux、Switch 和 Android。素材必须来自官方发行的 Sonic Mania (Plus)；项目加入了模组加载器，并可构建多个零售版本。其许可证称代码大多在功能上与原作相同，而不是逐字节一致。","entry_url":"https://awesomerea.org/resources/sonic-mania-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sonic-mania-decomp-case/","evidence_url":"https://github.com/RSDKModding/Sonic-Mania-Decompilation/blob/9dc699428420d752af9767bdb13f585ee0881bc0/README.md","group":"cases","id":"sonic-mania-decomp-case","json_url":"https://awesomerea.org/resources/sonic-mania-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sonic-mania-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sonic-mania-decomp-case/index.md","name":"Sonic Mania: a game-code decompilation for the RSDKv5 engine","name_zh":"Sonic Mania：面向 RSDKv5 引擎的游戏代码反编译重建","reconstruction_method":"decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The repository describes itself as a complete decompilation of Sonic Mania (2017); its license says it also contains original code and that most code is expected to be functionally the same. It adds a built-in mod loader and API and can build 1.00 (console launch), 1.03 (PC launch) and 1.06 (Plus update) variants. The reviewed commit is 15 commits after release v1.1.1 (2025-11-01).","It does not run without assets from an official Sonic Mania (Plus) release for Windows (Steam or Epic Games Store), Switch, PS4 or Xbox One; the Netflix Games version is not supported. By default it builds with the bundled RSDKv5 engine submodule at revision 3 (RSDKv5U) and game version 6, the last Steam release; with WITH_RSDK off it builds only the game code, and RETRO_DISABLE_PLUS is to be enabled for distribution builds.","Clone recursively, because GitHub’s source ZIPs omit the required submodules. CMake builds use Visual Studio with vcpkg (libtheora, libogg, GLEW, GLFW3, SDL2) on Windows, build tools with GLEW, GLFW and libtheora development packages on Linux, devkitPro packages for Switch, and the engine repository’s instructions for Android. GL builds need a user-made shader mod for videos and filters.","CI builds Windows x86 and x64 and Linux binaries against both the RSDKv5 and RSDKv5U configurations. The project publishes no comparison with the original binaries, and its FAQ says bugs present in official releases will mostly not be fixed.","The custom Sonic Mania Decompilation Source Code License v1 allows copying, modification and distribution only for non-commercial use, requires stating that the code is not the distributor’s, forbids distributing game assets other than unique modded ones, and binds forks to the same terms. Sega’s game and assets keep their own rights."],"requirements_zh":["仓库自述为《索尼克狂欢》（2017）的完整反编译；其许可证说明仓库中也有原创代码，且大部分代码预期在功能上与原作相同。项目加入了内置模组加载器与 API，并可构建 1.00（主机首发）、1.03（PC 首发）和 1.06（Plus 更新）版本。所审阅提交位于 v1.1.1 版（2025-11-01）之后 15 个提交。","缺少官方发行版 Sonic Mania (Plus) 的素材便无法运行，素材可来自 Windows（Steam 或 Epic Games Store）、Switch、PS4 或 Xbox One 版本；不支持 Netflix Games 版本。默认会连同内置的 RSDKv5 引擎子模块一起构建，引擎修订版为 3（RSDKv5U），游戏版本为 6，即最后一个 Steam 版本；关闭 WITH_RSDK 时只构建游戏代码，用于分发的构建应开启 RETRO_DISABLE_PLUS。","须递归克隆仓库，因为 GitHub 的源码 ZIP 不含所需子模块。CMake 构建在 Windows 上使用 Visual Studio 与 vcpkg（libtheora、libogg、GLEW、GLFW3、SDL2），在 Linux 上使用构建工具及 GLEW、GLFW、libtheora 开发包，Switch 使用 devkitPro 软件包，Android 则按引擎仓库的说明构建。GL 构建需要使用者自建着色器模组，才能正常显示视频和滤镜。","CI 针对 RSDKv5 和 RSDKv5U 两种配置构建 Windows x86、x64 及 Linux 版本。项目未公开与原版二进制文件的对照结果，其常见问题还说明官方版本中已有的缺陷大多不会修复。","自定义的《Sonic Mania 反编译源码许可证 v1》仅允许非商业用途的复制、修改和分发，要求声明代码并非分发者所有，禁止分发独特模组素材以外的游戏素材，并要求所有派生版本遵守同一许可。Sega 的游戏和素材保留各自权利。"],"targets":["game"],"url":"https://github.com/RSDKModding/Sonic-Mania-Decompilation","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/BlackLabelHQ/MediEvilRecomp/blob/b9e46db34db40d6e5c8e19b538e4d517299a4012/disc/README.md","https://github.com/BlackLabelHQ/MediEvilRecomp/blob/b9e46db34db40d6e5c8e19b538e4d517299a4012/config/MediEvil.json","https://github.com/BlackLabelHQ/MediEvilRecomp/blob/b9e46db34db40d6e5c8e19b538e4d517299a4012/changelog.md","https://github.com/BlackLabelHQ/MediEvilRecomp/blob/b9e46db34db40d6e5c8e19b538e4d517299a4012/.gitmodules","https://github.com/BlackLabelHQ/MediEvilRecomp/blob/b9e46db34db40d6e5c8e19b538e4d517299a4012/RecompOne.MediEvil.csproj","https://github.com/BlackLabelHQ/MediEvilRecomp/blob/b9e46db34db40d6e5c8e19b538e4d517299a4012/.github/workflows/build.yml","https://github.com/BlackLabelHQ/MediEvilRecomp/releases/tag/v0.2b","https://github.com/BlackLabelHQ/RecompOne/blob/1272fb80b1638efdae8f281ff6c6e90f93866ae6/README.md","https://github.com/BlackLabelHQ/RecompOne/blob/1272fb80b1638efdae8f281ff6c6e90f93866ae6/LICENSE"],"category":"reconstruction-cases","description_en":"Statically recompiles the North American PlayStation release of MediEvil into C# with the RecompOne recompiler and runtime. The runtime stands in for BIOS, GPU, CD-ROM and other hardware services, and project patches change rendering, widescreen and terrain behavior. README stresses that this is a recompilation, not a decompilation, and labels it an open beta.","description_zh":"使用 RecompOne 重编译器及运行时，将北美版 PlayStation《MediEvil》静态重编译为 C# 代码。运行时代为提供 BIOS、GPU、CD-ROM 等硬件服务，项目补丁则修改渲染、宽屏和地形表现。README 强调这是重编译而非反编译，并将其标为公开测试版。","entry_url":"https://awesomerea.org/resources/medievil-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/medievil-recomp-case/","evidence_url":"https://github.com/BlackLabelHQ/MediEvilRecomp/blob/b9e46db34db40d6e5c8e19b538e4d517299a4012/README.md","group":"cases","id":"medievil-recomp-case","json_url":"https://awesomerea.org/resources/medievil-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/medievil-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/medievil-recomp-case/index.md","name":"MediEvil Recomp: a PlayStation static recompilation to C#","name_zh":"MediEvil Recomp：PlayStation 游戏静态重编译为 C#","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed tree targets the North American PlayStation release (SCUS-942.27); config/MediEvil.json lists the main executable and its overlays for RecompOne to translate. README calls this an open beta in which things will break, with stable 1.0 unreleased. The v0.2b changelog replaces the PGXP renderer with a native floating-point rendering patch and adds widescreen fixes and an automatic updater.","Requires a legally owned North American MediEvil disc in bin/cue or CHD form; README and disc/README.md name the two track .bin files and the .cue expected in disc/. The project does not supply game files. RecompOne states that its runtime needs no BIOS or other Sony files, only the game files.","Building needs Git with the pinned RecompOne and ShaderMod submodules and the .NET 10 SDK. Windows batch scripts or a manual RecompOne run against config/MediEvil.json generate the game code, which is then compiled as a .NET 10 application. Running needs the .NET 10 runtime, OpenAL and an OpenGL 2.1 GPU; v0.2b release packages cover Windows x64/arm64, macOS x64/arm64 and Linux x64.","The build workflow recompiles and compiles the project using disc inputs from a separate access-restricted repository, then uploads the build; it does not run the game or compare behavior with the original. README credits references from an unnamed decompilation for function names and patches.","MediEvilRecomp has no license file in the reviewed tree, so its reuse terms are unstated; the RecompOne submodule declares MIT. Original game content, including the executable code the recompiler translates, retains separate rights. Both READMEs state that no AI was used to write the code and that AI-generated contributions are rejected."],"requirements_zh":["所审版本针对北美版 PlayStation 发行版（SCUS-942.27）；config/MediEvil.json 列出供 RecompOne 转译的主程序及其覆盖模块。README 称其为公开测试版，功能必然会出现故障，稳定的 1.0 版尚未发布。v0.2b 更新日志以原生浮点渲染补丁取代 PGXP 渲染器，并加入宽屏修正和自动更新。","需合法拥有的北美版 MediEvil 光盘，格式为 bin/cue 或 CHD；README 和 disc/README.md 列明 disc/ 目录中应放置的两个音轨 .bin 文件及 .cue 文件。项目不提供游戏文件。RecompOne 称其运行时只需游戏文件，不需要 BIOS 或其他 Sony 文件。","构建需要 Git、固定版本的 RecompOne 与 ShaderMod 子模块，以及 .NET 10 SDK。通过 Windows 批处理脚本，或手动以 config/MediEvil.json 运行 RecompOne，生成游戏代码，再将其编译为 .NET 10 应用。运行需 .NET 10 运行时、OpenAL 及支持 OpenGL 2.1 的 GPU；v0.2b 发布包涵盖 Windows x64／arm64、macOS x64／arm64 和 Linux x64。","构建工作流使用另一个访问受限仓库中的光盘输入完成重编译和编译，然后上传构建产物；它不运行游戏，也不与原版行为比较。README 致谢一个未具名的反编译项目，其成果用作函数命名和补丁参考。","所审版本的 MediEvilRecomp 没有许可证文件，复用条款未作说明；RecompOne 子模块声明采用 MIT。原游戏内容，包括重编译器所转译的可执行代码，仍有各自权利约束。两份 README 均称编写代码时未使用 AI，并拒绝 AI 生成的贡献。"],"targets":["game"],"url":"https://github.com/BlackLabelHQ/MediEvilRecomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/Zumbo06/Crash2Recomp/blob/48036cf3b49dfe4343e5c093d1df8a7b12617f81/tuning/NOTES.md","https://github.com/Zumbo06/Crash2Recomp/blob/48036cf3b49dfe4343e5c093d1df8a7b12617f81/_build/Crash2Recomp/README.md","https://github.com/Zumbo06/Crash2Recomp/blob/48036cf3b49dfe4343e5c093d1df8a7b12617f81/_build/Crash2Recomp/CMakeLists.txt","https://github.com/Zumbo06/Crash2Recomp/blob/48036cf3b49dfe4343e5c093d1df8a7b12617f81/_build/build_recompiler.ps1","https://github.com/Zumbo06/Crash2Recomp/tree/48036cf3b49dfe4343e5c093d1df8a7b12617f81/tuning/patches","https://github.com/Zumbo06/Crash2Recomp/tree/48036cf3b49dfe4343e5c093d1df8a7b12617f81/tuning/renderer_parity","https://github.com/Zumbo06/Crash2Recomp/releases/tag/v0.9.6"],"category":"reconstruction-cases","description_en":"A Windows launcher that uses the PSXRecomp recompiler and runtime to translate the user’s Crash Bandicoot 2: Cortex Strikes Back disc to C and compile it locally, so the game runs as native code with an emulated PlayStation hardware layer. The repository holds the launcher, a patched vendored runtime and a long bring-up log; it distributes no game code or data.","description_zh":"一个 Windows 启动器，借助 PSXRecomp 重编译器与运行时，将用户自备的《古惑狼 2》光盘转换为 C 代码并在本地编译，使游戏以原生代码配合模拟的 PlayStation 硬件层运行。仓库包含启动器、打过补丁的内置运行时以及详细的调试记录，不分发任何游戏代码或数据。","entry_url":"https://awesomerea.org/resources/crash2recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/crash2recomp-case/","evidence_url":"https://github.com/Zumbo06/Crash2Recomp/blob/48036cf3b49dfe4343e5c093d1df8a7b12617f81/README.md","group":"cases","id":"crash2recomp-case","json_url":"https://awesomerea.org/resources/crash2recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/crash2recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/crash2recomp-case/index.md","name":"Crash Bandicoot 2 Recompiled: a PSXRecomp native build","name_zh":"Crash Bandicoot 2 Recompiled：基于 PSXRecomp 的原生构建","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","testing","license"],"requirements":["Needs a disc image the user owns of the North American release (serial SCUS-94154), as .cue/.bin or .chd; the launcher checks tracks, sectors and boot serial and hashes the image. No PlayStation BIOS is required because MIT-licensed OpenBIOS is included, and locally generated files derived from the disc must not be redistributed.","Release v0.9.6 (2026-10-08) is a 64-bit Windows 10+ bundle; a first build takes about 3 GB of disk space and five to twenty minutes. Source use needs Python 3.11+ with PySide6 and the PSXRecomp MinGW-w64 Clang toolchain; the notes say MSVC is unsupported, and 59 runtime patches are kept in tuning/patches.","The README calls the game completable from start to finish but a work-in-progress preview with minor sound and graphical issues. Streamed level-code overlays are compiled natively when possible and otherwise fall back to a MIPS interpreter; the opt-in 60 FPS mode runs the emulated CPU at 200% and is not verified across the whole game.","Published checks are launcher settings and UI smoke tests, scenario scripts and a harness comparing its own Direct3D 12 and OpenGL renderers.","There is no top-level license file. The README lists PolyForm Noncommercial 1.0.0 for PSXRecomp, MIT for OpenBIOS, zlib for SDL3 and LGPLv3 for Qt/PySide6; the game and its trademarks belong to their owners."],"requirements_zh":["需要用户自有北美版（序列号 SCUS-94154）的光盘镜像，格式为 .cue／.bin 或 .chd；启动器会检查音轨、扇区和启动序列号并计算镜像哈希。由于内置 MIT 许可的 OpenBIOS，无需 PlayStation BIOS；本地生成的、源自光盘的文件不得再分发。","v0.9.6 版本（2026-10-08）为 64 位 Windows 10+ 安装包；首次构建约占 3 GB 磁盘空间、耗时五到二十分钟。从源码使用需要 Python 3.11+ 与 PySide6 以及 PSXRecomp 的 MinGW-w64 Clang 工具链；记录称不支持 MSVC，tuning/patches 中保存了 59 个运行时补丁。","README 称游戏可从头到尾通关，但仍是存在轻微声音与画面问题的开发中预览版。流式加载的关卡代码覆盖段会尽量原生编译，否则回退到 MIPS 解释器；可选的 60 FPS 模式会将模拟 CPU 提速到 200%，且未在全游戏范围内验证。","已公开的检查包括启动器设置与界面冒烟测试、场景脚本，以及比较其自身 Direct3D 12 与 OpenGL 渲染器的测试框架。","仓库没有顶层许可证文件。README 列出 PSXRecomp 采用 PolyForm Noncommercial 1.0.0、OpenBIOS 采用 MIT、SDL3 采用 zlib、Qt／PySide6 采用 LGPLv3；游戏及其商标归各自权利人所有。"],"targets":["game"],"url":"https://github.com/Zumbo06/Crash2Recomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/SMGCommunity/Petari/blob/86ae7a3d3241adf07d5d3f9949e0462cccc583c1/configure.py","https://github.com/SMGCommunity/Petari/blob/86ae7a3d3241adf07d5d3f9949e0462cccc583c1/CONTRIBUTING.md","https://github.com/SMGCommunity/Petari/blob/86ae7a3d3241adf07d5d3f9949e0462cccc583c1/config/RMGK01/config.yml","https://github.com/SMGCommunity/Petari/blob/86ae7a3d3241adf07d5d3f9949e0462cccc583c1/config/RMGK01/build.sha1","https://github.com/SMGCommunity/Petari/blob/86ae7a3d3241adf07d5d3f9949e0462cccc583c1/.github/workflows/build.yml","https://github.com/SMGCommunity/Petari/blob/86ae7a3d3241adf07d5d3f9949e0462cccc583c1/LICENSE","https://decomp.dev/SMGCommunity/Petari","https://web.archive.org/web/20261020041620/https://decomp.dev/SMGCommunity/Petari/RMGK01/86ae7a3d3241adf07d5d3f9949e0462cccc583c1.json","https://web.archive.org/web/20261020041653/https://decomp.dev/SMGCommunity/Petari/RMGJ01/86ae7a3d3241adf07d5d3f9949e0462cccc583c1.json","https://web.archive.org/web/20261020041719/https://decomp.dev/SMGCommunity/Petari/RMGE01/86ae7a3d3241adf07d5d3f9949e0462cccc583c1.json","https://web.archive.org/web/20261020041726/https://decomp.dev/SMGCommunity/Petari/RMGP01/86ae7a3d3241adf07d5d3f9949e0462cccc583c1.json"],"category":"reconstruction-cases","description_en":"Reconstructs Super Mario Galaxy’s Wii code as C++ that rebuilds, object by object, against main.dol files extracted from the user’s own Japanese, North American, PAL or Korean disc. Matched objects are linked from source and checked with objdiff and a target hash. The project describes itself as a work in progress, separate from any PC port, and says it does not accept AI-generated decompilation.","description_zh":"将 Super Mario Galaxy 的 Wii 代码重建为 C++，并以使用者从自有日版、北美版、PAL 版或韩版光盘中提取的 main.dol 为目标，逐个目标文件重建。已匹配的目标文件由源码链接，并通过 objdiff 和目标哈希检查。项目自称仍在进行中，与任何 PC 移植无关，并表示不接受 AI 生成的反编译代码。","entry_url":"https://awesomerea.org/resources/petari-smg-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/petari-smg-decomp-case/","evidence_url":"https://github.com/SMGCommunity/Petari/blob/86ae7a3d3241adf07d5d3f9949e0462cccc583c1/README.md","group":"cases","id":"petari-smg-decomp-case","json_url":"https://awesomerea.org/resources/petari-smg-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/petari-smg-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/petari-smg-decomp-case/index.md","name":"Petari: a matching Super Mario Galaxy decompilation","name_zh":"Petari：Super Mario Galaxy 一致性反编译重建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","attribution"],"requirements":["configure.py targets RMGJ01, RMGE01, RMGP01 and RMGK01, defaulting to the Korean RMGK01 build. Only objects marked Matching are linked unless --non-matching is used. For the reviewed commit, decomp.dev reported 100.00% of RMGK01 code decompiled with 68.75% fully linked, and 99.70% decompiled for the other three versions, with 55.61–58.17% linked. These figures are project-tracker results.","Extract your own copy of the game for the chosen region with Dolphin into orig/RMG<region>01; only sys/main.dol is needed. The repository says it contains no game assets or assembly. Each version’s config records the expected DOL SHA-1 in config.yml and build.sha1.","Builds need Python and Ninja on Windows, macOS or Linux; wibo runs the Windows tools on macOS and Linux. configure.py pins Metrowerks compiler packages from the GC 2.7–3.0a5.2 and Wii 1.0 families. The GitHub Actions workflow builds all four versions in a build container its comments call private.","CONTRIBUTING.md requires 1:1 matching for objects marked as decompiled, objdiff checks and a successful link. Every non-matching function in a pull request must link a decomp.me scratch, and decompiler output must not be copied directly. The README credits doldecomp bte, zeldaret tp (JSystem) and ogws as sources of code and headers.","The README states that AI or LLMs played no role in the decompilation and limits permitted AI use to cleanup, formatting, documentation and naming. That is a project statement. The repository declares CC0-1.0, while Nintendo content, extracted files and toolchains keep separate rights. The separate AstroCore PC port mentioned in the README has no public source here."],"requirements_zh":["configure.py 支持 RMGJ01、RMGE01、RMGP01 和 RMGK01，默认构建韩版 RMGK01。除非使用 --non-matching，否则只链接标记为 Matching 的目标文件。在所审阅的提交上，decomp.dev 报告 RMGK01 代码已反编译 100.00%、完全链接 68.75%；其余三个版本反编译 99.70%，链接比例为 55.61%–58.17%。这些是项目进度追踪结果。","需用 Dolphin 将自有游戏中所选地区的版本提取到 orig/RMG<地区>01，只需要 sys/main.dol。仓库声明不包含任何游戏素材或汇编。各版本配置在 config.yml 和 build.sha1 中记录预期的 DOL SHA-1。","构建需在 Windows、macOS 或 Linux 上安装 Python 和 Ninja；在 macOS 和 Linux 上通过 wibo 运行 Windows 工具。configure.py 固定使用 GC 2.7–3.0a5.2 与 Wii 1.0 系列的 Metrowerks 编译器包。GitHub Actions 工作流在注释所称的私有构建容器中构建全部四个版本。","CONTRIBUTING.md 要求标记为已反编译的目标文件必须 1:1 匹配，须通过 objdiff 检查并成功链接。拉取请求中的每个非一致函数都必须附上 decomp.me 草稿链接，且不得直接复制反编译器输出。README 注明部分代码和头文件来自 doldecomp bte、zeldaret tp（JSystem）及 ogws。","README 声明 AI／LLM 未参与反编译，并将允许的 AI 用途限于代码清理、格式化、文档和命名。这是项目自述。仓库声明采用 CC0-1.0，任天堂内容、提取的文件及工具链另有权利约束。README 提到的独立 PC 移植 AstroCore 在此没有公开源码。"],"targets":["game"],"url":"https://github.com/SMGCommunity/Petari","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/ZeldaWWHDRecomp/ZeldaWWHDRecomp/blob/f10b56621ed13e0053e7cf8190e740834377e45a/docs/how-it-works.md","https://github.com/ZeldaWWHDRecomp/ZeldaWWHDRecomp/blob/f10b56621ed13e0053e7cf8190e740834377e45a/docs/decomp-build.md","https://github.com/ZeldaWWHDRecomp/ZeldaWWHDRecomp/blob/f10b56621ed13e0053e7cf8190e740834377e45a/tools/verify/README.md","https://github.com/ZeldaWWHDRecomp/ZeldaWWHDRecomp/blob/f10b56621ed13e0053e7cf8190e740834377e45a/LICENSE","https://github.com/ZeldaWWHDRecomp/ZeldaWWHDRecomp/blob/f10b56621ed13e0053e7cf8190e740834377e45a/.gitmodules"],"category":"reconstruction-cases","description_en":"Statically recompiles The Wind Waker HD’s Wii U PowerPC code to C ahead of time, reimplements the Cafe OS libraries the game uses and implements GX2 graphics on Metal or Vulkan, producing native macOS, Linux, Windows and Android builds without a Cemu runtime. All game code and data are generated locally from the user’s own dump; an experimental macOS-only build can instead run functions from the separate ZeldaWWHDDecomp/wwhd decompilation.","description_zh":"将《塞尔达传说 风之杖 HD》Wii U 版的 PowerPC 代码预先静态重编译为 C，原生重新实现游戏所用的 Cafe OS 库，并在 Metal 或 Vulkan 上实现 GX2 图形，生成无需 Cemu 运行时的 macOS、Linux、Windows 和 Android 原生版本。所有游戏代码和数据都由使用者自己的转储在本地生成；另有仅限 macOS 的实验性构建，可改为运行独立的 ZeldaWWHDDecomp/wwhd 反编译中的函数。","entry_url":"https://awesomerea.org/resources/wind-waker-hd-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/wind-waker-hd-recomp-case/","evidence_url":"https://github.com/ZeldaWWHDRecomp/ZeldaWWHDRecomp/blob/f10b56621ed13e0053e7cf8190e740834377e45a/README.md","group":"cases","id":"wind-waker-hd-recomp-case","json_url":"https://awesomerea.org/resources/wind-waker-hd-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/wind-waker-hd-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wind-waker-hd-recomp-case/index.md","name":"Wind Waker HD Recomp: a native port by static recompilation of the Wii U game","name_zh":"Wind Waker HD Recomp：通过静态重编译实现的 Wii U 游戏原生移植","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes a static recompilation of the USA or European Wii U release (version 0, without the update) and reports the game playable from start to finish on macOS, Windows, Linux and Android. Known gaps include unimplemented geometry shaders and rectangle primitives and no controller rumble on macOS; true 60 fps is experimental. Unlike source decompilations such as zeldaret/tww, the default build runs machine-translated game code.","Needs the user’s own, legally obtained game: a .wud/.wux disc image with its disc key and the Wii U common key, a Cemu .wua archive, or an extracted game folder. Setup checks code/cking.rpx against the SHA-256 of each supported version. The repository and releases contain no game code, assets or keys, and the locally generated code and caches must not be redistributed.","Releases target Apple Silicon macOS 14+, Windows 10 1903+ or 11 on x86-64 or arm64, and glibc 2.35+ Linux on x86-64 or arm64, with Vulkan 1.3 (or 1.1/1.2 with VK_KHR_dynamic_rendering) where Vulkan is used; Android arm64 builds the game on the phone. First setup translates and compiles the code locally with a downloaded compiler (llvm-mingw on Windows, zig on Linux) or Apple’s command-line tools. Source builds need CMake 3.20+ and Python 3.","Reported checks are side-by-side rendering comparison with Cemu, players completing the game and, for the decompiled path, tools/verify’s function-by-function comparison of hand-written C++ with the recompiled original on generated and recorded inputs. The experimental decomp build (macOS, USA game only) runs 22,705 verified functions in 862 units at the pinned submodule. All results are project-reported.","Project code is MPL-2.0; vendored Cemu code is MPL-2.0, while metal-cpp, {fmt}, Dear ImGui, zstd and the AppImage runtime components keep their own licenses, and the game remains Nintendo’s property. README calls it an unofficial fan project."],"requirements_zh":["README 说明该项目是对美版或欧版 Wii U 发行版（版本 0，不含更新）的静态重编译，并报告游戏在 macOS、Windows、Linux 和 Android 上均可从头玩到尾。已知缺口包括尚未实现的几何着色器和矩形图元，以及 macOS 上尚不支持手柄震动；真 60 fps 仍为实验性。与 zeldaret/tww 等源码反编译不同，默认构建运行的是机器转换的游戏代码。","需要使用者自己合法取得的游戏：附有光盘密钥和 Wii U 通用密钥的 .wud／.wux 光盘镜像、Cemu 的 .wua 归档，或已解包的游戏目录。设置程序会将 code/cking.rpx 与各受支持版本的 SHA-256 比对。仓库和发行包均不含游戏代码、素材或密钥，本地生成的代码与缓存不得再分发。","发行版面向 macOS 14+（Apple Silicon）、x86-64 或 arm64 上的 Windows 10 1903+ 或 Windows 11，以及 x86-64 或 arm64 上 glibc 2.35+ 的 Linux；使用 Vulkan 时需 Vulkan 1.3（或支持 VK_KHR_dynamic_rendering 的 1.1／1.2）；Android arm64 版在手机上构建游戏。首次设置时，在本地用下载的编译器（Windows 为 llvm-mingw，Linux 为 zig）或 Apple 命令行工具转换并编译代码。从源码构建需 CMake 3.20+ 和 Python 3。","项目报告的检查包括与 Cemu 并排比较渲染效果、玩家已通关，以及在反编译路径上由 tools/verify 以生成输入和录制输入，逐函数比较手写 C++ 与重编译原版的行为。实验性反编译构建（仅 macOS、仅美版）在固定的子模块版本中运行 862 个单元内的 22,705 个已验证函数。所有结果均为项目报告。","项目代码采用 MPL-2.0；内置的 Cemu 代码为 MPL-2.0，metal-cpp、{fmt}、Dear ImGui、zstd 及 AppImage 运行时组件各自保留其许可证，游戏仍归任天堂所有。README 称其为非官方粉丝项目。"],"targets":["game"],"url":"https://github.com/ZeldaWWHDRecomp/ZeldaWWHDRecomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/RevoSucks/CV64Recomp/blob/141b35d8902a6c74e247988df26d394822f8026c/README.md","https://github.com/RevoSucks/CV64Recomp/blob/141b35d8902a6c74e247988df26d394822f8026c/BUILDING.md","https://github.com/RevoSucks/CV64Recomp/blob/141b35d8902a6c74e247988df26d394822f8026c/cv64.toml","https://github.com/RevoSucks/CV64Recomp/blob/141b35d8902a6c74e247988df26d394822f8026c/patches.toml","https://github.com/RevoSucks/CV64Recomp/blob/141b35d8902a6c74e247988df26d394822f8026c/src/main/main.cpp","https://github.com/RevoSucks/CV64Recomp/blob/141b35d8902a6c74e247988df26d394822f8026c/CMakeLists.txt","https://github.com/RevoSucks/CV64Recomp/blob/141b35d8902a6c74e247988df26d394822f8026c/patches/Makefile","https://github.com/RevoSucks/CV64Recomp/blob/141b35d8902a6c74e247988df26d394822f8026c/.gitmodules","https://github.com/RevoSucks/CV64Recomp/blob/141b35d8902a6c74e247988df26d394822f8026c/.github/workflows/validate.yml","https://github.com/RevoSucks/CV64Recomp/blob/141b35d8902a6c74e247988df26d394822f8026c/COPYING","https://github.com/RevoSucks/CV64Recomp/releases/tag/v0.5.0"],"category":"reconstruction-cases","description_en":"Uses N64Recomp to statically recompile the US 1.0 Nintendo 64 release of Castlevania into a native PC port rendered with RT64. Game-specific C patches build against headers from a separate Castlevania 64 decompilation. A beta release tagged at the reviewed commit reports a working build with known issues, while the README there still describes an unfinished project.","description_zh":"使用 N64Recomp 将 Nintendo 64 版 Castlevania 美版 1.0 静态重编译为原生 PC 移植，并以 RT64 渲染。游戏专用的 C 补丁基于另一个 Castlevania 64 反编译项目的头文件构建。在所审提交上标记的测试版发布报告构建可用并列出已知问题，而同一提交的 README 仍称项目尚未完成。","entry_url":"https://awesomerea.org/resources/cv64-recompiled-case/","entry_url_zh":"https://awesomerea.org/zh/resources/cv64-recompiled-case/","evidence_url":"https://github.com/RevoSucks/CV64Recomp/blob/141b35d8902a6c74e247988df26d394822f8026c/flatpak/io.github.cv64recomp.cv64recomp.metainfo.xml","group":"cases","id":"cv64-recompiled-case","json_url":"https://awesomerea.org/resources/cv64-recompiled-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/cv64-recompiled-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cv64-recompiled-case/index.md","name":"Castlevania 64: Recompiled — a beta static-recompilation port","name_zh":"Castlevania 64: Recompiled：测试版静态重编译移植","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The AppStream metadata describes Castlevania 64: Recompiled as an N64: Recompiled static recompilation into a native port using RT64 for rendering. The v0.5.0 beta release, tagged at the reviewed commit, calls itself a working build and lists known issues: Banjo Recomp assets still to be replaced, texture scrolls that do not animate above 30 FPS, and glitches in some looping animations. At the same commit the README still says the WIP recomp does not build, and BUILDING.md only says WIP.","The metadata says the original game is required. The launcher accepts a single entry, the US 1.0 release (game ID cv64.us.1.0) identified by a fixed ROM hash, and cv64.toml configures the NTSC 1.0 recompilation from a decompressed ELF plus an overlay list. CI copies that ELF and a decompressed ROM from a private repository through secrets; neither is in the public tree.","The CMake project needs CMake 3.20+, C++20 and the N64Recomp and RSPRecomp tools; the workflow pins an N64Recomp commit and builds Linux x64 and ARM64 AppImages, an x64 Flatpak, Windows and macOS targets. Patches compile as MIPS code with clang and ld.lld against headers from the k64ret/cv64 decompilation submodule, with symbol dumps from CV64Syms and submodules for N64ModernRuntime, RecompFrontend and RT64. Several sources and functions still carry Banjo names.","GitHub check runs recorded for the reviewed commit report successful builds on those platforms. No matching, test or performance results are documented.","COPYING is GPLv3 and the metadata declares GPL-3.0+; the original ROM and the dependencies keep their own terms."],"requirements_zh":["AppStream 元数据将 Castlevania 64: Recompiled 描述为使用 N64: Recompiled 的静态重编译项目，生成以 RT64 渲染的原生移植。在所审提交上标记的 v0.5.0 测试版发布称构建可用，并列出已知问题：Banjo Recomp 素材尚待替换、纹理滚动在 30 FPS 以上不会播放动画，以及部分循环动画会出现异常。同一提交的 README 仍称这个进行中的重编译项目无法构建，BUILDING.md 也只写有 WIP。","元数据说明运行需要原版游戏。启动器只接受一个条目，即以固定 ROM 哈希识别的美版 1.0（游戏 ID 为 cv64.us.1.0）；cv64.toml 以解压后的 ELF 及覆盖模块列表配置 NTSC 1.0 重编译。CI 通过机密信息从私有仓库复制该 ELF 和解压后的 ROM，二者均不在公开仓库中。","CMake 项目需要 CMake 3.20+、C++20 以及 N64Recomp 和 RSPRecomp 工具；工作流固定一个 N64Recomp 提交，构建 Linux x64 与 ARM64 AppImage、x64 Flatpak、Windows 及 macOS 目标。补丁以 clang 和 ld.lld 编译为 MIPS 代码，依赖 k64ret/cv64 反编译子模块的头文件、CV64Syms 的符号导出，以及 N64ModernRuntime、RecompFrontend 和 RT64 子模块。部分源文件和函数仍沿用 Banjo 命名。","所审提交记录的 GitHub 检查报告上述平台构建成功。项目未记录一致性、测试或性能结果。","COPYING 为 GPLv3，元数据声明 GPL-3.0+；原 ROM 和各依赖仍有各自条款。"],"targets":["game"],"url":"https://github.com/RevoSucks/CV64Recomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/RSDKModding/RSDKv5-Decompilation/blob/191d7aea6c262d891244172a8609ac69fbfd7571/FAQ.md","https://github.com/RSDKModding/RSDKv5-Decompilation/blob/191d7aea6c262d891244172a8609ac69fbfd7571/LICENSE.md","https://github.com/RSDKModding/RSDKv5-Decompilation/blob/191d7aea6c262d891244172a8609ac69fbfd7571/dependencies/android/README.md","https://github.com/RSDKModding/RSDKv5-Decompilation/blob/191d7aea6c262d891244172a8609ac69fbfd7571/RSDKv5/RSDK/Core/RetroEngine.cpp","https://github.com/RSDKModding/RSDKv5-Decompilation/blob/191d7aea6c262d891244172a8609ac69fbfd7571/.github/workflows/build.yml","https://github.com/RSDKModding/RSDKv5-Decompilation/releases/tag/v1.1.1"],"category":"reconstruction-cases","description_en":"Reconstructs the Retro Engine (RSDK) v5 and v5 Ultimate runtime, the engine that runs Sonic Mania’s game code, and builds it for Windows, Linux, Switch and Android. RSDKv5U can also run RSDKv3 and RSDKv4 games such as Sonic CD and Sonic 1 & 2. The project adds a mod loader, a shader compiler and extra Windows backends, and ships no game data.","description_zh":"重建 Retro Engine（RSDK）v5 及 v5 Ultimate 运行时，即运行《索尼克狂欢》游戏代码的引擎，可构建 Windows、Linux、Switch 和 Android 版本。RSDKv5U 还能运行 RSDKv3 与 RSDKv4 游戏，例如 Sonic CD 和 Sonic 1 & 2。项目增加了模组加载器、着色器编译器和额外的 Windows 后端，且不附带任何游戏数据。","entry_url":"https://awesomerea.org/resources/rsdkv5-engine-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rsdkv5-engine-decomp-case/","evidence_url":"https://github.com/RSDKModding/RSDKv5-Decompilation/blob/191d7aea6c262d891244172a8609ac69fbfd7571/README.md","group":"cases","id":"rsdkv5-engine-decomp-case","json_url":"https://awesomerea.org/resources/rsdkv5-engine-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rsdkv5-engine-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rsdkv5-engine-decomp-case/index.md","name":"RSDKv5 Decompilation: reconstructing Retro Engine v5 and v5U","name_zh":"RSDKv5 Decompilation：重建 Retro Engine v5 与 v5U","reconstruction_method":"decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The repository describes itself as a complete decompilation of Retro Engine v5 and v5Ultimate; its license says it also contains original code and that most code is meant to be functionally the same as the specified RSDK version. RETRO_REVISION defaults to 3 (RSDKv5U). The reviewed commit is 13 commits after release v1.1.1 (2025-11-01).","Neither game data nor game logic ships here. The engine loads data files from an official RSDKv5(U) game such as Sonic Mania (Plus), and game code comes from a separate project linked as Game, such as the Sonic Mania decompilation, which also bundles this engine. The FAQ covers Sonic Origins data files, which lack the games’ music and sound effects, and notes that release builds block the Origins Plus characters.","Clone recursively, because GitHub’s source ZIPs omit the required submodules. CMake builds use Visual Studio with vcpkg on Windows, GLEW, GLFW and libtheora development packages on Linux, devkitPro packages for Switch, and a separate Android guide; community forks for WebAssembly, New 3DS, Wii U, Wii and Vita are listed as possibly WIP or outdated. The default Windows DirectX backends support only XInput controllers, and GL builds need a user-made shader mod for videos and filters.","CI builds Windows x86 and x64, Linux and Android binaries. The project publishes no comparison with the original engine binaries, and the FAQ says bugs present in official releases will mostly not be fixed.","The custom RSDKv5(U) Decompilation Source Code License v2.1 requires any distributed prebuilt executable to have DLC disabled by default, forbids commercial use and distributing game assets other than unique modded ones, requires crediting Evening Star and the decompilation authors Rubberduckycooly and chuliRMG, and binds forks to the same terms. The README says Evening Star owns the Retro Engine."],"requirements_zh":["仓库自述为 Retro Engine v5 与 v5Ultimate 的完整反编译；其许可证说明仓库中也有原创代码，且大部分代码旨在与所指定 RSDK 版本在功能上相同。RETRO_REVISION 默认为 3（RSDKv5U）。所审阅提交位于 v1.1.1 版（2025-11-01）之后 13 个提交。","仓库既不附带游戏数据，也不包含游戏逻辑。引擎读取官方 RSDKv5(U) 游戏（如 Sonic Mania (Plus)）的数据文件，游戏代码则来自以 Game 链接的独立项目，例如同样内置本引擎的 Sonic Mania 反编译项目。常见问题说明了使用 Sonic Origins 数据文件的情况：这些文件不含游戏音乐和音效，发布版构建也会屏蔽 Origins Plus 新增角色。","须递归克隆仓库，因为 GitHub 的源码 ZIP 不含所需子模块。CMake 构建在 Windows 上使用 Visual Studio 与 vcpkg，在 Linux 上使用 GLEW、GLFW 和 libtheora 开发包，Switch 使用 devkitPro 软件包，Android 另有构建指南；README 列出的 WebAssembly、New 3DS、Wii U、Wii 和 Vita 社区分支可能仍在开发或已过时。Windows 默认的 DirectX 后端只支持 XInput 手柄，GL 构建需要使用者自建着色器模组才能显示视频和滤镜。","CI 构建 Windows x86、x64、Linux 和 Android 版本。项目未公开与原版引擎二进制文件的对照结果，常见问题还说明官方版本中已有的缺陷大多不会修复。","自定义的《RSDKv5(U) 反编译源码许可证 v2.1》要求任何对外提供的预构建可执行文件默认关闭 DLC，禁止商业用途及分发独特模组素材以外的游戏素材，要求注明 Evening Star 与反编译作者 Rubberduckycooly、chuliRMG，并要求所有派生版本遵守同一许可。README 称 Retro Engine 归 Evening Star 所有。"],"targets":["game"],"url":"https://github.com/RSDKModding/RSDKv5-Decompilation","verification":"source-reviewed","verified_at":"2026-10-18"},{"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"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/MediEvilDecompilation/medievil-decomp/blob/6afe6fe35d5ddf0ce1bebdb2e72f8215b5b5b407/Makefile","https://github.com/MediEvilDecompilation/medievil-decomp/blob/6afe6fe35d5ddf0ce1bebdb2e72f8215b5b5b407/config/medievil.check.sha","https://github.com/MediEvilDecompilation/medievil-decomp/blob/6afe6fe35d5ddf0ce1bebdb2e72f8215b5b5b407/config/splat.main.yaml","https://github.com/MediEvilDecompilation/medievil-decomp/blob/6afe6fe35d5ddf0ce1bebdb2e72f8215b5b5b407/.gitmodules","https://github.com/MediEvilDecompilation/medievil-decomp/blob/6afe6fe35d5ddf0ce1bebdb2e72f8215b5b5b407/tools/requirements-python.txt","https://github.com/MediEvilDecompilation/medievil-decomp/blob/6afe6fe35d5ddf0ce1bebdb2e72f8215b5b5b407/.github/workflows/ci.yaml","https://github.com/MediEvilDecompilation/medievil-decomp/blob/6afe6fe35d5ddf0ce1bebdb2e72f8215b5b5b407/src/game/800.c","https://github.com/MediEvilDecompilation/medievil-decomp/blob/6afe6fe35d5ddf0ce1bebdb2e72f8215b5b5b407/LICENSE"],"category":"reconstruction-cases","description_en":"Decompiles the US PlayStation release of MediEvil toward C source that rebuilds its main executable, game executable and 26 overlays. splat splits the user's own disc files, and the default build compares all 28 outputs with SHA-1 checksums. README describes the project as a work in progress and publishes no progress figure.","description_zh":"将美版 PlayStation《MediEvil》逐步反编译为 C 源码，目标是重新生成其主程序、游戏程序及 26 个覆盖模块。splat 拆分使用者自备的光盘文件，默认构建会将全部 28 个产物与 SHA-1 校验值比较。README 称项目仍在进行中，未公布进度数据。","entry_url":"https://awesomerea.org/resources/medievil-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/medievil-decomp-case/","evidence_url":"https://github.com/MediEvilDecompilation/medievil-decomp/blob/6afe6fe35d5ddf0ce1bebdb2e72f8215b5b5b407/README.md","group":"cases","id":"medievil-decomp-case","json_url":"https://awesomerea.org/resources/medievil-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/medievil-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/medievil-decomp-case/index.md","name":"MediEvil decompilation: an early checksum-gated PlayStation project","name_zh":"MediEvil 反编译：早期阶段、以校验值把关的 PlayStation 项目","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes a work-in-progress decompilation of the US PlayStation MediEvil 1, with MediEvil 2 left for later. The Makefile targets SCUS_942.27, MEDIEVIL.EXE and 26 overlay binaries. In the reviewed tree most functions are still included as split assembly through INCLUDE_ASM rather than written in C, README's progress section is a placeholder, and the pinned commit dates from 2026-02-23.","Requires files from the user's own US MediEvil disc in disk/; the splat configuration expects SCUS_942.27 with a fixed SHA-1, and make extract splits the executables and overlays from those files. The repository supplies no game files.","The build expects a Linux-style host: GNU make, mipsel-linux-gnu binutils, Python 3 with the listed packages such as spimdisasm and rabbitizer, and the splat, m2c, maspsx and asm-differ submodules. C files go through a bundled PlayStation GCC 2.8.1 cc1 binary and maspsx. README points contributors to wiki pages for setup, the rebase workflow and the decompilation process.","make all builds every binary and runs sha1sum against config/medievil.check.sha; CI runs extraction and that check using disc files from an access-restricted repository. A passing check shows that the assembled outputs match those checksums.","The repository declares MIT; original game content, the bundled compiler binaries and the PSY-Q headers and data in the tree retain their own terms. The project is separate from the MediEvil Recomp static recompilation."],"requirements_zh":["README 将其描述为针对美版 PlayStation《MediEvil》初代、仍在进行中的反编译项目，MediEvil 2 留待以后。Makefile 的目标为 SCUS_942.27、MEDIEVIL.EXE 及 26 个覆盖模块二进制文件。在所审版本中，大部分函数仍通过 INCLUDE_ASM 以拆分出的汇编形式纳入，而非以 C 编写；README 的进度部分仅为占位，固定的提交日期为 2026-02-23。","需将使用者自有美版 MediEvil 光盘中的文件放入 disk/；splat 配置要求 SCUS_942.27 具有固定的 SHA-1，make extract 从这些文件拆分出各可执行文件和覆盖模块。仓库不提供任何游戏文件。","构建需类 Linux 宿主环境：GNU make、mipsel-linux-gnu binutils、安装所列软件包（如 spimdisasm、rabbitizer）的 Python 3，以及 splat、m2c、maspsx 和 asm-differ 子模块。C 文件经由仓库内置的 PlayStation GCC 2.8.1 cc1 二进制文件和 maspsx 处理。README 让贡献者参阅 wiki 页面，了解环境配置、变基工作流和反编译流程。","make all 构建全部二进制文件，并依据 config/medievil.check.sha 运行 sha1sum；CI 使用访问受限仓库中的光盘文件执行拆分和该检查。检查通过说明汇编产物与这些校验值一致。","仓库声明采用 MIT；原游戏内容、内置的编译器二进制文件以及仓库中的 PSY-Q 头文件和数据仍适用各自条款。该项目独立于 MediEvil Recomp 静态重编译项目。"],"targets":["game"],"url":"https://github.com/MediEvilDecompilation/medievil-decomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/sciaschi/CBFD-Recompiled/blob/ed1b8bb7f3f036334124ec27eb28efa64e400178/recomp/README.md","https://github.com/sciaschi/CBFD-Recompiled/blob/ed1b8bb7f3f036334124ec27eb28efa64e400178/.gitmodules","https://github.com/sciaschi/CBFD-Recompiled/blob/ed1b8bb7f3f036334124ec27eb28efa64e400178/conker/README.md","https://github.com/sciaschi/CBFD-Recompiled/blob/ed1b8bb7f3f036334124ec27eb28efa64e400178/CONTRIBUTING.md","https://github.com/sciaschi/CBFD-Recompiled/blob/ed1b8bb7f3f036334124ec27eb28efa64e400178/LICENSE","https://github.com/sciaschi/CBFD-Recompiled/releases/tag/V0.1.6"],"category":"reconstruction-cases","description_en":"Statically recompiles the US Nintendo 64 release of Conker’s Bad Fur Day with N64Recomp into a native Windows, Linux and macOS port on N64ModernRuntime and RT64. Function names and boundaries come from a vendored, still mostly assembly decompilation, while the recompiled code is taken from the user’s ROM so unmatched decompiled C cannot change behavior. The author reports heavy use of Claude Code across the project.","description_zh":"使用 N64Recomp 将美版 Nintendo 64《Conker's Bad Fur Day》静态重编译为基于 N64ModernRuntime 和 RT64 的原生 Windows、Linux 与 macOS 移植版。函数名称与边界来自仓库内置、仍以汇编为主的反编译项目，而重编译的代码取自用户的 ROM，因此尚未匹配的反编译 C 代码不会改变游戏行为。作者称整个项目大量使用了 Claude Code。","entry_url":"https://awesomerea.org/resources/cbfd-recompiled-case/","entry_url_zh":"https://awesomerea.org/zh/resources/cbfd-recompiled-case/","evidence_url":"https://github.com/sciaschi/CBFD-Recompiled/blob/ed1b8bb7f3f036334124ec27eb28efa64e400178/README.md","group":"cases","id":"cbfd-recompiled-case","json_url":"https://awesomerea.org/resources/cbfd-recompiled-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/cbfd-recompiled-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cbfd-recompiled-case/index.md","name":"Conker's Bad Fur Day: Recompiled — an N64Recomp native port","name_zh":"Conker's Bad Fur Day: Recompiled：基于 N64Recomp 的原生移植","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","prerequisites","testing","attribution"],"requirements":["Requires the user’s US ROM in big-endian .z64 form with the SHA-1 listed in the README; the repository and release packages contain no game data. ROM hacks that change only assets are accepted, while hacks that change code and other regions’ ROMs are refused.","Release V0.1.6 (2026-10-13) packages Windows, Linux and macOS builds plus a mods archive. Rendering uses Direct3D 12 or Vulkan on Windows, Vulkan on Linux and Metal on macOS; Linux builds are tested on Ubuntu 24.04, and the unsigned macOS release targets Apple Silicon with macOS 15 or later.","Source builds need a recursive clone, Git and Python 3 plus Visual Studio 2022+ on Windows, CMake, Ninja, Clang and SDL2 on Linux, or full Xcode and Homebrew on macOS, in a path without an apostrophe. N64Recomp and RSPRecomp run from a committed symbol file; regenerating it with the optional decompilation build also needs IDO and MIPS binutils.","The README reports the game played through to the end, with a widescreen pause-background issue; a macOS play-through is not yet confirmed and Intel Macs are untried. Decompiled C must rebuild the ROM’s code byte for byte, and the port is checked by play and by comparison with the original in an emulator; names are marked as guesses.","The author reports heavy Claude Code use for the recompilation setup, tool patches, host application, mods and decompiled functions. Own code is MIT, but builds including GPLv3 N64ModernRuntime are distributed under GPLv3, an RT64 patch is GPL-2.0-or-later, and the game is not covered."],"requirements_zh":["需要用户自备的美版 ROM，格式为大端序 .z64，且 SHA-1 与 README 所列一致；仓库和发布包均不含游戏数据。仅修改素材的 ROM 修改版可以使用，修改代码的版本以及其他地区的 ROM 会被拒绝。","V0.1.6 版本（2026-10-13）提供 Windows、Linux 和 macOS 构建以及模组压缩包。Windows 上使用 Direct3D 12 或 Vulkan 渲染，Linux 上使用 Vulkan，macOS 上使用 Metal；Linux 构建在 Ubuntu 24.04 上测试，未签名的 macOS 发布版面向 macOS 15 或更高版本的 Apple Silicon。","源码构建需要递归克隆、Git 和 Python 3，另需 Windows 上的 Visual Studio 2022+、Linux 上的 CMake、Ninja、Clang 与 SDL2，或 macOS 上的完整 Xcode 与 Homebrew，且路径中不能含撇号。N64Recomp 和 RSPRecomp 依据仓库内提交的符号文件运行；若通过可选的反编译构建重新生成该文件，还需要 IDO 和 MIPS binutils。","README 称游戏已被完整通关，但宽屏下暂停菜单背景仍有问题；macOS 上尚未确认通关，Intel Mac 尚未尝试。反编译的 C 代码必须逐字节重建 ROM 中的代码，移植版则通过游玩及与模拟器中原版对比来检查；名称被标注为推测。","作者称在重编译配置、工具补丁、宿主程序、模组和反编译函数中大量使用 Claude Code。项目自有代码采用 MIT，但包含 GPLv3 N64ModernRuntime 的构建整体按 GPLv3 分发，另有一个 RT64 补丁采用 GPL-2.0 或更高版本，游戏本身不在许可范围内。"],"targets":["game"],"url":"https://github.com/sciaschi/CBFD-Recompiled","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/theclub654/ProjectCane/blob/d8e34caf5edd2a0e2d4ec292b69145425ec6201c/CMakeLists.txt","https://github.com/theclub654/ProjectCane/blob/d8e34caf5edd2a0e2d4ec292b69145425ec6201c/CMakePresets.json","https://github.com/theclub654/ProjectCane/blob/d8e34caf5edd2a0e2d4ec292b69145425ec6201c/packaging/linux/README.md","https://github.com/theclub654/ProjectCane/blob/d8e34caf5edd2a0e2d4ec292b69145425ec6201c/File%20Extractor%20GUI/Services/Sly1IsoDetector.cs","https://github.com/theclub654/ProjectCane/blob/d8e34caf5edd2a0e2d4ec292b69145425ec6201c/File%20Extractor%20GUI/File%20Extractor%20GUI.csproj","https://github.com/theclub654/ProjectCane/releases/tag/v0.4.1-beta.1"],"category":"reconstruction-cases","description_en":"Rebuilds the NTSC PlayStation 2 release of Sly Cooper and the Thievius Raccoonus as a native C++ game for Windows and Linux, running on data extracted from the player's own disc image. The README reports the full game as playable while work continues on accuracy and remaining differences from the original. It does not describe its reverse-engineering method or relate the port to the separate sly1 decompilation.","description_zh":"将 PlayStation 2 版《Sly Cooper and the Thievius Raccoonus》美版重建为 Windows 和 Linux 上的原生 C++ 游戏，运行时使用从玩家自有光盘镜像中提取的数据。README 报告整部游戏均可游玩，同时仍在改进准确性并处理与原版的剩余差异。项目未说明其逆向工程方法，也未说明与另一个 sly1 反编译项目的关系。","entry_url":"https://awesomerea.org/resources/projectcane-sly1-pc-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/projectcane-sly1-pc-port-case/","evidence_url":"https://github.com/theclub654/ProjectCane/blob/d8e34caf5edd2a0e2d4ec292b69145425ec6201c/README.md","group":"cases","id":"projectcane-sly1-pc-port-case","json_url":"https://awesomerea.org/resources/projectcane-sly1-pc-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/projectcane-sly1-pc-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/projectcane-sly1-pc-port-case/index.md","name":"ProjectCane: a native PC port of Sly Cooper and the Thievius Raccoonus","name_zh":"ProjectCane：《Sly Cooper and the Thievius Raccoonus》原生 PC 移植","reconstruction_method":"other","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes a complete, playable native port of the NTSC release for Windows and Linux, including Steam Deck, that began as a map viewer; the Beta 0.4.1 release is tagged one commit before the reviewed revision. Work is said to continue on accuracy, performance, controller support, platform compatibility and remaining differences from the PS2 release. The repository description says the port was rebuilt through reverse engineering, but the README gives no method, symbol source or comparison with the original.","No original game data is included. Players supply their own NTSC disc image, which the bundled extractor identifies by the serial SCUS-97198, and the extracted Worlds and Cutscenes directories must sit beside the executable. The Beta 0.4.1 notes say game data must be extracted again after that update.","Windows builds use Visual Studio 2022 with the C++ desktop workload, plus the .NET 9 SDK for the Avalonia-based extractor, or CMake presets. Linux builds need CMake 3.22+, Ninja, a C++20 compiler, pkg-config and FFmpeg development libraries; CMake fetches GLFW 3.4 and SDL2, and graphics use OpenGL through glad with Dear ImGui. Portable AppImages are built in Docker against an Ubuntu 22.04 / glibc 2.35 baseline.","No automated tests, matching checks or side-by-side comparisons are documented, so playability and fidelity remain project claims.","No license file is present, so reuse terms for the source are unstated; Sly Cooper names and assets belong to their owners, and the README disclaims affiliation with Sony Interactive Entertainment and Sucker Punch Productions. The README also asks for Sly 2 or Sly 3 debug builds with symbols to support future ports."],"requirements_zh":["README 将其描述为 NTSC 版的完整可玩原生移植，支持 Windows 和 Linux（包括 Steam Deck），最初是一个地图查看器；Beta 0.4.1 发布标记在所审版本的前一个提交上。项目称仍在改进准确性、性能、控制器支持、平台兼容性，以及与 PS2 原版的剩余差异。仓库简介称移植通过逆向工程重建，但 README 未说明方法、符号来源或与原版的对照。","仓库不含任何原版游戏数据。玩家需自备 NTSC 光盘镜像，附带的提取器以序列号 SCUS-97198 识别该镜像，提取出的 Worlds 和 Cutscenes 目录须放在可执行文件旁。Beta 0.4.1 的发布说明指出，更新后须重新提取游戏数据。","Windows 构建使用安装了 C++ 桌面开发工作负载的 Visual Studio 2022，基于 Avalonia 的提取器另需 .NET 9 SDK；也可使用 CMake 预设。Linux 构建需要 CMake 3.22+、Ninja、C++20 编译器、pkg-config 和 FFmpeg 开发库；CMake 会获取 GLFW 3.4 和 SDL2，图形通过 glad 使用 OpenGL，并使用 Dear ImGui。可移植 AppImage 在 Docker 中以 Ubuntu 22.04／glibc 2.35 为基线构建。","项目未记录自动化测试、一致性检查或并排对照，因此可玩性和保真度仍为项目自述。","仓库没有许可证文件，源码的再使用条款未说明；Sly Cooper 名称和素材归各自权利人所有，README 声明与 Sony Interactive Entertainment 和 Sucker Punch Productions 无关。README 还征集带符号的 Sly 2 或 Sly 3 调试版本，用于今后的移植。"],"targets":["game"],"url":"https://github.com/theclub654/ProjectCane","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://gitlab.com/esr/firefighter/-/blob/84861db110928202571af2042cb9762720dc2c3e/README.adoc","https://gitlab.com/esr/firefighter/-/blob/84861db110928202571af2042cb9762720dc2c3e/NEWS.adoc","https://gitlab.com/esr/firefighter/-/blob/84861db110928202571af2042cb9762720dc2c3e/firefighter.adoc","https://gitlab.com/esr/firefighter/-/blob/84861db110928202571af2042cb9762720dc2c3e/Makefile","https://gitlab.com/esr/firefighter/-/blob/84861db110928202571af2042cb9762720dc2c3e/Cargo.toml","https://gitlab.com/esr/firefighter/-/blob/84861db110928202571af2042cb9762720dc2c3e/src/main.rs","https://gitlab.com/esr/firefighter/-/blob/84861db110928202571af2042cb9762720dc2c3e/COPYING"],"category":"reconstruction-cases","description_en":"Eric S. Raymond’s terminal port of Firefighter, Eben Sprinsock’s 1985 DOS shareware game. The project history says ChatGPT 5.5 decompiled the DOS binary to Borland Pascal and translated it to Rust, after which Raymond modernized the interface and corrected a scoring mismatch. Unchanged gameplay is the author’s statement; the intermediate Pascal and any comparison runs are not published.","description_zh":"Eric S. Raymond 将 Eben Sprinsock 于 1985 年发布的 DOS 共享软件游戏 Firefighter 移植为终端游戏。项目历史记载，ChatGPT 5.5 先将 DOS 二进制反编译为 Borland Pascal，再译为 Rust；之后 Raymond 改进了界面，并修正一处计分不符。玩法未变是作者的说法；中间 Pascal 代码及任何对照运行均未公开。","entry_url":"https://awesomerea.org/resources/firefighter-rust-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/firefighter-rust-port-case/","evidence_url":"https://gitlab.com/esr/firefighter/-/blob/84861db110928202571af2042cb9762720dc2c3e/history.adoc","group":"cases","id":"firefighter-rust-port-case","json_url":"https://awesomerea.org/resources/firefighter-rust-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/firefighter-rust-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/firefighter-rust-port-case/index.md","name":"Firefighter: a decompiled DOS game ported to Rust","name_zh":"Firefighter：将反编译的 DOS 游戏移植为 Rust","reconstruction_method":"decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","attribution","testing","license"],"requirements":["The reviewed 1.2.0 release (2026-06-08) is a Rust terminal game for Unix-like systems: a 25×25 forest-fire board with easy, medium and hard modes, an optional RNG seed and mouse cursor movement. It needs a UTF-8 ANSI terminal of at least 80×25 with alternate-screen and raw-mode input; mouse movement also needs mouse reporting.","Build with Cargo (crossterm and rand); the Makefile wraps cargo build, installs the binary and renders the manual page with Asciidoctor. Building or playing the port needs no original DOS binary or game data; the history page links an Internet Archive copy of the shareware original.","The history lists the recovery steps: decompiling the DOS binary to Borland Pascal with ChatGPT 5.5, translating that to Rust, then adding interface changes, a seed option and a fix for per-difficulty maximum scores that did not match the score computation. The decompiled Pascal, prompts and original binary are not in the repository.","Verification is limited to make check (cargo check and clippy) and a few unit tests for option parsing, the display test pattern and maximum-score consistency. No comparison with the original program is published; unchanged gameplay logic is the author’s claim.","COPYING is BSD-2-Clause, and source headers name Raymond and Sprinsock as joint copyright holders; the README says the port is released with the original author’s permission. The shareware original keeps its own rights."],"requirements_zh":["审阅版本为 1.2.0（2026-06-08），是面向类 Unix 系统的 Rust 终端游戏：25×25 的森林火灾棋盘，提供简单、中等、困难三种模式，支持可选的随机数种子和鼠标移动光标。需要至少 80×25、支持 UTF-8 与 ANSI 控制序列、备用屏幕及原始模式输入的终端；鼠标移动还需终端支持鼠标报告。","使用 Cargo 构建（依赖 crossterm 与 rand）；Makefile 封装 cargo build、安装可执行文件，并用 Asciidoctor 生成手册页。构建或游玩该移植版无需原 DOS 二进制或游戏数据；历史文档链接了 Internet Archive 上的共享软件原版。","历史文档列出的恢复步骤为：借助 ChatGPT 5.5 将 DOS 二进制反编译为 Borland Pascal，再译为 Rust，随后加入界面改动、种子选项，并修正各难度最高分与计分方式不符的问题。反编译得到的 Pascal、提示词及原二进制均未收录在仓库中。","验证仅限 make check（cargo check 与 clippy）及少量单元测试，覆盖参数解析、显示测试图案和最高分一致性。未公开与原程序的对照；“玩法逻辑未变”是作者的说法。","COPYING 为 BSD-2-Clause，源码头部将 Raymond 与 Sprinsock 列为共同版权人；README 称该移植经原作者许可发布。共享软件原版仍保有各自权利。"],"targets":["game"],"url":"https://gitlab.com/esr/firefighter","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/ngxson/flipper-telink/blob/d58aef2e65b30f33f560474ce460127c6f18ca30/README.md","https://github.com/ngxson/flipper-telink/blob/d58aef2e65b30f33f560474ce460127c6f18ca30/AGENTS.md","https://github.com/ngxson/flipper-telink/blob/d58aef2e65b30f33f560474ce460127c6f18ca30/custom_fw/ss6400zb/src/buttons.c","https://github.com/ngxson/flipper-telink/blob/d58aef2e65b30f33f560474ce460127c6f18ca30/custom_fw/ss6400zb/src/zb_dev.c","https://github.com/ngxson/flipper-telink/blob/d58aef2e65b30f33f560474ce460127c6f18ca30/custom_fw/zg226z/DETAILS.md","https://github.com/ngxson/flipper-telink/blob/d58aef2e65b30f33f560474ce460127c6f18ca30/tools/sanitize_dump.py","https://github.com/ngxson/flipper-telink/blob/d58aef2e65b30f33f560474ce460127c6f18ca30/tools/tc32dis.py","https://github.com/ngxson/flipper-telink/blob/d58aef2e65b30f33f560474ce460127c6f18ca30/custom_fw/zg226z/LICENSE.BZdevice","https://github.com/ngxson/flipper-telink/blob/d58aef2e65b30f33f560474ce460127c6f18ca30/custom_fw/zg226z/SDK/LICENSE.txt"],"category":"reconstruction-cases","description_en":"A Flipper Zero app that bit-bangs Telink’s SWire debug interface to dump and reflash TLSR825x Zigbee devices, with static-analysis notes on the dumps and freshly written firmware for two of them. For Tuya TS0044/TS0046 scene remotes, the notes trace the stock ~500 ms single-click delay to a double-click window; the replacement firmware drops that window while presenting the stock model IDs to Zigbee2MQTT. The latest Zigbee build is marked unverified for pairing, actions and battery reporting.","description_zh":"一款 Flipper Zero 应用，以位操作驱动 Telink 的 SWire 调试接口，用于转储并重刷 TLSR825x Zigbee 设备；仓库还附有对转储固件的静态分析笔记，以及为其中两款设备全新编写的固件。针对 Tuya TS0044/TS0046 场景遥控器，笔记将原厂约 500 ms 的单击延迟追溯到双击判定窗口；替换固件取消该窗口，同时向 Zigbee2MQTT 呈现原厂型号标识。最新 Zigbee 版本的配对、动作及电量上报被标注为尚未验证。","entry_url":"https://awesomerea.org/resources/flipper-telink-tuya-remote-firmware-case/","entry_url_zh":"https://awesomerea.org/zh/resources/flipper-telink-tuya-remote-firmware-case/","evidence_url":"https://github.com/ngxson/flipper-telink/blob/d58aef2e65b30f33f560474ce460127c6f18ca30/custom_fw/ss6400zb/README.md","group":"cases","id":"flipper-telink-tuya-remote-firmware-case","json_url":"https://awesomerea.org/resources/flipper-telink-tuya-remote-firmware-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/flipper-telink-tuya-remote-firmware-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/flipper-telink-tuya-remote-firmware-case/index.md","name":"flipper-telink: replacement firmware for Tuya Zigbee remotes","name_zh":"flipper-telink：Tuya Zigbee 遥控器的替换固件","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","scope","testing","license"],"requirements":["Hardware: a Flipper Zero on Unleashed firmware (the notes name API 87.8; apps built with the official SDK will not load), wired to the target’s SWS pin, ground and 3.3 V. The flasher app builds with ufbt and a project-local SDK; the firmware builds with the Telink Zigbee+BLE SDK in a Docker tc32 toolchain and, once installed, updates over BLE OTA.","Inputs are the user’s own devices and their flash dumps. dumps/ publishes sanitized stock images of four devices, with Zigbee network state and Tuya credentials blanked by tools/sanitize_dump.py; raw dumps stay private. Stock firmware rights stay with its vendors, and the repository states no terms for these images.","The TS0044/TS0046 notes derive GPIO roles from the factory JSON config and trace a single click through a 300 ms double-click window plus event-queue, debounce and wake overhead, citing code addresses in the dump. Disassembly uses an included TC32 disassembler built from a third-party opcode table; the TS0046 application image is reported byte-identical to the TS0044 one apart from factory data.","Replacement firmware v00.14 sends short presses on release and holds after 1 s, identifies as the stock TS0044/TS0046 to Zigbee2MQTT and keeps a BLE service mode for OTA. The progress table records hardware checks for earlier versions; v00.14 was flashed to a TS0046, but pairing, actions and battery reporting in Zigbee2MQTT are marked unverified. The separate ZG-226Z alarm firmware is documented as built but not yet run on hardware.","The repository has no top-level license. Firmware directories carry a permissive notice for build files taken from pvvx/BZdevice and the Telink SDK’s Apache-2.0 license, and the notes credit pvvx’s SWire work. The README calls the project highly vibe-coded; the author’s post credits a pi agent running GLM-5.3."],"requirements_zh":["硬件：运行 Unleashed 固件的 Flipper Zero（笔记注明 API 87.8；用官方 SDK 构建的应用无法加载），连接目标设备的 SWS 引脚、地线和 3.3 V。刷写应用用 ufbt 及项目内的 SDK 构建；固件在 Docker tc32 工具链中用 Telink Zigbee+BLE SDK 构建，装入后可通过 BLE OTA 更新。","输入为使用者自己的设备及其闪存转储。dumps/ 公开了四款设备的脱敏原厂镜像，Zigbee 网络状态和 Tuya 凭据已由 tools/sanitize_dump.py 清除；原始转储不公开。原厂固件的权利仍归各厂商，仓库未说明这些镜像的使用条款。","TS0044/TS0046 笔记依据出厂 JSON 配置推导 GPIO 用途，并引用转储中的代码地址，将单击的处理路径追溯为 300 ms 双击判定窗口，加上事件队列、去抖和唤醒开销。反汇编使用仓库自带、基于第三方操作码表的 TC32 反汇编器；笔记称 TS0046 的应用镜像除出厂数据外与 TS0044 逐字节相同。","替换固件 v00.14 在松开时发送短按、按住 1 秒发送长按，向 Zigbee2MQTT 呈现为原厂 TS0044/TS0046，并保留用于 OTA 的 BLE 维护模式。进度表记录了早期版本的硬件检查；v00.14 已刷入一台 TS0046，但在 Zigbee2MQTT 中的配对、动作及电量上报被标注为尚未验证。另一款 ZG-226Z 报警器固件据文档已能构建，但尚未在硬件上运行。","仓库根目录没有许可证。固件目录附有取自 pvvx/BZdevice 的构建文件的宽松许可声明及 Telink SDK 的 Apache-2.0 许可，笔记也注明借鉴 pvvx 的 SWire 工作。README 称项目大量依靠氛围编程；作者帖子称由运行 GLM-5.3 的 pi 智能体完成。"],"targets":["firmware"],"url":"https://github.com/ngxson/flipper-telink","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/Yokimitsuro/khdays-port/blob/8e0ad0b04d97d869c53f301bc40987f0ab929799/docs/BUILD.md","https://github.com/Yokimitsuro/khdays-port/blob/8e0ad0b04d97d869c53f301bc40987f0ab929799/THIRD_PARTY_NOTICES.md","https://github.com/Yokimitsuro/khdays-port/blob/8e0ad0b04d97d869c53f301bc40987f0ab929799/LICENSE","https://github.com/Yokimitsuro/khdays-port/blob/8e0ad0b04d97d869c53f301bc40987f0ab929799/.gitmodules","https://github.com/Yokimitsuro/khdays-port/blob/8e0ad0b04d97d869c53f301bc40987f0ab929799/tools/supported_roms.json","https://github.com/Yokimitsuro/khdays-port/blob/8e0ad0b04d97d869c53f301bc40987f0ab929799/installer/README.md","https://github.com/Yokimitsuro/khdays-port/blob/8e0ad0b04d97d869c53f301bc40987f0ab929799/.github/workflows/build.yml","https://github.com/Yokimitsuro/khdays-decomp/blob/a2b0478b87e3102732094c34f6ca89595f98ab93/README.md"],"category":"reconstruction-cases","description_en":"Compiles the C of the khdays-decomp matching decompilation for Windows x64 and supplies a native platform layer for the Nintendo DS hardware, SDK services and sound driver. README reports the whole game running without an ARM interpreter; its rendering, controls, mod support and network multiplayer are the port’s own additions. This is a decompilation-based port, distinct from the byte-matching DS reconstruction it builds on.","description_zh":"将 khdays-decomp 一致性反编译的 C 代码编译为 Windows x64 程序，并以原生平台层替代 Nintendo DS 硬件、SDK 服务及声音驱动。README 报告整款游戏无需 ARM 解释器即可运行；渲染、操作、模组支持与网络联机均为移植自身新增。这是基于反编译的移植，与其所依托的逐字节一致 DS 重建并非同一产物。","entry_url":"https://awesomerea.org/resources/khdays-native-pc-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/khdays-native-pc-port-case/","evidence_url":"https://github.com/Yokimitsuro/khdays-port/blob/8e0ad0b04d97d869c53f301bc40987f0ab929799/README.md","group":"cases","id":"khdays-native-pc-port-case","json_url":"https://awesomerea.org/resources/khdays-native-pc-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/khdays-native-pc-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/khdays-native-pc-port-case/index.md","name":"Kingdom Hearts 358/2 Days: native PC port built on a matching decompilation","name_zh":"Kingdom Hearts 358/2 Days：基于一致性反编译的原生 PC 移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["Reviewed version 0.1.2 is labelled work in progress. README reports the title, Story Mode, Mission Mode, combat, the shop and save round-trips running natively; builds exist only for Windows x64, with Linux, macOS, Windows on ARM and Switch listed as planned. The pinned khdays-decomp submodule (a2b0478) reports all 306 EU YKGP modules byte-identical; the port compiles that C after build-time rewriting and does not reproduce the DS binary.","Supply your own European Kingdom Hearts 358/2 Days ROM (game code YKGP); the tools check it against a single supported-ROM entry before preparing local game data. Optional HD screens, videos and menus are generated from the player’s own KINGDOM HEARTS HD 1.5+2.5 ReMIX and HD 2.8 Final Chapter Prologue copies. The repository includes no ROM, assets, SDK files or game binaries.","Building needs Windows, Visual Studio 2026 with the C++ workload, CMake, Ninja, Python 3.11+ and pycparser; running needs a Direct3D 12 or Vulkan GPU. Build preparation rewrites game pointers as DS-address references and repairs ARM calling-convention gaps from a ROM-derived Ghidra ABI table; cases it cannot repair mechanically stop at named KHDAYS_ABI_GAP points.","Reported checks are ctest suites (MSVC static analysis, short libFuzzer runs, GPU renders compared with the port’s software DS engines, a DeSmuME savestate comparison) and scripted regression walks through Mission Mode, Story Mode, saving and multiplayer. Tests needing player data are skipped without it, and CI builds only the format library on Windows and Linux. Internet play is reported tried through the maintainer’s server, local-network play between two PCs not yet.","The port declares MIT; its third-party notices record the decompilation as CC0 1.0 and list SDL3 (zlib), Lua, Dear ImGui and other components under their own terms. No repository license applies to the original game or material extracted from it. README states that AI-assisted coding tools were used."],"requirements_zh":["所审阅的 0.1.2 版标注为开发中。README 报告标题画面、Story Mode、Mission Mode、战斗、商店及存档读写均可原生运行；目前仅有 Windows x64 构建，Linux、macOS、Windows on ARM 和 Switch 列为计划。固定版本的 khdays-decomp 子模块（a2b0478）报告欧版 YKGP 全部 306 个模块逐字节一致；移植是在构建时改写这些 C 代码后编译，并不复现 DS 二进制。","需自备欧版 Kingdom Hearts 358/2 Days ROM（游戏代码 YKGP）；工具会先将其与唯一一条受支持 ROM 记录比对，再在本地准备游戏数据。可选的高清画面、视频和菜单由玩家自有的 KINGDOM HEARTS HD 1.5+2.5 ReMIX 与 HD 2.8 Final Chapter Prologue 生成。仓库不含 ROM、素材、SDK 文件或游戏二进制。","构建需要 Windows、带 C++ 工作负载的 Visual Studio 2026、CMake、Ninja、Python 3.11+ 及 pycparser；运行需要支持 Direct3D 12 或 Vulkan 的显卡。构建准备阶段把游戏指针改写为 DS 地址引用，并依据从 ROM 得出的 Ghidra ABI 表修补 ARM 调用约定缺口；无法机械修补之处会停在具名的 KHDAYS_ABI_GAP 位置。","项目报告的检查包括 ctest 套件（MSVC 静态分析、短时 libFuzzer 运行、GPU 渲染与移植自身软件 DS 引擎的对照、DeSmuME 存档状态对照），以及覆盖 Mission Mode、Story Mode、存档和联机的脚本化回归流程。需要玩家数据的测试在缺少数据时跳过，CI 仅在 Windows 和 Linux 上构建格式库。报告称已通过维护者服务器试过互联网联机，两台 PC 间的局域网联机尚未试过。","移植声明采用 MIT；第三方声明记录反编译部分为 CC0 1.0，并列出 SDL3（zlib）、Lua、Dear ImGui 等各按自身条款授权的组件。仓库中的任何许可均不适用于原游戏或从中提取的材料。README 说明使用了 AI 辅助编码工具。"],"targets":["game"],"url":"https://github.com/Yokimitsuro/khdays-port","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/nathanialf/ico-pc/blob/4c29ac4c121a357092dea6ee12f6d715ce6cf1f9/docs/BUILDING.md","https://github.com/nathanialf/ico-pc/blob/4c29ac4c121a357092dea6ee12f6d715ce6cf1f9/docs/port/ARCHITECTURE.md","https://github.com/nathanialf/ico-pc/blob/4c29ac4c121a357092dea6ee12f6d715ce6cf1f9/docs/port/GAME_CODE.md","https://github.com/nathanialf/ico-pc/blob/4c29ac4c121a357092dea6ee12f6d715ce6cf1f9/docs/port/TESTING.md","https://github.com/nathanialf/ico-pc/blob/4c29ac4c121a357092dea6ee12f6d715ce6cf1f9/docs/port/DIVERGENCES.md","https://github.com/nathanialf/ico-pc/blob/4c29ac4c121a357092dea6ee12f6d715ce6cf1f9/docs/LEGAL.md","https://github.com/nathanialf/ico-pc/blob/4c29ac4c121a357092dea6ee12f6d715ce6cf1f9/LICENSE","https://github.com/nathanialf/ico-pc/releases/tag/v0.7.10","https://github.com/nathanialf/ico/blob/3496140f784fdf2d0b10e30b3b3024046c586ce1/README.md"],"category":"reconstruction-cases","description_en":"Compiles the decompiled C of the PlayStation 2 game ICO natively for Windows, Linux, Android, iPhone and Apple-silicon Macs, with host code standing in for the PS2 hardware and Sony libraries. No PS2 code is interpreted or recompiled, and the program reads the player's PAL disc image on first start. It is a native port of a separately byte-matched decompilation, with documented divergences and optional enhancements.","description_zh":"将 PlayStation 2 游戏《ICO》的反编译 C 源码原生编译到 Windows、Linux、Android、iPhone 及 Apple 芯片 Mac 上，并以宿主代码替代 PS2 硬件和 Sony 函数库。项目不解释执行或重编译任何 PS2 代码，程序在首次启动时读取玩家自备的 PAL 光盘镜像。它是另一个逐字节匹配的反编译项目的原生移植，记录了与原版的差异，并提供可选增强功能。","entry_url":"https://awesomerea.org/resources/ico-pc-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/ico-pc-port-case/","evidence_url":"https://github.com/nathanialf/ico-pc/blob/4c29ac4c121a357092dea6ee12f6d715ce6cf1f9/README.md","group":"cases","id":"ico-pc-port-case","json_url":"https://awesomerea.org/resources/ico-pc-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/ico-pc-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ico-pc-port-case/index.md","name":"ico-pc: a native ICO port compiled from the PS2 decompilation","name_zh":"ico-pc：由 PS2 反编译源码编译而成的《ICO》原生移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes a port of the PAL PS2 release (SCES-50760). The architecture guide says the game's decompiled C under ico2/ is compiled for the host, while port/ replaces the EE kernel, GS/VU1 rendering, SPU2 audio, disc, pad and memory-card services. Its platform table, current at release v0.7.10, lists 64-bit Windows 10/11, x86-64 and arm64 Linux, Steam Deck, Android 10+, iPhone through LiveContainer and Apple-silicon macOS 12+; the maintainer reports not testing the iPhone and Mac builds.","Requires the player's own PAL ICO disc image (SCES-50760) as .iso, .chd or .bin/.cue; other regions and editions are unsupported. Building needs no disc image, but the first run copies the game's files, about 1 GB, into the ico.o2r archive and loads the data tables from it. The legal notes exclude disc data, boot ELFs, assets and data tables from the repository and downloads.","Builds use CMake presets with Ninja. The Linux quickstart targets Debian 13 or Ubuntu 24.04 with gcc 14 (gcc 13 also builds), Python 3 and a fetch script that downloads about 1.6 GB of pinned toolchains and dependencies, among them llvm-mingw, mingw-w64 gcc, SDL3, Vulkan components and DXC. Rendering uses Vulkan, Direct3D 12 on Windows, or MoltenVK on Apple platforms.","CI runs hygiene and audit checks, builds and runs ctest on x86-64 and arm64 Linux, cross-builds Windows and packages Android, iPhone and macOS; disc-dependent tests skip without the player's image. The divergence list documents known differences from the PS2 and states that no test compares a run with the PS2. The upstream decompilation separately reports byte-identical PAL and Japanese boot ELFs, with most read-only data still taken from the disc.","README and LICENSE apply MIT only to the project's own code, scripts and documentation, granting no rights in the game, its data or Sony and Team Ico trademarks; third-party code is listed separately. The LICENSE notice says building requires a disc image, unlike the build guide."],"requirements_zh":["README 将其描述为 PAL 版 PS2 发行版（SCES-50760）的移植。架构文档称，ico2/ 下的游戏反编译 C 源码为宿主平台编译，port/ 则替代 EE 内核、GS／VU1 渲染、SPU2 音频、光盘、手柄和记忆卡服务。其平台表（审阅时最新发布为 v0.7.10）列出 64 位 Windows 10／11、x86-64 及 arm64 Linux、Steam Deck、Android 10+、通过 LiveContainer 运行的 iPhone，以及 macOS 12+ 的 Apple 芯片 Mac；维护者称未测试 iPhone 和 Mac 版本。","需玩家自备 PAL 版《ICO》光盘镜像（SCES-50760），格式为 .iso、.chd 或 .bin/.cue；不支持其他地区和版本。构建无需光盘镜像，但首次运行会将约 1 GB 的游戏文件复制到 ico.o2r 归档，并从中加载数据表。法律说明规定，仓库和下载包不含光盘数据、启动 ELF、素材或数据表。","构建使用 CMake 预设和 Ninja。Linux 快速入门面向 Debian 13 或 Ubuntu 24.04，需 gcc 14（gcc 13 亦可构建）、Python 3，以及一个下载约 1.6 GB 固定版本工具链和依赖的脚本，其中包括 llvm-mingw、mingw-w64 gcc、SDL3、Vulkan 组件和 DXC。渲染使用 Vulkan、Windows 上的 Direct3D 12，或 Apple 平台上的 MoltenVK。","CI 运行代码规范与审计检查，在 x86-64 和 arm64 Linux 上构建并运行 ctest，交叉构建 Windows 版本，并打包 Android、iPhone 和 macOS 版本；缺少玩家光盘镜像时，依赖光盘的测试会跳过。差异列表记录了与 PS2 的已知差别，并说明没有任何测试将运行结果与 PS2 比较。上游反编译项目另行报告其 PAL 版和日版启动 ELF 逐字节一致，但大部分只读数据仍取自光盘。","README 和 LICENSE 规定 MIT 仅适用于项目自身的代码、脚本和文档，不授予游戏、其数据或 Sony 及 Team Ico 商标的任何权利；第三方代码另行列出。LICENSE 声明称构建需要光盘镜像，与构建指南不一致。"],"targets":["game"],"url":"https://github.com/nathanialf/ico-pc","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/TheOnlyZac/sly1/blob/ea5e2d77ac2a083df1efeafcee178f895943b13d/configure.py","https://github.com/TheOnlyZac/sly1/blob/ea5e2d77ac2a083df1efeafcee178f895943b13d/config/checksum.sha1","https://github.com/TheOnlyZac/sly1/blob/ea5e2d77ac2a083df1efeafcee178f895943b13d/config/readme.md","https://github.com/TheOnlyZac/sly1/blob/ea5e2d77ac2a083df1efeafcee178f895943b13d/scripts/setup_prodg_linux.sh","https://github.com/TheOnlyZac/sly1/blob/ea5e2d77ac2a083df1efeafcee178f895943b13d/docs/CONTRIBUTING.md","https://github.com/TheOnlyZac/sly1/blob/ea5e2d77ac2a083df1efeafcee178f895943b13d/.github/workflows/build.yml","https://github.com/TheOnlyZac/sly1/blob/ea5e2d77ac2a083df1efeafcee178f895943b13d/LICENSE","https://decomp.dev/TheOnlyZac/sly1","https://web.archive.org/web/20261020041838/https://decomp.dev/TheOnlyZac/sly1/SCUS_971.98/ea5e2d77ac2a083df1efeafcee178f895943b13d.json","https://theonlyzac.github.io/sly1"],"category":"reconstruction-cases","description_en":"Reconstructs source code for SCUS_971.98, the NTSC-U PlayStation 2 executable of Sly Cooper and the Thievius Raccoonus, as a work-in-progress matching decompilation. Functions not yet matched are still assembled from code split out of the user's own executable, and the build checks the linked ELF's SHA-1. The result runs in PCSX2 with the original disc for assets; it is not a native PC port.","description_zh":"将《Sly Cooper and the Thievius Raccoonus》PlayStation 2 美版可执行文件 SCUS_971.98 重建为源码，属于进行中的一致性反编译。尚未匹配的函数仍由从使用者自备可执行文件中拆分出的汇编构建，构建会检查链接后 ELF 的 SHA-1。产物需在 PCSX2 中配合原版光盘素材运行，并不是原生 PC 移植。","entry_url":"https://awesomerea.org/resources/sly1-matching-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sly1-matching-decomp-case/","evidence_url":"https://github.com/TheOnlyZac/sly1/blob/ea5e2d77ac2a083df1efeafcee178f895943b13d/README.md","group":"cases","id":"sly1-matching-decomp-case","json_url":"https://awesomerea.org/resources/sly1-matching-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sly1-matching-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sly1-matching-decomp-case/index.md","name":"Sly Cooper and the Thievius Raccoonus: matching PlayStation 2 decompilation","name_zh":"Sly Cooper and the Thievius Raccoonus：PlayStation 2 一致性反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes a work-in-progress decompilation of the NTSC-U executable SCUS_971.98 (SHA-1 prefix 57dc305d) that aims to decompile the game engine to matching source. Its FAQ says the project has built a matching ELF since July 2024 and still aims to match 100% of functions. Engine, Splice scripting-engine and data progress are reported on decomp.dev.","The repository contains no game assets or original code. Users supply SCUS_971.98 from their own legally obtained disc, or an NTSC-U ISO for the quickstart script. Running the build requires PCSX2 2.0, the user's game ISO for assets and a BIOS from the user's own PS2.","Builds run on Debian-based Linux or WSL, with a Distrobox guide for other distributions. They need Python 3.9+ with the listed packages, MIPS binutils, Ninja, and Wine or wibo to run the downloaded ee-gcc 2.95.2 SN (ProDG) compiler archive. configure.py splits the ELF with splat, inserts split assembly in place of non-matching functions and links the executable; objdiff, decomp.me and CodeMatcher support matching, the last currently against the May 19, 2002 prototype.","By default the build checks out/SCUS_971.98 against config/checksum.sha1; --skip-checksum is documented for intentional code changes, whose output may not boot. CI downloads the original ELF through a repository secret and runs this check on main, and the check run recorded for the reviewed commit succeeded. This verifies byte identity of one executable.","The repository is dedicated under CC0 1.0; the original game, extracted assembly and data, and the ProDG compiler and SCE runtime library keep separate rights. CONTRIBUTING takes mangled function names from the May 2002 prototype's debug symbols."],"requirements_zh":["README 将其描述为针对美版可执行文件 SCUS_971.98（SHA-1 前缀 57dc305d）的进行中反编译，目标是把游戏引擎反编译为可一致编译的源码。FAQ 称项目自 2024 年 7 月起已能构建一致的 ELF，最终目标仍是匹配全部函数。引擎、Splice 脚本引擎和数据的进度在 decomp.dev 上报告。","仓库不含游戏素材或原始代码。使用者需从自己合法取得的光盘提供 SCUS_971.98，或为快速入门脚本提供美版 ISO。运行构建产物需要 PCSX2 2.0、使用者自己的游戏 ISO（用于加载素材）以及来自使用者自有 PS2 的 BIOS。","构建可在基于 Debian 的 Linux 或 WSL 上进行，其他发行版可参考 Distrobox 指南。需要 Python 3.9+ 及所列软件包、MIPS binutils、Ninja，并以 Wine 或 wibo 运行下载的 ee-gcc 2.95.2 SN（ProDG）编译器归档。configure.py 使用 splat 拆分 ELF，以拆分出的汇编替代尚未一致的函数，并链接可执行文件；objdiff、decomp.me 和 CodeMatcher 用于辅助匹配，其中 CodeMatcher 目前以 2002 年 5 月 19 日原型版为对照。","默认构建会依据 config/checksum.sha1 校验 out/SCUS_971.98；文档说明有意修改代码时可使用 --skip-checksum，但其产物可能无法启动。CI 通过仓库机密下载原版 ELF，并在 main 分支上执行此校验，所审提交记录的检查结果为成功。这验证单个可执行文件的逐字节一致。","仓库以 CC0 1.0 发布；原版游戏、提取的汇编和数据，以及 ProDG 编译器和 SCE 运行库各有权利约束。CONTRIBUTING 从 2002 年 5 月原型版的调试符号中获取经过名称修饰的函数名。"],"targets":["game"],"url":"https://github.com/TheOnlyZac/sly1","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/pret/pokeemerald/blob/731ad5bfd6e6f265508d0efcca0ba42f9dcf5881/INSTALL.md","https://github.com/pret/pokeemerald/blob/731ad5bfd6e6f265508d0efcca0ba42f9dcf5881/Makefile","https://github.com/pret/pokeemerald/blob/731ad5bfd6e6f265508d0efcca0ba42f9dcf5881/rom.sha1","https://github.com/pret/pokeemerald/blob/731ad5bfd6e6f265508d0efcca0ba42f9dcf5881/.github/workflows/build.yml","https://github.com/pret/pokeemerald/tree/731ad5bfd6e6f265508d0efcca0ba42f9dcf5881/tools","https://github.com/pret/agbcc/blob/da598c1d918402c42c0c0d7128ba14567f3175e9/gcc/COPYING"],"category":"reconstruction-cases","description_en":"Reconstructs Pokémon Emerald for the Game Boy Advance as buildable C source, with game scripts and data kept as assembler directives. The default agbcc build produces pokeemerald.gba, and make compare checks it against the SHA-1 of the original English ROM; an optional modern-GCC build is not hash-checked. Graphics and audio sources are committed in the tree, so the documented build reads no base ROM.","description_zh":"为 Game Boy Advance 版《宝可梦 绿宝石》重建可构建的 C 源码，游戏脚本和数据以汇编指令形式保存。默认的 agbcc 构建生成 pokeemerald.gba，make compare 将其与英文原版 ROM 的 SHA-1 比对；可选的现代 GCC 构建不做哈希校验。图像和音频源文件已提交在仓库中，因此文档所述的构建流程不读取原 ROM。","entry_url":"https://awesomerea.org/resources/pokemon-emerald-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/pokemon-emerald-decomp-case/","evidence_url":"https://github.com/pret/pokeemerald/blob/731ad5bfd6e6f265508d0efcca0ba42f9dcf5881/README.md","group":"cases","id":"pokemon-emerald-decomp-case","json_url":"https://awesomerea.org/resources/pokemon-emerald-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/pokemon-emerald-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pokemon-emerald-decomp-case/index.md","name":"Pokémon Emerald: a matching Game Boy Advance decompilation","name_zh":"《宝可梦 绿宝石》：生成一致 ROM 的 Game Boy Advance 反编译重建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes a decompilation of Pokémon Emerald that builds a single ROM, pokeemerald.gba; the Makefile sets game code BPEE, revision 0, and CI builds the English version. Most game code is C, while startup code, part of the m4a sound library and the GameCube multiboot library remain assembly files, and three multiboot programs (berry fix, Colosseum, e-Reader) are included as prebuilt .gba binaries. The output is a GBA ROM, not a native PC port.","The documented build reads no original ROM: graphics, audio samples and map data are committed as PNG, WAV/AIF and JSON files and converted by bundled tools. rom.sha1 records the target English release as SHA-1 f3ae088181bf583e55daf962a92bb46f4f1d07b7, and README links that ROM’s No-Intro record.","INSTALL.md covers Windows (WSL1 recommended; msys2 or Cygwin), macOS and Linux. On Debian/Ubuntu it lists build-essential, binutils-arm-none-eabi, git and libpng-dev; the matching build also needs pret/agbcc built and installed into the tree. make modern instead uses devkitARM’s arm-none-eabi-gcc and writes pokeemerald_modern.gba.","make compare runs a SHA-1 check of the built ROM against rom.sha1 and reports pokeemerald.gba: OK on a match; the Makefile notes that comparison only makes sense for non-modern builds. CI builds with COMPARE=1 and also builds the modern target. These checks establish byte identity for this one release.","The repository has no top-level license file and GitHub detects none; license files cover only some bundled tools, and agbcc’s GCC sources carry GPL v2. The original game’s code, graphics and audio remain subject to their rights holders."],"requirements_zh":["README 将其描述为《宝可梦 绿宝石》的反编译项目，构建单一 ROM：pokeemerald.gba；Makefile 设定游戏代码 BPEE、修订版 0，CI 构建英文版。大部分游戏代码为 C，启动代码、m4a 音频库的一部分及 GameCube 多重启动库仍为汇编文件，三个多重启动程序（树果修复、Colosseum、e-Reader）以预编译 .gba 二进制形式收录。产物是 GBA ROM，不是原生 PC 移植。","文档所述的构建不读取原 ROM：图像、音频采样和地图数据以 PNG、WAV／AIF 和 JSON 文件提交在仓库中，由附带工具转换。rom.sha1 记录目标英文版的 SHA-1 为 f3ae088181bf583e55daf962a92bb46f4f1d07b7，README 链接该 ROM 的 No-Intro 条目。","INSTALL.md 涵盖 Windows（推荐 WSL1，也可用 msys2 或 Cygwin）、macOS 和 Linux。在 Debian／Ubuntu 上需 build-essential、binutils-arm-none-eabi、git 和 libpng-dev；一致性构建还需先构建 pret/agbcc 并安装到仓库中。make modern 则改用 devkitARM 的 arm-none-eabi-gcc，输出 pokeemerald_modern.gba。","make compare 将构建出的 ROM 与 rom.sha1 做 SHA-1 校验，匹配时报告 pokeemerald.gba: OK；Makefile 注明比对只适用于非现代编译器构建。CI 以 COMPARE=1 构建，并另外构建现代目标。这些检查确认该单一版本的字节一致性。","仓库没有顶层许可证文件，GitHub 也未识别出许可证；许可证文件只覆盖部分附带工具，agbcc 的 GCC 源码附 GPL v2。原游戏的代码、图像和音频仍受其权利人约束。"],"targets":["game"],"url":"https://github.com/pret/pokeemerald","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/SETUP.md","https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/CONTRIBUTING.md","https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/tools/configure/src/configure/main.py","https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/install_compilers.sh","https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/install_deps.sh","https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/Jenkinsfile","https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/progress.py","https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/ver/us/checksum.sha1","https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/ver/jp/checksum.sha1","https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/ver/pal/checksum.sha1","https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/ver/ique/checksum.sha1","https://papermar.io/progress-us","https://papermar.io/reports/progress_us.csv","https://papermar.io/reports/progress_jp.csv","https://papermar.io/reports/progress_pal.csv","https://papermar.io/reports/progress_ique.csv"],"category":"reconstruction-cases","description_en":"Reconstructs Paper Mario’s Nintendo 64 code as C source that rebuilds the US, Japanese, PAL and iQue ROMs. The build takes assets and comparison inputs from a user-supplied original ROM, then checks each output against a recorded SHA-1. Mutable project reports list no remaining nonmatching functions, while the README still calls the decompilation work in progress; it is distinct from the PaperBoat native port.","description_zh":"将 Paper Mario 的 Nintendo 64 代码重建为 C 源码，可重新构建美版、日版、PAL 版和 iQue 版 ROM。构建流程从使用者自备的原 ROM 取得素材和比较输入，再将每个产物与记录的 SHA-1 比对。项目可变的进度报告显示已无未匹配函数，但 README 仍称反编译在进行中；该项目与 PaperBoat 原生移植不同。","entry_url":"https://awesomerea.org/resources/paper-mario-matching-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/paper-mario-matching-decomp-case/","evidence_url":"https://github.com/pmret/papermario/blob/1104f1f71b824042a5fa1f958f2d861b603320fd/README.md","group":"cases","id":"paper-mario-matching-decomp-case","json_url":"https://awesomerea.org/resources/paper-mario-matching-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/paper-mario-matching-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/paper-mario-matching-decomp-case/index.md","name":"Paper Mario: matching Nintendo 64 decompilation for four releases","name_zh":"Paper Mario：覆盖四个版本的一致性 Nintendo 64 反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README calls this a work-in-progress decompilation that builds US, JP, PAL and iQue ROMs, each with a listed SHA-1. For the reviewed commit, papermar.io’s mutable progress CSVs list zero nonmatching functions for all four versions (12,679 for US), and its US page announces 100% for US, PAL and iQue. The output is an N64 ROM, not a native PC executable; HarbourMasters’ PaperBoat port is a separate project.","At least one independently obtained original ROM matching a listed SHA-1 is required, supplied as that version’s baserom.z64; the Nix route expects all four. configure splits assets from those ROMs, and neither ROMs nor extracted assets are distributed with the source.","SETUP.md supports Linux, macOS, WSL 2 and Nix. The build uses a Python configure script with ninja, pigment64 from cargo, host MIPS binutils/GCC/cpp, and downloaded compiler builds: project GCC/binutils, GCC 2.7.2, EGCS and statically recompiled IDO 5.3. configure refuses a matching iQue build on macOS because EGCS is unavailable there.","A matching build ends with sha1sum checks against each version’s checksum.sha1, reporting “papermario.z64: OK”. --non-matching, --modern-gcc and --shift builds skip that check, so they are not matching results. Jenkins builds all four versions plus a shiftable US build and publishes the progress reports.","The reviewed tree has no top-level license file and GitHub detects none, so no reuse grant is established for the source. Original ROMs and extracted assets retain separate rights, and downloaded compilers carry their own terms."],"requirements_zh":["README 称这是一个进行中的反编译项目，可构建美版、日版、PAL 版和 iQue 版 ROM，并分别列出 SHA-1。针对所审版本，papermar.io 可变的进度 CSV 显示四个版本均无未匹配函数（美版共 12,679 个），其美版页面宣布美版、PAL 版和 iQue 版已达 100%。产物是 N64 ROM，不是原生 PC 可执行文件；HarbourMasters 的 PaperBoat 移植是另一个项目。","至少需要一个自行取得、且与所列 SHA-1 一致的原始 ROM，作为对应版本的 baserom.z64 提供；Nix 方式要求四个版本齐备。configure 会从这些 ROM 拆分素材，源码不附带 ROM 或提取后的素材。","SETUP.md 支持 Linux、macOS、WSL 2 和 Nix。构建使用 Python configure 脚本和 ninja、通过 cargo 安装的 pigment64、宿主 MIPS binutils／GCC／cpp，以及下载的编译器：项目自有 GCC／binutils、GCC 2.7.2、EGCS 和静态重编译的 IDO 5.3。由于 macOS 上没有 EGCS，configure 拒绝在 macOS 上进行 iQue 一致性构建。","一致性构建最后会依据各版本的 checksum.sha1 执行 sha1sum 校验，输出“papermario.z64: OK”。--non-matching、--modern-gcc 和 --shift 构建跳过该校验，因此不属于一致性结果。Jenkins 构建全部四个版本及一个可平移的美版构建，并发布进度报告。","所审源码树没有顶层许可证文件，GitHub 也未识别出许可证，因此未确立源码的再使用授权。原 ROM 和提取的素材仍受各自权利约束，下载的编译器另有条款。"],"targets":["game"],"url":"https://github.com/pmret/papermario","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/z3xox/Tenkaichi3Decomp/blob/ec3c85a98cffd9cd22c22ac14cd62fb584d23664/docs/port/README.md","https://github.com/z3xox/Tenkaichi3Decomp/blob/ec3c85a98cffd9cd22c22ac14cd62fb584d23664/install.py","https://github.com/z3xox/Tenkaichi3Decomp/blob/ec3c85a98cffd9cd22c22ac14cd62fb584d23664/config/SLUS_216.78.yaml","https://github.com/z3xox/Tenkaichi3Decomp/blob/ec3c85a98cffd9cd22c22ac14cd62fb584d23664/.github/workflows/release.yml","https://github.com/z3xox/Tenkaichi3Decomp/blob/ec3c85a98cffd9cd22c22ac14cd62fb584d23664/docs/agent_rules.md","https://github.com/z3xox/Tenkaichi3Decomp/blob/ec3c85a98cffd9cd22c22ac14cd62fb584d23664/LICENSE","https://github.com/z3xox/Tenkaichi3Decomp/blob/ec3c85a98cffd9cd22c22ac14cd62fb584d23664/LICENSE-MIT","https://github.com/z3xox/BT3-Decompiled/blob/95b950367364137130758ef82a218e607a54b703/README.md","https://github.com/z3xox/BT3-Decompiled/blob/95b950367364137130758ef82a218e607a54b703/LICENSE"],"category":"reconstruction-cases","description_en":"Compiles the decompiled code of Dragon Ball Z: Budokai Tenkaichi 3 (PS2, USA release SLUS-21678) for PC on a new renderer, sound, input and platform layer rather than an emulator. The game code comes from the separate BT3-Decompiled matching decompilation, and the game's data is read from the user's own disc image. The README reports the full game loop and experimental online play and says AI helped make the project; these results remain project-reported.","description_zh":"将 Dragon Ball Z: Budokai Tenkaichi 3（PS2 美版 SLUS-21678）的反编译代码编译到 PC，运行在新的渲染、音频、输入和平台层上，而非借助模拟器。游戏代码来自独立的 BT3-Decompiled 一致性反编译项目，游戏数据从使用者自备的光盘镜像读取。README 报告完整游戏流程可运行、联网对战处于实验阶段，并称项目借助 AI 完成；这些结果仍为项目报告。","entry_url":"https://awesomerea.org/resources/tenkaichi3-pc-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/tenkaichi3-pc-port-case/","evidence_url":"https://github.com/z3xox/Tenkaichi3Decomp/blob/ec3c85a98cffd9cd22c22ac14cd62fb584d23664/README.md","group":"cases","id":"tenkaichi3-pc-port-case","json_url":"https://awesomerea.org/resources/tenkaichi3-pc-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/tenkaichi3-pc-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/tenkaichi3-pc-port-case/index.md","name":"Budokai Tenkaichi 3: a native PC port built on a matching decompilation","name_zh":"Budokai Tenkaichi 3：基于一致性反编译的原生 PC 移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes a native PC port of the PS2 USA release, not an emulator: the game's code from BT3-Decompiled sits in src/ and include/ with PC changes behind #ifdef PORT, on a new platform layer with Vulkan and OpenGL 3.3 renderers, sound and input. It reports the whole game loop working (boot, movies, menus, saves, fights, split screen), plus experimental online play with rollback through a Cloudflare Worker matchmaking service whose source is included; the 32-bit Linux build has no rollback. The port log in docs/port records what is and is not verified.","Supply your own disc image of the unmodified USA release (SLUS-21678) as an .iso. The setup and install.py read the game's data from it and check SHA-1 digests of the extracted main program (SLUS_216.78) and menu program (BIN/DBZP.BIN); a patched or damaged image is rejected. The repository carries the built-in data tables as shapes without values (port/data), which the program fills from the disc at start; no game data is distributed.","Releases target 64-bit x86 Linux (glibc 2.35 or newer) and Windows 10/11 with Vulkan, falling back to OpenGL; Apple Silicon macOS is experimental and source-only. On Linux, install.py checks gcc/g++, clang with its Python bindings for the 64-bit pointer rewriting, glslc and SDL3, then reads the disc, builds the program and runs the game's demo fight headless as a self-test. Linux and Windows release archives are built in a Docker container (clang/LLVM, SDL3, mingw-w64) without any disc input.","The BT3-Decompiled README reports 99.92% of the main program's game code and 99.97% of the menu program in matching C, with both rebuilt binaries byte-identical; Sony SDK and CRI libraries are out of scope. The port log reports a replay recorded in PCSX2 matching console health values at sampled ticks and the final clock, while an early entry still noted differing fighter state words; macOS is reported to match the Linux state on every demo frame. These remain project-reported.","The port's own code is AGPL-3.0-only after commit 06e4671 and MIT up to and including it; bundled libraries keep their own terms. README states that the game code in src/ and include/ belongs to the game's rights holders, and BT3-Decompiled's CC0 1.0 dedication covers only its own reconstruction work. README says the project was made with AI help, and the docs carry working rules for parallel decompilation agents."],"requirements_zh":["README 将其描述为 PS2 美版的原生 PC 移植，而非模拟器：来自 BT3-Decompiled 的游戏代码位于 src/ 和 include/，PC 改动置于 #ifdef PORT 中，并运行在新的平台层上，提供 Vulkan 与 OpenGL 3.3 渲染、音频和输入。README 报告完整游戏流程可运行（启动、过场影片、菜单、存档、对战、分屏），另有实验性的回滚联网对战，通过随附源码的 Cloudflare Worker 配对服务连接；32 位 Linux 版本不支持回滚。docs/port 中的移植日志记录了哪些内容已核验、哪些尚未核验。","需自备未经修改的美版（SLUS-21678）光盘镜像，格式为 .iso。安装程序与 install.py 从中读取游戏数据，并校验提取出的主程序（SLUS_216.78）和菜单程序（BIN/DBZP.BIN）的 SHA-1 摘要；打过补丁或损坏的镜像会被拒绝。仓库仅以不含数值的结构形式保存内置数据表（port/data），程序启动时再从光盘填充；不分发任何游戏数据。","发行版面向 64 位 x86 Linux（glibc 2.35 或更新）和 Windows 10／11，需 Vulkan，无法使用时回退到 OpenGL；Apple Silicon macOS 为实验性支持，只能从源码构建。在 Linux 上，install.py 检查 gcc／g++、带 Python 绑定的 clang（用于 64 位指针改写）、glslc 和 SDL3，随后读取光盘、构建程序，并以无窗口方式运行游戏自带的演示对战作为自检。Linux 与 Windows 发行包在 Docker 容器（clang／LLVM、SDL3、mingw-w64）中构建，不使用任何光盘输入。","BT3-Decompiled 的 README 报告主程序 99.92%、菜单程序 99.97% 的游戏代码已为一致的 C 代码，两个重建二进制均与原版逐字节相同；Sony SDK 与 CRI 库不在范围内。移植日志报告，一段在 PCSX2 中录制的回放在抽样时刻的体力值及最终计时上与主机一致，但早期记录仍指出部分角色状态字不同；macOS 版据报告在演示对战的每一帧都与 Linux 状态相同。这些仍为项目报告。","移植自身的代码在提交 06e4671 之后采用 AGPL-3.0-only，此前（含该提交）采用 MIT；随附库保留各自条款。README 说明 src/ 和 include/ 中的游戏代码归游戏权利人所有，BT3-Decompiled 的 CC0 1.0 声明只覆盖其自身的重建工作。README 称项目借助 AI 完成，文档中也有供并行反编译智能体使用的工作规则。"],"targets":["game"],"url":"https://github.com/z3xox/Tenkaichi3Decomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/jhaizhou-ops/d2r-mobile/blob/9393b00ea9aca52d9254214da93738f26582562f/dm/README.md","https://github.com/jhaizhou-ops/d2r-mobile/blob/9393b00ea9aca52d9254214da93738f26582562f/dm/verify/README.md","https://github.com/jhaizhou-ops/d2r-mobile/blob/9393b00ea9aca52d9254214da93738f26582562f/docs/GAME_FILES.md","https://github.com/jhaizhou-ops/d2r-mobile/blob/9393b00ea9aca52d9254214da93738f26582562f/docs/DERIVED.md","https://github.com/jhaizhou-ops/d2r-mobile/blob/9393b00ea9aca52d9254214da93738f26582562f/docs/DEPENDENCIES.md","https://github.com/jhaizhou-ops/d2r-mobile/blob/9393b00ea9aca52d9254214da93738f26582562f/LICENSE"],"category":"reconstruction-cases","description_en":"Runs the Nintendo Switch release’s own aarch64 program natively on iPhone, iPad and Apple silicon Macs, rewriting only instructions that depend on the Horizon kernel and supplying its system services and the NVN graphics API on Metal. Shaders are translated offline from the user’s files, and the project adds its own touch interface and endgame features. It is a rehosting compatibility layer, not a decompilation or recompiled source.","description_zh":"在 iPhone、iPad 和 Apple 芯片 Mac 上原生运行 Nintendo Switch 版自身的 aarch64 程序，仅改写依赖 Horizon 内核的指令，并以 Metal 提供其系统服务与 NVN 图形 API。着色器由使用者自有文件离线转译，项目另行加入触控界面与终局玩法。这是重新托管的兼容层，不是反编译或重编译出的源码。","entry_url":"https://awesomerea.org/resources/d2r-mobile-switch-rehost-case/","entry_url_zh":"https://awesomerea.org/zh/resources/d2r-mobile-switch-rehost-case/","evidence_url":"https://github.com/jhaizhou-ops/d2r-mobile/blob/9393b00ea9aca52d9254214da93738f26582562f/README.md","group":"cases","id":"d2r-mobile-switch-rehost-case","json_url":"https://awesomerea.org/resources/d2r-mobile-switch-rehost-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/d2r-mobile-switch-rehost-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/d2r-mobile-switch-rehost-case/index.md","name":"D2R Mobile: rehosting Diablo II: Resurrected’s Switch program on Apple devices","name_zh":"D2R Mobile：在 Apple 设备上重新托管 Diablo II: Resurrected 的 Switch 程序","reconstruction_method":"other","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["Targets only the Switch release with the Reign of the Warlock expansion at 1.0.34.0 (PC 3.3.94012); the rewrite rules stop on other versions. README reports iPhone/iPad builds for A14/M1 or later (iOS 26, or iOS 18–25 via an older-API build) and native Apple silicon Mac builds; A16-and-earlier devices need an extra texture pack, Apple TV is a community developer preview, and Intel Macs, A13-and-earlier chips and online play are unsupported.","Supply your own Switch program files (ExeFS main, sdk and subsdk0) and RomFS update data for that version; the rewritten program, translated shaders and on-device resource folder are generated locally from them. The repository holds no game code, art, text or shaders, but records shader interface tables, graphics-API names and about 800 main-program addresses, itemized in docs/DERIVED.md.","The main route is a full build on an Apple silicon Mac with Xcode, the Python environment that setup.sh prepares and an Apple signing account; a no-Xcode route packages a prebuilt shell on Windows, with Linux packaging and sideloading-tool signing reported unverified. Shader translation bundles Ryujinx’s translator, and SPIRV-Cross emits Metal source.","dm/verify documents structural checks and Unicorn-based equivalence tests for every rewrite site, which need only the user’s files, plus unit tests. Save, tick-state and screenshot gates compare against ground-truth recordings from a patched Ryujinx; those recordings and driver scripts are not shipped, so these gates cannot be rerun from the repository. README reports a 44-device closed beta and dated iPhone 17 Pro Max measurements.","The project declares MIT; bundled third-party code keeps its own license (the Ryujinx translator MIT, deko3d-derived code zlib, FLIP BSD 3-Clause). Seven offline-play rewrites come from a community patch whose authorship and license are unknown. Blizzard and Nintendo retain their rights in the game."],"requirements_zh":["仅支持带 Reign of the Warlock 资料片、版本 1.0.34.0（对应 PC 3.3.94012）的 Switch 版；其他版本会被改写规则拦下。README 报告支持 A14／M1 及以上的 iPhone／iPad 构建（iOS 26，或经旧版 API 构建支持 iOS 18–25）以及原生 Apple 芯片 Mac 构建；A16 及更早设备需额外纹理包，Apple TV 为社区开发者预览版，Intel Mac、A13 及更早芯片和联机均不支持。","需自备该版本的 Switch 程序文件（ExeFS 中的 main、sdk、subsdk0）及 RomFS 更新数据；改写后的程序、转译后的着色器和设备端资源文件夹均据此在本地生成。仓库不含游戏代码、美术、文本或着色器，但记录了着色器接口表、图形 API 名称及约 800 个主程序地址，并在 docs/DERIVED.md 中逐项列明。","主要途径是在装有 Xcode 的 Apple 芯片 Mac 上完整构建，需 setup.sh 准备的 Python 环境及 Apple 签名账户；无 Xcode 途径在 Windows 上为预构建外壳打包，Linux 打包及侧载工具签名报告尚未验证。着色器转译内置 Ryujinx 的转译器，并由 SPIRV-Cross 生成 Metal 源码。","dm/verify 记录了对每个改写位置的结构检查和基于 Unicorn 的等价测试（只需使用者自有文件）以及单元测试。存档、逐 tick 状态和截图关卡与修补版 Ryujinx 录制的基准数据比对；这些录制及驱动脚本不随仓库提供，因此无法仅凭仓库重跑这些关卡。README 报告 44 台设备的封闭测试及注明日期的 iPhone 17 Pro Max 实测。","项目声明采用 MIT；内置第三方代码保留各自许可（Ryujinx 转译器为 MIT，源自 deko3d 的代码为 zlib，FLIP 为 BSD 3-Clause）。七条离线运行改写取自作者与许可均不明的社区补丁。Blizzard 与 Nintendo 对游戏的权利不受影响。"],"targets":["game"],"url":"https://github.com/jhaizhou-ops/d2r-mobile","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/OpenRAC/rac1-decomp/blob/7f5d3ff56701b611ac0e2c2589ef1f49cf8ac8fe/LEGAL.md","https://github.com/OpenRAC/rac1-decomp/blob/7f5d3ff56701b611ac0e2c2589ef1f49cf8ac8fe/CONTRIBUTING.md","https://github.com/OpenRAC/rac1-decomp/blob/7f5d3ff56701b611ac0e2c2589ef1f49cf8ac8fe/docs/BUILD_FIDELITY.md","https://github.com/OpenRAC/rac1-decomp/blob/7f5d3ff56701b611ac0e2c2589ef1f49cf8ac8fe/tools/build_sn.sh","https://github.com/OpenRAC/rac1-decomp/blob/7f5d3ff56701b611ac0e2c2589ef1f49cf8ac8fe/tools/check_image.py","https://github.com/OpenRAC/rac1-decomp/blob/7f5d3ff56701b611ac0e2c2589ef1f49cf8ac8fe/docs/AGENT_WORKFLOW.md","https://github.com/OpenRAC/rac1-decomp/blob/7f5d3ff56701b611ac0e2c2589ef1f49cf8ac8fe/docs/CONTAINERS.md","https://github.com/OpenRAC/rac1-decomp/blob/7f5d3ff56701b611ac0e2c2589ef1f49cf8ac8fe/.claude/agents/match-worker.md","https://github.com/OpenRAC/rac1-decomp/blob/7f5d3ff56701b611ac0e2c2589ef1f49cf8ac8fe/.recomp.json","https://github.com/OpenRAC/rac1-decomp/blob/7f5d3ff56701b611ac0e2c2589ef1f49cf8ac8fe/LICENSE","https://github.com/OpenRAC/rac1-decomp/blob/7f5d3ff56701b611ac0e2c2589ef1f49cf8ac8fe/THIRD_PARTY_NOTICES.md","https://bytematch.dev/OpenRAC/rac1-decomp"],"category":"reconstruction-cases","description_en":"Reconstructs C source for SCES_509.16, the PAL v2.00 PlayStation 2 executable of Ratchet & Clank (2002), with every function linked at its retail address. Functions not yet decompiled are still built from disassembly generated from the user's own executable, and the build audits functions, layout and the whole image against retail. The project documents an LLM-agent matching workflow and written build-fidelity rules for what counts as a match.","description_zh":"为 2002 年《Ratchet & Clank》PlayStation 2 欧版 v2.00 可执行文件 SCES_509.16 重建 C 源码，每个函数都链接在零售版的原地址。尚未反编译的函数仍由从使用者自备可执行文件生成的反汇编构建，构建会对照零售版审核函数、布局和整个映像。项目记录了由 LLM 代理执行匹配的流程，并以成文的构建保真规则界定何为匹配。","entry_url":"https://awesomerea.org/resources/rac1-matching-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rac1-matching-decomp-case/","evidence_url":"https://github.com/OpenRAC/rac1-decomp/blob/7f5d3ff56701b611ac0e2c2589ef1f49cf8ac8fe/README.md","group":"cases","id":"rac1-matching-decomp-case","json_url":"https://awesomerea.org/resources/rac1-matching-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rac1-matching-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rac1-matching-decomp-case/index.md","name":"Ratchet & Clank: a matching PS2 decompilation with a documented agent workflow","name_zh":"Ratchet & Clank：记录了代理流程的 PS2 一致性反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","attribution"],"requirements":["README describes a work-in-progress matching decompilation of SCES_509.16 (PAL v2.00) within the OpenRAC initiative; matched code is then refactored toward readable C++, with matching builds as regression tests. BUILD_FIDELITY.md records 3,591 matched functions as of 2026-10-07, and live progress is published on openrac.dev and bytematch.dev. The repository description names native PC reimplementation as a later goal; no port is part of this repository.","No game assets, retail executables or disassembly are included. Users supply SCES_509.16 from their own disc image, checked against the SHA-1 in README and LEGAL.md, and tools/setup_asm.sh generates the disassembly locally. LEGAL.md says the repository will not build a runnable game for anyone who does not own and dump a copy. Credited sibling projects, such as the Lombyte NTSC decompilation and the ReRAC PC port, are references.","Linux and macOS builds run in a prebuilt Wine container under Docker or Podman; Windows builds use Git Bash and Python 3.10+ natively, with a short repository path. Both clone community mirrors of SN Systems ProDG for PS2 3.01 and the SCE PS2 SDK 2.4. Game code compiles with ProDG GCC 2.95.3 and Sony SDK objects with EE-GCC 2.9-ee-991111; GNU as is used together with listed tools that model the original ps2eeas assembler and linker behaviour.","tools/build_sn.sh rebuilds from scratch, audits each decompiled function's bytes and address against retail, and compares every loaded section, allowing differences only inside known near-miss C functions; level code is checked per function. The image therefore matches retail outside in-progress functions rather than as a whole. CI enforces the build-fidelity list.","AGENT_WORKFLOW.md describes a lead model directing tiers of worker models whose candidates a strict match tool accepts or rejects; a Claude Code worker definition is committed, and a Ghidra MCP container serves decompilation to agents. Project code is GPLv3; reconstructed libraries and third-party components keep their own licenses, and the game and toolchains keep separate rights. CONTRIBUTING bans Sony SDK source and leaked material, and LEGAL.md reports that movie code derived from an SDK sample was reverted to assembly on 2026-09-30."],"requirements_zh":["README 将其描述为 OpenRAC 计划中针对 SCES_509.16（欧版 v2.00）的进行中一致性反编译；已匹配的代码会进一步重构为可读的 C++，并以一致构建作为回归测试。BUILD_FIDELITY.md 记录截至 2026-10-07 已匹配 3,591 个函数，实时进度发布在 openrac.dev 和 bytematch.dev 上。仓库简介把原生 PC 重新实现列为后续目标；本仓库不包含任何移植。","仓库不含游戏素材、零售版可执行文件或反汇编。使用者需从自有光盘镜像提供 SCES_509.16，并按 README 和 LEGAL.md 中的 SHA-1 校验，tools/setup_asm.sh 会在本地生成反汇编。LEGAL.md 指出，未自行拥有并转储游戏副本的人无法用本仓库构建出可运行的游戏。致谢中的同类项目（如 Lombyte 美版反编译和 ReRAC PC 移植）只是参考。","Linux 和 macOS 构建在 Docker 或 Podman 下的预构建 Wine 容器中运行；Windows 构建使用 Git Bash 和 Python 3.10+ 原生进行，仓库路径须保持简短。两种方式都需克隆 SN Systems ProDG for PS2 3.01 和 SCE PS2 SDK 2.4 的社区镜像。游戏代码使用 ProDG GCC 2.95.3 编译，Sony SDK 目标文件使用 EE-GCC 2.9-ee-991111；汇编使用 GNU as，并配合列明的工具模拟原 ps2eeas 汇编器和链接器的行为。","tools/build_sn.sh 会从头重建，对照零售版审核每个已反编译函数的字节与地址，并比较所有加载段，仅允许已知未完全匹配的 C 函数内部存在差异；关卡代码按函数逐一检查。因此映像只在进行中的函数之外与零售版一致，并非整体一致。CI 会强制执行构建保真清单。","AGENT_WORKFLOW.md 描述由一个主导模型调度多层工作模型，候选结果由严格的匹配工具判定接受与否；仓库提交了一个 Claude Code 工作代理定义，并提供向代理提供反编译结果的 Ghidra MCP 容器。项目代码采用 GPLv3；重建的库和第三方组件保留各自许可证，游戏和工具链另有权利约束。CONTRIBUTING 禁止使用 Sony SDK 源码和泄露材料，LEGAL.md 记录源自 SDK 示例的影片代码已于 2026-09-30 退回汇编。"],"targets":["game"],"url":"https://github.com/OpenRAC/rac1-decomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/BanjoRecomp/BanjoRecomp/blob/dbd52154bc1e00e56867b1fac94a8f907052f41b/BUILDING.md","https://github.com/BanjoRecomp/BanjoRecomp/blob/dbd52154bc1e00e56867b1fac94a8f907052f41b/banjo.us.rev0.toml","https://github.com/BanjoRecomp/BanjoRecomp/blob/dbd52154bc1e00e56867b1fac94a8f907052f41b/.gitmodules","https://github.com/BanjoRecomp/BanjoRecompSyms/blob/6820055ca076e94e30e53d917bd9e5f71c28ca20/README.md","https://github.com/BanjoRecomp/BanjoRecomp/blob/dbd52154bc1e00e56867b1fac94a8f907052f41b/COPYING","https://github.com/BanjoRecomp/BanjoRecomp/blob/dbd52154bc1e00e56867b1fac94a8f907052f41b/CONTRIBUTING.md","https://github.com/BanjoRecomp/BanjoRecomp/releases/tag/v1.0.2"],"category":"reconstruction-cases","description_en":"Uses N64Recomp to statically recompile the US 1.0 Nintendo 64 release of Banjo-Kazooie into a native port on N64ModernRuntime, rendered by RT64 and extended with mod support. Like Zelda 64: Recompiled, it is not built from decompiled source; a symbols repository generated from the Banjo-Kazooie decompilation supplies function names for locating code in the ROM and writing patches.","description_zh":"使用 N64Recomp 将美版 1.0 Nintendo 64《Banjo-Kazooie》静态重编译为基于 N64ModernRuntime 的原生移植版，由 RT64 渲染并加入模组支持。与 Zelda 64: Recompiled 一样，它并非基于反编译源码构建；由《Banjo-Kazooie》反编译项目生成的符号仓库提供函数名称，用于在 ROM 中定位代码和编写补丁。","entry_url":"https://awesomerea.org/resources/banjo-recompiled-case/","entry_url_zh":"https://awesomerea.org/zh/resources/banjo-recompiled-case/","evidence_url":"https://github.com/BanjoRecomp/BanjoRecomp/blob/dbd52154bc1e00e56867b1fac94a8f907052f41b/README.md","group":"cases","id":"banjo-recompiled-case","json_url":"https://awesomerea.org/resources/banjo-recompiled-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/banjo-recompiled-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/banjo-recompiled-case/index.md","name":"Banjo: Recompiled — an N64Recomp Banjo-Kazooie native port","name_zh":"Banjo: Recompiled：基于 N64Recomp 的《Banjo-Kazooie》原生移植","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","prerequisites","testing","license"],"requirements":["Plays only the user’s US 1.0 Nintendo 64 Banjo-Kazooie ROM, loading assets from it at startup; other dump formats of that ROM are converted to .z64. The repository and releases contain no game assets, and it is not an emulator for other ROMs; the game is changed through mods instead.","Release v1.0.2 (2026-07-31) ships Windows, macOS, Linux x64/ARM64 and Flatpak x64 builds. Runtime graphics need Direct3D 12.0 with Shader Model 6, Vulkan 1.2 or Metal Argument Buffers Tier 2; x86-64 CPUs need SSE4.1, and Macs need macOS 13.0+ with Apple Silicon or a 7th-generation Intel CPU.","Source builds need a recursive clone, CMake and Ninja with Clang (Visual Studio 2022 with Clang plus make on Windows), separately built N64Recomp and RSPRecomp, the BanjoRecompSyms submodule and a decompressed copy of the NTSC-U 1.0 ROM matching the SHA-1 in BUILDING.md; play uses the standard ROM.","The README reports faithful audio, intact N64 effects, widescreen, high frame rates, note saving and fixed duplicate Mumbo token IDs, and lists overlay software as a known problem. It publishes no equivalence or gameplay test; pinned-commit CI only builds the port.","GPLv3 project license; the original game, the decompilation and other dependencies keep separate terms. The team states that it does not use generative AI and bans GenAI-assisted contributions."],"requirements_zh":["仅可游玩用户自备的美版 1.0 Nintendo 64《Banjo-Kazooie》ROM，启动时从中加载素材；该 ROM 的其他转储格式会被转换为 .z64。仓库和发布包均不含游戏素材，它不是可运行其他 ROM 的模拟器，改动游戏需通过模组实现。","v1.0.2 版本（2026-07-31）提供 Windows、macOS、Linux x64／ARM64 及 Flatpak x64 构建。运行时显卡需支持带 Shader Model 6 的 Direct3D 12.0、Vulkan 1.2 或 Metal Argument Buffers Tier 2；x86-64 CPU 需支持 SSE4.1，Mac 需 macOS 13.0+ 并配备 Apple Silicon 或第 7 代 Intel CPU。","源码构建需要递归克隆、CMake 与 Ninja 加 Clang（Windows 上为带 Clang 的 Visual Studio 2022 及 make）、另行构建的 N64Recomp 和 RSPRecomp、BanjoRecompSyms 子模块，以及与 BUILDING.md 所列 SHA-1 一致的 NTSC-U 1.0 ROM 解压副本；游玩时使用标准 ROM。","README 称实现了忠实音频、完整保留的 N64 特效、宽屏、高帧率、音符保存，并修复了重复的 Mumbo 代币 ID，同时将叠加层软件列为已知问题。项目未公布等价性或游戏流程测试；固定提交上的 CI 仅构建移植程序。","项目采用 GPLv3；原游戏、反编译项目及其他依赖保留各自条款。团队声明不使用生成式 AI，并禁止使用生成式 AI 辅助的贡献。"],"targets":["game"],"url":"https://github.com/BanjoRecomp/BanjoRecomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/pret/pokefirered/blob/037335f4c725d7c9aecdac87066f2002b4bd7e14/INSTALL.md","https://github.com/pret/pokefirered/blob/037335f4c725d7c9aecdac87066f2002b4bd7e14/config.mk","https://github.com/pret/pokefirered/blob/037335f4c725d7c9aecdac87066f2002b4bd7e14/Makefile","https://github.com/pret/pokefirered/blob/037335f4c725d7c9aecdac87066f2002b4bd7e14/firered.sha1","https://github.com/pret/pokefirered/blob/037335f4c725d7c9aecdac87066f2002b4bd7e14/leafgreen.sha1","https://github.com/pret/pokefirered/blob/037335f4c725d7c9aecdac87066f2002b4bd7e14/firered_rev1.sha1","https://github.com/pret/pokefirered/blob/037335f4c725d7c9aecdac87066f2002b4bd7e14/leafgreen_rev1.sha1","https://github.com/pret/pokefirered/blob/037335f4c725d7c9aecdac87066f2002b4bd7e14/firered_switch.sha1","https://github.com/pret/pokefirered/blob/037335f4c725d7c9aecdac87066f2002b4bd7e14/leafgreen_switch.sha1","https://github.com/pret/pokefirered/blob/037335f4c725d7c9aecdac87066f2002b4bd7e14/compare.sh","https://github.com/pret/pokefirered/blob/037335f4c725d7c9aecdac87066f2002b4bd7e14/.github/workflows/build.yml","https://github.com/pret/pokefirered/blob/037335f4c725d7c9aecdac87066f2002b4bd7e14/docs/bugs_and_glitches.md","https://github.com/pret/pokefirered/tree/037335f4c725d7c9aecdac87066f2002b4bd7e14/tools","https://github.com/pret/agbcc/blob/da598c1d918402c42c0c0d7128ba14567f3175e9/gcc/COPYING"],"category":"reconstruction-cases","description_en":"Reconstructs the English Game Boy Advance releases of Pokémon FireRed and LeafGreen as buildable C source, with game scripts and data kept as assembler directives. Default agbcc builds produce six ROM images, covering both games' 1.0 and 1.1 releases and two variants labeled switch, each checked against its own SHA-1 manifest. Graphics and audio sources are committed in the tree, so the documented build reads no base ROM.","description_zh":"为 Game Boy Advance 英文版《宝可梦 火红／叶绿》重建可构建的 C 源码，游戏脚本和数据以汇编指令形式保存。默认的 agbcc 构建可生成六个 ROM 镜像，涵盖两款游戏的 1.0 与 1.1 版本及两个标为 switch 的变体，并分别按各自的 SHA-1 清单校验。图像和音频源文件已提交在仓库中，因此文档所述的构建流程不读取原 ROM。","entry_url":"https://awesomerea.org/resources/pokemon-firered-leafgreen-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/pokemon-firered-leafgreen-decomp-case/","evidence_url":"https://github.com/pret/pokefirered/blob/037335f4c725d7c9aecdac87066f2002b4bd7e14/README.md","group":"cases","id":"pokemon-firered-leafgreen-decomp-case","json_url":"https://awesomerea.org/resources/pokemon-firered-leafgreen-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/pokemon-firered-leafgreen-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pokemon-firered-leafgreen-decomp-case/index.md","name":"Pokémon FireRed and LeafGreen: a matching Game Boy Advance decompilation","name_zh":"《宝可梦 火红／叶绿》：生成一致 ROM 的 Game Boy Advance 反编译重建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes a decompilation of English FireRed and LeafGreen that builds six ROM images: each game’s original and rev1 releases plus variants named _switch, which config.mk builds as revision 10. INSTALL.md documents make, make leafgreen and the rev1 targets; the Makefile adds the _switch targets. Most code is C, while startup code, part of the m4a sound library and the GameCube multiboot library remain assembly, and three multiboot programs are included as prebuilt .gba binaries. The outputs are GBA ROMs, not a native PC port.","The documented build reads no original ROM: graphics, audio samples and map data are committed as PNG, WAV/AIF and JSON files and converted by bundled tools. Six .sha1 manifests name the target images (for example pokefirered.gba, SHA-1 41cb23d8dccc8ebd7c649cd8fbb58eeace6e2fdc), and README links each image’s No-Intro record. The contributor helper compare.sh hex-diffs the output against a baserom.gba only when one is present.","INSTALL.md covers Windows (WSL1 recommended; msys2 or Cygwin), macOS and Linux. On Debian/Ubuntu it lists build-essential, binutils-arm-none-eabi, git and libpng-dev; the matching builds also need pret/agbcc built and installed into the tree. make modern and the matching *_modern targets use devkitARM’s arm-none-eabi-gcc, and a TOOLCHAIN variable selects another ARM toolchain.","make compare and the compare_* targets check each built image against its .sha1 manifest; config.mk notes that comparison only makes sense for non-modern builds. CI compares all six images and also builds the modern target. docs/bugs_and_glitches.md lists original-game bugs that the optional BUGFIX and UBFIX defines change, so those builds intentionally diverge. These checks establish byte identity for the listed images.","The repository has no top-level license file and GitHub detects none; license files cover only some bundled tools, and agbcc’s GCC sources carry GPL v2. The original games’ code, graphics and audio remain subject to their rights holders."],"requirements_zh":["README 将其描述为英文版火红与叶绿的反编译项目，可构建六个 ROM 镜像：两款游戏的原版与 rev1 版，以及名为 _switch 的变体（config.mk 以修订版 10 构建）。INSTALL.md 说明 make、make leafgreen 及 rev1 目标；Makefile 另有 _switch 目标。大部分代码为 C，启动代码、m4a 音频库的一部分及 GameCube 多重启动库仍为汇编，三个多重启动程序以预编译 .gba 二进制形式收录。产物是 GBA ROM，不是原生 PC 移植。","文档所述的构建不读取原 ROM：图像、音频采样和地图数据以 PNG、WAV／AIF 和 JSON 文件提交在仓库中，由附带工具转换。六份 .sha1 清单列出目标镜像（例如 pokefirered.gba 的 SHA-1 为 41cb23d8dccc8ebd7c649cd8fbb58eeace6e2fdc），README 链接各镜像的 No-Intro 条目。贡献者辅助脚本 compare.sh 只在存在 baserom.gba 时对其与产物做十六进制差异比较。","INSTALL.md 涵盖 Windows（推荐 WSL1，也可用 msys2 或 Cygwin）、macOS 和 Linux。在 Debian／Ubuntu 上需 build-essential、binutils-arm-none-eabi、git 和 libpng-dev；一致性构建还需先构建 pret/agbcc 并安装到仓库中。make modern 及对应的 *_modern 目标使用 devkitARM 的 arm-none-eabi-gcc，TOOLCHAIN 变量可指定其他 ARM 工具链。","make compare 及各 compare_* 目标将构建出的镜像与对应 .sha1 清单比对；config.mk 注明比对只适用于非现代编译器构建。CI 比对全部六个镜像，并另外构建现代目标。docs/bugs_and_glitches.md 列出原游戏中的缺陷，可选的 BUGFIX 和 UBFIX 定义会修改这些行为，因此此类构建有意偏离原版。这些检查确认所列镜像的字节一致性。","仓库没有顶层许可证文件，GitHub 也未识别出许可证；许可证文件只覆盖部分附带工具，agbcc 的 GCC 源码附 GPL v2。原游戏的代码、图像和音频仍受其权利人约束。"],"targets":["game"],"url":"https://github.com/pret/pokefirered","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/HarbourMasters/PaperBoat/blob/d98b4b630f0674548067f59019fffef6885766e8/docs/BUILDING.md","https://github.com/HarbourMasters/PaperBoat/blob/d98b4b630f0674548067f59019fffef6885766e8/docs/android-ios-web.md","https://github.com/HarbourMasters/PaperBoat/blob/d98b4b630f0674548067f59019fffef6885766e8/CMakeLists.txt","https://github.com/HarbourMasters/PaperBoat/blob/d98b4b630f0674548067f59019fffef6885766e8/config.yml","https://github.com/HarbourMasters/PaperBoat/blob/d98b4b630f0674548067f59019fffef6885766e8/.gitmodules","https://github.com/HarbourMasters/PaperBoat/blob/d98b4b630f0674548067f59019fffef6885766e8/.github/workflows/build.yml","https://github.com/HarbourMasters/PaperBoat/blob/d98b4b630f0674548067f59019fffef6885766e8/LICENSE","https://github.com/HarbourMasters/PaperBoat/releases/tag/1.0.3"],"category":"reconstruction-cases","description_en":"Compiles Paper Mario decompilation sources, credited to the pmret and Paper Mario DX projects, into a native US-version application on libultraship. Torch converts the user’s own ROM into a local asset archive, and the port adds rendering backends, enhancements and archive-based mods. Desktop releases are published, while Android, iOS and web builds are documented on the development branch.","description_zh":"以 pmret 和 Paper Mario DX 项目为基础，将 Paper Mario 反编译源码编译为基于 libultraship 的原生美版应用。Torch 把使用者自己的 ROM 转换为本地素材归档，移植另加入多种渲染后端、增强功能和归档式模组。桌面版已有正式发布；Android、iOS 和网页构建则在开发分支中有文档说明。","entry_url":"https://awesomerea.org/resources/paperboat-paper-mario-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/paperboat-paper-mario-port-case/","evidence_url":"https://github.com/HarbourMasters/PaperBoat/blob/d98b4b630f0674548067f59019fffef6885766e8/README.md","group":"cases","id":"paperboat-paper-mario-port-case","json_url":"https://awesomerea.org/resources/paperboat-paper-mario-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/paperboat-paper-mario-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/paperboat-paper-mario-port-case/index.md","name":"PaperBoat: a native Paper Mario port built on the decompilation","name_zh":"PaperBoat：基于反编译成果的 Paper Mario 原生移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed develop snapshot follows release 1.0.3 (2026-10-11), whose packages cover Windows, Linux and macOS. CMake compiles the decompilation’s game C sources for VERSION_US with port code replacing the N64 boot and most OS layers. This is a native port that deliberately adds enhancements and fixes, not a matching ROM build or a static recompilation.","Requires the user’s US Paper Mario ROM with the SHA-1 listed in the README; config.yml carries recipes for that hash only, and the README states no copyrighted assets are included. Torch generates the pm64.o2r game archive on the user’s machine or device; that archive never ships with the app.","Source builds need the Torch and libultraship submodules, CMake 3.24+, Ninja and C99/C++20 compilers. Windows uses Visual Studio 2022 with clang-cl, because plain MSVC cl.exe is unsupported for the C99 decompilation sources. Renderers are DirectX 11, OpenGL and Metal. Android arm64-v8a, iOS 16.3+ and Emscripten builds are documented, with scripting and native mods disabled there.","The CI workflow builds Linux, Windows, macOS, iOS, Android and web artifacts and checks package contents; the platform guide states CI never touches a ROM, and its named desktop check script is absent from the reviewed tree. Nightly builds are labeled playtest-only with expected bugs and crashes. No gameplay-equivalence or performance results are reported.","The repository carries CC0-1.0 text, but GitHub detects no license for the credited pmret and Paper Mario DX repositories, and submodules have separate terms; the CC0 file is not treated as a grant over inherited code or game content. The README says AI-assisted pull requests are accepted under a HarbourMasters policy."],"requirements_zh":["所审 develop 快照晚于 1.0.3 版（2026-10-11），该版本提供 Windows、Linux 和 macOS 安装包。CMake 以 VERSION_US 编译反编译项目的游戏 C 源码，并用移植代码替换 N64 启动层和大部分系统层。这是有意加入增强与修复的原生移植，不是生成一致 ROM 的构建，也不是静态重编译。","需使用者自备美版 Paper Mario ROM，且 SHA-1 与 README 所列一致；config.yml 仅包含该哈希的配方，README 声明不包含受版权保护的素材。Torch 在使用者的电脑或设备上生成 pm64.o2r 游戏归档，该归档从不随应用分发。","源码构建需 Torch 与 libultraship 子模块、CMake 3.24+、Ninja 及 C99／C++20 编译器。Windows 使用 Visual Studio 2022 的 clang-cl，普通 MSVC cl.exe 不支持这些 C99 反编译源码。渲染后端为 DirectX 11、OpenGL 和 Metal。文档还说明 Android arm64-v8a、iOS 16.3+ 和 Emscripten 构建，这些平台禁用脚本与原生模组。","CI 工作流构建 Linux、Windows、macOS、iOS、Android 和网页产物，并检查打包内容；平台指南称 CI 从不接触 ROM，且其提到的桌面检查脚本在所审源码树中并不存在。夜间构建标明仅供试玩，可能出现错误和崩溃。项目未报告游戏行为等价或性能结果。","仓库附有 CC0-1.0 文本，但 GitHub 未识别出所致谢的 pmret 和 Paper Mario DX 仓库的许可证，子模块也另有条款；因此不把该 CC0 文件视为对继承代码或游戏内容的授权。README 说明在 HarbourMasters 政策范围内接受 AI 辅助的拉取请求。"],"targets":["game"],"url":"https://github.com/HarbourMasters/PaperBoat","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/kirklandsig/halo2-decompiled/blob/e25e96f9236a74b15ab0f0acaa7af53918ca1233/LEGAL.md","https://github.com/kirklandsig/halo2-decompiled/blob/e25e96f9236a74b15ab0f0acaa7af53918ca1233/PROVENANCE.md","https://github.com/kirklandsig/halo2-decompiled/blob/e25e96f9236a74b15ab0f0acaa7af53918ca1233/docs/PROGRESS.md","https://github.com/kirklandsig/halo2-decompiled/blob/e25e96f9236a74b15ab0f0acaa7af53918ca1233/tools/check.py","https://github.com/kirklandsig/halo2-decompiled/blob/e25e96f9236a74b15ab0f0acaa7af53918ca1233/CONTRIBUTING.md","https://github.com/kirklandsig/halo2-decompiled/blob/e25e96f9236a74b15ab0f0acaa7af53918ca1233/.github/workflows/python-tests.yml","https://github.com/kirklandsig/halo2-decompiled/blob/e25e96f9236a74b15ab0f0acaa7af53918ca1233/.github/workflows/decomp-dev.yml","https://github.com/kirklandsig/halo2-decompiled/blob/e25e96f9236a74b15ab0f0acaa7af53918ca1233/LICENSE"],"category":"reconstruction-cases","description_en":"A work-in-progress matching decompilation of Halo 2 for the original Xbox: contributors write C and C++ that the period compiler, building the whole program with link-time code generation, must turn back into the retail executable's bytes function by function. The README reports just under half of the game-function bytes matched and leaves a native port for a later stage. It discloses that much of the maintainer's work runs in Claude and Codex coding-agent lanes.","description_zh":"Halo 2（初代 Xbox）的进行中一致性反编译：贡献者编写 C 与 C++ 代码，由原时代编译器以链接时代码生成方式构建整个程序，须逐函数还原出零售版可执行文件的字节。README 报告游戏函数字节的匹配比例接近一半，原生移植留待后续阶段。项目披露维护者的大量工作在 Claude 与 Codex 编程智能体流水线中进行。","entry_url":"https://awesomerea.org/resources/halo2-matching-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/halo2-matching-decomp-case/","evidence_url":"https://github.com/kirklandsig/halo2-decompiled/blob/e25e96f9236a74b15ab0f0acaa7af53918ca1233/README.md","group":"cases","id":"halo2-matching-decomp-case","json_url":"https://awesomerea.org/resources/halo2-matching-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/halo2-matching-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/halo2-matching-decomp-case/index.md","name":"Halo 2: an agent-assisted matching decompilation of an LTCG Xbox build","name_zh":"Halo 2：智能体辅助的 LTCG Xbox 版一致性反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","testing","attribution","license"],"requirements":["README targets the retail disc build's default.xbe (internal name halo2ship.exe, linked 2004-09-28, XDK 5849, Visual C++ 7.1 with /LTCG), identified by SHA-256. At the reviewed commit it reports 9,115 of 11,321 game functions matched (46.90% of game-function bytes; 35.59% of all in-scope bytes). Decompilation and readability work are in progress and a native port is a later stage, so the project produces no playable or ported build.","Supply the retail default.xbe from a copy you are entitled to use, and the XDK 5849 development toolchain, yourself; neither is provided, and the maintainers will not help obtain the SDK. README says byte-for-byte checking currently depends on that original compiler, which no open-source toolchain can yet reproduce; analysis and documentation need neither. The repository holds no game assets, disc images or leaked material.","The tools are Python (requirements-dev.txt, with capstone for the checker). tools/build.py builds the whole game as one LTCG image with each source file's flags; tools/check.py compares every marked function with the retail bytes apart from relocated address fields, writes matched/near/todo status to config/functions.csv and exits nonzero while any function differs. Public CI runs the Python tests, whose retail and SDK tests skip without those local inputs, and exports the decomp.dev report from the committed CSV.","Match counts come from the project's checker; tools/masked.py lists differences the address masking can hide, such as nearby float constants and strings. PROVENANCE.md reports that earlier names drew on sources its policy forbids (third-party names derived from unreleased 2003 linker maps, and an internal 2007 debug build); those were removed or renamed with match status unchanged, while the derivation of names that follow the Halo CE decompilation is still under review.","Contributors' own work is CC0 1.0; LEGAL.md states this places no Halo 2 code, content or trademarks in the public domain, and the project is unaffiliated with Microsoft, Bungie or 343 Industries. README says much of the maintainer's decompilation runs in automated lanes driven by Claude and Codex, with each batch reviewed and checked before it lands, and it offers contributors a prompt for AI coding agents."],"requirements_zh":["README 的目标是零售光盘版的 default.xbe（内部名称 halo2ship.exe，链接于 2004-09-28，XDK 5849，Visual C++ 7.1 搭配 /LTCG），以 SHA-256 标识。所审提交报告 11,321 个游戏函数中已有 9,115 个匹配（占游戏函数字节的 46.90%，占全部范围内字节的 35.59%）。反编译与可读性整理仍在进行，原生移植属于后续阶段，因此项目尚不产出可游玩或已移植的构建。","需从有权使用的副本中自备零售版 default.xbe，并自行准备 XDK 5849 开发工具链；项目均不提供，维护者也不协助获取 SDK。README 说明逐字节检查目前依赖该原版编译器，尚无开源工具链能复现其输出；分析和文档工作则两者都不需要。仓库不含游戏素材、光盘镜像或泄露材料。","工具以 Python 编写（requirements-dev.txt，检查器需 capstone）。tools/build.py 按各源文件的编译选项把整个游戏构建为一个 LTCG 映像；tools/check.py 将每个已标注函数与零售版字节比较（重定位地址字段除外），把 matched／near／todo 状态写入 config/functions.csv，只要仍有函数不同便以非零状态退出。公开 CI 运行 Python 测试（缺少本地零售版与 SDK 输入时相关测试会跳过），并从已提交的 CSV 导出 decomp.dev 报告。","匹配数来自项目自身的检查器；tools/masked.py 列出地址屏蔽可能掩盖的差异，例如相近的浮点常量和字符串。PROVENANCE.md 报告，早期命名曾借助其政策禁止的来源（源自未公开 2003 年链接映射的第三方命名，以及一份内部 2007 年调试版本）；这些名称已删除或改名，函数匹配状态不变，而部分沿用 Halo CE 反编译的命名，其来源仍在审查中。","贡献者自身的工作采用 CC0 1.0；LEGAL.md 说明此举不会使 Halo 2 的代码、内容或商标进入公有领域，项目也与 Microsoft、Bungie 或 343 Industries 无关。README 称维护者的大量反编译工作在由 Claude 和 Codex 驱动的自动化流水线中进行，每批改动合入前都经审查与检查，并为贡献者提供可交给 AI 编程智能体的提示词。"],"targets":["game"],"url":"https://github.com/kirklandsig/halo2-decompiled","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/d07RiV/diabloweb/blob/c61ef19c54ea646aed328bd8cc82c8a5f1ebd81d/package.json","https://github.com/d07RiV/diabloweb/blob/c61ef19c54ea646aed328bd8cc82c8a5f1ebd81d/src/App.js","https://github.com/d07RiV/diabloweb/blob/c61ef19c54ea646aed328bd8cc82c8a5f1ebd81d/src/fs.js","https://github.com/d07RiV/devilution/blob/798b5122731ae4b5e0c91348e5c44cf79354a94e/README.md","https://github.com/d07RiV/devilution/blob/798b5122731ae4b5e0c91348e5c44cf79354a94e/LICENSE","https://github.com/d07RiV/devilution/blob/798b5122731ae4b5e0c91348e5c44cf79354a94e/build.js","https://github.com/diasurgical/devilution/blob/9f01757243412bb154d02d9af65c804159e6e0ea/README.md","https://github.com/diasurgical/devilution/blob/9f01757243412bb154d02d9af65c804159e6e0ea/LICENSE.md"],"category":"reconstruction-cases","description_en":"Runs Diablo in web browsers by compiling a stripped-down fork of Devilution, the community reconstruction of the game’s original source, to WebAssembly behind a React front end. The fork removes the Storm, DiabloUI, DirectX and Windows dependencies and reworks event handling for the browser. It is a port built on a reconstruction and reports no matching or behavior-equivalence checks of its own.","description_zh":"将社区重建 Diablo 原始源码的 Devilution 精简分支编译为 WebAssembly，并配合 React 前端，使 Diablo 可在网页浏览器中运行。该分支移除了 Storm、DiabloUI、DirectX 和 Windows 依赖，并为浏览器改写事件处理。这是基于重建成果的移植，本身未报告一致性或行为等价检查。","entry_url":"https://awesomerea.org/resources/diabloweb-devilution-wasm-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/diabloweb-devilution-wasm-port-case/","evidence_url":"https://github.com/d07RiV/diabloweb/blob/c61ef19c54ea646aed328bd8cc82c8a5f1ebd81d/README.md","group":"cases","id":"diabloweb-devilution-wasm-port-case","json_url":"https://awesomerea.org/resources/diabloweb-devilution-wasm-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/diabloweb-devilution-wasm-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/diabloweb-devilution-wasm-port-case/index.md","name":"DiabloWeb: a WebAssembly browser port built on Devilution","name_zh":"DiabloWeb：基于 Devilution 的 WebAssembly 浏览器移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["Reviewed diabloweb 1.0.39 at its last commit (May 2022). Prebuilt WebAssembly modules for the retail and shareware builds, and an MPQ compressor, are committed; their C/C++ source is the separate d07RiV/devilution fork. That fork’s README says many parts of the code were modified, correct behavior is not guaranteed and network play was broken; diabloweb carries WebSocket and WebRTC client modules.","The full game needs the user’s own DIABDAT.MPQ from an original copy (the page points to the GOG release); the shareware SPAWN.MPQ runs the free demo. Data files are selected or dropped in the browser, saves are kept in IndexedDB and can be downloaded or uploaded as .sv files, and the app can optionally compress the MPQ locally. Neither repository includes retail game data.","The front end is a webpack/React project built with Node.js. Rebuilding the WebAssembly modules requires Emscripten and the fork’s node build.js; the fork can also build a Windows app in Visual Studio 2017. README says the hosted page serves the shareware SPAWN.MPQ; local runs need it placed in the public folder.","Neither README reports tests, matching results or comparisons with the original executable, and the reviewed front-end tree has no test files. Reported playability rests on the hosted deployment.","diabloweb has no license file. The fork ships Unlicense text, yet its README limits the source to non-commercial use; current upstream Devilution uses the Sustainable Use License 1.0, and Blizzard retains its rights in Diablo and its data."],"requirements_zh":["所审阅的是 diabloweb 1.0.39 的最后一次提交（2022 年 5 月）。零售版与共享软件版的预构建 WebAssembly 模块及一个 MPQ 压缩器已提交入库；其 C／C++ 源码位于独立的 d07RiV/devilution 分支。该分支 README 称修改了大量代码、不保证行为正确且网络对战不可用；diabloweb 含 WebSocket 和 WebRTC 客户端模块。","完整游戏需使用者从正版取得的 DIABDAT.MPQ（页面指向 GOG 版）；共享软件版 SPAWN.MPQ 可运行免费试玩。数据文件在浏览器中选择或拖入，存档保存在 IndexedDB，可作为 .sv 文件下载或上传，应用也可在本地选择压缩 MPQ。两个仓库均不含零售版游戏数据。","前端是以 Node.js 构建的 webpack／React 项目。重建 WebAssembly 模块需要 Emscripten 及分支中的 node build.js；该分支也可用 Visual Studio 2017 构建 Windows 应用。README 称托管页面提供共享软件版 SPAWN.MPQ；本地运行需将其放入 public 文件夹。","两份 README 均未报告测试、一致性结果或与原可执行文件的对照，所审阅的前端代码树也没有测试文件。可游玩性的依据是托管部署。","diabloweb 没有许可文件。分支附带 Unlicense 文本，但其 README 将源码限于非商业用途；当前上游 Devilution 采用 Sustainable Use License 1.0，Blizzard 仍保有 Diablo 及其数据的权利。"],"targets":["game"],"url":"https://github.com/d07RiV/diabloweb","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/pret/pokered/blob/af519899719f0754965776faac0e836a3b906e6d/INSTALL.md","https://github.com/pret/pokered/blob/af519899719f0754965776faac0e836a3b906e6d/Makefile","https://github.com/pret/pokered/blob/af519899719f0754965776faac0e836a3b906e6d/roms.sha1","https://github.com/pret/pokered/blob/af519899719f0754965776faac0e836a3b906e6d/.rgbds-version","https://github.com/pret/pokered/blob/af519899719f0754965776faac0e836a3b906e6d/.github/workflows/main.yml","https://github.com/pret/pokered/blob/af519899719f0754965776faac0e836a3b906e6d/.github/checkdiff.sh","https://github.com/pret/pokered/tree/af519899719f0754965776faac0e836a3b906e6d/vc"],"category":"reconstruction-cases","description_en":"Reconstructs the Game Boy games Pokémon Red and Blue as RGBDS assembly, with graphics and data kept as editable source files. One tree builds the USA/Europe Red and Blue ROMs, a Blue debug build and patches for the Virtual Console releases, each checked against a recorded SHA-1. It is a full disassembly rather than a decompilation into a higher-level language.","description_zh":"以 RGBDS 汇编重建 Game Boy 游戏《精灵宝可梦 红／蓝》，图像和数据以可编辑的源文件保存。同一源码树可构建美版／欧版红、蓝 ROM、一个蓝版调试构建以及 Virtual Console 版本的补丁，并逐一与记录的 SHA-1 比对。它是完整的反汇编项目，而非反编译为高级语言的源码。","entry_url":"https://awesomerea.org/resources/pokered-disassembly-case/","entry_url_zh":"https://awesomerea.org/zh/resources/pokered-disassembly-case/","evidence_url":"https://github.com/pret/pokered/blob/af519899719f0754965776faac0e836a3b906e6d/README.md","group":"cases","id":"pokered-disassembly-case","json_url":"https://awesomerea.org/resources/pokered-disassembly-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/pokered-disassembly-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pokered-disassembly-case/index.md","name":"pokered: a matching Pokémon Red and Blue disassembly","name_zh":"pokered：一致构建的《精灵宝可梦 红／蓝》反汇编","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README says the disassembly builds Pokemon Red (UE), Pokemon Blue (UE), the BLUEMONS.GB debug build and two Virtual Console patch files, listing a SHA-1 for each. Code, text, maps and audio are RGBDS assembly, and graphics are PNG files converted during the build; Virtual Console patches come from separate VC builds and patch templates.","The build reads no original ROM: every input is in the repository, so the outputs are rebuilt from source rather than combined with extracted assets. The repository therefore carries the game's text, graphics and data in source form.","INSTALL.md covers Linux distributions, macOS with Homebrew, Windows through WSL (or Cygwin on older Windows) and Termux. The build needs make, gcc or clang, git and rgbds 1.0.4, which the repository pins; helper tools under tools/ handle graphics conversion, compression and patch generation.","make compare builds every target and runs sha1sum against roms.sha1. pret's CI does this on Linux and macOS with rgbds 1.0.4 and fails when the build leaves uncommitted changes, while forks only build. Matching hashes show identical output bytes.","The repository has no license file, so reuse terms for the disassembly are unstated, and the original game's content remains its rights holders'. rgbds is a separate project with its own terms."],"requirements_zh":["README 称该反汇编可构建 Pokemon Red (UE)、Pokemon Blue (UE)、BLUEMONS.GB 调试构建及两个 Virtual Console 补丁文件，并逐一列出 SHA-1。代码、文本、地图和音频均为 RGBDS 汇编，图像为构建时转换的 PNG 文件；Virtual Console 补丁由单独的 VC 构建和补丁模板生成。","构建不读取任何原版 ROM：所有输入都在仓库中，因此产物完全由源码重新生成，而不是与提取的素材合并。也就是说，仓库本身以源文件形式包含游戏的文本、图像和数据。","INSTALL.md 涵盖各 Linux 发行版、通过 Homebrew 的 macOS、通过 WSL 的 Windows（旧版 Windows 用 Cygwin）以及 Termux。构建需要 make、gcc 或 clang、git 和仓库固定的 rgbds 1.0.4；tools/ 下的辅助工具负责图像转换、压缩及补丁生成。","make compare 构建全部目标，并依据 roms.sha1 运行 sha1sum。pret 的 CI 在 Linux 和 macOS 上用 rgbds 1.0.4 执行此检查，构建若留下未提交的改动即判失败，分叉仓库则只构建。哈希一致说明输出字节相同。","仓库没有许可证文件，反汇编的复用条款未作说明，原游戏内容仍归其权利人所有。rgbds 是独立项目，适用其自身条款。"],"targets":["game"],"url":"https://github.com/pret/pokered","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/HarbourMasters/Lighthouse/blob/4e8dfd23c64b143eb93ae9ee9fbae832cae2a2ef/docs/BUILDING.md","https://github.com/HarbourMasters/Lighthouse/blob/4e8dfd23c64b143eb93ae9ee9fbae832cae2a2ef/src/core2/ba/anim.c","https://github.com/HarbourMasters/Lighthouse/blob/4e8dfd23c64b143eb93ae9ee9fbae832cae2a2ef/CMakeLists.txt","https://github.com/HarbourMasters/Lighthouse/blob/4e8dfd23c64b143eb93ae9ee9fbae832cae2a2ef/.gitmodules","https://github.com/HarbourMasters/Lighthouse/blob/4e8dfd23c64b143eb93ae9ee9fbae832cae2a2ef/LICENSE.md","https://github.com/Kenix3/libultraship/blob/62e973aeb4a53ad4d22bb91e2d9373ecdfcd246c/README.md","https://github.com/HarbourMasters/Torch/blob/72960ca16f4723f96aaf4037b76072c230af8c11/README.md","https://github.com/HarbourMasters/Lighthouse/releases/tag/1.1.0"],"category":"reconstruction-cases","description_en":"A native Windows, Linux and macOS port of Banjo-Kazooie that compiles game C sources, many tagged with their Banjo-Kazooie decompilation file paths, against libultraship, a reimplementation of the N64 SDK. Torch extracts the user’s ROM into an asset archive, and the port adds Anchor multiplayer, romhack and language-pack support and a randomizer. Unlike Banjo: Recompiled, it builds from decompiled source rather than statically recompiling the ROM’s code.","description_zh":"一个面向 Windows、Linux 和 macOS 的《Banjo-Kazooie》原生移植，将游戏 C 源码（其中许多标注了《Banjo-Kazooie》反编译项目中的文件路径）与重新实现 N64 SDK 的 libultraship 一起编译。Torch 将用户的 ROM 提取为素材归档；移植版还加入了 Anchor 联机、ROM 修改版与语言包支持以及随机器。与 Banjo: Recompiled 不同，它基于反编译源码构建，而非对 ROM 代码进行静态重编译。","entry_url":"https://awesomerea.org/resources/lighthouse-banjo-kazooie-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/lighthouse-banjo-kazooie-port-case/","evidence_url":"https://github.com/HarbourMasters/Lighthouse/blob/4e8dfd23c64b143eb93ae9ee9fbae832cae2a2ef/README.md","group":"cases","id":"lighthouse-banjo-kazooie-port-case","json_url":"https://awesomerea.org/resources/lighthouse-banjo-kazooie-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/lighthouse-banjo-kazooie-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/lighthouse-banjo-kazooie-port-case/index.md","name":"Lighthouse: a Banjo-Kazooie PC port built on the decompilation","name_zh":"Lighthouse：基于反编译项目的《Banjo-Kazooie》PC 移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","scope","prerequisites","testing","license"],"requirements":["Requires a supported retail ROM in .z64 form, identified by SHA-1 in the README: US 1.0, US 1.1, Japanese or PAL. It is extracted into a local bk.o2r archive; other regions can be added as language packs, and romhacks need the US 1.0 base. The repository includes no copyrighted game assets.","Release 1.1.0 “Hatteras Alfa” (2026-08-17) ships Windows x64, Linux and macOS archives. Rendering backends are DirectX 11 (Windows default), OpenGL on all platforms and Metal (macOS default).","Source builds need the libultraship and Torch submodules and CMake, plus Visual Studio 2022 (MSVC v143), Python 3 and at least 8 GB RAM on Windows, GCC or Clang with Ninja and the listed SDL2, libzip, tinyxml2, spdlog, Boost and Vorbis packages on Linux, or Xcode and the listed packages on macOS. Build targets extract bk.o2r from the ROM and package port assets as lighthouse.o2r.","The README publishes no matching or fidelity checks. Most supported romhacks are not fully tested, and CI nightly builds are for playtesting and may crash.","The repository is dedicated under CC0 1.0; submodules keep their own licenses, and the game is not covered. The README discloses AI assistance for information gathering and accepts AI-assisted pull requests under the HarbourMasters policy."],"requirements_zh":["需要 README 中以 SHA-1 标明的受支持零售版 .z64 ROM：美版 1.0、美版 1.1、日版或 PAL 版。ROM 会被提取为本地 bk.o2r 归档；其他地区版本可作为语言包加入，ROM 修改版则需以美版 1.0 为基础。仓库不含受版权保护的游戏素材。","1.1.0“Hatteras Alfa”版本（2026-08-17）提供 Windows x64、Linux 和 macOS 压缩包。渲染后端包括 DirectX 11（Windows 默认）、全平台可用的 OpenGL 以及 Metal（macOS 默认）。","源码构建需要 libultraship 与 Torch 子模块和 CMake；Windows 上另需 Visual Studio 2022（MSVC v143）、Python 3 和至少 8 GB 内存，Linux 上需 GCC 或 Clang、Ninja 及列出的 SDL2、libzip、tinyxml2、spdlog、Boost 和 Vorbis 软件包，macOS 上需 Xcode 及列出的软件包。构建目标会从 ROM 提取 bk.o2r，并将移植专用素材打包为 lighthouse.o2r。","README 未公布字节一致或保真度检查。大多数受支持的 ROM 修改版尚未充分测试，CI 每夜构建仅供试玩且可能崩溃。","仓库以 CC0 1.0 发布；子模块保留各自许可证，游戏本身不在许可范围内。README 披露曾借助 AI 收集信息，并按 HarbourMasters 政策接受使用 AI 的拉取请求。"],"targets":["game"],"url":"https://github.com/HarbourMasters/Lighthouse","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/freefrank/LostOdysseyRecomp/blob/32fb6f73efef0e34ac05913b8521bad026b4ff65/docs/BUILDING.md","https://github.com/freefrank/LostOdysseyRecomp/blob/32fb6f73efef0e34ac05913b8521bad026b4ff65/docs/INSTALLING.md","https://github.com/freefrank/LostOdysseyRecomp/blob/32fb6f73efef0e34ac05913b8521bad026b4ff65/docs/STATUS.md","https://github.com/freefrank/LostOdysseyRecomp/blob/32fb6f73efef0e34ac05913b8521bad026b4ff65/docs/AI_WORKFLOW.md","https://github.com/freefrank/LostOdysseyRecomp/blob/32fb6f73efef0e34ac05913b8521bad026b4ff65/docs/notes/recomp.md","https://github.com/freefrank/LostOdysseyRecomp/blob/32fb6f73efef0e34ac05913b8521bad026b4ff65/docs/ROADMAP.md","https://github.com/freefrank/LostOdysseyRecomp/blob/32fb6f73efef0e34ac05913b8521bad026b4ff65/.gitmodules","https://github.com/freefrank/LostOdysseyRecomp/blob/32fb6f73efef0e34ac05913b8521bad026b4ff65/CMakeLists.txt","https://github.com/freefrank/LostOdysseyRecomp/blob/32fb6f73efef0e34ac05913b8521bad026b4ff65/LICENSE","https://github.com/freefrank/LostOdysseyRecomp/releases/tag/v1.0.4"],"category":"reconstruction-cases","description_en":"Translates Lost Odyssey’s Xbox 360 PowerPC executable with patched XenonRecomp tooling and runs the generated code on a native runtime that renders through Direct3D 12, Vulkan or Metal. Windows, Linux, macOS and Android packages import the user’s own disc data. The maintainer documents development with Claude Code and Codex CLI and records each release separately from validation and acceptance.","description_zh":"使用打过补丁的 XenonRecomp 工具转换 Lost Odyssey 的 Xbox 360 PowerPC 可执行文件，并在原生运行时上运行生成代码，经 Direct3D 12、Vulkan 或 Metal 渲染。Windows、Linux、macOS 和 Android 安装包导入使用者自己的光盘数据。维护者记录了借助 Claude Code 与 Codex CLI 的开发过程，并把每次发布与验证、验收分开记录。","entry_url":"https://awesomerea.org/resources/lost-odyssey-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/lost-odyssey-recomp-case/","evidence_url":"https://github.com/freefrank/LostOdysseyRecomp/blob/32fb6f73efef0e34ac05913b8521bad026b4ff65/README.md","group":"cases","id":"lost-odyssey-recomp-case","json_url":"https://awesomerea.org/resources/lost-odyssey-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/lost-odyssey-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/lost-odyssey-recomp-case/index.md","name":"Lost Odyssey Recomp: statically recompiling an Xbox 360 RPG into native ports","name_zh":"Lost Odyssey Recomp：将 Xbox 360 角色扮演游戏静态重编译为原生移植","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed main snapshot follows v1.0.4 (2026-10-18), packaged for Windows x64 with AVX, Linux x64 AppImage/Flatpak, macOS 15+ on Apple Silicon and 64-bit Android 8.0+ with Vulkan. STATUS.md and ROADMAP.md record each release as published but not accepted by the maintainer. This is static recompilation of the shipped executable, not recovered authored source or a general Xbox 360 emulator.","Players import data from one supported four-disc set, Asian multilingual or USA/Europe (Title ID 4D5307FA); Disc 1 is required, DLC is optional, and other regions, title updates and modified XEX files are unsupported. Source builds use the Asian multilingual Disc 1 default.xex, LO.fpi and resource archives, and BUILDING.md still calls four-disc integration incomplete. Game data and generated code are kept out of the repository.","Builds need submodules including XenonRecomp, XenosRecomp, plume and SDL 3, with project patches applied, plus Python 3.11+, CMake 3.28+, Ninja and Clang: clang-cl with Visual Studio 2022 Build Tools on Windows 10 1803+, or Clang/LLD with a Vulkan driver on Linux. tools/ppc_codegen.py regenerates the guest sources locally before the runtime build.","STATUS.md separates implementation, validation, acceptance and release; for example, v1.0.4’s save fix passed a logic review, a CPU fixture and a Release link but was not run in-game. Upscaler and rendering checks name bounded fixtures and GPUs. The workflow guide states that a release does not mean the game was completed start to finish.","GPL-3.0 covers project code; Lost Odyssey and its assets belong to their owners, and dependencies such as the Xenia FFmpeg fork, DXC, optional DLSS/FSR/XeSS SDKs and Android GPU drivers keep their own terms. docs/AI_WORKFLOW.md says one maintainer used Claude Code as the main session with Codex CLI and subagents; Ghidra scripts and a third-party reverse-engineering skill are referenced."],"requirements_zh":["所审 main 快照晚于 v1.0.4（2026-10-18），安装包覆盖支持 AVX 的 Windows x64、Linux x64 AppImage／Flatpak、Apple Silicon 上的 macOS 15+，以及支持 Vulkan 的 64 位 Android 8.0+。STATUS.md 和 ROADMAP.md 将每个版本记录为已发布但未经维护者验收。这是对已发行可执行文件的静态重编译，不是恢复出的原作者源码，也不是通用 Xbox 360 模拟器。","玩家需从一套受支持的四碟版本导入数据：亚洲多语言版或美欧版（Title ID 4D5307FA）；必须有第 1 碟，DLC 可选，其他地区版本、标题更新和修改过的 XEX 均不受支持。源码构建使用亚洲多语言版第 1 碟的 default.xex、LO.fpi 及资源归档，且 BUILDING.md 仍称四碟集成尚未完成。游戏数据和生成代码均不纳入仓库。","构建需 XenonRecomp、XenosRecomp、plume、SDL 3 等子模块并应用项目补丁，另需 Python 3.11+、CMake 3.28+、Ninja 和 Clang：Windows 10 1803+ 上使用 Visual Studio 2022 Build Tools 的 clang-cl，Linux 上使用 Clang／LLD 及 Vulkan 驱动。tools/ppc_codegen.py 会在构建运行时之前于本地重新生成客体代码源文件。","STATUS.md 将实现、验证、验收和发布分开记录；例如 v1.0.4 的存档修复通过了逻辑审查、一项 CPU 测试夹具和 Release 链接，但未在游戏中运行。超分辨率与渲染检查只针对列明的有限测试夹具和 GPU。工作流指南说明，发布不代表游戏已从头到尾通关。","项目代码采用 GPL-3.0；Lost Odyssey 及其素材归各自权利人所有，Xenia FFmpeg 分支、DXC、可选的 DLSS／FSR／XeSS SDK 及 Android GPU 驱动等依赖保留各自条款。docs/AI_WORKFLOW.md 说明由一名维护者以 Claude Code 作为主会话，并配合 Codex CLI 与子代理开发；文档提到 Ghidra 脚本和第三方逆向技能。"],"targets":["game"],"url":"https://github.com/freefrank/LostOdysseyRecomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/doldecomp/melee/blob/f0cdbb0a7046aea44c7177fd72abf33c3d2af4d4/config/GALE01/build.sha1","https://github.com/doldecomp/melee/blob/f0cdbb0a7046aea44c7177fd72abf33c3d2af4d4/configure.py","https://github.com/doldecomp/melee/blob/f0cdbb0a7046aea44c7177fd72abf33c3d2af4d4/.github/CONTRIBUTING.md","https://github.com/doldecomp/melee/blob/f0cdbb0a7046aea44c7177fd72abf33c3d2af4d4/.github/workflows/build.yml","https://github.com/doldecomp/melee/blob/f0cdbb0a7046aea44c7177fd72abf33c3d2af4d4/.github/scripts/check_complete.py","https://github.com/doldecomp/melee/blob/f0cdbb0a7046aea44c7177fd72abf33c3d2af4d4/CMakeLists.txt","https://decomp.dev/doldecomp/melee","https://web.archive.org/web/20261020041847/https://decomp.dev/doldecomp/melee/GALE01/f0cdbb0a7046aea44c7177fd72abf33c3d2af4d4.json"],"category":"reconstruction-cases","description_en":"A matching decompilation of Super Smash Bros. Melee's US 1.02 release (GALE01) that rebuilds main.dol from C with the original Metrowerks compilers and checks it against the retail SHA-1. decomp.dev reports the code fully decompiled and linked at the reviewed commit, and the README says current work is mostly naming and cleanup. Because the build can be shifted, a separate non-matching mode lets modders add code to a DOL run with their own disc dump.","description_zh":"Super Smash Bros. Melee 美版 1.02（GALE01）的一致性反编译：使用原版 Metrowerks 编译器从 C 代码重建 main.dol，并与零售版的 SHA-1 比对。decomp.dev 报告所审提交的代码已完全反编译并链接，README 称目前工作主要是命名与清理。由于构建可以移位，另有非一致性模式，供模组作者加入代码，再配合自己转储的光盘运行生成的 DOL。","entry_url":"https://awesomerea.org/resources/melee-matching-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/melee-matching-decomp-case/","evidence_url":"https://github.com/doldecomp/melee/blob/f0cdbb0a7046aea44c7177fd72abf33c3d2af4d4/.github/README.md","group":"cases","id":"melee-matching-decomp-case","json_url":"https://awesomerea.org/resources/melee-matching-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/melee-matching-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/melee-matching-decomp-case/index.md","name":"Super Smash Bros. Melee: a matching GameCube decompilation with a shiftable build","name_zh":"Super Smash Bros. Melee：可移位构建的 GameCube 一致性反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes a matching decompilation that builds the US 1.02 main.dol (game ID GALE01) with SHA-1 08e0bf20134dfcb260699671004527b2d6bb1a45, the digest config/GALE01/build.sha1 checks. decomp.dev reports 100.00% decompiled and 100.00% fully linked for this commit, and README says most effort now goes to naming and cleanup. The output is a GameCube DOL, not a PC executable; the CMake library and DWARF packages CI also builds are not documented as a playable port.","Supply main.dol from your own GALE01 disc; the repository's orig/GALE01 folders hold only placeholders. The README's modding path needs the whole disc dumped to a folder, enables configure.py --non-matching with new objects marked Equivalent, and runs the rebuilt DOL in Dolphin. Such modified builds are not byte-identical to retail.","Host tools are Python and ninja on Windows (native tooling recommended), macOS (Game Porting Toolkit runs the Windows compilers) or Linux (WiBo on x86, Wine elsewhere). configure.py sets up decomp-toolkit, sjiswrap and the Metrowerks GC/1.2.5 and GC/1.1p1 compilers with the GC/1.3.2 linker; objdiff diffs objects and tools/decomp.py drafts functions with m2c. CI builds link, test and debug modes in a build container that provides the original files, plus a Nix matching build.","Matching rests on the linked DOL's SHA-1 and objdiff's per-unit report; CI's check_complete.py warns when a unit matches fully but is not yet marked complete. The 100% figures are decomp.dev's report for this commit.","No repository-wide licence file is present at the reviewed commit and GitHub detects none; bundled tools under tools/ carry their own licences, and the game, its DOL and assets keep their rights holders' terms. CONTRIBUTING.md says using AI to match functions is acceptable and frequently practiced, while asking contributors not to let AI name struct fields or global identifiers or attempt data-section matches."],"requirements_zh":["README 将其描述为一致性反编译，构建美版 1.02 的 main.dol（游戏 ID GALE01），SHA-1 为 08e0bf20134dfcb260699671004527b2d6bb1a45，即 config/GALE01/build.sha1 校验的摘要。decomp.dev 报告此提交 100.00% 已反编译、100.00% 已完全链接，README 称目前主要精力在命名与清理。产物是 GameCube DOL，不是 PC 可执行文件；CI 另外构建的 CMake 库与 DWARF 软件包并未被记载为可游玩的移植。","需从自己的 GALE01 光盘取得 main.dol；仓库中的 orig/GALE01 目录只有占位文件。README 的模组流程需把整张光盘转储到文件夹，启用 configure.py --non-matching 并将新对象标为 Equivalent，再在 Dolphin 中运行重建的 DOL。这类修改后的构建与零售版并非逐字节相同。","宿主工具为 Python 与 ninja，可在 Windows（推荐原生工具）、macOS（以 Game Porting Toolkit 运行 Windows 编译器）或 Linux（x86 上用 WiBo，其他架构用 Wine）上使用。configure.py 配置 decomp-toolkit、sjiswrap 以及 Metrowerks GC/1.2.5 与 GC/1.1p1 编译器和 GC/1.3.2 链接器；objdiff 用于逐对象比较，tools/decomp.py 借助 m2c 生成函数草稿。CI 在提供原始文件的构建容器中构建 link、test 和 debug 三种模式，并另做一次基于 Nix 的一致性构建。","一致性依据链接后 DOL 的 SHA-1 与 objdiff 的逐单元报告；CI 的 check_complete.py 会在某单元已完全匹配但尚未标记完成时发出警告。100% 数据为 decomp.dev 对此提交的报告。","所审提交没有仓库级许可文件，GitHub 也未识别出许可；tools/ 下随附的工具各有许可，游戏本身、其 DOL 与素材仍受权利人条款约束。CONTRIBUTING.md 说明用 AI 匹配函数是可接受且常见的做法，但要求贡献者不要让 AI 命名结构体字段或全局标识符，也不要让其尝试匹配数据段。"],"targets":["game"],"url":"https://github.com/doldecomp/melee","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/pret/pokecrystal/blob/3bc8daa4173e96a7f4011dad3922eb6fa5dad5c6/INSTALL.md","https://github.com/pret/pokecrystal/blob/3bc8daa4173e96a7f4011dad3922eb6fa5dad5c6/FAQ.md","https://github.com/pret/pokecrystal/blob/3bc8daa4173e96a7f4011dad3922eb6fa5dad5c6/Makefile","https://github.com/pret/pokecrystal/blob/3bc8daa4173e96a7f4011dad3922eb6fa5dad5c6/roms.sha1","https://github.com/pret/pokecrystal/blob/3bc8daa4173e96a7f4011dad3922eb6fa5dad5c6/.rgbds-version","https://github.com/pret/pokecrystal/blob/3bc8daa4173e96a7f4011dad3922eb6fa5dad5c6/.github/workflows/main.yml","https://github.com/pret/pokecrystal/blob/3bc8daa4173e96a7f4011dad3922eb6fa5dad5c6/docs/vc_patch.md","https://github.com/pret/pokecrystal/blob/3bc8daa4173e96a7f4011dad3922eb6fa5dad5c6/docs/bugs_and_glitches.md"],"category":"reconstruction-cases","description_en":"Reconstructs the Game Boy Color game Pokémon Crystal as RGBDS assembly, with graphics, maps and data stored as editable sources. One tree builds the international 1.0 and 1.1 releases, the Australian release, two debug builds and a Virtual Console patch, each checked against a recorded SHA-1. Companion documentation covers script command formats and known bugs in the original game.","description_zh":"以 RGBDS 汇编重建 Game Boy Color 游戏《精灵宝可梦 水晶》，图像、地图和数据以可编辑的源文件保存。同一源码树可构建国际版 1.0 与 1.1、澳大利亚版、两个调试构建以及一个 Virtual Console 补丁，并逐一与记录的 SHA-1 比对。配套文档说明脚本命令格式以及原版游戏中的已知错误。","entry_url":"https://awesomerea.org/resources/pokecrystal-disassembly-case/","entry_url_zh":"https://awesomerea.org/zh/resources/pokecrystal-disassembly-case/","evidence_url":"https://github.com/pret/pokecrystal/blob/3bc8daa4173e96a7f4011dad3922eb6fa5dad5c6/README.md","group":"cases","id":"pokecrystal-disassembly-case","json_url":"https://awesomerea.org/resources/pokecrystal-disassembly-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/pokecrystal-disassembly-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pokecrystal-disassembly-case/index.md","name":"pokecrystal: a matching Pokémon Crystal disassembly","name_zh":"pokecrystal：一致构建的《精灵宝可梦 水晶》反汇编","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README lists six outputs with SHA-1s: Crystal (UE) 1.0 and 1.1, the Australian release, two debug builds and the CGBBYTE1.784 Virtual Console patch. Version differences are selected with assembler defines such as _CRYSTAL11 and _CRYSTAL_AU, and plain make builds only the 1.0 ROM. The Japanese release is not among the listed targets.","The build reads no original ROM: code, text, maps, audio, PNG graphics and other data are in the repository, including the mobile library code linked into the ROM. The repository therefore carries the game's content in source form. Packaging the Virtual Console patch into an installable title is outside the project's scope.","INSTALL.md covers Linux distributions, macOS with Homebrew, Windows through WSL (or Cygwin on older Windows) and Termux. The build needs make, gcc or clang, git and rgbds 1.0.4, which the repository pins; FAQ.md notes that rgbds releases before 1.0.0 fail.","make compare builds every target and runs sha1sum against roms.sha1. pret's CI does this on Linux and macOS with rgbds 1.0.4 and fails when the build leaves uncommitted changes, while forks only build. Bug and design-flaw notes describe fixes as optional diffs, since the matching build keeps the original behavior.","The repository has no license file, so reuse terms for the disassembly are unstated, and the original game's content remains its rights holders'. rgbds is a separate project with its own terms."],"requirements_zh":["README 列出六个产物及其 SHA-1：Crystal (UE) 1.0 和 1.1、澳大利亚版、两个调试构建，以及 CGBBYTE1.784 Virtual Console 补丁。各版本差异通过 _CRYSTAL11、_CRYSTAL_AU 等汇编宏选择，直接运行 make 只构建 1.0 版 ROM。日版不在所列目标之内。","构建不读取任何原版 ROM：代码、文本、地图、音频、PNG 图像及其他数据都在仓库中，链接进 ROM 的移动通信库代码也包括在内。也就是说，仓库本身以源文件形式包含游戏内容。将 Virtual Console 补丁打包为可安装软件不在项目范围之内。","INSTALL.md 涵盖各 Linux 发行版、通过 Homebrew 的 macOS、通过 WSL 的 Windows（旧版 Windows 用 Cygwin）以及 Termux。构建需要 make、gcc 或 clang、git 和仓库固定的 rgbds 1.0.4；FAQ.md 指出，1.0.0 之前的 rgbds 版本无法构建。","make compare 构建全部目标，并依据 roms.sha1 运行 sha1sum。pret 的 CI 在 Linux 和 macOS 上用 rgbds 1.0.4 执行此检查，构建若留下未提交的改动即判失败，分叉仓库则只构建。关于错误和设计缺陷的文档以可选 diff 形式给出修正，因为一致构建保留原版行为。","仓库没有许可证文件，反汇编的复用条款未作说明，原游戏内容仍归其权利人所有。rgbds 是独立项目，适用其自身条款。"],"targets":["game"],"url":"https://github.com/pret/pokecrystal","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/pret/pokeheartgold/blob/5bb4b3b4961cbf0f8a42360c58a3c045d8535069/INSTALL.md","https://github.com/pret/pokeheartgold/blob/5bb4b3b4961cbf0f8a42360c58a3c045d8535069/Makefile","https://github.com/pret/pokeheartgold/blob/5bb4b3b4961cbf0f8a42360c58a3c045d8535069/meson.build","https://github.com/pret/pokeheartgold/blob/5bb4b3b4961cbf0f8a42360c58a3c045d8535069/heartgold.us/rom.sha1","https://github.com/pret/pokeheartgold/blob/5bb4b3b4961cbf0f8a42360c58a3c045d8535069/soulsilver.us/rom.sha1","https://github.com/pret/pokeheartgold/blob/5bb4b3b4961cbf0f8a42360c58a3c045d8535069/CONTRIBUTING.md","https://github.com/pret/pokeheartgold/blob/5bb4b3b4961cbf0f8a42360c58a3c045d8535069/.github/workflows/build.yml","https://github.com/pret/pokeheartgold/blob/5bb4b3b4961cbf0f8a42360c58a3c045d8535069/tools/devtools/get_metroskrew.sh","https://github.com/pret/pokeheartgold/tree/5bb4b3b4961cbf0f8a42360c58a3c045d8535069/subprojects","https://github.com/pret/pokeheartgold/tree/5bb4b3b4961cbf0f8a42360c58a3c045d8535069/files","https://github.com/mid-kid/metroskrew/releases/tag/0.1.3"],"category":"reconstruction-cases","description_en":"Rebuilds the US Nintendo DS releases of Pokémon HeartGold and SoulSilver from a work-in-progress disassembly in which part of the code has been decompiled to C. Each default build checks the ARM9 and ARM7 binaries, the filesystem and the complete ROM against per-game SHA-1 manifests. README warns that, because decompilation is incomplete, edits that change code or data layout can crash the game.","description_zh":"以进行中的反汇编项目重建美版 Nintendo DS《宝可梦 心金／魂银》，其中部分代码已反编译为 C。每次默认构建都会按各游戏的 SHA-1 清单校验 ARM9 与 ARM7 二进制、文件系统及完整 ROM。README 提醒，由于反编译尚未完成，改变代码或数据布局的修改可能导致游戏崩溃。","entry_url":"https://awesomerea.org/resources/pokemon-heartgold-soulsilver-disassembly-case/","entry_url_zh":"https://awesomerea.org/zh/resources/pokemon-heartgold-soulsilver-disassembly-case/","evidence_url":"https://github.com/pret/pokeheartgold/blob/5bb4b3b4961cbf0f8a42360c58a3c045d8535069/README.md","group":"cases","id":"pokemon-heartgold-soulsilver-disassembly-case","json_url":"https://awesomerea.org/resources/pokemon-heartgold-soulsilver-disassembly-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/pokemon-heartgold-soulsilver-disassembly-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pokemon-heartgold-soulsilver-disassembly-case/index.md","name":"Pokémon HeartGold and SoulSilver: a work-in-progress, checksum-matched DS disassembly","name_zh":"《宝可梦 心金／魂银》：校验一致的进行中 DS 反汇编项目","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README calls this a work-in-progress disassembly of the US releases; it warns that symbol names and code structure can change, and that edits altering the size or layout of any function or data structure can crash the game because the ROM is not fully decompiled. At the reviewed commit asm/ still holds 283 assembly files beside 406 C files in src/, and CONTRIBUTING.md describes NONMATCHING C kept beside the inline-assembly versions used for matching builds. Outputs are pokeheartgold.us.nds and pokesoulsilver.us.nds, not a PC port.","The documented build reads no original ROM: the DS filesystem’s graphics, model, text and data files are committed under files/. The target images are identified by SHA-1 (HeartGold 4fcded0e2713dc03929845de631d0932ea2b5a37, SoulSilver f8dc38ea20c17541a43b58c5e6d18c1732c7e582), and README links their No-Intro records. Only the contributor asmdiff tool refers to a user-supplied base ROM.","INSTALL.md covers WSL2 (recommended), WSL1, MSYS2, macOS and Debian, Arch and Fedora Linux; packages include an ARM GCC toolchain, bison, flex, Ninja, Python 3, libpng and 32-bit libc, and macOS also needs Wine. The Makefile clones Meson 1.12.0 and downloads the metroskrew 0.1.3 release, which its repository describes as a relinked Linux port of the proprietary Windows Metrowerks ARM compiler; Meson fetches pinned NitroSDK, NitroSystem, NitroDWC, NitroWiFi and libvct subprojects. make builds HeartGold and make soulsilver builds SoulSilver.","make runs Meson tests after building that check the ARM9 main binary, ARM7 binary, filesystem and complete ROM against SHA-1 manifests; the Makefile tells modders they may drop that check after their first build. CI builds and checks both games and runs a progress calculation on pushes. Matching hashes establish identity for these two US images.","The repository has no top-level license file and GitHub detects none; some bundled tools carry their own licenses, and the metroskrew and ntrtwl SDK repositories declare no license on GitHub. SDK libraries and original game content remain subject to their rights holders. CONTRIBUTING.md prohibits LLM-generated contributions apart from narrow, disclosed exceptions."],"requirements_zh":["README 称其为美版的进行中反汇编项目；提醒符号名与代码结构可能变化，并因 ROM 尚未完全反编译，改变任何函数或数据结构大小或布局的修改都可能使游戏崩溃。在所审提交中，asm/ 仍有 283 个汇编文件，src/ 中有 406 个 C 文件；CONTRIBUTING.md 说明 NONMATCHING 的 C 实现与一致性构建所用的内联汇编版本并存。产物为 pokeheartgold.us.nds 和 pokesoulsilver.us.nds，不是 PC 移植。","文档所述的构建不读取原 ROM：DS 文件系统中的图像、模型、文本和数据文件提交在 files/ 下。目标镜像以 SHA-1 标识（心金 4fcded0e2713dc03929845de631d0932ea2b5a37，魂银 f8dc38ea20c17541a43b58c5e6d18c1732c7e582），README 链接其 No-Intro 条目。只有贡献者使用的 asmdiff 工具会用到使用者自备的原 ROM。","INSTALL.md 涵盖 WSL2（推荐）、WSL1、MSYS2、macOS 以及 Debian、Arch 和 Fedora Linux；所需软件包括 ARM GCC 工具链、bison、flex、Ninja、Python 3、libpng 和 32 位 libc，macOS 另需 Wine。Makefile 会克隆 Meson 1.12.0，并下载 metroskrew 0.1.3 发行版，其仓库称之为通过重新链接移植到 Linux 的专有 Windows 版 Metrowerks ARM 编译器；Meson 拉取固定版本的 NitroSDK、NitroSystem、NitroDWC、NitroWiFi 和 libvct 子项目。make 构建心金，make soulsilver 构建魂银。","make 构建完成后运行 Meson 测试，按 SHA-1 清单校验 ARM9 主程序、ARM7 程序、文件系统及完整 ROM；Makefile 说明改版作者可在首次构建后去掉这项检查。CI 构建并校验两款游戏，推送时还会计算进度。哈希一致确认这两个美版镜像的一致性。","仓库没有顶层许可证文件，GitHub 也未识别出许可证；部分附带工具有各自的许可证，metroskrew 及 ntrtwl 的 SDK 仓库在 GitHub 上均未声明许可证。SDK 库和原游戏内容仍受其权利人约束。CONTRIBUTING.md 禁止由大语言模型生成的贡献，仅有少数需完整披露的例外。"],"targets":["game"],"url":"https://github.com/pret/pokeheartgold","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/Jorge262007/FFTARecomp/blob/7af625665d40ef3d39b3730a3c591ff66f7b2929/.recomp.json","https://github.com/Jorge262007/FFTARecomp/blob/7af625665d40ef3d39b3730a3c591ff66f7b2929/BUILDING.md","https://github.com/Jorge262007/FFTARecomp/blob/7af625665d40ef3d39b3730a3c591ff66f7b2929/docs/architecture.md","https://github.com/Jorge262007/FFTARecomp/blob/7af625665d40ef3d39b3730a3c591ff66f7b2929/docs/release_audit.md","https://github.com/Jorge262007/FFTARecomp/blob/7af625665d40ef3d39b3730a3c591ff66f7b2929/Licenses/CREDITS.md","https://github.com/Jorge262007/FFTARecomp/blob/7af625665d40ef3d39b3730a3c591ff66f7b2929/Licenses/LICENSE","https://github.com/JRickey/gba-recomp/blob/de4edf59b872d887046d6a3b005e2df551b6d44c/README.md"],"category":"reconstruction-cases","description_en":"Recompiles the user’s Final Fantasy Tactics Advance (USA) Game Boy Advance ROM ahead of time into native code for Windows, Linux and Steam Deck, building on JRickey’s gba-recomp toolkit. ARM and Thumb code is translated to C and compiled locally, while a Rust runtime models the console’s graphics, sound, DMA, timers and BIOS calls. The port adds widescreen, zoom, fast-forward and remappable controls.","description_zh":"基于 JRickey 的 gba-recomp 工具链，将使用者自有的 Final Fantasy Tactics Advance（美版）Game Boy Advance ROM 预先重编译为可在 Windows、Linux 和 Steam Deck 上运行的原生代码。ARM 与 Thumb 代码被转译为 C 并在本地编译，Rust 运行时则模拟主机的图形、声音、DMA、定时器及 BIOS 调用。移植另行加入宽屏、缩放、快进和可重映射操作。","entry_url":"https://awesomerea.org/resources/fftarecomp-gba-static-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/fftarecomp-gba-static-recomp-case/","evidence_url":"https://github.com/Jorge262007/FFTARecomp/blob/7af625665d40ef3d39b3730a3c591ff66f7b2929/README.md","group":"cases","id":"fftarecomp-gba-static-recomp-case","json_url":"https://awesomerea.org/resources/fftarecomp-gba-static-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/fftarecomp-gba-static-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fftarecomp-gba-static-recomp-case/index.md","name":"FFTARecomp: static recompilation of Final Fantasy Tactics Advance","name_zh":"FFTARecomp：Final Fantasy Tactics Advance 的静态重编译","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["Reviewed source follows the v2.0 release (2026-10-13) and is labelled a work in progress. README targets Windows 10/11, Linux and Steam Deck; its recomp manifest also lists Android and calls the game fully playable from start to finish. Without a C compiler the recompiler falls back to an interpreter, which upstream keeps for self-modifying code and as a differential-testing oracle. Known issues include brief sprite silhouettes in the first level and a gamepad that may go undetected on first launch.","Supply your own Final Fantasy Tactics Advance (USA) ROM, serial AFXE; the project manifest records the expected SHA-1. No console BIOS is needed, because BIOS calls are high-level emulated. The installer recompiles the game on the user’s PC, and the project excludes ROMs, saves, memory dumps and generated game C from its uploads.","Building from source needs Rust and Windows PowerShell (build-all.ps1). A C compiler is also a runtime requirement: the recompiler emits C11 and links a per-title library. The Windows installer downloads the w64devkit 2.10.0 GCC toolchain, and Linux release builds use Zig as a build-only cross compiler.","A dated release audit (2026-10-12) reports clean source-upload scans, 26 passing input-configuration and menu tests and successful Windows and Linux release builds, and leaves physical-controller behavior unmeasured. README cites no hardware or emulator comparison results.","FFTARecomp changes are MIT and retain upstream gba-recomp notices (MIT OR Apache-2.0); gamedb.sqlite function metadata is CC0 1.0, and w64devkit tools keep their GPL-family licenses. Square Enix and Nintendo retain their game rights. Upstream gba-recomp describes itself as AI-assisted."],"requirements_zh":["所审阅源码晚于 v2.0 版（2026-10-13），标注为开发中。README 面向 Windows 10／11、Linux 和 Steam Deck；其重编译清单还列出 Android，并称游戏可从头到尾完整游玩。缺少 C 编译器时，重编译器会退回解释器；上游保留该解释器以处理自修改代码，并作为差分测试的参照。已知问题包括第一关短暂出现精灵剪影，以及首次启动时可能检测不到手柄。","需自备 Final Fantasy Tactics Advance（美版）ROM，序列号 AFXE；项目清单记录了预期的 SHA-1。BIOS 调用采用高层模拟，因此无需主机 BIOS。安装程序在使用者的 PC 上重编译游戏，项目上传内容排除 ROM、存档、内存转储及生成的游戏 C 代码。","从源码构建需要 Rust 和 Windows PowerShell（build-all.ps1）。C 编译器同时是运行时需求：重编译器输出 C11 并链接每款游戏的库。Windows 安装程序会下载 w64devkit 2.10.0 GCC 工具链，Linux 发布构建使用仅供构建的 Zig 交叉编译器。","注明日期的发布审计（2026-10-12）报告源码上传扫描无问题、26 项输入配置与菜单测试通过、Windows 和 Linux 发布构建成功，物理手柄行为则未测量。README 未引用与硬件或模拟器的对照结果。","FFTARecomp 的修改采用 MIT，并保留上游 gba-recomp 的声明（MIT OR Apache-2.0）；gamedb.sqlite 函数元数据为 CC0 1.0，w64devkit 工具保留各自的 GPL 系许可。Square Enix 与 Nintendo 仍保有游戏权利。上游 gba-recomp 自称为 AI 辅助项目。"],"targets":["game"],"url":"https://github.com/Jorge262007/FFTARecomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/BlackLabelHQ/SymphonyRecomp/blob/c94a9096bab25bf513cceea50d6838a4c8d7bf5b/config/sotn.json","https://github.com/BlackLabelHQ/SymphonyRecomp/blob/c94a9096bab25bf513cceea50d6838a4c8d7bf5b/CHANGELOG.md","https://github.com/BlackLabelHQ/SymphonyRecomp/blob/c94a9096bab25bf513cceea50d6838a4c8d7bf5b/.gitmodules","https://github.com/BlackLabelHQ/SymphonyRecomp/tree/c94a9096bab25bf513cceea50d6838a4c8d7bf5b/patches","https://github.com/BlackLabelHQ/RecompOne/blob/3c34e6ea830152711e4a1ae0d0b2df523cbe8fdb/README.md","https://github.com/BlackLabelHQ/RecompOne/blob/3c34e6ea830152711e4a1ae0d0b2df523cbe8fdb/LICENSE","https://github.com/BlackLabelHQ/SymphonyRecomp/releases/tag/v0.5.1b"],"category":"reconstruction-cases","description_en":"Statically recompiles the North American PlayStation release of Castlevania: Symphony of the Night into C# with BlackLabelHQ’s RecompOne, whose runtime simulates the BIOS, memory-mapped I/O, GPU and CD-ROM so the game runs natively without a console BIOS. Per-overlay function maps and patches add widescreen, quality-of-life, randomizer and cheat features. References from the SOTN decompilation help name functions, but the project stresses that it is a recompilation, not a decompilation.","description_zh":"使用 BlackLabelHQ 的 RecompOne 将北美 PlayStation 版《恶魔城：月下夜想曲》静态重编译为 C#；其运行时模拟 BIOS、内存映射 I/O、GPU 和光驱，使游戏无需主机 BIOS 即可原生运行。按覆盖段划分的函数映射与补丁加入了宽屏、便利性改进、随机器和作弊功能。项目借助 SOTN 反编译项目的资料为函数命名，但强调它是重编译而非反编译。","entry_url":"https://awesomerea.org/resources/symphonyrecomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/symphonyrecomp-case/","evidence_url":"https://github.com/BlackLabelHQ/SymphonyRecomp/blob/c94a9096bab25bf513cceea50d6838a4c8d7bf5b/README.md","group":"cases","id":"symphonyrecomp-case","json_url":"https://awesomerea.org/resources/symphonyrecomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/symphonyrecomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/symphonyrecomp-case/index.md","name":"SymphonyRecomp: a RecompOne static recompilation of Symphony of the Night","name_zh":"SymphonyRecomp：用 RecompOne 静态重编译《恶魔城：月下夜想曲》","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Requires the user’s own North American disc (serial SLUS-00067) as a two-track BIN/CUE set or CHD with fixed file names; other-language discs are described only as future sources for a language switcher. The repository contains no game data, and RecompOne needs no BIOS or other Sony components.","Release v0.5.1b (2026-08-19) ships Windows x64/ARM64, macOS ARM64/x64 and Linux x64 builds; Linux ARM64 was dropped in 0.5b. Source-build prerequisites list an OpenGL 2.1+ GPU, .NET 10, OpenAL and Git, and the changelog calls the OpenGL 2.1 path experimental with bitmasking problems. Game code is generated by running the RecompOne submodule against config/sotn.json.","The README calls this an open beta that may contain game-breaking bugs, and 1.0 has not been released. No equivalence or automated gameplay test is published.","SymphonyRecomp has no license file, so reuse terms are unspecified; the pinned RecompOne recompiler and runtime are MIT-licensed, and the game retains its own rights."],"requirements_zh":["需要用户自有北美版光盘（序列号 SLUS-00067），格式为双音轨 BIN／CUE 或 CHD，并使用固定文件名；其他语言版本的光盘仅被描述为未来语言切换工具的素材来源。仓库不含游戏数据，RecompOne 也不需要 BIOS 或其他 Sony 组件。","v0.5.1b 版本（2026-08-19）提供 Windows x64／ARM64、macOS ARM64／x64 和 Linux x64 构建；Linux ARM64 版本已在 0.5b 中移除。源码构建的前置条件包括支持 OpenGL 2.1+ 的显卡、.NET 10、OpenAL 和 Git；更新日志称 OpenGL 2.1 路径仍属实验性质且存在位掩码问题。游戏代码由 RecompOne 子模块依据 config/sotn.json 生成。","README 称这是公开测试版，可能存在严重破坏游戏的错误，1.0 版本尚未发布。项目未公布等价性或自动化游戏流程测试。","SymphonyRecomp 没有许可证文件，复用条款未明确；固定版本的 RecompOne 重编译器与运行时采用 MIT 许可，游戏保留各自权利。"],"targets":["game"],"url":"https://github.com/BlackLabelHQ/SymphonyRecomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/Gumpolas/TooTawersRecomp/blob/6fce430797ec0573634fa6be18a08f73957efa63/generate.py","https://github.com/Gumpolas/TooTawersRecomp/blob/6fce430797ec0573634fa6be18a08f73957efa63/twotowers/CMakeLists.txt","https://github.com/Gumpolas/TooTawersRecomp/blob/6fce430797ec0573634fa6be18a08f73957efa63/CHANGES.md","https://github.com/Gumpolas/TooTawersRecomp/blob/6fce430797ec0573634fa6be18a08f73957efa63/LICENSE.txt","https://github.com/Gumpolas/TooTawersRecomp/blob/6fce430797ec0573634fa6be18a08f73957efa63/xboxrecomp-0.12.0/README.md","https://github.com/Gumpolas/TooTawersRecomp/blob/6fce430797ec0573634fa6be18a08f73957efa63/xboxrecomp-0.12.0/NOTICE","https://github.com/Gumpolas/TooTawersRecomp/blob/6fce430797ec0573634fa6be18a08f73957efa63/xboxrecomp-0.12.0/LICENSE","https://github.com/Gumpolas/TooTawersRecomp/releases/tag/1.9.2"],"category":"reconstruction-cases","description_en":"Statically recompiles the x86 code of The Lord of the Rings: The Two Towers (Xbox, USA, 2002) into C with the bundled xboxrecomp toolkit, producing native Windows, Linux and experimental macOS builds. The recompiled sources are generated locally from the player's own default.xbe, and game data comes from their disc image or extracted folder. README reports the game as fully playable, with visual, frame-rate and mod issues listed.","description_zh":"使用随附的 xboxrecomp 工具包，将《The Lord of the Rings: The Two Towers》（Xbox 美版，2002）的 x86 代码静态重编译为 C，生成原生 Windows、Linux 及实验性 macOS 构建。重编译源码由玩家自己的 default.xbe 在本地生成，游戏数据来自其光盘镜像或已提取的文件夹。README 报告游戏可以完整游玩，并列出画面、帧率和模组方面的问题。","entry_url":"https://awesomerea.org/resources/two-towers-recompiled-case/","entry_url_zh":"https://awesomerea.org/zh/resources/two-towers-recompiled-case/","evidence_url":"https://github.com/Gumpolas/TooTawersRecomp/blob/6fce430797ec0573634fa6be18a08f73957efa63/README.md","group":"cases","id":"two-towers-recompiled-case","json_url":"https://awesomerea.org/resources/two-towers-recompiled-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/two-towers-recompiled-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/two-towers-recompiled-case/index.md","name":"The Two Towers Recompiled: an original Xbox static-recompilation port","name_zh":"The Two Towers Recompiled：初代 Xbox 静态重编译移植","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["limits","prerequisites","prerequisites","testing","license"],"requirements":["README for v1.9.2 calls the port a fully playable work in progress and recommends 60 FPS; unlocked frame rates and widescreen are experimental. Downloads cover 64-bit Windows 7 SP1 to 11, x86-64 Linux with glibc 2.27+, and macOS 10.15+ on Intel or through Rosetta 2, with the macOS build not yet tested on a Mac. Known issues include stretched character shadows, lighting glitches, Vulkan black screens and several problems with the bundled extra-heroes mod.","Players need their own USA Xbox disc image or extracted game folder, and no game data is included. generate.py checks the retail default.xbe against a fixed SHA-256, then runs the xboxrecomp pipeline (XBE parsing, disassembly, function identification, ABI analysis, naming and recompilation) to write the C sources locally, so no recompiled code is committed. A separately distributed GameCube high-resolution texture pack is optional and not part of the release.","The repository vendors the xboxrecomp 0.12.0 static-recompilation toolkit, which translates an XBE's x86 code into C, and CHANGES.md lists the fixes made to it for this game. The game project builds with CMake 3.20+ and C11 under MSVC, MinGW or Clang/GCC; Linux uses SDL2 with OpenGL loaded at run time, and the renderer options are Direct3D 11, Vulkan through DXVK or OpenGL. The README at this revision has no build section; generate.py only says to build with CMake afterwards.","Testing reported for 1.9.2 covers menus, level loading and fonts in several languages under Wine and on Linux with OpenGL, and states that the Windows, Linux and macOS builds compile. No automated tests or CI runs are recorded for the reviewed commit.","LICENSE.txt applies MIT to the port's own code (twotowers/ and generate.py); the vendored xboxrecomp keeps MIT plus LGPL-2.1-or-later for parts taken from xemu. The license adds that the release's game program contains code mechanically translated from the original executable, which it does not cover and which remains the rights holders' property."],"requirements_zh":["v1.9.2 的 README 称该移植仍在进行中但已可完整游玩，建议以 60 FPS 运行；解锁帧率和宽屏为实验性功能。下载包涵盖 64 位 Windows 7 SP1 至 11、glibc 2.27+ 的 x86-64 Linux，以及 Intel 或经 Rosetta 2 运行的 macOS 10.15+，其中 macOS 版尚未在 Mac 上测试。已知问题包括角色阴影拉伸、光照异常、Vulkan 黑屏，以及随附额外英雄模组的若干问题。","玩家需自备美版 Xbox 光盘镜像或已提取的游戏文件夹，仓库不含任何游戏数据。generate.py 以固定 SHA-256 校验零售版 default.xbe，然后运行 xboxrecomp 流程（XBE 解析、反汇编、函数识别、ABI 分析、命名和重编译），在本地写出 C 源码，因此仓库未提交任何重编译代码。另行发布的 GameCube 高清纹理包为可选项，不属于本发布。","仓库内置 xboxrecomp 0.12.0 静态重编译工具包，它将 XBE 的 x86 代码转换为 C；CHANGES.md 列出了为本游戏对其所做的修正。游戏项目使用 CMake 3.20+ 和 C11，可用 MSVC、MinGW 或 Clang/GCC 构建；Linux 使用 SDL2 并在运行时加载 OpenGL，渲染选项为 Direct3D 11、经 DXVK 的 Vulkan 或 OpenGL。该版本的 README 没有构建章节，generate.py 只说明之后用 CMake 构建。","1.9.2 报告的测试覆盖 Wine 下及 Linux OpenGL 环境中多种语言的菜单、关卡加载和字体，并称 Windows、Linux 和 macOS 构建均可编译。所审提交没有自动化测试或 CI 运行记录。","LICENSE.txt 对移植自身代码（twotowers/ 和 generate.py）采用 MIT；内置的 xboxrecomp 保留 MIT，其中取自 xemu 的部分为 LGPL-2.1-or-later。许可证还说明，发布包中的游戏程序含有从原始可执行文件机械转换而来的代码，这部分不受该许可证覆盖，仍归权利人所有。"],"targets":["game"],"url":"https://github.com/Gumpolas/TooTawersRecomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/Hero88go/melee-unlocked/blob/589415b70123e699226f1925ad7a59ef8203a71c/docs/build-source-port.md","https://github.com/Hero88go/melee-unlocked/blob/589415b70123e699226f1925ad7a59ef8203a71c/docs/replay-validation.md","https://github.com/Hero88go/melee-unlocked/blob/589415b70123e699226f1925ad7a59ef8203a71c/PORT_COMPLETION.md","https://github.com/Hero88go/melee-unlocked/blob/589415b70123e699226f1925ad7a59ef8203a71c/.gitmodules","https://github.com/Hero88go/melee-unlocked/blob/589415b70123e699226f1925ad7a59ef8203a71c/VERSION","https://github.com/Hero88go/melee-unlocked/blob/589415b70123e699226f1925ad7a59ef8203a71c/NOTICE","https://github.com/Hero88go/melee-unlocked/blob/589415b70123e699226f1925ad7a59ef8203a71c/LICENSE","https://github.com/Hero88go/melee-unlocked/releases/tag/v0.8.99","https://github.com/doldecomp/melee/tree/039c4bf4ca33338c35d21901ad19b7ede19d19ad"],"category":"reconstruction-cases","description_en":"A beta Windows build of Super Smash Bros. Melee (NTSC 1.02) with two engines: a source port that compiles the doldecomp decompilation as a native library, and a static recompilation that translates the retail DOL's PowerPC code and Slippi's Gecko codes into C++. Both run on a native runtime with Direct3D rendering, unlocked display rates and natively implemented Slippi rollback play. The user's own ISO supplies all game data, and the README says the work was AI-assisted.","description_zh":"Super Smash Bros. Melee（NTSC 1.02）的 Windows 测试版构建，包含两套引擎：源码移植将 doldecomp 反编译编译为原生库，静态重编译则将零售版 DOL 的 PowerPC 代码及 Slippi 的 Gecko 代码转换为 C++。两者都运行在原生运行时上，提供 Direct3D 渲染、解锁的显示帧率和原生实现的 Slippi 回滚对战。全部游戏数据来自使用者自备的 ISO，README 称开发借助了 AI。","entry_url":"https://awesomerea.org/resources/melee-unlocked-case/","entry_url_zh":"https://awesomerea.org/zh/resources/melee-unlocked-case/","evidence_url":"https://github.com/Hero88go/melee-unlocked/blob/589415b70123e699226f1925ad7a59ef8203a71c/README.md","group":"cases","id":"melee-unlocked-case","json_url":"https://awesomerea.org/resources/melee-unlocked-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/melee-unlocked-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/melee-unlocked-case/index.md","name":"Melee Unlocked: a Windows source port and static recompilation of Melee","name_zh":"Melee Unlocked：Melee 的 Windows 源码移植与静态重编译","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes a beta Windows build with two engines chosen in the launcher. The Source Port compiles doldecomp/melee (a submodule pinned at 039c4bf plus a tracked native patch) into melee_game.dll on a native runtime with Direct3D 12/11 rendering, a mixer and direct controller input. The Static Recomp uses the project's Python recompiler to translate the retail DOL's PowerPC code and Slippi's Gecko codes ahead of time into C++, over HLE of the GameCube SDK. Game logic stays at 60 Hz while the display interpolates from animation data; VERSION and the latest release are 0.8.99, though README still names 0.8.76.","Supply your own Melee NTSC 1.02 ISO: the game reads its data from it, and the from-source build takes the retail main.dol from it as the recompiler's input. Nothing from the disc is committed or shipped. Online play needs a Slippi account through the Slippi Launcher; the optional DLSS 5 path needs NVIDIA's separately supplied runtime and model.","Windows 10/11 only. The Static Recomp build uses Python, CMake and the Visual Studio 2022 Build Tools (play.bat can install them with winget). The Source Port additionally needs MinGW-w64 GCC 14 or newer with Ninja for the game DLL, an MSVC-built host, and the same guest-translation step; it pins the doldecomp/melee and encounter/aurora submodules and applies its patch with a checking script.","README lists CTest unit tests, a validator requiring 2,400 simulation checkpoints to match across headless, hidden, threaded and authored rendering, and a two-instance Slippi match that must log no DESYNC. docs/replay-validation.md compares replays frame by frame in eight Slippi post-frame fields; PORT_COMPLETION.md makes resolving a differing replay byte a precondition for claiming deterministic online compatibility. These are project-reported.","GPL-3.0-or-later from 0.8.5 (GPL-2.0-or-later through 0.8.1); NOTICE lists code ported from Dolphin, Slippi Ishiiruka and Slippi, bundled components with their own licences, and a GPL section 7 permission for NVIDIA and Intel SDKs. Melee belongs to Nintendo and HAL Laboratory, and the project is unaffiliated with the Slippi team. README says it was developed with Fable 5.1 and GPT 6 Astra, and PORT_COMPLETION.md names Fable and Codex working branches."],"requirements_zh":["README 将其描述为 Windows 测试版构建，可在启动器中选择两套引擎。源码移植将 doldecomp/melee（固定于 039c4bf 的子模块，外加单独维护的原生补丁）编译为 melee_game.dll，运行在原生运行时上，提供 Direct3D 12／11 渲染、混音器和直接控制器输入。静态重编译使用项目自带的 Python 重编译器，把零售版 DOL 的 PowerPC 代码和 Slippi 的 Gecko 代码预先转换为 C++，并在 GameCube SDK 的高层模拟上运行。游戏逻辑保持 60 Hz，显示则依据动画数据插帧；VERSION 与最新发布为 0.8.99，但 README 仍写 0.8.76。","需自备 Melee NTSC 1.02 ISO：游戏从中读取数据，从源码构建时也以其中的零售版 main.dol 作为重编译器输入。光盘内容不会提交到仓库或随发行包分发。联网对战需通过 Slippi Launcher 使用 Slippi 账户；可选的 DLSS 5 路径需另行提供 NVIDIA 的运行时与模型。","仅支持 Windows 10／11。静态重编译的构建使用 Python、CMake 和 Visual Studio 2022 Build Tools（play.bat 可通过 winget 安装）。源码移植另需 MinGW-w64 GCC 14 或更新版本及 Ninja 构建游戏 DLL、以 MSVC 构建宿主程序，并执行同样的客体代码转换步骤；它固定 doldecomp/melee 与 encounter/aurora 子模块，并用带检查的脚本应用补丁。","README 列出 CTest 单元测试、要求无窗口、隐藏窗口、多线程与插帧渲染下 2,400 个模拟检查点一致的验证器，以及两个实例完成一场 Slippi 对战且日志中不得出现 DESYNC 的测试。docs/replay-validation.md 按帧比较回放中的八个 Slippi 帧后字段；PORT_COMPLETION.md 将解决一处不同的回放字节列为宣称联网确定性兼容的前提。这些均为项目报告。","自 0.8.5 起采用 GPL-3.0-or-later（0.8.1 及更早为 GPL-2.0-or-later）；NOTICE 列出移植自 Dolphin、Slippi Ishiiruka 和 Slippi 的代码、各有许可的随附组件，以及针对 NVIDIA 与 Intel SDK 的 GPL 第 7 条附加许可。Melee 归 Nintendo 和 HAL Laboratory 所有，项目与 Slippi 团队无关。README 称项目借助 Fable 5.1 和 GPT 6 Astra 开发，PORT_COMPLETION.md 也提到 Fable 与 Codex 工作分支。"],"targets":["game"],"url":"https://github.com/Hero88go/melee-unlocked","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/pret/pokeruby/blob/5784633ce4ef7ade1a7f2d2d0c288e3d5e6cdd7f/INSTALL.md","https://github.com/pret/pokeruby/blob/5784633ce4ef7ade1a7f2d2d0c288e3d5e6cdd7f/CONTRIBUTING.md","https://github.com/pret/pokeruby/blob/5784633ce4ef7ade1a7f2d2d0c288e3d5e6cdd7f/Makefile","https://github.com/pret/pokeruby/blob/5784633ce4ef7ade1a7f2d2d0c288e3d5e6cdd7f/config.mk","https://github.com/pret/pokeruby/blob/5784633ce4ef7ade1a7f2d2d0c288e3d5e6cdd7f/ruby.sha1","https://github.com/pret/pokeruby/blob/5784633ce4ef7ade1a7f2d2d0c288e3d5e6cdd7f/sapphire.sha1","https://github.com/pret/pokeruby/blob/5784633ce4ef7ade1a7f2d2d0c288e3d5e6cdd7f/.github/workflows/build.yml","https://github.com/pret/pokeruby/blob/5784633ce4ef7ade1a7f2d2d0c288e3d5e6cdd7f/src/money.c"],"category":"reconstruction-cases","description_en":"Reconstructs the Game Boy Advance games Pokémon Ruby and Sapphire as C source built with pret's agbcc compiler, alongside assembly data scripts and editable graphics. Matching builds cover the English 1.0, 1.1 and 1.2 revisions, debug builds and the first German editions, each checked against a stored SHA-1. A separate modern-GCC target is not expected to match.","description_zh":"以 C 源码重建 Game Boy Advance 游戏《精灵宝可梦 红宝石／蓝宝石》，使用 pret 的 agbcc 编译器构建，并附有汇编数据脚本和可编辑图像。一致构建涵盖英文版 1.0、1.1、1.2 修订版、调试构建以及德文初版，并逐一与保存的 SHA-1 比对。另有使用现代 GCC 的构建目标，不以一致为目标。","entry_url":"https://awesomerea.org/resources/pokeruby-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/pokeruby-decomp-case/","evidence_url":"https://github.com/pret/pokeruby/blob/5784633ce4ef7ade1a7f2d2d0c288e3d5e6cdd7f/README.md","group":"cases","id":"pokeruby-decomp-case","json_url":"https://awesomerea.org/resources/pokeruby-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/pokeruby-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pokeruby-decomp-case/index.md","name":"pokeruby: a matching Pokémon Ruby and Sapphire decompilation","name_zh":"pokeruby：一致构建的《精灵宝可梦 红宝石／蓝宝石》反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README still calls the project a disassembly and lists hashes for English pokeruby.gba and pokesapphire.gba; INSTALL.md adds 1.1/1.2 revision targets, 1.0-only debug targets and first-edition German builds, and the tree holds 14 SHA-1 files. No asm/ directory remains in the reviewed tree: game code is C under src/, apart from handwritten startup and library assembly and functions marked NONMATCHING whose matching builds keep inline assembly. The contributor guide still describes the earlier asm-to-C workflow.","The build reads no original ROM: code, scripts, text, graphics and sound sources are in the repository, so the repository carries the game's content in source form. German builds need a setup script before compiling and a teardown script before any English build.","INSTALL.md lists Linux, macOS with Xcode Command Line Tools, and Windows through WSL or the devkitPro MSYS2 environment, plus build-essential, git, libpng and devkitARM. pret's agbcc must be cloned, built and installed into the tree; make modern uses devkitARM's arm-none-eabi-gcc instead, and other toolchains can be set with TOOLCHAIN.","With COMPARE=1 the Makefile checks the selected build against its SHA-1 file. The GitHub Actions workflow compares the English 1.0/1.1/1.2 Ruby and Sapphire builds and German first-edition variants, then compiles the NONMATCHING sources and the modern target without comparison; README's build badge still points to Travis CI. Matching hashes show identical ROM bytes.","No license file is present, so reuse terms are unstated; the original game's content remains its rights holders', and agbcc and devkitPro components keep their own terms."],"requirements_zh":["README 仍称该项目为反汇编，并列出英文版 pokeruby.gba 和 pokesapphire.gba 的哈希；INSTALL.md 另列 1.1／1.2 修订版目标、仅支持 1.0 的调试目标及德文初版构建，仓库中共有 14 个 SHA-1 文件。所审版本已没有 asm/ 目录：游戏代码均为 src/ 下的 C 源码，仅手写的启动与库汇编以及标为 NONMATCHING 的函数除外，后者在一致构建中仍使用内联汇编。贡献指南仍描述早期从汇编逐步转为 C 的流程。","构建不读取任何原版 ROM：代码、脚本、文本、图像和音频源文件都在仓库中，因此仓库本身以源文件形式包含游戏内容。德文构建需先运行设置脚本再编译，并在构建任何英文版之前运行还原脚本。","INSTALL.md 列出 Linux、需 Xcode Command Line Tools 的 macOS，以及通过 WSL 或 devkitPro MSYS2 环境的 Windows，并要求 build-essential、git、libpng 和 devkitARM。需克隆、构建 pret 的 agbcc 并安装到仓库中；make modern 则改用 devkitARM 的 arm-none-eabi-gcc，也可通过 TOOLCHAIN 指定其他工具链。","设置 COMPARE=1 时，Makefile 会用对应的 SHA-1 文件检查所选构建。GitHub Actions 工作流比对英文版 1.0／1.1／1.2 的红宝石和蓝宝石构建及德文初版各变体，随后编译 NONMATCHING 源码和 modern 目标但不作比对；README 的构建徽章仍指向 Travis CI。哈希一致说明 ROM 字节相同。","仓库没有许可证文件，复用条款未作说明；原游戏内容仍归其权利人所有，agbcc 和 devkitPro 组件各自适用其条款。"],"targets":["game"],"url":"https://github.com/pret/pokeruby","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/HalmyLyseas/VandalHearts-PcPort/blob/14552fffa0e0b47e02b57592e274fc6e7a649923/NOTICE","https://github.com/HalmyLyseas/VandalHearts-PcPort/blob/14552fffa0e0b47e02b57592e274fc6e7a649923/CLAUDE.md","https://github.com/HalmyLyseas/VandalHearts-PcPort/blob/14552fffa0e0b47e02b57592e274fc6e7a649923/docs/building.md","https://github.com/HalmyLyseas/VandalHearts-PcPort/blob/14552fffa0e0b47e02b57592e274fc6e7a649923/docs/known_issues.md","https://github.com/HalmyLyseas/VandalHearts-PcPort/blob/14552fffa0e0b47e02b57592e274fc6e7a649923/CHANGELOG.md","https://github.com/HalmyLyseas/VandalHearts-PcPort/blob/14552fffa0e0b47e02b57592e274fc6e7a649923/LICENSE","https://github.com/shao113/vh/tree/a9e53de9484d4b42b023411617fe6d44acf592bc"],"category":"reconstruction-cases","description_en":"Builds on shao113’s matching decompilation of PlayStation Vandal Hearts, adds a Japanese matching tree, and carries both through to a native Windows and Linux port. SDL2, OpenGL or Metal and OpenAL backends replace the console’s GPU, GTE, CD-ROM/XA, SPU, MDEC and pad interfaces, and one executable runs the USA, Asia and Japan discs. The matching builds are still checked on every change; PC-only features such as Tactical Mode and HD packs are opt-in.","description_zh":"以 shao113 的 PlayStation 版 Vandal Hearts 一致性反编译为基础，新增日版一致性代码树，并将两者延伸为原生 Windows 与 Linux 移植。SDL2、OpenGL 或 Metal 及 OpenAL 后端替代主机的 GPU、GTE、CD-ROM／XA、SPU、MDEC 和手柄接口，同一可执行文件可运行美版、亚洲版和日版光盘。每次修改仍须通过一致性构建检查；Tactical Mode、高清包等 PC 专属功能均为可选。","entry_url":"https://awesomerea.org/resources/vandal-hearts-pc-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/vandal-hearts-pc-port-case/","evidence_url":"https://github.com/HalmyLyseas/VandalHearts-PcPort/blob/14552fffa0e0b47e02b57592e274fc6e7a649923/README.md","group":"cases","id":"vandal-hearts-pc-port-case","json_url":"https://awesomerea.org/resources/vandal-hearts-pc-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/vandal-hearts-pc-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/vandal-hearts-pc-port-case/index.md","name":"Vandal Hearts: native PC port built on matching decompilations","name_zh":"Vandal Hearts：基于一致性反编译的原生 PC 移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["testing","prerequisites","prerequisites","testing","license"],"requirements":["Reviewed source follows v2.1.0 (2026-08-31). README reports every non-PsyQ function decompiled, with make check confirming byte-identical rebuilds of the US SLUS_004.47 and, since 2.0.0, the Japanese SLPM_860.07 by MD5, and full playthroughs through the endgame on Windows and Linux. macOS is a community-supported experimental build tested through the first battle; its full-playthrough and notarisation validation are pending.","Supply your own raw .bin disc image of the USA (SLUS-00447), Asia (SCPS-45183) or Japan (SLPM-86007) release; the port verifies and auto-detects each disc. The matching build also needs the original executable as its MD5 reference and locally sourced proprietary PsyQ SDK files (README lists ASPSX 2.21 and LIB34.ZIP by MD5). The kanji font, in-game text and static data segment are generated from the user’s copy, not committed.","The port builds with Make or CMake against SDL2, OpenAL, OpenGL (Metal on macOS), libwebp, libav and Python 3; Windows binaries are cross-compiled from Linux with MinGW-w64, and Linux ships as an AppImage. The matching build uses splat, maspsx, decompals’ GCC 2.5.7/2.6.3 frontends and MIPS binutils, and needs a Linux host because those frontends are 32-bit Linux executables.","Project-reported checks include make check for both regions, AddressSanitizer and UBSan sweeps that fixed seven latent out-of-bounds bugs, audio/visual fidelity validated against BizHawk, and a software rasterizer reported 99.84–99.99% pixel-exact against DuckStation VRAM captures. The known-issues list places remaining defects in the port’s rendering and backend layer.","GPL-2.0 covers only the project’s original port code, tooling and documentation. The decompiled game code, derived from shao113’s unlicensed decompilation, and the reconstructed data tables are Konami’s and are not licensed by the project; pre-built releases embed part of the game-derived data segment and a BIOS-derived font. The repository keeps its setup recipe in Claude Code skill files."],"requirements_zh":["所审阅源码晚于 v2.1.0（2026-08-31）。README 报告所有非 PsyQ 函数均已反编译，make check 通过 MD5 确认美版 SLUS_004.47 及（自 2.0.0 起）日版 SLPM_860.07 可逐字节一致地重建，并在 Windows 与 Linux 上完成直至结局的完整通关。macOS 为社区支持的实验性构建，已测试到第一场战斗；其完整通关与公证验证仍待完成。","需自备美版（SLUS-00447）、亚洲版（SCPS-45183）或日版（SLPM-86007）的原始 .bin 光盘镜像；移植会校验并自动识别各光盘。一致性构建还需原可执行文件作为 MD5 参照，以及在本地取得的专有 PsyQ SDK 文件（README 以 MD5 列出 ASPSX 2.21 和 LIB34.ZIP）。汉字字库、游戏内文本和静态数据段均由使用者自有副本生成，不提交入库。","移植可用 Make 或 CMake 构建，依赖 SDL2、OpenAL、OpenGL（macOS 上为 Metal）、libwebp、libav 和 Python 3；Windows 二进制在 Linux 上以 MinGW-w64 交叉编译，Linux 版以 AppImage 发布。一致性构建使用 splat、maspsx、decompals 的 GCC 2.5.7／2.6.3 前端及 MIPS binutils；由于这些前端是 32 位 Linux 可执行文件，必须在 Linux 主机上进行。","项目报告的检查包括两个地区版本的 make check、修复七个潜在越界缺陷的 AddressSanitizer 与 UBSan 扫描、以 BizHawk 验证的音画还原，以及软件光栅化器与 DuckStation 显存截取对比达 99.84–99.99% 像素一致。已知问题列表将剩余缺陷归于移植的渲染与后端层。","GPL-2.0 仅涵盖项目原创的移植代码、工具和文档。反编译的游戏代码（源自 shao113 未附许可的反编译）及重建的数据表属于 Konami，项目并不授予其许可；预构建版本嵌入部分游戏派生数据段及源自 BIOS 的字库。仓库将构建环境配置说明保存在 Claude Code 技能文件中。"],"targets":["game"],"url":"https://github.com/HalmyLyseas/VandalHearts-PcPort","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/pret/pokeplatinum/blob/1dc13dcea40c04ab53f1f607de46023dc409ef20/INSTALL.md","https://github.com/pret/pokeplatinum/blob/1dc13dcea40c04ab53f1f607de46023dc409ef20/CONTRIBUTING.md","https://github.com/pret/pokeplatinum/blob/1dc13dcea40c04ab53f1f607de46023dc409ef20/Makefile","https://github.com/pret/pokeplatinum/blob/1dc13dcea40c04ab53f1f607de46023dc409ef20/meson.build","https://github.com/pret/pokeplatinum/blob/1dc13dcea40c04ab53f1f607de46023dc409ef20/meson.options","https://github.com/pret/pokeplatinum/blob/1dc13dcea40c04ab53f1f607de46023dc409ef20/platinum.us/rom_rev1.sha1","https://github.com/pret/pokeplatinum/blob/1dc13dcea40c04ab53f1f607de46023dc409ef20/platinum.us/rom_rev0.sha1","https://github.com/pret/pokeplatinum/blob/1dc13dcea40c04ab53f1f607de46023dc409ef20/.github/workflows/build.yml","https://github.com/pret/pokeplatinum/tree/1dc13dcea40c04ab53f1f607de46023dc409ef20/subprojects","https://github.com/pret/pokeplatinum/tree/1dc13dcea40c04ab53f1f607de46023dc409ef20/res","https://github.com/mid-kid/metroskrew/releases/tag/0.1.3"],"category":"reconstruction-cases","description_en":"Reconstructs the US Nintendo DS release of Pokémon Platinum as C source that rebuilds revision 1 by default and revision 0 on request. The default make target runs Meson checks of the code binaries, filesystem and complete ROM against SHA-1 manifests. README still calls the project work in progress; its contributing guide says the code is entirely C but much of it remains obfuscated, leaving documentation and tooling as the main work.","description_zh":"将美版 Nintendo DS《宝可梦 白金》重建为 C 源码，默认重建修订版 1，也可按需构建修订版 0。默认的 make 目标会运行 Meson 检查，按 SHA-1 清单校验代码二进制、文件系统及完整 ROM。README 仍称项目在进行中；贡献指南表示代码已全部为 C，但其中大量仍晦涩难懂，因此主要工作是文档和工具。","entry_url":"https://awesomerea.org/resources/pokemon-platinum-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/pokemon-platinum-decomp-case/","evidence_url":"https://github.com/pret/pokeplatinum/blob/1dc13dcea40c04ab53f1f607de46023dc409ef20/README.md","group":"cases","id":"pokemon-platinum-decomp-case","json_url":"https://awesomerea.org/resources/pokemon-platinum-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/pokemon-platinum-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pokemon-platinum-decomp-case/index.md","name":"Pokémon Platinum: a checksum-matched Nintendo DS decompilation","name_zh":"《宝可梦 白金》：校验一致的 Nintendo DS 反编译重建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","scope","prerequisites","testing","license"],"requirements":["README calls this a WIP decompilation of US Pokémon Platinum. CONTRIBUTING.md states that the repository is 100% C code, although much of it is obfuscated, so current work is mainly documentation and tooling; at the reviewed commit asm/ holds only macro includes beside 1,013 C files in src/. Outputs are pokeplatinum.us.nds ROM images, not a PC port.","The documented build reads no original ROM: graphics, sound, text and data sources, including some prebuilt data, are committed under res/. Revision 1, the default, has SHA-1 0862ec35b24de5c7e2dcb88c9eea0873110d755c; ROM_REVISION=0 builds revision 0, SHA-1 ce81046eda7d232513069519cb2085349896dec7, which INSTALL.md describes as the original North American retail version with a GTS level-range display error that a later shipment patched. README links both No-Intro records.","INSTALL.md covers WSL2 (recommended), WSL1, MSYS2, macOS and Debian, Arch and Fedora Linux; packages include an ARM GCC toolchain, bison, flex, Ninja, Python 3, libpng and 32-bit libc, and macOS also needs Wine. The Makefile clones Meson 1.12.0 and downloads the metroskrew 0.1.3 release, which its repository describes as a relinked Linux port of the proprietary Windows Metrowerks ARM compiler; Meson fetches pinned NitroSDK, NitroSystem, NitroDWC, NitroWiFi and libvct subprojects. make debug builds a GDB-enabled ROM, for which INSTALL.md points to an overlay-aware binutils-gdb fork.","make runs Meson tests that check shared, revision-specific and ARM7 binaries, the filesystem and the complete ROM against SHA-1 manifests; make rom skips the checksum when code is modified. CI installs metroskrew and runs make check for the default revision.","The repository has no top-level license file and GitHub detects none; some bundled tools carry their own licenses, and the metroskrew and ntrtwl SDK repositories declare no license on GitHub. SDK libraries and original game content remain subject to their rights holders."],"requirements_zh":["README 称其为美版《宝可梦 白金》的进行中反编译项目。CONTRIBUTING.md 表示仓库已是 100% C 代码，但其中大量仍晦涩难懂，因此当前工作主要是文档和工具；在所审提交中，asm/ 只有宏包含文件，src/ 中有 1,013 个 C 文件。产物为 pokeplatinum.us.nds ROM 镜像，不是 PC 移植。","文档所述的构建不读取原 ROM：图像、音频、文本和数据源文件（含部分预构建数据）提交在 res/ 下。默认的修订版 1 的 SHA-1 为 0862ec35b24de5c7e2dcb88c9eea0873110d755c；ROM_REVISION=0 构建修订版 0，SHA-1 为 ce81046eda7d232513069519cb2085349896dec7，INSTALL.md 称其对应北美最初零售版，GTS 中存在等级范围显示错误，后续批次已修正。README 链接两者的 No-Intro 条目。","INSTALL.md 涵盖 WSL2（推荐）、WSL1、MSYS2、macOS 以及 Debian、Arch 和 Fedora Linux；所需软件包括 ARM GCC 工具链、bison、flex、Ninja、Python 3、libpng 和 32 位 libc，macOS 另需 Wine。Makefile 会克隆 Meson 1.12.0，并下载 metroskrew 0.1.3 发行版，其仓库称之为通过重新链接移植到 Linux 的专有 Windows 版 Metrowerks ARM 编译器；Meson 拉取固定版本的 NitroSDK、NitroSystem、NitroDWC、NitroWiFi 和 libvct 子项目。make debug 构建支持 GDB 的 ROM，INSTALL.md 为此指向一个支持覆盖层的 binutils-gdb 分支。","make 运行 Meson 测试，按 SHA-1 清单校验共享、分修订版及 ARM7 二进制、文件系统和完整 ROM；修改代码时可用 make rom 跳过校验。CI 安装 metroskrew 并对默认修订版运行 make check。","仓库没有顶层许可证文件，GitHub 也未识别出许可证；部分附带工具有各自的许可证，metroskrew 及 ntrtwl 的 SDK 仓库在 GitHub 上均未声明许可证。SDK 库和原游戏内容仍受其权利人约束。"],"targets":["game"],"url":"https://github.com/pret/pokeplatinum","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/whompay/SaintsReborn/blob/cb09c54cf9ff5c19a9c1cb8e080f465a322bd0eb/docs/BUILDING.md","https://github.com/whompay/SaintsReborn/blob/cb09c54cf9ff5c19a9c1cb8e080f465a322bd0eb/docs/HOW_IT_WORKS.md","https://github.com/whompay/SaintsReborn/blob/cb09c54cf9ff5c19a9c1cb8e080f465a322bd0eb/scripts/setup.ps1","https://github.com/whompay/SaintsReborn/blob/cb09c54cf9ff5c19a9c1cb8e080f465a322bd0eb/.recomp.json","https://github.com/whompay/SaintsReborn/blob/cb09c54cf9ff5c19a9c1cb8e080f465a322bd0eb/.github/workflows/setup-app.yml","https://github.com/whompay/SaintsReborn/blob/cb09c54cf9ff5c19a9c1cb8e080f465a322bd0eb/CONTRIBUTING.md","https://github.com/whompay/SaintsReborn/blob/cb09c54cf9ff5c19a9c1cb8e080f465a322bd0eb/LICENSE","https://github.com/whompay/SaintsReborn/blob/cb09c54cf9ff5c19a9c1cb8e080f465a322bd0eb/NOTICE","https://github.com/whompay/SaintsReborn/blob/cb09c54cf9ff5c19a9c1cb8e080f465a322bd0eb/THIRD_PARTY_NOTICES.md"],"category":"reconstruction-cases","description_en":"An unofficial native Windows port of Saints Row (Xbox 360, 2006) that statically recompiles the game's PowerPC executable to C++ for x86-64 with the ReXGlue SDK, which also reimplements the console's kernel, GPU (on Direct3D 12), audio and input. A recompiler manifest, game-specific function overrides and an SDK patch make the result run, and each user builds it locally from their own disc. The README reports the game fully playable with built-in co-op and lists known issues.","description_zh":"Saints Row（Xbox 360，2006）的非官方原生 Windows 移植：借助 ReXGlue SDK 将游戏的 PowerPC 可执行文件静态重编译为面向 x86-64 的 C++ 代码，该 SDK 还重新实现了主机的内核、GPU（基于 Direct3D 12）、音频与输入。重编译清单、游戏专用的函数替换和 SDK 补丁使结果得以运行，每位使用者都用自己的光盘在本地构建。README 报告游戏可完整通关、内置合作模式，并列出已知问题。","entry_url":"https://awesomerea.org/resources/saints-reborn-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/saints-reborn-recomp-case/","evidence_url":"https://github.com/whompay/SaintsReborn/blob/cb09c54cf9ff5c19a9c1cb8e080f465a322bd0eb/README.md","group":"cases","id":"saints-reborn-recomp-case","json_url":"https://awesomerea.org/resources/saints-reborn-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/saints-reborn-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/saints-reborn-recomp-case/index.md","name":"Saints Reborn: a ReXGlue static recompilation of Saints Row","name_zh":"Saints Reborn：基于 ReXGlue 的 Saints Row 静态重编译","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes a static recompilation, not a decompilation or an emulator: the ReXGlue SDK, pinned at v0.10.0 (commit c94f5eb) and patched by patches/rexglue-sdk.patch, translates every PowerPC function in default.xex to C++. config/saintsrow_manifest.toml adds ABI helpers, 19 functions reached only through vtables and two mid-function hooks, and project/src overrides rendering (predicated tiling), audio, kernel-object and occlusion-query behaviour. README reports the game fully playable from start to finish, with co-op over LAN, direct IP or a join code, an optional 60 FPS mod and a mod loader; known issues include texture flicker in the character creator.","Supply your own Saints Row (Xbox 360) disc as an .iso, or a game folder containing default.xex and packfiles. Only the disc version the port was made with is supported: setup compares default.xex with one known SHA-1 for the World disc release and warns otherwise, because the hooks use fixed addresses. The repository contains no game code, data, recompiled output or executables, and its legal notice forbids using it to distribute them.","Windows 10/11 (64-bit) with a Direct3D 12 GPU, about 15 GB of disk space and 16 GB of RAM. Setup downloads a portable clang, CMake, Ninja and Microsoft's C++ headers and libraries (about 1.5 GB) and builds the game locally in 10–60 minutes; the older setup.bat path needs Visual Studio 2022 with its Clang and CMake components, plus Git. README lists Linux (through Proton) as coming soon, although BUILDING.md already describes Setup as working on Windows and Linux.","Playability and the known-issue list are the author's reports. The only CI workflow builds the setup application; the repository's tests cover co-op, modding and map tools, and no automated comparison of recompiled behaviour against the console is documented.","Project code is Apache-2.0 with a NOTICE that redistributors must keep, crediting Saints Reborn by Whompay. The SDK patch keeps the ReXGlue SDK's BSD-style licence, the SDK derives in part from Xenia, and libraries downloaded at build time keep their own terms. Saints Row remains its owners' property, and the NOTICE covers no file extracted or generated from the game."],"requirements_zh":["README 将其描述为静态重编译，而非反编译或模拟器：固定于 v0.10.0（提交 c94f5eb）并经 patches/rexglue-sdk.patch 修改的 ReXGlue SDK，把 default.xex 中的每个 PowerPC 函数转换为 C++。config/saintsrow_manifest.toml 补充 ABI 辅助例程、19 个只经虚表调用的函数和两处函数内钩子，project/src 则替换了渲染（预测式分块）、音频、内核对象和遮挡查询相关行为。README 报告游戏可从头到尾完整游玩，支持局域网、直连 IP 或加入码的合作模式，附带可选的 60 FPS 模组和模组加载器；已知问题包括角色创建界面的纹理闪烁。","需自备 Saints Row（Xbox 360）光盘，以 .iso 或包含 default.xex 与 packfiles 的游戏文件夹形式提供。只支持移植所用的光盘版本：安装程序将 default.xex 与全球版光盘的已知 SHA-1 比较，不一致时发出警告，因为钩子使用固定地址。仓库不含游戏代码、数据、重编译产物或可执行文件，其法律声明也禁止借此分发这些内容。","需要 64 位 Windows 10／11、支持 Direct3D 12 的 GPU、约 15 GB 磁盘空间和 16 GB 内存。安装程序下载便携版 clang、CMake、Ninja 以及 Microsoft 的 C++ 头文件和库（约 1.5 GB），在本地用 10–60 分钟构建游戏；较早的 setup.bat 路径需要带 Clang 与 CMake 组件的 Visual Studio 2022 和 Git。README 称 Linux（通过 Proton）支持即将推出，但 BUILDING.md 已将安装程序描述为可在 Windows 和 Linux 上运行。","可玩性与已知问题列表均为作者报告。唯一的 CI 工作流构建安装程序；仓库中的测试涵盖合作模式、模组和地图工具，未记录将重编译行为与主机自动比较的测试。","项目代码采用 Apache-2.0，再分发者须保留 NOTICE 并署名 Saints Reborn by Whompay。SDK 补丁沿用 ReXGlue SDK 的 BSD 式许可，该 SDK 部分源自 Xenia，构建时下载的库保留各自条款。Saints Row 仍归其所有者，NOTICE 不涵盖从游戏中提取或生成的任何文件。"],"targets":["game"],"url":"https://github.com/whompay/SaintsReborn","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/cybervisi0n/pokeplatinum/blob/35067868f64f23d25d17ac3e536cfdd9a7f40523/Makefile","https://github.com/cybervisi0n/pokeplatinum/blob/35067868f64f23d25d17ac3e536cfdd9a7f40523/meson.build","https://github.com/cybervisi0n/pokeplatinum/blob/35067868f64f23d25d17ac3e536cfdd9a7f40523/meson.options","https://github.com/cybervisi0n/pokeplatinum/blob/35067868f64f23d25d17ac3e536cfdd9a7f40523/.github/workflows/build_arm.yml","https://github.com/cybervisi0n/pokeplatinum/blob/35067868f64f23d25d17ac3e536cfdd9a7f40523/.github/workflows/build_linux.yml","https://github.com/cybervisi0n/pokeplatinum/blob/35067868f64f23d25d17ac3e536cfdd9a7f40523/.github/workflows/build_win.yml","https://github.com/cybervisi0n/pokeplatinum/blob/35067868f64f23d25d17ac3e536cfdd9a7f40523/AGENTS.md","https://github.com/cybervisi0n/pokeplatinum/tree/35067868f64f23d25d17ac3e536cfdd9a7f40523/subprojects","https://github.com/cybervisi0n/pokeplatinum/releases/tag/v0.1.12","https://github.com/cybervisi0n/libntr/blob/1555d911ac80c0190ac1c321f99f1323de8b3c09/README.md","https://github.com/cybervisi0n/libntr/blob/1555d911ac80c0190ac1c321f99f1323de8b3c09/LICENSE"],"category":"reconstruction-cases","description_en":"Builds native 64-bit Windows and Linux executables of Pokémon Platinum from a fork of pret’s decompilation, replacing NitroSDK with the author’s libntr libraries; the same tree keeps the DS ROM build and an experimental Switch target. README says the game should be playable from start to finish but may crash or show graphical bugs. Prebuilt binaries require the player’s own US ROM, and the fork’s default build no longer runs pret’s checksum tests.","description_zh":"基于 pret 反编译项目的分支，为《宝可梦 白金》构建原生 64 位 Windows 和 Linux 可执行文件，并以作者的 libntr 库替代 NitroSDK；同一源码树仍保留 DS ROM 构建和实验性的 Switch 目标。README 称游戏应可从头玩到尾，但可能出现崩溃和图形错误。预构建程序需要玩家自备美版 ROM，且该分支的默认构建不再运行 pret 的校验测试。","entry_url":"https://awesomerea.org/resources/pokemon-platinum-pc-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/pokemon-platinum-pc-port-case/","evidence_url":"https://github.com/cybervisi0n/pokeplatinum/blob/35067868f64f23d25d17ac3e536cfdd9a7f40523/README.md","group":"cases","id":"pokemon-platinum-pc-port-case","json_url":"https://awesomerea.org/resources/pokemon-platinum-pc-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/pokemon-platinum-pc-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pokemon-platinum-pc-port-case/index.md","name":"Pokémon Platinum PC Port: a native port built on the pret decompilation","name_zh":"Pokémon Platinum PC Port：基于 pret 反编译的原生移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes an experimental PC port of US Pokémon Platinum based on pret’s decompilation, using libntr, libntrsystem, libntrwifi and libntrdwc in place of NitroSDK and related DS libraries. The Meson build_target option selects arm (DS ROM), linux, win64 or nx, and README calls the NX target working but slow. Its goals of full WiFi and multiplayer support and later homebrew console ports are stated aims.","README requires users of the prebuilt release binaries to supply their own dumped US Platinum ROM (game code CPUE01), selected on first launch; only the US version is supported. The source tree keeps pret’s committed res/ data, and README asks forks not to publish releases that bundle compiled assets with PC binaries.","Linux builds are recommended through the Docker wrapper drun.sh; a non-container build on Arch Linux lists nasm, enet, arm-none-eabi-gcc, Ninja, flex and bison. Windows uses PowerShell scripts that create a portable MSYS2 environment before make win64, and the NX target needs devkitA64. The ARM and Linux CI jobs install the inherited metroskrew Metrowerks compiler, and the libntr subprojects track their main branches rather than pinned revisions.","CI builds the ARM ROM, Linux and Windows targets on pc_port pushes and packages Linux and Windows artifacts; the latest release, v0.1.12 (2026-10-10), ships Linux and Windows zip archives from a commit earlier than the reviewed one. The fork’s default make target drops pret’s checksum dependency and CI does not run make check.","The fork has no top-level license file and GitHub detects none; libntr declares MIT, which README says release publishers must honor, while pret’s decompilation declares no license and original game content remains subject to its rights holders. README states that generative AI/LLM shortcuts were not used and that AI-made pull requests are rejected, and AGENTS.md repeats that refusal."],"requirements_zh":["README 将其描述为基于 pret 反编译项目的美版《宝可梦 白金》实验性 PC 移植，以 libntr、libntrsystem、libntrwifi 和 libntrdwc 替代 NitroSDK 及相关 DS 库。Meson 的 build_target 选项可选 arm（DS ROM）、linux、win64 或 nx，README 称 NX 目标可用但性能较差。完整支持 WiFi 与多人功能及日后移植到其他主机自制环境，都是所述目标。","README 要求使用预构建发行版的玩家自行提供已转储的美版白金 ROM（游戏代码 CPUE01），在首次启动时选择；目前只支持美版。源码树保留 pret 已提交的 res/ 数据，README 要求分支不要发布将编译后素材与 PC 程序打包在一起的版本。","README 推荐通过 Docker 包装脚本 drun.sh 进行 Linux 构建；在 Arch Linux 上不使用容器构建时需 nasm、enet、arm-none-eabi-gcc、Ninja、flex 和 bison。Windows 先用 PowerShell 脚本创建便携 MSYS2 环境，再运行 make win64；NX 目标需要 devkitA64。ARM 与 Linux 的 CI 作业会安装沿用的 metroskrew Metrowerks 编译器，libntr 系列子项目跟踪各自的 main 分支，而非固定版本。","CI 在 pc_port 分支推送时构建 ARM ROM、Linux 和 Windows 目标，并打包 Linux 与 Windows 产物；最新发行版 v0.1.12（2026-10-10）提供 Linux 和 Windows 压缩包，来自早于所审提交的版本。该分支的默认 make 目标去掉了 pret 的校验依赖，CI 也不运行 make check。","该分支没有顶层许可证文件，GitHub 也未识别出许可证；libntr 声明 MIT，README 要求发布者遵守其条款，而 pret 的反编译项目未声明许可证，原游戏内容仍受其权利人约束。README 表示未使用生成式 AI／大语言模型捷径，并拒绝借助 AI 的拉取请求，AGENTS.md 也重申了这一拒绝。"],"targets":["game"],"url":"https://github.com/cybervisi0n/pokeplatinum","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/Mikompilation/MikuPan/blob/ec204d75441e98d8bd43ddd95cae744eb683f00c/CMakeLists.txt","https://github.com/Mikompilation/MikuPan/blob/ec204d75441e98d8bd43ddd95cae744eb683f00c/CMakePresets.json","https://github.com/Mikompilation/MikuPan/blob/ec204d75441e98d8bd43ddd95cae744eb683f00c/.github/workflows/Build.yml","https://github.com/Mikompilation/MikuPan/blob/ec204d75441e98d8bd43ddd95cae744eb683f00c/.github/workflows/Nightly.yml","https://github.com/Mikompilation/MikuPan/blob/ec204d75441e98d8bd43ddd95cae744eb683f00c/LICENSE","https://github.com/Mikompilation/Himuro/blob/595b082aef19c329a25dc6926e4ac638d13ed75d/README.md","https://github.com/Mikompilation/Himuro/blob/595b082aef19c329a25dc6926e4ac638d13ed75d/LICENSE"],"category":"reconstruction-cases","description_en":"Ports the PS2 game Fatal Frame to native PC builds without emulation; its repository description names the Himuro decompilation as its basis. Stubs replace PS2 kernel calls and a new SDL3-based layer handles rendering, audio and UI, while game data comes from the user’s own disc. The README calls the port very early work and publishes no matching or fidelity checks.","description_zh":"将 PS2 游戏 Fatal Frame（《零》）移植为无需模拟器的原生 PC 版本；仓库简介称其基于 Himuro 反编译项目。PS2 内核调用由桩函数替代，渲染、音频和界面由基于 SDL3 的新层实现，游戏数据则来自使用者自有的光盘。README 称移植仍处于很早期阶段，未发布一致性或还原度检查。","entry_url":"https://awesomerea.org/resources/mikupan-fatal-frame-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/mikupan-fatal-frame-port-case/","evidence_url":"https://github.com/Mikompilation/MikuPan/blob/ec204d75441e98d8bd43ddd95cae744eb683f00c/README.md","group":"cases","id":"mikupan-fatal-frame-port-case","json_url":"https://awesomerea.org/resources/mikupan-fatal-frame-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/mikupan-fatal-frame-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mikupan-fatal-frame-port-case/index.md","name":"MikuPan: a native Fatal Frame PC port built on the Himuro decompilation","name_zh":"MikuPan：基于 Himuro 反编译的 Fatal Frame 原生 PC 移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes an in-progress native PC port of the PS2 game with no emulation and calls it very early work; debug builds are recommended because release builds have issues. Per the repository description its basis is Himuro, a separate decompilation aiming for matching US, EU and JP PS2 executables, and MikuPan’s game-code directories follow Himuro’s source layout.","Requires IMG_HD.BIN and IMG_BD.BIN from an independently obtained Fatal Frame disc image of the matching region: NTSC-U for the default presets or PAL/EU for the *-eu presets. NTSC-J images are unsupported. The README states that the game data is not packaged, including in Android APKs.","Builds use CMake 3.28+ and C++20 and fetch SDL3, FFmpeg, SDL_shadercross and other libraries; Windows uses MinGW, Cygwin or MSVC, and Linux uses GCC. macOS is not officially supported, though contributors report Apple Silicon builds on SDL_GPU’s Metal backend. Android packaging needs Android SDK 35+, NDK r28c+ and prebuilt FFmpeg libraries.","CI builds Windows, Linux and macOS targets on pushes and pull requests and publishes nightly prerelease archives. The reviewed tree has no test suite, matching check or gameplay-comparison result.","MikuPan declares AGPL-3.0 and Himuro declares MIT; bundled third-party binaries and libraries keep their own terms, and Fatal Frame data retains separate rights."],"requirements_zh":["README 将其描述为无需模拟器、仍在进行中的 PS2 游戏原生 PC 移植，并称其处于很早期阶段；由于发布版构建存在问题，建议使用调试版构建。仓库简介称其基于 Himuro，即另一个以生成与美版、欧版、日版 PS2 可执行文件一致的结果为目标的反编译项目；MikuPan 的游戏代码目录沿用 Himuro 的源码结构。","需要从自行合法取得、区域匹配的 Fatal Frame 光盘镜像中获得 IMG_HD.BIN 和 IMG_BD.BIN：默认预设对应 NTSC-U，*-eu 预设对应 PAL／EU；不支持 NTSC-J 镜像。README 说明游戏数据不随项目打包，Android APK 也不包含。","构建使用 CMake 3.28+ 和 C++20，并自动获取 SDL3、FFmpeg、SDL_shadercross 等库；Windows 可使用 MinGW、Cygwin 或 MSVC，Linux 使用 GCC。macOS 不在官方支持范围内，但贡献者报告已基于 SDL_GPU 的 Metal 后端在 Apple Silicon 上构建。Android 打包需要 Android SDK 35+、NDK r28c+ 及预编译的 FFmpeg 库。","CI 在推送和拉取请求时构建 Windows、Linux 与 macOS 目标，并发布夜间预发布压缩包。所审源码树中没有测试套件、一致性检查或游戏行为对比结果。","MikuPan 声明 AGPL-3.0，Himuro 声明 MIT；随附的第三方二进制文件和库保留各自条款，Fatal Frame 游戏数据另有权利约束。"],"targets":["game"],"url":"https://github.com/Mikompilation/MikuPan","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/sonicdcer/Starfox64Recomp/blob/f2996555d73ca480f3dc3639f375c50818847bfc/BUILDING.md","https://github.com/sonicdcer/Starfox64Recomp/blob/f2996555d73ca480f3dc3639f375c50818847bfc/us.rev1.toml","https://github.com/sonicdcer/Starfox64Recomp/blob/f2996555d73ca480f3dc3639f375c50818847bfc/aspMain.us.rev1.toml","https://github.com/sonicdcer/Starfox64Recomp/blob/f2996555d73ca480f3dc3639f375c50818847bfc/.gitmodules","https://github.com/sonicdcer/Starfox64Recomp/blob/f2996555d73ca480f3dc3639f375c50818847bfc/.github/workflows/validate.yml","https://github.com/sonicdcer/Starfox64Recomp/blob/f2996555d73ca480f3dc3639f375c50818847bfc/DOCS/fox_lore.md","https://github.com/sonicdcer/Starfox64Recomp/blob/f2996555d73ca480f3dc3639f375c50818847bfc/COPYING","https://github.com/sonicdcer/Starfox64Recomp/releases/tag/1.0.3"],"category":"reconstruction-cases","description_en":"Uses N64: Recompiled to statically recompile the US 1.1 (Rev A) Nintendo 64 release of Star Fox 64 into a native port for Windows, Linux and macOS, rendered with RT64. Its patches and enhancements draw on headers and some functions from the separate sf64 decompilation, but the port is not compiled from that decompilation's source. The README reports high-frame-rate, widescreen and mod support, with assets loaded from the user's own ROM.","description_zh":"使用 N64: Recompiled 将 Nintendo 64 版 Star Fox 64 美版 1.1（Rev A）静态重编译为面向 Windows、Linux 和 macOS 的原生移植，并以 RT64 渲染。补丁与增强功能借用独立的 sf64 反编译项目中的头文件和部分函数，但移植本身并非由该反编译源码编译而成。README 报告支持高帧率、宽屏与模组，素材从使用者自备的 ROM 载入。","entry_url":"https://awesomerea.org/resources/starfox64-recompiled-case/","entry_url_zh":"https://awesomerea.org/zh/resources/starfox64-recompiled-case/","evidence_url":"https://github.com/sonicdcer/Starfox64Recomp/blob/f2996555d73ca480f3dc3639f375c50818847bfc/README.md","group":"cases","id":"starfox64-recompiled-case","json_url":"https://awesomerea.org/resources/starfox64-recompiled-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/starfox64-recompiled-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/starfox64-recompiled-case/index.md","name":"Starfox 64: Recompiled — an N64Recomp static-recompilation port","name_zh":"Starfox 64: Recompiled：基于 N64Recomp 的静态重编译移植","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes a static recompilation, not an emulator or a decompilation-based source port: N64Recomp translates the game code in the ROM (us.rev1.toml, with symbols from the Starfox64RecompSyms submodule) and RSPRecomp the audio microcode (aspMain.us.rev1.toml), running on N64ModernRuntime with RT64. Patches use headers and some functions from the sf64 decompilation submodule. README links release 1.0.3, the latest GitHub release (2025-12-30), lists planned features and one overlay-related known issue, and calls Starship a sibling port built with different technology.","Players provide the US 1.1 (Rev A) N64 ROM in the main menu; the port accepts only that ROM, converting other dump formats of it to .z64, and loads its assets from it. Building also needs a decompressed copy of the same ROM as recompiler input, identified in BUILDING.md by MD5. The repository and releases contain no game assets; CI copies the decompressed ROM from a private repository through secrets.","Runs on Windows, Linux (x64, ARM64, Flatpak, Steam Deck) and macOS 13 or newer, with a GPU supporting Direct3D 12 (Shader Model 6), Vulkan 1.2 or Metal Argument Buffers Tier 2, and SSE4.1 on x86-64. Building needs CMake, Ninja and clang (on Windows Visual Studio 2022 with its Clang and CMake components plus make; on Ubuntu SDL2, GTK 3, LLVM and lld), with N64Recomp and RSPRecomp built separately; CI pins N64Recomp at commit 98bf104.","Nightly CI builds run for Windows, macOS and Linux. DOCS/fox_lore.md recounts the sf64 decompilation's matching history.","COPYING is GPLv3; the original ROM and the bundled libraries keep their own terms. This is a static recompilation, not recovered authored source, and README credits the decompilation team's reverse engineering for the port's enhancements."],"requirements_zh":["README 将其描述为静态重编译，既非模拟器，也非基于反编译源码的移植：N64Recomp 转换 ROM 中的游戏代码（us.rev1.toml，符号来自 Starfox64RecompSyms 子模块），RSPRecomp 转换音频微码（aspMain.us.rev1.toml），并运行在 N64ModernRuntime 与 RT64 之上。补丁使用 sf64 反编译子模块中的头文件和部分函数。README 链接的 1.0.3 是 GitHub 上的最新发布（2025-12-30），并列出计划功能和一项与叠加层软件有关的已知问题，还称 Starship 是采用不同技术的姊妹移植。","玩家在主菜单中提供美版 1.1（Rev A）N64 ROM；移植只接受该 ROM，会把其他转储格式自动转换为 .z64，并从中载入素材。构建时还需同一 ROM 的解压副本作为重编译器输入，BUILDING.md 以 MD5 标识该文件。仓库与发行包都不含游戏素材；CI 通过密钥从私有仓库复制解压后的 ROM。","可在 Windows、Linux（x64、ARM64、Flatpak、Steam Deck）及 macOS 13 或更新版本上运行，需要支持 Direct3D 12（Shader Model 6）、Vulkan 1.2 或 Metal Argument Buffers Tier 2 的 GPU，x86-64 上还需 SSE4.1。构建需要 CMake、Ninja 和 clang（Windows 上为带 Clang 与 CMake 组件的 Visual Studio 2022 及 make；Ubuntu 上为 SDL2、GTK 3、LLVM 与 lld），并需另行构建 N64Recomp 与 RSPRecomp；CI 将 N64Recomp 固定在提交 98bf104。","Windows、macOS 和 Linux 有每夜 CI 构建。DOCS/fox_lore.md 回顾 sf64 反编译的一致性进展。","COPYING 为 GPLv3；原 ROM 与随附库保留各自条款。这是静态重编译，不是恢复出的原作者源码；README 将移植增强功能归功于反编译团队的逆向工作。"],"targets":["game"],"url":"https://github.com/sonicdcer/Starfox64Recomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/zm2283145/syphon-filter-omega-strain-decomp/blob/d41eacc6dd89befed75fec21a02faaa2b5a4750c/PROGRESS.md","https://github.com/zm2283145/syphon-filter-omega-strain-decomp/blob/d41eacc6dd89befed75fec21a02faaa2b5a4750c/docs/HANDOFF.md","https://github.com/zm2283145/syphon-filter-omega-strain-decomp/blob/d41eacc6dd89befed75fec21a02faaa2b5a4750c/progress/report.json","https://github.com/zm2283145/syphon-filter-omega-strain-decomp/blob/d41eacc6dd89befed75fec21a02faaa2b5a4750c/DECOMP_DEV.md","https://github.com/zm2283145/syphon-filter-omega-strain-decomp/blob/d41eacc6dd89befed75fec21a02faaa2b5a4750c/config/target.sha256","https://github.com/zm2283145/syphon-filter-omega-strain-decomp/blob/d41eacc6dd89befed75fec21a02faaa2b5a4750c/tools/check_sha256.py","https://github.com/zm2283145/syphon-filter-omega-strain-decomp/blob/d41eacc6dd89befed75fec21a02faaa2b5a4750c/requirements.txt","https://github.com/zm2283145/syphon-filter-omega-strain-decomp/blob/d41eacc6dd89befed75fec21a02faaa2b5a4750c/docs/data_gen.md","https://github.com/zm2283145/syphon-filter-omega-strain-decomp/blob/d41eacc6dd89befed75fec21a02faaa2b5a4750c/.github/workflows/report.yml"],"category":"reconstruction-cases","description_en":"Reconstructs much of the NTSC-U PlayStation 2 executable of Syphon Filter: The Omega Strain as C; with the remaining functions kept as split assembly, the build reproduces the retail SCUS_972.64 byte for byte. Committed objdiff reports track per-function matching against the user’s own executable. This is a matching-decompilation case, not a PC port; progress figures remain project-reported.","description_zh":"将 Syphon Filter: The Omega Strain 北美版 PlayStation 2 可执行文件的大部分代码重建为 C；其余函数保留为拆分出的汇编，整体构建可逐字节重现零售版 SCUS_972.64。仓库提交的 objdiff 报告以使用者自备的可执行文件为基准，追踪逐函数的匹配进度。这是一致性反编译案例，不是 PC 移植；进度数字仍为项目报告。","entry_url":"https://awesomerea.org/resources/syphon-filter-omega-strain-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/syphon-filter-omega-strain-decomp-case/","evidence_url":"https://github.com/zm2283145/syphon-filter-omega-strain-decomp/blob/d41eacc6dd89befed75fec21a02faaa2b5a4750c/README.md","group":"cases","id":"syphon-filter-omega-strain-decomp-case","json_url":"https://awesomerea.org/resources/syphon-filter-omega-strain-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/syphon-filter-omega-strain-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/syphon-filter-omega-strain-decomp-case/index.md","name":"Syphon Filter: The Omega Strain — matching PS2 executable decompilation","name_zh":"Syphon Filter: The Omega Strain：可逐字节重建 PS2 可执行文件的一致性反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["Targets only the NTSC-U executable SCUS_972.64; the output is a rebuilt PS2 ELF, not a native PC program. At the reviewed commit, the committed objdiff report and handoff note list 13,413 of 14,331 functions (93.59%), 76.59% of code bytes and 99.92% of data as matched, with the rest still assembly. The dated status table in PROGRESS.md shows older, lower figures, and function totals shift as boundaries are refined.","Supply SCUS_972.64 from an independently owned disc or image; configure.py checks its SHA-256 against config/target.sha256 before splitting. No disc data, split assembly, objects or rebuilt executable is committed; derived files are generated in git-ignored folders. Executable data regions are committed as generated C definitions.","Setup needs Python 3.10+ with pinned splat 0.50.0 and spimdisasm 1.42.4, ninja, MIPS binutils and objdiff-cli. Windows runs the tools natively; Linux/macOS run the Windows compiler through wibo or wine. The setup script downloads a CodeWarrior PS2 3.0.3 build archived by decomp.me, but the licensed 3.0 build 38 and 3.04 build 22 installations used by per-unit overrides are not supplied; without them those units fall back to retail assembly. Library units use EE-GCC 2.95.3 and 2.96.","Verification is a whole-image SHA-256 comparison: ninja fails unless the rebuilt executable matches the retail hash, and the project claims a function match only with that check and objdiff identity. CI cannot build without the executable and only uploads the locally generated report for decomp.dev. The project treats build 38 compatibility as code-generation evidence.","No license file is present at the reviewed commit, so reuse terms for the project’s code are unstated; the game, its executable and the proprietary Metrowerks compilers retain separate rights. The handoff note addresses a person or AI agent and the progress log plans parallel agent work."],"requirements_zh":["仅针对北美版可执行文件 SCUS_972.64；产物是重建的 PS2 ELF，而非原生 PC 程序。在所审提交中，已提交的 objdiff 报告和交接说明列出 14,331 个函数中已匹配 13,413 个（93.59%），代码字节匹配 76.59%，数据匹配 99.92%，其余仍为汇编。PROGRESS.md 中带日期的状态表仍显示较早、较低的数字，函数总数也会随边界细化而变化。","需从自有光盘或其镜像取得 SCUS_972.64；configure.py 在拆分前会将其 SHA-256 与 config/target.sha256 比对。仓库不提交光盘数据、拆分出的汇编、目标文件或重建的可执行文件，这些派生文件都生成于 git 忽略的目录中。可执行文件的数据区以生成的 C 定义形式提交。","构建环境需 Python 3.10+，以及固定版本的 splat 0.50.0、spimdisasm 1.42.4、ninja、MIPS binutils 和 objdiff-cli。Windows 可原生运行这些工具；Linux／macOS 通过 wibo 或 wine 运行 Windows 编译器。安装脚本会下载 decomp.me 存档的 CodeWarrior PS2 3.0.3 版本，但逐单元覆盖所用的需授权 3.0 build 38 和 3.04 build 22 安装不随附；缺少它们时，这些单元会回退为零售版汇编。库代码单元使用 EE-GCC 2.95.3 和 2.96。","验证方式是整个映像的 SHA-256 比对：重建的可执行文件与零售版哈希不符时 ninja 即报错，项目只有在通过该检查且 objdiff 显示一致时才声称函数匹配。CI 没有可执行文件，无法构建，只上传本地生成的报告供 decomp.dev 读取。项目将 build 38 的兼容性视为代码生成方面的证据。","所审提交中没有许可证文件，因此项目代码的复用条款未说明；游戏、其可执行文件及专有的 Metrowerks 编译器另有权利约束。交接说明面向“人或 AI 代理”，进度日志也计划并行使用代理。"],"targets":["game"],"url":"https://github.com/zm2283145/syphon-filter-omega-strain-decomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/flyngmt/ACGC-PC-Port/blob/4099d246c927e75b4fd342ca13f4ac4395c55af5/pc/DOCUMENTATION.md","https://github.com/flyngmt/ACGC-PC-Port/blob/4099d246c927e75b4fd342ca13f4ac4395c55af5/FAQ.md","https://github.com/flyngmt/ACGC-PC-Port/blob/4099d246c927e75b4fd342ca13f4ac4395c55af5/build_pc.sh","https://github.com/flyngmt/ACGC-PC-Port/blob/4099d246c927e75b4fd342ca13f4ac4395c55af5/pc/CMakeLists.txt","https://github.com/flyngmt/ACGC-PC-Port/blob/4099d246c927e75b4fd342ca13f4ac4395c55af5/LICENSE","https://github.com/flyngmt/ACGC-PC-Port/releases/tag/v0.9.3-playtest"],"category":"reconstruction-cases","description_en":"Runs Animal Crossing’s decompiled GameCube C code natively on 32-bit x86, replacing the GX graphics API with an OpenGL 3.3 translation layer and console services with SDL2-based platform code. Game assets are read at startup from the user’s own disc image instead of being shipped. It is a port built on ACreTeam’s ac-decomp, not a matching rebuild of the original executable.","description_zh":"让 Animal Crossing 反编译所得的 GameCube C 代码在 32 位 x86 上原生运行，用转换层把 GX 图形 API 映射到 OpenGL 3.3，并以基于 SDL2 的平台代码替代主机服务。游戏素材在启动时从使用者自己的光盘镜像读取，不随项目分发。这是基于 ACreTeam ac-decomp 的移植，而非与原可执行文件一致的重建。","entry_url":"https://awesomerea.org/resources/animal-crossing-pc-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/animal-crossing-pc-port-case/","evidence_url":"https://github.com/flyngmt/ACGC-PC-Port/blob/4099d246c927e75b4fd342ca13f4ac4395c55af5/README.md","group":"cases","id":"animal-crossing-pc-port-case","json_url":"https://awesomerea.org/resources/animal-crossing-pc-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/animal-crossing-pc-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/animal-crossing-pc-port-case/index.md","name":"Animal Crossing: a native PC port of the GameCube decompilation","name_zh":"Animal Crossing：基于 GameCube 反编译成果的原生 PC 移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed snapshot is the v0.9.3-playtest pre-release and supports only the USA Rev 0 release (GAFE01_00). The README calls the underlying ac-decomp complete, while the developer documentation calls it 99.52% complete. Online play is not planned, and the Animal Crossing Deluxe mod is incompatible, although this release adapts some of its quality-of-life changes.","Requires the user’s own Animal Crossing (USA) disc image in ISO, GCM or CISO form; at startup the port loads main.dol, foresta.rel.szs and about 2,500 assets from it in memory. The README states that the repository contains no game assets or assembly. Saves use Dolphin-compatible GCI files, and optional HD texture packs use Dolphin’s naming format.","Windows is the primary target: the documented build uses an MSYS2 MINGW32 shell with 32-bit MinGW GCC, CMake 3.16+ and SDL2, plus vendored GLAD for an OpenGL 3.3 Core context. Builds must be 32-bit, unoptimized (-O0) and define NDEBUG, because the decompiled code casts pointers to 32-bit values and contains optimization-sensitive undefined behavior. Linux i686 is described as compiling and linking but is not officially supported.","About 100 decompilation files carry TARGET_PC changes, and optional PC_ENHANCEMENTS add settings, MSAA and texture-pack loading. The project describes Windows as fully tested and records an unresolved bass-distortion audio issue, but publishes no automated tests or byte-matching checks for the port.","LICENSE keeps the decompilation code under CC0 1.0 from ac-decomp and licenses the pc/ layer and TARGET_PC additions under MIT, with a separate MIT notice for FixNES; GitHub classifies no single license. Game content rights are separate. The README discloses that AI tools such as Claude were used for port code only."],"requirements_zh":["所审阅快照为 v0.9.3-playtest 预发布版，仅支持美版 Rev 0（GAFE01_00）。README 称其依托的 ac-decomp 已完整，开发者文档则称完成度为 99.52%。项目不计划支持联机；Animal Crossing Deluxe 模组与之不兼容，但此版本改编了其中部分便利性改动。","需使用者自备 Animal Crossing（美版）光盘镜像，格式为 ISO、GCM 或 CISO；移植版启动时在内存中从镜像载入 main.dol、foresta.rel.szs 及约 2,500 项素材。README 声明仓库不含任何游戏素材或汇编。存档使用与 Dolphin 兼容的 GCI 文件，可选高清材质包沿用 Dolphin 的命名格式。","Windows 为主要目标平台：文档所述构建在 MSYS2 MINGW32 环境中进行，需 32 位 MinGW GCC、CMake 3.16+ 和 SDL2，并用随附的 GLAD 创建 OpenGL 3.3 Core 上下文。必须以 32 位、不优化（-O0）并定义 NDEBUG 的方式构建，因为反编译代码把指针转换为 32 位数值，且含有对优化敏感的未定义行为。Linux i686 据称可以编译链接，但未获正式支持。","约 100 个反编译文件含有 TARGET_PC 改动，可选的 PC_ENHANCEMENTS 增加设置项、MSAA 和材质包加载。项目称 Windows 版已全面测试，并记录一处尚未解决的低音失真问题，但没有为移植版发布自动化测试或逐字节一致性检查。","LICENSE 说明反编译代码沿用 ac-decomp 的 CC0 1.0，pc/ 层及 TARGET_PC 新增代码采用 MIT，FixNES 另附 MIT 声明；GitHub 未识别出单一许可证。游戏内容权利另计。README 披露仅在移植代码中使用了 Claude 等 AI 工具。"],"targets":["game"],"url":"https://github.com/flyngmt/ACGC-PC-Port","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/n64decomp/007/blob/c4356466796c697dfd298010b9bed261f9ed8c6a/docs/SetupGuide.md","https://github.com/n64decomp/007/blob/c4356466796c697dfd298010b9bed261f9ed8c6a/Makefile","https://github.com/n64decomp/007/blob/c4356466796c697dfd298010b9bed261f9ed8c6a/ge007.u.sha1","https://github.com/n64decomp/007/blob/c4356466796c697dfd298010b9bed261f9ed8c6a/ge007.j.sha1","https://github.com/n64decomp/007/blob/c4356466796c697dfd298010b9bed261f9ed8c6a/ge007.e.sha1","https://github.com/n64decomp/007/blob/c4356466796c697dfd298010b9bed261f9ed8c6a/.github/workflows/main.yml","https://github.com/n64decomp/007/blob/c4356466796c697dfd298010b9bed261f9ed8c6a/.github/workflows/JPN.yml","https://github.com/n64decomp/007/blob/c4356466796c697dfd298010b9bed261f9ed8c6a/.github/workflows/EU.yml","https://github.com/n64decomp/007/blob/c4356466796c697dfd298010b9bed261f9ed8c6a/tools/ido5.3_recomp/README.md","https://kholdfuzion.github.io/goldeneyestatus/","https://gitlab.com/kholdfuzion/goldeneye_src/-/tree/c4356466796c697dfd298010b9bed261f9ed8c6a"],"category":"reconstruction-cases","description_en":"Reconstructs GoldenEye 007’s Nintendo 64 code as C source that rebuilds the US, Japanese and PAL ROMs. Assets come from a user-supplied US ROM, with Japanese and PAL differences taken from their own ROMs, and the default build compares each output with a recorded SHA-1. The README still calls the project work in progress, while a mutable status page reports all 208 files done; it is distinct from the separately curated PC port.","description_zh":"将 GoldenEye 007 的 Nintendo 64 代码重建为 C 源码，可重新构建美版、日版和 PAL 版 ROM。素材取自使用者自备的美版 ROM，日版与 PAL 版的差异部分则取自各自的 ROM；默认构建会将每个产物与记录的 SHA-1 比对。README 仍称项目在进行中，而可变的状态页报告全部 208 个文件已完成；它与另行收录的 PC 移植不同。","entry_url":"https://awesomerea.org/resources/goldeneye-007-matching-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/goldeneye-007-matching-decomp-case/","evidence_url":"https://github.com/n64decomp/007/blob/c4356466796c697dfd298010b9bed261f9ed8c6a/readme.md","group":"cases","id":"goldeneye-007-matching-decomp-case","json_url":"https://awesomerea.org/resources/goldeneye-007-matching-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/goldeneye-007-matching-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/goldeneye-007-matching-decomp-case/index.md","name":"GoldenEye 007: matching Nintendo 64 decompilation for three releases","name_zh":"GoldenEye 007：覆盖三个版本的一致性 Nintendo 64 反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed GitHub repository describes itself as a mirror of the kholdfuzion GitLab project. README calls it a work-in-progress decompilation that builds US, JP and EU ROMs, each with a listed SHA-1. The mutable status page reports 208 of 208 files done and 100% for src, src/game, src/inflate and src/libultra without stating its unit. The output is an N64 ROM, not the separately curated native PC port.","Requires an unmodified, independently obtained US ROM; JP and PAL builds additionally need their own original ROMs, and US asset extraction must come first. The README states that the repository does not include all assets needed to compile the ROMs.","Documented hosts are Linux, WSL or a VM, plus Docker or Docker Compose. The build uses GNU make, MIPS binutils, Python 3 and host build tools. By default it compiles C with a locally generated static recompilation of the IRIX IDO 5.3 compiler from vendored decompals/ido-static-recomp; alternatively it runs the original IDO binaries under qemu-irix.","With the default COMPARE=1, the build checks the output ROM’s SHA-1 and prints an OK line for the selected version; COMPARE=0 and the DEBUG and USB variants skip that check. NTSC, JP and EU CI workflows build from secretly supplied base ROMs and generate status reports.","GitHub detects no license and the reviewed tree has no top-level license file, so no reuse grant is established. Original ROMs and extracted assets retain separate rights, and the checked-in IRIX IDO binaries and vendored tools keep their own terms."],"requirements_zh":["所审 GitHub 仓库自称是 kholdfuzion GitLab 项目的镜像。README 称其为进行中的反编译项目，可构建美版、日版和欧版 ROM，并分别列出 SHA-1。可变的状态页报告 208 个文件已全部完成，src、src/game、src/inflate 和 src/libultra 均为 100%，但未说明计量单位。产物是 N64 ROM，不是另行收录的原生 PC 移植。","需自行取得未经修改的美版 ROM；构建日版和 PAL 版还需各自的原始 ROM，且须先完成美版素材提取。README 声明仓库不包含编译 ROM 所需的全部素材。","文档说明的宿主环境为 Linux、WSL 或虚拟机，以及 Docker 或 Docker Compose。构建使用 GNU make、MIPS binutils、Python 3 和宿主构建工具。默认情况下，它使用从内置的 decompals/ido-static-recomp 在本地生成的 IRIX IDO 5.3 编译器静态重编译版本编译 C 代码；也可改为在 qemu-irix 下运行原始 IDO 二进制文件。","在默认的 COMPARE=1 下，构建会检查输出 ROM 的 SHA-1，并为所选版本输出 OK 行；COMPARE=0 以及 DEBUG、USB 变体会跳过该检查。NTSC、日版和欧版 CI 工作流使用以密钥方式提供的原 ROM 构建并生成状态报告。","GitHub 未识别出许可证，所审源码树也没有顶层许可证文件，因此未确立再使用授权。原 ROM 和提取的素材仍受各自权利约束，仓库中的 IRIX IDO 二进制文件及内置工具另有条款。"],"targets":["game"],"url":"https://github.com/n64decomp/007","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/HarbourMasters/Starship/blob/3322643f0bbf80d2f8f7e1c0d2c4c578515f6c90/docs/BUILDING.md","https://github.com/HarbourMasters/Starship/blob/3322643f0bbf80d2f8f7e1c0d2c4c578515f6c90/CMakeLists.txt","https://github.com/HarbourMasters/Starship/blob/3322643f0bbf80d2f8f7e1c0d2c4c578515f6c90/config.yml","https://github.com/HarbourMasters/Starship/blob/3322643f0bbf80d2f8f7e1c0d2c4c578515f6c90/.gitmodules","https://github.com/HarbourMasters/Starship/blob/3322643f0bbf80d2f8f7e1c0d2c4c578515f6c90/.github/workflows/main.yml","https://github.com/HarbourMasters/Starship/blob/3322643f0bbf80d2f8f7e1c0d2c4c578515f6c90/LICENSE.md","https://github.com/HarbourMasters/Starship/releases/tag/v2.0.0","https://github.com/sonicdcer/Starfox64Recomp/blob/f2996555d73ca480f3dc3639f375c50818847bfc/DOCS/fox_lore.md"],"category":"reconstruction-cases","description_en":"A native PC port of Star Fox 64 that compiles the game's decompiled C code against libultraship, an N64 porting library that reimplements libultra and renders through Fast3D. On first run it uses the Torch tool to turn the user's US ROM into an asset archive, and it ships for Windows, Linux, macOS and Switch. The README of the separate Starfox 64: Recompiled static recompilation calls this port its sibling, built with different technology.","description_zh":"Star Fox 64 的原生 PC 移植：将游戏的反编译 C 代码与 libultraship 一同编译，该 N64 移植库重新实现了 libultra，并通过 Fast3D 渲染。首次运行时借助 Torch 工具把使用者的美版 ROM 转换为素材资源包，提供 Windows、Linux、macOS 和 Switch 版本。独立的静态重编译项目 Starfox 64: Recompiled 在其 README 中称本移植为采用不同技术的姊妹项目。","entry_url":"https://awesomerea.org/resources/starship-sf64-pc-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/starship-sf64-pc-port-case/","evidence_url":"https://github.com/HarbourMasters/Starship/blob/3322643f0bbf80d2f8f7e1c0d2c4c578515f6c90/README.md","group":"cases","id":"starship-sf64-pc-port-case","json_url":"https://awesomerea.org/resources/starship-sf64-pc-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/starship-sf64-pc-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/starship-sf64-pc-port-case/index.md","name":"Starship: a Star Fox 64 PC port built from the decompilation","name_zh":"Starship：基于反编译的 Star Fox 64 PC 移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["Starship's README presents a PC port with release and playtest builds. DOCS/fox_lore.md in the sibling Starfox64Recomp repository describes it as a native port of the sf64 decompilation's C code on libultraship (which reimplements most of libultra and uses a Fast3D renderer) and says native porting exposed asset-linking errors and undefined behaviour that matching code alone did not reveal. CMakeLists.txt compiles src/engine, src/overlays, src/sys and src/audio with a port layer in src/port. The latest release is v2.0.0 (2025-05-25), and README warns that CI playtest builds will likely show bugs and possibly crashes.","Supply a US 1.0 or US 1.1 Rev A ROM in .z64 form; README lists the SHA-1 of each. The first run, or the ExtractAssets build target, turns it into sf64.o2r through Torch, using the definitions in config.yml and assets/yaml. JP and EU ROMs serve only as voice-language replacements alongside a US ROM, and the Switch build needs the archive generated on PC. The repository holds extraction definitions, not game assets.","Releases target Windows, Linux (AppImage), macOS and Nintendo Switch, with DirectX 11, OpenGL and Metal back ends. Building needs CMake, Python 3 and Git with Visual Studio 2022 (v143 tools; at least 8 GB of RAM) on Windows, or gcc or clang with Ninja and libraries including SDL2, libzip, spdlog, tinyxml2, Boost and Ogg/Vorbis on Linux. Submodules are libultraship, Torch and asm-differ; CI generates only the port's own starship.o2r and packages builds without a ROM.","Neither README nor BUILDING.md documents automated gameplay tests or comparisons with the original game.","LICENSE.md is CC0 1.0 Universal; the ROM, extracted assets and the game remain their owners' property, and the submodules keep their own terms. README says the project does not condone piracy."],"requirements_zh":["Starship 的 README 将其介绍为 PC 移植，并提供正式发布与测试构建。姊妹项目 Starfox64Recomp 仓库中的 DOCS/fox_lore.md 将其描述为基于 sf64 反编译 C 代码、运行在 libultraship（重新实现大部分 libultra 并使用 Fast3D 渲染器）上的原生移植，并称原生移植暴露了仅靠一致性代码无法发现的素材链接错误和未定义行为。CMakeLists.txt 编译 src/engine、src/overlays、src/sys 和 src/audio，移植层位于 src/port。最新发布为 v2.0.0（2025-05-25），README 提醒 CI 测试构建很可能出现缺陷，甚至可能崩溃。","需自备 .z64 格式的美版 1.0 或美版 1.1 Rev A ROM；README 列出了各自的 SHA-1。首次运行或 ExtractAssets 构建目标会借助 Torch，按照 config.yml 和 assets/yaml 中的定义把它转换为 sf64.o2r。日版和欧版 ROM 只能与美版 ROM 搭配用于替换语音语言，Switch 版需使用在 PC 上生成的资源包。仓库只含提取定义，不含游戏素材。","发行版面向 Windows、Linux（AppImage）、macOS 和 Nintendo Switch，提供 DirectX 11、OpenGL 与 Metal 后端。构建需要 CMake、Python 3 和 Git：Windows 上另需 Visual Studio 2022（v143 工具集，至少 8 GB 内存），Linux 上需 gcc 或 clang、Ninja 以及 SDL2、libzip、spdlog、tinyxml2、Boost、Ogg／Vorbis 等库。子模块为 libultraship、Torch 和 asm-differ；CI 只生成移植自身的 starship.o2r，打包构建时不使用 ROM。","README 与 BUILDING.md 均未记录自动化游戏测试或与原版的对照。","LICENSE.md 为 CC0 1.0 Universal；ROM、提取出的素材及游戏本身仍归其所有者，子模块保留各自条款。README 表示项目不纵容盗版。"],"targets":["game"],"url":"https://github.com/HarbourMasters/Starship","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/CameronRedmore/Crash-Team-Racing-Turbocharged/blob/07d0c49f01d62dcb9887b455be27ce65728ee893/CONTRIBUTING.md","https://github.com/CameronRedmore/Crash-Team-Racing-Turbocharged/blob/07d0c49f01d62dcb9887b455be27ce65728ee893/THIRD_PARTY_NOTICES.md","https://github.com/CameronRedmore/Crash-Team-Racing-Turbocharged/blob/07d0c49f01d62dcb9887b455be27ce65728ee893/LICENSE","https://github.com/CameronRedmore/Crash-Team-Racing-Turbocharged/blob/07d0c49f01d62dcb9887b455be27ce65728ee893/VERSION","https://github.com/CameronRedmore/Crash-Team-Racing-Turbocharged/blob/07d0c49f01d62dcb9887b455be27ce65728ee893/.github/workflows/build-native.yml","https://github.com/CameronRedmore/Crash-Team-Racing-Turbocharged/blob/07d0c49f01d62dcb9887b455be27ce65728ee893/docs/DATA_SECTIONS.md","https://github.com/CameronRedmore/Crash-Team-Racing-Turbocharged/blob/07d0c49f01d62dcb9887b455be27ce65728ee893/assets/fonts/README.md","https://github.com/CTR-tools/ctr-native/blob/4682773232715bfd3f39b8c7066ab12e1c37c23e/README.md"],"category":"reconstruction-cases","description_en":"Extends the Crash Team Racing: High Octane sourceport, which derives from the CTR Native port of the CTR-ModSDK PlayStation decompilation, into Windows and Linux builds with a native 3D renderer, selectable aspect ratios and frame rates up to 240 FPS. The decompiled game code still assumes 32-bit pointers and loads assets from the player’s own NTSC-U disc image. Renderer, timing and option tests exist, but device coverage and fidelity remain project-reported.","description_zh":"在 Crash Team Racing: High Octane 移植版基础上扩展而成；High Octane 源自基于 CTR-ModSDK PlayStation 反编译成果的 CTR Native 移植。本分支面向 Windows 与 Linux，提供原生 3D 渲染器、可选画面比例及最高 240 FPS 帧率。反编译游戏代码仍假定 32 位指针，并从玩家自备的 NTSC-U 光盘镜像读取素材。项目附有渲染、计时和选项测试，但设备覆盖与还原度仍为项目自述。","entry_url":"https://awesomerea.org/resources/ctr-turbocharged-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/ctr-turbocharged-port-case/","evidence_url":"https://github.com/CameronRedmore/Crash-Team-Racing-Turbocharged/blob/07d0c49f01d62dcb9887b455be27ce65728ee893/README.md","group":"cases","id":"ctr-turbocharged-port-case","json_url":"https://awesomerea.org/resources/ctr-turbocharged-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/ctr-turbocharged-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ctr-turbocharged-port-case/index.md","name":"CTR Turbocharged: a PC sourceport built on the Crash Team Racing decompilation","name_zh":"CTR Turbocharged：基于 Crash Team Racing 反编译成果的 PC 移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed turbocharged branch (VERSION 2026.10.1) forks High Octane v1.4.1, which builds on CTR Native and the CTR-ModSDK decompilation. It is a source port of decompiled C, not a matching decompilation or a static recompilation. Only Windows and Linux PC builds are supported; the inherited PS Vita and web builds are not, and the online leaderboard and Discord Rich Presence are disabled.","Game data is not included. The player supplies a raw MODE2/2352 BIN image of the NTSC-U (US) retail Crash Team Racing disc, used as assets/ctr-u.bin; 2048-byte ISO images and CUE files are not accepted. The first-run importer checks sector layout, the NTSC-U executable and boot configuration, required files and the audio manifest, but does not compare the image against a retail checksum. Optional PAL voiceovers and custom characters need a PAL or NTSC-U disc image and the project’s Python tools.","Builds must target 32-bit x86 because the decompiled code assumes 4-byte pointers. The documented CMake 3.20+ presets cover Linux gcc-multilib, Windows MinGW32/MSYS2 and Visual Studio 2022, with SDL3 and other dependencies vendored; Linux builds also need 32-bit X11, OpenGL, audio, udev and D-Bus development packages. Running needs an OpenGL 3.3 GPU and driver, plus 32-bit runtime libraries on Linux.","README reports 31 CTest tests with renderer tests enabled: 25 display-independent and 6 needing an OpenGL context. CI runs the display-independent subset on Linux and Windows and the GPU subset under Xvfb with software GL, which may skip without a context. The tested-devices table confirms one Linux setup and no Windows machine, and known issues include Wayland problems with 32-bit libraries. These are project reports.","The repository is GPLv3. Its third-party notices record PsyCross-derived platform code (MIT), PSn00bSDK headers (MPL 2.0), SDL and other vendored components under their own licenses, and the bundled fonts keep Apache 2.0 and OFL terms. Contributing rules keep retail disc data and extracted assets out of commits; the original game remains its owners’ property."],"requirements_zh":["所审阅的 turbocharged 分支（VERSION 为 2026.10.1）派生自 High Octane v1.4.1，后者基于 CTR Native 及 CTR-ModSDK 反编译成果。它是对反编译 C 代码的源码移植，不是生成一致产物的反编译重建，也不是静态重编译。仅支持 Windows 与 Linux PC 构建；继承的 PS Vita 和网页构建不受支持，在线排行榜与 Discord Rich Presence 已停用。","不含游戏数据。玩家需自备 NTSC-U（美版）零售版 Crash Team Racing 光盘的原始 MODE2/2352 BIN 镜像，作为 assets/ctr-u.bin 使用；不接受 2048 字节扇区的 ISO 镜像或 CUE 文件。首次运行的导入程序会检查扇区布局、NTSC-U 可执行文件与启动配置、必需文件及音频清单，但不会将镜像与零售版校验值比对。可选的 PAL 配音和自定义角色需要 PAL 或 NTSC-U 光盘镜像及项目提供的 Python 工具。","构建必须面向 32 位 x86，因为反编译代码假定指针为 4 字节。文档给出的 CMake 3.20+ 预设覆盖 Linux gcc-multilib、Windows MinGW32／MSYS2 和 Visual Studio 2022，SDL3 等依赖已随仓库提供；Linux 构建还需 32 位 X11、OpenGL、音频、udev 和 D-Bus 开发包。运行需支持 OpenGL 3.3 的 GPU 与驱动，Linux 上还需 32 位运行库。","README 报告启用渲染器测试后共有 31 项 CTest 测试：25 项不依赖显示，6 项需要 OpenGL 上下文。CI 在 Linux 和 Windows 上运行不依赖显示的子集，并在 Xvfb 中以软件 GL 运行 GPU 子集，缺少上下文时可能跳过。已测试设备表仅确认一套 Linux 配置，尚无已确认的 Windows 机器；已知问题包括 32 位库在 Wayland 下的故障。这些均为项目报告。","仓库采用 GPLv3。第三方声明列出派生自 PsyCross 的平台代码（MIT）、PSn00bSDK 头文件（MPL 2.0）、SDL 及其他随附组件各自的许可，捆绑字体保留 Apache 2.0 和 OFL 条款。贡献规则要求零售光盘数据和提取的素材不得提交；原版游戏仍归其权利人所有。"],"targets":["game"],"url":"https://github.com/CameronRedmore/Crash-Team-Racing-Turbocharged","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/portingpete/The-Darkness-Recomp/blob/98f0bcd49dfee90dfee968a3b75fd40e892c91e7/START_HERE.txt","https://github.com/portingpete/The-Darkness-Recomp/blob/98f0bcd49dfee90dfee968a3b75fd40e892c91e7/config/darkness.toml","https://github.com/portingpete/The-Darkness-Recomp/blob/98f0bcd49dfee90dfee968a3b75fd40e892c91e7/config/game_revisions.toml","https://github.com/portingpete/The-Darkness-Recomp/blob/98f0bcd49dfee90dfee968a3b75fd40e892c91e7/tools/patches/README.md","https://github.com/portingpete/The-Darkness-Recomp/blob/98f0bcd49dfee90dfee968a3b75fd40e892c91e7/tools/setup_generator.py","https://github.com/portingpete/The-Darkness-Recomp/blob/98f0bcd49dfee90dfee968a3b75fd40e892c91e7/tools/build.ps1","https://github.com/portingpete/The-Darkness-Recomp/blob/98f0bcd49dfee90dfee968a3b75fd40e892c91e7/RENDERING.md","https://github.com/portingpete/The-Darkness-Recomp/blob/98f0bcd49dfee90dfee968a3b75fd40e892c91e7/STEAM_DECK.md","https://github.com/portingpete/The-Darkness-Recomp/blob/98f0bcd49dfee90dfee968a3b75fd40e892c91e7/COPYING"],"category":"reconstruction-cases","description_en":"Builds a native Windows x64 port of The Darkness by translating its Xbox 360 executable to C++ ahead of time with a patched XenonRecomp. A D3D11 renderer draws from the engine’s original geometry, shader sources and device state instead of interpreting console GPU packets. Gameplay coverage and Linux results are project-reported, and the author discloses OpenAI Codex assistance.","description_zh":"使用打过补丁的 XenonRecomp 将 Xbox 360 可执行文件提前转换为 C++，构建 The Darkness 的原生 Windows x64 移植。D3D11 渲染器直接使用引擎原有的几何数据、着色器源码和设备状态绘制，而不解释主机 GPU 命令包。游戏覆盖范围与 Linux 测试结果均为项目报告，作者披露开发中使用了 OpenAI Codex 辅助。","entry_url":"https://awesomerea.org/resources/the-darkness-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/the-darkness-recomp-case/","evidence_url":"https://github.com/portingpete/The-Darkness-Recomp/blob/98f0bcd49dfee90dfee968a3b75fd40e892c91e7/README.md","group":"cases","id":"the-darkness-recomp-case","json_url":"https://awesomerea.org/resources/the-darkness-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/the-darkness-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/the-darkness-recomp-case/index.md","name":"The Darkness Recomp: an Xbox 360 static recompilation with a native D3D11 renderer","name_zh":"The Darkness Recomp：配有原生 D3D11 渲染器的 Xbox 360 静态重编译","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","testing","license"],"requirements":["Requires the user’s extracted Xbox 360 dump: the original encrypted default.xex plus Content, System and the other dump folders. An ISO alone is not accepted, and the repository includes no game code, assets or generated translation output. The runtime decodes default.xex in memory and accepts only the approved original disc revision and Russian localization by SHA-256; title updates and other Xbox games need their own verified translation.","Playing the release needs 64-bit Windows 10/11 with a Direct3D 11 device. Source builds need Git, Visual Studio 2022 with ClangCL, CMake 3.24+, Python 3.11+, MSYS2 MinGW64 tools, standalone LLVM and about 15 GB. The build fetches hedge-dev/XenonRecomp at c5bfd90d and applies the bundled Darkness and correction patches before generating the translation.","The README reports full gameplay with mouse/controller input, XMA audio, saves, local achievements and added video and remapping menus; Xbox Live synchronization is unavailable. Under Proton in WSL2, the opening level rendered with audio, but camera movement and tutorial completion were not confirmed; Steam Deck remains unverified and there is no native Linux build.","The build runs a CTest suite of native and contract tests, and the updater re-tests builds and checks packaged files with SHA-256. These are project checks of the port.","GPLv3 per COPYING, matching UnleashedRecomp/XenonRecomp; the generator patches are GPLv3, SMAA and the CC0 Xelu prompt icons keep their own terms, and the game retains separate rights. This is static recompilation, not recovered authored source. The README states that development includes OpenAI Codex assistance."],"requirements_zh":["需使用者自备已解包的 Xbox 360 游戏转储：原始加密的 default.xex，以及 Content、System 等全部转储目录。仅有 ISO 不可用；仓库不含游戏代码、素材或生成的转换产物。运行时在内存中解码 default.xex，并只接受经 SHA-256 核准的原版光盘版本和俄语本地化版本；游戏更新补丁和其他 Xbox 游戏都需要各自经过验证的转换。","运行发布版需 64 位 Windows 10／11 及支持 Direct3D 11 的显卡。从源码构建需 Git、带 ClangCL 的 Visual Studio 2022、CMake 3.24+、Python 3.11+、MSYS2 MinGW64 工具、独立安装的 LLVM，以及约 15 GB 空间。构建会获取 c5bfd90d 版本的 hedge-dev/XenonRecomp，并在生成转换代码前应用随附的 Darkness 补丁和修正补丁。","README 报告可完整游玩，支持鼠标／手柄输入、XMA 音频、存档、本地成就，并新增视频设置与按键重映射菜单；Xbox Live 同步不可用。在 WSL2 中通过 Proton 运行时，开场关卡可带声音渲染，但镜头移动和完成教程尚未确认；Steam Deck 仍未验证，也没有原生 Linux 构建。","构建会运行由原生测试与契约测试组成的 CTest 套件，更新程序也会重新测试构建，并用 SHA-256 校验打包文件。这些是项目对移植版本的检查。","依 COPYING 采用 GPLv3，与 UnleashedRecomp／XenonRecomp 一致；生成器补丁同为 GPLv3，SMAA 和 CC0 授权的 Xelu 按键图标保留各自条款，游戏本身另有权利约束。这是静态重编译，并非恢复原作者编写的源码。README 说明开发过程使用了 OpenAI Codex 辅助。"],"targets":["game"],"url":"https://github.com/portingpete/The-Darkness-Recomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/sonicdcer/MarioKart64Recomp/blob/3f72d2385cc995fea79e8fca81d886cb2bdce1de/BUILDING.md","https://github.com/sonicdcer/MarioKart64Recomp/blob/3f72d2385cc995fea79e8fca81d886cb2bdce1de/us.toml","https://github.com/sonicdcer/MarioKart64Recomp/blob/3f72d2385cc995fea79e8fca81d886cb2bdce1de/.gitmodules","https://github.com/sonicdcer/MarioKart64Recomp/blob/3f72d2385cc995fea79e8fca81d886cb2bdce1de/patches/Makefile","https://github.com/sonicdcer/MarioKart64Recomp/blob/3f72d2385cc995fea79e8fca81d886cb2bdce1de/CMakeLists.txt","https://github.com/sonicdcer/MarioKart64Recomp/blob/3f72d2385cc995fea79e8fca81d886cb2bdce1de/.github/workflows/validate.yml","https://github.com/sonicdcer/MarioKart64Recomp/blob/3f72d2385cc995fea79e8fca81d886cb2bdce1de/COPYING","https://github.com/sonicdcer/MarioKart64Recomp/releases/tag/v0.9.2"],"category":"reconstruction-cases","description_en":"Statically recompiles the US Nintendo 64 release of Mario Kart 64 into a native Windows, Linux and macOS application with N64Recomp, rendering through RT64. The README distinguishes this from a source port: game code is translated from the user’s ROM, while headers and some functions from a decompilation fork support patches and enhancements. Enhancement, fidelity and input-lag claims are project-reported.","description_zh":"使用 N64Recomp 将北美版 Nintendo 64《马力欧卡丁车 64》静态重编译为 Windows、Linux 与 macOS 原生应用，并通过 RT64 渲染。README 将其与源码移植区分开：游戏代码由使用者提供的 ROM 转换而来，反编译分支中的头文件和部分函数用于实现补丁与增强。增强功能、还原度和输入延迟等说法均为项目自述。","entry_url":"https://awesomerea.org/resources/mariokart64-recompiled-case/","entry_url_zh":"https://awesomerea.org/zh/resources/mariokart64-recompiled-case/","evidence_url":"https://github.com/sonicdcer/MarioKart64Recomp/blob/3f72d2385cc995fea79e8fca81d886cb2bdce1de/README.md","group":"cases","id":"mariokart64-recompiled-case","json_url":"https://awesomerea.org/resources/mariokart64-recompiled-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/mariokart64-recompiled-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mariokart64-recompiled-case/index.md","name":"MarioKart 64: Recompiled — a native port through N64Recomp static recompilation","name_zh":"MarioKart 64: Recompiled：通过 N64Recomp 静态重编译实现的原生移植","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","prerequisites","testing","license"],"requirements":["Accepts only the user’s US N64 Mario Kart 64 ROM; other dump formats of that ROM are converted automatically, and the README states it is not an emulator for arbitrary ROMs. The repository and its releases contain no game assets. Source builds read the same US ROM as mk64.us.z64 plus a separate symbol-file submodule.","Running requires Direct3D 12.0 with Shader Model 6, Vulkan 1.2 or Metal Argument Buffers Tier 2; x86-64 CPUs need SSE4.1, and the README lists macOS 13.0+ on Apple Silicon or a 7th-generation Intel CPU. Known issues include Intel GPUs on Linux and the prebuilt Linux binary on some distributions.","Source builds need submodules, CMake 3.20+, C++20, and Clang/LLD with SDL2 and GTK 3 on Linux or Visual Studio 2022 with its Clang tools and make on Windows. N64Recomp and RSPRecomp are built separately and run on the provided TOML configurations to generate C code; patches compile against headers from a fork of the mk64 decompilation.","CI recompiles and builds Linux, Windows and macOS targets with a ROM held in a private repository behind CI secrets; it publishes no matching, fidelity or gameplay comparison. Release v0.9.2 (February 2026) offers Windows, Linux, Flatpak and macOS archives. Rendering-accuracy, framerate and input-lag statements are project claims.","COPYING is GPL-3.0; original game content, decompilation-derived headers and libraries such as RT64 and RmlUi retain their own terms. Static recompilation translates machine code rather than recovering authored source."],"requirements_zh":["仅接受使用者自备的美版 N64《马力欧卡丁车 64》ROM；该 ROM 的其他转储格式会被自动转换，README 说明它不是可运行任意 ROM 的模拟器。仓库及发布版均不含游戏素材。源码构建读取同一美版 ROM（命名为 mk64.us.z64）以及单独的符号文件子模块。","运行需支持 Direct3D 12.0（Shader Model 6）、Vulkan 1.2 或 Metal Argument Buffers Tier 2 的显卡；x86-64 CPU 需支持 SSE4.1，README 列出 macOS 13.0+ 搭配 Apple Silicon 或第 7 代 Intel CPU。已知问题包括 Linux 上的 Intel GPU，以及预编译 Linux 版本在部分发行版上无法正常运行。","源码构建需要子模块、CMake 3.20+、C++20，Linux 上需 Clang／LLD、SDL2 与 GTK 3，Windows 上需带 Clang 工具的 Visual Studio 2022 及 make。需另行构建 N64Recomp 和 RSPRecomp，并用项目提供的 TOML 配置运行以生成 C 代码；补丁基于 mk64 反编译分支的头文件编译。","CI 使用存放在私有仓库、经 CI 密钥访问的 ROM 执行重编译，并构建 Linux、Windows 与 macOS 目标；不发布一致性、还原度或游戏行为对比结果。v0.9.2 发布版（2026 年 2 月）提供 Windows、Linux、Flatpak 与 macOS 压缩包。渲染准确性、帧率和输入延迟等说法均为项目主张。","COPYING 为 GPL-3.0；原游戏内容、源自反编译的头文件以及 RT64、RmlUi 等库保留各自条款。静态重编译转换的是机器码，并不恢复原作者编写的源码。"],"targets":["game"],"url":"https://github.com/sonicdcer/MarioKart64Recomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/ACreTeam/ac-decomp/blob/09ca8e8b5b24e6ab44047ee980cf0088ad7ecb4c/configure.py","https://github.com/ACreTeam/ac-decomp/blob/09ca8e8b5b24e6ab44047ee980cf0088ad7ecb4c/config/GAFE01_00/build.sha1","https://github.com/ACreTeam/ac-decomp/blob/09ca8e8b5b24e6ab44047ee980cf0088ad7ecb4c/config/GAFE01_00/config.yml","https://github.com/ACreTeam/ac-decomp/blob/09ca8e8b5b24e6ab44047ee980cf0088ad7ecb4c/tools/project.py","https://github.com/ACreTeam/ac-decomp/blob/09ca8e8b5b24e6ab44047ee980cf0088ad7ecb4c/.github/workflows/build.yml","https://github.com/ACreTeam/ac-decomp/blob/09ca8e8b5b24e6ab44047ee980cf0088ad7ecb4c/LICENSE","https://decomp.dev/ACreTeam/ac-decomp","https://web.archive.org/web/20261020041854/https://decomp.dev/ACreTeam/ac-decomp/GAFE01_00/09ca8e8b5b24e6ab44047ee980cf0088ad7ecb4c.json","https://github.com/flyngmt/ACGC-PC-Port/blob/4099d246c927e75b4fd342ca13f4ac4395c55af5/README.md"],"category":"reconstruction-cases","description_en":"Reconstructs Animal Crossing’s GameCube code as C and C++ source that rebuilds the USA release’s main executable and its foresta.rel module. The dtk-template build reads the original binaries and assets from a user-supplied disc image, then checks both outputs against SHA-1 hashes. A separate native PC port builds on it; completeness figures remain project-reported here.","description_zh":"将 Animal Crossing 的 GameCube 代码重建为 C 与 C++ 源码，可重新构建美版的主可执行文件及 foresta.rel 模块。基于 dtk-template 的构建从使用者自备的光盘镜像读取原始二进制与素材，再用 SHA-1 哈希校验两个产物。另有原生 PC 移植以它为基础；此处的完成度数字仍为项目报告。","entry_url":"https://awesomerea.org/resources/animal-crossing-gamecube-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/animal-crossing-gamecube-decomp-case/","evidence_url":"https://github.com/ACreTeam/ac-decomp/blob/09ca8e8b5b24e6ab44047ee980cf0088ad7ecb4c/README.md","group":"cases","id":"animal-crossing-gamecube-decomp-case","json_url":"https://awesomerea.org/resources/animal-crossing-gamecube-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/animal-crossing-gamecube-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/animal-crossing-gamecube-decomp-case/index.md","name":"Animal Crossing: matching GameCube decompilation","name_zh":"Animal Crossing：生成一致产物的 GameCube 反编译重建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README lists one supported version, USA Rev 0 (GAFE01_00). configure.py also defines an Australia Rev 0 (GAFU01_00) target, but CI builds only the USA version and 19 objects are marked matching for USA alone. The outputs are a GameCube DOL and REL module, not a PC executable.","Requires the user’s own Animal Crossing (USA) disc image; README states the repository contains no game assets or assembly. The build configuration expects the disc’s main.dol to match a recorded SHA-1 before splitting it, so other revisions or modified images are not supported inputs.","Windows builds use native Python and ninja; macOS adds wine-crossover, and Linux uses an automatically downloaded wibo wrapper on x86 or Wine elsewhere. configure.py downloads pinned decomp-toolkit, binutils, Metrowerks CodeWarrior GameCube compiler, objdiff and sjiswrap releases; objdiff supports per-object diffing.","The default ninja target runs decomp-toolkit’s SHA-1 check of static.dol and foresta.rel against build.sha1. configure.py lists 4,005 objects as matching and none as non-matching, and CI builds with a private container that supplies the original files. The mutable decomp.dev page reports 100.00% decompiled and fully linked at this commit.","The repository is dedicated under CC0 1.0. Original game content and the downloaded toolchain binaries are outside that dedication and keep their own rights."],"requirements_zh":["README 列出唯一支持的版本为美版 Rev 0（GAFE01_00）。configure.py 另定义了澳洲版 Rev 0（GAFU01_00）目标，但 CI 只构建美版，且有 19 个目标文件仅对美版标为一致。产物是 GameCube DOL 与 REL 模块，不是 PC 可执行文件。","需使用者自备 Animal Crossing（美版）光盘镜像；README 声明仓库不含任何游戏素材或汇编。构建配置要求光盘中的 main.dol 与记录的 SHA-1 一致后才进行拆分，因此其他修订版或改动过的镜像不是受支持的输入。","Windows 构建使用原生 Python 与 ninja；macOS 另需 wine-crossover，Linux 在 x86 上自动下载 wibo 包装器，其他架构使用 Wine。configure.py 会下载固定版本的 decomp-toolkit、binutils、Metrowerks CodeWarrior GameCube 编译器、objdiff 和 sjiswrap；objdiff 用于逐个目标文件比对。","默认 ninja 目标会用 decomp-toolkit 依据 build.sha1 校验 static.dol 和 foresta.rel 的 SHA-1。configure.py 将 4,005 个目标文件标为一致，没有标为不一致的项；CI 在提供原始文件的私有容器中构建。可变的 decomp.dev 页面报告此提交已 100.00% 反编译并完全链接。","仓库以 CC0 1.0 释出。原游戏内容及下载的工具链二进制不在该释出范围内，各自保留权利。"],"targets":["game"],"url":"https://github.com/ACreTeam/ac-decomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/Yokimitsuro/khdays-decomp/blob/261a89eaa8f65dd566ae0828b0b57c85c847a6ee/CONTRIBUTING.md","https://github.com/Yokimitsuro/khdays-decomp/blob/261a89eaa8f65dd566ae0828b0b57c85c847a6ee/PROGRESS.md","https://github.com/Yokimitsuro/khdays-decomp/blob/261a89eaa8f65dd566ae0828b0b57c85c847a6ee/docs/PROGRESS_POLICY.md","https://github.com/Yokimitsuro/khdays-decomp/blob/261a89eaa8f65dd566ae0828b0b57c85c847a6ee/docs/ARM7.md","https://github.com/Yokimitsuro/khdays-decomp/blob/261a89eaa8f65dd566ae0828b0b57c85c847a6ee/.github/workflows/checks.yml","https://github.com/Yokimitsuro/khdays-decomp/blob/261a89eaa8f65dd566ae0828b0b57c85c847a6ee/.github/workflows/report.yml","https://github.com/Yokimitsuro/khdays-decomp/blob/261a89eaa8f65dd566ae0828b0b57c85c847a6ee/LICENSE","https://decomp.dev/Yokimitsuro/khdays-decomp","https://web.archive.org/web/20261020041901/https://decomp.dev/Yokimitsuro/khdays-decomp/YKGP/261a89eaa8f65dd566ae0828b0b57c85c847a6ee.json"],"category":"reconstruction-cases","description_en":"Reconstructs the ARM9 program and overlays of the EU Nintendo DS release of Kingdom Hearts 358/2 Days as C that recompiles byte for byte with CodeWarrior. README reports all 306 modules byte-identical, with about 99.5% of functions in real C and library assembly counted separately; the ARM7 binary is outside its scope. The repository holds no ROM, game assets or extracted disassembly and produces no playable build.","description_zh":"将 Nintendo DS 欧版《王国之心 358/2 Days》的 ARM9 程序及覆盖模块重建为 C 源码，以 CodeWarrior 重新编译后逐字节一致。README 报告全部 306 个模块字节一致，约 99.5% 的函数为真正的 C，库自身的汇编另行统计；ARM7 二进制不在范围内。仓库不含 ROM、游戏素材或提取的反汇编，也不生成可玩版本。","entry_url":"https://awesomerea.org/resources/kingdom-hearts-days-matching-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/kingdom-hearts-days-matching-decomp-case/","evidence_url":"https://github.com/Yokimitsuro/khdays-decomp/blob/261a89eaa8f65dd566ae0828b0b57c85c847a6ee/README.md","group":"cases","id":"kingdom-hearts-days-matching-decomp-case","json_url":"https://awesomerea.org/resources/kingdom-hearts-days-matching-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/kingdom-hearts-days-matching-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/kingdom-hearts-days-matching-decomp-case/index.md","name":"Kingdom Hearts 358/2 Days: a matching Nintendo DS decompilation","name_zh":"《王国之心 358/2 Days》：逐字节一致的 Nintendo DS 反编译重建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README reports every function of the EU (YKGP) ARM9 program and its overlays matched and all initialized data reconstructed, with 306 of 306 rebuilt modules byte-identical; the remaining work is readability, such as shared structures, naming and file grouping. It counts 23,125 of about 23,233 functions as real C and tracks 108 assembly implementations (library routines and two game functions that need clz) separately. docs/ARM7.md states that the decomp covers the ARM9 only. This is a matching decompilation, not a port, and it produces no playable build or redistributable binary.","Requires the user’s own EU ROM dump, days.nds: 268,435,456 bytes, SHA-1 6fae8f5bbe80114b4e2535260eab5f4d0fc8a844 (CONTRIBUTING.md also lists SHA-256 and MD5). Other dumps will not line up with the committed addresses. The repository tracks no ROM, extracted data (including the extracted asm/ tree), build output or proprietary toolchain, and a pull-request check rejects added ROM, binary or asset files.","CONTRIBUTING.md lists Python 3 with capstone, pyelftools and ndspy, the dsd extraction and delinking tool, the proprietary CodeWarrior mwccarm 3.0 build 139 compiler (not supplied), arm-none-eabi-as and a Ninja-driven mwccarm/mwldarm build; its commands call tools/dsd.exe alongside Bash scripts. A few precompiled-middleware units use an older mwccarm through per-file compiler overrides.","dsd check modules compares each built module with the base ROM, verify_idx.py checks single functions including relocations, and the ROM round-trip script is expected to differ from the reference dump only in four non-functional CRC bytes. CONTRIBUTING notes that functions listed as known mismatches are kept out of the link and filled with original bytes. CI does not build the game; it rejects forbidden files and regenerates progress reports. decomp.dev reports YKGP 100.00% decompiled and fully linked at the reviewed commit, counting verified SDK assembly.","Contributors’ decompilation and tooling are dedicated to the public domain under CC0 1.0; the original game and its assets remain their owners’ property, and the CodeWarrior compiler is not distributed. DS Protect sources are reconstructed after taxicat1/dsprot, and the SDK identification harness compiles NitroSDK sources from pret/pokediamond."],"requirements_zh":["README 报告欧版（YKGP）ARM9 程序及其覆盖模块的所有函数均已匹配，初始化数据全部重建，重建的 306 个模块全部字节一致；剩余工作是提升可读性，例如共享结构体、命名和按文件归类。其中约 23,233 个函数中有 23,125 个计为真正的 C，另行统计 108 个汇编实现（库例程以及两个需要 clz 指令的游戏函数）。docs/ARM7.md 说明反编译只覆盖 ARM9。这是一致性反编译而非移植，不生成可玩版本或可再分发的二进制。","需使用者自备欧版 ROM 转储 days.nds：大小 268,435,456 字节，SHA-1 为 6fae8f5bbe80114b4e2535260eab5f4d0fc8a844（CONTRIBUTING.md 另列出 SHA-256 和 MD5）。其他转储与已提交的地址对不上。仓库不跟踪 ROM、提取数据（包括提取出的 asm/ 目录）、构建产物或专有工具链，拉取请求检查也会拒绝新增的 ROM、二进制或素材文件。","CONTRIBUTING.md 列出所需工具：带 capstone、pyelftools 和 ndspy 的 Python 3，dsd 提取与反链接工具，专有的 CodeWarrior mwccarm 3.0 build 139 编译器（不随仓库提供），arm-none-eabi-as，以及由 Ninja 驱动的 mwccarm／mwldarm 构建；其命令同时调用 tools/dsd.exe 与 Bash 脚本。少数预编译中间件单元通过逐文件的编译器覆盖设置改用更早版本的 mwccarm。","dsd check modules 将每个构建出的模块与原 ROM 比对，verify_idx.py 校验单个函数（包括重定位），ROM 往返脚本的预期结果是与参考转储只差四个不影响功能的 CRC 字节。CONTRIBUTING 说明，列为已知不匹配的函数不会参与链接，其位置以原始字节填充。CI 不构建游戏，只拒绝禁止的文件并重新生成进度报告。decomp.dev 报告所审提交的 YKGP 已 100.00% 反编译并完全链接，其中计入经验证的 SDK 汇编。","贡献者的反编译和工具以 CC0 1.0 贡献到公有领域；原游戏及其素材仍归其所有者，CodeWarrior 编译器也不随仓库分发。DS Protect 源码参照 taxicat1/dsprot 重建，SDK 识别工具编译 pret/pokediamond 中的 NitroSDK 源码。"],"targets":["game"],"url":"https://github.com/Yokimitsuro/khdays-decomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/merbanan/rtl_433/blob/80f7bcc3a3dc6edf537544593bf367241a225215/docs/ANALYZE.md","https://github.com/merbanan/rtl_433/blob/80f7bcc3a3dc6edf537544593bf367241a225215/docs/BUILDING.md","https://github.com/merbanan/rtl_433/blob/80f7bcc3a3dc6edf537544593bf367241a225215/COPYING","https://github.com/merbanan/rtl_433/releases/tag/25.12"],"category":"protocol-analysis","description_en":"Receives and decodes transmissions from ISM-band devices such as weather sensors, remote controls, doorbells and alarm sensors, using RTL-SDR or SoapySDR receivers or recorded I/Q files, and emits decoded fields as JSON, CSV, MQTT and other outputs. For signals no built-in decoder recognizes, a pulse analyzer reports OOK/FSK timings and hints for a flexible -X decoder that slices frames into bits; its analysis guide leaves mapping those bits to values to the analyst, working from known readings.","description_zh":"接收并解码 ISM 频段设备（如气象传感器、遥控器、门铃和报警传感器）的无线传输，可使用 RTL-SDR 或 SoapySDR 接收机，也可读取录制的 I/Q 文件，并以 JSON、CSV、MQTT 等格式输出解码字段。对内置解码器无法识别的信号，脉冲分析器会报告 OOK/FSK 时序，并给出灵活 -X 解码器的提示，用于将帧切分为比特；按其分析指南，把这些比特对应到具体数值仍需分析者依据已知读数完成。","entry_url":"https://awesomerea.org/resources/rtl-433/","entry_url_zh":"https://awesomerea.org/zh/resources/rtl-433/","evidence_url":"https://github.com/merbanan/rtl_433/blob/80f7bcc3a3dc6edf537544593bf367241a225215/README.md","group":"tools","id":"rtl-433","json_url":"https://awesomerea.org/resources/rtl-433/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/rtl-433/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rtl-433/index.md","name":"rtl_433","name_zh":"rtl_433 ISM 频段设备无线协议解码器","record_type":"resource","relationship":"foundation","requirements":["Live reception needs an RTL2832-based RTL-SDR dongle or a SoapySDR device; the README names LimeSDR, PlutoSDR, HackRF One and SoapyRemote among actively tested devices, and rtl_tcp servers are accepted. Without a receiver, it reads recorded CU8, CS16 or CF32 I/Q and AM sample files, and -S saves captured signals as files.","Written in portable C99 and built with CMake; RTL-SDR and SoapySDR libraries are optional at build time, and OpenSSL is needed only for TLS outputs. Packages exist for Debian/Ubuntu (rtl-433), FreeBSD and Homebrew; release 25.12 (2025-12-12) ships Linux, macOS arm64 and Windows binaries, and the reviewed master commit is dated 2026-10-11.","At review the README listed 380 device protocols numbered up to 386, 44 of them disabled by default and enabled with -R or a configuration file. Built-in decoders cover those listed models only; for other signals the analyzer and flex decoders frame OOK/FSK pulses and slice them into bits, and do not infer field meanings or protocol semantics.","GPL-2.0. The optional HTTP API output listens on 0.0.0.0:8433 by default."],"requirements_zh":["实时接收需要基于 RTL2832 的 RTL-SDR 接收棒或 SoapySDR 设备；README 列出的积极测试设备包括 LimeSDR、PlutoSDR、HackRF One 和 SoapyRemote，也可连接 rtl_tcp 服务器。没有接收机时，可读取录制的 CU8、CS16 或 CF32 I/Q 及 AM 采样文件；-S 选项可把捕获到的信号保存为文件。","以可移植的 C99 编写，使用 CMake 构建；RTL-SDR 与 SoapySDR 库在构建时均为可选，只有 TLS 输出需要 OpenSSL。Debian/Ubuntu（rtl-433）、FreeBSD 和 Homebrew 提供软件包；25.12 版（2025-12-12）提供 Linux、macOS arm64 和 Windows 二进制文件，所审阅的 master 提交日期为 2026-10-11。","审阅时 README 列出 380 个设备协议，编号至 386，其中 44 个默认禁用，需通过 -R 或配置文件启用。内置解码器只覆盖所列型号；对其他信号，分析器和灵活解码器只对 OOK/FSK 脉冲分帧并切分为比特，不会推断字段含义或协议语义。","采用 GPL-2.0。可选的 HTTP API 输出默认监听 0.0.0.0:8433。"],"targets":["protocol"],"url":"https://github.com/merbanan/rtl_433","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/decompme/decomp.me/blob/f5850753ef561a3d79e6eb7e96ff08e78154b91d/LICENSE","https://github.com/decompme/decomp.me/blob/f5850753ef561a3d79e6eb7e96ff08e78154b91d/cromper/cromper/platforms.py#L80-L301","https://github.com/decompme/decomp.me/blob/f5850753ef561a3d79e6eb7e96ff08e78154b91d/cromper/cromper/wrappers/compiler_wrapper.py","https://github.com/decompme/decomp.me/blob/f5850753ef561a3d79e6eb7e96ff08e78154b91d/cromper/cromper/wrappers/diff_wrapper.py","https://github.com/decompme/decomp.me/blob/f5850753ef561a3d79e6eb7e96ff08e78154b91d/cromper/cromper/wrappers/m2c_wrapper.py#L14-L31","https://github.com/decompme/decomp.me/blob/f5850753ef561a3d79e6eb7e96ff08e78154b91d/cromper/cromper/wrappers/decompiler_wrapper.py","https://github.com/decompme/decomp.me/blob/f5850753ef561a3d79e6eb7e96ff08e78154b91d/cromper/pyproject.toml","https://github.com/decompme/decomp.me/blob/f5850753ef561a3d79e6eb7e96ff08e78154b91d/docs/DOCKER.md","https://github.com/decompme/decomp.me/blob/f5850753ef561a3d79e6eb7e96ff08e78154b91d/docs/SANDBOX.md","https://github.com/decompme/decomp.me/blob/f5850753ef561a3d79e6eb7e96ff08e78154b91d/docs/COMPILER.md"],"category":"game-analysis","description_en":"Collaborative decompilation website for matching work: its compile service builds candidate source with a selected platform compiler, assembles the target assembly and diffs the two objects with asm-differ. m2c drafts initial decompilations for its MIPS, PowerPC, ARM and SuperH platforms. The 18 platform definitions span N64, PlayStation, PS2, PSP, GameCube/Wii, Wii U, DS, GBA, 3DS, Switch, Saturn, Dreamcast and Xbox 360 plus IRIX, Mac OS X, MS-DOS, Win32 and Android x86.","description_zh":"面向匹配反编译的协作网站：其编译服务用选定平台的编译器编译候选源码，汇编目标汇编代码，并用 asm-differ 对比两个目标文件。对其 MIPS、PowerPC、ARM 和 SuperH 平台，m2c 可生成初步反编译代码。18 个平台定义涵盖 N64、PlayStation、PS2、PSP、GameCube/Wii、Wii U、DS、GBA、3DS、Switch、Saturn、Dreamcast 和 Xbox 360，以及 IRIX、Mac OS X、MS-DOS、Win32 和 Android x86。","entry_url":"https://awesomerea.org/resources/decomp-me/","entry_url_zh":"https://awesomerea.org/zh/resources/decomp-me/","evidence_url":"https://github.com/decompme/decomp.me/blob/f5850753ef561a3d79e6eb7e96ff08e78154b91d/README.md","group":"tools","id":"decomp-me","json_url":"https://awesomerea.org/resources/decomp-me/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/decomp-me/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/decomp-me/index.md","name":"decomp.me","name_zh":"decomp.me 协作匹配反编译平台","record_type":"resource","relationship":"foundation","requirements":["Use the hosted site or self-host the Next.js/Django stack with Docker and Docker Compose; the self-hosting guide asks for at least 4 GB RAM, ideally 6 GB+. Its Docker configuration disables Switch support by default because of the Clang compilers' size, and ENABLE_<PLATFORM>_SUPPORT variables enable platforms.","Each platform definition names its assembler, objdump and nm commands; compilers are added as packages in the separate decompme/compilers repository. Compiler, assembler and objdump subprocesses can run in an nsjail sandbox, enabled by default in the cromper container; outside it, nsjail must be built locally with unprivileged user namespaces enabled.","MIT license; the README notes that dependencies keep their own licenses. No tagged releases, so this entry pins the reviewed main-branch commit. Diffs show instruction-level differences for the compiled code and m2c output is a draft; neither recovers names, types or semantics."],"requirements_zh":["可使用托管网站，或用 Docker 与 Docker Compose 自行部署 Next.js/Django 服务；自部署指南要求至少 4 GB 内存，最好 6 GB 以上。由于 Clang 编译器体积较大，其 Docker 配置默认禁用 Switch 支持，可通过 ENABLE_<PLATFORM>_SUPPORT 变量启用各平台。","每个平台定义都指定了汇编器、objdump 和 nm 命令；编译器以软件包形式加入独立的 decompme/compilers 仓库。编译器、汇编器和 objdump 子进程可在 nsjail 沙箱中运行，cromper 容器内默认启用；在容器外使用需自行构建 nsjail 并开启非特权用户命名空间。","采用 MIT 许可；README 说明各依赖保留各自的许可证。仓库没有打标签的版本，因此本条目固定到所审阅的 main 分支提交。差异视图只显示编译结果的指令级差异，m2c 输出只是初稿，两者都不会恢复名称、类型或语义。"],"targets":["binary","game"],"url":"https://decomp.me","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/LANCommander/TonyWasAProSkater/blob/23968e91391ccdeb35f45e1fe987a8a40085aa5f/platform/pc/README.md","https://github.com/LANCommander/TonyWasAProSkater/blob/23968e91391ccdeb35f45e1fe987a8a40085aa5f/decomp/README.md","https://github.com/LANCommander/TonyWasAProSkater/blob/23968e91391ccdeb35f45e1fe987a8a40085aa5f/decomp/PROGRESS.md","https://github.com/LANCommander/TonyWasAProSkater/blob/23968e91391ccdeb35f45e1fe987a8a40085aa5f/decomp/matched.tsv","https://github.com/LANCommander/TonyWasAProSkater/blob/23968e91391ccdeb35f45e1fe987a8a40085aa5f/decomp/tools/check_all.mjs","https://github.com/LANCommander/TonyWasAProSkater/blob/23968e91391ccdeb35f45e1fe987a8a40085aa5f/docs/coverage-report.md","https://github.com/LANCommander/TonyWasAProSkater/blob/23968e91391ccdeb35f45e1fe987a8a40085aa5f/platform/pc/dist/THIRD-PARTY-NOTICES.txt"],"category":"reconstruction-cases","description_en":"Ports Tony Hawk’s Pro Skater (PlayStation, USA) to native Windows and Linux builds from a fork of an in-progress matching decompilation of the retail executable. The decompilation recompiles reconstructed functions with a Psy-Q toolchain and compares them byte for byte with the user’s retail executable, while the port replaces PlayStation hardware and libraries with SDL2 and OpenGL services. Play needs the user’s own disc image; matching and gameplay results remain project-reported.","description_zh":"从一个仍在进行中的零售版可执行文件一致性反编译项目派生分支，将 Tony Hawk’s Pro Skater（PlayStation 美版）移植为原生 Windows 与 Linux 程序。反编译部分用 Psy-Q 工具链重新编译已重建的函数，并与使用者自备的零售可执行文件逐字节比对；移植部分则以 SDL2 和 OpenGL 服务取代 PlayStation 硬件和库。运行需使用者自备光盘镜像；一致性与可玩性结果仍为项目报告。","entry_url":"https://awesomerea.org/resources/thps1-decomp-native-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/thps1-decomp-native-port-case/","evidence_url":"https://github.com/LANCommander/TonyWasAProSkater/blob/23968e91391ccdeb35f45e1fe987a8a40085aa5f/README.md","group":"cases","id":"thps1-decomp-native-port-case","json_url":"https://awesomerea.org/resources/thps1-decomp-native-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/thps1-decomp-native-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/thps1-decomp-native-port-case/index.md","name":"TonyWasAProSkater: a THPS1 native port forked from a matching decompilation","name_zh":"TonyWasAProSkater：派生自一致性反编译的 THPS1 原生移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed main branch, a fork of LANCommander/THPS, targets only the retail PS1 USA executable SLUS_008.60, not later games in the series. decomp/PROGRESS.md, generated 2026-10-13, reports 88.0% of game-code bytes (928 of 1,178 functions) byte-exact, with the Psy-Q libraries out of scope. The port compiles a separate fork of that code in game/; decomp/ stays the byte-matching reference and is not built into the port, so the playable executable is not itself a matching build.","Play requires a raw MODE2/2352 BIN image of the user’s own Tony Hawk’s Pro Skater (USA) PlayStation disc; the Dreamcast disc image (.gdi and its tracks) can supply the assets instead. The first start copies about 630 MB into a Data folder. Building also needs the retail SLUS_008.60 executable from the user’s disc for the function layout. README states that no game assets or original executable are committed, while decompiled code and initialised data are included.","Builds run on Windows with MSYS2’s 32-bit MinGW toolchain and SDL2 (64-bit builds use ucrt64) or on x86 Linux with multilib GCC and 32-bit SDL2, plus Python 3 and Ghidra’s GNU demangler; a Psy-Q library name table is generated from ghidra_psx_ldr signatures. Running needs 64-bit Windows 10/11 or x86 Linux with 32-bit SDL2 and OpenGL libraries, and an OpenGL 3.3 GPU. Re-verifying matched functions additionally needs Node and the Psy-Q 4.5 compiler, which is not distributed.","decomp/tools/check_all.mjs recompiles every function in matched.tsv and compares it with the retail bytes; C that replaces hand-written assembly and Sony libraries is checked by replaying recorded game states against the original MIPS code. Port changes are checked with deterministic runs whose frames and saves are compared with an earlier build. README reports all nine career levels playable and an approximate rather than exact PS1 reverb.","README and the port README describe the project’s own code as MIT under a repository LICENSE, but the reviewed tree has no LICENSE file and GitHub detects none. The port README states that decompiled game code, data and all assets remain © Activision/Neversoft; linked libraries such as SDL 2, PL_MPEG and glad keep their own terms. The tree includes CLAUDE.md project notes and a GhidraMCP configuration."],"requirements_zh":["所审阅的 main 分支派生自 LANCommander/THPS，仅针对 PS1 美版零售可执行文件 SLUS_008.60，不涵盖系列后续作品。2026-10-13 生成的 decomp/PROGRESS.md 报告游戏代码字节中 88.0%（1,178 个函数中的 928 个）逐字节一致，Psy-Q 库不在范围内。移植在 game/ 中编译该代码的独立分支；decomp/ 作为逐字节一致的参照保留，不参与移植构建，因此可运行的程序本身并非一致性构建产物。","运行需使用者自备 Tony Hawk’s Pro Skater（美版）PlayStation 光盘的原始 MODE2/2352 BIN 镜像；也可改用 Dreamcast 光盘镜像（.gdi 及其轨道）提供素材。首次启动会把约 630 MB 内容复制到 Data 文件夹。构建还需使用者光盘中的零售版 SLUS_008.60 可执行文件，以获取函数布局。README 说明仓库未提交任何游戏素材或原始可执行文件，但包含反编译代码和已初始化数据。","构建可在 Windows 上使用 MSYS2 的 32 位 MinGW 工具链和 SDL2（64 位构建使用 ucrt64），或在 x86 Linux 上使用 multilib GCC 与 32 位 SDL2，另需 Python 3 和 Ghidra 的 GNU 反修饰器；Psy-Q 库名称表依据 ghidra_psx_ldr 的签名生成。运行需 64 位 Windows 10／11，或具备 32 位 SDL2 与 OpenGL 库的 x86 Linux，以及支持 OpenGL 3.3 的 GPU。重新校验已匹配函数还需 Node 和未随项目分发的 Psy-Q 4.5 编译器。","decomp/tools/check_all.mjs 会重新编译 matched.tsv 中的每个函数，并与零售版字节比对；取代手写汇编和 Sony 库的 C 代码，则通过重放录制的游戏状态与原 MIPS 代码对照检查。移植层的改动通过确定性运行检查，将画面帧和存档与早期构建比较。README 报告九个经典生涯关卡均可游玩，PS1 混响仅为近似实现。","README 和移植层 README 称项目自身代码采用仓库 LICENSE 中的 MIT 许可，但所审阅的源码树中没有 LICENSE 文件，GitHub 也未检测到许可。移植层 README 说明反编译的游戏代码、数据及全部素材仍归 Activision／Neversoft 所有；SDL 2、PL_MPEG、glad 等链接库保留各自条款。源码树含 CLAUDE.md 项目笔记和 GhidraMCP 配置。"],"targets":["game"],"url":"https://github.com/LANCommander/TonyWasAProSkater","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/LoreanXavier/pt-pc/blob/d0a9b8f8969588a9ab2b1db03a35854d3af63f2e/LICENSE","https://github.com/LoreanXavier/pt-pc/blob/d0a9b8f8969588a9ab2b1db03a35854d3af63f2e/docs/formats/README.md","https://github.com/LoreanXavier/pt-pc/blob/d0a9b8f8969588a9ab2b1db03a35854d3af63f2e/docs/installer.md","https://github.com/LoreanXavier/pt-pc/blob/d0a9b8f8969588a9ab2b1db03a35854d3af63f2e/assets/fonts/README.md","https://github.com/LoreanXavier/pt-pc/blob/d0a9b8f8969588a9ab2b1db03a35854d3af63f2e/.github/workflows/macos.yml"],"category":"reconstruction-cases","description_en":"Reimplements P.T.’s game logic in C++ on a new Vulkan engine that reads levels, models, textures, sounds, scripts and cutscenes from the user’s own PS4 copy at run time. The author documents reverse-engineered file formats and used the shadPS4 emulator as a behavior and frame reference. Fidelity to the original is author-reported, and the use of AI coding tools is disclosed.","description_zh":"在新的 Vulkan 引擎上用 C++ 重新实现 P.T. 的游戏逻辑，运行时从使用者自有的 PS4 版本读取关卡、模型、贴图、声音、脚本和过场动画。作者记录了逆向得出的文件格式，并以 shadPS4 模拟器作为行为与画面的对照参考。与原作的一致程度为作者报告，项目也披露使用了 AI 编程工具。","entry_url":"https://awesomerea.org/resources/pt-pc-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/pt-pc-port-case/","evidence_url":"https://github.com/LoreanXavier/pt-pc/blob/d0a9b8f8969588a9ab2b1db03a35854d3af63f2e/README.md","group":"cases","id":"pt-pc-port-case","json_url":"https://awesomerea.org/resources/pt-pc-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/pt-pc-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pt-pc-port-case/index.md","name":"P.T. for PC: a behavior-based engine reimplementation that reads the PS4 data","name_zh":"P.T. PC 版：基于行为重新实现、读取 PS4 数据的引擎","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","scope","testing","license"],"requirements":["Requires the user’s own copy of P.T.: the port is built and tested with the US release CUSA01127, as a console dump folder or a fake PKG made from it; the EU and Japanese releases install with a note but the author has not seen their data. Store PKGs are encrypted for their console and are not decrypted. The installer copies only chunk1.psarc, texture.qar and pathid_list_ps4.bin, and no game data is in the repository or installer.","Runs on Windows 10/11 x64, Linux x86-64 with glibc 2.38+, or macOS 14+, with a Vulkan 1.3 GPU (MoltenVK on macOS). Building needs CMake and Ninja, plus Visual Studio 2022 Build Tools, clang-cl and the Vulkan SDK on Windows, or GCC 13/clang 17 with glslc on Linux; CMake fetches SDL3, Lua 5.1, whisper.cpp and other dependencies and checks downloaded models and SDKs by SHA-256. One section needs a microphone or a configured substitute key.","This is an engine reimplementation, not an emulator, decompilation or static recompilation: the README says the logic was rebuilt from the original’s behavior. It reports the whole teaser as playable, including the voice section, and adds optional upscalers, ray-traced effects, photo mode, a museum, mods, extra languages and experimental VR and third-person views. VR has run only against a simulated runtime, the Intel Mac build has not been run, and the tree contains unreleased 1.0.2 changes.","Verification is author-run: CMake unit-test targets, a windowless walkthrough script that plays scripted routes and checks the log, and frame comparisons against shadPS4.","MIT covers the port’s own code; the bundled Noto fonts (OFL), the LGPL LibOrbisPkg installer helper and other dependencies keep their own licenses, and P.T. content belongs to Konami. The README discloses AI coding tools in development and debugging."],"requirements_zh":["需使用者自有的 P.T.：移植版以美版 CUSA01127 构建和测试，可使用主机转储目录或由该转储制作的 fake PKG；欧版和日版可以安装但会给出提示，作者未见过其数据。商店 PKG 针对所属主机加密，项目不会将其解密。安装程序只复制 chunk1.psarc、texture.qar 和 pathid_list_ps4.bin，仓库与安装程序中都不含游戏数据。","可在 Windows 10／11 x64、glibc 2.38+ 的 Linux x86-64 或 macOS 14+ 上运行，需支持 Vulkan 1.3 的显卡（macOS 上通过 MoltenVK）。构建需 CMake 和 Ninja；Windows 另需 Visual Studio 2022 Build Tools、clang-cl 和 Vulkan SDK，Linux 需 GCC 13／clang 17 及 glslc。CMake 会获取 SDL3、Lua 5.1、whisper.cpp 等依赖，并用 SHA-256 校验下载的模型和 SDK。有一段流程需要麦克风，或改用配置的替代按键。","这是引擎重新实现，而非模拟器、反编译或静态重编译：README 称游戏逻辑依据原作行为重建。README 报告整部试玩可完整游玩（含语音环节），并新增可选的超分辨率、光线追踪效果、拍照模式、博物馆、模组、额外语言，以及实验性的 VR 和第三人称视角。VR 仅在模拟运行时上运行过，Intel Mac 版尚未实际运行，代码树还包含尚未发布的 1.0.2 改动。","验证由作者执行：包括 CMake 单元测试目标、一个无窗口按脚本路线游玩并检查日志的通关脚本，以及与 shadPS4 的画面对比。","MIT 许可仅覆盖移植版自身代码；随附的 Noto 字体（OFL）、LGPL 授权的 LibOrbisPkg 安装辅助程序及其他依赖保留各自许可，P.T. 的内容属于 Konami。README 披露开发和调试中使用了 AI 编程工具。"],"targets":["game"],"url":"https://github.com/LoreanXavier/pt-pc","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/HarbourMasters/SpaghettiKart/blob/5073d2e3636cdb2794f4c845ee3bdec5ac4718c4/docs/BUILDING.md","https://github.com/HarbourMasters/SpaghettiKart/blob/5073d2e3636cdb2794f4c845ee3bdec5ac4718c4/docs/faq.md","https://github.com/HarbourMasters/SpaghettiKart/blob/5073d2e3636cdb2794f4c845ee3bdec5ac4718c4/CMakeLists.txt","https://github.com/HarbourMasters/SpaghettiKart/blob/5073d2e3636cdb2794f4c845ee3bdec5ac4718c4/.gitmodules","https://github.com/HarbourMasters/SpaghettiKart/blob/5073d2e3636cdb2794f4c845ee3bdec5ac4718c4/.github/workflows/main.yml","https://github.com/HarbourMasters/SpaghettiKart/blob/5073d2e3636cdb2794f4c845ee3bdec5ac4718c4/.github/workflows/linux-compile.yml","https://github.com/Kenix3/libultraship/blob/60c9bb713ed0850da66559fc17c556d03da649cd/README.md","https://github.com/HarbourMasters/Torch/blob/2d474ddb8da8b213fbdbb49d0273ce31fa955f35/README.md","https://github.com/HarbourMasters/SpaghettiKart/releases/tag/1.0.0"],"category":"reconstruction-cases","description_en":"Builds a native Mario Kart 64 port for Windows, Linux, macOS and Switch from source that keeps the Mario Kart 64 decompilation’s file layout, running on libultraship’s reimplemented N64 SDK. Its bundled Torch extractor converts the user’s US ROM into an asset archive, and the port adds mods, custom tracks and an editor. The README does not name its upstream decompilation, and no matching or fidelity checks are published.","description_zh":"基于沿用《马力欧卡丁车 64》反编译项目文件结构的源码，构建适用于 Windows、Linux、macOS 和 Switch 的原生移植，运行在 libultraship 重新实现的 N64 SDK 之上。随附的 Torch 提取器将使用者自备的美版 ROM 转换为素材归档，移植还增加了模组、自定义赛道和编辑器。README 未写明其上游反编译项目，也未发布一致性或还原度检查。","entry_url":"https://awesomerea.org/resources/spaghettikart-mk64-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/spaghettikart-mk64-port-case/","evidence_url":"https://github.com/HarbourMasters/SpaghettiKart/blob/5073d2e3636cdb2794f4c845ee3bdec5ac4718c4/README.md","group":"cases","id":"spaghettikart-mk64-port-case","json_url":"https://awesomerea.org/resources/spaghettikart-mk64-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/spaghettikart-mk64-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/spaghettikart-mk64-port-case/index.md","name":"SpaghettiKart: a native Mario Kart 64 port built on decompiled source","name_zh":"SpaghettiKart：基于反编译源码的《马力欧卡丁车 64》原生移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The README does not name its upstream, but the tree keeps the Mario Kart 64 decompilation’s src/, course, extraction and progress-tooling layout, while new engine and port directories add C++ systems, mod loading, custom tracks and the unfinished HM64 Labs editor. Release 1.0.0 “Bolognese Alfa” (February 2026) is the latest stable release; nightly CI builds are for playtesting only.","Supports only the US ROM with SHA-1 579C48E211AE952530FFC8738709F078D5DD215E in .z64 byte order. The bundled extractor converts that user-supplied ROM into mk64.o2r; the README states that SpaghettiKart includes no copyrighted assets, and the Switch build reuses an archive generated by a PC release.","Source builds need submodules (libultraship, Torch, fast64 and others), CMake 3.16+ and Python 3. Windows uses Visual Studio 2022 with the v143 toolset and at least 8 GB of RAM; Linux needs GCC or Clang with SDL2, libzip, tinyxml2, spdlog, Boost and Ogg/Vorbis packages. Rendering backends are DirectX 11 on Windows, OpenGL on all platforms and Metal on macOS.","CI compiles Windows, Linux and macOS packages and packs the project’s own spaghetti.o2r; no ROM-based test, matching check or gameplay comparison is published. The FAQ records limits such as eight racers and eight selectable characters, limited HD texture support and no online play.","The reviewed tree has no top-level license file, so reuse terms for the project’s code are unstated; libultraship and Torch declare MIT, and Nintendo content retains separate rights."],"requirements_zh":["README 未写明上游项目，但源码树沿用了《马力欧卡丁车 64》反编译项目的 src/、赛道数据、提取脚本及进度工具结构；新增的 engine 和 port 目录加入了 C++ 系统、模组加载、自定义赛道以及尚未完成的 HM64 Labs 编辑器。1.0.0 “Bolognese Alfa”（2026 年 2 月）是最新稳定版；CI 夜间构建仅供试玩测试。","仅支持 SHA-1 为 579C48E211AE952530FFC8738709F078D5DD215E、采用 .z64 字节序的美版 ROM。随附的提取器将使用者自备的 ROM 转换为 mk64.o2r；README 声明 SpaghettiKart 不包含任何受版权保护的素材，Switch 版沿用 PC 发布版生成的归档。","源码构建需要子模块（libultraship、Torch、fast64 等）、CMake 3.16+ 和 Python 3。Windows 需使用带 v143 工具集的 Visual Studio 2022，并至少有 8 GB 内存；Linux 需 GCC 或 Clang，以及 SDL2、libzip、tinyxml2、spdlog、Boost 和 Ogg／Vorbis 等软件包。渲染后端包括 Windows 上的 DirectX 11、各平台通用的 OpenGL 以及 macOS 上的 Metal。","CI 编译 Windows、Linux 与 macOS 软件包，并打包项目自有的 spaghetti.o2r；未发布基于 ROM 的测试、一致性检查或游戏行为对比。FAQ 列出了若干限制，例如最多八名赛车手和八个可选角色、高清纹理支持有限且没有联机功能。","所审源码树没有顶层许可证文件，因此项目代码的再利用条款未予说明；libultraship 和 Torch 声明 MIT，任天堂内容另有权利约束。"],"targets":["game"],"url":"https://github.com/HarbourMasters/SpaghettiKart","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-18","additional_evidence_urls":["https://github.com/banatic/acww-decomp/blob/c7e3256743367fe04ed1a47f9a0f57e2ab57a24f/docs/verification.md","https://github.com/banatic/acww-decomp/blob/c7e3256743367fe04ed1a47f9a0f57e2ab57a24f/docs/runtime.md","https://github.com/banatic/acww-decomp/blob/c7e3256743367fe04ed1a47f9a0f57e2ab57a24f/INSTALL.md","https://github.com/banatic/acww-decomp/blob/c7e3256743367fe04ed1a47f9a0f57e2ab57a24f/libs/README.md","https://github.com/banatic/acww-decomp/blob/c7e3256743367fe04ed1a47f9a0f57e2ab57a24f/docs/ci.md","https://github.com/banatic/acww-decomp/blob/c7e3256743367fe04ed1a47f9a0f57e2ab57a24f/.github/workflows/build.yml","https://github.com/banatic/acww-decomp/blob/c7e3256743367fe04ed1a47f9a0f57e2ab57a24f/LICENSE","https://github.com/banatic/acww-decomp/actions/runs/39115041988"],"category":"reconstruction-cases","description_en":"Reconstructs the ARM9 game code of Animal Crossing: Wild World’s Korean DS release as one C or C++ source per function, checked against the user’s ROM with the original Metrowerks compiler and linker. Each function also has a readable Clean rewrite, and an included DS interpreter compares the ROM code, natively compiled sources and rewrites on recorded play. Data sections, the ARM7 binary, the linked SDK libraries and regrouping into original source files remain outside the reconstruction.","description_zh":"将 Animal Crossing: Wild World 韩版 DS 游戏的 ARM9 游戏代码重建为每个函数一个 C 或 C++ 源文件，并用原版 Metrowerks 编译器和链接器对照使用者自己的 ROM 校验。每个函数另有可读的 Clean 改写版本，仓库自带的 DS 解释器在录制的游玩过程中比较 ROM 代码、原生编译的源码和改写版本。数据段、ARM7 程序、链接的 SDK 库及按原始源文件重新归组仍不在重建范围内。","entry_url":"https://awesomerea.org/resources/animal-crossing-wild-world-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/animal-crossing-wild-world-decomp-case/","evidence_url":"https://github.com/banatic/acww-decomp/blob/c7e3256743367fe04ed1a47f9a0f57e2ab57a24f/README.md","group":"cases","id":"animal-crossing-wild-world-decomp-case","json_url":"https://awesomerea.org/resources/animal-crossing-wild-world-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/animal-crossing-wild-world-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/animal-crossing-wild-world-decomp-case/index.md","name":"Animal Crossing: Wild World: matching Korean DS decompilation with differential runtime checks","name_zh":"Animal Crossing: Wild World：附差分运行检查的韩版 DS 一致性反编译重建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["Covers only the Korean release (ADMK) ARM9 code. The verification page, dated 2026-10-18, reports all 25,247 game functions passing byte and relocation checks, 24,767 linked with mwldarm into modules that match the ROM, and 17 marked FAKEMATCH. Data sections mostly still come from the ROM through ds-decomp objects; the ARM7 binary, .bss pointers and source-file regrouping are not covered, and most names are placeholders.","Requires the user’s own Korean ROM matching SHA-1 1fffd601d3439e37cd934e72d08e487a93fc449b and the Metrowerks CodeWarrior for DS compiler (mwccarm); neither is distributed. NitroSDK, NitroSystem, NitroDWC with the GameSpy SDK, NitroWiFi and the Metrowerks runtime (4,083 functions) are excluded, and the tools count them as not decompiled when absent.","Python 3.11+ drives extraction, verification and linking, and ds-decomp’s dsd v0.12.1 performs the whole-program link and module comparison. Linux and macOS run the Windows compiler through wibo. The PC runtime builds as a 32-bit program with clang on Windows or gcc on Linux.","CI runs in a private container that holds the ROM and compiler. runtime.md reports Reference, Native and Clean runs agreeing on a 1,300-frame title recording, a 13,760-frame new-game recording and eight scenes from a save that is not in the repository, while three scenes still differ. The GitHub Actions build for the reviewed commit passed verification, linking and the Native checks but failed its Clean-function differential check.","The repository is dedicated under CC0 1.0 and states that it is not affiliated with Nintendo. The ROM, compiler, SDK libraries and test save keep their own rights."],"requirements_zh":["仅覆盖韩版（ADMK）的 ARM9 代码。注明 2026-10-18 的验证页面报告，全部 25,247 个游戏函数通过字节与重定位检查，24,767 个已用 mwldarm 链接成与 ROM 一致的模块，17 个标为 FAKEMATCH。数据段大多仍经 ds-decomp 生成的目标文件取自 ROM；ARM7 程序、.bss 指针及按源文件重新归组尚未覆盖，多数名称仍是占位符。","需使用者自备哈希为 SHA-1 1fffd601d3439e37cd934e72d08e487a93fc449b 的韩版 ROM，以及 Metrowerks CodeWarrior for DS 编译器（mwccarm），两者均不随项目分发。NitroSDK、NitroSystem、含 GameSpy SDK 的 NitroDWC、NitroWiFi 及 Metrowerks 运行库（共 4,083 个函数）不在仓库中，缺失时工具会将其计为未反编译。","提取、校验与链接由 Python 3.11+ 驱动，整程序链接和模块比对由 ds-decomp 的 dsd v0.12.1 完成。Linux 和 macOS 通过 wibo 运行该 Windows 编译器。PC 运行时以 32 位程序构建，Windows 上用 clang，Linux 上用 gcc。","CI 在存放 ROM 和编译器的私有容器中运行。runtime.md 报告 Reference、Native 与 Clean 三种运行在 1,300 帧标题画面录制、13,760 帧新游戏录制及八个基于存档（存档不在仓库中）的场景中一致，另有三个场景仍有差异。所审提交的 GitHub Actions 构建通过了校验、链接与 Native 检查，但未通过 Clean 函数差分检查。","仓库以 CC0 1.0 释出，并声明与 Nintendo 无关。ROM、编译器、SDK 库和测试存档各自保留权利。"],"targets":["game"],"url":"https://github.com/banatic/acww-decomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/TekRantGaming/king-kong-recompiled/blob/c852d9f467201e9a02c1aaf099b65522535b3473/.recomp.json","https://github.com/TekRantGaming/king-kong-recompiled/blob/c852d9f467201e9a02c1aaf099b65522535b3473/setup.ps1","https://github.com/TekRantGaming/king-kong-recompiled/blob/c852d9f467201e9a02c1aaf099b65522535b3473/.gitignore","https://github.com/TekRantGaming/king-kong-recompiled/blob/c852d9f467201e9a02c1aaf099b65522535b3473/CHANGELOG.md","https://github.com/TekRantGaming/king-kong-recompiled/blob/c852d9f467201e9a02c1aaf099b65522535b3473/kk/king_kong_manifest.toml","https://github.com/TekRantGaming/king-kong-recompiled/blob/c852d9f467201e9a02c1aaf099b65522535b3473/kk/src/io_fix.cpp","https://github.com/TekRantGaming/king-kong-recompiled/blob/c852d9f467201e9a02c1aaf099b65522535b3473/kk/THIRD-PARTY-NOTICES.txt","https://github.com/TekRantGaming/king-kong-recompiled/releases/tag/v1.9.11"],"category":"reconstruction-cases","description_en":"Translates the Xbox 360 release of Peter Jackson's King Kong into native Windows code with the ReXGlue static-recompilation SDK, adding a launcher and display, control and graphics options. Project code completes streamed disc reads the way the console does, which README credits with getting past an opening freeze seen under Xenia. The author discloses that the port was made almost entirely with Claude Code, directed and tested by the repository owner.","description_zh":"借助 ReXGlue 静态重编译 SDK，将 Xbox 360 版 Peter Jackson's King Kong 转译为原生 Windows 代码，并加入启动器以及显示、操控和图形选项。项目代码按主机的方式完成流式光盘读取；README 称这使游戏越过了在 Xenia 中出现的开场卡死。作者披露，该移植几乎完全由 Claude Code 完成，仓库所有者负责指导和测试。","entry_url":"https://awesomerea.org/resources/king-kong-recompiled-case/","entry_url_zh":"https://awesomerea.org/zh/resources/king-kong-recompiled-case/","evidence_url":"https://github.com/TekRantGaming/king-kong-recompiled/blob/c852d9f467201e9a02c1aaf099b65522535b3473/README.md","group":"cases","id":"king-kong-recompiled-case","json_url":"https://awesomerea.org/resources/king-kong-recompiled-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/king-kong-recompiled-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/king-kong-recompiled-case/index.md","name":"King Kong Recompiled: an AI-developed Xbox 360 static recompilation","name_zh":"King Kong Recompiled：由 AI 开发的 Xbox 360 静态重编译","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README and .recomp.json describe a static recompilation of the USA/Europe Xbox 360 disc (title ID 555307D3, version 0.0.0.1) with ReXGlue, which credits Xenia and XenonRecomp. Release v1.9.11 ships only a Windows x64 package; Linux and Steam Deck run it through Proton experimentally, while a native Linux build and a native Vulkan/DirectX 12 renderer are described as in progress. README says a full play-through has not been confirmed.","Requires a full disc image made from the player's own copy of that release; README gives its expected size and SHA-1, and the launcher checks the title ID before copying about 6.3 GB of game files next to the program. No game files are included, and the recompiled C++ derived from the game's code is regenerated locally and excluded from the repository.","Playing needs 64-bit Windows 10 or 11, a DirectX 12 graphics card and about 7 GB of space. Source builds need Visual Studio 2022 Build Tools with Clang, CMake and Ninja; setup.ps1 downloads ReXGlue SDK 0.10.0 and generates the recompiled sources from the player's disc image before kk/build.bat compiles them.","Reported checks are the owner's testing and developer autoplay builds that also collect shader packs; the reviewed tree has no CI workflow. Known issues include wrong character animations above 30 fps and periodic pauses in pre-rendered videos. The launcher's anonymous online-player check-in is on by default.","No license file is present, so reuse terms for the port's code are unstated; the bundled upscaler notices are MIT, and ReXGlue and other dependencies keep their own terms. Game code, assets and trademarks remain their owners', and the project disclaims affiliation with Ubisoft, Universal, Microsoft and others. The AI disclosure names Claude Code."],"requirements_zh":["README 和 .recomp.json 将其描述为使用 ReXGlue 对美版／欧版 Xbox 360 光盘（标题 ID 555307D3，版本 0.0.0.1）进行的静态重编译；ReXGlue 致谢 Xenia 和 XenonRecomp。v1.9.11 版只提供 Windows x64 安装包；Linux 和 Steam Deck 通过 Proton 以实验方式运行，原生 Linux 版本和原生 Vulkan／DirectX 12 渲染器据称仍在开发。README 称尚未确认能完整通关。","需使用玩家自有的该版本光盘制作完整光盘镜像；README 给出预期大小和 SHA-1，启动器会先检查标题 ID，再将约 6.3 GB 游戏文件复制到程序旁。项目不含任何游戏文件，由游戏代码生成的重编译 C++ 在本地重新生成，并排除在仓库之外。","运行需 64 位 Windows 10 或 11、支持 DirectX 12 的显卡及约 7 GB 空间。从源码构建需 Visual Studio 2022 Build Tools（含 Clang）、CMake 和 Ninja；setup.ps1 会下载 ReXGlue SDK 0.10.0，并从玩家的光盘镜像生成重编译源码，再由 kk/build.bat 编译。","报告的检查包括所有者的测试，以及同时用于收集着色器包的开发者自动游玩构建；所审版本没有 CI 工作流。已知问题包括 30 fps 以上部分角色动画不正确，以及预渲染视频周期性停顿。启动器的匿名在线人数上报默认开启。","仓库没有许可证文件，移植代码的复用条款未作说明；内置的超分辨率组件声明为 MIT，ReXGlue 及其他依赖各自适用其条款。游戏代码、素材和商标仍归各自权利人所有，项目声明与 Ubisoft、Universal、Microsoft 等无关。AI 披露所指为 Claude Code。"],"targets":["game"],"url":"https://github.com/TekRantGaming/king-kong-recompiled","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/cyberkaida/reverse-engineering-assistant/blob/a05a6b0a18649efd6d74ec8447bdadf8d468c365/LICENSE","https://github.com/cyberkaida/reverse-engineering-assistant/blob/a05a6b0a18649efd6d74ec8447bdadf8d468c365/pyproject.toml","https://github.com/cyberkaida/reverse-engineering-assistant/blob/a05a6b0a18649efd6d74ec8447bdadf8d468c365/src/main/java/reva/plugin/ConfigManager.java","https://github.com/cyberkaida/reverse-engineering-assistant/blob/a05a6b0a18649efd6d74ec8447bdadf8d468c365/src/main/java/reva/server/McpServerManager.java","https://github.com/cyberkaida/reverse-engineering-assistant/releases/tag/v7.3.1","https://pypi.org/project/reverse-engineering-assistant/7.3.1/","https://github.com/cyberkaida/reverse-engineering-assistant/compare/v7.3.1...a05a6b0a18649efd6d74ec8447bdadf8d468c365"],"category":"agent-mcp","description_en":"Ghidra extension that runs an MCP server inside Ghidra, giving agents decompilation with namespace and cross-reference context, symbol, string, data-type, structure and call-graph tools, program diffing, renaming and PyGhidra scripting. Its README attributes the project's distinction to tool design for LLM use: many small tools whose schemas tolerate other input, redirect correctable mistakes and return short fragments linked to related information. Assistant mode serves an open Ghidra project to several clients at once; headless mode starts Ghidra itself with session-scoped projects.","description_zh":"在 Ghidra 内运行 MCP 服务器的 Ghidra 扩展，为智能体提供附带命名空间与交叉引用上下文的反编译、符号、字符串、数据类型、结构体与调用图工具，以及程序比对、重命名和 PyGhidra 脚本执行。其 README 将项目的特点归于面向大模型使用的工具设计：提供许多小工具，其模式在给定结构之外也能容忍其他输入，把可纠正的错误反馈给模型，并返回附带相关信息链接的简短片段。助手模式可让多个客户端同时连接已打开的 Ghidra 项目；无界面模式则由 ReVa 自行启动 Ghidra，项目仅在会话期间存在。","entry_url":"https://awesomerea.org/resources/reva-ghidra-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/reva-ghidra-mcp/","evidence_url":"https://github.com/cyberkaida/reverse-engineering-assistant/blob/a05a6b0a18649efd6d74ec8447bdadf8d468c365/README.md","group":"agents","id":"reva-ghidra-mcp","json_url":"https://awesomerea.org/resources/reva-ghidra-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/reva-ghidra-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/reva-ghidra-mcp/index.md","name":"ReVa (Reverse Engineering Assistant)","name_zh":"ReVa 面向大模型工具设计的 Ghidra MCP 扩展","record_type":"resource","relationship":"independent-agent-integration","requirements":["Ghidra 12.0 or later only. Install the release zip built for the matching Ghidra version through the extension manager, or build with gradle against GHIDRA_INSTALL_DIR, then enable the ReVa Application Plugin in the project view and the ReVa Plugin in the Code Browser. Release v7.3.1 (2026-09-03) ships zips for Ghidra 12.0, 12.1 and 12.1.3 with Sigstore bundles and a matching PyPI package; the reviewed main commit adds unreleased dependency updates and a breaking CLI migration to MCP Python SDK v2.","Assistant mode needs a running Ghidra with an open project and serves streamable HTTP on port 8080 by default. Headless mode needs GHIDRA_INSTALL_DIR, Python 3.10+ and the reverse-engineering-assistant package installed with uv, which provides the mcp-reva command; the README describes its projects as session-scoped and cleaned up automatically, created under .reva/projects in the working directory.","The server exposes Ghidra's PyGhidra scripting environment, and renaming and data-type tools change the project. Defaults bind 127.0.0.1 with scripting tools enabled and API-key authentication off; the README asks for API-key authentication or disabled scripting tools before listening on a public interface, and the reviewed source refuses an unauthenticated public binding in headless mode and asks for consent in the GUI.","Apache-2.0. The repository also publishes a Claude Code plugin marketplace with triage, deep-analysis, cryptography and CTF skills. README statements about context use and performance on large binaries or firmware images are the author's."],"requirements_zh":["仅支持 Ghidra 12.0 及以上版本。可通过扩展管理器安装与所用 Ghidra 版本匹配的发布 zip，或指定 GHIDRA_INSTALL_DIR 后用 gradle 构建；之后需在项目视图中启用 ReVa Application Plugin，并在 Code Browser 中启用 ReVa Plugin。v7.3.1 版（2026-09-03）提供针对 Ghidra 12.0、12.1 和 12.1.3 的 zip 及 Sigstore 签名包，并有对应的 PyPI 软件包；所审阅的 main 提交另含尚未发布的依赖更新，以及命令行工具迁移到 MCP Python SDK v2 的不兼容改动。","助手模式需要正在运行且已打开项目的 Ghidra，默认在 8080 端口提供 streamable HTTP 服务。无界面模式需要设置 GHIDRA_INSTALL_DIR、Python 3.10+，并用 uv 安装提供 mcp-reva 命令的 reverse-engineering-assistant 软件包；README 称其项目仅在会话期间存在并会自动清理，创建于工作目录下的 .reva/projects 中。","服务器开放 Ghidra 的 PyGhidra 脚本环境，重命名和数据类型类工具会修改项目。默认绑定 127.0.0.1，脚本工具处于启用状态，API 密钥认证关闭；README 要求在监听公共网络接口前启用 API 密钥认证或禁用脚本工具。所审阅源码在无界面模式下拒绝无认证的公共绑定，在图形界面中则会先征求用户同意。","采用 Apache-2.0。仓库还发布了 Claude Code 插件市场，提供初步分析、深入分析、密码学分析和 CTF 等技能。README 中关于上下文用量以及处理大型二进制或固件镜像表现的说法均为作者陈述。"],"targets":["binary"],"url":"https://github.com/cyberkaida/reverse-engineering-assistant","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/ethteck/splat/blob/7548b9771e6f8418507b23434187fb07741af6d4/docs/Home.md","https://github.com/ethteck/splat/blob/7548b9771e6f8418507b23434187fb07741af6d4/docs/Configuration.md#L76-L88","https://github.com/ethteck/splat/blob/7548b9771e6f8418507b23434187fb07741af6d4/docs/Quickstart.md","https://github.com/ethteck/splat/blob/7548b9771e6f8418507b23434187fb07741af6d4/docs/Quickstart-Elf.md","https://github.com/ethteck/splat/blob/7548b9771e6f8418507b23434187fb07741af6d4/pyproject.toml","https://github.com/ethteck/splat/blob/7548b9771e6f8418507b23434187fb07741af6d4/CHANGELOG.md","https://github.com/ethteck/splat/blob/7548b9771e6f8418507b23434187fb07741af6d4/LICENSE","https://pypi.org/project/splat64/0.50.1/"],"category":"game-analysis","description_en":"Binary splitter for decompilation and modding projects: a YAML config says where and how to cut an N64 ROM or PSX, PS2 or PSP binary into code, data and asset segments. A scan phase disassembles code and data, with MIPS handled by spimdisasm; a split phase writes the files and a linker script for rebuilding the input. Custom segment types can extend the pipeline.","description_zh":"面向反编译与模组项目的二进制拆分工具：由 YAML 配置指定在何处、以何种方式把 N64 ROM 或 PSX、PS2、PSP 二进制切分为代码、数据和素材段。扫描阶段反汇编代码与数据，MIPS 部分由 spimdisasm 处理；拆分阶段写出文件以及用于重新构建输入文件的链接脚本。可编写自定义段类型扩展该流程。","entry_url":"https://awesomerea.org/resources/splat/","entry_url_zh":"https://awesomerea.org/zh/resources/splat/","evidence_url":"https://github.com/ethteck/splat/blob/7548b9771e6f8418507b23434187fb07741af6d4/README.md","group":"tools","id":"splat","json_url":"https://awesomerea.org/resources/splat/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/splat/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/splat/index.md","name":"splat","name_zh":"splat 二进制拆分工具","record_type":"resource","relationship":"foundation","requirements":["Python 3.9+; install the splat64 package with the mips extra, which the N64, PSX, PS2 and PSP platforms require. The PyPI release at review was 0.50.1, uploaded 2026-10-10; 0.50.0 introduced breaking symbol and overlay changes. The repository has no GitHub releases.","Only the n64, psx, ps2 and psp platforms are documented; the overview calls PSX and PS2 support limited, the ELF quickstart excludes relocatable ELFs, and the README points GameCube/Wii projects to decomp-toolkit. create_config generates a starting YAML from a user-supplied ROM or ELF, which must then be refined segment by segment.","MIT license. splat splits, disassembles and emits a linker script; it does not decompile to C or by itself produce a matching build, and symbol names and types come from the analyst's optional symbol_addrs file."],"requirements_zh":["需要 Python 3.9+；安装 splat64 软件包时需带 mips 可选依赖，N64、PSX、PS2 和 PSP 平台都依赖它。审阅时 PyPI 最新版本为 0.50.1，上传于 2026-10-10；0.50.0 引入了符号与覆盖段方面的不兼容变更。仓库没有 GitHub 发布版本。","文档仅列出 n64、psx、ps2 和 psp 平台；概述称 PSX 和 PS2 支持有限，ELF 快速入门不支持可重定位 ELF，README 则建议 GameCube/Wii 项目使用 decomp-toolkit。create_config 可根据使用者自备的 ROM 或 ELF 生成初始 YAML，之后仍需逐段细化。","采用 MIT 许可。splat 负责拆分、反汇编并生成链接脚本；它不会反编译出 C 代码，也不能单独产出一致的构建，符号名称与类型来自分析者提供的可选 symbol_addrs 文件。"],"targets":["binary","game"],"url":"https://github.com/ethteck/splat","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/mariopartyrd/marioparty4/blob/5b01c79b4910525e3fc5aa312eddd6d014e7f337/configure.py","https://github.com/mariopartyrd/marioparty4/blob/5b01c79b4910525e3fc5aa312eddd6d014e7f337/config/GMPE01_00/config.yml","https://github.com/mariopartyrd/marioparty4/blob/5b01c79b4910525e3fc5aa312eddd6d014e7f337/config/GMPE01_00/build.sha1","https://github.com/mariopartyrd/marioparty4/blob/5b01c79b4910525e3fc5aa312eddd6d014e7f337/config/GMPE01_01/build.sha1","https://github.com/mariopartyrd/marioparty4/blob/5b01c79b4910525e3fc5aa312eddd6d014e7f337/tools/project.py","https://github.com/mariopartyrd/marioparty4/blob/5b01c79b4910525e3fc5aa312eddd6d014e7f337/tools/download_tool.py","https://github.com/mariopartyrd/marioparty4/blob/5b01c79b4910525e3fc5aa312eddd6d014e7f337/LICENSE","https://github.com/mariopartyrd/marioparty4/blob/5b01c79b4910525e3fc5aa312eddd6d014e7f337/.gitmodules","https://github.com/AxioDL/musyx/blob/adc8df9a959f1e37f71bdf3155e229f9f87ad166/LICENSE","https://decomp.dev/mariopartyrd/marioparty4","https://web.archive.org/web/20261020041928/https://decomp.dev/mariopartyrd/marioparty4/GMPE01_00/5b01c79b4910525e3fc5aa312eddd6d014e7f337.json"],"category":"reconstruction-cases","description_en":"Reconstructs Mario Party 4’s GameCube main executable and REL modules as C source that rebuilds both USA releases. The build analyzes the user’s own disc image and checks every linked output against version-specific SHA-1 lists. PAL and Japanese work is stale and no PC port exists yet; matching results remain project-reported here.","description_zh":"将 Mario Party 4 的 GameCube 主程序和 REL 模块重建为 C 源码，可重新构建两个美版发行版本。构建会分析使用者自备的光盘镜像，并按各版本的 SHA-1 清单检查每个链接产物。欧版和日版工作已停滞，也尚无 PC 移植；此处的一致性结果仍为项目报告。","entry_url":"https://awesomerea.org/resources/mario-party-4-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/mario-party-4-decomp-case/","evidence_url":"https://github.com/mariopartyrd/marioparty4/blob/5b01c79b4910525e3fc5aa312eddd6d014e7f337/README.md","group":"cases","id":"mario-party-4-decomp-case","json_url":"https://awesomerea.org/resources/mario-party-4-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/mario-party-4-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mario-party-4-decomp-case/index.md","name":"Mario Party 4: matching GameCube decompilation of the USA releases","name_zh":"Mario Party 4：美版 GameCube 一致性反编译重建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README describes a work-in-progress decompilation whose two USA versions, GMPE01_00 (Rev 0) and GMPE01_01 (Rev 1), are completely matching; three PAL revisions and the Japanese release are unfinished and their work is stale. Most non-engine code is undocumented, and README states there is no working PC port yet.","Supply your own disc image for a supported game ID; README lists ISO (GCM), RVZ, WIA, WBFS, CISO, NFS, GCZ and TGC containers. The repository says it contains no game assets or assembly, and each version’s config checks the original main.dol hash before analysis.","Documented hosts are native Windows (Python and ninja), macOS (ninja and Wine Crossover) and Linux (ninja, with wibo fetched automatically on x86 or Wine elsewhere). configure.py pins decomp-toolkit, GameCube binutils, a Metrowerks CodeWarrior compiler bundle, objdiff, sjiswrap and wibo releases that the build downloads; the MusyX audio library is a pinned submodule.","The default build’s check step runs decomp-toolkit SHA-1 verification over main.dol and 99 REL modules listed for the selected version; objdiff supports per-object comparison. The mutable decomp.dev page reports GMPE01_00 as 100.00% decompiled and fully linked at the reviewed commit.","The repository is dedicated under CC0 1.0; the pinned MusyX submodule carries its own MIT license, and downloaded compilers and tools keep their own terms. The disc image and game content retain separate rights."],"requirements_zh":["README 将其描述为进行中的反编译项目，两个美版 GMPE01_00（Rev 0）和 GMPE01_01（Rev 1）已完全一致；三个欧版修订版及日版尚未完成，相关工作已停滞。大部分非引擎代码尚无注释文档，README 并说明目前还没有可用的 PC 移植。","需自备受支持游戏 ID 的光盘镜像；README 列出的容器格式包括 ISO（GCM）、RVZ、WIA、WBFS、CISO、NFS、GCZ 和 TGC。仓库声明不含任何游戏素材或汇编，各版本配置在分析前会检查原 main.dol 的哈希。","文档说明的宿主包括原生 Windows（Python 与 ninja）、macOS（ninja 与 Wine Crossover）和 Linux（ninja；x86 上自动获取 wibo，其他架构使用 Wine）。configure.py 固定 decomp-toolkit、GameCube binutils、Metrowerks CodeWarrior 编译器包、objdiff、sjiswrap 和 wibo 的发布版本，由构建自动下载；MusyX 音频库以固定版本子模块引入。","默认构建的检查步骤调用 decomp-toolkit，按所选版本的清单对 main.dol 和 99 个 REL 模块执行 SHA-1 校验；objdiff 用于逐目标文件比较。可变的 decomp.dev 页面报告 GMPE01_00 在所审提交时已 100.00% 反编译并完全链接。","仓库以 CC0 1.0 释出；固定版本的 MusyX 子模块另附 MIT 许可，下载的编译器与工具各有条款。光盘镜像和游戏内容仍有各自权利约束。"],"targets":["game"],"url":"https://github.com/mariopartyrd/marioparty4","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/SpeedBreakerProject/speedbreaker/blob/31849f5f1d275bf21987440cdc27d94071013656/CONTRIBUTING.md","https://github.com/SpeedBreakerProject/speedbreaker/blob/31849f5f1d275bf21987440cdc27d94071013656/CHANGELOG.md","https://github.com/SpeedBreakerProject/speedbreaker/blob/31849f5f1d275bf21987440cdc27d94071013656/.gitignore","https://github.com/SpeedBreakerProject/speedbreaker/blob/31849f5f1d275bf21987440cdc27d94071013656/config/nfsmw.toml","https://github.com/SpeedBreakerProject/speedbreaker/blob/31849f5f1d275bf21987440cdc27d94071013656/patches/xenonrecomp/0001-Add-instructions-used-by-NFS-Most-Wanted-Xbox-360.patch","https://github.com/SpeedBreakerProject/speedbreaker/tree/31849f5f1d275bf21987440cdc27d94071013656/tests","https://github.com/SpeedBreakerProject/speedbreaker/blob/31849f5f1d275bf21987440cdc27d94071013656/COPYING","https://github.com/SpeedBreakerProject/speedbreaker/blob/31849f5f1d275bf21987440cdc27d94071013656/NOTICE","https://github.com/SpeedBreakerProject/speedbreaker/blob/31849f5f1d275bf21987440cdc27d94071013656/THIRD_PARTY_NOTICES.md","https://github.com/SpeedBreakerProject/speedbreaker/releases/tag/v0.1.7"],"category":"reconstruction-cases","description_en":"Translates the Xbox 360 executable of Need for Speed: Most Wanted (2005) into native C++ with a patched XenonRecomp and runs it on a project runtime that stands in for the console’s kernel, Xenos GPU, XMA audio and controllers. Releases target SteamOS, Linux and Apple silicon Macs, with an experimental iPhone and iPad build, while all game data comes from the player’s own US disc. Rendering and frame-pacing improvements are project-reported.","description_zh":"使用打过补丁的 XenonRecomp 将 Xbox 360 版《极品飞车：最高通缉》（2005）的可执行文件转换为原生 C++，并在项目自建的运行时上执行，由运行时代替主机的内核、Xenos GPU、XMA 音频和控制器。发布版面向 SteamOS、Linux 和 Apple 芯片 Mac，另有实验性的 iPhone 与 iPad 版本，所有游戏数据均来自玩家自有的美版光盘。渲染与帧节奏方面的改进均为项目自述。","entry_url":"https://awesomerea.org/resources/speedbreaker-nfs-most-wanted-case/","entry_url_zh":"https://awesomerea.org/zh/resources/speedbreaker-nfs-most-wanted-case/","evidence_url":"https://github.com/SpeedBreakerProject/speedbreaker/blob/31849f5f1d275bf21987440cdc27d94071013656/README.md","group":"cases","id":"speedbreaker-nfs-most-wanted-case","json_url":"https://awesomerea.org/resources/speedbreaker-nfs-most-wanted-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/speedbreaker-nfs-most-wanted-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/speedbreaker-nfs-most-wanted-case/index.md","name":"SpeedBreaker: statically recompiling Need for Speed: Most Wanted for Xbox 360","name_zh":"SpeedBreaker：对 Xbox 360 版《极品飞车：最高通缉》的静态重编译","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["limits","prerequisites","prerequisites","testing","license"],"requirements":["README describes an unofficial static recompilation of the Xbox 360 release, not an emulator, at v0.1.7 (October 2026). Windows and Android builds are announced but unavailable, there is no Intel Mac build, Xbox 360 saves cannot be imported, and the PC edition of the game is unsupported.","Requires a disc image or extracted files from the player’s own USA (NTSC-U) Xbox 360 disc; the installer verifies 49 files, and PAL, Japanese, re-release and Games on Demand copies are untested or unsupported. Source builds recompile the player’s default.xex, identified by size and SHA-256. Game files and the generated ppc/ code are git-ignored, and the README states that no game data or assets are distributed.","Running needs a Vulkan 1.2 GPU and an AVX2 x86-64 CPU on SteamOS or Linux, macOS 15+ on Apple silicon (Metal through MoltenVK), or iOS/iPadOS 17+ on an A15-class chip. Builds use Clang 18+ with lld, CMake and Ninja (on SteamOS inside an Arch distrobox), plus setup scripts for XenonRecomp with eight project patches, extract-xiso and a decoder-only FFmpeg for XMA; SDL3 and Dear ImGui provide the platform layer and UI.","Optional unit tests and instruction tests for the XenonRecomp patches need no game files, although one test needs the generated code; the instruction tests have so far run only on a Mac. Download tables list author- and player-reported devices, and several behaviors, including the IPA install and real 120 Hz displays, are marked untested.","GPL-3.0-or-later with a NOTICE file; adapted Unleashed Recompiled runtime code, XenonRecomp, Xenia-derived headers, FFmpeg and other components keep the licenses listed in THIRD_PARTY_NOTICES. The project disclaims affiliation with EA and Valve. CONTRIBUTING accepts AI-assisted changes only when the contributor has read, understood and tested them."],"requirements_zh":["README 将其描述为针对 Xbox 360 版的非官方静态重编译而非模拟器，当前版本为 v0.1.7（2026 年 10 月）。Windows 和 Android 版本已宣布但尚未提供，没有 Intel Mac 版本，无法导入 Xbox 360 存档，也不支持该游戏的 PC 版。","需要玩家自有美版（NTSC-U）Xbox 360 光盘的镜像或其中的文件；安装程序会校验 49 个文件，PAL 版、日版、再发行版和 Games on Demand 版本未经测试或不受支持。源码构建会重编译玩家自己的 default.xex，并按文件大小和 SHA-256 识别。游戏文件和生成的 ppc/ 代码均被 git 忽略，README 声明不分发任何游戏数据或素材。","运行需要：SteamOS 或 Linux 上支持 Vulkan 1.2 的显卡和支持 AVX2 的 x86-64 CPU；Apple 芯片上的 macOS 15+（通过 MoltenVK 使用 Metal）；或 A15 级芯片上的 iOS／iPadOS 17+。构建使用 Clang 18+、lld、CMake 和 Ninja（SteamOS 上在 Arch distrobox 中进行），并通过安装脚本准备带八个项目补丁的 XenonRecomp、extract-xiso 及仅含解码器的 FFmpeg（用于 XMA）；平台层和界面由 SDL3 与 Dear ImGui 提供。","可选的单元测试以及针对 XenonRecomp 补丁的指令测试无需游戏文件，但其中一项测试需要生成的代码；指令测试目前仅在 Mac 上运行过。下载表列出作者及玩家报告的设备，多项行为（包括 IPA 安装和真实 120 Hz 显示器）标注为尚未测试。","采用 GPL-3.0-or-later 并附 NOTICE 文件；改编自 Unleashed Recompiled 的运行时代码、XenonRecomp、源自 Xenia 的头文件、FFmpeg 等组件保留 THIRD_PARTY_NOTICES 中列出的许可证。项目声明与 EA 和 Valve 无关。CONTRIBUTING 接受借助 AI 工具的修改，前提是贡献者本人已阅读、理解并测试。"],"targets":["game"],"url":"https://github.com/SpeedBreakerProject/speedbreaker","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/duty1g/x64dbg-mcp-server/blob/18be30ab417a371fd441de68d7252d2bc1830f11/SKILL.md","https://github.com/duty1g/x64dbg-mcp-server/blob/18be30ab417a371fd441de68d7252d2bc1830f11/src/core/config.zig","https://github.com/duty1g/x64dbg-mcp-server/blob/18be30ab417a371fd441de68d7252d2bc1830f11/src/core/mcp_server.zig","https://github.com/duty1g/x64dbg-mcp-server/blob/18be30ab417a371fd441de68d7252d2bc1830f11/LICENSE","https://github.com/duty1g/x64dbg-mcp-server/releases/tag/v1.6"],"category":"agent-mcp","description_en":"Native x64dbg plugin, written in Zig for both x32dbg and x64dbg, that serves an MCP endpoint over streamable HTTP and SSE from inside the debugger. Agents can load or attach to a process, set software, hardware, memory and conditional breakpoints, step and trace, read registers, call stacks, threads, memory maps, imports, strings and cross-references, and run arbitrary x64dbg commands. A bundled SKILL.md guide tells agents to confirm the debugger state before every action.","description_zh":"以 Zig 编写、同时支持 x32dbg 与 x64dbg 的原生 x64dbg 插件，在调试器内部通过 streamable HTTP 和 SSE 提供 MCP 端点。智能体可以加载或附加进程，设置软件、硬件、内存及条件断点，单步与跟踪执行，读取寄存器、调用栈、线程、内存映射、导入表、字符串和交叉引用，并执行任意 x64dbg 命令。随附的 SKILL.md 指南要求智能体在每次操作前先确认调试器状态。","entry_url":"https://awesomerea.org/resources/x64dbg-mcp-server/","entry_url_zh":"https://awesomerea.org/zh/resources/x64dbg-mcp-server/","evidence_url":"https://github.com/duty1g/x64dbg-mcp-server/blob/18be30ab417a371fd441de68d7252d2bc1830f11/README.md","group":"agents","id":"x64dbg-mcp-server","json_url":"https://awesomerea.org/resources/x64dbg-mcp-server/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/x64dbg-mcp-server/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/x64dbg-mcp-server/index.md","name":"x64dbg-MCP Server","name_zh":"x64dbg-MCP Server 调试器 MCP 插件","record_type":"resource","relationship":"independent-agent-integration","requirements":["Windows with x64dbg; the plugin loads into x32dbg or x64dbg and resolves the debugger API at runtime. Install by copying the x32 and x64 plugin folders from the v1.6 release zip (2026-10-12) or a dist/ build into the x64dbg root; building needs Zig 0.16-dev or later and can cross-compile from Linux, macOS or WSL. The server starts automatically with the debugger.","Ports are 9094 for x64 and 9095 for x32. The README lists 0.0.0.0 as the default bind address, but the reviewed configuration code has defaulted to 127.0.0.1 since v1.2; the plugin's config dialog changes the address, port and token and saves them to mcp_config.json beside the x64dbg executable. A bearer token generated on first run is required on every request, and traffic is unencrypted HTTP, so the README warns against exposing the server to untrusted networks.","Many tools change the target or debugger state: memory writes and patches, instruction assembly, register writes, memory allocation, thread suspension, breakpoint commands and arbitrary debugger commands. DumpMemory and DumpModule write files to disk, and OEP detection and module dumping are aimed at packed executables.","MIT. The README limits use to authorized reverse engineering, malware analysis, security research and education."],"requirements_zh":["需要 Windows 和 x64dbg；插件加载到 x32dbg 或 x64dbg 中，并在运行时解析调试器 API。安装时将 v1.6 发布 zip（2026-10-12）或 dist/ 构建产物中的 x32 与 x64 插件目录复制到 x64dbg 根目录；构建需要 Zig 0.16-dev 或更新版本，可在 Linux、macOS 或 WSL 上交叉编译。服务器随调试器启动自动运行。","x64 使用 9094 端口，x32 使用 9095 端口。README 称默认绑定地址为 0.0.0.0，但所审阅的配置代码自 v1.2 起默认绑定 127.0.0.1；插件配置对话框可修改地址、端口和令牌，并保存到 x64dbg 可执行文件旁的 mcp_config.json。首次运行时生成的 Bearer 令牌是每个请求的必需项；通信使用未加密的 HTTP，因此 README 警告不要把服务器暴露给不受信任的网络。","许多工具会改变目标进程或调试器状态：写入和修补内存、汇编指令、写寄存器、分配内存、挂起线程、设置断点命令以及执行任意调试器命令。DumpMemory 和 DumpModule 会把文件写入磁盘，OEP 检测和模块转储面向加壳的可执行文件。","采用 MIT 许可。README 将用途限定于经授权的逆向工程、恶意软件分析、安全研究和教学。"],"targets":["binary"],"url":"https://github.com/duty1g/x64dbg-mcp-server","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/DaBrown95/tsbodp/blob/0beb04fdc3142a9860059600d1037725f1bc6c77/assets/progress.json","https://github.com/DaBrown95/tsbodp/blob/0beb04fdc3142a9860059600d1037725f1bc6c77/config/targets/us-eu.json","https://github.com/DaBrown95/tsbodp/blob/0beb04fdc3142a9860059600d1037725f1bc6c77/config/targets/us-rev1.json","https://github.com/DaBrown95/tsbodp/blob/0beb04fdc3142a9860059600d1037725f1bc6c77/Makefile","https://github.com/DaBrown95/tsbodp/blob/0beb04fdc3142a9860059600d1037725f1bc6c77/tools/build_rom.py","https://github.com/DaBrown95/tsbodp/blob/0beb04fdc3142a9860059600d1037725f1bc6c77/AGENTS.md","https://github.com/DaBrown95/tsbodp/blob/0beb04fdc3142a9860059600d1037725f1bc6c77/LICENSE.md"],"category":"reconstruction-cases","description_en":"Rebuilds the USA/Europe Game Boy Advance release of The Sims: Bustin' Out byte for byte while gradually replacing ROM regions with matching C compiled by agbcc. The README calls it an AI-driven experiment in which almost all code, analysis and tooling are AI-generated. Most of the ROM is still copied from the user’s dump, so whole-ROM equality does not mean the game has been decompiled.","description_zh":"逐字节重建 The Sims: Bustin' Out 的 Game Boy Advance 美欧版，并逐步用 agbcc 编译、结果一致的 C 代码替换 ROM 区域。README 称这是由 AI 驱动的实验，几乎所有代码、分析与工具都由 AI 生成。ROM 的大部分仍从使用者的转储中复制，因此整个 ROM 一致并不代表游戏已完成反编译。","entry_url":"https://awesomerea.org/resources/sims-bustin-out-gba-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sims-bustin-out-gba-decomp-case/","evidence_url":"https://github.com/DaBrown95/tsbodp/blob/0beb04fdc3142a9860059600d1037725f1bc6c77/README.md","group":"cases","id":"sims-bustin-out-gba-decomp-case","json_url":"https://awesomerea.org/resources/sims-bustin-out-gba-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sims-bustin-out-gba-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sims-bustin-out-gba-decomp-case/index.md","name":"The Sims: Bustin' Out: an AI-driven partial GBA matching decompilation","name_zh":"The Sims: Bustin' Out：AI 驱动的部分 GBA 一致性反编译重建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The progress report at this commit (verified 18 Oct 2026) counts 2,285 matching C functions covering 288,700 bytes and 4,060 bytes of assembly glue, while 16,484,456 of the 16,777,216 ROM bytes remain unconverted. It marks the code inventory as incomplete, and the README treats function boundaries in the ROM map as provisional.","Requires the user’s own USA/Europe revision 0 ROM (game code ASIE) matching SHA-1 fb5662172fadebf4577f6f6f163741fc041c11e6; unconverted regions in the built ROM come from that dump. A USA revision 1 dump serves only as an audit and comparison reference. ROMs, extracted assets and game binaries are not included.","The documented build host is macOS with Python 3.10+ and Xcode’s command line tools. The pinned toolchain uses pret/agbcc as the matching C compiler, selected GCC 3.0.2 and Binutils 2.10.1 builds with host-compatibility patches, Binutils 2.43.1, Capstone, pyelftools and Pillow. The README notes that choosing these tools does not establish the original game’s toolchain.","make build fails if any byte differs, and each verified build includes changed-source negative controls that must be rejected; make test runs tests without a ROM. mGBA is listed only for optional bounded runtime observations, and no gameplay equivalence is claimed.","MIT covers the project’s own source, tools and documentation, not original game code, assets, trademarks or Nintendo’s header logo. Adapted Krawall routines (LGPL-2.1), selected GCC runtime sources (GPL-2.0 with exceptions) and Newlib string functions keep their own notices. The project accepts no contributions; the agents or models used are not named."],"requirements_zh":["此提交的进度报告（验证时间 2026 年 10 月 18 日）统计 2,285 个一致的 C 函数，共 288,700 字节，另有 4,060 字节汇编衔接代码；16,777,216 字节 ROM 中仍有 16,484,456 字节未转换。报告将代码清单标为未完成，README 也说明 ROM 映射中的函数边界仍属暂定。","需使用者自备美欧版第 0 修订 ROM（游戏代码 ASIE），SHA-1 为 fb5662172fadebf4577f6f6f163741fc041c11e6；构建出的 ROM 中未转换区域取自该转储。美版第 1 修订转储仅用作审计与比对参照。仓库不含 ROM、提取的素材或游戏二进制。","文档所述构建宿主为 macOS，需 Python 3.10+ 及 Xcode 命令行工具。固定版本的工具链以 pret/agbcc 为一致性 C 编译器，另含带宿主兼容补丁的 GCC 3.0.2 与 Binutils 2.10.1 选定版本、Binutils 2.43.1、Capstone、pyelftools 和 Pillow。README 指出，选用这些工具并不能确定原游戏使用的工具链。","make build 在任何字节不同时失败，每次通过验证的构建都包含必须被拒绝的源码改动反向对照；make test 无需 ROM 即可运行测试。mGBA 仅列为可选的有限运行观察工具，项目不主张游戏行为等价。","MIT 仅覆盖项目自有的源码、工具和文档，不覆盖原游戏代码、素材、商标或 Nintendo 的 ROM 头部标志。改编的 Krawall 例程（LGPL-2.1）、选用的 GCC 运行库源码（GPL-2.0 及例外条款）和 Newlib 字符串函数保留各自声明。项目不接受外部贡献；未说明所用智能体或模型。"],"targets":["game"],"url":"https://github.com/DaBrown95/tsbodp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/matt-kempster/m2c/blob/708d2d2cb2698f091a92492b328f73b24209f72d/README.md#L26-L49","https://github.com/matt-kempster/m2c/blob/708d2d2cb2698f091a92492b328f73b24209f72d/README.md#L387-L404","https://github.com/matt-kempster/m2c/blob/708d2d2cb2698f091a92492b328f73b24209f72d/pyproject.toml","https://github.com/matt-kempster/m2c/blob/708d2d2cb2698f091a92492b328f73b24209f72d/LICENSE","https://github.com/decompme/decomp.me/blob/f5850753ef561a3d79e6eb7e96ff08e78154b91d/cromper/cromper/wrappers/m2c_wrapper.py"],"category":"game-analysis","description_en":"Decompiler for matching projects that turns GNU as-format 32-bit MIPS, ARM, PowerPC and SuperH assembly into draft C, with partial C++ support. A target combines platform, compiler (IDO, GCC or MetroWerks CodeWarrior) and language; context files supply types, and it can infer unknown struct fields and emit global initializers. The README places it alongside splat, asm-differ and decomp-permuter, and decomp.me calls it for initial decompilations.","description_zh":"面向匹配反编译项目的反编译器，将 GNU as 格式的 32 位 MIPS、ARM、PowerPC 和 SuperH 汇编转换为 C 代码初稿，并部分支持 C++。目标由平台、编译器（IDO、GCC 或 MetroWerks CodeWarrior）和语言组成；上下文文件提供类型信息，还能推断未知的结构体字段并生成全局变量初始化代码。README 将它与 splat、asm-differ 和 decomp-permuter 并列使用，decomp.me 也调用它生成初步反编译结果。","entry_url":"https://awesomerea.org/resources/m2c/","entry_url_zh":"https://awesomerea.org/zh/resources/m2c/","evidence_url":"https://github.com/matt-kempster/m2c/blob/708d2d2cb2698f091a92492b328f73b24209f72d/README.md","group":"tools","id":"m2c","json_url":"https://awesomerea.org/resources/m2c/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/m2c/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/m2c/index.md","name":"m2c","name_zh":"m2c 匹配反编译器","record_type":"resource","relationship":"foundation","requirements":["Python 3.8+ with graphviz. Run m2c.py from a checkout or install it from the Git repository as a Python package; the package named m2c on PyPI is an unrelated project. There are no releases or tags.","Input must match the GNU as assembly format, such as spimdisasm output. The README lists the mips, mipsel, mipsee (eabi64), ppc, arm, gba (APCS) and sh2 platforms, the ido, gcc and mwcc compilers, and the c and c++ languages. Struct-field inference skips structs with bitfields or unnamed union fields, and initializers cannot be generated for bitfield structs or symbols of unknown type.","GPL-3.0-only. The README warns that output is sometimes suboptimal, especially for loops; it is a starting point to refine and check with a compiler and diff tool, not byte-identical source."],"requirements_zh":["需要 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 提醒输出有时不够理想，循环尤甚；它只是需要继续完善、并用编译器和差异工具核对的起点，而非字节一致的源码。"],"targets":["binary","game"],"url":"https://github.com/matt-kempster/m2c","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/isinternets/d2-research/blob/9a5b58f1f8408ed48b01705e0138ee25050669f2/REPORT.md","https://github.com/isinternets/d2-research/blob/9a5b58f1f8408ed48b01705e0138ee25050669f2/chapters/01-scope-and-conclusions.md","https://github.com/isinternets/d2-research/blob/9a5b58f1f8408ed48b01705e0138ee25050669f2/chapters/02-research-method.md","https://github.com/isinternets/d2-research/blob/9a5b58f1f8408ed48b01705e0138ee25050669f2/chapters/03-system-and-identities.md","https://github.com/isinternets/d2-research/blob/9a5b58f1f8408ed48b01705e0138ee25050669f2/chapters/17-security-engineering-findings.md","https://github.com/isinternets/d2-research/blob/9a5b58f1f8408ed48b01705e0138ee25050669f2/chapters/19-reproducibility-and-open-questions.md","https://github.com/isinternets/d2-research/blob/9a5b58f1f8408ed48b01705e0138ee25050669f2/COLLECTION.md","https://github.com/isinternets/d2-research/blob/9a5b58f1f8408ed48b01705e0138ee25050669f2/ATTRIBUTION.md","https://github.com/isinternets/d2-research/blob/9a5b58f1f8408ed48b01705e0138ee25050669f2/evidence/README.md","https://github.com/isinternets/d2-research/blob/9a5b58f1f8408ed48b01705e0138ee25050669f2/evidence/validation.json","https://github.com/isinternets/d2-research/blob/9a5b58f1f8408ed48b01705e0138ee25050669f2/CITATION.cff","https://github.com/isinternets/d2-research/blob/9a5b58f1f8408ed48b01705e0138ee25050669f2/LICENSES/Dawn-GPL-3.0.txt"],"category":"reconstruction-cases","description_en":"A dated research report on the Sunrise/Dawn reconstruction of the archived Destiny 2 build 86657 client, which emulates platform sign-on and the examined Bungie service contracts locally and adds reconstructed mission host policy. It records transport, decoding, object creation, presentation and gameplay results separately, and keeps superseded conclusions with their cited sources. It documents the case rather than shipping the runtime implementation or a recovered Bungie backend; playthroughs and native results remain project-reported.","description_zh":"一份注明版本日期的研究报告，记录已归档 Destiny 2 build 86657 客户端的 Sunrise／Dawn 重建：在本地模拟平台登录与所考察的 Bungie 服务契约，并补充重建的任务主机策略。报告把传输、解码、对象创建、呈现与游戏玩法结果分开记录，并连同所引来源保留已被推翻的结论。它记录案例本身，不提供运行时实现，也不是恢复出的 Bungie 后端；通关与原生实验结果仍为项目报告。","entry_url":"https://awesomerea.org/resources/destiny2-build-86657-reconstruction-report-case/","entry_url_zh":"https://awesomerea.org/zh/resources/destiny2-build-86657-reconstruction-report-case/","evidence_url":"https://github.com/isinternets/d2-research/blob/9a5b58f1f8408ed48b01705e0138ee25050669f2/README.md","group":"cases","id":"destiny2-build-86657-reconstruction-report-case","json_url":"https://awesomerea.org/resources/destiny2-build-86657-reconstruction-report-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/destiny2-build-86657-reconstruction-report-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/destiny2-build-86657-reconstruction-report-case/index.md","name":"Destiny 2 build 86657: Sunrise/Dawn reconstruction research report","name_zh":"Destiny 2 build 86657：Sunrise／Dawn 重建研究报告","reconstruction_method":"other","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","scope","testing","license"],"requirements":["The reviewed edition (21 September 2026) has 20 chapters, 289 source records and hash inventories of 2,832 implementation and 336 lanes-archive files for build 86657.20.08.23.1800.d2_rc.","Native work needs your own copy of the archived 86657 client and its game packages; the report neither supplies them nor explains how to obtain them. Game binaries, payloads, artwork, the manifest database, credentials, saves, raw captures, the two supplied PDFs and several referenced fixtures and traces are unpublished.","It runs as a proxy DLL inside the game process; ATTRIBUTION.md credits the separate Dawn project, building on Sunrise and Sundial. Files captured from a modified e801e23e worktree are identified by hash; checking the report needs only Python and two bundled scripts.","Bundled checks cover report assembly, 1,191 local links, citations, evidence hashes and 37 claim references, with no game or native runtime test. Spark live testing, native-world resume and detached camera remain unverified or unimplemented, and the Eater of Worlds slice excludes the barrier and Argos fights.","No repository-wide license; ATTRIBUTION.md keeps Dawn’s GPL-3.0 text for included excerpts, claims no Bungie endorsement and relicenses no third-party material."],"requirements_zh":["所审阅版本日期为 2026 年 9 月 21 日，共 20 章、289 条来源记录，并以哈希清点 build 86657.20.08.23.1800.d2_rc 的 2,832 个实现文件和 336 个 lanes 归档文件。","原生实验需要自备已归档的 86657 客户端及其游戏包；报告既不提供这些文件，也不说明获取方式。游戏二进制、包内容、美术素材、清单数据库、凭据、存档、原始运行捕获、两份所提供的 PDF 以及部分被引用的夹具与跟踪记录均未公开。","重建以代理 DLL 形式运行在游戏进程内；ATTRIBUTION.md 指明由独立的 Dawn 项目完成，并以 Sunrise 与 Sundial 的研究为基础。采集自 e801e23e 修改工作区的文件以哈希标识；检查报告本身只需 Python 及其自带的两个脚本。","随附检查覆盖报告组装、1,191 个本地链接、引用、证据哈希和 37 条论断引用，不含游戏或原生运行测试。Spark 实机测试、原生世界恢复和分离式镜头仍未验证或未实现，Eater of Worlds 片段不含屏障战与 Argos 战。","仓库未声明整体许可证；ATTRIBUTION.md 为所含摘录保留 Dawn 的 GPL-3.0 文本，不声称获得 Bungie 认可，也不对第三方材料重新授权。"],"targets":["game","protocol"],"url":"https://github.com/isinternets/d2-research","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/shaneomac1337/SVR2011-Recomp/blob/6a12d52d0e32adfca092b6474d584b97d459b148/LICENSE","https://github.com/shaneomac1337/SVR2011-Recomp/blob/6a12d52d0e32adfca092b6474d584b97d459b148/svr2011_manifest.toml","https://github.com/shaneomac1337/SVR2011-Recomp/blob/6a12d52d0e32adfca092b6474d584b97d459b148/docs/feasibility.md","https://github.com/shaneomac1337/SVR2011-Recomp/blob/6a12d52d0e32adfca092b6474d584b97d459b148/docs/boot-investigation.md","https://github.com/shaneomac1337/SVR2011-Recomp/blob/6a12d52d0e32adfca092b6474d584b97d459b148/scripts/bootstrap.ps1","https://github.com/shaneomac1337/SVR2011-Recomp/blob/6a12d52d0e32adfca092b6474d584b97d459b148/scripts/package-portable.ps1","https://github.com/rexglue/rexglue-sdk/blob/f5337cdc947ff6d4c4196737e2c807a48f2a1fc2/README.md"],"category":"reconstruction-cases","description_en":"Translates the Xbox 360 executable of WWE SmackDown vs. Raw 2011 to C++ ahead of time with ReXGlue and builds it as a Windows program on a Vulkan runtime derived from Xenia. A hand-maintained manifest adds function entry points the automatic pass misses, and project patches address frame pacing, a music-player delay and pipeline stalls. Exhibition play is author-tested on one AMD GPU; career mode and online remain untested.","description_zh":"借助 ReXGlue 将 WWE SmackDown vs. Raw 2011 的 Xbox 360 可执行文件提前转换为 C++，并在源自 Xenia 的 Vulkan 运行时上构建为 Windows 程序。手工维护的清单补充自动分析遗漏的函数入口，项目补丁则处理帧节奏、音乐播放器延迟和渲染管线卡顿。作者仅在一款 AMD GPU 上测试了表演赛等模式；生涯模式与在线功能仍未测试。","entry_url":"https://awesomerea.org/resources/svr2011-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/svr2011-recomp-case/","evidence_url":"https://github.com/shaneomac1337/SVR2011-Recomp/blob/6a12d52d0e32adfca092b6474d584b97d459b148/README.md","group":"cases","id":"svr2011-recomp-case","json_url":"https://awesomerea.org/resources/svr2011-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/svr2011-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/svr2011-recomp-case/index.md","name":"SVR2011-Recomp: a ReXGlue recompilation of WWE SmackDown vs. Raw 2011","name_zh":"SVR2011-Recomp：借助 ReXGlue 重编译 WWE SmackDown vs. Raw 2011","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed main branch (the v0.5.0 release commit) is a static recompilation, not a decompilation; its feasibility notes stress that translated code is not recovered developer source. The build accepts only the default.xex with SHA-256 6aead4cb…d3ebc1, and svr2011_manifest.toml seeds indirect-call targets that ReXGlue v0.10.0 misses. README reports exhibition matches, entrances, menus, backstage brawls and the Create a Superstar tools as playable; Road to WrestleMania, other create modes, Universe and online are untested and may crash.","The player supplies an Xbox 360 disc image of the USA/Europe release. The launcher checks all 366 files against that release, refuses other images and copies the files into gamedata once. README states that the repository contains no game code or data and that the build generates both from the user’s image; the player zip carries the built executable, ReXGlue runtime DLLs and prebuilt shaders, but no disc files.","Play needs 64-bit Windows 10 or 11 (only Windows 11 was tested), a Vulkan GPU with a current driver and about 6 GB of space. Source builds need about 25 GB, PowerShell 7, Python 3, Git, 7-Zip and Visual Studio 2026 Build Tools with CMake, Ninja and the Windows SDK; bootstrap.ps1 downloads SHA-256-pinned ReXGlue 0.10.0 and LLVM 21.1.8. The Vulkan renderer must be selected, because the default D3D12 path hangs on the tested GPU.","Testing is reported on Windows 11 with an AMD Radeon RX 7900 XT; other GPUs and Windows 10 have not been tried. Python and PowerShell tests cover disc inspection, shader-cache merging, the launcher and portable setup with a synthetic image, and dated notes record the boot and frame-time investigations. These are author reports.","The project’s own code is BSD 3-Clause; ReXGlue is used under its own license, and the project scaffold and generated/rexglue.cmake come from ReXGlue templates. The game remains with its rights holders, and README asks users not to share gamedata, assets or disc images. A docs/agents work-tracking note exists."],"requirements_zh":["所审阅的 main 分支（即 v0.5.0 发布所在提交）是静态重编译，而非反编译；其可行性说明强调，转换得到的代码并非恢复出的开发者源码。构建只接受 SHA-256 为 6aead4cb…d3ebc1 的 default.xex，svr2011_manifest.toml 则补充 ReXGlue v0.10.0 遗漏的间接调用目标。README 报告表演赛、入场、菜单、后台乱斗及 Create a Superstar 工具可以游玩；Road to WrestleMania、其他创建模式、Universe 和在线功能未经测试，可能崩溃。","玩家需自备美版／欧版 Xbox 360 光盘镜像。启动器会对照该版本检查全部 366 个文件，拒绝其他镜像，并一次性复制到 gamedata。README 称仓库不含游戏代码或数据，二者均由构建依据使用者的镜像生成；玩家压缩包包含已构建的可执行文件、ReXGlue 运行时 DLL 和预编译着色器，但不含光盘文件。","运行需 64 位 Windows 10 或 11（仅测试过 Windows 11）、驱动较新的 Vulkan GPU 及约 6 GB 空间。源码构建需约 25 GB 空间、PowerShell 7、Python 3、Git、7-Zip，以及含 CMake、Ninja 和 Windows SDK 的 Visual Studio 2026 生成工具；bootstrap.ps1 会下载以 SHA-256 固定的 ReXGlue 0.10.0 和 LLVM 21.1.8。必须选择 Vulkan 渲染器，因为默认的 D3D12 路径在测试 GPU 上会卡死。","测试环境为配备 AMD Radeon RX 7900 XT 的 Windows 11，其他 GPU 和 Windows 10 尚未尝试。Python 与 PowerShell 测试覆盖光盘检查、着色器缓存合并、启动器以及使用合成镜像的便携版安装，带日期的笔记记录了启动与帧时间调查。这些是作者报告。","项目自身代码采用 BSD 3-Clause；ReXGlue 按其自身许可使用，项目脚手架和 generated/rexglue.cmake 来自 ReXGlue 模板。游戏权利仍归其权利人，README 要求使用者不要分享 gamedata、assets 或光盘镜像。仓库有 docs/agents 下的工作跟踪说明。"],"targets":["game"],"url":"https://github.com/shaneomac1337/SVR2011-Recomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/svnscha/mcp-windbg/blob/48e4350d57c44a38068be4f64e89a0fe60fe5c04/docs/scenarios/http-service.md","https://github.com/svnscha/mcp-windbg/blob/48e4350d57c44a38068be4f64e89a0fe60fe5c04/docs/reference/cli.md","https://github.com/svnscha/mcp-windbg/blob/48e4350d57c44a38068be4f64e89a0fe60fe5c04/pyproject.toml","https://github.com/svnscha/mcp-windbg/blob/48e4350d57c44a38068be4f64e89a0fe60fe5c04/LICENSE","https://github.com/svnscha/mcp-windbg/releases/tag/v1.5.1","https://pypi.org/project/mcp-windbg/1.5.1/"],"category":"agent-mcp","description_en":"Independent, community-built MCP server that runs Microsoft's cdb.exe and kd.exe headless, so agents can open and triage user-mode and kernel crash dumps, attach to cdb remote debug servers and KD kernel targets, and run arbitrary debugger commands in separately addressed sessions. Its README points users who want AI inside WinDbg to Microsoft's official WinDbg MCP and positions this project as an alternative for other MCP clients, remote HTTP use and batch dump triage; it calls itself a wrapper that runs real debugger commands, not an automatic fix.","description_zh":"由社区独立开发的 MCP 服务器，以无界面方式运行微软的 cdb.exe 和 kd.exe，使智能体能够打开并初步分析用户态与内核崩溃转储，连接 cdb 远程调试服务器和 KD 内核目标，并在可分别寻址的会话中执行任意调试器命令。其 README 建议希望在 WinDbg 内使用 AI 的用户选择微软官方的 WinDbg MCP，并把本项目定位为面向其他 MCP 客户端、远程 HTTP 使用和批量转储分析的替代方案；项目自称只是执行真实调试器命令的封装，而非自动修复工具。","entry_url":"https://awesomerea.org/resources/mcp-windbg/","entry_url_zh":"https://awesomerea.org/zh/resources/mcp-windbg/","evidence_url":"https://github.com/svnscha/mcp-windbg/blob/48e4350d57c44a38068be4f64e89a0fe60fe5c04/README.md","group":"agents","id":"mcp-windbg","json_url":"https://awesomerea.org/resources/mcp-windbg/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/mcp-windbg/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mcp-windbg/index.md","name":"mcp-windbg","name_zh":"mcp-windbg WinDbg 调试 MCP 服务器","record_type":"resource","relationship":"independent-agent-integration","requirements":["Windows with Debugging Tools for Windows or WinDbg from the Microsoft Store, which provide cdb.exe and kd.exe. Install from PyPI (mcp-windbg 1.5.1, Python 3.10+), through the uvx-based Claude Code plugin, or as the signed standalone mcp-windbg.exe attached to each release with SHA256SUMS; optional plugins add four skills and a crash-analyst agent. The reviewed develop commit is one commit after v1.5.1 (2026-10-10).","Symbols come from _NT_SYMBOL_PATH or --symbols-path, typically the Microsoft symbol server. Remote user-mode debugging needs a running cdb or WinDbg debug server; kernel sessions need a KD-enabled machine or VM reached over KDNET, a named pipe or serial, and closing a kernel session resumes the target.","stdio is the default transport. The streamable HTTP transport binds 127.0.0.1:8000 by default and has no authentication: anyone who can reach the port can drive cdb.exe on the host, so the docs advise a trusted network, an SSH tunnel or an authenticating proxy. A --filter-script hook can redact data from tool arguments and output before they leave the machine.","MIT. Microsoft's official WinDbg MCP, which the README dates from WinDbg 1.2610.1001.0, is a separate product."],"requirements_zh":["需要 Windows，以及提供 cdb.exe 和 kd.exe 的 Debugging Tools for Windows 或 Microsoft Store 版 WinDbg。可从 PyPI 安装（mcp-windbg 1.5.1，需 Python 3.10+），也可通过基于 uvx 的 Claude Code 插件安装，或使用每个版本附带的已签名独立程序 mcp-windbg.exe 及 SHA256SUMS；可选插件另提供四个技能和一个 crash-analyst 智能体。所审阅的 develop 提交比 v1.5.1（2026-10-10）多一个提交。","符号来自 _NT_SYMBOL_PATH 或 --symbols-path，通常指向微软符号服务器。远程用户态调试需要已运行的 cdb 或 WinDbg 调试服务器；内核会话需要通过 KDNET、命名管道或串口连接已启用 KD 的机器或虚拟机，关闭内核会话会让目标继续运行。","默认传输方式为 stdio。streamable HTTP 传输默认绑定 127.0.0.1:8000，且没有任何认证：任何能访问该端口的人都能在主机上操控 cdb.exe，因此文档建议只在可信网络中使用，或通过 SSH 隧道、带认证的反向代理访问。--filter-script 钩子可在数据离开本机前对工具参数和输出进行脱敏。","采用 MIT 许可。README 称微软官方 WinDbg MCP 自 WinDbg 1.2610.1001.0 起提供，它是另一款产品。"],"targets":["binary"],"url":"https://github.com/svnscha/mcp-windbg","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/encounter/decomp-toolkit/blob/0645e16511814920ffb05b25615dd71f1af73e4c/README.md#L97-L130","https://github.com/encounter/decomp-toolkit/blob/0645e16511814920ffb05b25615dd71f1af73e4c/README.md#L249-L271","https://github.com/encounter/decomp-toolkit/blob/0645e16511814920ffb05b25615dd71f1af73e4c/Cargo.toml","https://github.com/encounter/decomp-toolkit/blob/0645e16511814920ffb05b25615dd71f1af73e4c/LICENSE-MIT","https://github.com/encounter/decomp-toolkit/blob/0645e16511814920ffb05b25615dd71f1af73e4c/LICENSE-APACHE","https://github.com/encounter/decomp-toolkit/releases/tag/v1.8.4","https://github.com/ethteck/splat/blob/7548b9771e6f8418507b23434187fb07741af6d4/README.md#L32-L34"],"category":"game-analysis","description_en":"GameCube/Wii matching-decompilation toolkit that analyzes DOL and REL executables and, from a project configuration, splits them into relocatable objects plus an ldscript.lcf for CodeWarrior's linker, so decompiled objects can replace original ones while the relinked binary is checked against the original. Analysis covers function boundaries, a Metrowerks/SDK signature database, relocations, sections and data objects, and objects are written without an assembler. Its CLI also handles disc images, archives, compression formats, CodeWarrior demangling and DWARF dumps.","description_zh":"面向 GameCube/Wii 匹配反编译的工具包：分析 DOL 和 REL 可执行文件，按项目配置将其拆分为可重定位目标文件，并为 CodeWarrior 链接器生成 ldscript.lcf，使反编译出的目标文件可逐个替换原有部分，同时将重新链接的二进制与原版核对。分析涵盖函数边界、Metrowerks/SDK 签名库、重定位、节区和数据对象，且无需汇编器即可直接写出目标文件。其命令行还可处理光盘镜像、归档、压缩格式、CodeWarrior 符号还原和 DWARF 转储。","entry_url":"https://awesomerea.org/resources/decomp-toolkit/","entry_url_zh":"https://awesomerea.org/zh/resources/decomp-toolkit/","evidence_url":"https://github.com/encounter/decomp-toolkit/blob/0645e16511814920ffb05b25615dd71f1af73e4c/README.md","group":"tools","id":"decomp-toolkit","json_url":"https://awesomerea.org/resources/decomp-toolkit/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/decomp-toolkit/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/decomp-toolkit/index.md","name":"decomp-toolkit","name_zh":"decomp-toolkit GameCube/Wii 反编译工具包","record_type":"resource","relationship":"foundation","requirements":["Distributed as a single portable binary: release v1.8.4, published 2026-09-09, provides Linux x86_64/i686/aarch64, macOS arm64/x86_64 and Windows x86_64/x86/arm64 builds. The reviewed main commit is one commit ahead of that tag, restoring a metroidbuildinfo command. Building from source needs Rust 1.85+.","dol split is intended to run inside a decompilation project's build system; the README points new projects to dtk-template for project structure and configuration documentation. Matching builds often need the original game's compiler, Metrowerks CodeWarrior on GameCube/Wii, and the generated linker script targets mwldeppc.exe. DOL/REL files and disc images must come from the user's own game copies.","Dual-licensed MIT OR Apache-2.0. It analyzes, splits and relinks binaries; it does not decompile to C, and dol diff only reports the most obvious difference in a linked ELF, so per-function matching is checked with tools such as objdiff."],"requirements_zh":["以单个可移植二进制分发：v1.8.4 发布于 2026-09-09，提供 Linux x86_64/i686/aarch64、macOS arm64/x86_64 和 Windows x86_64/x86/arm64 版本。所审阅的 main 分支提交比该标签多一个提交，用于恢复 metroidbuildinfo 命令。从源码构建需要 Rust 1.85+。","dol split 设计为在反编译项目的构建系统中运行；README 建议新项目参考 dtk-template 的项目结构和配置文档。匹配构建通常需要原游戏所用的编译器（GameCube/Wii 上为 Metrowerks CodeWarrior），生成的链接脚本面向 mwldeppc.exe。DOL/REL 文件和光盘镜像须来自使用者自有的游戏副本。","采用 MIT 或 Apache-2.0 双重许可。它负责分析、拆分和重新链接二进制，不会反编译出 C 代码；dol diff 只报告已链接 ELF 中最明显的差异，逐函数的匹配情况需借助 objdiff 等工具核对。"],"targets":["binary","game"],"url":"https://github.com/encounter/decomp-toolkit","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/JackandBeans/Snap64Recomp/blob/cf53b89272b9db19059dd97eed2690ea1dd94844/BUILDING.md","https://github.com/JackandBeans/Snap64Recomp/blob/cf53b89272b9db19059dd97eed2690ea1dd94844/docs/VERIFICATION.md","https://github.com/JackandBeans/Snap64Recomp/blob/cf53b89272b9db19059dd97eed2690ea1dd94844/docs/KNOWN-ISSUES.md","https://github.com/JackandBeans/Snap64Recomp/blob/cf53b89272b9db19059dd97eed2690ea1dd94844/NOTICE.md","https://github.com/JackandBeans/Snap64Recomp/blob/cf53b89272b9db19059dd97eed2690ea1dd94844/CMakeLists.txt","https://github.com/JackandBeans/Snap64Recomp/blob/cf53b89272b9db19059dd97eed2690ea1dd94844/pokemonsnap.us.toml","https://github.com/JackandBeans/Snap64Recomp/blob/cf53b89272b9db19059dd97eed2690ea1dd94844/.gitmodules","https://github.com/JackandBeans/Snap64Recomp/blob/cf53b89272b9db19059dd97eed2690ea1dd94844/LICENSE","https://github.com/JackandBeans/Snap64Recomp/blob/cf53b89272b9db19059dd97eed2690ea1dd94844/CONTRIBUTING.md","https://github.com/JackandBeans/Snap64Recomp/releases/tag/v1.1.5"],"category":"reconstruction-cases","description_en":"Uses N64Recomp to statically recompile the US Nintendo 64 release of Pokémon Snap into a native Windows, Linux, Steam Deck and macOS port rendered with RT64. The recompiler reads a relocatable ELF linked from the matching ethteck/pokemonsnap decompilation together with the user’s ROM, and game-side patches are modified copies of decompiled functions. The author reports building the port with Claude Code; results remain project-reported.","description_zh":"使用 N64Recomp 将 Pokémon Snap 美版 Nintendo 64 发行版静态重编译为原生 Windows、Linux、Steam Deck 和 macOS 移植，由 RT64 负责渲染。重编译器读取从一致性 ethteck/pokemonsnap 反编译项目链接出的可重定位 ELF 及使用者自备的 ROM，游戏侧补丁则是反编译函数的修改副本。作者报告借助 Claude Code 完成移植；各项结果仍为项目报告。","entry_url":"https://awesomerea.org/resources/snap64-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/snap64-recomp-case/","evidence_url":"https://github.com/JackandBeans/Snap64Recomp/blob/cf53b89272b9db19059dd97eed2690ea1dd94844/README.md","group":"cases","id":"snap64-recomp-case","json_url":"https://awesomerea.org/resources/snap64-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/snap64-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/snap64-recomp-case/index.md","name":"Snap64 Recomp: a static-recompilation port of Pokémon Snap","name_zh":"Snap64 Recomp：Pokémon Snap 的静态重编译移植","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed tree is version 1.1.5, published as release v1.1.5 on 2026-10-17, and targets only the US cartridge; README says the Japanese, European and Australian releases are different builds. Cartridge behavior is the default and every enhancement is opt-in. Listed known issues include some 2D elements stepping at the game’s rate at higher frame rates, estimated Snap Station printer details and lightly tested Vulkan on Windows.","Supply your own US ROM matching the SHA-1 in README, the checksum the decompilation publishes; .z64, .v64 and .n64 files are accepted and a wrong file is refused. The repository and releases contain no game assets. Building also needs that ROM for the matching decompilation build, the recompiler inputs and the RSP audio-microcode translation.","Releases need 64-bit Windows 10 (1809+) or 11 with Direct3D 12 Shader Model 6.3, Linux or Steam Deck with Vulkan 1.2 (experimental), or macOS 14+, on an SSE4.1 x86-64 CPU or the ARM builds provided. BUILDING.md records a two-machine build: WSL Ubuntu 24.04 with MIPS binutils, the decompilation, its downloaded IDO compilers and N64Recomp, then Visual Studio 2019, CMake 3.20+ and Python 3 on Windows after tools/fetch_deps.py checks out the pinned submodules.","VERIFICATION.md reports a full Windows play-through, partial Steam Deck and GitHub-hosted virtual Mac runs, and 33 of 33 headless-suite checks plus 5 of 5 Snap Station checks on the author’s 1.1.5 executable from recorded replays. No physical Mac or Linux desktop report is recorded.","Port code is GPLv3, with third-party components listed in NOTICE.md. NOTICE.md says no tracked file carries ROM bytes, but the distributed executable is compiled from C that N64Recomp translates from the game’s instructions, and patches are modified decompiled functions; the game remains its owners’. The author reports writing the port with Claude Code under their direction."],"requirements_zh":["所审代码树为 1.1.5 版，对应 2026-10-17 发布的 v1.1.5，仅支持美版卡带；README 说明日版、欧版和澳版是不同的游戏构建。默认保持卡带原有行为，所有增强功能均需手动开启。列出的已知问题包括：提高帧率时部分 2D 元素仍按游戏原速步进、Snap Station 打印机的部分细节为估计值，以及 Windows 上的 Vulkan 测试较少。","需自备与 README 中 SHA-1 一致的美版 ROM，该校验值即反编译项目公布的值；接受 .z64、.v64 和 .n64 文件，错误文件会被拒绝。仓库与发布包均不含游戏素材。构建时同样需要该 ROM，用于一致性反编译构建、重编译器输入及 RSP 音频微码转换。","发布版需要 64 位 Windows 10（1809 及以上）或 11 并支持 Direct3D 12 Shader Model 6.3，或支持 Vulkan 1.2 的 Linux／Steam Deck（实验性），或 macOS 14 及以上；CPU 需为支持 SSE4.1 的 x86-64，或使用提供的 ARM 构建。BUILDING.md 记录的是双机构建：先在 WSL Ubuntu 24.04 上使用 MIPS binutils、反编译项目及其下载的 IDO 编译器和 N64Recomp，再在 Windows 上用 tools/fetch_deps.py 检出固定版本子模块后，以 Visual Studio 2019、CMake 3.20+ 和 Python 3 构建。","VERIFICATION.md 报告：在 Windows 上完整通关，在 Steam Deck 和 GitHub 托管的虚拟 Mac 上进行了部分运行，作者构建的 1.1.5 可执行文件使用录制回放通过了 33／33 项无界面测试套件检查及 5／5 项 Snap Station 检查。尚无实体 Mac 或 Linux 桌面的报告。","移植代码采用 GPLv3，第三方组件列于 NOTICE.md。NOTICE.md 说明仓库跟踪的文件不含 ROM 字节，但分发的可执行文件由 N64Recomp 从游戏指令转换出的 C 代码编译而成，补丁也是修改过的反编译函数；游戏本身仍归其权利人所有。作者报告在其主导下使用 Claude Code 编写此移植。"],"targets":["game"],"url":"https://github.com/JackandBeans/Snap64Recomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/wivi514/Dead_Rising_2_Case_Zero_Xenon_Recomp/blob/a1feb9dd7a61e23b4bcbb1afab8edf3439ee86ac/THIRD_PARTY.md","https://github.com/wivi514/Dead_Rising_2_Case_Zero_Xenon_Recomp/blob/a1feb9dd7a61e23b4bcbb1afab8edf3439ee86ac/LICENSE","https://github.com/wivi514/Dead_Rising_2_Case_Zero_Xenon_Recomp/blob/a1feb9dd7a61e23b4bcbb1afab8edf3439ee86ac/patches/README.md","https://github.com/wivi514/Dead_Rising_2_Case_Zero_Xenon_Recomp/blob/a1feb9dd7a61e23b4bcbb1afab8edf3439ee86ac/docs/final-state.md","https://github.com/wivi514/Dead_Rising_2_Case_Zero_Xenon_Recomp/blob/a1feb9dd7a61e23b4bcbb1afab8edf3439ee86ac/config/CaseZero.toml","https://github.com/wivi514/Dead_Rising_2_Case_Zero_Xenon_Recomp/blob/a1feb9dd7a61e23b4bcbb1afab8edf3439ee86ac/runtime/CMakeLists.txt","https://github.com/wivi514/Dead_Rising_2_Case_Zero_Xenon_Recomp/blob/a1feb9dd7a61e23b4bcbb1afab8edf3439ee86ac/.github/workflows/build.yml","https://github.com/wivi514/Dead_Rising_2_Case_Zero_Xenon_Recomp/blob/a1feb9dd7a61e23b4bcbb1afab8edf3439ee86ac/tools/gen_kbm_icons.py","https://github.com/wivi514/Dead_Rising_2_Case_Zero_Xenon_Recomp/actions/runs/38534235503"],"category":"reconstruction-cases","description_en":"Builds a native Windows, Linux, Steam Deck and Apple Silicon port of the XBLA game Dead Rising 2: Case Zero by statically recompiling its Xbox 360 code with patched XenonRecomp and translating its shaders with patched XenosRecomp. A purpose-built runtime supplies a Vulkan renderer, XMA audio, keyboard/mouse input and online co-op through the author’s XenonLive service. Completion and platform results are project-reported.","description_zh":"使用打过补丁的 XenonRecomp 静态重编译 Xbox 360 代码，并用打过补丁的 XenosRecomp 转换着色器，为 XBLA 游戏 Dead Rising 2: Case Zero 构建可在 Windows、Linux、Steam Deck 和 Apple Silicon Mac 上运行的原生移植。专门编写的运行时提供 Vulkan 渲染器、XMA 音频、键鼠输入，以及通过作者的 XenonLive 服务实现的在线合作。通关情况与各平台结果均为项目报告。","entry_url":"https://awesomerea.org/resources/dead-rising-2-case-zero-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/dead-rising-2-case-zero-recomp-case/","evidence_url":"https://github.com/wivi514/Dead_Rising_2_Case_Zero_Xenon_Recomp/blob/a1feb9dd7a61e23b4bcbb1afab8edf3439ee86ac/README.md","group":"cases","id":"dead-rising-2-case-zero-recomp-case","json_url":"https://awesomerea.org/resources/dead-rising-2-case-zero-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/dead-rising-2-case-zero-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dead-rising-2-case-zero-recomp-case/index.md","name":"Dead Rising 2: Case Zero — an Xbox 360 XBLA static recompilation port","name_zh":"Dead Rising 2: Case Zero：Xbox 360 XBLA 游戏的静态重编译移植","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","scope","testing","license"],"requirements":["Requires the user’s own XBLA package for title 58410A8D (about 825 MB, no file extension) in assets/package; the first run unpacks it and prepares the 1,367 shaders and the menu and prompt assets locally. No game data is committed or shipped: assets/ and the ppc/ C++ generated from the retail executable are gitignored, and the committed key-cap prompt chips are the project’s own art.","Releases need a Vulkan 1.3 GPU with Windows 10+ x86-64, Linux x86-64 with glibc 2.35+, the Steam Deck archive, or macOS 13+ on Apple Silicon; Intel Macs are unsupported, and about 2 GB is needed after unpacking. Source builds need hedge-dev XenonRecomp and XenosRecomp at the base commits in patches/README.md with the 14 and 23 exported patches, a sibling XenonLive checkout at configure time, CMake and Ninja; ppc/ must first be regenerated from config/CaseZero.toml.","The README declares the project finished at v1.1.3 (October 2026) and completable solo and in two-player online co-op on Windows and Linux, with a raised level cap, 60 fps, a restored PC options screen and ultrawide support. The Steam Deck and macOS builds are the least tested; the macOS build can freeze after about 15 idle minutes, and streaming pop-in and sign holes remain open. The maintainer has stopped work, so issues may go unanswered.","CI builds the host runtime on Linux and Windows and smoke-tests it against a stub image; that run succeeded for the reviewed commit. Playthroughs are maintainer reports. The patch notes say both exported patch sets reproduce the recompiler checkouts used for v1.1.3.","Project code is under PolyForm Noncommercial 1.0.0, which permits noncommercial use, modification and forks but not sale; XenonRecomp and XenosRecomp are MIT, and Capcom retains the game’s rights. THIRD_PARTY.md says UnleashedRecomp served only as a structural reference, with no GPL code copied. The development journal is committed as CLAUDE.md."],"requirements_zh":["需使用者自有的游戏 58410A8D 的 XBLA 游戏包（约 825 MB，无扩展名），放入 assets/package；首次运行会在本地解包，并准备 1,367 个着色器及菜单与按键提示素材。仓库与发布包均不含游戏数据：assets/ 和由零售版可执行文件生成的 ppc/ C++ 代码都被 git 忽略，仓库中的键帽提示贴图是项目自绘的美术。","运行发布版需支持 Vulkan 1.3 的显卡，以及 Windows 10+ x86-64、glibc 2.35+ 的 Linux x86-64、Steam Deck 专用包或 Apple Silicon 上的 macOS 13+；不支持 Intel Mac，解包后约需 2 GB 空间。从源码构建需按 patches/README.md 所列基准提交取得 hedge-dev 的 XenonRecomp 与 XenosRecomp，并应用导出的 14 个和 23 个补丁；配置时还需同级目录下的 XenonLive 检出，以及 CMake 和 Ninja；ppc/ 须先依据 config/CaseZero.toml 重新生成。","README 宣布项目已于 v1.1.3（2026 年 10 月）完结，在 Windows 和 Linux 上可单人及双人在线合作通关，并提高了等级上限，支持 60 fps、恢复的 PC 选项界面和超宽屏。Steam Deck 与 macOS 版本测试最少；macOS 版闲置约 15 分钟后可能卡死，流式加载时的物件闪现和招牌破洞问题仍未解决。维护者已停止开发，问题可能无人回复。","CI 在 Linux 和 Windows 上构建宿主运行时，并以占位映像做冒烟测试；所审提交的运行已成功。通关结果来自维护者报告。补丁说明称两套导出补丁可重现 v1.1.3 所用的重编译器检出。","项目代码采用 PolyForm Noncommercial 1.0.0，允许非商业使用、修改和分叉，但不允许出售；XenonRecomp 与 XenosRecomp 为 MIT 许可，游戏权利归 Capcom。THIRD_PARTY.md 称 UnleashedRecomp 仅作结构参考，未复制任何 GPL 代码。开发日志以 CLAUDE.md 提交。"],"targets":["game"],"url":"https://github.com/wivi514/Dead_Rising_2_Case_Zero_Xenon_Recomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/OpenRA/OpenRA/blob/e180e3225f3930272dd451917467631618f8976f/INSTALL.md","https://github.com/OpenRA/OpenRA/blob/e180e3225f3930272dd451917467631618f8976f/mods/ra-content/mod.yaml","https://github.com/OpenRA/OpenRA/commit/9657d697fc6465616a93f2ed39f48da2aa61139b","https://github.com/OpenRA/OpenRA/blob/e180e3225f3930272dd451917467631618f8976f/Makefile","https://github.com/OpenRA/OpenRA/blob/e180e3225f3930272dd451917467631618f8976f/.github/workflows/ci.yml","https://github.com/OpenRA/OpenRA/blob/e180e3225f3930272dd451917467631618f8976f/COPYING","https://github.com/OpenRA/OpenRA/blob/e180e3225f3930272dd451917467631618f8976f/AUTHORS","https://github.com/OpenRA/OpenRA/releases/tag/release-20250330"],"category":"reconstruction-cases","description_en":"Provides a C# engine for early Westwood real-time strategy games, with mods that reimagine Command & Conquer: Red Alert, Tiberian Dawn and Dune 2000. It loads the original games’ content through its own file-system, MiniYAML rules and Lua mission layers rather than running or recovering Westwood code. Gameplay and interface deliberately follow OpenRA’s own design, so it is not a faithful recreation of the original executables.","description_zh":"为早期 Westwood 即时战略游戏提供以 C# 编写的引擎，并以模组形式重新诠释 Command & Conquer: Red Alert、Tiberian Dawn 和 Dune 2000。它通过自己的文件系统、MiniYAML 规则和 Lua 任务层加载原游戏内容，而不是运行或恢复 Westwood 的代码。玩法和界面有意遵循 OpenRA 自身的设计，因此并非对原可执行文件的忠实重现。","entry_url":"https://awesomerea.org/resources/openra-engine-case/","entry_url_zh":"https://awesomerea.org/zh/resources/openra-engine-case/","evidence_url":"https://github.com/OpenRA/OpenRA/blob/e180e3225f3930272dd451917467631618f8976f/README.md","group":"cases","id":"openra-engine-case","json_url":"https://awesomerea.org/resources/openra-engine-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/openra-engine-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/openra-engine-case/index.md","name":"OpenRA: an engine reimplementation reimagining early Westwood RTS games","name_zh":"OpenRA：重新诠释早期 Westwood 即时战略游戏的引擎重新实现","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed bleed (development) snapshot postdates release-20250330 and carries a development version placeholder. The README lists the Red Alert, Tiberian Dawn and Dune 2000 mods as reimaginings, and INSTALL calls the Tiberian Sun mod experimental. No Westwood source code is recovered or reproduced.","INSTALL states that several files from the original game disks are needed; for Red Alert, the content manifest checks for archives such as allies.mix and conquer.mix. The content installers recognise original discs, The First Decade and the Steam or Origin editions, including the Remastered Collection, or install a minimal asset pack hosted by the project. Commit history shows that some supplementary sounds and icons under mods/*/bits came from Westwood games such as Sole Survivor, and the reviewed sources state no separate licence for them.","Building needs the .NET 10 SDK: make on Linux and macOS, or make.ps1 and dotnet on Windows. On x86_64 Linux the build fetches prebuilt native libraries through NuGet by default; other systems use system SDL 2, FreeType, OpenAL and Lua 5.1.","CI on Linux and Windows runs code checks, the OpenRA.Test unit tests, Lua script checks and MiniYAML validation for every mod.","COPYING applies GPL-3.0-or-later to OpenRA, and AUTHORS lists bundled libraries under their own terms, such as zlib for SDL2-CS and OpenAL-CS and MIT for Eluant. The README states that EA has not endorsed and does not support the project. Original game content keeps its own rights."],"requirements_zh":["所审阅的是 bleed（开发）分支快照，晚于 release-20250330，版本号为开发占位符。README 将 Red Alert、Tiberian Dawn 和 Dune 2000 模组列为重新诠释之作，INSTALL 称 Tiberian Sun 模组仍属实验性质。项目没有恢复或复现任何 Westwood 源码。","INSTALL 说明运行需要原游戏光盘中的若干文件；就 Red Alert 而言，内容清单会检查 allies.mix、conquer.mix 等归档。内容安装器可识别原版光盘、The First Decade 以及 Steam 或 Origin 版本（含 Remastered Collection），也可安装项目托管的最小素材包。提交历史显示，mods/*/bits 下部分补充音效和图标取自 Sole Survivor 等 Westwood 游戏，所审来源未说明这些文件另有何种许可。","构建需要 .NET 10 SDK：Linux 和 macOS 上使用 make，Windows 上使用 make.ps1 与 dotnet。在 x86_64 Linux 上，构建默认通过 NuGet 获取预编译的原生库；其他系统使用系统自带的 SDL 2、FreeType、OpenAL 和 Lua 5.1。","Linux 与 Windows 上的 CI 运行代码检查、OpenRA.Test 单元测试、Lua 脚本检查及各模组的 MiniYAML 校验。","COPYING 规定 OpenRA 采用 GPL-3.0-or-later，AUTHORS 列出的随附库各有条款，例如 SDL2-CS 与 OpenAL-CS 采用 zlib，Eluant 采用 MIT。README 声明 EA 未认可也不支持该项目。原游戏内容保留各自权利。"],"targets":["game"],"url":"https://github.com/OpenRA/OpenRA","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/rizinorg/rizin/blob/db112e55614b8635b42d7515a2790ca9fb4e5d05/README.md#L61-L110","https://github.com/rizinorg/rizin/blob/db112e55614b8635b42d7515a2790ca9fb4e5d05/meson.build#L1-L4","https://github.com/rizinorg/rizin/blob/db112e55614b8635b42d7515a2790ca9fb4e5d05/BUILDING.md","https://github.com/rizinorg/rizin/blob/db112e55614b8635b42d7515a2790ca9fb4e5d05/COPYING.LESSER","https://github.com/rizinorg/rizin/tree/db112e55614b8635b42d7515a2790ca9fb4e5d05/LICENSES","https://github.com/rizinorg/rizin/releases/tag/v0.9.1"],"category":"native-analysis","description_en":"Command-line reverse-engineering framework that began as a fork of radare2. The rizin shell analyzes and disassembles binaries, debugs programs and works as a scriptable hex editor, while rz-* tools cover binary-format information, assembly, diffing, hashing, pattern search and FLIRT signatures. The README lists dozens of architectures, bytecode formats and file formats from ELF, PE and Mach-O to dyld caches and BIOS/UEFI images; rzpipe scripts it from Python, Rust, Go and other languages. Cutter is the separate GUI built on it.","description_zh":"源自 radare2 分支的命令行逆向工程框架。rizin 交互环境可分析和反汇编二进制、调试程序，并可用作可脚本化的十六进制编辑器；rz-* 系列工具提供二进制格式信息、汇编、差异比较、哈希、模式搜索和 FLIRT 签名等功能。README 列出数十种架构、字节码格式和文件格式，从 ELF、PE、Mach-O 到 dyld 缓存和 BIOS/UEFI 镜像；可通过 rzpipe 用 Python、Rust、Go 等语言编写脚本。Cutter 是基于它的独立图形界面。","entry_url":"https://awesomerea.org/resources/rizin/","entry_url_zh":"https://awesomerea.org/zh/resources/rizin/","evidence_url":"https://github.com/rizinorg/rizin/blob/db112e55614b8635b42d7515a2790ca9fb4e5d05/README.md","group":"tools","id":"rizin","json_url":"https://awesomerea.org/resources/rizin/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/rizin/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rizin/index.md","name":"Rizin","name_zh":"Rizin 逆向工程框架","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.9.1, published 2026-06-29, with a static Linux x86_64 build, a macOS package, Windows installers and static/shared archives, Android arm, aarch64 and x86_64 archives and a source tarball. The reviewed dev branch already declares the unreleased v0.10.0.","Source builds use meson and ninja; meson.build requires meson 0.58.0+, although the README mentions 0.55.0. The README lists Windows 7+, macOS/iOS/iPadOS, GNU/Linux, the BSDs, Android, QNX, Solaris/Illumos, Haiku and GNU/Hurd hosts. rzpipe lives in a separate repository.","meson.build declares LGPL-3.0-only, with COPYING and COPYING.LESSER; the LICENSES directory holds further licenses used by individual files."],"requirements_zh":["审阅时最新版本为 v0.9.1，发布于 2026-06-29，提供 Linux x86_64 静态构建、macOS 安装包、Windows 安装程序及静态／共享库压缩包、Android arm、aarch64 和 x86_64 压缩包，以及源码包。所审阅的 dev 分支已标为尚未发布的 v0.10.0。","从源码构建使用 meson 和 ninja；meson.build 要求 meson 0.58.0+，而 README 提到的是 0.55.0。README 列出的宿主系统包括 Windows 7+、macOS/iOS/iPadOS、GNU/Linux、各 BSD、Android、QNX、Solaris/Illumos、Haiku 和 GNU/Hurd。rzpipe 位于独立仓库。","meson.build 声明 LGPL-3.0-only，并附 COPYING 和 COPYING.LESSER；LICENSES 目录还收录了个别文件所用的其他许可证。"],"targets":["binary","game"],"url":"https://github.com/rizinorg/rizin","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/miscusi-peek/cheatengine-mcp-bridge/blob/6bd7ce90479250a9b4b75e7944df9c105ecb2572/MCP_Server/requirements.txt","https://github.com/miscusi-peek/cheatengine-mcp-bridge/blob/6bd7ce90479250a9b4b75e7944df9c105ecb2572/MCP_Server/ce_tcp_relay.py","https://github.com/miscusi-peek/cheatengine-mcp-bridge/blob/6bd7ce90479250a9b4b75e7944df9c105ecb2572/MCP_Server/mcp_cheatengine.py","https://github.com/miscusi-peek/cheatengine-mcp-bridge/blob/6bd7ce90479250a9b4b75e7944df9c105ecb2572/LICENSE"],"category":"agent-mcp","description_en":"Connects MCP clients to Cheat Engine through a Lua bridge script and a Python MCP server, so an agent can inspect a process the user runs under Cheat Engine: memory reads and value scans, pointer-chain resolution, structure dissection, RTTI class names, disassembly, cross-references and hardware or DBVM breakpoints. Further tool groups write memory, inject DLLs or code, automate input and use Cheat Engine's kernel-mode driver. The README limits it to educational and research use and disclaims multiplayer cheating and Terms of Service violations.","description_zh":"通过 Lua 桥接脚本和 Python MCP 服务器把 MCP 客户端连接到 Cheat Engine，使智能体能够检查用户在 Cheat Engine 下运行的进程：读取内存与扫描数值、解析指针链、剖析结构体、识别 RTTI 类名、反汇编、查找交叉引用，以及设置硬件或 DBVM 断点。另有工具组可写入内存、注入 DLL 或代码、自动化输入，并调用 Cheat Engine 的内核模式驱动。README 将其限定于教学和研究用途，并声明不支持多人游戏作弊或违反服务条款的行为。","entry_url":"https://awesomerea.org/resources/cheatengine-mcp-bridge/","entry_url_zh":"https://awesomerea.org/zh/resources/cheatengine-mcp-bridge/","evidence_url":"https://github.com/miscusi-peek/cheatengine-mcp-bridge/blob/6bd7ce90479250a9b4b75e7944df9c105ecb2572/README.md","group":"agents","id":"cheatengine-mcp-bridge","json_url":"https://awesomerea.org/resources/cheatengine-mcp-bridge/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/cheatengine-mcp-bridge/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cheatengine-mcp-bridge/index.md","name":"Cheat Engine MCP Bridge","name_zh":"Cheat Engine MCP Bridge 进程内存分析桥接","record_type":"resource","relationship":"independent-agent-integration","requirements":["Windows with Cheat Engine; the bridge is loaded by executing MCP_Server/ce_mcp_bridge.lua from Cheat Engine, and the repository's bundled Lua reference documents Cheat Engine 7.6. The Python MCP server needs Python 3.10+, mcp>=1.28,<2 (the MCP SDK v2 API is not yet supported) and pywin32 for the native named-pipe mode, which is Windows-only. There are no GitHub releases; the README labels the code v12.0.0, and the reviewed main commit is dated 2026-08-14.","A TCP relay (ce_tcp_relay.py, default 127.0.0.1:9876) lets the MCP server run outside the Windows host. The README warns that anyone who can reach the relay can control the bridge and says to bind it to trusted interfaces only. run_command and shell_execute stay disabled in the Python MCP server unless CE_MCP_ALLOW_SHELL=1 is set at startup.","Before use, disable Settings → Extra → Query memory region routines in Cheat Engine; the README warns that leaving it enabled causes CLOCK_WATCHDOG_TIMEOUT blue screens with DBVM or anti-cheat software. DBVM tools need DBVM enabled, and kernel-mode tools rely on Cheat Engine's DBK driver.","Memory-write, allocation, injection, process-creation, window-message and key-press tools change the target or the desktop session. MIT. The project's test script needs a live Cheat Engine session."],"requirements_zh":["需要 Windows 和 Cheat Engine；在 Cheat Engine 中执行 MCP_Server/ce_mcp_bridge.lua 即可加载桥接，仓库附带的 Lua 参考文档对应 Cheat Engine 7.6。Python MCP 服务器需要 Python 3.10+、mcp>=1.28,<2（尚不支持 MCP SDK v2 API），原生命名管道模式还需 pywin32，且仅限 Windows。仓库没有 GitHub 发布版本；README 将代码标为 v12.0.0，所审阅的 main 提交日期为 2026-08-14。","TCP 中继（ce_tcp_relay.py，默认 127.0.0.1:9876）可让 MCP 服务器在 Windows 主机之外运行。README 警告任何能访问该中继的人都能控制桥接，并要求只绑定可信的网络接口。除非启动时设置 CE_MCP_ALLOW_SHELL=1，Python MCP 服务器中的 run_command 与 shell_execute 均保持禁用。","使用前须在 Cheat Engine 中关闭 Settings → Extra → Query memory region routines；README 警告该选项开启时，与 DBVM 或反作弊软件冲突会导致 CLOCK_WATCHDOG_TIMEOUT 蓝屏。DBVM 工具需要先启用 DBVM，内核模式工具依赖 Cheat Engine 的 DBK 驱动。","写内存、分配内存、注入、创建进程、发送窗口消息和模拟按键等工具会改变目标进程或桌面会话。采用 MIT 许可。项目自带的测试脚本需要实际运行的 Cheat Engine 会话。"],"targets":["binary","game"],"url":"https://github.com/miscusi-peek/cheatengine-mcp-bridge","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/wivi514/Dead_Rising_2_Case_West_Xenon_Recomp/blob/cb7dc0f46cfc71961e37f8a20b07ad143a3e161a/THIRD_PARTY.md","https://github.com/wivi514/Dead_Rising_2_Case_West_Xenon_Recomp/blob/cb7dc0f46cfc71961e37f8a20b07ad143a3e161a/LICENSE","https://github.com/wivi514/Dead_Rising_2_Case_West_Xenon_Recomp/blob/cb7dc0f46cfc71961e37f8a20b07ad143a3e161a/.github/workflows/build.yml","https://github.com/wivi514/Dead_Rising_2_Case_West_Xenon_Recomp/blob/cb7dc0f46cfc71961e37f8a20b07ad143a3e161a/tools/ci/regen_patches.sh","https://github.com/wivi514/Dead_Rising_2_Case_West_Xenon_Recomp/blob/cb7dc0f46cfc71961e37f8a20b07ad143a3e161a/config/CaseWest.toml","https://github.com/wivi514/Dead_Rising_2_Case_West_Xenon_Recomp/blob/cb7dc0f46cfc71961e37f8a20b07ad143a3e161a/runtime/CMakeLists.txt","https://github.com/wivi514/Dead_Rising_2_Case_West_Xenon_Recomp/blob/cb7dc0f46cfc71961e37f8a20b07ad143a3e161a/tools/gen_kbm_icons.py","https://github.com/wivi514/Dead_Rising_2_Case_West_Xenon_Recomp/actions/runs/38533020839"],"category":"reconstruction-cases","description_en":"Builds a native Windows, Linux, Steam Deck and Apple Silicon port of the XBLA epilogue Dead Rising 2: Case West by statically recompiling its Xbox 360 code with patched XenonRecomp and translating its shaders with patched XenosRecomp. It shares most of its runtime with the author’s separate Case Zero port, executing the console GPU command stream on Vulkan with XMA audio and keyboard/mouse input. Completion and platform results are project-reported.","description_zh":"使用打过补丁的 XenonRecomp 静态重编译 Xbox 360 代码，并用打过补丁的 XenosRecomp 转换着色器，为 XBLA 尾声篇 Dead Rising 2: Case West 构建可在 Windows、Linux、Steam Deck 和 Apple Silicon Mac 上运行的原生移植。它与作者另一个 Case Zero 移植共用大部分运行时，在 Vulkan 上执行主机 GPU 命令流，并提供 XMA 音频和键鼠输入。通关情况与各平台结果均为项目报告。","entry_url":"https://awesomerea.org/resources/dead-rising-2-case-west-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/dead-rising-2-case-west-recomp-case/","evidence_url":"https://github.com/wivi514/Dead_Rising_2_Case_West_Xenon_Recomp/blob/cb7dc0f46cfc71961e37f8a20b07ad143a3e161a/README.md","group":"cases","id":"dead-rising-2-case-west-recomp-case","json_url":"https://awesomerea.org/resources/dead-rising-2-case-west-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/dead-rising-2-case-west-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dead-rising-2-case-west-recomp-case/index.md","name":"Dead Rising 2: Case West — a sibling Xbox 360 XBLA static recompilation port","name_zh":"Dead Rising 2: Case West：同系列的 Xbox 360 XBLA 静态重编译移植","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","scope","testing","license"],"requirements":["Requires the user’s own XBLA package for title 58410B00 (about 1.2 GB, no file extension) in assets/package; the first run unpacks it and prepares the 1,322 shaders and the keyboard prompt art locally. No game data is committed or shipped: assets/ and the ppc/ C++ generated from the retail executable are gitignored, and the committed key-cap chips are the project’s own art.","Releases need a Vulkan 1.3 GPU with Windows 10+ x86-64, Linux x86-64 with glibc 2.35+, the Steam Deck archive, or macOS 13+ on Apple Silicon; Intel Macs are unsupported, and about 3 GB is needed after unpacking. Source builds apply the two combined patches in tools/ci to hedge-dev XenonRecomp and XenosRecomp at the base commits pinned in the CI workflow, need a sibling XenonLive checkout, CMake and Ninja, and first regenerate ppc/ from config/CaseWest.toml.","The README declares v1.1.2 (October 2026) the final build: single-player is completable start to finish, and two-player online co-op works only when started from the XenonLive launcher. It reports 58,345 recompiled PowerPC functions, 60 fps, an in-game graphics menu and ultrawide and 16:10 support. Shading differences and an AMD-only black square remain known issues, and the Steam Deck build has not been tested on Deck hardware.","CI is meant to build the host runtime on Linux and Windows against a stub ppc/ tree, but its run for the reviewed commit skipped both build jobs because the XenonLive deploy key was unavailable. Playthroughs and fixes imported from Case Zero are the maintainer’s reports.","Project code is under PolyForm Noncommercial 1.0.0, which permits noncommercial use, modification and forks but not sale; XenonRecomp and XenosRecomp are MIT, and Capcom retains the game’s rights. THIRD_PARTY.md was copied from the Case Zero port and says no UnleashedRecomp GPL code is used. The development journal is committed as CLAUDE.md."],"requirements_zh":["需使用者自有的游戏 58410B00 的 XBLA 游戏包（约 1.2 GB，无扩展名），放入 assets/package；首次运行会在本地解包，并准备 1,322 个着色器及键盘提示贴图。仓库与发布包均不含游戏数据：assets/ 和由零售版可执行文件生成的 ppc/ C++ 代码都被 git 忽略，仓库中的键帽贴图是项目自绘的美术。","运行发布版需支持 Vulkan 1.3 的显卡，以及 Windows 10+ x86-64、glibc 2.35+ 的 Linux x86-64、Steam Deck 专用包或 Apple Silicon 上的 macOS 13+；不支持 Intel Mac，解包后约需 3 GB 空间。从源码构建需将 tools/ci 中的两个合并补丁应用到 CI 工作流所固定基准提交的 hedge-dev XenonRecomp 与 XenosRecomp 上，还需同级目录下的 XenonLive 检出、CMake 和 Ninja，并先依据 config/CaseWest.toml 重新生成 ppc/。","README 宣布 v1.1.2（2026 年 10 月）为最终版本：单人模式可从头玩到尾，双人在线合作只有从 XenonLive 启动器启动时才可用。README 报告共静态重编译 58,345 个 PowerPC 函数，支持 60 fps、游戏内图形菜单以及超宽屏和 16:10 显示。部分着色差异和仅见于 AMD 显卡的黑色方块仍是已知问题，Steam Deck 版也未在实机上测试。","CI 本应以占位 ppc/ 代码树在 Linux 和 Windows 上构建宿主运行时，但所审提交的运行因缺少 XenonLive 部署密钥而跳过了两个构建任务。通关结果以及从 Case Zero 移植过来的修复均为维护者报告。","项目代码采用 PolyForm Noncommercial 1.0.0，允许非商业使用、修改和分叉，但不允许出售；XenonRecomp 与 XenosRecomp 为 MIT 许可，游戏权利归 Capcom。THIRD_PARTY.md 复制自 Case Zero 移植，并称未使用 UnleashedRecomp 的 GPL 代码。开发日志以 CLAUDE.md 提交。"],"targets":["game"],"url":"https://github.com/wivi514/Dead_Rising_2_Case_West_Xenon_Recomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/decompiler-explorer/decompiler-explorer/tree/a7b8381b610478f67b6dd35b6812878f08636c54/runners/decompiler","https://github.com/decompiler-explorer/decompiler-explorer/blob/a7b8381b610478f67b6dd35b6812878f08636c54/runners/decompiler/tools/README.md","https://github.com/decompiler-explorer/decompiler-explorer/blob/a7b8381b610478f67b6dd35b6812878f08636c54/templates/explorer/faq.html#L69-L112","https://github.com/decompiler-explorer/decompiler-explorer/blob/a7b8381b610478f67b6dd35b6812878f08636c54/LICENSE.txt","https://dogbolt.org/faq"],"category":"native-analysis","description_en":"Web service at dogbolt.org that runs one small uploaded executable through many decompilers and shows their C-like output side by side, described as Compiler Explorer in reverse. The pinned source has runners for angr, Binary Ninja, Boomerang, dewolf, Ghidra, Hex-Rays, Kuna, REC Studio, Reko, Relyze, RetDec, rev.ng and Snowman, which helps compare how different decompilers render the same code.","description_zh":"位于 dogbolt.org 的网络服务：将上传的单个小型可执行文件交给多款反编译器处理，并排显示它们输出的类 C 代码，自称“反向的 Compiler Explorer”。所固定版本的源码包含 angr、Binary Ninja、Boomerang、dewolf、Ghidra、Hex-Rays、Kuna、REC Studio、Reko、Relyze、RetDec、rev.ng 和 Snowman 的运行器，便于比较不同反编译器如何呈现同一段代码。","entry_url":"https://awesomerea.org/resources/decompiler-explorer/","entry_url_zh":"https://awesomerea.org/zh/resources/decompiler-explorer/","evidence_url":"https://github.com/decompiler-explorer/decompiler-explorer/blob/a7b8381b610478f67b6dd35b6812878f08636c54/README.md","group":"tools","id":"decompiler-explorer","json_url":"https://awesomerea.org/resources/decompiler-explorer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/decompiler-explorer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/decompiler-explorer/index.md","name":"Decompiler Explorer","name_zh":"Decompiler Explorer 反编译器对比服务","record_type":"resource","relationship":"foundation","requirements":["The public service saves every submitted binary and makes it available to the authors of the included decompilers, so do not upload confidential, proprietary or other binaries you may not share. There is intentionally no public automation API; automating comparisons requires terms from the respective license holders.","Self-hosting needs Python 3.8+, pipenv, Docker and docker-compose; scripts/dce.py builds the decompiler images and starts the service. Binary Ninja and Hex-Rays images need the operator's own binaries and license files. The FAQ forbids public instances that include the commercial tools and says private instances depend on each vendor's license terms.","MIT license (Vector 35 Inc.); no tagged releases, so this entry pins the reviewed master commit. As the FAQ notes, decompiler results vary with compiler, settings, language, architecture and complexity."],"requirements_zh":["公共服务会保存每个提交的二进制，并提供给所含反编译器的作者，因此不要上传机密、专有或其他不可分享的二进制。服务刻意不提供公开的自动化 API；如需自动化比较，须向相应许可证持有方取得使用条款。","自行部署需要 Python 3.8+、pipenv、Docker 和 docker-compose；scripts/dce.py 负责构建反编译器镜像并启动服务。Binary Ninja 和 Hex-Rays 镜像需要部署者自备二进制和许可证文件。FAQ 禁止运行包含商业工具的公开实例，私有实例是否允许则取决于各厂商的许可条款。","采用 MIT 许可（Vector 35 Inc.）；仓库没有打标签的版本，因此本条目固定到所审阅的 master 分支提交。FAQ 指出反编译效果因编译器、编译设置、语言、架构和复杂度而异。"],"targets":["binary"],"url":"https://dogbolt.org","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/bx33661/Wireshark-MCP/blob/0e1b6595a2dcfe097133deb1c0c3128fb7a110d4/src/wireshark_mcp/tools/advanced.py","https://github.com/bx33661/Wireshark-MCP/blob/0e1b6595a2dcfe097133deb1c0c3128fb7a110d4/src/wireshark_mcp/server.py","https://github.com/bx33661/Wireshark-MCP/blob/0e1b6595a2dcfe097133deb1c0c3128fb7a110d4/docs/security-hardening-v3.md","https://github.com/bx33661/Wireshark-MCP/blob/0e1b6595a2dcfe097133deb1c0c3128fb7a110d4/pyproject.toml","https://github.com/bx33661/Wireshark-MCP/blob/0e1b6595a2dcfe097133deb1c0c3128fb7a110d4/LICENSE","https://github.com/bx33661/Wireshark-MCP/releases/tag/v3.1.0","https://pypi.org/project/wireshark-mcp/3.1.0/"],"category":"agent-mcp","description_en":"MCP server that wraps tshark, and optionally other Wireshark command-line tools, so agents can query saved captures through Wireshark's dissectors: packet lists and details, stream following, arbitrary field extraction, protocol hierarchies and conversations, decode-as rules for non-standard ports, protocol preferences, TLS and WPA decryption with user-supplied keys, and one tool that applies preset fields and filters for 25 protocols such as Modbus, S7comm, MQTT, Zigbee and BLE. Separate security-heuristic, live-capture and capture-editing tools sit beside the dissection tools.","description_zh":"封装 tshark 及可选的其他 Wireshark 命令行工具的 MCP 服务器，使智能体能借助 Wireshark 的解析器查询已保存的抓包文件：数据包列表与详情、流追踪、任意字段提取、协议层级与会话统计、针对非标准端口的 decode-as 规则、协议首选项、使用用户提供的密钥进行 TLS 与 WPA 解密，以及一个为 Modbus、S7comm、MQTT、Zigbee、BLE 等 25 种协议套用预设字段和过滤器的工具。解析类工具之外，另有安全启发式检测、实时抓包和抓包文件编辑等独立工具。","entry_url":"https://awesomerea.org/resources/wireshark-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/wireshark-mcp/","evidence_url":"https://github.com/bx33661/Wireshark-MCP/blob/0e1b6595a2dcfe097133deb1c0c3128fb7a110d4/README.md","group":"agents","id":"wireshark-mcp","json_url":"https://awesomerea.org/resources/wireshark-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/wireshark-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wireshark-mcp/index.md","name":"Wireshark MCP","name_zh":"Wireshark MCP 基于 tshark 的协议解析服务器","record_type":"resource","relationship":"independent-agent-integration","requirements":["Python 3.10+ and Wireshark with tshark on PATH; capinfos, mergecap, editcap, dumpcap and text2pcap are auto-detected optional extras, and live capture needs the platform's capture drivers and permissions. Install from PyPI (wireshark-mcp 3.1.0, built on MCP Python SDK 2.x) with its client installer, or through the Claude Code or Codex plugin route with uv. Reviewed at the v3.1.0 tag, released 2026-10-18 at the main head; the project changes quickly.","stdio is the default transport. SSE and streamable HTTP bind 127.0.0.1 by default and are unauthenticated, so the server refuses a non-loopback bind unless --allow-insecure-http is passed behind a trusted authenticated TLS proxy. The 11 file-writing tools (live capture, merge, filter-save, editcap, text2pcap, frame and object export) fail closed until WIRESHARK_MCP_ALLOWED_DIRS names existing directories; --profile analysis or core advertises fewer tools.","Protocol results come from Wireshark's existing dissectors and preset field lists; decode-as rules and preferences only redirect or configure those dissectors, and the server does not infer unknown message formats. Credential, scan, tunnelling, beaconing, exfiltration and YARA tools are security heuristics rather than protocol reverse engineering, and their findings need analyst review.","MIT; Wireshark and its tools keep their own GPL terms."],"requirements_zh":["需要 Python 3.10+，以及 tshark 位于 PATH 中的 Wireshark；capinfos、mergecap、editcap、dumpcap 和 text2pcap 为自动检测的可选组件，实时抓包还需要所在平台的抓包驱动与权限。可从 PyPI 安装（wireshark-mcp 3.1.0，基于 MCP Python SDK 2.x）并使用其客户端安装器，也可借助 uv 走 Claude Code 或 Codex 插件安装路线。审阅对象为 v3.1.0 标签，于 2026-10-18 在 main 分支最新提交上发布；项目更新很快。","默认传输方式为 stdio。SSE 和 streamable HTTP 默认绑定 127.0.0.1 且没有认证，因此除非在可信且带认证的 TLS 代理之后传入 --allow-insecure-http，服务器会拒绝绑定非回环地址。11 个写文件工具（实时抓包、合并、过滤保存、editcap、text2pcap、帧导出与对象导出）在 WIRESHARK_MCP_ALLOWED_DIRS 指定已存在的目录之前一律拒绝执行；--profile analysis 或 core 可减少对外公布的工具。","协议结果来自 Wireshark 现有的解析器和预设字段列表；decode-as 规则与协议首选项只是重定向或配置这些解析器，服务器不会推断未知的报文格式。凭据扫描、端口扫描、隧道、信标、数据外传和 YARA 等工具属于安全启发式检测，而非协议逆向，其结果需要分析者复核。","采用 MIT 许可；Wireshark 及其工具保留各自的 GPL 条款。"],"targets":["protocol"],"url":"https://github.com/bx33661/Wireshark-MCP","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/TekRantGaming/simpsons-wrestling-recompiled/blob/1aaee1a999f4dcc60dbf965a9ed9944373528469/docs/TECHNICAL.md","https://github.com/TekRantGaming/simpsons-wrestling-recompiled/blob/1aaee1a999f4dcc60dbf965a9ed9944373528469/game.toml","https://github.com/TekRantGaming/simpsons-wrestling-recompiled/blob/1aaee1a999f4dcc60dbf965a9ed9944373528469/.gitmodules","https://github.com/TekRantGaming/simpsons-wrestling-recompiled/blob/1aaee1a999f4dcc60dbf965a9ed9944373528469/framework_pins.txt","https://github.com/TekRantGaming/simpsons-wrestling-recompiled/blob/1aaee1a999f4dcc60dbf965a9ed9944373528469/mods/preloaded/README.md","https://github.com/TekRantGaming/psxrecomp/blob/03d383fe855c25edc52aabdee750ffc12f3d8bdd/README.md","https://github.com/TekRantGaming/psxrecomp/blob/03d383fe855c25edc52aabdee750ffc12f3d8bdd/LICENSE"],"category":"reconstruction-cases","description_en":"Translates the PlayStation game’s MIPS code to C with a pinned psxrecomp fork and builds Windows and Linux programs on its hardware-modelling runtime, with a launcher and a game-specific plugin. Without patching game code, the plugin adds 16:9 matches, 60 FPS by raising the emulated CPU clock and rescaling movement, intro skipping and unlocks. The user’s own NTSC-U disc image is required, and the measurements are author-reported.","description_zh":"借助固定版本的 psxrecomp 分支，将这款 PlayStation 游戏的 MIPS 代码转换为 C，并基于其模拟硬件行为的运行时构建 Windows 与 Linux 程序，另附启动器和专用插件。插件在不修补游戏代码的前提下，实现比赛中的 16:9 画面、通过提高模拟 CPU 频率并修正移动量达到 60 FPS、跳过片头及全部解锁。需使用者自备 NTSC-U 光盘镜像；测量结果为作者报告。","entry_url":"https://awesomerea.org/resources/simpsons-wrestling-recompiled-case/","entry_url_zh":"https://awesomerea.org/zh/resources/simpsons-wrestling-recompiled-case/","evidence_url":"https://github.com/TekRantGaming/simpsons-wrestling-recompiled/blob/1aaee1a999f4dcc60dbf965a9ed9944373528469/README.md","group":"cases","id":"simpsons-wrestling-recompiled-case","json_url":"https://awesomerea.org/resources/simpsons-wrestling-recompiled-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/simpsons-wrestling-recompiled-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/simpsons-wrestling-recompiled-case/index.md","name":"The Simpsons Wrestling Recompiled: a psxrecomp PlayStation static recompilation","name_zh":"The Simpsons Wrestling Recompiled：基于 psxrecomp 的 PlayStation 静态重编译","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed master branch (VERSION 1.0.0, matching the v1.0.0 release) is a static recompilation, not a decompilation: psxrecomp translates SLUS_012.27’s R3000A code into a local generated/ tree using Ghidra-derived function seeds. psxrecomp is a pinned submodule from TekRantGaming’s fork of RetroPortingToolKit/psxrecomp, whose README describes a hardware-accurate runtime with bundled OpenBIOS as the default, so a retail BIOS is not normally required. Known issues include misplaced widescreen pause-screen HUD elements and uneven experimental 120 FPS.","The user supplies The Simpsons Wrestling (PlayStation, North America, SLUS-01227) as a .cue with its .bin. game.toml records the expected data-track size and hashes; the launcher checks the disc before play and reads it in place. Building also needs that disc to generate the C code. README states that the repository holds no game code and that the download contains no game files.","Play needs 64-bit Windows 10/11 or 64-bit Linux with glibc 2.38, plus OpenGL 3.3. Windows builds use Visual Studio 2022 Build Tools, CMake, Ninja and the bundled clang-cl with ThinLTO and a committed PGO profile; Linux builds use gcc with X11, Wayland, GL, ALSA, PulseAudio and udev development packages. The launcher is a separate SDL2 program from the TRG Launcher submodule, while the runtime uses SDL3.","TECHNICAL.md reports attract-demo matches in two arenas at 1.00x speed and a steady 60 FPS on one Ryzen 7 7800X3D/RTX 4070 Ti PC, plus jump-height and walking-distance comparisons with stock timing. Linux was checked only under WSL2; the AppImage is untested on native Linux and Steam Deck. These are author measurements.","GitHub detects no license and the reviewed tree has no LICENSE file, so reuse terms for the project’s own code are not stated; the pinned psxrecomp fork carries the PolyForm Noncommercial 1.0.0 license. The game and its trademarks remain with Fox Interactive, Activision and the other named owners. README discloses that the port was made almost entirely with Claude Code under the owner’s direction."],"requirements_zh":["所审阅的 master 分支（VERSION 1.0.0，与 v1.0.0 发布一致）是静态重编译，而非反编译：psxrecomp 借助来自 Ghidra 的函数种子，将 SLUS_012.27 的 R3000A 代码转换到本地 generated/ 目录。psxrecomp 以子模块形式固定在 TekRantGaming 对 RetroPortingToolKit/psxrecomp 的分支上，其 README 描述了硬件精确的运行时，并默认使用随附的 OpenBIOS，因此通常无需零售版 BIOS。已知问题包括宽屏暂停画面的 HUD 元素错位，以及实验性 120 FPS 下画面不够均匀。","使用者需自备 The Simpsons Wrestling（PlayStation 北美版，SLUS-01227）的 .cue 及对应 .bin 文件。game.toml 记录了数据轨道的预期大小和哈希；启动器在游玩前检查光盘，并直接读取原位置的镜像。构建同样需要该光盘来生成 C 代码。README 称仓库不含游戏代码，下载包也不含游戏文件。","运行需 64 位 Windows 10／11，或 glibc 2.38 的 64 位 Linux，以及 OpenGL 3.3。Windows 构建使用 Visual Studio 2022 生成工具、CMake、Ninja 和随附的 clang-cl，并启用 ThinLTO 及仓库中提交的 PGO 配置文件；Linux 构建使用 gcc 及 X11、Wayland、GL、ALSA、PulseAudio、udev 开发包。启动器是来自 TRG Launcher 子模块的独立 SDL2 程序，运行时则使用 SDL3。","TECHNICAL.md 报告在一台 Ryzen 7 7800X3D／RTX 4070 Ti PC 上，两个场馆的演示比赛以 1.00 倍速度稳定运行在 60 FPS，并给出与原版计时相比的跳跃高度和行走距离。Linux 仅在 WSL2 下检查过；AppImage 尚未在原生 Linux 或 Steam Deck 上测试。这些是作者测量结果。","GitHub 未检测到许可，所审阅的源码树中也没有 LICENSE 文件，因此项目自身代码的再使用条款未予说明；固定版本的 psxrecomp 分支采用 PolyForm Noncommercial 1.0.0 许可。游戏及其商标仍归 Fox Interactive、Activision 及其他列明的权利人所有。README 披露该移植几乎完全借助 Claude Code 完成，由仓库所有者指导。"],"targets":["game"],"url":"https://github.com/TekRantGaming/simpsons-wrestling-recompiled","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/OpenRCT2/OpenRCT2/blob/53bbc400e28be44d3c2e56fa514d5f65b61a64d4/CMakeLists.txt","https://github.com/OpenRCT2/OpenRCT2/blob/53bbc400e28be44d3c2e56fa514d5f65b61a64d4/assets.json","https://github.com/OpenRCT2/OpenRCT2/blob/53bbc400e28be44d3c2e56fa514d5f65b61a64d4/docs/save-format.md","https://github.com/OpenRCT2/OpenRCT2/blob/53bbc400e28be44d3c2e56fa514d5f65b61a64d4/.github/workflows/ci.yml","https://github.com/OpenRCT2/OpenRCT2/blob/53bbc400e28be44d3c2e56fa514d5f65b61a64d4/test/tests/ReplayTests.cpp","https://github.com/OpenRCT2/OpenRCT2/blob/53bbc400e28be44d3c2e56fa514d5f65b61a64d4/test/tests/S6ImportExportTests.cpp","https://github.com/OpenRCT2/OpenRCT2/blob/53bbc400e28be44d3c2e56fa514d5f65b61a64d4/licence.txt","https://github.com/OpenRCT2/OpenRCT2/releases/tag/v0.5.6"],"category":"reconstruction-cases","description_en":"Re-implements RollerCoaster Tycoon 2, originally written in x86 assembly, as a C++ engine that runs on the original game’s data. It loads RCT2 saves and scenarios, and RCT1 scenarios when those files are present, while saving to its own documented park format. Modern-platform support, interface and AI changes, higher limits and multiplayer are deliberate extensions, not reproductions of the original.","description_zh":"以 C++ 引擎重新实现原本用 x86 汇编编写的 RollerCoaster Tycoon 2，并在原游戏数据上运行。它可载入 RCT2 存档和场景，具备相应文件时也能载入 RCT1 场景，而保存时使用自己有文档说明的乐园格式。现代平台支持、界面与 AI 改动、更高上限和多人游戏都是有意扩展，并非对原版的复现。","entry_url":"https://awesomerea.org/resources/openrct2-engine-case/","entry_url_zh":"https://awesomerea.org/zh/resources/openrct2-engine-case/","evidence_url":"https://github.com/OpenRCT2/OpenRCT2/blob/53bbc400e28be44d3c2e56fa514d5f65b61a64d4/readme.md","group":"cases","id":"openrct2-engine-case","json_url":"https://awesomerea.org/resources/openrct2-engine-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/openrct2-engine-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/openrct2-engine-case/index.md","name":"OpenRCT2: an open re-implementation of RollerCoaster Tycoon 2","name_zh":"OpenRCT2：RollerCoaster Tycoon 2 的开源重新实现","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed develop snapshot follows the v0.5.6 release of 2026-10-10. The README says OpenRCT2 attempts to provide everything from RCT2 plus many improvements, and restores some RollerCoaster Tycoon mechanics, so intentional differences are part of the design. No original source is recovered.","Playing requires the user’s own RollerCoaster Tycoon 2 files; the README names Steam and GOG.com editions. Original RollerCoaster Tycoon files are optional and enable its scenarios. By default, installation downloads OpenRCT2’s own objects, title sequences, OpenSoundEffects and OpenMusic packs, and test builds also fetch replays, each pinned by SHA-256.","Source builds use CMake 3.24+ and a C++20 compiler, with wiki guides for Linux, macOS, Windows, WSL and MSYS2 MinGW and an option to force 32-bit builds. Portable builds, installers, a launcher and several Linux and BSD packages are listed for players.","CI checks formatting, builds on several platforms and runs the GoogleTest suite, including replay, RCT2 save import/export, ride-rating, pathfinding and scenario-decryption tests on project test data. These guard OpenRCT2’s own behaviour and file compatibility.","licence.txt applies GPL-3.0-or-later to OpenRCT2; original game data and purchased editions keep their own rights."],"requirements_zh":["所审阅的 develop 分支快照晚于 2026-10-10 发布的 v0.5.6。README 称 OpenRCT2 力求提供 RCT2 的全部内容并加入许多改进，还恢复了部分 RollerCoaster Tycoon 机制，因此与原版的有意差异是设计的一部分。没有恢复任何原始源码。","运行需要使用者自备 RollerCoaster Tycoon 2 文件；README 提到 Steam 和 GOG.com 版本。初代 RollerCoaster Tycoon 文件为可选项，用于游玩其场景。安装过程默认下载 OpenRCT2 自有的对象、标题动画、OpenSoundEffects 与 OpenMusic 资源包，启用测试的构建还会获取回放文件，均以 SHA-256 固定。","源码构建使用 CMake 3.24+ 和 C++20 编译器，wiki 提供 Linux、macOS、Windows、WSL 及 MSYS2 MinGW 的构建指南，并有强制 32 位构建的选项。面向玩家列出了便携版、安装包、启动器以及多个 Linux 和 BSD 软件包。","CI 检查代码格式、在多个平台构建，并运行 GoogleTest 测试套件，包括基于项目测试数据的回放、RCT2 存档导入导出、设施评分、寻路和场景解密测试。这些测试保障 OpenRCT2 自身行为与文件兼容性。","licence.txt 规定 OpenRCT2 采用 GPL-3.0-or-later；原游戏数据及购买的版本保留各自权利。"],"targets":["game"],"url":"https://github.com/OpenRCT2/OpenRCT2","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/GensokyoClub/th06/blob/e840ab447f38579c2ea877e16a5d91a49adf016e/reccmp-project.yml","https://github.com/GensokyoClub/th06/blob/e840ab447f38579c2ea877e16a5d91a49adf016e/resources/progress.svg","https://github.com/GensokyoClub/th06/blob/e840ab447f38579c2ea877e16a5d91a49adf016e/scripts/create_devenv.py","https://github.com/GensokyoClub/th06/blob/e840ab447f38579c2ea877e16a5d91a49adf016e/scripts/build.py","https://github.com/GensokyoClub/th06/blob/e840ab447f38579c2ea877e16a5d91a49adf016e/scripts/extract_icon.py","https://github.com/GensokyoClub/th06/blob/e840ab447f38579c2ea877e16a5d91a49adf016e/.github/workflows/ci.yml","https://github.com/GensokyoClub/th06/blob/e840ab447f38579c2ea877e16a5d91a49adf016e/.github/workflows/compare.yml","https://github.com/GensokyoClub/th06/blob/e840ab447f38579c2ea877e16a5d91a49adf016e/tests/test_Pbg3Archive.cpp","https://github.com/GensokyoClub/th06/blob/e840ab447f38579c2ea877e16a5d91a49adf016e/LICENSE"],"category":"reconstruction-cases","description_en":"Reconstructs C++ source for the Windows executable of Touhou 6: Embodiment of Scarlet Devil version 1.02h, aiming at an exact rebuild with the original Visual Studio .NET 2002 and DirectX 8 toolchain. reccmp and objdiff compare the rebuilt binary with the user’s original executable function by function. The committed progress badge reports every function implemented but 98.03% byte accuracy, so whole-binary identity is not claimed.","description_zh":"为 Touhou 6：东方红魔乡 1.02h 版的 Windows 可执行文件重建 C++ 源码，目标是用原版 Visual Studio .NET 2002 与 DirectX 8 工具链精确重新构建。reccmp 和 objdiff 将重建的二进制与使用者自备的原可执行文件逐函数比较。仓库内的进度徽章报告函数已全部实现、字节准确率为 98.03%，因此不主张整个二进制完全一致。","entry_url":"https://awesomerea.org/resources/th06-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/th06-decomp-case/","evidence_url":"https://github.com/GensokyoClub/th06/blob/e840ab447f38579c2ea877e16a5d91a49adf016e/README.md","group":"cases","id":"th06-decomp-case","json_url":"https://awesomerea.org/resources/th06-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/th06-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/th06-decomp-case/index.md","name":"Touhou 6: reconstructing Embodiment of Scarlet Devil 1.02h source","name_zh":"Touhou 6：重建东方红魔乡 1.02h 版源码","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["README states the aim of perfectly reconstructing the 1.02h source; the committed, mutable progress badge reports 100.0% implemented and 98.03% byte accuracy for TH06.EXE. README points to a separate portable branch for Linux and modern Windows. The team’s Ghidra work is exported as XML to the companion happyhavoc/th06-re repository.","Supply your own original 東方紅魔郷.exe version 1.02h matching the SHA-256 in README, copied to resources/th06.exe; reccmp checks the same hash, and the build extracts the game icon from that file. The repository contains no game executable or data; the comparison workflow fetches the original binary from a secret-configured URL.","Builds need Python 3.4+, plus msiextract and Wine outside Windows (CrossOver is suggested on macOS); aria2c is optional. scripts/create_devenv.py downloads Visual Studio .NET 2002 and the DirectX 8.0 SDK from web archives, along with ninja, objdiff, Ghidra and helper tools, and scripts/build.py generates and runs a ninja build.","Contributors diff with reccmp, which reports per-function accuracy of the rebuilt executable against the original as an HTML report. CI builds on Windows and compares an objdiff build with objects delinked from the original through Ghidra; a small munit suite reads the user’s game archive. Badge figures are project-generated.","The repository is dedicated under CC0 1.0; the original game, the downloaded Microsoft toolchain and third-party tools keep their own terms."],"requirements_zh":["README 表明目标是完美重建 1.02h 版源码；仓库内可变的进度徽章报告 TH06.EXE 已 100.0% 实现、字节准确率 98.03%。README 另指向用于 Linux 和新版 Windows 的独立 portable 分支。团队的 Ghidra 成果以 XML 形式导出到配套仓库 happyhavoc/th06-re。","需自备与 README 中 SHA-256 一致的原版 1.02h 东方紅魔郷.exe，并复制为 resources/th06.exe；reccmp 校验同一哈希，构建也会从该文件提取游戏图标。仓库不含游戏可执行文件或数据；比较工作流通过机密配置的 URL 获取原始二进制。","构建需要 Python 3.4 及以上；非 Windows 平台还需 msiextract 和 Wine（macOS 建议使用 CrossOver）；aria2c 为可选。scripts/create_devenv.py 从网络存档下载 Visual Studio .NET 2002 和 DirectX 8.0 SDK，并获取 ninja、objdiff、Ghidra 等辅助工具；scripts/build.py 生成并运行 ninja 构建。","贡献者使用 reccmp 比较差异，它以 HTML 报告给出重建可执行文件相对原文件的逐函数准确率。CI 在 Windows 上构建，并将 objdiff 构建与通过 Ghidra 从原文件拆出的目标文件比较；一套小型 munit 测试会读取使用者的游戏资源包。徽章数字由项目生成。","仓库以 CC0 1.0 释出；原游戏、下载的 Microsoft 工具链及第三方工具各有条款。"],"targets":["game"],"url":"https://github.com/GensokyoClub/th06","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/openbin-ai/binny/blob/000b6aca8c9d266b38252470102ac16c98575cd8/main.go","https://github.com/openbin-ai/binny/blob/000b6aca8c9d266b38252470102ac16c98575cd8/internal/auth/auth.go","https://github.com/openbin-ai/binny/blob/000b6aca8c9d266b38252470102ac16c98575cd8/internal/ghidra/ghidra.go","https://github.com/openbin-ai/binny/blob/000b6aca8c9d266b38252470102ac16c98575cd8/internal/sandbox/sandbox.go","https://github.com/openbin-ai/binny/blob/000b6aca8c9d266b38252470102ac16c98575cd8/.github/workflows/release.yml","https://github.com/openbin-ai/binny/blob/000b6aca8c9d266b38252470102ac16c98575cd8/LICENSE","https://github.com/openbin-ai/binny/blob/000b6aca8c9d266b38252470102ac16c98575cd8/CLA.md","https://github.com/openbin-ai/binny/releases/tag/v0.1.0-beta.2"],"category":"agent-workflows","description_en":"An open-source terminal agent harness from OpenBin that runs a user-chosen hosted or local model over binary-analysis data. It reads decompiled functions, strings, imports and data from an OpenBin or OpenAPK project or a local Ghidra container run, follows triage, investigation and drafting playbooks, and saves a draft malware-analysis or vulnerability-research report for human review. It is an analysis harness with draft outputs, not a reconstruction project.","description_zh":"OpenBin 推出的开源终端智能体框架，让使用者自选的托管或本地模型处理二进制分析数据。它从 OpenBin 或 OpenAPK 项目、或本地 Ghidra 容器的分析结果中读取反编译函数、字符串、导入表和数据，按分诊、调查与起草流程工作，并保存恶意软件分析或漏洞研究报告草稿供人工审阅。它是输出草稿的分析框架，而非重建项目。","entry_url":"https://awesomerea.org/resources/binny-agent-harness/","entry_url_zh":"https://awesomerea.org/zh/resources/binny-agent-harness/","evidence_url":"https://github.com/openbin-ai/binny/blob/000b6aca8c9d266b38252470102ac16c98575cd8/README.md","group":"agents","id":"binny-agent-harness","json_url":"https://awesomerea.org/resources/binny-agent-harness/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/binny-agent-harness/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binny-agent-harness/index.md","name":"BINNY","name_zh":"BINNY 逆向分析智能体框架","record_type":"resource","relationship":"independent-agent-integration","requirements":["The reviewed pin follows the v0.1.0-beta.2 release of 2026-10-15. BINNY is a Go terminal program; release builds use Go 1.22 and cover Linux, macOS and Windows, and the README installers fetch scripts from openbin.ai. Startup needs an OpenBin sign-in: main.go loads the openbin CLI’s stored credentials and stops with an instruction to run openbin login when none exist. Source comments describe planned paid access whose gating is deferred during testing.","Models are bring-your-own-key, with Anthropic, OpenAI, DeepSeek, Qwen, Kimi, Gemini through an OpenAI-compatible endpoint and Bedrock preconfigured; Ollama or LM Studio models must support tool calling and need a larger context window than Ollama’s 4k default. Analysis data comes from the user’s OpenBin or OpenAPK projects or a local file. Local decompilation and the sandbox need Docker, and the first local decompile downloads an OpenBin Ghidra worker image of about 700 MB.","The sandbox tool runs scripts in a container with no network, a read-only root and sample mount, dropped capabilities and CPU, memory and process limits. Triage labels samples with the STIX 2.1 malware vocabulary, malware and vulnerability modes change the report lens, and autonomous, supervised or collaborative modes decide when the agent stops to ask. The README treats existing reports as claims to check and saves drafts for review before publication.","The repository has Go unit tests, which the release workflow runs before cross-compiling; it publishes no benchmark, accuracy measurement or worked example report. Its README still calls the source repository private while it is public.","LICENSE is AGPL-3.0; the README states AGPL-3.0 or later. Contributors sign a CLA so OpenBin can also offer the code under a commercial licence, and the README says the OpenBin platform it talks to uses the same licence. Model services, OpenBin accounts, Ghidra and analysed samples carry their own terms."],"requirements_zh":["所审阅的固定版本位于 2026-10-15 发布的 v0.1.0-beta.2 之后。BINNY 是 Go 编写的终端程序；发布构建使用 Go 1.22，覆盖 Linux、macOS 与 Windows，README 中的安装命令从 openbin.ai 获取脚本。启动需要登录 OpenBin：main.go 读取 openbin 命令行工具保存的凭据，若不存在则停止并提示运行 openbin login。源码注释称计划采用付费访问，测试期间暂缓收费限制。","模型需自备密钥，预置 Anthropic、OpenAI、DeepSeek、Qwen、Kimi、经 OpenAI 兼容接口接入的 Gemini 以及 Bedrock；Ollama 或 LM Studio 本地模型须支持工具调用，且上下文窗口需大于 Ollama 默认的 4k。分析数据来自使用者的 OpenBin 或 OpenAPK 项目或本地文件。本地反编译与沙箱需要 Docker，首次本地反编译会下载约 700 MB 的 OpenBin Ghidra 工作镜像。","沙箱工具在容器中运行脚本：无网络、根文件系统与样本挂载均为只读、移除全部权能，并限制 CPU、内存和进程数。分诊按 STIX 2.1 恶意软件词表标注样本，恶意软件与漏洞两种模式切换报告视角，自主、监督与协作模式决定智能体何时停下询问。README 将已有报告视为待核实的主张，并把草稿保存待审阅后再发布。","仓库包含 Go 单元测试，发布工作流会在交叉编译前运行；仓库未公开基准、准确性测量或完整示例报告。其 README 仍称源码仓库为私有，而该仓库实际公开。","LICENSE 为 AGPL-3.0，README 表述为 AGPL-3.0 或更高版本。贡献者需签署 CLA，使 OpenBin 也能以商业许可提供代码；README 称其连接的 OpenBin 平台采用相同许可。模型服务、OpenBin 账户、Ghidra 与被分析样本各有条款。"],"targets":["app","binary","firmware"],"url":"https://github.com/openbin-ai/binny","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/sam-dumont/rkd-telemetry-extractor/blob/8db9f373e1a7162d3f2efa297986bdfa86d9400f/README.md","https://github.com/sam-dumont/rkd-telemetry-extractor/blob/8db9f373e1a7162d3f2efa297986bdfa86d9400f/RKD_FORMAT_SPEC.md","https://github.com/sam-dumont/rkd-telemetry-extractor/blob/8db9f373e1a7162d3f2efa297986bdfa86d9400f/SESSION_LOG.md","https://github.com/sam-dumont/rkd-telemetry-extractor/blob/8db9f373e1a7162d3f2efa297986bdfa86d9400f/samples/README.md","https://github.com/sam-dumont/rkd-telemetry-extractor/blob/8db9f373e1a7162d3f2efa297986bdfa86d9400f/python/pyproject.toml","https://github.com/sam-dumont/rkd-telemetry-extractor/blob/8db9f373e1a7162d3f2efa297986bdfa86d9400f/go/go.mod","https://github.com/sam-dumont/rkd-telemetry-extractor/blob/8db9f373e1a7162d3f2efa297986bdfa86d9400f/.github/workflows/ci.yml","https://github.com/sam-dumont/rkd-telemetry-extractor/blob/8db9f373e1a7162d3f2efa297986bdfa86d9400f/LICENSE"],"category":"reconstruction-cases","description_en":"Documents the proprietary .rkd telemetry format written by Race-Keeper “Instant Video” recorders, whose bundled player runs only on Windows, and implements matching Python and Go parsers that export GPS and IMU channels as Telemetry Overlay CSV and GPX. The author credits Claude Code with the hex-dump analysis and hypothesis testing, anchored by known car IDs, circuit location and speeds. Field meanings rest on physical cross-checks from the author’s own recordings, and several record types remain partly unknown.","description_zh":"记录 Race-Keeper “Instant Video” 记录仪所写的专有 .rkd 遥测格式（随附播放器仅支持 Windows），并以结果一致的 Python 与 Go 解析器把 GPS 和 IMU 通道导出为 Telemetry Overlay CSV 与 GPX。作者称十六进制分析和假设检验由 Claude Code 协助完成，并以已知车辆编号、赛道位置和车速作为锚点。字段含义依据作者自有录制数据的物理交叉核对得出，若干记录类型仍未完全解读。","entry_url":"https://awesomerea.org/resources/rkd-telemetry-extractor-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rkd-telemetry-extractor-case/","evidence_url":"https://github.com/sam-dumont/rkd-telemetry-extractor/blob/8db9f373e1a7162d3f2efa297986bdfa86d9400f/RESEARCH_NOTES.md","group":"cases","id":"rkd-telemetry-extractor-case","json_url":"https://awesomerea.org/resources/rkd-telemetry-extractor-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rkd-telemetry-extractor-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rkd-telemetry-extractor-case/index.md","name":"RKD Telemetry Extractor: decoding Race-Keeper track-day recordings","name_zh":"RKD Telemetry Extractor：解读 Race-Keeper 赛道日录制数据","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","attribution","testing","license"],"requirements":["The reviewed pin is Python package version 1.0.0 from February 2026. It decodes the 8-byte signature, meta header, 10-byte record headers and the configuration, GPS, accelerometer, gyroscope, periodic, timestamp and terminator records, then exports 30 Hz Telemetry Overlay CSV, roughly 5 Hz GPX and a session summary. It reads telemetry only; the .mp4 video is used as is, and OBD-II channels are unsupported because the source recordings had no scanner connected.","Users supply .rkd files from their own Race-Keeper recordings. The repository includes a truncated sample of about 50 GPS fixes from the author’s 2021 session with reference CSV and GPX output, but not the vendor player, the USB-stick contents or full recordings. Python 3.9+ and the Go toolchain use only standard libraries; README says Go 1.21+, while go.mod declares go 1.24.7.","Research notes and a session log attribute the analysis to Claude Code (claude-opus-4-6) across three February 2026 sessions plus a fourth for tests, documentation and the Go port. The README and notes give about four hours, while the log’s per-session durations total more. The JSONL transcripts are described but not published, so the dialogue cannot be checked from the repository.","Reported validation compares recorded speed with haversine-derived speed (under 1% error), checks mean vertical acceleration against 1 g, fits a gyroscope divisor of about 28 against GPS heading changes and matches altitude to circuit topography. The CRC polynomial, periodic and timer fields, two terminator fields and the exact gyroscope calibration remain unknown or empirical. CI runs Python 3.9, 3.11 and 3.13 tests with a 100% branch-coverage gate, and Go tests on Ubuntu and macOS that compare Go output with the committed Python reference CSV and GPX.","The project declares MIT and states that it is independent of and not endorsed by Race-Keeper or Trivinci Systems LLC. Decoding is limited to the hardware revision and recordings the author examined, and other devices or firmware versions may differ."],"requirements_zh":["所审阅的固定版本对应 2026 年 2 月的 Python 包 1.0.0。它解读 8 字节文件签名、元数据头、10 字节记录头，以及配置、GPS、加速度计、陀螺仪、周期、时间戳和结束记录，再导出 30 Hz 的 Telemetry Overlay CSV、约 5 Hz 的 GPX 和会话摘要。它只读取遥测数据，.mp4 视频原样使用；由于源录制未连接扫描器，OBD-II 通道尚不支持。","使用者需提供自己的 Race-Keeper 录制所产生的 .rkd 文件。仓库附有作者 2021 年会话的截断样本（约 50 个 GPS 定位点）及参考 CSV 和 GPX 输出，但不含厂商播放器、U 盘内容或完整录制。Python 3.9+ 与 Go 工具链均只使用标准库；README 称需 Go 1.21+，而 go.mod 声明 go 1.24.7。","研究笔记和会话日志将分析归功于 Claude Code（claude-opus-4-6），共进行了三次 2026 年 2 月的会话，另有第四次会话完成测试、文档和 Go 移植。README 与笔记称约用时四小时，而日志所列各会话时长合计更多。JSONL 对话记录虽有说明但未公开，因此无法依据仓库核对对话过程。","报告的验证包括：将记录车速与按 haversine 公式推算的车速比较（误差低于 1%），以 1 g 核对垂直加速度均值，依据 GPS 航向变化拟合约 28 的陀螺仪除数，并将海拔与赛道地形比对。CRC 多项式、周期与计时字段、结束记录中的两个字段以及陀螺仪的精确标定仍未知或属经验值。CI 在 Python 3.9、3.11 与 3.13 上运行测试并要求 100% 分支覆盖率，另在 Ubuntu 与 macOS 上运行 Go 测试，将 Go 输出与仓库中的 Python 参考 CSV 和 GPX 比较。","项目声明采用 MIT，并称其独立于 Race-Keeper 和 Trivinci Systems LLC，未获其认可。解读范围限于作者检查过的硬件版本和录制数据，其他设备或固件版本可能不同。"],"targets":["app"],"url":"https://github.com/sam-dumont/rkd-telemetry-extractor","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/pwndbg/pwndbg/blob/3044ccdf938221e04241e85fe02961ef174ef975/README.md#L54-L81","https://github.com/pwndbg/pwndbg/blob/3044ccdf938221e04241e85fe02961ef174ef975/docs/features.md","https://github.com/pwndbg/pwndbg/blob/3044ccdf938221e04241e85fe02961ef174ef975/docs/setup.md","https://github.com/pwndbg/pwndbg/blob/3044ccdf938221e04241e85fe02961ef174ef975/pyproject.toml","https://github.com/pwndbg/pwndbg/blob/3044ccdf938221e04241e85fe02961ef174ef975/LICENSE.md","https://github.com/pwndbg/pwndbg/releases/tag/2026.09.15"],"category":"dynamic-analysis","description_en":"Python plug-in that loads into GDB, or runs as a REPL around LLDB, to make live program state easier to inspect. Each stop prints a context of registers, stack, call frames and annotated disassembly with recursively dereferenced pointers; commands cover memory maps, search, telescoping, heap allocators and Go values, with Capstone/Unicorn emulation and decompiler integration for IDA, Binary Ninja, Ghidra and angr-management. The README lists Linux ELF, macOS Mach-O, QEMU user/system and embedded Cortex-M or RISC-V/32 debugging.","description_zh":"可加载到 GDB 中、或作为 LLDB 外层 REPL 运行的 Python 插件，使运行中程序的状态更易检查。每次停下时都会打印寄存器、栈、调用帧和带注释的反汇编等上下文，并递归解引用指针；命令涵盖内存映射、搜索、内存链式查看、堆分配器和 Go 值，还借助 Capstone/Unicorn 模拟执行指令，并可与 IDA、Binary Ninja、Ghidra 和 angr-management 反编译器集成。README 列出 Linux ELF、macOS Mach-O、QEMU 用户态／系统态以及嵌入式 Cortex-M 或 RISC-V/32 调试场景。","entry_url":"https://awesomerea.org/resources/pwndbg/","entry_url_zh":"https://awesomerea.org/zh/resources/pwndbg/","evidence_url":"https://github.com/pwndbg/pwndbg/blob/3044ccdf938221e04241e85fe02961ef174ef975/README.md","group":"tools","id":"pwndbg","json_url":"https://awesomerea.org/resources/pwndbg/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pwndbg/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pwndbg/index.md","name":"pwndbg","name_zh":"pwndbg GDB/LLDB 调试增强插件","record_type":"resource","relationship":"foundation","requirements":["Compatibility table: pwndbg-gdb needs Python 3.10+ and GDB 12.1+ (tested on Ubuntu 22.04/24.04); pwndbg-lldb needs Python 3.12+ and LLDB 19+, and its support is marked experimental/early-stage; qemu-user needs QEMU 8.1+ (its vFile API is needed for vmmap) and qemu-system QEMU 6.2+. Mach-O debugging on macOS uses LLDB, and qemu-user debugging is GDB only.","Release at review: 2026.09.15, published 2026-09-20, with portable archives, deb/rpm/apk/Arch packages, including macOS portable builds; the setup guide covers Linux and macOS through an install script, Homebrew, Nix, distro packages and source installs. The reviewed dev commit declares the same version.","MIT license. Decompiler integration needs the separately installed decompiler."],"requirements_zh":["兼容性表：pwndbg-gdb 需要 Python 3.10+ 与 GDB 12.1+（在 Ubuntu 22.04/24.04 上经过测试）；pwndbg-lldb 需要 Python 3.12+ 与 LLDB 19+，其支持被标为实验性／早期阶段；qemu-user 需要 QEMU 8.1+（vmmap 依赖其 vFile API），qemu-system 需要 QEMU 6.2+。在 macOS 上调试 Mach-O 需使用 LLDB，qemu-user 调试仅支持 GDB。","审阅时的版本为 2026.09.15，发布于 2026-09-20，提供便携压缩包（含 macOS 便携版）和 deb/rpm/apk/Arch 软件包；安装指南涵盖 Linux 和 macOS，可通过安装脚本、Homebrew、Nix、发行版软件包或源码安装。所审阅的 dev 分支提交声明的版本相同。","采用 MIT 许可。反编译器集成需另行安装相应反编译器。"],"targets":["binary"],"url":"https://github.com/pwndbg/pwndbg","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/alexbeavs-ps1-ports/driver-recomp/blob/11e9a4a8c8fcf931e4ef70121d231a5a3cb5c42b/LICENSE","https://github.com/alexbeavs-ps1-ports/driver-recomp/blob/11e9a4a8c8fcf931e4ef70121d231a5a3cb5c42b/docs/FEASIBILITY.md","https://github.com/alexbeavs-ps1-ports/driver-recomp/blob/11e9a4a8c8fcf931e4ef70121d231a5a3cb5c42b/docs/DEVLOG.md","https://github.com/alexbeavs-ps1-ports/driver-recomp/blob/11e9a4a8c8fcf931e4ef70121d231a5a3cb5c42b/docs/PSX_PORT_KNOWLEDGE_REPORT.md","https://github.com/alexbeavs-ps1-ports/driver-recomp/blob/11e9a4a8c8fcf931e4ef70121d231a5a3cb5c42b/game.toml","https://github.com/alexbeavs-ps1-ports/driver-recomp/blob/11e9a4a8c8fcf931e4ef70121d231a5a3cb5c42b/.gitmodules","https://github.com/alexbeavs-ps1-ports/driver-recomp/blob/11e9a4a8c8fcf931e4ef70121d231a5a3cb5c42b/.github/workflows/release.yml","https://github.com/Alexbeav/psxrecomp/blob/08ec704a974b1f3a16335b4afeb340b9eff19926/README.md"],"category":"reconstruction-cases","description_en":"Packages a psxrecomp static-recompilation project for Driver (PlayStation, USA) as a setup host: releases carry the recompiler, runtime and a recomp-ui launcher, and the player’s machine generates and compiles the game from the user’s own disc image. The repository holds configuration, Ghidra-derived function seeds and release automation rather than game code. Its documented status is thin: an operator-confirmed private build reaches gameplay, while package release gates remain open.","description_zh":"将 Driver（PlayStation 美版）的 psxrecomp 静态重编译项目打包为“安装宿主”：发布包含重编译器、运行时和 recomp-ui 启动器，再由玩家电脑依据使用者自备的光盘镜像生成并编译游戏。仓库只包含配置、来自 Ghidra 的函数种子和发布自动化脚本，不含游戏代码。文档记录的状态较为有限：维护者确认一个私有构建可以进入游戏，而发布包的验收门槛仍未完成。","entry_url":"https://awesomerea.org/resources/driver-recomp-setup-host-case/","entry_url_zh":"https://awesomerea.org/zh/resources/driver-recomp-setup-host-case/","evidence_url":"https://github.com/alexbeavs-ps1-ports/driver-recomp/blob/11e9a4a8c8fcf931e4ef70121d231a5a3cb5c42b/README.md","group":"cases","id":"driver-recomp-setup-host-case","json_url":"https://awesomerea.org/resources/driver-recomp-setup-host-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/driver-recomp-setup-host-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/driver-recomp-setup-host-case/index.md","name":"Driver Recompiled: a psxrecomp setup host that builds the game locally","name_zh":"Driver Recompiled：在本地构建游戏的 psxrecomp 安装宿主","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed main branch (VERSION 0.3.6) targets only the USA release SLUS-00842 and pins Alexbeav’s psxrecomp fork at 08ec704a and recomp-ui at be8ac1d0. FEASIBILITY.md records the status bootstrap_verified: the operator confirmed that a private promoted build reaches gameplay. No mode or feature coverage is documented, and the README notes that public v0.3.0 can relaunch the wrong executable after its first build.","The player supplies an owned disc image of Driver (USA, SLUS-00842); game.toml records the expected data-track size and hashes. Release CI packages a setup host without game C, BIOS backends, disc images or a prebuilt playable executable. The workflow says users generate OpenBIOS, with a retail BIOS optional, while FEASIBILITY.md mentions the player supplying a BIOS; generated code and the executable stay on the user’s machine.","v0.3.6 publishes packages for Windows x64, Linux x64, macOS Apple Silicon and macOS Intel, but the documentation keeps each platform claim pending exact-package setup, startup and clean-exit gates; the README describes 0.3.0 as Windows x64 only. Local builds use the psxrecomp CLI, CMake, Ninja, Python and C/C++ toolchains, with Windows on the framework’s portable toolchain route.","Reported checks are setup executable-name and source-parity tests and YAML and release-workflow audits. The README also describes boot gates and A/B comparisons against Beetle and DuckStation across the author’s ports, but the reviewed tree publishes no comparison results for this title. These are project reports.","Project-owned files are GPL-3.0-only; psxrecomp keeps PolyForm Noncommercial 1.0.0 and recomp-ui MIT, and the GPL does not cover retail content or generated retail code. The README says the ports are developed with substantial AI assistance, with AI writing most of the code."],"requirements_zh":["所审阅的 main 分支（VERSION 0.3.6）仅针对美版 SLUS-00842，并固定 Alexbeav 的 psxrecomp 分支于 08ec704a、recomp-ui 于 be8ac1d0。FEASIBILITY.md 记录的状态为 bootstrap_verified：维护者确认一个私有的提升构建可以进入游戏。文档未说明模式或功能覆盖范围；README 还指出，公开的 v0.3.0 在首次构建后可能启动错误的可执行文件。","玩家需自备 Driver（美版，SLUS-00842）的光盘镜像；game.toml 记录了数据轨道的预期大小和哈希。发布 CI 打包的安装宿主不含游戏 C 代码、BIOS 后端、光盘镜像或预先构建的可运行程序。工作流说明由用户生成 OpenBIOS，零售 BIOS 为可选项，而 FEASIBILITY.md 提到由玩家提供 BIOS；生成的代码和可执行文件均保留在用户电脑上。","v0.3.6 发布了 Windows x64、Linux x64、macOS Apple Silicon 和 macOS Intel 的安装包，但文档仍将各平台支持列为待定，须先通过针对确切安装包的安装、启动和正常退出验收；README 称 0.3.0 仅支持 Windows x64。本地构建使用 psxrecomp 命令行、CMake、Ninja、Python 及 C／C++ 工具链，Windows 采用框架的便携工具链方案。","报告的检查包括安装可执行文件名称与源码一致性测试，以及 YAML 和发布工作流审计。README 还描述了作者各移植项目共用的启动关卡检查及与 Beetle、DuckStation 的 A/B 对比，但所审阅的源码树未公布本游戏的对比结果。这些均为项目报告。","项目自有文件采用 GPL-3.0-only；psxrecomp 保留 PolyForm Noncommercial 1.0.0，recomp-ui 保留 MIT，GPL 不涵盖零售内容或生成的零售代码。README 称这些移植在大量 AI 协助下开发，大部分代码由 AI 编写。"],"targets":["game"],"url":"https://github.com/alexbeavs-ps1-ports/driver-recomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/Mikompilation/Himuro/blob/595b082aef19c329a25dc6926e4ac638d13ed75d/LICENSE","https://github.com/Mikompilation/Himuro/blob/595b082aef19c329a25dc6926e4ac638d13ed75d/configure.py","https://github.com/Mikompilation/Himuro/blob/595b082aef19c329a25dc6926e4ac638d13ed75d/Makefile","https://github.com/Mikompilation/Himuro/blob/595b082aef19c329a25dc6926e4ac638d13ed75d/config/us/checksum.sha1","https://github.com/Mikompilation/Himuro/blob/595b082aef19c329a25dc6926e4ac638d13ed75d/config/us/report.json","https://github.com/Mikompilation/Himuro/blob/595b082aef19c329a25dc6926e4ac638d13ed75d/config/eu/report.json","https://github.com/Mikompilation/Himuro/blob/595b082aef19c329a25dc6926e4ac638d13ed75d/config/jp/report.json","https://github.com/Mikompilation/Himuro/blob/595b082aef19c329a25dc6926e4ac638d13ed75d/config/us/bin_patches.json","https://github.com/Mikompilation/Himuro/blob/595b082aef19c329a25dc6926e4ac638d13ed75d/config/eu/bin_patches.json","https://github.com/Mikompilation/Himuro/blob/595b082aef19c329a25dc6926e4ac638d13ed75d/config/us/asm_patches.json","https://github.com/Mikompilation/Himuro/blob/595b082aef19c329a25dc6926e4ac638d13ed75d/tools/python/fix_bin_matching.py","https://github.com/Mikompilation/Himuro/blob/595b082aef19c329a25dc6926e4ac638d13ed75d/tools/python/fix_report.py","https://github.com/Mikompilation/Himuro/blob/595b082aef19c329a25dc6926e4ac638d13ed75d/.github/workflows/progress.yml"],"category":"reconstruction-cases","description_en":"Reconstructs Fatal Frame’s PS2 executable as C for the US, EU and Japanese releases, built with the original EE-GCC 2.9 toolchain and checked by SHA-1 against the user’s own executables. Committed objdiff reports list the US and EU code as fully matched and the Japanese code as partial, and a few routines still rely on assembly or byte patches. Porting to modern hardware is a stated later goal, not part of this repository.","description_zh":"将 Fatal Frame（《零》）PS2 可执行文件的美版、欧版和日版重建为 C，使用原始的 EE-GCC 2.9 工具链构建，并以使用者自备可执行文件的 SHA-1 校验结果。仓库提交的 objdiff 报告显示美版和欧版代码已全部匹配、日版仅部分匹配，少数例程仍依赖汇编或字节补丁。移植到现代硬件是项目声明的后续目标，不在本仓库范围内。","entry_url":"https://awesomerea.org/resources/himuro-fatal-frame-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/himuro-fatal-frame-decomp-case/","evidence_url":"https://github.com/Mikompilation/Himuro/blob/595b082aef19c329a25dc6926e4ac638d13ed75d/README.md","group":"cases","id":"himuro-fatal-frame-decomp-case","json_url":"https://awesomerea.org/resources/himuro-fatal-frame-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/himuro-fatal-frame-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/himuro-fatal-frame-decomp-case/index.md","name":"Himuro: a matching Fatal Frame PS2 decompilation","name_zh":"Himuro：Fatal Frame（《零》）PS2 一致性反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["Covers SLUS_203.88 (US), SLES_508.21 (EU) and SLPS_250.74 (JP); the output is a rebuilt PS2 ELF, not a PC port, which the README names only as a later goal. After the project’s own report-adjustment script, the committed objdiff reports list 3,437 of 3,437 US and 3,464 of 3,464 EU functions with all code and data matched, but 2,712 of 3,394 JP functions (73.64% of code). The README’s decomp.dev badges are mutable.","Copy the matching main executable from your own disc or ISO into config/<region>/; the README gives the required SHA-1 for each region. Data extraction, splitting and the expected assembly are generated locally, and no game assets are committed.","Linux is required: Python 3.8+ in a virtual environment, make, i386 libc/libstdc++ for the committed 32-bit EE-GCC 2.9-991111-01 compiler, and the decompals PS2 binutils v0.10 installed separately; objdiff-cli is also committed. Each region is extracted, configured and built separately.","The ninja build runs sha1sum against config/<region>/checksum.sha1, so a successful build reproduces the supplied executable. To reach that hash, the build rewrites selected compiler output from asm_patches.json and copies listed byte ranges from the original executable into the built file (PhotoScoreCount in US and EU, DspSpData in EU). CI only uploads the committed reports and cannot build without the executables.","MIT license for the project; Fatal Frame and its executables retain separate rights, and the committed compiler binaries keep their own terms."],"requirements_zh":["涵盖 SLUS_203.88（美版）、SLES_508.21（欧版）和 SLPS_250.74（日版）；产物是重建的 PS2 ELF，而非 PC 移植，README 只把移植列为后续目标。经项目自带的报告调整脚本处理后，已提交的 objdiff 报告显示美版 3,437 个函数、欧版 3,464 个函数全部匹配，代码与数据均为 100%；日版则为 3,394 个函数中匹配 2,712 个（代码 73.64%）。README 中的 decomp.dev 徽章会随时变化。","需从自有光盘或 ISO 将对应的主可执行文件复制到 config/<地区>/ 中，README 给出了各地区所需的 SHA-1。数据提取、代码拆分和预期汇编都在本地生成，仓库不提交游戏素材。","必须使用 Linux：需虚拟环境中的 Python 3.8+、make、供仓库内 32 位 EE-GCC 2.9-991111-01 编译器运行的 i386 libc／libstdc++，以及另行安装的 decompals PS2 binutils v0.10；仓库也提交了 objdiff-cli。各地区版本需分别提取、配置和构建。","ninja 构建会依据 config/<地区>/checksum.sha1 运行 sha1sum，因此构建成功即重现所提供的可执行文件。为达到该哈希，构建会按 asm_patches.json 改写部分编译器输出，并把列出的字节范围从原始可执行文件复制到构建产物中（美版与欧版的 PhotoScoreCount、欧版的 DspSpData）。CI 只上传已提交的报告，没有可执行文件就无法构建。","项目采用 MIT 许可；Fatal Frame 及其可执行文件另有权利约束，仓库中的编译器二进制文件也适用各自条款。"],"targets":["game"],"url":"https://github.com/Mikompilation/Himuro","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/NoRain211/doaxvb-re/blob/e282a3fc15c793e621098fc0a5d9e70aa6a6e9c2/docs/public-status.md","https://github.com/NoRain211/doaxvb-re/blob/e282a3fc15c793e621098fc0a5d9e70aa6a6e9c2/docs/building.md","https://github.com/NoRain211/doaxvb-re/blob/e282a3fc15c793e621098fc0a5d9e70aa6a6e9c2/NOTICE","https://github.com/NoRain211/doaxvb-re/blob/e282a3fc15c793e621098fc0a5d9e70aa6a6e9c2/LICENSE","https://github.com/NoRain211/doaxvb-re/blob/e282a3fc15c793e621098fc0a5d9e70aa6a6e9c2/CONTRIBUTING.md","https://github.com/NoRain211/doaxvb-re/blob/e282a3fc15c793e621098fc0a5d9e70aa6a6e9c2/.gitmodules","https://github.com/NoRain211/doaxvb-re/blob/e282a3fc15c793e621098fc0a5d9e70aa6a6e9c2/.gitignore","https://github.com/NoRain211/doaxvb-re/blob/e282a3fc15c793e621098fc0a5d9e70aa6a6e9c2/.github/workflows/public-ci.yml","https://github.com/NoRain211/doaxvb-re/blob/e282a3fc15c793e621098fc0a5d9e70aa6a6e9c2/docs/wayfinder/research/host-shell-redistribution.md","https://github.com/NoRain211/doaxvb-re/blob/e282a3fc15c793e621098fc0a5d9e70aa6a6e9c2/tools/game-recipe/README.md","https://github.com/NoRain211/doaxvb-re/releases/tag/v0.5.3"],"category":"reconstruction-cases","description_en":"Lifts the original Xbox executable of Dead or Alive Xtreme Beach Volleyball to C with a fork of xboxrecomp and links it with a hand-written runtime that replaces kernel imports, audio and key Direct3D 8 and DirectSound APIs. Setup builds the runner locally from the user’s USA disc image and checks generated files against hashes in an authenticated recipe; releases carry only tools and source. Rewriting game logic as readable source has so far reached only the startup thread entry.","description_zh":"借助 xboxrecomp 的分支将原版 Xbox《Dead or Alive Xtreme Beach Volleyball》可执行文件提升为 C 代码，并与手写运行时链接，由运行时替代内核导入、音频以及关键的 Direct3D 8 和 DirectSound API。安装程序依据使用者自有的美版光盘镜像在本地构建运行程序，并按经认证配方中的哈希校验生成文件；发布包只含工具和源码。将游戏逻辑改写为可读源码的工作目前只完成了启动线程入口。","entry_url":"https://awesomerea.org/resources/doaxvb-native-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/doaxvb-native-port-case/","evidence_url":"https://github.com/NoRain211/doaxvb-re/blob/e282a3fc15c793e621098fc0a5d9e70aa6a6e9c2/README.md","group":"cases","id":"doaxvb-native-port-case","json_url":"https://awesomerea.org/resources/doaxvb-native-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/doaxvb-native-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/doaxvb-native-port-case/index.md","name":"DOAXVB Native PC Port: statically recompiling Dead or Alive Xtreme Beach Volleyball","name_zh":"DOAXVB Native PC Port：对《Dead or Alive Xtreme Beach Volleyball》的静态重编译","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The README calls the port fully playable as of 0.4 Beta: long player sessions covered every stage, the Casino, Hotel and Shops, saving and reloading, and a vacation’s end, the last starting from an edited save. Lighting, camera and full rendering fidelity remain incomplete, three known issues are open, and the 0.6.0 RC1 prerelease has had only macOS and Steam Deck smoke runs. Hand-written game logic covers only the startup thread entry.","Requires the user’s own USA Xbox disc image; setup extracts it, checks the XBE and stops if any recipe input or generated file differs from the recorded hashes. Generated game C, extracted files, saves and run evidence stay in an ignored private folder, and NOTICE states that the repository distributes no game, generated game code, assets or console firmware.","Windows release setup bundles Python, Capstone, Git, CMake and extract-xiso and downloads a pinned llvm-mingw clang release. macOS and Linux/SteamOS builds need CMake, Ninja, SDL3, Python with Capstone 5.0.9 and a self-built extract-xiso, with Vulkan through SDL3 and shaderc on Linux. The lifter is a pinned branch of NoRain211’s fork of sp00nznet/xboxrecomp.","Public CI checks the recipe, setup and ISO-extraction scripts with synthetic inputs and builds and runs the runtime tests on Windows without game files. The status page states that these tests do not show the game boots or plays; playability rests on owner and contributor sessions, and PlayStation pads are unconfirmed on hardware.","Original code is GPL-3.0-or-later, and NOTICE grants no rights to the game; xboxrecomp is MIT and other components keep their own licenses. The README and NOTICE state substantial use of LLMs and AI coding agents for code, reverse-engineering analysis, debugging, tests and documentation, with changes reviewed and tested."],"requirements_zh":["README 称自 0.4 Beta 起可完整游玩：长时间试玩覆盖了所有场地、赌场、酒店和商店、存档与读档，以及一次假期结束后进入新假期（该次试玩从修改过的存档开始）。光照、镜头和完整渲染还原度仍不完整，仍有三个已知问题未解决，0.6.0 RC1 预发布版仅在 macOS 和 Steam Deck 上做过冒烟测试。手写游戏逻辑仅覆盖启动线程入口。","需要使用者自有的美版 Xbox 光盘镜像；安装程序会提取镜像、检查 XBE，若任一配方输入或生成文件与记录的哈希不符即停止。生成的游戏 C 代码、提取文件、存档和运行记录都保存在被忽略的私有目录中，NOTICE 声明仓库不分发游戏、生成的游戏代码、素材或主机固件。","Windows 发布包的安装程序附带 Python、Capstone、Git、CMake 和 extract-xiso，并下载固定版本的 llvm-mingw clang。macOS 与 Linux／SteamOS 构建需要 CMake、Ninja、SDL3、安装了 Capstone 5.0.9 的 Python 以及自行构建的 extract-xiso；Linux 上通过 SDL3 使用 Vulkan，并需要 shaderc。提升器为 NoRain211 对 sp00nznet/xboxrecomp 所建分支中的固定版本。","公开 CI 用合成输入检查配方、安装和 ISO 提取脚本，并在 Windows 上无需游戏文件构建并运行运行时测试。状态页说明这些测试不能证明游戏可以启动或游玩；可玩性依据所有者与贡献者的试玩，PlayStation 手柄尚未在实机上确认。","原创代码采用 GPL-3.0-or-later，NOTICE 说明不授予任何游戏权利；xboxrecomp 为 MIT，其他组件保留各自许可证。README 与 NOTICE 声明项目在代码、逆向分析、调试、测试和文档中大量使用 LLM 和 AI 编程代理，修改经过审阅和测试。"],"targets":["game"],"url":"https://github.com/NoRain211/doaxvb-re","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/talkaboutdesign/elgato-hdr/blob/7799d3c53520bcc3dd049211244bfaf49b905cb0/tools/uvc_capture.c","https://github.com/talkaboutdesign/elgato-hdr/blob/7799d3c53520bcc3dd049211244bfaf49b905cb0/tools/usb_desc_dump.c","https://github.com/talkaboutdesign/elgato-hdr/blob/7799d3c53520bcc3dd049211244bfaf49b905cb0/tools/modetest.py","https://github.com/talkaboutdesign/elgato-hdr/blob/7799d3c53520bcc3dd049211244bfaf49b905cb0/build.sh","https://github.com/talkaboutdesign/elgato-hdr/blob/7799d3c53520bcc3dd049211244bfaf49b905cb0/LICENSE","https://github.com/talkaboutdesign/elgato-hdr/pull/1","https://x.com/talkaboutdesign/status/2109795113807630735"],"category":"reconstruction-cases","description_en":"A native macOS app that reaches the Elgato 4K X capture card’s 10-bit P010 video mode, which the project says Apple’s built-in webcam driver does not expose to apps. A root helper detaches that driver and runs the card’s USB Video Class streaming directly through libusb, feeding a Metal HDR viewer, an HDR10 recorder and an editor. Latency figures and device coverage remain author-reported.","description_zh":"一款原生 macOS 应用，用于获取 Elgato 4K X 采集卡的 10 位 P010 视频模式；项目称苹果内置的摄像头驱动不会向应用开放该模式。一个 root 权限辅助程序卸下该驱动，通过 libusb 直接执行采集卡的 USB 视频类（UVC）串流，为 Metal HDR 预览、HDR10 录制和编辑器提供画面。延迟数据和设备覆盖范围仍为作者报告。","entry_url":"https://awesomerea.org/resources/elgato-hdr-uvc-capture-case/","entry_url_zh":"https://awesomerea.org/zh/resources/elgato-hdr-uvc-capture-case/","evidence_url":"https://github.com/talkaboutdesign/elgato-hdr/blob/7799d3c53520bcc3dd049211244bfaf49b905cb0/README.md","group":"cases","id":"elgato-hdr-uvc-capture-case","json_url":"https://awesomerea.org/resources/elgato-hdr-uvc-capture-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/elgato-hdr-uvc-capture-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/elgato-hdr-uvc-capture-case/index.md","name":"Elgato HDR: a userspace capture path for the Elgato 4K X’s 10-bit mode","name_zh":"Elgato HDR：为 Elgato 4K X 的 10 位模式提供用户态采集通路","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","scope","testing","license"],"requirements":["Reviewed at the 2026-10-13 head, after release 1.0.0 (2026-09-08). It targets an Elgato 4K X on macOS 14 or newer; the README reports building and testing on Apple Silicon only, and other Elgato cards with a P010 UVC format are untested. The HDR preview needs an HDR/EDR display. Among the 10-bit modes, 4K is limited to 30 fps by USB bandwidth.","Building needs Xcode Command Line Tools and Homebrew’s libusb: build.sh compiles the C helper against libusb, bundles the library, compiles the Swift app and signs it ad hoc, and releases are not notarized. The helper needs one administrator prompt because detaching the macOS kernel driver requires root; it exits about 20 seconds after the app quits and hands the card back to macOS.","The repository keeps the USB descriptor-dump tools used while reverse-engineering the card and a script that sweeps every capture mode; it contains no vendor firmware or driver binaries. Recordings carry fixed HDR10 mastering metadata because, per the README, the card does not pass the source’s HDMI HDR metadata over USB.","The README and the Game-mode pull request report display delays of about 48, 22 and 5 ms for the Smooth, Game and Lowest Latency modes at 1440p60 on a 120 Hz MacBook Pro, measured from USB transfer completion to display as reported by macOS; the card’s own processing comes on top, and the PR notes that the test card sent silent audio. These are author measurements.","MIT covers the project code; the bundled libusb library and captured content keep their own terms, and the project states it is not affiliated with Elgato or Corsair. An X post under the same handle credits REA with helping this latency work."],"requirements_zh":["审阅版本为 2026-10-13 的最新提交，晚于 1.0.0 版（2026-09-08）。目标设备为 macOS 14 及以上系统上的 Elgato 4K X；README 称仅在 Apple Silicon 上构建和测试，其他提供 P010 UVC 格式的 Elgato 采集卡未经测试。HDR 预览需要支持 HDR/EDR 的显示器。在各个 10 位模式中，4K 受 USB 带宽限制只能以 30 fps 采集。","构建需要 Xcode Command Line Tools 和 Homebrew 的 libusb：build.sh 会将 C 辅助程序与 libusb 链接、打包该库、编译 Swift 应用并做临时签名，发布版本未经公证。由于卸下 macOS 内核驱动需要 root 权限，辅助程序需要一次管理员授权；应用退出约 20 秒后它会自行退出，并把采集卡交还给 macOS。","仓库保留了逆向采集卡时使用的 USB 描述符转储工具，以及遍历全部采集模式的脚本；仓库不含厂商固件或驱动二进制文件。由于 README 称采集卡不会通过 USB 传递信号源的 HDMI HDR 元数据，录制文件写入的是固定的 HDR10 母版元数据。","README 及 Game 模式拉取请求报告：在 120 Hz MacBook Pro 上以 1440p60 采集时，Smooth、Game 和 Lowest Latency 三种模式的显示延迟约为 48、22 和 5 毫秒，计时从 USB 传输完成到画面显示，以 macOS 报告为准；采集卡自身的处理时间另计，该 PR 还指出测试用采集卡输出的是静音音频。这些均为作者测量。","MIT 许可覆盖项目代码；打包的 libusb 库和采集内容保留各自条款，项目声明与 Elgato 或 Corsair 无关联。同名 X 账号的帖子称 REA 协助了这项延迟工作。"],"targets":["app","protocol"],"url":"https://github.com/talkaboutdesign/elgato-hdr","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/decompals/ido-static-recomp/blob/d5aec59932034b8a20f23f471297a55c45dcbc45/DOCS.md","https://github.com/decompals/ido-static-recomp/blob/d5aec59932034b8a20f23f471297a55c45dcbc45/Makefile","https://github.com/decompals/ido-static-recomp/blob/d5aec59932034b8a20f23f471297a55c45dcbc45/ido/5.3/LICENSE.md","https://github.com/decompals/ido-static-recomp/tree/d5aec59932034b8a20f23f471297a55c45dcbc45/ido/7.1","https://github.com/decompals/ido-static-recomp/blob/d5aec59932034b8a20f23f471297a55c45dcbc45/tools/rabbitizer/LICENSE","https://github.com/decompals/ido-static-recomp/releases/tag/v1.2","https://github.com/n64decomp/perfect_dark/blob/169ed48bdcbfb3b568b028bd5bebb27680073514/.gitmodules","https://github.com/decompals/ido-static-recomp/compare/421e546956ceae984927e609b083195e9e81659e...d5aec59932034b8a20f23f471297a55c45dcbc45"],"category":"game-analysis","description_en":"Statically recompiles the IRIX MIPS programs of SGI's IDO 5.3 and 7.1 C toolchain, such as cc, cfe, uopt, ugen and as1, into native Linux, macOS and Windows executables, so matching decompilation projects can build with the original compiler code on modern hosts. It recompiles compilers, not games: it neither decompiles nor translates game code.","description_zh":"将 SGI IDO 5.3 与 7.1 C 工具链中的 IRIX MIPS 程序（如 cc、cfe、uopt、ugen 和 as1）静态重编译为原生 Linux、macOS 和 Windows 可执行文件，使匹配式反编译项目能在现代主机上以原始编译器代码进行构建。它重编译的是编译器而非游戏，本身既不反编译也不转换游戏代码。","entry_url":"https://awesomerea.org/resources/ido-static-recomp/","entry_url_zh":"https://awesomerea.org/zh/resources/ido-static-recomp/","evidence_url":"https://github.com/decompals/ido-static-recomp/blob/d5aec59932034b8a20f23f471297a55c45dcbc45/README.md","group":"tools","id":"ido-static-recomp","json_url":"https://awesomerea.org/resources/ido-static-recomp/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ido-static-recomp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ido-static-recomp/index.md","name":"ido-static-recomp","name_zh":"ido-static-recomp IRIX IDO 编译器静态重编译工具","record_type":"resource","relationship":"foundation","requirements":["Building needs make and a C11/C++17 compiler (build-essential on Debian/Ubuntu, Homebrew make on macOS). make setup builds the vendored rabbitizer disassembler and the recompiler; make VERSION=5.3 or VERSION=7.1 then emits the toolchain under build/<version>/out, with RELEASE=1 for optimized builds and TARGET=universal for universal macOS binaries. Release v1.2 (2024-11-12) ships IDO 5.3 and 7.1 archives for Linux, Linux ARM, macOS and Windows; the reviewed main commit dates from 2025-07-05.","Recompiled programs expect a flattened directory beside cc, with USR_LIB and USR_INCLUDE environment overrides for the /usr/lib and /usr/include redirection. The IDO 5.3 program list includes copt, ld and strip, which the 7.1 list lacks.","Perfect Dark pins github.com/Emill/ido-static-recomp at 421e546 (per-function branch, 2021-11-03) as its tools/recomp submodule. GitHub compares that commit with this entry's pin as diverged, 87 commits ahead and 2 behind, and Emill is among the decompals contributors; neither repository is marked as a fork. Other matching decompilations, such as Majora's Mask, download builds from decompals.","The repository bundles the original IRIX compiler binaries under ido/5.3 and ido/7.1. Only ido/5.3 carries an SGI freeware notice; no license file covers the recompiler or the IDO 7.1 binaries at the reviewed commit, GitHub detects no repository license, and the vendored rabbitizer keeps its own MIT license."],"requirements_zh":["构建需要 make 以及支持 C11/C++17 的编译器（Debian/Ubuntu 上为 build-essential，macOS 上为 Homebrew 的 make）。make setup 会构建随附的 rabbitizer 反汇编库和重编译器；随后运行 make VERSION=5.3 或 VERSION=7.1，即可在 build/<版本>/out 下生成工具链，RELEASE=1 生成优化构建，TARGET=universal 生成 macOS 通用二进制。v1.2 版（2024-11-12）提供 Linux、Linux ARM、macOS 和 Windows 上的 IDO 5.3 与 7.1 归档；所审阅的 main 提交日期为 2025-07-05。","重编译后的程序要求所有文件平铺在 cc 所在目录中，可通过 USR_LIB 和 USR_INCLUDE 环境变量覆盖 /usr/lib 与 /usr/include 的重定向。IDO 5.3 的程序列表包含 copt、ld 和 strip，7.1 的列表中没有这三项。","Perfect Dark 将 github.com/Emill/ido-static-recomp 固定在 421e546（per-function 分支，2021-11-03），作为其 tools/recomp 子模块。GitHub 将该提交与本条目的固定提交比较，结果为已分叉：领先 87 个提交、落后 2 个；Emill 也是 decompals 仓库的贡献者之一。两个仓库都未被标记为派生仓库。Majora's Mask 等其他匹配式反编译项目则从 decompals 下载构建产物。","仓库在 ido/5.3 与 ido/7.1 下附带原始 IRIX 编译器二进制文件。只有 ido/5.3 带有 SGI 自由软件声明；在所审阅的提交中，没有任何许可文件覆盖重编译器本身或 IDO 7.1 二进制文件，GitHub 也未检测到仓库许可证，随附的 rabbitizer 保留其 MIT 许可。"],"targets":["binary","game"],"url":"https://github.com/decompals/ido-static-recomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/N0zoM1z0/th08-web/blob/e3485ab9a9af3b5a90ce51841667bbdf5a867e5c/docs/WEB_ARCHITECTURE.md","https://github.com/N0zoM1z0/th08-web/blob/e3485ab9a9af3b5a90ce51841667bbdf5a867e5c/docs/WEB_PORTING.md","https://github.com/N0zoM1z0/th08-web/blob/e3485ab9a9af3b5a90ce51841667bbdf5a867e5c/scripts/build-web-game.sh","https://github.com/N0zoM1z0/th08-web/blob/e3485ab9a9af3b5a90ce51841667bbdf5a867e5c/scripts/check-web-provenance.py","https://github.com/N0zoM1z0/th08-web/blob/e3485ab9a9af3b5a90ce51841667bbdf5a867e5c/.github/workflows/deploy-web.yml","https://github.com/N0zoM1z0/th08-web/blob/e3485ab9a9af3b5a90ce51841667bbdf5a867e5c/.github/workflows/ci.yml","https://github.com/N0zoM1z0/th08-web/blob/e3485ab9a9af3b5a90ce51841667bbdf5a867e5c/.gitmodules","https://github.com/N0zoM1z0/th08-web/blob/e3485ab9a9af3b5a90ce51841667bbdf5a867e5c/LICENSE","https://github.com/N0zoM1z0/th08-web/releases/tag/v0.1.0","https://th08-web.pages.dev/"],"category":"reconstruction-cases","description_en":"Compiles the reconstructed C++ source of the Japanese Touhou 8 1.00d release to WebAssembly with Emscripten, adding WebGL 2 rendering, Web Audio, browser input and IndexedDB saves behind the game’s D3D8-, DirectSound- and DirectInput-shaped interfaces. Players select their own retail DAT files locally. The web build makes no binary-exact claim and is a separate port from the curated TH08 reconstruction.","description_zh":"使用 Emscripten 将日版 Touhou 8 1.00d 的重建 C++ 源码编译为 WebAssembly，并在游戏原有的 D3D8、DirectSound 与 DirectInput 形态接口之后接入 WebGL 2 渲染、Web Audio、浏览器输入和 IndexedDB 存档。玩家在本地选择自备的正版 DAT 文件。网页构建不主张与原二进制逐字节一致，是独立于已收录 TH08 重建的移植。","entry_url":"https://awesomerea.org/resources/th08-web-wasm-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/th08-web-wasm-port-case/","evidence_url":"https://github.com/N0zoM1z0/th08-web/blob/e3485ab9a9af3b5a90ce51841667bbdf5a867e5c/README.md","group":"cases","id":"th08-web-wasm-port-case","json_url":"https://awesomerea.org/resources/th08-web-wasm-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/th08-web-wasm-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/th08-web-wasm-port-case/index.md","name":"TH08 Web: a WebAssembly port built from reconstructed source","name_zh":"TH08 Web：基于重建源码的 WebAssembly 移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","prerequisites","testing","license"],"requirements":["README reports the game playable from title to ending in desktop browsers and recommends current Chrome; Firefox automatically uses a dedicated no-readback build, while Safari and mobile browsers are not verified. The page needs WebAssembly threads, SharedArrayBuffer, WebGL 2, Web Audio and cross-origin-isolated HTTPS. Listed remaining work includes Firefox hardware profiling, replay endurance and memory-ceiling measurement.","Select th08.dat and thbgm.dat from your own legally obtained TH08 installation. The launcher copies th08.dat into session memory and range-reads thbgm.dat; README says neither is uploaded, bundled or persisted. The repository, deployment and release v0.1.0 contain no retail data or executable, and a provenance script rejects forbidden payloads and any artifact outside the nine-file allowlist.","Local builds need Docker, Python 3 and a desktop browser: scripts/build-web-game.sh uses a digest-pinned Emscripten 6.0.8 image, and scripts/serve-web.py supplies the COOP, COEP and CORP headers a generic static server lacks. The public site is a Cloudflare Pages deployment from main, and self-hosting the release archive needs the same isolation headers.","WEB_ARCHITECTURE.md records author-run checks with user-selected retail files: a complete Lunatic Final-B route in Chromium and on an earlier Firefox bridge, a Stage 6B practice run, persistence tests showing no DAT in IndexedDB, and replay-driven pacing samples near 60 Hz under the SwiftShader and llvmpipe software renderers.","MIT covers repository code and documentation, not the original game, DAT files, music or graphics; the pinned Detours submodule keeps its own terms. README describes this repository as the web-focused fork of N0zoM1z0/th08 with its history retained."],"requirements_zh":["README 报告游戏可在桌面浏览器中从标题画面玩到结局，推荐使用最新版 Chrome；Firefox 会自动使用专门的免回读构建，Safari 和移动浏览器尚未验证。页面需要 WebAssembly 线程、SharedArrayBuffer、WebGL 2、Web Audio 及跨源隔离的 HTTPS 环境。列出的后续工作包括 Firefox 硬件性能分析、回放耐久测试和内存上限测量。","需从自己合法取得的 TH08 安装中选择 th08.dat 和 thbgm.dat。启动器把 th08.dat 复制到会话内存，并按范围读取 thbgm.dat；README 说明两者都不会被上传、打包或持久保存。仓库、部署站点和 v0.1.0 发布均不含零售数据或可执行文件，来源检查脚本会拒绝禁止的内容及九文件白名单之外的任何产物。","本地构建需要 Docker、Python 3 和桌面浏览器：scripts/build-web-game.sh 使用以摘要固定的 Emscripten 6.0.8 镜像，scripts/serve-web.py 提供普通静态服务器缺少的 COOP、COEP 和 CORP 响应头。公开站点由 main 分支部署到 Cloudflare Pages，自行托管发布包也需要相同的隔离响应头。","WEB_ARCHITECTURE.md 记录了作者使用自选零售文件完成的检查：在 Chromium 及较早的 Firefox 桥接方案上完整通关 Lunatic Final-B 路线、一次 Stage 6B 练习、证明 IndexedDB 中不含 DAT 的持久化测试，以及在 SwiftShader 与 llvmpipe 软件渲染器下接近 60 Hz 的回放驱动帧节奏采样。","MIT 许可覆盖仓库代码与文档，不涵盖原游戏、DAT 文件、音乐或图像；固定版本的 Detours 子模块另有条款。README 称此仓库是 N0zoM1z0/th08 面向网页的分支，并保留其历史。"],"targets":["game"],"url":"https://github.com/N0zoM1z0/th08-web","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/blacktop/ipsw/blob/a9eae76e8b1e901e4a03dd530defac8a1b33f91a/README.md#L68-L80","https://github.com/blacktop/ipsw/blob/a9eae76e8b1e901e4a03dd530defac8a1b33f91a/README.md#L137-L168","https://github.com/blacktop/ipsw/blob/a9eae76e8b1e901e4a03dd530defac8a1b33f91a/www/docs/guides/decompiler.md","https://github.com/blacktop/ipsw/blob/a9eae76e8b1e901e4a03dd530defac8a1b33f91a/www/docs/getting-started/installation.md","https://github.com/blacktop/ipsw/blob/a9eae76e8b1e901e4a03dd530defac8a1b33f91a/go.mod","https://github.com/blacktop/ipsw/blob/a9eae76e8b1e901e4a03dd530defac8a1b33f91a/LICENSE","https://github.com/blacktop/ipsw/releases/tag/v3.1.739"],"category":"firmware","description_en":"Command-line toolkit for Apple firmware research and reverse engineering. It downloads and unpacks IPSWs, OTAs and KDKs and compares builds; inspects Mach-O load commands, symbols, signatures and entitlements with ARM64 disassembly; finds symbols and cross-references in dyld shared caches, extracts dylibs and dumps Objective-C headers and Swift metadata; extracts KEXTs and compares kernelcaches; and parses IMG4, decrypts AEA archives and inspects iBoot and coprocessor firmware.","description_zh":"面向 Apple 固件研究与逆向工程的命令行工具包。可下载并解包 IPSW、OTA 和 KDK 并比较不同构建；检查 Mach-O 的加载命令、符号、签名和权限，并反汇编 ARM64 代码；在 dyld 共享缓存中查找符号和交叉引用、提取 dylib、导出 Objective-C 头文件并查看 Swift 元数据；提取 KEXT 并比较 kernelcache；还能解析 IMG4、解密 AEA 归档，以及检查 iBoot 和协处理器固件。","entry_url":"https://awesomerea.org/resources/ipsw/","entry_url_zh":"https://awesomerea.org/zh/resources/ipsw/","evidence_url":"https://github.com/blacktop/ipsw/blob/a9eae76e8b1e901e4a03dd530defac8a1b33f91a/README.md","group":"tools","id":"ipsw","json_url":"https://awesomerea.org/resources/ipsw/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ipsw/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ipsw/index.md","name":"ipsw","name_zh":"ipsw Apple 固件研究工具包","record_type":"resource","relationship":"foundation","requirements":["Release at review: v3.1.739, published 2026-10-16, with Linux, macOS, Windows and iOS builds plus deb, rpm, apk and Arch packages; the reviewed master commit is three cache and documentation commits ahead. Install with Homebrew (tap or core formula), snap or Scoop. The extras build (Unicorn-based dyld emulation, libusb device commands) and the Frida build are macOS only. Source builds need a C toolchain for CGO and, per the README, Go 1.26+, although go.mod declares go 1.27.","Firmware, caches and binaries are supplied by the user or fetched with the download commands. With --dec, macho disass and dyld disass send disassembly to the LLM provider chosen with --dec-llm: hosted OpenAI-compatible, Anthropic, Gemini or router APIs, ACP agent CLIs, or local Ollama. The separate ipswd daemon exposes a REST API, and the README points agents to the separate ipsw-skill repository.","MIT license. The README notes that extracted dylibs can still reference metadata elsewhere in the cache, so it recommends Objective-C analysis on the cache itself. LLM decompilation output is model-generated and needs verification."],"requirements_zh":["审阅时的版本为 v3.1.739，发布于 2026-10-16，提供 Linux、macOS、Windows 和 iOS 构建，以及 deb、rpm、apk 和 Arch 软件包；所审阅的 master 分支提交比该版本多三个缓存与文档提交。可通过 Homebrew（作者的 tap 或核心公式）、snap 或 Scoop 安装。extras 构建（基于 Unicorn 的 dyld 模拟、依赖 libusb 的设备命令）和 Frida 构建仅支持 macOS。从源码构建需要用于 CGO 的 C 工具链，README 要求 Go 1.26+，但 go.mod 声明的是 go 1.27。","固件、缓存和二进制由使用者提供，或通过下载命令获取。使用 --dec 时，macho disass 和 dyld disass 会把反汇编发送给 --dec-llm 指定的 LLM 服务：托管的 OpenAI 兼容、Anthropic、Gemini 或路由 API、ACP 智能体命令行，或本地 Ollama。独立的 ipswd 守护进程提供 REST API；README 还建议智能体使用独立的 ipsw-skill 仓库。","采用 MIT 许可。README 指出提取出的 dylib 仍可能引用缓存中其他位置的元数据，因此建议直接在缓存上进行 Objective-C 分析。LLM 反编译输出由模型生成，需要核实。"],"targets":["app","binary","firmware"],"url":"https://github.com/blacktop/ipsw","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/OpenXcom/OpenXcom/blob/4a4bae5fa2e5a09282928e84943fc84b093e34ff/bin/UFO/README.txt","https://github.com/OpenXcom/OpenXcom/blob/4a4bae5fa2e5a09282928e84943fc84b093e34ff/bin/TFTD/README.txt","https://github.com/OpenXcom/OpenXcom/blob/4a4bae5fa2e5a09282928e84943fc84b093e34ff/CMakeLists.txt","https://github.com/OpenXcom/OpenXcom/blob/4a4bae5fa2e5a09282928e84943fc84b093e34ff/src/version.h","https://github.com/OpenXcom/OpenXcom/blob/4a4bae5fa2e5a09282928e84943fc84b093e34ff/.github/workflows/ci.yml","https://github.com/OpenXcom/OpenXcom/blob/4a4bae5fa2e5a09282928e84943fc84b093e34ff/.github/workflows/nightly.yml","https://github.com/OpenXcom/OpenXcom/blob/4a4bae5fa2e5a09282928e84943fc84b093e34ff/src/main.cpp","https://github.com/OpenXcom/OpenXcom/blob/4a4bae5fa2e5a09282928e84943fc84b093e34ff/LICENSE.txt"],"category":"reconstruction-cases","description_en":"Reimplements MicroProse’s UFO: Enemy Unknown (X-COM: UFO Defense) and X-COM: Terror from the Deep as a C++/SDL engine that runs on the user’s original game resources. Game data such as items, craft, research and missions is expressed in YAML rulesets, which also carry its standard mods and a wider modding ecosystem. It is a clone that reuses original content, not recovered MicroProse code.","description_zh":"以 C++/SDL 引擎重新实现 MicroProse 的 UFO: Enemy Unknown（X-COM: UFO Defense）与 X-COM: Terror from the Deep，并在使用者自己的原游戏资源上运行。物品、飞行器、研究和任务等游戏数据以 YAML 规则集表达，这些规则集也承载其标准模组及更广泛的模组生态。这是复用原内容的克隆实现，而非恢复出的 MicroProse 代码。","entry_url":"https://awesomerea.org/resources/openxcom-engine-case/","entry_url_zh":"https://awesomerea.org/zh/resources/openxcom-engine-case/","evidence_url":"https://github.com/OpenXcom/OpenXcom/blob/4a4bae5fa2e5a09282928e84943fc84b093e34ff/README.md","group":"cases","id":"openxcom-engine-case","json_url":"https://awesomerea.org/resources/openxcom-engine-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/openxcom-engine-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/openxcom-engine-case/index.md","name":"OpenXcom: an open-source clone of X-COM: UFO Defense and Terror from the Deep","name_zh":"OpenXcom：X-COM: UFO Defense 与 Terror from the Deep 的开源克隆","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed master snapshot reports version 1.0 Dev; the last tagged release is v1.0 from 2014, and a nightly workflow builds later Windows, Linux and macOS versions. It covers both games and can import saved games from the originals, while standard mods based on XcomUtil and UFOExtender add optional changes.","Requires an unmodified copy of the resources from either or both original games. For UFO these include the GEODATA, GEOGRAPH, MAPS, ROUTES, SOUND, TERRAIN, UFOGRAPH and UNITS folders, and TFTD needs a similar set. The README warns against modded copies such as XcomUtil-patched data; the Windows installer can detect Steam editions.","Building targets C++11 with CMake 3.5+, Visual C++, Xcode or a plain Makefile, against SDL 1.2, SDL_mixer, SDL_gfx 2.0.22+, SDL_image and yaml-cpp 0.5.3+. CI compiles debug builds on Linux, 32-bit Windows and macOS.","CI only compiles the code, and the repository has no automated behaviour tests.","Source headers apply GPL-3.0-or-later, and the README notes modified SDL_gfx code (LGPL) used with its author’s permission. Original game resources keep their own rights."],"requirements_zh":["所审阅的 master 快照版本标为 1.0 Dev；最后一个带标签的发行版是 2014 年的 v1.0，之后的 Windows、Linux 和 macOS 版本由每日构建工作流生成。项目覆盖两款游戏，并可导入原版存档；基于 XcomUtil 与 UFOExtender 的标准模组提供可选改动。","需要一份未经修改的原游戏资源，可来自其中一款或两款游戏。UFO 需包括 GEODATA、GEOGRAPH、MAPS、ROUTES、SOUND、TERRAIN、UFOGRAPH 和 UNITS 等文件夹，TFTD 需要类似的一组。README 提醒不要使用 XcomUtil 修改过的数据等改版副本；Windows 安装程序可检测 Steam 版本。","构建以 C++11 为目标，可使用 CMake 3.5+、Visual C++、Xcode 或简易 Makefile，依赖 SDL 1.2、SDL_mixer、SDL_gfx 2.0.22+、SDL_image 和 yaml-cpp 0.5.3+。CI 在 Linux、32 位 Windows 和 macOS 上编译调试版本。","CI 只编译代码，仓库没有自动化行为测试。","源文件头声明采用 GPL-3.0-or-later，README 说明经作者许可使用修改过的 SDL_gfx 代码（LGPL）。原游戏资源保留各自权利。"],"targets":["game"],"url":"https://github.com/OpenXcom/OpenXcom","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/mchughalex/skate3recomp/blob/f6e0ae87fdfecbadb5c1e36c55d66a744187a3cd/CMakeLists.txt","https://github.com/mchughalex/skate3recomp/blob/f6e0ae87fdfecbadb5c1e36c55d66a744187a3cd/.gitignore","https://github.com/mchughalex/skate3recomp/blob/f6e0ae87fdfecbadb5c1e36c55d66a744187a3cd/.gitmodules","https://github.com/mchughalex/skate3recomp/blob/f6e0ae87fdfecbadb5c1e36c55d66a744187a3cd/cmake/ApplySkate3CodegenPatches.cmake","https://github.com/mchughalex/skate3recomp/blob/f6e0ae87fdfecbadb5c1e36c55d66a744187a3cd/config/skate3.example.toml","https://github.com/mchughalex/rexglue-skate3/blob/7eb0faf7787f5e01333c228b8e3f03c32f7295ea/LICENSE","https://github.com/mchughalex/skate3recomp/releases/tag/v2.0.2"],"category":"reconstruction-cases","description_en":"Recompiles the Xbox 360 version of Skate 3 into native Windows, Linux and macOS builds with a Skate-specific fork of the ReXGlue SDK. Since v2.0.0 a native Direct3D 12 and Vulkan renderer with ports of the game’s own material shading replaces emulation of the Xbox 360 GPU, which remains as a fallback. Game files come from the user’s disc image; the author calls the native renderer early and has not tested the game end to end.","description_zh":"借助 ReXGlue SDK 的 Skate 专用分支，将 Xbox 360 版《Skate 3》重编译为 Windows、Linux 与 macOS 原生版本。自 v2.0.0 起，基于 Direct3D 12 和 Vulkan、移植了游戏自身材质着色的原生渲染器取代对 Xbox 360 GPU 的模拟，模拟渲染器保留为后备。游戏文件来自使用者的光盘镜像；作者称原生渲染器尚处早期，且尚未完整测试整个游戏。","entry_url":"https://awesomerea.org/resources/skate3-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/skate3-recomp-case/","evidence_url":"https://github.com/mchughalex/skate3recomp/blob/f6e0ae87fdfecbadb5c1e36c55d66a744187a3cd/README.md","group":"cases","id":"skate3-recomp-case","json_url":"https://awesomerea.org/resources/skate3-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/skate3-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/skate3-recomp-case/index.md","name":"Skate 3 Recomp: a native Xbox 360 recompilation through ReXGlue","name_zh":"Skate 3 Recomp：通过 ReXGlue 实现的 Xbox 360 原生重编译","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The latest reviewed release is v2.0.2 (July 2026) for Windows, Linux and experimental Apple-silicon macOS; the README calls Windows the most tested platform. Known native-renderer issues include streaming pop-in, skater-customization rendering, Hall of Meat highlights and skate-park parity; frame-rate and power gains over the emulated renderer are author-reported.","Players choose an ISO of their own Xbox 360 copy of Skate 3 for the built-in installer, and DLC needs the user’s own package files. Source codegen reads default.xex and data/webkit/EAWebkit.xex from an extracted dump and should also be given the Title Update 3 package, whose patched executables release builds require. Retail files and generated recompilation sources are git-ignored.","Builds need CMake 3.25+, Ninja and Clang 18 or newer (Clang 20 is recommended on Ubuntu 24.04); MSVC and Apple Clang are unsupported. The pinned rexglue-sdk submodule is the author’s fork on the rexglue 0.8.0 line, holding the runtime, codegen, input, timing and both graphics backends. Vulkan SPIR-V shader binaries are committed, and macOS uses Homebrew LLVM with MoltenVK.","The reviewed tree contains no CI workflow, test suite or fidelity comparison, and the README says the game has not been played through on the native renderer. Visual-parity statements are project claims.","Neither the repository nor its GitHub metadata declares a license for the project’s code; the rexglue fork carries a Xenia-derived BSD-3-Clause notice, and Skate 3 content retains Electronic Arts’ rights."],"requirements_zh":["所审最新发布版为 v2.0.2（2026 年 7 月），提供 Windows、Linux 以及实验性的 Apple 芯片 macOS 版本；README 称 Windows 版测试最充分。原生渲染器的已知问题包括快速移动时的素材加载闪现、滑手自定义外观渲染、Hall of Meat 高亮以及滑板公园的画面一致性；相对模拟渲染器的帧率与功耗提升为作者自述。","玩家通过内置安装程序选择自有 Xbox 360 版《Skate 3》的 ISO；DLC 需使用者自有的内容包文件。源码代码生成需从提取的游戏转储中读取 default.xex 和 data/webkit/EAWebkit.xex，并应提供 Title Update 3 更新包，发布版构建依赖其修补后的可执行文件。零售文件和生成的重编译源码均被 git 忽略。","构建需要 CMake 3.25+、Ninja 和 Clang 18 或更新版本（在 Ubuntu 24.04 上建议 Clang 20）；不支持 MSVC 和 Apple Clang。固定版本的 rexglue-sdk 子模块是作者基于 rexglue 0.8.0 系列的分支，包含运行时、代码生成、输入、计时及两种图形后端。Vulkan SPIR-V 着色器二进制已提交到仓库，macOS 使用 Homebrew LLVM 与 MoltenVK。","所审源码树中没有 CI 工作流、测试套件或还原度对比，README 也说明尚未在原生渲染器上完整通关。画面一致性说法均为项目主张。","仓库及其 GitHub 元数据均未声明项目代码的许可证；rexglue 分支附有源自 Xenia 的 BSD-3-Clause 声明，《Skate 3》内容的权利归 Electronic Arts 所有。"],"targets":["game"],"url":"https://github.com/mchughalex/skate3recomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/i12bp8/decomp.wtf/blob/575b4a30ed481ff5497dfb9ce4f599368a95a04a/LICENSE","https://github.com/i12bp8/decomp.wtf/blob/575b4a30ed481ff5497dfb9ce4f599368a95a04a/pyproject.toml","https://github.com/i12bp8/decomp.wtf/blob/575b4a30ed481ff5497dfb9ce4f599368a95a04a/plugins/decomp-wtf/skills/decompile/SKILL.md","https://github.com/i12bp8/decomp.wtf/blob/575b4a30ed481ff5497dfb9ce4f599368a95a04a/plugins/decomp-wtf/.mcp.json","https://github.com/i12bp8/decomp.wtf/blob/575b4a30ed481ff5497dfb9ce4f599368a95a04a/site/tools/build_sim.py"],"category":"agent-workflows","description_en":"A discontinued local app and MCP server that hands AI coding agents one function of a user-owned console game at a time, compiles each C attempt with the game’s period compiler and accepts it only when the linked result matches the original bytes. It can start a project from a ROM or disc image, or work inside forks of public decompilation projects listed on decomp.dev, where objdiff judges the result. Its final commit, dated 15 October 2026, marks it discontinued in response to opposition in the decompilation community; the code stays under MIT without further fixes or releases.","description_zh":"一款已停止开发的本地应用与 MCP 服务，把用户自有主机游戏的函数逐个交给 AI 编程智能体，用该游戏当年的编译器编译每次提交的 C 代码，只有链接后的结果与原始字节一致才算通过。它可从 ROM 或光盘镜像新建项目，也可在 decomp.dev 所列公开反编译项目的分叉中工作，由 objdiff 判定结果。其 2026 年 10 月 15 日的最后一次提交宣布停止开发，理由是反编译社区的反对；代码仍以 MIT 许可保留，但不再修复或发布新版本。","entry_url":"https://awesomerea.org/resources/decomp-wtf-agent-decompilation/","entry_url_zh":"https://awesomerea.org/zh/resources/decomp-wtf-agent-decompilation/","evidence_url":"https://github.com/i12bp8/decomp.wtf/blob/575b4a30ed481ff5497dfb9ce4f599368a95a04a/README.md","group":"agents","id":"decomp-wtf-agent-decompilation","json_url":"https://awesomerea.org/resources/decomp-wtf-agent-decompilation/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/decomp-wtf-agent-decompilation/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/decomp-wtf-agent-decompilation/index.md","name":"decomp.wtf","name_zh":"decomp.wtf 智能体反编译工具","record_type":"resource","relationship":"independent-agent-integration","requirements":["The reviewed pin is the discontinuation commit of the archived repository, at package version 0.10.6, which the README names as the last installable release. The author will not fix issues, review pull requests or publish releases; existing installs keep working without updates. It runs on Linux and, marked unstable, on Windows inside its own WSL 2 distribution; macOS is unsupported. It needs Python 3.12 or later, and its installer sets up uv, the app, pinned checksum-verified period compilers and the m2c draft decompiler.","Agents connect through the local decomp mcp server or a Claude Code plugin that adds a decompile skill. README lists Claude Code, Codex CLI, Antigravity CLI, opencode, other MCP clients and a built-in loop for OpenAI-compatible APIs, including local models. Agents receive only decomp.wtf’s tools, without a shell. Users pay their own model provider; the author reports about 8 cents for a small function with Claude Code and warns that large functions take many more attempts.","Users supply their own ROM, disc image or program file. The tool contains no game code or ROMs apart from a bundled demo N64 ROM built from public-domain code and zlib. Proprietary period compilers such as IDO and CodeWarrior are installed only after the user agrees. Continuing a public decomp clones that project locally and runs its build scripts, so the README advises forking only trusted projects.","README lists GameCube, Wii and N64 as recommended and PlayStation, PlayStation 2, Game Boy Advance and DS as beta, tested mostly on homemade games. It reports imports tested on named commercial titles and exports that rebuild the input byte for byte, with GameCube and Wii files linked and checksum-checked in dtk-template projects. These remain author statements: the repository has a pytest suite but no CI workflow at the pin, publishes no game results.","The repository is MIT-licensed. Its README asks users to work only on games they own, not to circumvent copy protection, not to publish decompiled code of games whose rights they do not hold, and to follow each public project’s contribution rules, noting that many community decomps reject AI-written contributions. Nothing is sent upstream automatically. The project disclaims affiliation with the tools it builds on."],"requirements_zh":["所审阅的固定版本是已归档仓库中宣布停止开发的提交，对应包版本 0.10.6，README 称这是最后一个可安装的版本。作者不再修复问题、审阅拉取请求或发布新版本；已安装的副本仍可使用，但不会更新。它可在 Linux 上运行，也可在 Windows 上通过自带的 WSL 2 发行版运行（标注为不稳定）；不支持 macOS。需要 Python 3.12 或更高版本，安装脚本会配置 uv、应用本身、固定版本且经过校验的旧版编译器，以及 m2c 初稿反编译器。","智能体通过本地 decomp mcp 服务，或添加 decompile 技能的 Claude Code 插件接入。README 列出 Claude Code、Codex CLI、Antigravity CLI、opencode、其他 MCP 客户端，以及适用于 OpenAI 兼容 API（含本地模型）的内置循环。智能体只获得 decomp.wtf 自身的工具，没有 shell。模型费用由用户自付；作者报告用 Claude Code 处理一个小函数约需 8 美分，并提醒大型函数需要多得多的尝试。","用户需自备 ROM、光盘镜像或程序文件。除一个由公有领域代码和 zlib 构建的 N64 演示 ROM 外，工具不含游戏代码或 ROM。IDO、CodeWarrior 等专有旧版编译器仅在用户同意后才会安装。继续公开反编译项目时会在本地克隆该项目并运行其构建脚本，因此 README 建议只分叉可信的项目。","README 将 GameCube、Wii 与 N64 列为推荐平台，PlayStation、PlayStation 2、Game Boy Advance 与 DS 列为测试版，后者主要用自制游戏测试。它报告已在若干具名商业游戏上测试导入，导出的项目能逐字节重建输入，GameCube 与 Wii 文件会在 dtk-template 项目中链接并通过校验和检查。这些仍是作者陈述：仓库有 pytest 测试套件，但固定版本中没有 CI 工作流，也未公布任何游戏的结果。","仓库采用 MIT 许可。README 要求用户只处理自己拥有的游戏、不得规避复制保护、不得发布自己不享有权利的游戏的反编译代码，并遵守各公开项目的贡献规则，同时指出许多社区反编译项目拒绝 AI 编写的贡献。工具不会自动向上游提交任何内容。项目声明与其所依赖的工具均无关联。"],"targets":["game"],"url":"https://github.com/i12bp8/decomp.wtf","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/bc160201983/Uncharted-The-Nathan-Drake-Collection-PC-port/blob/dfc9fb6e70794bc81ae62836e3e5fb993ff50b3e/analysis/STATUS.md","https://github.com/bc160201983/Uncharted-The-Nathan-Drake-Collection-PC-port/blob/dfc9fb6e70794bc81ae62836e3e5fb993ff50b3e/analysis/PLAN.md","https://github.com/bc160201983/Uncharted-The-Nathan-Drake-Collection-PC-port/blob/dfc9fb6e70794bc81ae62836e3e5fb993ff50b3e/CHANGELOG.md","https://github.com/bc160201983/Uncharted-The-Nathan-Drake-Collection-PC-port/blob/dfc9fb6e70794bc81ae62836e3e5fb993ff50b3e/gow3_pc/LICENSE","https://github.com/bc160201983/Uncharted-The-Nathan-Drake-Collection-PC-port/blob/dfc9fb6e70794bc81ae62836e3e5fb993ff50b3e/.github/workflows/build-windows.yml","https://github.com/bc160201983/Uncharted-The-Nathan-Drake-Collection-PC-port/blob/dfc9fb6e70794bc81ae62836e3e5fb993ff50b3e/tools/package_windows.sh","https://github.com/bc160201983/Uncharted-The-Nathan-Drake-Collection-PC-port/blob/dfc9fb6e70794bc81ae62836e3e5fb993ff50b3e/tools/fetch_aa_files.sh","https://github.com/bc160201983/Uncharted-The-Nathan-Drake-Collection-PC-port/blob/dfc9fb6e70794bc81ae62836e3e5fb993ff50b3e/.gitmodules","https://github.com/bc160201983/Uncharted-The-Nathan-Drake-Collection-PC-port/releases/tag/v0.2.3"],"category":"reconstruction-cases","description_en":"Runs the PS4 Uncharted: The Nathan Drake Collection’s own x86-64 executables natively on Windows: a runtime supplies the PS4 system libraries and a shadPS4-derived Vulkan renderer executes the GPU work. The port adds a per-game launcher, resolution patches and modern upscaling, and its status table reports all three games playable with listed open issues. It is a compatibility-runtime port rather than a decompilation, and its results remain project-reported.","description_zh":"在 Windows 上原生运行 PS4 版《神秘海域：内森·德雷克合集》自身的 x86-64 可执行文件：由运行时提供 PS4 系统库，并以源自 shadPS4 的 Vulkan 渲染器执行 GPU 工作。该移植提供按游戏保存设置的启动器、分辨率补丁与现代超分辨率技术，其状态表报告三部游戏均可游玩，并列出未解决问题。这是兼容运行时移植而非反编译重建，结果仍为项目报告。","entry_url":"https://awesomerea.org/resources/uncharted-collection-pc-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/uncharted-collection-pc-port-case/","evidence_url":"https://github.com/bc160201983/Uncharted-The-Nathan-Drake-Collection-PC-port/blob/dfc9fb6e70794bc81ae62836e3e5fb993ff50b3e/README.md","group":"cases","id":"uncharted-collection-pc-port-case","json_url":"https://awesomerea.org/resources/uncharted-collection-pc-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/uncharted-collection-pc-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/uncharted-collection-pc-port-case/index.md","name":"Uncharted: The Nathan Drake Collection native Windows port","name_zh":"《神秘海域：内森·德雷克合集》原生 Windows 移植","reconstruction_method":"other","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["Reviewed at the commit of release v0.2.3 (2026-10-18); v0.1.0 was published on 2026-10-15. README reports Drake’s Fortune, Among Thieves and Drake’s Deception playable, with the Collection menu, game switching, saves, audio, movies and controllers working. Known issues include a Drake’s Fortune grenade-launcher fault, cropped ultrawide views, single-core GPU-command limits on slower CPUs, experimental multithreaded rendering and less play-testing for Uncharted 3. The original game code is run with local patches, not rebuilt from recovered source.","Supply your own dumped copy of the PS4 game CUSA02344, the folder holding eboot.bin and sce_sys; game update 1.02 is optional and recommended. README says no game files are in the repository or its builds, and the preparation script patches the game executables locally for resolution and update handling. The project disclaims affiliation with Sony, Naughty Dog and Bluepoint Games, and the games keep their own rights.","Play needs 64-bit Windows 10 or 11, a CPU with AVX, F16C, BMI1, MOVBE and LZCNT (Intel Haswell or newer, or any AMD Ryzen), a Vulkan 1.3 GPU and about 6 GB of free RAM, with 16 GB recommended. Local builds use an MSYS2 CLANG64 toolchain with CMake, Ninja, the Vulkan stack, SDL3, FFmpeg, Boost and other listed packages, plus a Windows Python 3.10+ with Pillow for packaging. GitHub Actions builds the Windows package on each push, and the launcher’s updater checks release SHA-256 digests.","STATUS.md records native runtime tests for fibers, services, video decoding, buffered input and clock timing, with the cause and user confirmation of individual fixes. README frame rates come from the author’s RTX 5080 and integrated Radeon tests plus one player report. The CI workflow builds and publishes packages without automated game tests.","README declares GPL v2 or later. The runtime started from FelipePrado0’s GPL-2.0 gow3_pc and the shadPS4 video core, and the TAA camera approach credits SuperMedo’s GPL v2 Uncharted port. Packages bundle third-party libraries; NVIDIA’s DLSS DLL, fetched by a build script from NVIDIA’s DLSS repository, stays under NVIDIA’s license. STATUS.md mentions REA as unable to decompile the prepared ELF on Windows."],"requirements_zh":["审阅版本即 v0.2.3 发布版（2026-10-18）所对应的提交；v0.1.0 发布于 2026-10-15。README 报告《德雷克的宝藏》《纵横四海》《德雷克的诡计》均可游玩，合集菜单、游戏切换、存档、音频、过场影片和手柄均可使用。已知问题包括《德雷克的宝藏》中榴弹发射器的故障、超宽屏视野被裁切、较慢 CPU 上 GPU 命令单核处理的瓶颈、实验性的多线程渲染，以及《神秘海域 3》测试较少。原游戏代码经本地补丁后直接运行，并非由恢复的源码重新构建。","需自备 PS4 游戏 CUSA02344 的转储副本，即包含 eboot.bin 与 sce_sys 的文件夹；1.02 游戏更新可选但推荐。README 称仓库及其构建均不含游戏文件，准备脚本会在本地为分辨率和更新处理修补游戏可执行文件。项目声明与 Sony、Naughty Dog 和 Bluepoint Games 无关联，游戏本身仍有其权利约束。","游玩需要 64 位 Windows 10 或 11、支持 AVX、F16C、BMI1、MOVBE 与 LZCNT 的 CPU（Intel Haswell 或更新，或任意 AMD Ryzen）、支持 Vulkan 1.3 的 GPU，以及约 6 GB 可用内存，建议整机 16 GB。本地构建使用 MSYS2 CLANG64 工具链，以及 CMake、Ninja、Vulkan 组件、SDL3、FFmpeg、Boost 等列明的软件包，打包还需带 Pillow 的 Windows Python 3.10+。GitHub Actions 在每次推送时构建 Windows 安装包，启动器的更新程序会核对发布包的 SHA-256 摘要。","STATUS.md 记录了纤程、系统服务、视频解码、缓冲输入与时钟计时的原生运行时测试，以及各项修复的原因和用户确认。README 中的帧率来自作者在 RTX 5080 与集成 Radeon 显卡上的测试和一份玩家报告。CI 工作流只构建并发布安装包，不运行自动化游戏测试。","README 声明采用 GPL v2 或更高版本。运行时起源于 FelipePrado0 以 GPL-2.0 发布的 gow3_pc 与 shadPS4 视频核心，TAA 相机数据的取法注明来自 SuperMedo 以 GPL v2 发布的 Uncharted 移植。安装包附带第三方库；NVIDIA 的 DLSS DLL 由构建脚本从 NVIDIA 的 DLSS 仓库获取，仍受 NVIDIA 许可约束。STATUS.md 提到 REA 在 Windows 上无法反编译准备好的 ELF。"],"targets":["game"],"url":"https://github.com/bc160201983/Uncharted-The-Nathan-Drake-Collection-PC-port","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/N0zoM1z0/th095/blob/6084b36cfa90ac1720f0cba36caec3ee56fc5e1f/docs/PROGRESS.md","https://github.com/N0zoM1z0/th095/blob/6084b36cfa90ac1720f0cba36caec3ee56fc5e1f/docs/ORACLES.md","https://github.com/N0zoM1z0/th095/blob/6084b36cfa90ac1720f0cba36caec3ee56fc5e1f/docs/RUNTIME_ISSUES.md","https://github.com/N0zoM1z0/th095/blob/6084b36cfa90ac1720f0cba36caec3ee56fc5e1f/docs/TOOLS.md","https://github.com/N0zoM1z0/th095/blob/6084b36cfa90ac1720f0cba36caec3ee56fc5e1f/config/tools.lock.toml","https://github.com/N0zoM1z0/th095/blob/6084b36cfa90ac1720f0cba36caec3ee56fc5e1f/scripts/bootstrap-tools.sh","https://github.com/N0zoM1z0/th095/blob/6084b36cfa90ac1720f0cba36caec3ee56fc5e1f/.github/workflows/ci.yml","https://github.com/N0zoM1z0/th095/blob/6084b36cfa90ac1720f0cba36caec3ee56fc5e1f/LICENSE"],"category":"reconstruction-cases","description_en":"Reconstructs source for the original Japanese Touhou 9.5: Shoot the Bullet 1.02a executable, accepting function exactness only through reproducible byte comparison of pinned Visual C++ .NET 2003 builds against one hash-attested target. The whole program also compiles and links into a playable Windows i386 executable, while README keeps playability, function matching and whole-executable identity as separate statuses.","description_zh":"为日版 Touhou 9.5：东方文花帖 1.02a 原可执行文件重建源码；只有使用固定版本 Visual C++ .NET 2003 构建、并与单一经哈希核验的目标进行可复现字节比较后，才认定函数级一致。整个程序也能编译链接为可游玩的 Windows i386 可执行文件，而 README 将可玩性、函数匹配与整个可执行文件一致性列为相互独立的状态。","entry_url":"https://awesomerea.org/resources/th095-reconstruction-case/","entry_url_zh":"https://awesomerea.org/zh/resources/th095-reconstruction-case/","evidence_url":"https://github.com/N0zoM1z0/th095/blob/6084b36cfa90ac1720f0cba36caec3ee56fc5e1f/README.md","group":"cases","id":"th095-reconstruction-case","json_url":"https://awesomerea.org/resources/th095-reconstruction-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/th095-reconstruction-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/th095-reconstruction-case/index.md","name":"TH095: function-level reconstruction of Shoot the Bullet 1.02a","name_zh":"TH095：东方文花帖 1.02a 的函数级重建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["testing","prerequisites","prerequisites","testing","license"],"requirements":["Generated PROGRESS.md reports 697 confirmed authored functions among 1,880 candidates, all with source, and 696 canonically exact, covering 99.22% of confirmed authored bytes; Controller::GetInput keeps one differing byte. README lists semantic reconstruction as active and Windows x86-64, Linux and Web ports as planned, and tags the playable baseline v0.1.0-windows-i386 without release binaries.","Supply your own original Japanese 1.02a th095.exe matching the size, SHA-256 and MD5 in README, imported as resources/th095.exe; playing also needs the game’s data. README says copyrighted executables, game data and private analysis databases are not included, and public CI runs only target-independent checks.","scripts/bootstrap-tools.sh needs curl, git, sha256sum, tar, unzip, uv and Wine, then fetches checksum-pinned Ghidra 12.1.3, Temurin JDK 21, objdiff 3.8.0 and Microsoft Visual C++ .NET 2003 (13.10.3077) binaries from a third-party archive repository; reccmp 0.1.6 is also pinned. scripts/build-whole.py cold-compiles and links the production graph and refuses stubbed or force-linked images.","Exact credit requires a zero-difference COFF function comparison recorded in the match ledgers; Ghidra, IDA MCP and runtime observation count only as supporting evidence. README cites a full-game runtime video using a test-only no-death launcher plus separate normal-build tests, and RUNTIME_ISSUES.md notes those checks used 2026-09-10 source, with later semantic changes only compile- and link-validated.","MIT covers repository code and documentation, not the game or its assets; the downloaded compiler and tools keep their own terms. The repository carries coding-agent rules and skills and a GPT web Ghidra bridge; REA’s separately published Touhou essay discusses this project."],"requirements_zh":["自动生成的 PROGRESS.md 报告：1,880 个候选中有 697 个已确认的原作函数，全部具备源码，其中 696 个达到规范一致，覆盖已确认原作字节的 99.22%；Controller::GetInput 仍有一个字节不同。README 将语义重建列为进行中、Windows x86-64／Linux／Web 移植列为计划，并以 v0.1.0-windows-i386 标签固定可玩基线，但未附发布二进制。","需自备与 README 所列大小、SHA-256 和 MD5 一致的日版 1.02a 原版 th095.exe，并导入为 resources/th095.exe；游玩还需要游戏数据。README 说明仓库不含受版权保护的可执行文件、游戏数据和私有分析数据库，公开 CI 只运行不依赖目标文件的检查。","scripts/bootstrap-tools.sh 需要 curl、git、sha256sum、tar、unzip、uv 和 Wine，随后获取以校验和固定的 Ghidra 12.1.3、Temurin JDK 21、objdiff 3.8.0，以及来自第三方存档仓库的 Microsoft Visual C++ .NET 2003（13.10.3077）二进制；reccmp 0.1.6 也固定版本。scripts/build-whole.py 从零编译并链接生产构建图，拒绝生成桩代码或强制链接的映像。","认定一致须通过零差异的 COFF 函数比较，并记录在匹配台账中；Ghidra、IDA MCP 和运行观察只作为辅助证据。README 引用一段使用仅供测试的无敌启动器完成的全流程运行视频，另有正常构建的单独测试；RUNTIME_ISSUES.md 注明这些检查针对 2026-09-10 的源码，之后的语义改动只经过编译和链接验证。","MIT 许可覆盖仓库代码与文档，不涵盖游戏或其素材；下载的编译器与工具各有条款。仓库包含编程智能体规则与技能以及 GPT 网页版 Ghidra 桥接；REA 另行发表的东方重建文章讨论了此项目。"],"targets":["game"],"url":"https://github.com/N0zoM1z0/th095","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/DynamoRIO/dynamorio/blob/6d2165aa485ca91bf10faa64440cfadce850b0bc/README.md#L19-L50","https://github.com/DynamoRIO/dynamorio/blob/6d2165aa485ca91bf10faa64440cfadce850b0bc/License.txt","https://github.com/DynamoRIO/dynamorio/releases/tag/release_11.3.0-1","https://github.com/DynamoRIO/dynamorio/releases/tag/cronbuild-11.91.20741","https://dynamorio.org/page_download.html"],"category":"dynamic-analysis","description_en":"Runtime code manipulation system for building dynamic tools that observe or transform any part of an unmodified program while it runs. Its API and IA-32/AMD64/ARM/AArch64 instruction manipulation library allow arbitrary changes to application instructions, not only inserted callouts. The release package bundles tools including drcov for code coverage, drltrace for library-call tracing, drstrace for Windows system calls, drmemtrace instruction and memory traces and the drdisas disassembler. It is a framework for building instrumentation tools, distinct from Frida's scripting of live processes.","description_zh":"运行时代码操作系统，用于构建在未修改程序运行期间观察或变换其任意部分的动态工具。其 API 与 IA-32/AMD64/ARM/AArch64 指令操作库允许任意修改应用指令，而不仅限于插入回调。发布包附带 drcov 代码覆盖率、drltrace 库调用跟踪、drstrace Windows 系统调用跟踪、drmemtrace 指令与内存访问跟踪以及 drdisas 反汇编器等工具。它是用于构建插桩工具的框架，与 Frida 对运行中进程编写脚本的方式不同。","entry_url":"https://awesomerea.org/resources/dynamorio/","entry_url_zh":"https://awesomerea.org/zh/resources/dynamorio/","evidence_url":"https://github.com/DynamoRIO/dynamorio/blob/6d2165aa485ca91bf10faa64440cfadce850b0bc/README.md","group":"tools","id":"dynamorio","json_url":"https://awesomerea.org/resources/dynamorio/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dynamorio/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dynamorio/index.md","name":"DynamoRIO","name_zh":"DynamoRIO 动态二进制插桩框架","record_type":"resource","relationship":"foundation","requirements":["The README lists Windows, Linux and Android on IA-32, AMD64, ARM and AArch64 hardware; macOS support is in progress. Latest stable release at review: release_11.3.0-1, published 2025-01-11, with Windows, Linux, AArch64 Linux, ARM Linux EABIHF and ARM Android packages. Weekly cronbuild packages follow master (cronbuild-11.91.20741, published 2026-10-17, with no Android package); this entry pins the reviewed master commit.","Custom tools are written against the API, whose documentation ships in the release package and online; API samples cover memory-address, instruction and basic-block tracing and instruction counting. The README names WinAFL, the Arm Instruction Emulator, DrCCTProf, VClinic and GWPSan as external tools built on it and bundles Dr. Memory.","Primarily BSD. The drsyscall, drwrap and drutil extensions and the Dr. Memory Framework libraries are LGPL 2.1, and the drsyms extension links elfutils libraries under LGPL 3."],"requirements_zh":["README 列出 Windows、Linux 和 Android 系统，以及 IA-32、AMD64、ARM 和 AArch64 硬件；macOS 支持仍在开发中。审阅时最新稳定版为 release_11.3.0-1，发布于 2025-01-11，提供 Windows、Linux、AArch64 Linux、ARM Linux EABIHF 和 ARM Android 软件包。每周 cronbuild 构建跟随 master 分支（cronbuild-11.91.20741，发布于 2026-10-17，不含 Android 包）；本条目固定到所审阅的 master 分支提交。","自定义工具基于其 API 编写，API 文档随发布包提供，也可在线查阅；API 示例涵盖内存地址、指令和基本块跟踪以及指令计数。README 列出 WinAFL、Arm Instruction Emulator、DrCCTProf、VClinic 和 GWPSan 等基于它构建的外部工具，发布包还附带 Dr. Memory。","主体采用 BSD 许可。drsyscall、drwrap 和 drutil 扩展以及 Dr. Memory Framework 库采用 LGPL 2.1，drsyms 扩展所链接的 elfutils 库采用 LGPL 3。"],"targets":["binary"],"url":"https://github.com/DynamoRIO/dynamorio","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/gabrielgreco1/TVmenubar-MacOS/blob/8482f36aaeb2e6577cf58bba12306ba3701c0fd2/THIRD_PARTY_NOTICES.md","https://github.com/gabrielgreco1/TVmenubar-MacOS/blob/8482f36aaeb2e6577cf58bba12306ba3701c0fd2/Sources/LGwebOSMenubar/WebOS.swift","https://github.com/gabrielgreco1/TVmenubar-MacOS/blob/8482f36aaeb2e6577cf58bba12306ba3701c0fd2/Sources/LGwebOSMenubar/FeatureChecks.swift","https://github.com/gabrielgreco1/TVmenubar-MacOS/blob/8482f36aaeb2e6577cf58bba12306ba3701c0fd2/Package.swift","https://github.com/gabrielgreco1/TVmenubar-MacOS/blob/8482f36aaeb2e6577cf58bba12306ba3701c0fd2/scripts/build.sh","https://github.com/gabrielgreco1/TVmenubar-MacOS/blob/8482f36aaeb2e6577cf58bba12306ba3701c0fd2/LICENSE","https://github.com/gabrielgreco1/TVmenubar-MacOS/blob/8641101827b8a847e3c4091df4e7a336c68ba431/README.md","https://x.com/greco_dev/status/2109842197654692349"],"category":"reconstruction-cases","description_en":"A native macOS menu-bar app that pairs with an LG webOS TV over its local encrypted WebSocket interface to launch apps, switch inputs, adjust volume and picture settings, send pointer input and cast selected media. The project credits the public Connect SDK for webOS protocol behavior and reuses PyWebOSTV’s registration manifest. Testing covers one TV on webOS 5.0.","description_zh":"一款原生 macOS 菜单栏应用，通过 LG webOS 电视在局域网内的加密 WebSocket 接口完成配对，可启动应用、切换输入源、调节音量和画面设置、发送指针输入并投放所选媒体。项目称 webOS 协议行为参考了公开的 Connect SDK，并沿用 PyWebOSTV 的注册清单。测试仅覆盖一台 webOS 5.0 电视。","entry_url":"https://awesomerea.org/resources/lgwebos-menubar-remote-case/","entry_url_zh":"https://awesomerea.org/zh/resources/lgwebos-menubar-remote-case/","evidence_url":"https://github.com/gabrielgreco1/TVmenubar-MacOS/blob/8482f36aaeb2e6577cf58bba12306ba3701c0fd2/README.md","group":"cases","id":"lgwebos-menubar-remote-case","json_url":"https://awesomerea.org/resources/lgwebos-menubar-remote-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/lgwebos-menubar-remote-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/lgwebos-menubar-remote-case/index.md","name":"LGwebOS-menubar: a native macOS remote for LG webOS TVs","name_zh":"LGwebOS-menubar：LG webOS 电视的原生 macOS 遥控器","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","testing","limits","license"],"requirements":["Reviewed at the 2026-10-13 head, when the repository held only this app. By 2026-10-20 GitHub serves it as TVmenubar-MacOS, and its head README splits it into separate LG webOS 5.0 and Roku OS 15.3.4 apps. It needs macOS 14 or later, Xcode Command Line Tools with Swift 5.9 or later, and an LG webOS TV on the same network; the only tested set is an LG 50UN7310PSC on webOS 5.0, and other models and versions are unverified. Pairing must be accepted on the TV, an IPv4 address is required, and Wake-on-LAN needs the TV’s MAC address.","scripts/build.sh produces a locally signed, unnotarized app bundle. Pairing uses encrypted WebSockets on port 3001; the app pins the TV certificate after explicit approval and keeps pairing keys in Keychain. The repository ships no device addresses or pairing keys, and a privacy-check script scans files before publishing.","The offline --self-check runs preference, certificate, pointer, Home, usage, resource and loopback media tests without a TV.","The README narrows the author’s post: screen time is counted locally only while the app is connected, AirPlay support is limited to guidance for macOS Screen Mirroring, picture-setting changes depend on TV permissions, and casting depends on the TV’s codecs and DLNA service.","MIT covers the project code; the PyWebOSTV manifest keeps its MIT notice, and LG, app and console icons keep their owners’ rights. Commits credit Claude as co-author, and an X post by the same account credits REA. This is an unofficial client."],"requirements_zh":["审阅版本为 2026-10-13 的最新提交，当时仓库只包含这一款应用。截至 2026-10-20，GitHub 已将仓库更名为 TVmenubar-MacOS，最新 README 将其拆分为 LG webOS 5.0 和 Roku OS 15.3.4 两款独立应用。需要 macOS 14 及以上、带 Swift 5.9 及以上的 Xcode Command Line Tools，以及位于同一网络的 LG webOS 电视；唯一测试过的机型是 webOS 5.0 的 LG 50UN7310PSC，其他型号和版本未经验证。配对须在电视上确认，需使用 IPv4 地址，网络唤醒还需要电视的 MAC 地址。","scripts/build.sh 生成本地签名、未经公证的应用包。配对使用 3001 端口上的加密 WebSocket；应用在用户明确同意后固定电视证书，并把配对密钥保存在钥匙串中。仓库不含任何设备地址或配对密钥，另有隐私检查脚本在发布前扫描文件。","离线 --self-check 无需电视即可运行偏好设置、证书、指针、主页、使用统计、资源和本地回环媒体测试。","README 收窄了作者帖子中的说法：屏幕使用时间只在应用连接期间于本地统计，AirPlay 仅提供 macOS 屏幕镜像的操作指引，画面设置能否修改取决于电视权限，投放媒体则取决于电视支持的编码和 DLNA 服务。","MIT 许可覆盖项目代码；PyWebOSTV 清单保留其 MIT 声明，LG、各应用及游戏主机图标归其所有者。提交记录将 Claude 列为共同作者，同一账号的 X 帖子称使用了 REA。这是非官方客户端。"],"targets":["app"],"url":"https://github.com/gabrielgreco1/TVmenubar-MacOS","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/ran-j/PS2Recomp/blob/eb8688b2fd191129f103a39543002c005b33409c/LICENSE","https://github.com/ran-j/PS2Recomp/blob/eb8688b2fd191129f103a39543002c005b33409c/ps2xRecomp/CMakeLists.txt","https://github.com/ran-j/PS2Recomp/blob/eb8688b2fd191129f103a39543002c005b33409c/ps2xRuntime/CMakeLists.txt","https://github.com/ran-j/PS2Recomp/blob/eb8688b2fd191129f103a39543002c005b33409c/ps2xRecomp/tools/ghidra/ExportPS2Functions.java","https://github.com/ran-j/PS2Recomp/releases/tag/v0.4","https://github.com/ran-j/PS2Recomp/compare/v0.4...eb8688b2fd191129f103a39543002c005b33409c"],"category":"game-analysis","description_en":"Experimental static recompiler that translates MIPS R5900 code from PlayStation 2 ELF executables into C++ and links it with a bundled runtime. ps2xAnalyzer or a Ghidra export script produces a per-game TOML of functions, stubs, skips and instruction patches; ps2xRecomp emits a literal instruction-by-instruction translation; ps2xRuntime and ps2xIOP supply guest memory, syscall dispatch, IOP module execution with HLE fallbacks and partial, largely stubbed GS/VU hardware. Output is not decompiled source, and getting a game to run remains per-game porting work.","description_zh":"实验性的静态重编译器，将 PlayStation 2 ELF 可执行文件中的 MIPS R5900 代码转换为 C++，并与随附的运行时链接。ps2xAnalyzer 或 Ghidra 导出脚本为每款游戏生成包含函数、存根、跳过项和指令补丁的 TOML 配置；ps2xRecomp 输出逐条指令的直译代码；ps2xRuntime 与 ps2xIOP 提供客户机内存、系统调用分发、带 HLE 回退的 IOP 模块执行，以及仅部分实现、大多为存根的 GS/VU 硬件。输出不是反编译源码，让游戏真正运行仍需针对每款游戏进行移植。","entry_url":"https://awesomerea.org/resources/ps2recomp/","entry_url_zh":"https://awesomerea.org/zh/resources/ps2recomp/","evidence_url":"https://github.com/ran-j/PS2Recomp/blob/eb8688b2fd191129f103a39543002c005b33409c/README.md","group":"tools","id":"ps2recomp","json_url":"https://awesomerea.org/resources/ps2recomp/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ps2recomp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ps2recomp/index.md","name":"PS2Recomp","name_zh":"PS2Recomp PlayStation 2 静态重编译器","record_type":"resource","relationship":"foundation","requirements":["Building needs CMake 3.20+ and a C++20 compiler; the README says it is tested mainly with MSVC, and some vector paths need SSE4/AVX host support. CMake fetches ELFIO, toml11, fmt, libdwarf and raylib at configure time, plus Dear ImGui when the debug UI is enabled. GitHub lists five source-only prereleases, v0.0 to v0.4 (the latest from 2026-04-05), with no binaries attached; the reviewed main commit (2026-10-14) is 36 commits after v0.4.","The user supplies the game ELF; the project ships no game code, and its project-description guidance names the original release as one the user must own. The preferred workflow exports functions from Ghidra with the bundled ExportPS2Functions.java script, while ps2_analyzer suits ELFs with debug symbols. Stub address bindings and game overrides target one exact ELF build and are not portable across games, regions or builds.","The README lists very poor VU and GS performance and partial, often stubbed hardware emulation as limitations. The tree also holds Android and PS Vita build directories and a ps2xStudio front end.","GPL-3.0; fetched dependencies keep their own licenses, and the README cites PCSX2 as a runtime reference."],"requirements_zh":["构建需要 CMake 3.20+ 和 C++20 编译器；README 称目前主要在 MSVC 上测试，部分向量路径要求主机支持 SSE4/AVX。CMake 在配置阶段拉取 ELFIO、toml11、fmt、libdwarf 和 raylib，启用调试界面时还会拉取 Dear ImGui。GitHub 列有 v0.0 至 v0.4 共五个仅含源码的预发布版本（最新为 2026-04-05），均未附带二进制文件；所审阅的 main 提交（2026-10-14）比 v0.4 多 36 个提交。","游戏 ELF 需由用户自行提供，项目不附带任何游戏代码，其项目描述说明也把原始发行版界定为用户必须拥有的版本。推荐流程是用随附的 ExportPS2Functions.java 脚本从 Ghidra 导出函数，ps2_analyzer 则适合带调试符号的 ELF。存根地址绑定和游戏覆盖模块只针对某一个确切的 ELF 构建，不能跨游戏、地区或版本通用。","README 列出的局限包括 VU 与 GS 性能很差、硬件仿真只完成一部分且多处为存根。仓库中还有 Android 与 PS Vita 构建目录以及 ps2xStudio 前端。","采用 GPL-3.0；拉取的依赖保留各自的许可，README 将 PCSX2 列为运行时参考。"],"targets":["binary","game"],"url":"https://github.com/ran-j/PS2Recomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/CorsixTH/CorsixTH/blob/e5138ed8de906ccbf6692299b4375f9312df147e/README.txt","https://github.com/CorsixTH/CorsixTH/blob/e5138ed8de906ccbf6692299b4375f9312df147e/CMakeLists.txt","https://github.com/CorsixTH/CorsixTH/blob/e5138ed8de906ccbf6692299b4375f9312df147e/CorsixTH/CMakeLists.txt","https://github.com/CorsixTH/CorsixTH/blob/e5138ed8de906ccbf6692299b4375f9312df147e/.github/workflows/Linux.yml","https://github.com/CorsixTH/CorsixTH/blob/e5138ed8de906ccbf6692299b4375f9312df147e/.github/workflows/Windows.yml","https://github.com/CorsixTH/CorsixTH/blob/e5138ed8de906ccbf6692299b4375f9312df147e/AGENTS.md","https://github.com/CorsixTH/CorsixTH/blob/e5138ed8de906ccbf6692299b4375f9312df147e/LICENSE.txt","https://github.com/CorsixTH/CorsixTH/releases/tag/v0.70.1"],"category":"reconstruction-cases","description_en":"Reimplements the engine of Bullfrog’s 1997 Theme Hospital, with game logic in Lua and C++ for graphics, sound, movies and pathfinding, on top of the original game’s data files. The README reports that the full campaign can be completed, lists features that are still missing, and adds extensions such as high resolutions and a map editor. It recreates the game’s behaviour on original content rather than recovering Bullfrog source code.","description_zh":"重新实现 Bullfrog 1997 年游戏 Theme Hospital 的引擎：游戏逻辑以 Lua 编写，图形、声音、影片和寻路由 C++ 处理，并建立在原游戏数据文件之上。README 报告完整战役已可通关，列出仍缺失的功能，并加入高分辨率和地图编辑器等扩展。它在原内容上重现游戏行为，而不是恢复 Bullfrog 的源码。","entry_url":"https://awesomerea.org/resources/corsixth-engine-case/","entry_url_zh":"https://awesomerea.org/zh/resources/corsixth-engine-case/","evidence_url":"https://github.com/CorsixTH/CorsixTH/blob/e5138ed8de906ccbf6692299b4375f9312df147e/README.md","group":"cases","id":"corsixth-engine-case","json_url":"https://awesomerea.org/resources/corsixth-engine-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/corsixth-engine-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/corsixth-engine-case/index.md","name":"CorsixTH: an open reimplementation of Theme Hospital","name_zh":"CorsixTH：Theme Hospital 的开源重新实现","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["limits","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed master snapshot follows the v0.70.1 release of 2026-08-28. The README lists multiplayer/LAN, AI hospitals, rats and the bonus rat level, vomit waves and the win-level video or letter as missing, and warns that some objects may glitch with walls. Custom campaigns, 4K support, the level editor and improved game logic are deliberate extensions.","Needs the user’s Theme Hospital data from the original CD, the GOG.com or EA editions, or the Theme Hospital demo, including the resource folder with ANIMS and LEVELS (sometimes named HOSP). The original graphics lack complete sets for some patient types, so enabling their regular spawning may cause anomalies.","Source builds use CMake 3.16+ with a C++17 compiler, SDL3, SDL3_mixer, Lua (or optionally LuaJIT) and zlib; FFmpeg enables in-game movies, and vcpkg manages dependencies for preset builds. The README lists builds for Windows and macOS, a Linux AppImage, Flatpak and Snap, and distribution packages for Linux and BSD.","CI runs luacheck and busted Lua unit tests on Linux, plus CMake builds with CTest on Windows.","LICENSE.txt grants MIT terms for CorsixTH and includes notices for bundled components such as Lua 5.5, LPeg and LuaFileSystem, so GitHub does not classify it as one licence. Original Theme Hospital data keeps its own rights. AGENTS.md gives instructions for AI coding agents."],"requirements_zh":["所审阅的 master 快照晚于 2026-08-28 发布的 v0.70.1。README 列出多人/局域网、AI 医院、老鼠与奖励老鼠关卡、呕吐潮以及过关影片或信件仍然缺失，并提醒部分物件可能与墙体出现显示错误。自定义战役、4K 支持、关卡编辑器和改进的游戏逻辑属于有意扩展。","需要使用者自备 Theme Hospital 数据，可来自原版光盘、GOG.com 或 EA 版本，或 Theme Hospital 试玩版，其中包括含 ANIMS 和 LEVELS 的资源文件夹（有时名为 HOSP）。原版图形缺少部分病人类型的完整素材，开启其常规出现可能导致异常。","源码构建使用 CMake 3.16+ 和 C++17 编译器，依赖 SDL3、SDL3_mixer、Lua（可选 LuaJIT）和 zlib；FFmpeg 用于游戏内影片，预设构建由 vcpkg 管理依赖。README 列出 Windows 与 macOS 构建、Linux AppImage、Flatpak 和 Snap，以及 Linux 和 BSD 发行版软件包。","CI 在 Linux 上运行 luacheck 与 busted Lua 单元测试，并在 Windows 上执行 CMake 构建和 CTest。","LICENSE.txt 以 MIT 条款授权 CorsixTH，并附有 Lua 5.5、LPeg、LuaFileSystem 等随附组件的声明，因此 GitHub 未将其识别为单一许可证。原 Theme Hospital 数据保留各自权利。AGENTS.md 为 AI 编程智能体提供说明。"],"targets":["game"],"url":"https://github.com/CorsixTH/CorsixTH","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/ben-wright-1/OpenRiseOfNations/blob/2a0dfde8acdb7185c6087b10ef89b4f66731e5a0/docs/STATUS.md","https://github.com/ben-wright-1/OpenRiseOfNations/blob/2a0dfde8acdb7185c6087b10ef89b4f66731e5a0/build-mac.sh","https://github.com/ben-wright-1/OpenRiseOfNations/blob/2a0dfde8acdb7185c6087b10ef89b4f66731e5a0/.gitignore","https://github.com/ben-wright-1/OpenRiseOfNations/blob/2a0dfde8acdb7185c6087b10ef89b4f66731e5a0/VERSION","https://github.com/ben-wright-1/OpenRiseOfNations/blob/2a0dfde8acdb7185c6087b10ef89b4f66731e5a0/LICENSE","https://x.com/benw_____/status/2111116976168779845","https://x.com/benw_____/status/2111260204884967933"],"category":"reconstruction-cases","description_en":"Reimplements the Rise of Nations: Extended Edition engine as a native macOS app with a Metal renderer, a deterministic simulation, a computer opponent and a compatible BigHugeScript compiler and virtual machine, loading art, maps, rules and scripts from the user’s own Windows installation. Subsystem specifications written from Ghidra study of the symbol-bearing executable, together with JavaScript reference tools, guided a C++17 implementation built with heavy Claude Code assistance. The alpha plays tutorials and scenarios, and its bit-exactness checks remain project-reported.","description_zh":"以原生 macOS 应用重新实现 Rise of Nations: Extended Edition 引擎，包含 Metal 渲染器、确定性模拟、电脑对手，以及兼容的 BigHugeScript 编译器与虚拟机；美术、地图、规则和脚本均从使用者自有的 Windows 版安装目录读取。项目依据对带调试符号的可执行文件进行 Ghidra 研究后撰写的子系统规范及 JavaScript 参考工具，在大量使用 Claude Code 的情况下编写 C++17 实现。该早期版本可游玩教程与场景，其逐位一致性检查仍为项目报告。","entry_url":"https://awesomerea.org/resources/openriseofnations-engine-case/","entry_url_zh":"https://awesomerea.org/zh/resources/openriseofnations-engine-case/","evidence_url":"https://github.com/ben-wright-1/OpenRiseOfNations/blob/2a0dfde8acdb7185c6087b10ef89b4f66731e5a0/README.md","group":"cases","id":"openriseofnations-engine-case","json_url":"https://awesomerea.org/resources/openriseofnations-engine-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/openriseofnations-engine-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/openriseofnations-engine-case/index.md","name":"OpenRiseOfNations: a native macOS engine reimplementation","name_zh":"OpenRiseOfNations：原生 macOS 引擎重新实现","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","attribution","testing","license"],"requirements":["The reviewed pin is version 0.1.1; releases v0.1.0 and v0.1.1 are dated 2026-10-14. README calls the C++17 engine early but playable on macOS 12+ with Metal and AppKit, covering tutorials and stock scenarios, unit control, economy, construction, combat, a computer opponent and the game’s scripts. Random maps and the skirmish setup screen, the Conquer the World campaign, multiplayer, saves and replays, garrisons, heroes and several other systems are not yet implemented.","Users must own Rise of Nations: Extended Edition and supply the Windows version’s game folder, whose Data and scenario directories provide the art, maps, rules, scripts and audio; README names SteamCMD or a copy from a Windows PC as routes. The repository and the un-notarised DMG ship no game files or original program code, with a fan-adapted main-menu logo as the stated exception. Building from source needs only Apple’s Command Line Tools and build-mac.sh.","README says the executable ships with full debug symbols, which enabled Ghidra study; about thirty specifications in docs/ describe each subsystem in paraphrase, citing original functions by name and address, and JavaScript reference tools in re/tools read the game data. README credits heavy use of Claude Code, directed and reviewed by the maintainer. STATUS.md says the reverse engineering ran as background agents that each produced a spec, while the author’s reply says he reverse-engineered in Ghidra and wrote the specs himself.","Verification is project-reported. C++ checkers compare damage on all 169,312 attacker/target pairs, prices, income and interface layouts with the reference tools, rules tables with a recorded game’s memory image and world grids across 156 stock scenarios, and a headless harness checks determinism. The simulation targets bit-identical lockstep behavior but has not yet been compared with recorded games, and rendering was checked by reading snapshots.","The engine is GPL-3.0; the menu logo is excluded, and its rights stay with the original owners. The project states that it is unaffiliated with Microsoft, Big Huge Games and SkyBox Labs. .gitignore keeps decompiler output, symbol dumps and extracted data out of the repository, although two small instruction-search outputs listing original addresses are committed under re/jobs."],"requirements_zh":["所审阅的固定版本为 0.1.1；v0.1.0 与 v0.1.1 发布日期均为 2026-10-14。README 称这一 C++17 引擎尚处早期但可游玩，运行于 macOS 12+，使用 Metal 与 AppKit，涵盖教程与内置场景、单位操控、经济、建造、战斗、电脑对手及游戏脚本。随机地图与遭遇战设置界面、征服世界战役、多人联机、存档与录像、驻军、英雄及其他若干系统尚未实现。","使用者须拥有 Rise of Nations: Extended Edition，并提供 Windows 版游戏目录，其中 Data 与 scenario 目录提供美术、地图、规则、脚本和音频；README 列出用 SteamCMD 下载或从 Windows 电脑复制两种方式。仓库及未经公证的 DMG 不包含游戏文件或原程序代码，唯一声明的例外是粉丝改编的主菜单标志。从源码构建只需 Apple 命令行工具和 build-mac.sh。","README 称游戏可执行文件附带完整调试符号，因而可借助 Ghidra 研究；docs/ 中约三十份规范以转述方式描述各子系统，并按名称和地址引用原函数，re/tools 中的 JavaScript 参考工具读取游戏数据。README 称开发大量使用 Claude Code，并由维护者指导和审查。STATUS.md 称逆向工作由后台智能体执行、各自产出一份规范，而作者回复称他本人在 Ghidra 中逆向并撰写规范。","验证结果均为项目报告。C++ 检查工具将全部 169,312 组攻击方／目标的伤害、价格、收入与界面布局同参考工具比较，将规则表同录制对局的内存镜像比较，并在 156 个内置场景上比较世界网格；无界面运行框架检查确定性。模拟以逐位一致的锁步行为为目标，但尚未与真实录制对局比较，渲染则通过查看快照检查。","引擎采用 GPL-3.0；菜单标志不在此范围内，其权利仍归原所有者。项目声明与 Microsoft、Big Huge Games 及 SkyBox Labs 无关联。.gitignore 将反编译输出、符号转储和提取数据排除在仓库之外，但 re/jobs 下提交了两份列有原地址的小型指令搜索输出。"],"targets":["game"],"url":"https://github.com/ben-wright-1/OpenRiseOfNations","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/N0zoM1z0/th04/blob/11577b35392c706f3bd39ff1ea932c003e1eaa6b/docs/PROGRESS.md","https://github.com/N0zoM1z0/th04/blob/11577b35392c706f3bd39ff1ea932c003e1eaa6b/docs/DOS_BUILD.md","https://github.com/N0zoM1z0/th04/blob/11577b35392c706f3bd39ff1ea932c003e1eaa6b/docs/TOOLCHAIN.md","https://github.com/N0zoM1z0/th04/blob/11577b35392c706f3bd39ff1ea932c003e1eaa6b/docs/ORACLES.md","https://github.com/N0zoM1z0/th04/blob/11577b35392c706f3bd39ff1ea932c003e1eaa6b/docs/RUNTIME.md","https://github.com/N0zoM1z0/th04/blob/11577b35392c706f3bd39ff1ea932c003e1eaa6b/docs/REFERENCE_ANALYSIS.md","https://github.com/N0zoM1z0/th04/blob/11577b35392c706f3bd39ff1ea932c003e1eaa6b/config/toolchain.toml","https://github.com/N0zoM1z0/th04/blob/11577b35392c706f3bd39ff1ea932c003e1eaa6b/.github/workflows/ci.yml","https://github.com/N0zoM1z0/th04/blob/11577b35392c706f3bd39ff1ea932c003e1eaa6b/LICENSE"],"category":"reconstruction-cases","description_en":"Reconstructs source for the Japanese PC-98 Touhou 4: Lotus Land Story and rebuilds all four DOS programs, MAIN.EXE, OP.EXE, MAINE.EXE and ZUN.COM, with a pinned Borland toolchain under Wine. Function acceptance against the original binaries is tracked separately from emulator replays that compare inputs, RNG, object pools and video with the original game. Complete-campaign, original-timing and byte-identity goals remain open.","description_zh":"为日版 PC-98 Touhou 4：东方幻想乡重建源码，并在 Wine 下用固定版本的 Borland 工具链重新构建全部四个 DOS 程序：MAIN.EXE、OP.EXE、MAINE.EXE 和 ZUN.COM。针对原二进制的函数认定，与在模拟器中对照原游戏比较输入、随机数、对象池和画面的回放分开记录。完整流程、原始时序与字节一致性目标仍未完成。","entry_url":"https://awesomerea.org/resources/th04-reconstruction-case/","entry_url_zh":"https://awesomerea.org/zh/resources/th04-reconstruction-case/","evidence_url":"https://github.com/N0zoM1z0/th04/blob/11577b35392c706f3bd39ff1ea932c003e1eaa6b/README.md","group":"cases","id":"th04-reconstruction-case","json_url":"https://awesomerea.org/resources/th04-reconstruction-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/th04-reconstruction-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/th04-reconstruction-case/index.md","name":"TH04: rebuilding Lotus Land Story’s four PC-98 programs from source","name_zh":"TH04：从源码重建东方幻想乡的四个 PC-98 程序","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["testing","prerequisites","prerequisites","testing","license"],"requirements":["Generated PROGRESS.md reports 661 of 663 reviewed authored functions exact across the four artifacts and 99.97% of confirmed MAIN authored bytes, with two MAIN cases deferred. README says the rebuilt products need not reproduce the original executable bytes and that complete-game and original-timing acceptance are unfinished. A 64-bit native port on the port/modern-64 branch is reported with scoped Linux clears.","Supply your own legal copy containing the Japanese zun.hdi; the importer requires OP.EXE, MAIN.EXE, MAINE.EXE and ZUN.COM matching the sizes and SHA-256 values in README, whose provenance is marked candidate-local-attested pending an independent pristine dump. Image preparation modifies a disposable copy of that image, and original executables and assets are never committed.","Builds use Turbo C++ 4.0J, TASM 5.0 and TLINK under Wine; the bootstrapper fetches them from third-party mirrors that TOOLCHAIN.md does not treat as authoritative, and takes MS-DOS Player from a pinned ReC98 checkout. The tested host is Debian 12 x86-64 with Python 3.11. Runtime checks also need DOSBox-X 2024.03.01, Xvfb, xdotool and ImageMagick, and the Windows build entry point uses a WSL toolchain bridge.","README reports original-versus-reconstructed DOS replays agreeing on consumed input, score, RNG, nine actor pools, 22 state blocks and configured video regions across the four bundled demos and longer Stage 1–3 routes, while raw GDC timing and some post-reset input samples still differ. A 2026-10-16 audit found frozen native programs and candidate MAIN files missing from local storage, so historical replay first needs recovery. Public CI runs target-independent checks only.","MIT covers repository-authored code and documentation, not the game, its assets or third-party work; ReC98, credited as a migration input, has no license file at the pinned revision, and the Borland tools stay proprietary. The repository is organized around coding-agent handoffs; REA’s TH04 helper showcase and Touhou essay cover parts of it."],"requirements_zh":["自动生成的 PROGRESS.md 报告四个程序共 663 个已审原作函数中 661 个一致，MAIN 已确认原作字节的 99.97% 一致，另有两个 MAIN 情形延后处理。README 说明重建产物不必复现原可执行文件字节，完整游戏与原始时序验收尚未完成。port/modern-64 分支上的 64 位原生移植报告了有限范围的 Linux 通关。","需自备含日版 zun.hdi 的合法副本；导入程序要求 OP.EXE、MAIN.EXE、MAINE.EXE 和 ZUN.COM 与 README 列出的大小和 SHA-256 一致，其来源标注为 candidate-local-attested，尚待独立的原始转储确认。准备镜像时会修改该镜像的一次性副本，原可执行文件和素材从不提交到仓库。","构建在 Wine 下使用 Turbo C++ 4.0J、TASM 5.0 和 TLINK；初始化脚本从 TOOLCHAIN.md 不视为权威来源的第三方镜像获取这些工具，并从固定版本的 ReC98 检出中取得 MS-DOS Player。测试宿主为 Debian 12 x86-64 与 Python 3.11。运行检查另需 DOSBox-X 2024.03.01、Xvfb、xdotool 和 ImageMagick，Windows 构建入口通过 WSL 工具链桥接。","README 报告：在四段内置演示及更长的第 1–3 关路线中，原版与重建版 DOS 回放在实际输入、分数、随机数、九个对象池、22 个状态块及配置的画面区域上一致，但原始 GDC 时序和部分重置后的输入采样仍有差异。2026-10-16 的审计发现本地存储中缺失冻结的原生程序和候选 MAIN 文件，因此重放历史结果须先恢复这些文件。公开 CI 只运行不依赖目标文件的检查。","MIT 许可覆盖仓库原创代码与文档，不涵盖游戏、素材或第三方作品；作为迁移输入并获署名的 ReC98 在固定版本中没有许可证文件，Borland 工具仍为专有软件。仓库围绕编程智能体交接文档组织；REA 的 TH04 辅助函数展示与东方重建文章覆盖其中部分内容。"],"targets":["game"],"url":"https://github.com/N0zoM1z0/th04","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/trzy/Supermodel/pull/343","https://github.com/trzy/Supermodel/blob/4f5d686bbdd4a58d50a9fe66971ae5396626f1a1/Src/Pro1000/Pro1000.h","https://github.com/trzy/Supermodel/blob/4f5d686bbdd4a58d50a9fe66971ae5396626f1a1/Config/Games.xml","https://github.com/trzy/Supermodel/blob/4f5d686bbdd4a58d50a9fe66971ae5396626f1a1/README.md","https://github.com/trzy/Supermodel/blob/4f5d686bbdd4a58d50a9fe66971ae5396626f1a1/Makefiles/Rules.inc","https://github.com/trzy/Supermodel/blob/4f5d686bbdd4a58d50a9fe66971ae5396626f1a1/Docs/LICENSE.txt","https://x.com/BartronPolygon/status/2110028302215999825","https://x.com/BartronPolygon/status/2109806939718943205"],"category":"reconstruction-cases","description_en":"Adds emulation of Real3D’s Pro-1000, the SCSI-attached image generator from which Sega’s Model 3 graphics hardware derives, to the Supermodel arcade emulator. It boots user-supplied Pro-1000 firmware from the SDK disc, emulates the board’s interrupt, JTAG and UART hardware, and exposes the firmware’s built-in monitor on the console. Nothing renders yet, and SCSI host communication is unimplemented.","description_zh":"为 Supermodel 街机模拟器加入对 Real3D Pro-1000 的模拟。Pro-1000 是通过 SCSI 连接主机的图像生成器，世嘉 Model 3 的图形硬件即由其衍生。该实现可启动使用者自备的、来自 SDK 光盘的 Pro-1000 固件，模拟板上的中断、JTAG 与 UART 硬件，并在控制台中提供固件内置的监控程序。目前尚无任何画面输出，与 SCSI 主机的通信也尚未实现。","entry_url":"https://awesomerea.org/resources/supermodel-real3d-pro1000-emulation-case/","entry_url_zh":"https://awesomerea.org/zh/resources/supermodel-real3d-pro1000-emulation-case/","evidence_url":"https://github.com/trzy/Supermodel/blob/4f5d686bbdd4a58d50a9fe66971ae5396626f1a1/Src/Pro1000/Pro1000.cpp","group":"cases","id":"supermodel-real3d-pro1000-emulation-case","json_url":"https://awesomerea.org/resources/supermodel-real3d-pro1000-emulation-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/supermodel-real3d-pro1000-emulation-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/supermodel-real3d-pro1000-emulation-case/index.md","name":"Supermodel: initial Real3D Pro-1000 image-generator emulation","name_zh":"Supermodel：Real3D Pro-1000 图像生成器的初步模拟","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","limits","license"],"requirements":["Reviewed at merge commit 4f5d686 of pull request #343, merged 2026-10-14, which adds a CPro1000 emulator class beside the Model 3 one. The PR boots the firmware to its UART monitor and accepts console commands such as help; it states that nothing is drawn, not even the start-up logo, and that SCSI communication is the next step.","Supply the Pro-1000 firmware images p1_p4.bin and p2.bin from the SDK disc; Config/Games.xml lists their CRC32 values, and the repository does not include them. The PR says the default scene and model data sat in a SCSI ROM that the SDK lacks and would have to come from original hardware that likely no longer exists; a synthetic SCSI ROM only gets past renderer initialization.","Supermodel documents builds with GCC and Make on Windows (MSYS2, with SDL2 and SDL2_net), Linux and macOS, and a Visual Studio project; the PR adds its sources to the shared Makefile rules and that project. No Pro-1000 test or rendering comparison accompanies the change.","Source comments describe the hardware findings as reverse-engineered working hypotheses drawn from firmware disassembly, logs of unmapped accesses and UART output, embedded SCCS module strings, address cross-references, part datasheets and the SDK manuals. Some registers and the JTAG scan chain remain unknown.","Supermodel’s source headers declare GPL-3.0-or-later; the firmware, SDK material and demo databases keep their own rights. The author’s X post credits Claude with doing the reverse engineering and writing the emulation, and credits co-author Ian Curtis with the earlier SCSI-interception demos."],"requirements_zh":["审阅版本为拉取请求 #343 的合并提交 4f5d686（2026-10-14 合并），它在 Model 3 模拟器类旁新增了 CPro1000 类。该 PR 可将固件启动到 UART 监控程序，并接受 help 等控制台命令；PR 说明目前屏幕上什么都不显示，连开机标志也没有，下一步将实现 SCSI 通信。","需自备来自 SDK 光盘的 Pro-1000 固件映像 p1_p4.bin 和 p2.bin；Config/Games.xml 列出了它们的 CRC32 值，仓库本身不包含这些文件。PR 称默认场景和模型数据存放在 SDK 中没有的 SCSI ROM 里，只能从很可能已不复存在的原始硬件获取；合成的 SCSI ROM 仅能让程序通过渲染器初始化。","Supermodel 文档说明了在 Windows（MSYS2，配合 SDL2 与 SDL2_net）、Linux 和 macOS 上使用 GCC 与 Make 构建的方法，以及 Visual Studio 工程；该 PR 将新源文件加入共用的 Makefile 规则和该工程。此次改动没有附带 Pro-1000 测试或渲染对照。","源码注释将硬件结论描述为经逆向得出的工作假设，依据包括固件反汇编、未映射访问日志和 UART 输出、内嵌的 SCCS 模块字符串、地址交叉引用、芯片数据手册以及 SDK 手册。部分寄存器和 JTAG 扫描链仍然未知。","Supermodel 源码文件头声明采用 GPL-3.0-or-later；固件、SDK 资料和演示数据库保留各自的权利。作者的 X 帖子称逆向工作和模拟代码都由 Claude 完成，并将更早的 SCSI 拦截演示归功于合著者 Ian Curtis。"],"targets":["firmware"],"url":"https://github.com/trzy/Supermodel","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/nccgroup/blackboxprotobuf/blob/b98861e0f732e902923abc36cc08c40917f34127/lib/README.md","https://github.com/nccgroup/blackboxprotobuf/blob/b98861e0f732e902923abc36cc08c40917f34127/burp/README.md","https://github.com/nccgroup/blackboxprotobuf/blob/b98861e0f732e902923abc36cc08c40917f34127/mitmproxy/README.md","https://github.com/nccgroup/blackboxprotobuf/blob/b98861e0f732e902923abc36cc08c40917f34127/lib/pyproject.toml","https://github.com/nccgroup/blackboxprotobuf/blob/b98861e0f732e902923abc36cc08c40917f34127/LICENSE","https://github.com/nccgroup/blackboxprotobuf/releases/tag/v1.4.2","https://pypi.org/project/bbpb/1.4.2/"],"category":"protocol-analysis","description_en":"NCC Group's tools for decoding and re-encoding Protocol Buffers messages without the matching .proto definition. The decoder returns the message data with an editable type definition built from best-effort guesses based on wire types; analysts can name fields, correct types and re-encode edited messages, which protoc --decode_raw cannot do. It ships as a Python library with a bbpb CLI, a Jython Burp Suite extension and a mitmproxy addon, and its README traces it to modifying messages during mobile penetration tests.","description_zh":"NCC Group 推出的工具集，可在没有对应 .proto 定义的情况下解码并重新编码 Protocol Buffers 报文。解码器返回报文数据，以及根据线路类型尽力推测生成、可编辑的类型定义；分析者可以为字段命名、修正类型并重新编码修改后的报文，这是 protoc --decode_raw 做不到的。它提供 Python 库及 bbpb 命令行工具、基于 Jython 的 Burp Suite 扩展和 mitmproxy 插件，README 说明它最初用于在移动应用渗透测试中修改报文。","entry_url":"https://awesomerea.org/resources/blackbox-protobuf/","entry_url_zh":"https://awesomerea.org/zh/resources/blackbox-protobuf/","evidence_url":"https://github.com/nccgroup/blackboxprotobuf/blob/b98861e0f732e902923abc36cc08c40917f34127/README.md","group":"tools","id":"blackbox-protobuf","json_url":"https://awesomerea.org/resources/blackbox-protobuf/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/blackbox-protobuf/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/blackbox-protobuf/index.md","name":"Blackbox Protobuf","name_zh":"Blackbox Protobuf 无定义 Protobuf 解码与重编码工具","record_type":"resource","relationship":"foundation","requirements":["The library and CLI install from PyPI as bbpb (1.4.2, Python >=3.8,<4.0); the README calls the blackboxprotobuf PyPI package an older fork. The mitmproxy addon loads mitmproxy/bbpb.py with bbpb installed in the same environment; edited types survive restarts only with the bbpb_project_file option, and editing commands are unavailable in mitmweb.","The Burp extension needs Burp Suite configured with Jython 2.7+ and a clone with git submodule update --init. gRPC needs Burp's HTTP/2 support, and only uncompressed gRPC payloads are handled.","Field types are guessed from wire types and occasionally field content, so type definitions may need analyst correction; field names and meanings are not recovered, and a type-discovery tool is listed only as future work. .proto import and export use a partial parser that does not resolve import statements.","MIT. The default branch was last committed on 2025-03-14, the day of release v1.4.2."],"requirements_zh":["库与命令行工具可从 PyPI 以 bbpb 安装（1.4.2，要求 Python >=3.8,<4.0）；README 指出 PyPI 上的 blackboxprotobuf 软件包是较早的派生版本。mitmproxy 插件加载 mitmproxy/bbpb.py，并要求在同一环境中安装 bbpb；只有设置 bbpb_project_file 选项，编辑过的类型才能在重启后保留，mitmweb 中也无法使用编辑命令。","Burp 扩展需要配置了 Jython 2.7+ 的 Burp Suite，并在克隆仓库后运行 git submodule update --init。处理 gRPC 需开启 Burp 的 HTTP/2 支持，且只支持未压缩的 gRPC 负载。","字段类型根据线路类型（偶尔结合字段内容）推测，类型定义可能需要分析者修正；字段名称和含义无法恢复，类型发现工具仅列为未来计划。.proto 导入导出使用不完整的解析器，不处理 import 语句。","采用 MIT 许可。默认分支最后一次提交于 2025-03-14，与 v1.4.2 发布同日。"],"targets":["app","protocol"],"url":"https://github.com/nccgroup/blackboxprotobuf","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/whaesemeyer/claude-intercept/blob/c2b7d01911e11e063533dbd61a22b404b503b48d/skill.md","https://github.com/whaesemeyer/claude-intercept/blob/c2b7d01911e11e063533dbd61a22b404b503b48d/package.json","https://github.com/whaesemeyer/claude-intercept/blob/c2b7d01911e11e063533dbd61a22b404b503b48d/src/ui/server.js","https://github.com/whaesemeyer/claude-intercept/blob/c2b7d01911e11e063533dbd61a22b404b503b48d/src/proxy/index.js","https://github.com/whaesemeyer/claude-intercept/blob/c2b7d01911e11e063533dbd61a22b404b503b48d/LICENSE","https://x.com/Nol_Mak/status/2111057177200738632"],"category":"agent-workflows","description_en":"A local man-in-the-middle proxy and dashboard that captures HTTP/S traffic from the user’s own computer and devices, stores it in SQLite and hands it to Claude Code through an /intercept skill and CLI. Exports such as API documentation and traffic summaries support investigating request patterns and undocumented endpoints. It is an agent-facing capture tool for authorized testing, not a reconstruction case, and it has no established REA connection.","description_zh":"本地中间人代理与控制面板，捕获使用者自有电脑和设备的 HTTP/S 流量，存入 SQLite，并通过 /intercept 技能和命令行交给 Claude Code。API 文档、流量摘要等导出模式可用于调查请求模式与未公开接口。这是面向智能体、用于授权测试的抓包工具，不是重建案例，也未确立与 REA 的关联。","entry_url":"https://awesomerea.org/resources/claude-intercept-traffic-capture/","entry_url_zh":"https://awesomerea.org/zh/resources/claude-intercept-traffic-capture/","evidence_url":"https://github.com/whaesemeyer/claude-intercept/blob/c2b7d01911e11e063533dbd61a22b404b503b48d/README.md","group":"agents","id":"claude-intercept-traffic-capture","json_url":"https://awesomerea.org/resources/claude-intercept-traffic-capture/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/claude-intercept-traffic-capture/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/claude-intercept-traffic-capture/index.md","name":"Claude Intercept","name_zh":"Claude Intercept 流量捕获分析工具","record_type":"resource","relationship":"independent-agent-integration","requirements":["The reviewed pin is package version 1.0.0, last updated 2026-06-02. It combines a Node.js proxy with a per-machine CA, a live web dashboard, local SQLite storage, a CLI and a Claude Code /intercept skill, with Markdown or JSON exports shaped for agent analysis. README asks for Node.js 22.5+, while package.json declares 22.15.0 or later; the system-proxy toggle and certificate trust are automated on macOS and GNOME/KDE Linux, and Windows needs manual configuration.","HTTPS capture requires installing and trusting the generated CA and routing a device through the proxy; README covers macOS, Linux, iOS, Android and Firefox, and warns that leaving the system proxy enabled after stopping the server breaks connectivity. README says some certificate-pinned domains fail under the proxy, and the skill states that WebSocket connections are tunneled and logged without frame parsing.","In the reviewed source the proxy and the dashboard listen on all network interfaces, and the dashboard API has no access check; README warns against running it on untrusted networks. Captures and some exports can contain account credentials and personal data, and anything passed to Claude for analysis leaves the machine under the model provider’s terms. The project limits use to devices and accounts the user owns or is explicitly permitted to test.","Tests under src/__tests__ run with node --test, but the repository has no CI workflow, and the README’s install example still uses a placeholder repository URL.","The repository is licensed under CC BY-NC 4.0, a non-commercial Creative Commons license rather than a software license, so commercial use is not permitted. The reported post presents it as a Ship Systems project built with William Haesemeyer."],"requirements_zh":["所审阅的固定版本对应软件包 1.0.0，最后更新于 2026-06-02。它由使用每台机器独立 CA 的 Node.js 代理、实时网页控制面板、本地 SQLite 存储、命令行工具和 Claude Code /intercept 技能组成，并提供面向智能体分析的 Markdown 或 JSON 导出。README 要求 Node.js 22.5+，package.json 则声明 22.15.0 及以上；系统代理开关和证书信任在 macOS 与 GNOME／KDE Linux 上自动完成，Windows 需手动配置。","捕获 HTTPS 需安装并信任生成的 CA，并让设备经由该代理联网；README 介绍了 macOS、Linux、iOS、Android 与 Firefox 的设置，并提醒停止服务后若未关闭系统代理将导致断网。README 称部分启用证书固定的域名在代理下无法访问，技能说明 WebSocket 连接仅被转发和记录，不解析帧内容。","在所审阅的源码中，代理和控制面板都监听所有网络接口，控制面板 API 没有访问校验；README 提醒不要在不受信任的网络中运行。捕获内容和部分导出可能含有账户凭据与个人数据，交给 Claude 分析的内容也会离开本机，并受模型服务商条款约束。项目将用途限定为使用者自有或获明确授权测试的设备和账户。","src/__tests__ 下的测试通过 node --test 运行，但仓库没有 CI 工作流，README 的安装示例仍使用占位仓库地址。","仓库采用 CC BY-NC 4.0 许可，这是非商业性的知识共享许可而非软件许可，因此不允许商业使用。所报告的帖子将其介绍为 Ship Systems 与 William Haesemeyer 合作的项目。"],"targets":["app","protocol"],"url":"https://github.com/whaesemeyer/claude-intercept","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/cdlewis/snowboardkids2-decomp/blob/7600c79d3909fce344435dcccbb6ad3bc2aad34e/README.md","https://github.com/cdlewis/snowboardkids2-decomp/blob/7600c79d3909fce344435dcccbb6ad3bc2aad34e/symbol_addrs.txt"],"category":"learning","description_en":"A walkthrough from the Snowboard Kids 2 decompilation project on attaching gdb-multiarch to the Ares emulator while the matching build still cannot carry debug information. It breaks on a function by its ELF symbol name and reads one structure byte by hand to test whether that byte selects the level overlay. A short method note on checking decompilation hypotheses at runtime, not a reconstruction result.","description_zh":"Snowboard Kids 2 反编译项目的一篇操作说明：在一致性构建仍无法加入调试信息时，把 gdb-multiarch 接到 Ares 模拟器上。文中按 ELF 符号名在函数处设断点，再手动读取结构体中的一个字节，检验它是否决定加载哪个关卡 overlay。这是在运行时检验反编译假设的简短方法记录，而非重建成果。","entry_url":"https://awesomerea.org/resources/finding-jingle-town-n64-debugging/","entry_url_zh":"https://awesomerea.org/zh/resources/finding-jingle-town-n64-debugging/","evidence_url":"https://blog.chrislewis.au/finding-jingle-town-debugging-an-n64-game-without-symbols/","group":"learn","id":"finding-jingle-town-n64-debugging","json_url":"https://awesomerea.org/resources/finding-jingle-town-n64-debugging/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/finding-jingle-town-n64-debugging/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/finding-jingle-town-n64-debugging/index.md","name":"Finding Jingle Town: Debugging an N64 Game without Symbols","name_zh":"寻找 Jingle Town：在没有调试符号时调试 N64 游戏","record_type":"resource","relationship":"learning","requirements":["The post, dated 23 December 2025, asks one question: how Snowboard Kids 2 picks the level overlay on level entry. It breaks on a function that indexes 16 overlays and reads the candidate byte for Sunny Mountain, Turtle Island and Jingle Town (0, 1 and 2). Other levels and the code that sets the index are not traced.","Following it needs a Snowboard Kids 2 N64 ROM, original or rebuilt by the decompilation (the post treats them as byte-identical), and the decompilation's build/snowboardkids2.elf for function names. The post does not cover obtaining or building either.","Tools are gdb-multiarch set to mips:4000 and Ares with debugging enabled, connected through Ares's GDB remote support; an SSH reverse tunnel is optional when GDB runs on another host, as on the author's x86 Ubuntu server. The post explains that adding -g would shift sections in the absolute-address build and usually stop it booting, so structure fields are read by manual pointer arithmetic.","Results are the author's observations from one debugging session. The post calls the workflow painfully manual and reports gdbgui did not work with the setup. Its generated names have since changed: at reviewed commit 7600c79, symbol_addrs.txt names 0x8003D560 initRace and 0x800AFE8C gGameSessionContext, and the footnoted src/3E160.c is no longer in the tree.","The post describes manual debugging. The decompilation repository has no license file at the reviewed commit, and the game ROM and its content keep their own rights."],"requirements_zh":["文章日期为 2025 年 12 月 23 日，只回答一个问题：Snowboard Kids 2 进入关卡时如何选择要加载的关卡 overlay。文中在一个按索引访问 16 个 overlay 的函数处设断点，并读取 Sunny Mountain、Turtle Island 和 Jingle Town 三个关卡对应的候选字节（0、1、2）。其他关卡及设置该索引的代码均未追踪。","照做需要 Snowboard Kids 2 的 N64 ROM（原版或由反编译项目重建的版本，文中认为两者逐字节一致），以及反编译项目生成的 build/snowboardkids2.elf 以提供函数名。文章未说明如何取得或构建二者。","所用工具为设定 mips:4000 架构的 gdb-multiarch，以及开启调试功能的 Ares，二者通过 Ares 的 GDB 远程调试支持连接；若 GDB 运行在另一台主机上（如作者使用的 x86 Ubuntu 服务器），可另用 SSH 反向隧道。文章解释，在依赖绝对地址的构建中加入 -g 会使各段偏移，游戏通常无法启动，因此只能手动计算指针偏移来读取结构体字段。","结果是作者在一次调试过程中的观察。文章称该流程非常依赖手工操作，并说明 gdbgui 未能在该环境下正常使用。文中自动生成的名称后来已更改：在所审阅的提交 7600c79 中，symbol_addrs.txt 将 0x8003D560 命名为 initRace，将 0x800AFE8C 命名为 gGameSessionContext，脚注链接的 src/3E160.c 也已不在源码树中。","文章记录的是手动调试。所审阅提交中的反编译仓库没有许可证文件，游戏 ROM 及其内容仍受各自权利约束。"],"targets":["game"],"url":"https://blog.chrislewis.au/finding-jingle-town-debugging-an-n64-game-without-symbols/","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","category":"learning","description_en":"JPCERT/CC’s 15 October 2026 blog post on the infrastructure behind a series of unauthorized-access incidents in Japan. It reports that the attackers used AI for known-vulnerability scanning and API attacks, and that attack servers held APKs, jadx- and Blutter-related files, APK-extraction directories and an SSRF test script used to probe app APIs. It is a defender’s account of observed attacker tooling with mitigation advice, not a published AI-assisted analysis method or reproducible workflow.","description_zh":"JPCERT/CC 于 2026 年 10 月 15 日发布的博客文章，调查日本国内一系列不正当访问事件背后的攻击基础设施。文章报告攻击者利用 AI 扫描已知漏洞并经由 API 发动攻击，攻击服务器上存有 APK 文件、与 jadx 和 Blutter 相关的文件、APK 解包目录，以及用于探测应用 API 的 SSRF 验证脚本。这是防御方对所观察到的攻击者工具的记述并附缓解建议，而非公开的 AI 辅助分析方法或可复现的工作流程。","entry_url":"https://awesomerea.org/resources/jpcert-apk-api-attack-infrastructure-report/","entry_url_zh":"https://awesomerea.org/zh/resources/jpcert-apk-api-attack-infrastructure-report/","evidence_url":"https://blogs.jpcert.or.jp/ja/2026/10/web_api_attacks.html","group":"learn","id":"jpcert-apk-api-attack-infrastructure-report","json_url":"https://awesomerea.org/resources/jpcert-apk-api-attack-infrastructure-report/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/jpcert-apk-api-attack-infrastructure-report/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/jpcert-apk-api-attack-infrastructure-report/index.md","name":"JPCERT/CC: APK analysis and API probing on attack servers","name_zh":"JPCERT/CC：攻击服务器上的 APK 解析与 API 探测","record_type":"resource","relationship":"learning","requirements":["The reviewed source is the Japanese-language JPCERT/CC Eyes post dated 15 October 2026; no English version was found at the corresponding URL during review. It follows JPCERT/CC’s 8 October alert about personal-data leaks reported by several organizations in Japan, and describes three investigated servers, one of which it states is not directly related to these attacks.","The post states that JPCERT/CC confirmed AI use for scanning and API attacks, but it does not name the AI system or tooling or explain how AI was applied. The roles of the SSRF script and some files are described as likely rather than confirmed. Findings are illustrated with partial file listings and one script; no samples, logs, prompts or timelines are published.","Appendix A describes Blutter as an open-source tool for analyzing the Dart AOT-compiled code in Flutter apps, and cites third-party write-ups that combine Frida, Blutter, LIEF and Capstone to recover embedded keys and request-signing logic. These are referenced examples, not JPCERT/CC’s own reproduction.","Recommended mitigations are to keep API signing keys and long-lived credentials out of apps, to authenticate and authorize users on the server rather than rely on in-app signing or obfuscation, to rate-limit and monitor API use, and to restrict SSRF-prone URL fetches and re-validate redirect destinations. The post also lists three attacker IP indicators.","The post names jadx and Blutter but no other analysis tools."],"requirements_zh":["所审阅来源是 JPCERT/CC Eyes 于 2026 年 10 月 15 日发布的日文文章；审阅时在对应网址未找到英文版本。文章承接 JPCERT/CC 于 10 月 8 日就日本多个组织相继公布的个人信息泄露事件发布的预警，介绍了三台被调查的服务器，并说明其中一台与这些攻击没有直接关系。","文章称 JPCERT/CC 已确认攻击者利用 AI 进行扫描和 API 攻击，但未指明所用的 AI 系统或工具，也未说明 AI 的具体用法。SSRF 脚本及部分文件的用途以“可能”而非“已确认”的措辞描述。文章以部分文件清单和一段脚本作为图示，未公开样本、日志、提示词或时间线。","附录 A 将 Blutter 介绍为用于分析 Flutter 应用中 Dart AOT 编译代码的开源工具，并援引第三方文章：这些文章结合 Frida、Blutter、LIEF 与 Capstone，恢复了内嵌密钥与请求签名逻辑。这些是援引的案例，并非 JPCERT/CC 自行复现。","文章建议的缓解措施包括：不在应用中嵌入 API 签名密钥和长期有效的凭据；在服务器端对用户进行认证和授权，而不是依赖应用内签名或混淆；对 API 使用进行速率限制与监控；限制易受 SSRF 影响的外部 URL 获取，并重新校验重定向目标。文章还列出了三个攻击者 IP 指标。","文章提到 jadx 与 Blutter，未提及其他分析工具。"],"targets":["app"],"url":"https://blogs.jpcert.or.jp/ja/2026/10/web_api_attacks.html","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/LinuxJessi/decomp-compat-kit/blob/d9bb53dac364ecfaff4f8b00ea44baec60a27abf/tools/verify_decomp.py","https://github.com/LinuxJessi/decomp-compat-kit/blob/d9bb53dac364ecfaff4f8b00ea44baec60a27abf/tools/dump_symbols.py","https://github.com/LinuxJessi/decomp-compat-kit/blob/d9bb53dac364ecfaff4f8b00ea44baec60a27abf/tools/symbols_to_splat.py","https://github.com/LinuxJessi/decomp-compat-kit/blob/d9bb53dac364ecfaff4f8b00ea44baec60a27abf/symbols/symbols.csv","https://github.com/LinuxJessi/decomp-compat-kit/blob/d9bb53dac364ecfaff4f8b00ea44baec60a27abf/LICENSE"],"category":"game-analysis","description_en":"Checks a PS2 matching decompilation from outside its own build: the C is recompiled with a stock, unpatched ee-gcc 2.96 and assembler, then each function is byte-compared against the original and every difference is classified by its likely toolchain cause. Companion scripts export ELF symbol tables to CSV and convert them to splat symbol files. Defaults target Xenosaga Episode I; the README says the method generalises but the defaults do not.","description_zh":"在匹配反编译项目自身的构建之外进行检查：用未打补丁的原版 ee-gcc 2.96 及汇编器重新编译其 C 代码，再逐函数与原程序逐字节比较，并按可能的工具链原因对每处差异分类。配套脚本可将 ELF 符号表导出为 CSV，并转换为 splat 符号文件。默认配置针对 Xenosaga Episode I；README 称方法可推广，默认配置则不能。","entry_url":"https://awesomerea.org/resources/decomp-compat-kit/","entry_url_zh":"https://awesomerea.org/zh/resources/decomp-compat-kit/","evidence_url":"https://github.com/LinuxJessi/decomp-compat-kit/blob/d9bb53dac364ecfaff4f8b00ea44baec60a27abf/README.md","group":"tools","id":"decomp-compat-kit","json_url":"https://awesomerea.org/resources/decomp-compat-kit/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/decomp-compat-kit/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/decomp-compat-kit/index.md","name":"Xenosaga I Decomp Compatibility Kit","name_zh":"Xenosaga I 反编译兼容性工具包","record_type":"resource","relationship":"foundation","requirements":["The reviewed commit d9bb53d is the second of two commits, both made on 2026-09-25; there are no releases or tests. It holds three Python tools and symbol data for the NTSC-U Xenosaga Episode I executable SLUS_204.69 and its five overlays, built with SCE ee-gcc 2.96. Tool docstrings still refer to out/ paths and a TOOLCHAIN.md that are not in the repository.","verify_decomp.py needs a checkout of the decompilation under test, your own SLUS_204.69 and extracted originals (located through DECOMP_GAME_DIR), and an i386 root filesystem with stock ee-gcc 2.96 and ee-as run through Docker under linux/386 emulation, plus clang for preprocessing. The README points to decompme/compilers for the compiler, which is not vendored, and documents a colima and binfmt route for Apple-silicon Macs.","It compiles each C translation unit with -DSKIP_ASM, compares every defined function against the original bytes, labels differences hazard-nop, reorder, mixed, immediate or unexplained, and exits nonzero only for unexplained ones. The README warns that the mixed class masks branch and call targets, so a wrong target there is not flagged; functions whose relocations need the tested project's data layout are reported as unverifiable.","The README's case study against an anonymised PS2 matching decompilation reports 817 of 857 functions identical, 40 differences all in toolchain classes, 195 unverifiable and one compiler crash. It also reports 5,927 shared names with no address disagreements against another decompilation's symbol file. Neither result is published with its inputs.","MIT-licensed. The repository includes a 15,132-entry symbol table that its README says comes from the unstripped retail executables, but no game binaries, extracted assets or decompiled game code; the game remains its rights holders' property."],"requirements_zh":["所审阅的提交 d9bb53d 是仓库仅有的两个提交中的第二个，二者均提交于 2026-09-25；没有发布版本或测试。仓库包含三个 Python 工具，以及北美版 Xenosaga Episode I 可执行文件 SLUS_204.69 及其五个 overlay 的符号数据，这些程序由 SCE ee-gcc 2.96 编译。工具的文档字符串仍提到仓库中不存在的 out/ 路径和 TOOLCHAIN.md。","verify_decomp.py 需要待检验的反编译项目检出、使用者自有的 SLUS_204.69 及提取出的原始文件（通过 DECOMP_GAME_DIR 指定），以及含原版 ee-gcc 2.96 和 ee-as 的 i386 根文件系统，并通过 Docker 在 linux/386 仿真下运行，另需 clang 进行预处理。README 指引从 decompme/compilers 获取编译器（工具包不附带），并说明在 Apple 芯片 Mac 上借助 colima 和 binfmt 的运行方法。","它用 -DSKIP_ASM 编译每个 C 翻译单元，将其中定义的每个函数与原始字节比较，把差异标记为 hazard-nop、reorder、mixed、immediate 或 unexplained，仅在存在 unexplained 时返回非零退出码。README 提醒，mixed 类会屏蔽分支与调用目标，因此其中错误的目标不会被标出；重定位依赖被测项目数据布局的函数记为无法验证。","README 中针对一个匿名 PS2 匹配反编译项目的案例报告：857 个函数中 817 个完全一致，40 处差异均属工具链类别，195 个无法验证，另有一次编译器崩溃。README 还报告与另一反编译项目的符号文件相比，有 5,927 个共同名称且地址无一不符。两项结果均未连同输入一并公开。","采用 MIT 许可。仓库包含一份 15,132 条的符号表，README 称其来自未剥离符号的零售版可执行文件；仓库不含游戏二进制、提取的素材或反编译的游戏代码，游戏本身仍归权利人所有。"],"targets":["binary","game"],"url":"https://github.com/LinuxJessi/decomp-compat-kit","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/HayatoG/iss_pc/blob/d3995feb0cea1e2edc0c71fab139d1e89f0a7305/.recomp.json","https://github.com/HayatoG/iss_pc/blob/d3995feb0cea1e2edc0c71fab139d1e89f0a7305/docs/ARQUIVOS_NECESSARIOS.md","https://github.com/HayatoG/iss_pc/blob/d3995feb0cea1e2edc0c71fab139d1e89f0a7305/docs/EXPERIMENTAL_FIXES.md","https://github.com/HayatoG/iss_pc/blob/d3995feb0cea1e2edc0c71fab139d1e89f0a7305/.github/workflows/build.yml","https://github.com/HayatoG/iss_pc/blob/d3995feb0cea1e2edc0c71fab139d1e89f0a7305/.gitmodules","https://github.com/HayatoG/iss_pc/blob/d3995feb0cea1e2edc0c71fab139d1e89f0a7305/port/LICENSE","https://github.com/HayatoG/iss_pc/releases/tag/v2026.10.19-d3995fe"],"category":"reconstruction-cases","description_en":"Runs the PS4 inFAMOUS Second Son’s own x86-64 code natively on Windows and Linux: a runtime reimplements the PS4 system libraries the game uses, and a shadPS4-derived core translates its GPU commands and shaders to Vulkan. The project reports a playable, in-development port that reaches gameplay and the first chapters, with unstable performance and remaining graphics glitches. It is a compatibility-runtime port rather than a decompilation, and its results remain project-reported.","description_zh":"在 Windows 与 Linux 上原生运行 PS4 版《声名狼藉：次子》自身的 x86-64 代码：由运行时重新实现游戏所用的 PS4 系统库，并以源自 shadPS4 的核心将其 GPU 命令与着色器转换为 Vulkan。项目报告该移植可以游玩但仍在开发中，能进入游戏并通过最初几章，性能仍不稳定，也有尚未解决的图形问题。这是兼容运行时移植而非反编译重建，结果仍为项目报告。","entry_url":"https://awesomerea.org/resources/infamous-second-son-pc-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/infamous-second-son-pc-port-case/","evidence_url":"https://github.com/HayatoG/iss_pc/blob/d3995feb0cea1e2edc0c71fab139d1e89f0a7305/README.md","group":"cases","id":"infamous-second-son-pc-port-case","json_url":"https://awesomerea.org/resources/infamous-second-son-pc-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/infamous-second-son-pc-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/infamous-second-son-pc-port-case/index.md","name":"inFAMOUS Second Son native PC port","name_zh":"《声名狼藉：次子》原生 PC 移植","reconstruction_method":"other","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["Reviewed at the commit of release v2026.10.19-d3995fe (2026-10-19); the repository was created on 2026-10-13 and changes quickly. README marks the port playable and in development: boot, intro, gameplay up to a named early mission, saves, audio, controllers and motion-sensor substitutes work, while performance is typically 20–30 FPS on an RTX 2060, first-time shader compilation stutters and some fog, water and fire effects flicker. Full-game completion is not confirmed, and a crash on AMD Polaris GPUs under Windows remains open.","Supply your own copy of the US PS4 release CUSA00223, base game 1.00 merged with update 1.07 (about 33 GB), including the 1.07 eboot.bin and the game’s own libc and Fios2 modules; README reports that CUSA00004 also boots but is not tested in depth. No PS4 firmware modules are needed, and README states that no game code, files or art are distributed. The project disclaims affiliation with Sony Interactive Entertainment and Sucker Punch Productions.","Play needs 64-bit Windows 10 (1903+) or 11, or x86-64 Linux with glibc 2.39+, and a Vulkan 1.3 GPU, with 6 GB of VRAM recommended; CPUs lacking F16C or SSE4A get instruction emulation at start-up. Building uses a recursive clone with the listed submodules and port/build.sh, with SDL3, Vulkan, FFmpeg, FreeType, Boost, fmt, Zydis and glslang on Linux and an MSYS2 CLANG64 toolchain on Windows; the Qt launcher needs PySide6.","Evidence is play-testing, issue reports and logs: README cites Linux tests on Nobara/Fedora 44, player tests on Windows and a seven-minute RTX 2060 session with a median of 27 FPS. The CI workflow builds Linux and Windows packages for pull requests and authorized manual releases, and its Linux job runs C, Python and GPU-library unit tests without game content or automated gameplay tests.","README declares GPL-2.0 for the project and credits code from HayatoG’s earlier The Last Guardian and Gravity Rush 2 ports, gow3_pc, bloodborne_pc, shadPS4 and a fork of it, and a Shadow of the Colossus port; experimental fixes are traced to their source commits. The game and its assets keep their owners’ rights."],"requirements_zh":["审阅版本为发布版 v2026.10.19-d3995fe 对应的提交（2026-10-19）；仓库创建于 2026-10-13，更新频繁。README 将该移植标为可游玩、仍在开发中：启动、开场、直至早期某个具名任务的游戏流程、存档、音频、手柄以及体感传感器的替代操作均可使用；性能在 RTX 2060 上通常为 20–30 FPS，着色器首次编译时会卡顿，部分雾、水和火焰效果仍会闪烁。尚未确认能完整通关，Windows 下 AMD Polaris 显卡的崩溃问题也仍未解决。","需自备美版 PS4 游戏 CUSA00223，即基础版 1.00 与 1.07 更新合并后的文件（约 33 GB），其中包括 1.07 版 eboot.bin 及游戏自带的 libc 与 Fios2 模块；README 称 CUSA00004 也能启动，但未经深入测试。无需 PS4 固件模块，README 声明不分发任何游戏代码、文件或美术素材。项目声明与 Sony Interactive Entertainment 及 Sucker Punch Productions 无关。","游玩需 64 位 Windows 10（1903+）或 11，或 glibc 2.39+ 的 x86-64 Linux，以及支持 Vulkan 1.3 的显卡，建议 6 GB 显存；缺少 F16C 或 SSE4A 的 CPU 会在启动时模拟这些指令。构建需递归克隆所列子模块并运行 port/build.sh，Linux 上需 SDL3、Vulkan、FFmpeg、FreeType、Boost、fmt、Zydis 与 glslang，Windows 上使用 MSYS2 CLANG64 工具链；Qt 启动器需要 PySide6。","证据来自试玩、问题报告和日志：README 提到在 Nobara／Fedora 44 上的 Linux 测试、玩家在 Windows 上的测试，以及一次在 RTX 2060 上持续七分钟、帧率中位数为 27 FPS 的游玩记录。CI 工作流为拉取请求和经授权的手动发布构建 Linux 与 Windows 安装包，其 Linux 任务运行 C、Python 与 GPU 库单元测试，不涉及游戏内容，也没有自动化游戏流程测试。","README 声明项目采用 GPL-2.0，并注明代码来自 HayatoG 此前的《最后的守护者》与《重力眩晕 2》移植、gow3_pc、bloodborne_pc、shadPS4 及其一个分支，以及一个《旺达与巨像》移植；各项实验性修复均注明来源提交。游戏及其素材的权利仍归其权利人所有。"],"targets":["game"],"url":"https://github.com/HayatoG/iss_pc","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/xoreos/xoreos/blob/6774724d5c05e09ce0d01e00b8b62f956ddcb74b/NEWS.md","https://github.com/xoreos/xoreos/blob/6774724d5c05e09ce0d01e00b8b62f956ddcb74b/FAQ.md","https://github.com/xoreos/xoreos/blob/6774724d5c05e09ce0d01e00b8b62f956ddcb74b/BUILDDEP.md","https://github.com/xoreos/xoreos/blob/6774724d5c05e09ce0d01e00b8b62f956ddcb74b/CMakeLists.txt","https://github.com/xoreos/xoreos/blob/6774724d5c05e09ce0d01e00b8b62f956ddcb74b/CONTRIBUTING.md","https://github.com/xoreos/xoreos/blob/6774724d5c05e09ce0d01e00b8b62f956ddcb74b/COPYING","https://github.com/xoreos/xoreos/tree/6774724d5c05e09ce0d01e00b8b62f956ddcb74b/doc","https://github.com/xoreos/xoreos/blob/6774724d5c05e09ce0d01e00b8b62f956ddcb74b/.github/workflows/linux_cmake_gcc.yml","https://github.com/xoreos/xoreos/blob/6774724d5c05e09ce0d01e00b8b62f956ddcb74b/.github/workflows/windows_cmake_msvc.yml","https://github.com/xoreos/xoreos/tree/6774724d5c05e09ce0d01e00b8b62f956ddcb74b/tests","https://github.com/xoreos/xoreos/releases/tag/v0.0.6"],"category":"reconstruction-cases","description_en":"Reimplements BioWare’s Aurora engine and its later derivatives as a portable C++ engine that runs on the user’s installed game data, targeting nine games from Neverwinter Nights to Dragon Age II. Resource management, many Aurora file formats, graphics and sound are in place, and every target shows partial in-game areas in a free-flying spectator mode. README states that normal gameplay is not implemented yet, so this is an early-stage engine case, not a playable replacement.","description_zh":"以可移植的 C++ 引擎重新实现 BioWare 的 Aurora 引擎及其后续衍生版本，在使用者已安装的游戏数据上运行，目标涵盖从《无冬之夜》到《龙腾世纪 II》的九款游戏。资源管理、大量 Aurora 文件格式、图形和声音均已实现，所有目标游戏都能在可自由飞行的旁观模式下显示部分游戏内场景。README 说明尚未实现正常的游戏流程，因此这是一个早期阶段的引擎案例，而非可以替代原版游玩的实现。","entry_url":"https://awesomerea.org/resources/xoreos-aurora-engine-case/","entry_url_zh":"https://awesomerea.org/zh/resources/xoreos-aurora-engine-case/","evidence_url":"https://github.com/xoreos/xoreos/blob/6774724d5c05e09ce0d01e00b8b62f956ddcb74b/README.md","group":"cases","id":"xoreos-aurora-engine-case","json_url":"https://awesomerea.org/resources/xoreos-aurora-engine-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/xoreos-aurora-engine-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/xoreos-aurora-engine-case/index.md","name":"xoreos: an open reimplementation of BioWare’s Aurora engine family","name_zh":"xoreos：BioWare Aurora 引擎家族的开源重新实现","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed master snapshot (2026-09-04) still reports version 0.0.6; release v0.0.6 dates from 2020-08-03, and the repository calls itself pre-pre-alpha. README targets Neverwinter Nights 1 and 2, Knights of the Old Republic I and II, Jade Empire, Sonic Chronicles: The Dark Brotherhood, The Witcher, and Dragon Age: Origins and II; the 0.0.6 notes report a partially playable KotOR tutorial and partial menus in other games.","Needs the user’s own copy of a supported game, fully installed or copied to disk; xoreos reads its resources from that directory, and the repository contains no game files. There is no launcher GUI: a game starts from the command line with its path, or with a target section that xoreos saves in its xoreos.conf configuration file.","Builds use CMake 3.1+ with C++17, or autotools, against the libraries in BUILDDEP.md, including Boost 1.53+, SDL2 2.0.4+, OpenGL 2.1+, FreeType 2, OpenAL Soft and the MAD, Vorbis, FAAD, Xvid and libvpx codecs. README points to release binaries for Windows, Mac OS X and GNU/Linux on 32- and 64-bit x86; the FAQ says mobile devices lack an OpenGL ES renderer and console ports are highly unlikely.","CI builds with autotools and CMake on Linux (GCC and Clang), macOS and Windows (MSVC) and runs the Google Test unit tests, which cover Aurora file formats and shared engine code. No comparison with the original executables is published, and per-game progress is tracked on the project wiki.","README and COPYING apply GPL-3.0-or-later; doc/ adds GPLv2, LGPL-2.1 and font licence texts for incorporated components, and the games keep their publishers’ rights. CONTRIBUTING.md forbids AI-generated code, comments and commit messages."],"requirements_zh":["所审阅的 master 快照（2026-09-04）仍标为 0.0.6 版；v0.0.6 发行版发布于 2020-08-03，仓库自称处于 pre-pre-alpha 阶段。README 列出的目标包括《无冬之夜》1 与 2、《星球大战：旧共和国武士》I 与 II、《翡翠帝国》、Sonic Chronicles: The Dark Brotherhood、《巫师》以及《龙腾世纪：起源》与《龙腾世纪 II》；0.0.6 更新说明称 KotOR 的教学关卡已部分可玩，其他游戏有部分菜单。","需要使用者自有的受支持游戏副本，并完整安装或复制到硬盘；xoreos 从该目录读取游戏资源，仓库本身不含任何游戏文件。项目没有启动器界面：需在命令行中传入游戏路径启动，或使用 xoreos 保存在其 xoreos.conf 配置文件中的目标配置段。","可用 CMake 3.1+（C++17）或 autotools 构建，依赖 BUILDDEP.md 所列的库，包括 Boost 1.53+、SDL2 2.0.4+、OpenGL 2.1+、FreeType 2、OpenAL Soft，以及 MAD、Vorbis、FAAD、Xvid 和 libvpx 编解码库。README 提到提供 Windows、Mac OS X 与 GNU/Linux 的 32 位和 64 位 x86 发行版二进制；FAQ 说明移动设备因缺少 OpenGL ES 渲染器而不受支持，移植到游戏主机的可能性极低。","CI 在 Linux（GCC 与 Clang）、macOS 和 Windows（MSVC）上分别用 autotools 和 CMake 构建，并运行 Google Test 单元测试，覆盖 Aurora 文件格式和通用引擎代码。项目未公布与原版可执行文件的对比，各游戏进度记录在项目 wiki 上。","README 与 COPYING 采用 GPL-3.0-or-later；doc/ 另附 GPLv2、LGPL-2.1 及字体许可文本，适用于引入的组件，各游戏的权利仍归其发行商所有。CONTRIBUTING.md 禁止提交 AI 生成的代码、注释和提交信息。"],"targets":["game"],"url":"https://github.com/xoreos/xoreos","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/bethington/ghidra-mcp/blob/cf8b12db27eb139b28b90eaa3488306da910d759/NOTICE","https://github.com/bethington/ghidra-mcp/blob/cf8b12db27eb139b28b90eaa3488306da910d759/LICENSE","https://github.com/bethington/ghidra-mcp/blob/cf8b12db27eb139b28b90eaa3488306da910d759/CHANGELOG.md","https://github.com/bethington/ghidra-mcp/blob/cf8b12db27eb139b28b90eaa3488306da910d759/pyproject.toml","https://github.com/bethington/ghidra-mcp/blob/cf8b12db27eb139b28b90eaa3488306da910d759/docs/TESTING.md","https://github.com/bethington/ghidra-mcp/blob/cf8b12db27eb139b28b90eaa3488306da910d759/docker/README.md","https://github.com/bethington/ghidra-mcp/blob/cf8b12db27eb139b28b90eaa3488306da910d759/.github/workflows/tests.yml","https://github.com/bethington/ghidra-mcp/releases/tag/v7.0.0-rc.3","https://github.com/bethington/ghidra-mcp/releases/tag/v6.0.0"],"category":"agent-mcp","description_en":"A Ghidra GUI plugin, standalone headless server and Python MCP bridge exposing a 209-tool catalog: decompilation, cross-references, renaming, typing, structures, comments and batch edits, plus P-code emulation, live debugging through Ghidra’s TraceRmi framework, shared Ghidra Server repository and version-control operations, and hash-based transfer of function documentation between binary versions. The bridge loads three tool groups on connect and lets the model search for and load the rest, while naming and type conventions are enforced in the tool layer. Its NOTICE says it began as a derivative of LaurieWired’s GhidraMCP in August 2025 and has since been substantially rewritten and extended.","description_zh":"由 Ghidra 图形界面插件、独立无界面服务器和 Python MCP 桥接组成，提供含 209 个工具的目录：反编译、交叉引用、重命名、类型设定、结构体、注释与批量编辑，另有 P-code 模拟执行、经 Ghidra TraceRmi 框架的实时调试、共享 Ghidra Server 仓库与版本控制操作，以及基于哈希在不同版本二进制之间迁移函数文档。桥接在连接时只加载三组工具，其余由模型按需搜索并加载；命名与类型规范在工具层强制执行。其 NOTICE 说明，项目于 2025 年 8 月由 LaurieWired 的 GhidraMCP 衍生而来，此后已大幅重写和扩展。","entry_url":"https://awesomerea.org/resources/ghidra-mcp-bethington/","entry_url_zh":"https://awesomerea.org/zh/resources/ghidra-mcp-bethington/","evidence_url":"https://github.com/bethington/ghidra-mcp/blob/cf8b12db27eb139b28b90eaa3488306da910d759/README.md","group":"agents","id":"ghidra-mcp-bethington","json_url":"https://awesomerea.org/resources/ghidra-mcp-bethington/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/ghidra-mcp-bethington/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghidra-mcp-bethington/index.md","name":"Ghidra MCP Server (bethington)","name_zh":"Ghidra MCP Server（bethington）","record_type":"resource","relationship":"independent-agent-integration","requirements":["The reviewed pin is the default dev branch at bridge version 7.0.0 plus unreleased changes; the README calls tagged releases stable, release candidates and main beta, and dev experimental, with tools renamed and merged freely. At review the newest published build was the 7.0.0-rc.3 pre-release of 2026-10-14, which ships the extension zip and bridge wheel, and the newest stable release was v6.0.0 of 2026-07-25. The README says the GUI plugin serves 205 of the 209 tools and the headless server 190, with the debugger tools GUI-only.","The extension loads only in the exact Ghidra version it was built for, Ghidra 12.1.4 at this pin, and needs Java 21; the bridge needs Python 3.10+, with uv recommended. Source builds use Maven 3.9+ or the committed Gradle wrapper, with install guides for Windows, Ubuntu/Debian, macOS and Arch Linux; Python Ghidra scripts need Ghidra’s optional Jython extension, and shared-server work needs a Ghidra Server version compatible with the 12.1 client. Clients connect over stdio or streamable HTTP, and a Docker Compose stack runs the headless server and bridge as two containers.","Users analyse programs imported into their own Ghidra project; the repository ships only two generated PE test fixtures for its regression tiers. Write tools change the project, and script execution, which runs arbitrary Java inside Ghidra, stays off unless GHIDRA_MCP_ALLOW_SCRIPTS is set. The HTTP server binds 127.0.0.1 without authentication by default and refuses a non-loopback bind without GHIDRA_MCP_AUTH_TOKEN, which the Docker stack always requires; GHIDRA_MCP_FILE_ROOT confines file-path endpoints to one directory.","CI builds the extension with Maven against a downloaded Ghidra, runs offline and real-Ghidra Java tests and Python unit and fake-server tests on Linux, and runs Python unit tests on Windows. docs/TESTING.md describes opt-in live tiers that import the fixtures into a running Ghidra and exercise endpoints and a debugger launch, and says the debugger tier is only partly restored. Sub-second responses, 93% fewer API calls through batching and workflows refined across hundreds of functions are the author’s claims.","Apache-2.0; NOTICE credits the original LaurieWired GhidraMCP code, whose copyright remains for any surviving portions. Ghidra, MCP clients, model services and analysed programs keep their own terms."],"requirements_zh":["所审阅的固定版本位于默认的 dev 分支，对应桥接包版本 7.0.0 及其后未发布的改动；README 将带标签的发布版视为稳定版，候选版与 main 分支视为测试版，dev 分支则属实验性质，工具会被随意改名与合并。审阅时最新发布的构建是 2026 年 10 月 14 日的 7.0.0-rc.3 预发布版，附带扩展压缩包和桥接 wheel；最新稳定版是 2026 年 7 月 25 日的 v6.0.0。README 称 209 个工具中，图形界面插件提供 205 个，无界面服务器提供 190 个，调试器工具仅限图形界面。","扩展只能在构建时对应的那个 Ghidra 版本中加载，此固定版本对应 Ghidra 12.1.4，并需要 Java 21；桥接需要 Python 3.10+，建议使用 uv。从源码构建需 Maven 3.9+ 或仓库自带的 Gradle wrapper，并提供 Windows、Ubuntu／Debian、macOS 和 Arch Linux 的安装说明；Python 编写的 Ghidra 脚本需安装 Ghidra 可选的 Jython 扩展，使用共享服务器时需要与 12.1 客户端兼容的 Ghidra Server 版本。客户端可通过 stdio 或 streamable HTTP 连接，另有 Docker Compose 配置把无界面服务器与桥接分别运行在两个容器中。","分析对象是使用者导入自己 Ghidra 项目中的程序；仓库只附带两个为回归测试生成的 PE 测试样本。写入类工具会修改项目，而脚本执行会在 Ghidra 内运行任意 Java 代码，除非设置 GHIDRA_MCP_ALLOW_SCRIPTS，否则默认关闭。HTTP 服务默认绑定 127.0.0.1 且不做认证；未设置 GHIDRA_MCP_AUTH_TOKEN 时拒绝绑定非回环地址，Docker 部署则始终要求该令牌；GHIDRA_MCP_FILE_ROOT 可把涉及文件路径的接口限制在一个目录内。","CI 在 Linux 上针对下载的 Ghidra 用 Maven 构建扩展，运行离线与真实 Ghidra 的 Java 测试，以及 Python 单元测试和模拟服务器测试，并在 Windows 上运行 Python 单元测试。docs/TESTING.md 介绍了需手动启用的实机测试层级，会把测试样本导入运行中的 Ghidra，检查各接口并启动一次调试会话，同时说明调试器层级只部分恢复。亚秒级响应、批量操作减少 93% 的 API 调用、工作流经数百个函数打磨等均为作者说法。","采用 Apache-2.0 许可；NOTICE 注明原始代码来自 LaurieWired 的 GhidraMCP，其仍保留的部分版权归原作者。Ghidra、MCP 客户端、模型服务及被分析的程序仍受各自条款约束。"],"targets":["binary"],"url":"https://github.com/bethington/ghidra-mcp","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/aap/librw/blob/18532c2e13efbc1aa43f0b00b4459831f9414de0/ARCHITECTURE.MD","https://github.com/aap/librw/blob/18532c2e13efbc1aa43f0b00b4459831f9414de0/TODO","https://github.com/aap/librw/blob/18532c2e13efbc1aa43f0b00b4459831f9414de0/CMakeLists.txt","https://github.com/aap/librw/blob/18532c2e13efbc1aa43f0b00b4459831f9414de0/README.cmake","https://github.com/aap/librw/blob/18532c2e13efbc1aa43f0b00b4459831f9414de0/premake5.lua","https://github.com/aap/librw/blob/18532c2e13efbc1aa43f0b00b4459831f9414de0/.github/workflows/build.yml","https://github.com/aap/librw/tree/18532c2e13efbc1aa43f0b00b4459831f9414de0/src","https://github.com/aap/librw/tree/18532c2e13efbc1aa43f0b00b4459831f9414de0/tools","https://github.com/aap/librw/tree/18532c2e13efbc1aa43f0b00b4459831f9414de0/skeleton/imgui","https://github.com/aap/librw/blob/18532c2e13efbc1aa43f0b00b4459831f9414de0/LICENSE"],"category":"reconstruction-cases","description_en":"Re-implements a large part of the RenderWare Graphics middleware API as a portable C++ library that reads and writes its DFF model and TXD texture files for PS2, D3D8, D3D9 and Xbox and is meant to convert them between platforms. Direct3D 9 and OpenGL backends render the scenes, while PS2 rendering works only as a test. README names rendering GTA as its use; BSP world files are not supported.","description_zh":"以可移植的 C++ 库重新实现 RenderWare Graphics 中间件 API 的大部分内容，可读写其 PS2、D3D8、D3D9 和 Xbox 平台的 DFF 模型与 TXD 纹理文件，并旨在于各平台格式之间转换。场景由 Direct3D 9 和 OpenGL 后端渲染，PS2 渲染仅作为测试可用。README 称其用途是渲染 GTA 游戏；BSP 世界文件尚不支持。","entry_url":"https://awesomerea.org/resources/librw-renderware-reimplementation-case/","entry_url_zh":"https://awesomerea.org/zh/resources/librw-renderware-reimplementation-case/","evidence_url":"https://github.com/aap/librw/blob/18532c2e13efbc1aa43f0b00b4459831f9414de0/README.md","group":"cases","id":"librw-renderware-reimplementation-case","json_url":"https://awesomerea.org/resources/librw-renderware-reimplementation-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/librw-renderware-reimplementation-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/librw-renderware-reimplementation-case/index.md","name":"librw: a re-implementation of the RenderWare Graphics engine","name_zh":"librw：RenderWare Graphics 引擎的重新实现","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed master snapshot dates from 2026-08-26; CMake reports version 0.0.1 and the repository has no tagged releases. README calls librw a re-implementation of RenderWare graphics, “or a good part of it”: not all pre-instanced PS2 DFFs load and BSP is unsupported, and TODO lists morphing, several pipelines and PS2 rendering as open. ARCHITECTURE.MD says some design decisions follow the original RW and others are the author’s own.","As a library, librw needs no particular original files: applications hand it RenderWare DFF models and TXD texture dictionaries, such as those of the games they render. The repository ships no game data, but its demo tools include four small DFF sample models whose provenance it does not state.","Builds use premake5 (a premake5.exe is committed) or CMake 3.8+, selecting a NULL, GL3 or D3D9 platform and, for GL3 (OpenGL 2.1+ or ES 2.0+), GLFW, SDL2 or SDL3 for windowing. premake targets Windows x86/amd64, Linux x86/amd64/ARM and PS2, and the CMake files add PS2 and Nintendo Switch toolchains; a skeleton application framework with bundled Dear ImGui accompanies the demo tools.","The GitHub Actions workflow builds and packages 14 configurations: Windows D3D9, GL3 and null, macOS and Ubuntu GL3 and null, PS2 in a ps2dev container and Switch in a devkitPro container. It runs no tests, and the repository has no test suite or comparison with original RenderWare output.","LICENSE applies MIT to librw; the bundled Dear ImGui and ImGuizmo code carries its own licence files, and RenderWare itself and any game assets keep their owners’ rights."],"requirements_zh":["所审阅的 master 快照日期为 2026-08-26；CMake 标注版本为 0.0.1，仓库没有带标签的发行版。README 称 librw 是 RenderWare graphics 的重新实现，“或至少是其中很大一部分”：并非所有预实例化的 PS2 DFF 都能载入，BSP 完全不支持，TODO 中仍列着变形动画、若干渲染管线和 PS2 渲染等待办项。ARCHITECTURE.MD 说明部分设计沿用原版 RW，部分出自作者本人。","librw 作为库，本身不需要特定的原版文件：应用程序向它提供 RenderWare 的 DFF 模型和 TXD 纹理字典，例如所渲染游戏中的这些文件。仓库不附带游戏数据，但其演示工具中包含四个小型 DFF 示例模型，仓库未说明其来源。","可用 premake5（仓库内提交了 premake5.exe）或 CMake 3.8+ 构建，选择 NULL、GL3 或 D3D9 平台；GL3（OpenGL 2.1+ 或 ES 2.0+）可选用 GLFW、SDL2 或 SDL3 处理窗口。premake 面向 Windows x86/amd64、Linux x86/amd64/ARM 以及 PS2，CMake 文件另提供 PS2 与 Nintendo Switch 工具链；演示工具附带一个内置 Dear ImGui 的 skeleton 应用框架。","GitHub Actions 工作流构建并打包 14 种配置：Windows 的 D3D9、GL3 与 null，macOS 和 Ubuntu 的 GL3 与 null，在 ps2dev 容器中构建的 PS2，以及在 devkitPro 容器中构建的 Switch。工作流不运行测试，仓库也没有测试套件或与原版 RenderWare 输出的对比。","LICENSE 对 librw 采用 MIT 许可；内置的 Dear ImGui 与 ImGuizmo 代码附有各自的许可文件，RenderWare 本身及任何游戏素材的权利归其所有者。"],"targets":["game"],"url":"https://github.com/aap/librw","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","category":"related-lists","description_en":"A single-README list of about 480 game decompilation, recompilation and disassembly projects, grouped by console from the NES and Game Boy to the Xbox 360, PC and mobile, with a large uncategorised section. Each entry is a game title linked to its project, mostly on GitHub, and entries with AI involvement are marked with a warning emoji under the maintainer’s disclosure policy.","description_zh":"以单个 README 维护的游戏反编译、重编译和反汇编项目清单，约 480 项，按主机平台分组，从 NES、Game Boy 到 Xbox 360、PC 和移动平台，另有规模较大的未分类部分。每个条目是链接到对应项目的游戏名，大多指向 GitHub；按维护者的披露政策，有 AI 参与的条目以警告符号标出。","entry_url":"https://awesomerea.org/resources/awesome-game-decompilations/","entry_url_zh":"https://awesomerea.org/zh/resources/awesome-game-decompilations/","evidence_url":"https://github.com/CharlotteCross1998/awesome-game-decompilations/blob/31e56f7894761ab48f05b8a1e71770a91cf2ce67/README.md","group":"learn","id":"awesome-game-decompilations","json_url":"https://awesomerea.org/resources/awesome-game-decompilations/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/awesome-game-decompilations/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/awesome-game-decompilations/index.md","name":"awesome-game-decompilations","name_zh":"awesome-game-decompilations 游戏反编译项目清单","record_type":"resource","relationship":"learning","requirements":["The reviewed README, committed 2026-10-12, links 481 entries: 214 under 19 console and platform headings and 267 in an Uncategorised section kept for works in progress, while the table of contents and console index are marked under construction. One game can appear under several platforms.","Entries give only a title and a link, mostly to GitHub with a few on GitLab, Codeberg and SourceHut. They state no project type, completion or matching status, original-file requirement or license, and the list mixes decompilations, disassemblies, static recompilations and occasional reimplementations.","The README’s AI disclosure allows projects with AI involvement and marks them with ⚠️; 10 entries carried the mark at review.","The repository holds only README.md, with no license file or contribution guide, so the list states no reuse terms; linked projects and the games they reconstruct keep their own rights. An independent discovery list."],"requirements_zh":["所审阅的 README 提交于 2026-10-12，共链接 481 个条目：其中 214 个分布在 19 个主机与平台标题下，267 个位于留给待归类项目的“未分类”部分；目录和主机索引仍标注为建设中。同一款游戏也可能出现在多个平台下。","条目只有标题和链接，大多指向 GitHub，少数位于 GitLab、Codeberg 和 SourceHut。条目未注明项目类型、完成度或匹配状态、所需原始文件或许可证；清单混合收录反编译、反汇编、静态重编译以及少量重新实现。","README 的 AI 披露说明允许有 AI 参与的项目，并以 ⚠️ 标出；审阅时有 10 个条目带此标记。","仓库只有 README.md，没有许可证文件或贡献指南，因此清单本身未声明复用条款；所链接的项目及其重建的游戏各自保留权利。这是独立的发现清单。"],"targets":["game"],"url":"https://github.com/CharlotteCross1998/awesome-game-decompilations","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/Vineflower/vineflower/blob/b8273988af850e8cfb234ca08d129058502b032f/build.gradle#L25-L35","https://github.com/Vineflower/vineflower/blob/b8273988af850e8cfb234ca08d129058502b032f/build.gradle#L223-L256","https://github.com/Vineflower/vineflower/blob/b8273988af850e8cfb234ca08d129058502b032f/settings.gradle","https://github.com/Vineflower/vineflower/blob/b8273988af850e8cfb234ca08d129058502b032f/ARCHITECTURE.md","https://github.com/Vineflower/vineflower/blob/b8273988af850e8cfb234ca08d129058502b032f/LICENSE.md","https://github.com/Vineflower/vineflower/releases/tag/1.12.0","https://vineflower.org/usage/","https://repo1.maven.org/maven2/org/vineflower/vineflower/maven-metadata.xml"],"category":"jvm","description_en":"Fernflower-derived decompiler for Java and other JVM languages that continues the ForgeFlower, Fabric and Quiltflower forks, focused on output quality and modern Java, including records, sealed classes, switch expressions and pattern matching through Java 21+. Its command line takes a JAR, ZIP, folder or class file and writes a folder, an archive or console output, with multithreaded decompilation and automatic formatting. It can also be embedded as a library from Maven Central or used in IntelliJ IDEA through a plugin that replaces Fernflower, and the regular release JAR bundles three plugins, including Kotlin support and variable renaming.","description_zh":"源自 Fernflower 的 Java 及其他 JVM 语言反编译器，延续了 ForgeFlower、Fabric 和 Quiltflower 等分支的工作，注重输出质量和对现代 Java 的支持，包括 Java 21+ 的记录、密封类、switch 表达式和模式匹配。其命令行接受 JAR、ZIP、文件夹或 class 文件，可输出到文件夹、归档或控制台，支持多线程反编译和自动格式化。它也可作为 Maven Central 上的库嵌入使用，或通过替换 Fernflower 的插件在 IntelliJ IDEA 中使用；常规发布 JAR 内置三个插件，包括 Kotlin 支持和变量重命名。","entry_url":"https://awesomerea.org/resources/vineflower/","entry_url_zh":"https://awesomerea.org/zh/resources/vineflower/","evidence_url":"https://github.com/Vineflower/vineflower/blob/b8273988af850e8cfb234ca08d129058502b032f/README.md","group":"tools","id":"vineflower","json_url":"https://awesomerea.org/resources/vineflower/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/vineflower/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/vineflower/index.md","name":"Vineflower","name_zh":"Vineflower Java 反编译器","record_type":"resource","relationship":"foundation","requirements":["Release at review: 1.12.0, published 2026-04-29 on GitHub and Maven Central (org.vineflower:vineflower). The regular JAR includes the three bundled plugins and the -slim JAR only the decompiler. The reviewed master commit is identical to that tag; pull requests target the develop branches, and develop/1.13.0 was 28 commits ahead.","The README says Vineflower 1.9+ needs Java 11 or newer and 1.11+ needs Java 17 or newer to run; the build uses a Java 17 toolchain with ./gradlew build. The IntelliJ IDEA plugin is a separate Marketplace download.","Inputs are user-supplied JAR, ZIP, folder or class files, with libraries added through -e/--add-external as classpath context. The output comparison on the project website is the project's own; decompiled code is reconstructed and is not the original source.","Apache-2.0. The README calls it a fork of JetBrains' Fernflower, MinecraftForge's ForgeFlower and FabricMC's Fernflower fork and a continuation of Quiltflower; its console entry point keeps Fernflower's org.jetbrains.java.decompiler package."],"requirements_zh":["审阅时的版本为 1.12.0，于 2026-04-29 发布在 GitHub 和 Maven Central（org.vineflower:vineflower）。常规 JAR 包含三个内置插件，-slim JAR 只含反编译器本身。所审阅的 master 分支提交与该标签完全一致；拉取请求以 develop 分支为目标，其中 develop/1.13.0 领先 28 个提交。","README 称 Vineflower 1.9+ 需要 Java 11 或更高版本运行，1.11+ 需要 Java 17 或更高版本；构建使用 Java 17 工具链，命令为 ./gradlew build。IntelliJ IDEA 插件需从 Marketplace 另行下载。","输入由使用者提供：JAR、ZIP、文件夹或 class 文件，并可通过 -e/--add-external 添加库作为类路径上下文。项目网站上的输出对比由项目自行提供；反编译代码是重建结果，并非原始源码。","采用 Apache-2.0 许可。README 称它是 JetBrains Fernflower、MinecraftForge ForgeFlower 和 FabricMC Fernflower 分支的派生，并延续了 Quiltflower；其控制台入口仍沿用 Fernflower 的 org.jetbrains.java.decompiler 包。"],"targets":["app"],"url":"https://github.com/Vineflower/vineflower","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/zrax/pycdc/blob/b4289760970dbc399684f1e155ec6d1ea1cc787e/CMakeLists.txt","https://github.com/zrax/pycdc/blob/b4289760970dbc399684f1e155ec6d1ea1cc787e/pyc_module.h","https://github.com/zrax/pycdc/tree/b4289760970dbc399684f1e155ec6d1ea1cc787e/bytes","https://github.com/zrax/pycdc/tree/b4289760970dbc399684f1e155ec6d1ea1cc787e/tests/compiled","https://github.com/zrax/pycdc/tree/b4289760970dbc399684f1e155ec6d1ea1cc787e/tests/xfail","https://github.com/zrax/pycdc/blob/b4289760970dbc399684f1e155ec6d1ea1cc787e/.github/workflows/linux-ci.yml","https://github.com/zrax/pycdc/blob/b4289760970dbc399684f1e155ec6d1ea1cc787e/.github/workflows/msvc-ci.yml","https://github.com/zrax/pycdc/blob/b4289760970dbc399684f1e155ec6d1ea1cc787e/LICENSE"],"category":"native-analysis","description_en":"C++ disassembler and decompiler for compiled Python bytecode that aims to support bytecode from any Python version. pycdas prints the disassembly of a .pyc file, and pycdc prints reconstructed Python source to stdout with errors on stderr; both also accept raw marshalled code objects when the Python version is given on the command line. The source carries opcode tables for Python 1.0 through 3.13.","description_zh":"用 C++ 编写的 Python 字节码反汇编器与反编译器，目标是支持任意 Python 版本的字节码。pycdas 输出 .pyc 文件的反汇编结果，pycdc 则把重建出的 Python 源码输出到标准输出，错误信息输出到标准错误；在命令行中指定 Python 版本后，两者也能处理原始的 marshal 代码对象。源码中包含 Python 1.0 至 3.13 的操作码表。","entry_url":"https://awesomerea.org/resources/pycdc/","entry_url_zh":"https://awesomerea.org/zh/resources/pycdc/","evidence_url":"https://github.com/zrax/pycdc/blob/b4289760970dbc399684f1e155ec6d1ea1cc787e/README.markdown","group":"tools","id":"pycdc","json_url":"https://awesomerea.org/resources/pycdc/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pycdc/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pycdc/index.md","name":"Decompyle++ (pycdc)","name_zh":"Decompyle++（pycdc）Python 字节码反编译器","record_type":"resource","relationship":"foundation","requirements":["The project publishes no releases or tags, so it is built from source; the reviewed master commit dates from 2026-04-07. The README makes no per-version completeness claim. The .pyc loader recognizes bytecode up to Python 3.13 but not 3.14, and the regression suite’s compiled samples stop at 3.12: 20 of its 191 samples are for 3.10–3.12, and 39 more are kept as expected failures.","CMakeLists.txt requires CMake 3.12+ and a C++11 compiler, and GCC and Clang builds treat warnings as errors. make check runs the tests on Unix-like systems or MSYS; CI builds and tests on Ubuntu and as 32-bit Visual Studio 2022 builds on Windows, where the executables are kept only as workflow artifacts.","Input .pyc files or marshalled code objects come from the user; recovering them from packaged applications is outside the tool. The README describes no verification of decompiled output, so uncertain regions should be compared with the pycdas disassembly.","GPL-3.0. Recovered source remains subject to the rights of the original program’s owner."],"requirements_zh":["该项目不发布任何版本或标签，需从源码构建；所审阅的 master 提交日期为 2026-04-07。README 未说明各 Python 版本的支持完整程度。.pyc 加载器可识别到 Python 3.13 的字节码，但不识别 3.14；回归测试中的编译样本只到 3.12：191 个样本中有 20 个针对 3.10–3.12，另有 39 个作为预期失败用例保留。","CMakeLists.txt 要求 CMake 3.12+ 和 C++11 编译器，GCC 和 Clang 构建会把警告视为错误。make check 可在类 Unix 系统或 MSYS 上运行测试；CI 在 Ubuntu 上构建并测试，在 Windows 上则以 32 位 Visual Studio 2022 构建并测试，生成的可执行文件仅作为工作流产物保留。","输入的 .pyc 文件或 marshal 代码对象由使用者提供；从打包应用中取得这些文件不在本工具范围内。README 未说明对反编译结果的任何验证，存疑之处应与 pycdas 的反汇编输出对照。","采用 GPL-3.0 许可。恢复出的源码仍受原程序权利人的权利约束。"],"targets":["app","binary"],"url":"https://github.com/zrax/pycdc","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/MonsterDruide1/OdysseyDecomp/blob/696db2ff5ed558b053c753de420504b8682f24b0/Contributing.md","https://github.com/MonsterDruide1/OdysseyDecomp/blob/696db2ff5ed558b053c753de420504b8682f24b0/tools/setup.py","https://github.com/MonsterDruide1/OdysseyDecomp/blob/696db2ff5ed558b053c753de420504b8682f24b0/tools/cache-version.json","https://github.com/MonsterDruide1/OdysseyDecomp/blob/696db2ff5ed558b053c753de420504b8682f24b0/CMakeLists.txt","https://github.com/MonsterDruide1/OdysseyDecomp/blob/696db2ff5ed558b053c753de420504b8682f24b0/.gitmodules","https://github.com/MonsterDruide1/OdysseyDecomp/blob/696db2ff5ed558b053c753de420504b8682f24b0/.github/workflows/compile-check.yml","https://github.com/MonsterDruide1/OdysseyDecomp/blob/696db2ff5ed558b053c753de420504b8682f24b0/.github/workflows/test-compile.yml","https://github.com/MonsterDruide1/OdysseyDecomp/blob/696db2ff5ed558b053c753de420504b8682f24b0/.github/workflows/pr-label-ai.yml","https://decomp.dev/MonsterDruide1/OdysseyDecomp","https://github.com/MonsterDruide1/OdysseyDecomp/blob/696db2ff5ed558b053c753de420504b8682f24b0/data/file_list.yml","https://web.archive.org/web/20261020041937/https://decomp.dev/MonsterDruide1/OdysseyDecomp/1.0/696db2ff5ed558b053c753de420504b8682f24b0.json"],"category":"reconstruction-cases","description_en":"Reconstructs C++ source for Super Mario Odyssey’s Switch 1.0 main executable and checks each function against the original AArch64 machine code with the shared nx-decomp-tools checker. At the pinned commit its function list marks 18,996 of 74,171 functions matching. The README warns that the build is not a playable game, the repository ships no game assets, and Nintendo libraries such as sead and agl come from open-ead’s separate reconstructions.","description_zh":"为《超级马力欧 奥德赛》Switch 1.0 版主程序重建 C++ 源码，并用共享的 nx-decomp-tools 检查器逐个函数与原始 AArch64 机器码比对。在所审固定提交中，其函数清单将 74,171 个函数中的 18,996 个标为一致。README 提醒构建结果不是可游玩的游戏；仓库不含游戏素材，sead、agl 等任天堂库则来自 open-ead 另行维护的重建项目。","entry_url":"https://awesomerea.org/resources/odyssey-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/odyssey-decomp-case/","evidence_url":"https://github.com/MonsterDruide1/OdysseyDecomp/blob/696db2ff5ed558b053c753de420504b8682f24b0/README.md","group":"cases","id":"odyssey-decomp-case","json_url":"https://awesomerea.org/resources/odyssey-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/odyssey-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/odyssey-decomp-case/index.md","name":"Super Mario Odyssey: per-function matching decompilation of the Switch executable","name_zh":"《超级马力欧 奥德赛》：Switch 主程序的逐函数一致性反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed master pin is dated 2026-09-29. README describes a work-in-progress decompilation of Super Mario Odyssey 1.0.0 that recreates a source base from scratch and warns that it will not produce a playable game. The GitHub description says all versions, but setup.py builds only 1.0 and skips 1.0.1, 1.1, 1.2 and 1.3 as a to-do, and README lists cross-version comparison and 1.3.0’s different optimisation as open work. Functions are matched individually.","Setup needs the user’s own original 1.0 main NSO executable, compressed or not; setup.py accepts only two SHA-256 hashes, converts it to an ELF and checks that result’s hash too. Only the ExeFS is needed, though README notes that RomFS files help cross-reference names. The repository holds no game assets, while data/ carries the function list and address, symbol and string-literal tables for the 1.0 executable; contributors work from Hex-Rays or Ghidra output.","The documented setup is Linux, WSL or macOS, with a VS Code dev container and a Nix flake as alternatives; it needs Python 3.6+, Ninja, CMake 3.13+, ccache, llvm-objdump, a Rust toolchain and the listed Python modules. setup.py downloads prebuilt clang, ld.lld and the viking checker from the project’s tools-cache release v1.2.6, or builds them from source, and fetches LLVM 3.9.1 libc++ headers. Submodules supply open-ead’s sead, agl, eui, NintendoSDK and NEX headers, a musl build and nx-decomp-tools.","tools/check compares every function marked in data/file_list.yml with the original executable. At the pin the list marks 18,996 functions matching, 47 with minor and 252 with major differences and 54,876 not decompiled, and decomp.dev’s report for the commit gives the same 25.61% of functions, or 15.77% of code bytes. CI fetches the executable through a repository secret, builds and requires the check to pass, and separately checks that every header compiles on its own.","GitHub detects no license and the pinned root has no license file, so no reuse terms are stated; submodules and Nintendo content keep their own terms. A workflow adds an ai label to new pull requests from authors who, in its own words, usually use AI."],"requirements_zh":["所审阅的 master 固定版本日期为 2026 年 9 月 29 日。README 将其描述为进行中的《超级马力欧 奥德赛》1.0.0 反编译，目标是从零重建一套源码，并提醒构建结果无法作为游戏游玩。GitHub 简介称覆盖所有版本，但 setup.py 只构建 1.0，1.0.1、1.1、1.2 与 1.3 均作为待办跳过；README 也把跨版本比对和 1.3.0 不同的优化方式列为未完成工作。函数逐个匹配。","初始化需要使用者自备原始 1.0 版 main NSO 可执行文件（压缩或未压缩均可）；setup.py 只接受两个指定的 SHA-256 哈希，将其转换为 ELF 后也会校验结果的哈希。只需 ExeFS，不过 README 指出 RomFS 文件有助于对照名称。仓库不含游戏素材，data/ 中存放函数清单以及 1.0 可执行文件的地址、符号和字符串字面量表；贡献者依据 Hex-Rays 或 Ghidra 的输出工作。","文档说明的环境是 Linux、WSL 或 macOS，也可使用 VS Code 开发容器或 Nix flake；需要 Python 3.6+、Ninja、CMake 3.13+、ccache、llvm-objdump、Rust 工具链及列明的 Python 模块。setup.py 从项目工具缓存的 v1.2.6 发布下载预编译的 clang、ld.lld 与 viking 检查器（也可从源码构建），并获取 LLVM 3.9.1 的 libc++ 头文件。子模块提供 open-ead 维护的 sead、agl、eui、NintendoSDK 与 NEX 头文件、一份 musl 构建以及 nx-decomp-tools。","tools/check 会把 data/file_list.yml 中登记的每个函数与原始可执行文件比对。在固定版本中，该清单标记 18,996 个函数一致、47 个有细微差异、252 个有较大差异、54,876 个尚未反编译；decomp.dev 针对该提交的报告同样给出 25.61% 的函数一致率，按代码字节计为 15.77%。CI 通过仓库密钥获取可执行文件，构建后要求检查通过，另行检查每个头文件都能单独编译。","GitHub 未识别出许可证，固定版本根目录也没有许可证文件，因此未声明任何复用条款；子模块与任天堂的内容仍受各自条款约束。有一个工作流会给按其说法“通常使用 AI”的作者新开的拉取请求加上 ai 标签。"],"targets":["game"],"url":"https://github.com/MonsterDruide1/OdysseyDecomp","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/MG1937/ASC/blob/60033d1c76bc5904588f24955cae4e83a2ba4f5d/README.md#L1-L13","https://github.com/MG1937/ASC/blob/60033d1c76bc5904588f24955cae4e83a2ba4f5d/README.md#L15-L66","https://github.com/MG1937/ASC/blob/60033d1c76bc5904588f24955cae4e83a2ba4f5d/pyproject.toml","https://github.com/MG1937/ASC/blob/60033d1c76bc5904588f24955cae4e83a2ba4f5d/tests/TESTING.md","https://github.com/MG1937/ASC/blob/60033d1c76bc5904588f24955cae4e83a2ba4f5d/.github/workflows/tests.yml","https://github.com/MG1937/ASC/blob/60033d1c76bc5904588f24955cae4e83a2ba4f5d/dadguard/__init__.py","https://github.com/MG1937/ASC/blob/60033d1c76bc5904588f24955cae4e83a2ba4f5d/LICENSE","https://github.com/MG1937/ASC/releases/tag/dev-0.1.2-post2","https://pypi.org/project/droidasc/0.1.2.post2/"],"category":"android","description_en":"Python Android decompiler that answers queries directly against an APK instead of first unpacking and indexing it. It probes compressed DEX entries in place, uses the layout that the R8 compiler’s constant relocation and instruction deduplication leave behind to search string, type, method and field references across DEX files, and for a requested class rebuilds a minimal, self-consistent DEX in memory that a bundled copy of Androguard’s decompiler turns into Java. The droidasc CLI and Tk GUI list classes, decompile single classes, decode AndroidManifest.xml and find subclasses or interface implementations; the README presents it as a lightweight back end for agents analyzing many APKs.","description_zh":"用 Python 编写的 Android 反编译器，直接对 APK 执行查询，而不必先解包并建立索引。它在压缩的 DEX 条目中就地探测数据，利用 R8 编译器的常量重定位和指令去重所留下的布局，跨 DEX 文件搜索字符串、类型、方法和字段引用；对指定的类，则在内存中重建一个最小且自洽的 DEX，再由内置的 Androguard 反编译器副本转换为 Java 代码。droidasc 命令行和 Tk 图形界面可列出类、反编译单个类、解码 AndroidManifest.xml，并查找子类或接口实现；README 将其定位为供智能体批量分析 APK 的轻量后端。","entry_url":"https://awesomerea.org/resources/droid-asc/","entry_url_zh":"https://awesomerea.org/zh/resources/droid-asc/","evidence_url":"https://github.com/MG1937/ASC/blob/60033d1c76bc5904588f24955cae4e83a2ba4f5d/README.md","group":"tools","id":"droid-asc","json_url":"https://awesomerea.org/resources/droid-asc/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/droid-asc/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/droid-asc/index.md","name":"Droid ASC","name_zh":"Droid ASC Android 反编译器","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: dev-0.1.2-post2, published 2026-10-14 without binary assets and matching PyPI’s droidasc 0.1.2.post2; the reviewed main commit adds only two README notes. The project began in June 2026. The README now says it has been rewritten 1:1 in Rust as the separate rust_ASC repository, which adds full-APK decompilation and is to be updated in sync.","Install with pip install droidasc or from source. pyproject.toml requires Python 3.10+ with axml and mutf8, and CI runs the unit, integration and GUI suites and gates performance regressions on Ubuntu with Python 3.11 and 3.12. APK and DEX inputs come from the user; the README’s benchmark APKs are not in the repository, and the DEX inside the test fixture holds only AndroidX, Kotlin and Material Components library classes.","Speed and memory figures are author-reported: on Telegram X, WhatsApp, Grab and Lark APKs of 59–352 MB with 10 threads, the README reports string-reference searches 62–302× and single-class decompilation 38–304× faster than JADX while using 36–141 MB, and says JADX ran out of memory on the largest. Java output comes from the bundled Androguard decompiler, one class at a time. The README targets agent workflows but describes no MCP server; agents call the CLI or Python package.","Apache-2.0; the bundled dadguard package carries Androguard code, which is also Apache-2.0. Decompiled code keeps the rights of the app’s owner."],"requirements_zh":["审阅时最新版本为 dev-0.1.2-post2，发布于 2026-10-14，未附二进制文件，与 PyPI 上的 droidasc 0.1.2.post2 一致；所审阅的 main 提交只多了两条 README 说明。项目始于 2026 年 6 月。README 现称它已按 1:1 方式用 Rust 重写为独立的 rust_ASC 仓库，后者增加了整 APK 反编译，今后两者将同步更新。","可通过 pip install droidasc 或从源码安装。pyproject.toml 要求 Python 3.10+，依赖 axml 和 mutf8；CI 在 Ubuntu 上以 Python 3.11 和 3.12 运行单元、集成和图形界面测试，并拦截性能回退。APK 和 DEX 输入由使用者提供；README 基准测试所用的 APK 不在仓库中，测试夹具中的 DEX 只包含 AndroidX、Kotlin 和 Material Components 库的类。","速度和内存数据均为作者自报：README 称在 Telegram X、WhatsApp、Grab 和 Lark 四个 59–352 MB 的 APK 上以 10 个线程运行时，字符串引用搜索比 JADX 快 62–302 倍，单类反编译快 38–304 倍，内存占用为 36–141 MB，并称 JADX 在最大的目标上内存不足。Java 输出由内置的 Androguard 反编译器生成，每次处理一个类。README 面向智能体工作流，但未介绍 MCP 服务器；智能体需调用命令行或 Python 包。","采用 Apache-2.0 许可；内置的 dadguard 包含 Androguard 代码，后者同样采用 Apache-2.0。反编译得到的代码仍归应用权利人所有。"],"targets":["app"],"url":"https://github.com/MG1937/ASC","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/REAndroid/APKEditor/blob/5621fe6750b828ce0bfd99ec7f42ee8b5fe75497/LICENSE","https://github.com/REAndroid/APKEditor/blob/5621fe6750b828ce0bfd99ec7f42ee8b5fe75497/build.gradle"],"category":"android","description_en":"Command-line APK editor built on ARSCLib that decodes an APK's binary resources and DEX into editable JSON, XML or smali and rebuilds a package from them, independent of aapt and aapt2. It also merges split bundles such as XAPK, APKM and APKS, refactors obfuscated resource names, and prints package information.","description_zh":"基于 ARSCLib 的命令行 APK 编辑器，不依赖 aapt 与 aapt2，可将 APK 的二进制资源与 DEX 解码为可编辑的 JSON、XML 或 smali 并重新构建安装包。还能合并 XAPK、APKM、APKS 等分包，还原被混淆的资源名称，并打印包信息。","entry_url":"https://awesomerea.org/resources/apkeditor/","entry_url_zh":"https://awesomerea.org/zh/resources/apkeditor/","evidence_url":"https://github.com/REAndroid/APKEditor/blob/5621fe6750b828ce0bfd99ec7f42ee8b5fe75497/README.md","group":"tools","id":"apkeditor","json_url":"https://awesomerea.org/resources/apkeditor/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/apkeditor/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/apkeditor/index.md","name":"APKEditor","name_zh":"APKEditor","record_type":"resource","relationship":"foundation","requirements":["Runs as a single executable JAR on a Java runtime; the Gradle build targets Java 8 source and target compatibility, and the README notes large inputs may need an increased -Xmx heap to avoid an OutOfMemoryError.","Operates on APK files the user supplies; the README documents decoding to XML source for un-obfuscated packages only, and rebuilding a package is distinct from recovering original Java source. Apache-2.0 licensed."],"requirements_zh":["以单个可执行 JAR 的形式在 Java 运行时上运行；Gradle 构建以 Java 8 的源码与目标兼容性为目标，README 指出处理大型输入时可能需要调大 -Xmx 堆以避免 OutOfMemoryError。","对使用者提供的 APK 文件进行操作；README 说明仅对未混淆的包支持解码为 XML 源码，且重建安装包不同于恢复原始 Java 源码。采用 Apache-2.0 许可证。"],"targets":["app"],"url":"https://github.com/REAndroid/APKEditor","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/avatartwo/avatar2/blob/56a90cfe738886236dcbc3653756bdbdec6aaf92/handbook/0x01_intro.md","https://github.com/avatartwo/avatar2/blob/56a90cfe738886236dcbc3653756bdbdec6aaf92/handbook/0x02_targets.md#L67-L155","https://github.com/avatartwo/avatar2/blob/56a90cfe738886236dcbc3653756bdbdec6aaf92/handbook/0x03_memory.md#L31-L45","https://github.com/avatartwo/avatar2/blob/56a90cfe738886236dcbc3653756bdbdec6aaf92/handbook/0x04_execution.md#L113-L165","https://github.com/avatartwo/avatar2/tree/56a90cfe738886236dcbc3653756bdbdec6aaf92/avatar2/targets","https://github.com/avatartwo/avatar2/tree/56a90cfe738886236dcbc3653756bdbdec6aaf92/avatar2/archs","https://github.com/avatartwo/avatar2/blob/56a90cfe738886236dcbc3653756bdbdec6aaf92/setup.py","https://github.com/avatartwo/avatar2/blob/56a90cfe738886236dcbc3653756bdbdec6aaf92/.github/workflows/continuous_integration.yml","https://github.com/avatartwo/avatar2/blob/56a90cfe738886236dcbc3653756bdbdec6aaf92/targets/build_qemu.sh","https://github.com/avatartwo/avatar2/blob/56a90cfe738886236dcbc3653756bdbdec6aaf92/CHANGELOG.md","https://github.com/avatartwo/avatar2/blob/56a90cfe738886236dcbc3653756bdbdec6aaf92/LICENSE","https://pypi.org/project/avatar2/1.4.7/"],"category":"firmware","description_en":"Python framework from EURECOM's S3 group that orchestrates emulators, debuggers and physical devices for dynamic analysis of embedded firmware. An analysis script declares targets, such as a modified QEMU, PANDA, Unicorn, a gdbserver or an OpenOCD or J-Link debug probe, then a memory layout whose ranges can forward accesses from one target to another, and an execution plan. Execution and register or memory state can move between targets, so firmware can run in an emulator while its peripheral accesses go to the real device.","description_zh":"由 EURECOM S3 小组开发的 Python 框架，可协调模拟器、调试器和物理设备，对嵌入式固件进行动态分析。分析脚本先声明目标（如修改版 QEMU、PANDA、Unicorn、gdbserver，或 OpenOCD、J-Link 调试探针），再定义内存布局（其中的内存区间可把访问从一个目标转发到另一个目标）和执行计划。执行过程以及寄存器、内存状态可在目标之间转移，从而让固件在模拟器中运行，同时把外设访问转发给真实设备。","entry_url":"https://awesomerea.org/resources/avatar2/","entry_url_zh":"https://awesomerea.org/zh/resources/avatar2/","evidence_url":"https://github.com/avatartwo/avatar2/blob/56a90cfe738886236dcbc3653756bdbdec6aaf92/README.md","group":"tools","id":"avatar2","json_url":"https://awesomerea.org/resources/avatar2/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/avatar2/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/avatar2/index.md","name":"avatar²","name_zh":"avatar² 多目标固件动态分析编排框架","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 1.4.7, uploaded to PyPI on 2022-02-10 and tagged v1.4.7; GitHub lists no release pages. The reviewed main commit, from 2024-10-23, is nine commits ahead of that tag, adding ARMv7-M interrupt forwarding and hardware-runner plugins and pinning Unicorn 2.0.1.post1.","The core installs with pip; CI tests Python 3.7-3.9 on Ubuntu 20.04. Target endpoints are separate: python -m avatar2.installer or the targets/build_*.sh scripts build the avatar-qemu fork and PANDA, with build scripts provided for Ubuntu 20.04 only, and the scripts add a restricted deb-src repository to /etc/apt/sources.list, so the README suggests a VM or container. A Dockerfile generator builds images with selected endpoints.","An analysis needs the user's own firmware image and, for hybrid setups, the physical device reachable through a gdbserver, an OpenOCD script or a Segger J-Link probe. Architecture definitions cover ARM, including Cortex-M3 and big-endian variants, MIPS and x86/x86-64. The analyst writes the memory layout, forwarding rules and execution plan in Python.","Apache-2.0; avatar-qemu and PANDA come from separate repositories with their own licenses. The README lists research publications that describe, use or extend the framework."],"requirements_zh":["审阅时最新版本为 1.4.7，于 2022-02-10 上传到 PyPI，对应标签 v1.4.7；GitHub 上没有发布页面。所审阅的 main 分支提交（2024-10-23）比该标签多九个提交，新增了 ARMv7-M 中断转发和硬件运行器插件，并将 Unicorn 固定为 2.0.1.post1。","核心部分可用 pip 安装；CI 在 Ubuntu 20.04 上测试 Python 3.7-3.9。目标端点需单独构建：python -m avatar2.installer 或 targets/build_*.sh 脚本会构建 avatar-qemu 分支和 PANDA，构建脚本只为 Ubuntu 20.04 提供；这些脚本会把 restricted 软件源的 deb-src 条目写入 /etc/apt/sources.list，因此 README 建议在虚拟机或容器中构建。另有 Dockerfile 生成脚本，可按所选端点构建镜像。","分析需要使用者自有的固件镜像；混合部署还需要可通过 gdbserver、OpenOCD 脚本或 Segger J-Link 探针访问的物理设备。架构定义涵盖 ARM（包括 Cortex-M3 和大端变体）、MIPS 以及 x86/x86-64。内存布局、转发规则和执行计划都由分析者用 Python 编写。","采用 Apache-2.0 许可；avatar-qemu 和 PANDA 位于独立仓库，各有其许可。README 列出了介绍、使用或扩展该框架的研究论文。"],"targets":["firmware"],"url":"https://github.com/avatartwo/avatar2","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/fkie-cad/cwe_checker/blob/7288311bbf9d2d1111434f8c07617ce580b9c8c0/README.md#L35-L97","https://github.com/fkie-cad/cwe_checker/blob/7288311bbf9d2d1111434f8c07617ce580b9c8c0/README.md#L105-L140","https://github.com/fkie-cad/cwe_checker/blob/7288311bbf9d2d1111434f8c07617ce580b9c8c0/CHANGES.md","https://github.com/fkie-cad/cwe_checker/blob/7288311bbf9d2d1111434f8c07617ce580b9c8c0/Dockerfile","https://github.com/fkie-cad/cwe_checker/blob/7288311bbf9d2d1111434f8c07617ce580b9c8c0/src/caller/Cargo.toml","https://github.com/fkie-cad/cwe_checker/blob/7288311bbf9d2d1111434f8c07617ce580b9c8c0/bare_metal/stm32f407vg.json","https://github.com/fkie-cad/cwe_checker/blob/7288311bbf9d2d1111434f8c07617ce580b9c8c0/LICENSE","https://github.com/fkie-cad/cwe_checker/releases/tag/v0.9","https://docs.cwe-checker.io/index.html"],"category":"native-analysis","description_en":"Static analyzer from Fraunhofer FKIE that searches binary executables, mainly Linux and Unix ELF files, for code paths matching Common Weakness Enumeration bug classes such as buffer overflows, use-after-free and double free, NULL pointer dereferences, format strings and integer overflows. Ghidra disassembles the binary into a common intermediate representation on which its checks run, from simple heuristics to abstract-interpretation data-flow analysis, so it covers the CPU architectures Ghidra supports, including x86, ARM, MIPS and PowerPC. Warnings are printed as text or JSON, and a bundled Ghidra script annotates them in the disassembly for manual review.","description_zh":"Fraunhofer FKIE 开发的静态分析工具，在二进制可执行文件（主要是 Linux 和 Unix 的 ELF 文件）中查找符合通用缺陷枚举（CWE）漏洞类别的代码路径，例如缓冲区溢出、释放后使用与重复释放、空指针解引用、格式化字符串和整数溢出。它先由 Ghidra 把二进制反汇编为统一的中间表示，再在其上运行从简单启发式到基于抽象解释的数据流分析等各类检查，因此适用于 Ghidra 支持的 CPU 架构，包括 x86、ARM、MIPS 和 PowerPC。告警以文本或 JSON 输出，随附的 Ghidra 脚本可把告警标注在反汇编中，便于人工复核。","entry_url":"https://awesomerea.org/resources/cwe-checker/","entry_url_zh":"https://awesomerea.org/zh/resources/cwe-checker/","evidence_url":"https://github.com/fkie-cad/cwe_checker/blob/7288311bbf9d2d1111434f8c07617ce580b9c8c0/README.md","group":"tools","id":"cwe-checker","json_url":"https://awesomerea.org/resources/cwe-checker/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/cwe-checker/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cwe-checker/index.md","name":"cwe_checker","name_zh":"cwe_checker 二进制漏洞模式检查工具","record_type":"resource","relationship":"foundation","requirements":["Latest stable release at review: v0.9, published 2024-08-20 as a source release. Prebuilt Docker images on the GitHub container registry are tagged latest (master), stable and v0.9 and are x86 only, although the image can be built natively on ARM. The reviewed master commit is 97 commits after v0.9; CHANGES.md labels it 0.10-dev, with a rewritten P-Code extractor and support for more architectures through a Ghidra update, while the crate manifests still say 0.9.0 and the online documentation covers the stable version.","Local builds need Rust 1.82+ and a Ghidra 10.2+ installation, which make all locates when GHIDRA_PATH is omitted; the Docker image builds on a Ghidra 11.2.1 headless base, and a Nix flake is also provided. Checks are tuned through src/config.json. Analysis of Linux loadable kernel modules, which runs a subset of the checks with its own configuration, and of bare-metal binaries, which needs a per-device configuration such as the bundled STM32F407VG example, is experimental.","Each run takes one binary supplied by the user. The README warns that both false positives and false negatives are to be expected and keeps the CWE-78 OS command injection check disabled on standard runs, so warnings mark code paths for manual review rather than confirmed vulnerabilities. It is also integrated as a plugin in FACT.","LGPL-3.0; the README notice allows version 3 or later."],"requirements_zh":["审阅时最新稳定版为 v0.9，于 2024-08-20 以源码形式发布。GitHub 容器注册表上的预构建 Docker 镜像有 latest（master 分支）、stable 和 v0.9 三个标签，仅提供 x86 版本，但可在 ARM 机器上本地构建原生镜像。所审阅的 master 提交比 v0.9 晚 97 个提交；CHANGES.md 将其标为 0.10-dev，包括重写的 P-Code 提取器以及随 Ghidra 更新而增加的架构支持，而各 crate 清单仍标为 0.9.0，在线文档对应的也是稳定版。","本地构建需要 Rust 1.82+ 和 Ghidra 10.2+；未指定 GHIDRA_PATH 时，make all 会自动查找 Ghidra 安装位置。Docker 镜像基于 Ghidra 11.2.1 无界面基础镜像构建，另提供 Nix flake。各项检查可通过 src/config.json 调整。对 Linux 可加载内核模块的分析（使用单独配置运行部分检查）和对裸机二进制的分析（需要针对具体设备的配置，仓库附有 STM32F407VG 示例）均为实验性功能。","每次运行分析一个由使用者提供的二进制。README 提醒误报和漏报都在所难免，CWE-78 操作系统命令注入检查在标准运行中默认关闭，因此告警只是需要人工复核的代码路径，而不是已确认的漏洞。该工具也以插件形式集成在 FACT 中。","采用 LGPL-3.0 许可；README 中的声明允许使用第 3 版或任何更新版本。"],"targets":["binary","firmware"],"url":"https://github.com/fkie-cad/cwe_checker","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/chame1eon/jnitrace/blob/5be47cb52b448bb0f39153d6c2c71b6744ad982a/LICENSE","https://github.com/chame1eon/jnitrace/blob/5be47cb52b448bb0f39153d6c2c71b6744ad982a/setup.py","https://github.com/chame1eon/jnitrace/releases/tag/v3.3.1"],"category":"android","description_en":"Frida-based dynamic-analysis tool that traces an Android app's use of the JNI API, similar to frida-trace or strace but for the Java Native Interface. It logs the JNI calls that native libraries make through the JNIEnv and JavaVM structures, with include and exclude filters, backtraces and optional JSON output for later post-processing. The tracing engine is also published as a separate jnitrace-engine library.","description_zh":"基于 Frida 的动态分析工具，用于跟踪 Android 应用对 JNI API 的调用，类似 frida-trace 或 strace，但面向 Java 本地接口。它记录原生库通过 JNIEnv 与 JavaVM 结构发起的 JNI 调用，支持包含/排除过滤、回溯以及可选的 JSON 输出以便后续处理。其跟踪引擎另以 jnitrace-engine 库形式单独发布。","entry_url":"https://awesomerea.org/resources/jnitrace/","entry_url_zh":"https://awesomerea.org/zh/resources/jnitrace/","evidence_url":"https://github.com/chame1eon/jnitrace/blob/5be47cb52b448bb0f39153d6c2c71b6744ad982a/README.md","group":"tools","id":"jnitrace","json_url":"https://awesomerea.org/resources/jnitrace/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/jnitrace/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/jnitrace/index.md","name":"jnitrace","name_zh":"jnitrace","record_type":"resource","relationship":"foundation","requirements":["Installed from PyPI as jnitrace (setup.py marks version 3.3.1 and Python 3) and runs on a Linux, macOS or Windows host; building from source additionally needs Node.js.","Tracing a target needs an arm, arm64, x86 or x64 Android device running a Frida server, which the README states must provide Frida support greater than 14, with the target package already installed on the device.","Intended for apps the analyst is authorized to inspect. MIT licensed; the repository ships the tool only. The last reviewed upstream commit dates to 2023 and targets the Frida 14-era API. As checked on 2026-10-20, that 2023-04-01 commit is still the master head and the latest release is v3.3.1 from the same day; GitHub’s last recorded push was 2023-07-18, the repository is not archived and the README does not mark it as maintained, superseded or archived."],"requirements_zh":["通过 PyPI 以 jnitrace 安装（setup.py 标注版本 3.3.1，要求 Python 3），可在 Linux、macOS 或 Windows 主机上运行；从源码构建还需 Node.js。","跟踪目标需要一台 arm、arm64、x86 或 x64 的 Android 设备，并运行 Frida server，README 要求其 Frida 支持版本大于 14，且目标应用包已安装在设备上。","仅用于分析者有权检查的应用。采用 MIT 许可证；仓库仅包含工具本身。所审阅的上游最新提交为 2023 年，面向 Frida 14 时期的 API。据 2026-10-20 核查，这一 2023-04-01 的提交仍是 master 分支最新提交，最新发布版本为同日的 v3.3.1；GitHub 记录的最后一次推送为 2023-07-18，仓库未归档，README 未标注其仍在维护、已被取代或已归档。"],"targets":["app"],"url":"https://github.com/chame1eon/jnitrace","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/mandiant/flare-vm/blob/5dc321d336f2d1b0c77343bdfd8cd3ac01ba1b37/README.md#L8-L18","https://github.com/mandiant/flare-vm/blob/5dc321d336f2d1b0c77343bdfd8cd3ac01ba1b37/README.md#L172-L173","https://github.com/mandiant/flare-vm/blob/5dc321d336f2d1b0c77343bdfd8cd3ac01ba1b37/install.ps1","https://github.com/mandiant/flare-vm/blob/5dc321d336f2d1b0c77343bdfd8cd3ac01ba1b37/config.xml","https://github.com/mandiant/flare-vm/blob/5dc321d336f2d1b0c77343bdfd8cd3ac01ba1b37/virtualbox/README.md","https://github.com/mandiant/flare-vm/blob/5dc321d336f2d1b0c77343bdfd8cd3ac01ba1b37/LICENSE.txt","https://github.com/mandiant/flare-vm/releases/tag/vbox-1.0.0"],"category":"native-analysis","description_en":"Mandiant FLARE installer that sets up and maintains a Windows virtual machine for reverse engineering and malware analysis. Its PowerShell script uses Boxstarter and Chocolatey to install packages from the separate VM-Packages feed and the Chocolatey community feed, chosen in a GUI or a custom config.xml that also sets environment paths, the taskbar layout and post-install registry, service and path settings. The reviewed default configuration lists 137 packages, among them Ghidra, IDA Free, x64dbg, dnSpyEx, capa, FLOSS, PE-sieve, FakeNet-NG and Wireshark; scripts in its virtualbox folder build, snapshot and export FLARE-VM and REMnux VMs in VirtualBox.","description_zh":"Mandiant FLARE 团队的安装脚本，用于搭建并维护一台面向逆向工程和恶意软件分析的 Windows 虚拟机。其 PowerShell 脚本借助 Boxstarter 和 Chocolatey，从独立的 VM-Packages 软件源和 Chocolatey 社区源安装软件包；软件包可在图形界面中选择，也可通过自定义 config.xml 指定，该文件还可设置环境变量路径、任务栏布局以及安装后的注册表、服务和路径设置。所审阅的默认配置列出 137 个软件包，包括 Ghidra、IDA Free、x64dbg、dnSpyEx、capa、FLOSS、PE-sieve、FakeNet-NG 和 Wireshark；virtualbox 目录中的脚本可在 VirtualBox 中构建 FLARE-VM 和 REMnux 虚拟机，并管理和导出其快照。","entry_url":"https://awesomerea.org/resources/flare-vm/","entry_url_zh":"https://awesomerea.org/zh/resources/flare-vm/","evidence_url":"https://github.com/mandiant/flare-vm/blob/5dc321d336f2d1b0c77343bdfd8cd3ac01ba1b37/README.md","group":"tools","id":"flare-vm","json_url":"https://awesomerea.org/resources/flare-vm/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/flare-vm/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/flare-vm/index.md","name":"FLARE-VM","name_zh":"FLARE-VM 恶意软件分析虚拟机安装工具","record_type":"resource","relationship":"foundation","requirements":["Needs a Windows 10 or later virtual machine with PowerShell 5+, at least 60 GB of disk and 2 GB of memory, a username without spaces or special characters and internet access. The README says FLARE-VM should only be installed on a VM and that Windows Updates, Tamper Protection and anti-malware must be disabled on it first; it recommends a snapshot before installation and host-only networking afterward. The installer checks that it is running in a VM and warns on Windows builds other than the tested 19045, 20348 and 26100.","FLARE-VM itself has no releases because its packages download tools from external URLs outside the project's control; the only release, vbox-1.0.0 (2025-08-13), holds Linux executables for some VirtualBox helper scripts, which were tested on Debian 12 with GNOME. Package updates are best effort and untested, failures of individual packages are reported to VM-Packages, and the README suggests a fresh install when updates break. The idapro.vm package needs the user's own IDA Pro installer, and optionally a license file, on the Desktop.","The scripts are Apache-2.0. Per the README's legal notice, every downloaded or installed package keeps its own license terms, which the user must review and accept; installing accepts those terms."],"requirements_zh":["需要一台 Windows 10 或更高版本的虚拟机，具备 PowerShell 5+、至少 60 GB 磁盘和 2 GB 内存、不含空格或特殊字符的用户名以及互联网连接。README 指出 FLARE-VM 只应安装在虚拟机上，并且安装前必须在该虚拟机上关闭 Windows 更新、篡改防护和反恶意软件；建议安装前先做快照，安装后切换为仅主机网络。安装程序会检查自身是否运行在虚拟机中，并在 Windows 版本不是经过测试的 19045、20348 和 26100 时发出警告。","FLARE-VM 本身不发布版本，因为其软件包从项目无法控制的外部 URL 下载工具；唯一的发布 vbox-1.0.0（2025-08-13）只包含部分 VirtualBox 辅助脚本的 Linux 可执行文件，这些脚本在 Debian 12 和 GNOME 上测试过。软件包更新属于尽力而为且未经测试，单个软件包的安装失败应向 VM-Packages 报告；更新出问题时，README 建议重新全新安装。idapro.vm 软件包需要使用者自备的 IDA Pro 安装程序（以及可选的许可证文件）放在桌面上。","脚本采用 Apache-2.0 许可。根据 README 的法律声明，每个下载或安装的软件包都保留各自的许可条款，使用者须自行查阅并接受，进行安装即表示接受这些条款。"],"targets":["binary"],"url":"https://github.com/mandiant/flare-vm","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/B2R2-org/B2R2/blob/37de7a7274b61f7ec679153740955e7f9a94221e/README.md#L49-L297","https://github.com/B2R2-org/B2R2/blob/37de7a7274b61f7ec679153740955e7f9a94221e/src/RearEnd/Launcher/Program.fs","https://github.com/B2R2-org/B2R2/blob/37de7a7274b61f7ec679153740955e7f9a94221e/Directory.Build.props","https://github.com/B2R2-org/B2R2/blob/37de7a7274b61f7ec679153740955e7f9a94221e/CHANGELOG.md","https://github.com/B2R2-org/B2R2/blob/37de7a7274b61f7ec679153740955e7f9a94221e/LICENSE.md","https://github.com/B2R2-org/B2R2/releases/tag/v0.10.1","https://github.com/B2R2-org/B2R2/compare/v0.10.1...37de7a7274b61f7ec679153740955e7f9a94221e","https://www.nuget.org/packages/B2R2.RearEnd.Launcher/0.10.1"],"category":"binary-libraries","description_en":"Binary analysis framework written in F# for .NET by KAIST's SoftSec Lab. It parses ELF, PE, Mach-O and WebAssembly files, parses, disassembles and lifts instructions into its own IR, recovers control-flow graphs and assembles code; the README's feature table covers x86/x86-64, ARMv7/AArch64, MIPS, PowerPC, RISC-V, SPARC, S390 and other ISAs as well as CIL, EVM, eBPF, WebAssembly and Python bytecode. Its b2r2 launcher starts a readelf-like format scanner, a linear-sweep disassembler, a recursive-descent explorer with a web GUI, an IR and assembly REPL and an assembler.","description_zh":"KAIST SoftSec 实验室开发的二进制分析框架，以 F# 编写、运行于 .NET。它可解析 ELF、PE、Mach-O 和 WebAssembly 文件，对指令进行解析、反汇编并提升为自有中间表示，还能恢复控制流图和汇编代码；README 的功能表涵盖 x86/x86-64、ARMv7/AArch64、MIPS、PowerPC、RISC-V、SPARC、S390 等指令集，以及 CIL、EVM、eBPF、WebAssembly 和 Python 字节码。其 b2r2 启动器可调用类似 readelf 的格式扫描器、线性扫描反汇编器、带 Web 图形界面的递归下降式探索工具、面向 IR 与汇编的 REPL 以及汇编器。","entry_url":"https://awesomerea.org/resources/b2r2/","entry_url_zh":"https://awesomerea.org/zh/resources/b2r2/","evidence_url":"https://github.com/B2R2-org/B2R2/blob/37de7a7274b61f7ec679153740955e7f9a94221e/README.md","group":"tools","id":"b2r2","json_url":"https://awesomerea.org/resources/b2r2/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/b2r2/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/b2r2/index.md","name":"B2R2","name_zh":"B2R2 二进制分析框架","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.10.1, published 2026-06-17, with BinExplore archives for Linux, macOS and Windows on x64 and arm64; libraries such as B2R2.FrontEnd.API and the B2R2.RearEnd.Launcher .NET tool are on NuGet at 0.10.1. The reviewed main commit (2026-10-17) is 1,231 commits ahead of that tag and still declares 0.10.1.","Building needs the .NET 10 SDK or later, and the projects target net10.0. The README states that the core library has no external dependencies, while System.IO.Hashing, FSharp.Compiler.Service, FParsec, BenchmarkDotNet and Avalonia.FuncUI serve specific components; it presents the APIs as usable from F# and, in principle, other CLI languages, on Linux, macOS, Windows and other .NET platforms.","Input is a user-supplied ELF, PE, Mach-O or WebAssembly file, or a raw byte image loaded with an explicit ISA. The README's feature table gives CFG recovery a full mark only for x86, x86-64 and EVM and a half mark for the other ISAs, lists no lifting, CFG recovery or assembly for TMS320C6000, and notes that some areas are still in progress.","MIT license. The README cites the 2019 NDSS Binary Analysis Research workshop paper describing B2R2 and lists research papers that use or build on it."],"requirements_zh":["审阅时最新版本为 v0.10.1，发布于 2026-06-17，提供 Linux、macOS 和 Windows 的 x64 与 arm64 版 BinExplore 压缩包；B2R2.FrontEnd.API 等库以及 B2R2.RearEnd.Launcher .NET 工具在 NuGet 上的版本为 0.10.1。所审阅的 main 分支提交（2026-10-17）比该标签多 1,231 个提交，版本号仍为 0.10.1。","构建需要 .NET 10 SDK 或更高版本，各项目以 net10.0 为目标框架。README 称核心库没有外部依赖，System.IO.Hashing、FSharp.Compiler.Service、FParsec、BenchmarkDotNet 和 Avalonia.FuncUI 仅用于特定组件；README 还表示其 API 可在 F# 中使用，原则上也可供其他 CLI 语言调用，并可运行于 Linux、macOS、Windows 及其他 .NET 支持的平台。","输入为用户提供的 ELF、PE、Mach-O 或 WebAssembly 文件，或按指定 ISA 加载的原始字节镜像。README 功能表中，只有 x86、x86-64 和 EVM 的控制流图恢复标为满月，其他指令集为半月；TMS320C6000 未列出提升、控制流图恢复和汇编支持，README 也说明部分功能仍在开发中。","MIT 许可证。README 引用了介绍 B2R2 的 2019 年 NDSS Binary Analysis Research 研讨会论文，并列出使用或基于它的研究论文。"],"targets":["binary"],"url":"https://github.com/B2R2-org/B2R2","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/rizinorg/rz-ghidra/blob/0f4e062aca031f63bd97ffcb49ca289049ec2e9d/README.md#L12-L40","https://github.com/rizinorg/rz-ghidra/blob/0f4e062aca031f63bd97ffcb49ca289049ec2e9d/README.md#L75-L93","https://github.com/rizinorg/rz-ghidra/blob/0f4e062aca031f63bd97ffcb49ca289049ec2e9d/.gitmodules","https://github.com/rizinorg/rz-ghidra/tree/0f4e062aca031f63bd97ffcb49ca289049ec2e9d/src","https://github.com/rizinorg/rz-ghidra/tree/0f4e062aca031f63bd97ffcb49ca289049ec2e9d/cutter-plugin","https://github.com/rizinorg/rz-ghidra/blob/0f4e062aca031f63bd97ffcb49ca289049ec2e9d/.github/workflows/ci.yml","https://github.com/rizinorg/rz-ghidra/tree/0f4e062aca031f63bd97ffcb49ca289049ec2e9d/test/bins","https://github.com/rizinorg/rz-ghidra/blob/0f4e062aca031f63bd97ffcb49ca289049ec2e9d/COPYING","https://github.com/rizinorg/rz-ghidra/releases/tag/v0.9.0"],"category":"native-analysis","description_en":"Rizin plugin that embeds Ghidra's C++ decompiler and Sleigh disassembler, so no Java Ghidra installation is needed. Its pdg commands decompile the current function, optionally side by side with offsets or as XML or JSON, can return the output to Rizin as comments, and list the loaded Sleigh languages; config variables control formatting and can override the auto-detected Sleigh language. The decompiler draws on Rizin's loaded binary, types and comments, and an optional plugin brings it into the Cutter GUI.","description_zh":"Rizin 插件，内嵌 Ghidra 的 C++ 反编译器和 Sleigh 反汇编器，因此无需安装 Java 版 Ghidra。其 pdg 系列命令可反编译当前函数，也可与偏移量并排显示或以 XML、JSON 格式输出，还能把结果作为注释写回 Rizin，并列出已加载的 Sleigh 语言；配置变量可调整输出格式，也可覆盖自动检测到的 Sleigh 语言。反编译器使用 Rizin 已加载的二进制、类型和注释；另有可选插件将其接入 Cutter 图形界面。","entry_url":"https://awesomerea.org/resources/rz-ghidra/","entry_url_zh":"https://awesomerea.org/zh/resources/rz-ghidra/","evidence_url":"https://github.com/rizinorg/rz-ghidra/blob/0f4e062aca031f63bd97ffcb49ca289049ec2e9d/README.md","group":"tools","id":"rz-ghidra","json_url":"https://awesomerea.org/resources/rz-ghidra/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/rz-ghidra/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rz-ghidra/index.md","name":"rz-ghidra","name_zh":"rz-ghidra Rizin 的 Ghidra 反编译器插件","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.9.0, published 2026-06-21 as a source tarball, which its notes declare compatible with the Rizin v0.9.x series and which updates the Ghidra code it uses to 12.1. The reviewed dev commit, from 2026-10-12, tracks Rizin's dev branch and is 3 commits ahead of and 5 behind that release tag. The README says version numbers do not guarantee Rizin compatibility and points distributors to rz-* tags instead.","Builds with CMake against an installed Rizin after fetching the rizinorg/ghidra and pugixml submodules. The install step is required because it installs the Sleigh files; the rz-pm package sets them up automatically. The Cutter plugin needs Cutter installed from source and -DBUILD_CUTTER_PLUGIN=ON. CI builds on Debian Bullseye, Arch Linux and Windows.","Decompilation works on binaries loaded and analyzed in Rizin, for architectures whose Sleigh specifications are installed; output is Ghidra decompiler output and needs analyst review.","LGPL-3.0-or-later, which the README notes is stricter than Ghidra's own license; the decompiler sources come from the separate rizinorg/ghidra fork. Its test binaries are built from C sources in the repository."],"requirements_zh":["审阅时最新版本为 v0.9.0，于 2026-06-21 以源码包发布，其发布说明称与 Rizin v0.9.x 系列兼容，并将所用的 Ghidra 代码更新到 12.1。所审阅的 dev 分支提交（2026-10-12）跟随 Rizin 的 dev 分支，比该发布标签多 3 个提交、少 5 个提交。README 指出版本号并不保证与 Rizin 兼容，建议发行版维护者改用 rz-* 标签。","需先拉取 rizinorg/ghidra 和 pugixml 子模块，再用 CMake 针对已安装的 Rizin 构建。必须执行安装步骤，因为它会安装 Sleigh 文件；使用 rz-pm 软件包时会自动配置。Cutter 插件需要从源码安装的 Cutter，并启用 -DBUILD_CUTTER_PLUGIN=ON。CI 在 Debian Bullseye、Arch Linux 和 Windows 上构建。","反编译只适用于已在 Rizin 中加载并分析的二进制，且其架构须已安装 Sleigh 规范；输出即 Ghidra 反编译器的结果，需要分析者核查。","采用 LGPL-3.0-or-later 许可，README 特别指出它比 Ghidra 自身的许可更严格；反编译器源码来自独立的 rizinorg/ghidra 分支。测试用二进制由仓库中的 C 源码构建。"],"targets":["binary"],"url":"https://github.com/rizinorg/rz-ghidra","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/Washi1337/AsmResolver/blob/0715000c1b3a5104531d5ff189a14ebef0a9d5ac/docs/guides/overview.md","https://github.com/Washi1337/AsmResolver/blob/0715000c1b3a5104531d5ff189a14ebef0a9d5ac/docs/guides/dotnet/bundles.md","https://github.com/Washi1337/AsmResolver/blob/0715000c1b3a5104531d5ff189a14ebef0a9d5ac/docs/guides/migration-v5-v6.md","https://github.com/Washi1337/AsmResolver/blob/0715000c1b3a5104531d5ff189a14ebef0a9d5ac/src/Directory.Build.props","https://github.com/Washi1337/AsmResolver/blob/0715000c1b3a5104531d5ff189a14ebef0a9d5ac/Directory.Build.props","https://github.com/Washi1337/AsmResolver/blob/0715000c1b3a5104531d5ff189a14ebef0a9d5ac/LICENSE.md","https://github.com/Washi1337/AsmResolver/releases/tag/v6.0.1","https://www.nuget.org/packages/AsmResolver/6.0.1"],"category":"dotnet","description_en":"C# library for reading, modifying and rebuilding Portable Executable files, covering both native Windows images and images with .NET metadata. It offers three levels of abstraction: raw headers and sections (PEFile); interpreted data directories such as imports, exports, TLS, exceptions, debug data and Win32 resources (PEImage); and a System.Reflection-like model of .NET assemblies and modules with managed, native and dynamic method bodies. It also extracts files from AppHost/single-file bundles, supports ReadyToRun images and reads PDB and Portable PDB symbols without DIA, and upstream designs it to stay robust against malformed or obfuscated binaries.","description_zh":"用于读取、修改和重建 PE（可移植可执行）文件的 C# 库，既支持 Windows 原生映像，也支持带 .NET 元数据的映像。它提供三个抽象层次：原始文件头和节区（PEFile）；导入、导出、TLS、异常、调试信息和 Win32 资源等数据目录的解析结果（PEImage）；以及类似 System.Reflection 的 .NET 程序集和模块模型，涵盖托管、原生和动态方法体。它还能从 AppHost／单文件捆绑包中提取文件，支持 ReadyToRun 映像，无需 DIA 即可读取 PDB 和 Portable PDB 符号；上游的设计目标是在面对格式异常或经过混淆的二进制时保持稳健。","entry_url":"https://awesomerea.org/resources/asmresolver/","entry_url_zh":"https://awesomerea.org/zh/resources/asmresolver/","evidence_url":"https://github.com/Washi1337/AsmResolver/blob/0715000c1b3a5104531d5ff189a14ebef0a9d5ac/README.md","group":"tools","id":"asmresolver","json_url":"https://awesomerea.org/resources/asmresolver/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/asmresolver/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/asmresolver/index.md","name":"AsmResolver","name_zh":"AsmResolver PE 与 .NET 模块编辑库","record_type":"resource","relationship":"foundation","requirements":["Release at review: v6.0.1, published 2026-07-25 on GitHub and NuGet; the reviewed master commit is one contributing-guide commit ahead. Nightly builds come from a separate NuGet feed. Version 6.0 changed the API, and upstream publishes a guide for migrating from v5.x.","Distributed as layered NuGet packages: AsmResolver, AsmResolver.PE.File, AsmResolver.PE, AsmResolver.PE.Win32Resources, AsmResolver.DotNet, AsmResolver.DotNet.Dynamic and AsmResolver.Symbols.Pdb. The libraries target .NET Framework 3.5, 4.6.2 and 4.7.2, .NET Standard 2.0 and 2.1, .NET Core 3.1 and .NET 6, 8, 9 and 10, and the README lists Windows, Unix-like systems, Mono and NixOS. Building uses the .NET SDK; the full test suite needs additional .NET runtimes, plus Mono and Wine on macOS and Linux.","It is a library without a GUI or a C# decompiler: users write .NET code against its API and supply their own PE files or .NET assemblies. Modified or rebuilt images still have to be checked by running them.","MIT license. The test resources are purpose-built sample binaries. Robustness against malformed or obfuscated binaries is an upstream design goal."],"requirements_zh":["审阅时的版本为 v6.0.1，于 2026-07-25 发布到 GitHub 和 NuGet；所审阅的 master 分支提交比该版本多一个更新贡献指南的提交。每夜构建通过单独的 NuGet 源发布。6.0 版本修改了 API，上游提供了从 v5.x 迁移的指南。","以分层的 NuGet 包分发：AsmResolver、AsmResolver.PE.File、AsmResolver.PE、AsmResolver.PE.Win32Resources、AsmResolver.DotNet、AsmResolver.DotNet.Dynamic 和 AsmResolver.Symbols.Pdb。这些库面向 .NET Framework 3.5、4.6.2 和 4.7.2，.NET Standard 2.0 和 2.1，.NET Core 3.1，以及 .NET 6、8、9 和 10；README 列出的环境包括 Windows、类 Unix 系统、Mono 和 NixOS。使用 .NET SDK 构建；完整测试套件还需要安装其他 .NET 运行时，在 macOS 和 Linux 上另需 Mono 和 Wine。","它是一个程序库，不带图形界面，也不提供 C# 反编译器：使用者需针对其 API 编写 .NET 代码，并自行提供 PE 文件或 .NET 程序集。修改或重建后的映像仍需实际运行加以检验。","采用 MIT 许可。测试资源是专门构建的示例二进制。对格式异常或混淆二进制的稳健性是上游的设计目标。"],"targets":["app","binary"],"url":"https://github.com/Washi1337/AsmResolver","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/pardeike/DecompilerServer/blob/42c3f9106c20e5597cd11bcab70c5937d101f03e/ARCHITECTURE.md","https://github.com/pardeike/DecompilerServer/blob/42c3f9106c20e5597cd11bcab70c5937d101f03e/skills/decompiler-mcp/SKILL.md","https://github.com/pardeike/DecompilerServer/blob/42c3f9106c20e5597cd11bcab70c5937d101f03e/DecompilerServer.csproj","https://github.com/pardeike/DecompilerServer/blob/42c3f9106c20e5597cd11bcab70c5937d101f03e/Tools/GenerateHarmonyPatchSkeleton.cs","https://github.com/pardeike/DecompilerServer/blob/42c3f9106c20e5597cd11bcab70c5937d101f03e/.github/workflows/release.yml","https://github.com/pardeike/DecompilerServer/blob/42c3f9106c20e5597cd11bcab70c5937d101f03e/LICENSE","https://github.com/pardeike/DecompilerServer/releases/tag/v1.4.0"],"category":"agent-mcp","description_en":"Stdio MCP server built on the ICSharpCode.Decompiler engine that lets agents load managed .NET assemblies, including a Unity game's Assembly-CSharp.dll located from its game directory, then search symbols, string literals and attributes, read decompiled C# or IL, and trace callers, callees, usages and inheritance. Several assemblies stay loaded under aliases, so an agent can compare two versions structurally or diff individual method bodies, the README's example being RimWorld mod porting. Modding-oriented tools generate Harmony patch skeletons, detour stubs and transpiler anchor suggestions as text from the inspected members.","description_zh":"基于 ICSharpCode.Decompiler 引擎的 stdio MCP 服务器，智能体可借此加载托管 .NET 程序集（包括从游戏目录中定位到的 Unity 游戏 Assembly-CSharp.dll），继而搜索符号、字符串字面量和特性，阅读反编译得到的 C# 或 IL，并追踪调用方、被调用方、使用位置和继承关系。多个程序集可以用别名同时保持加载，便于智能体对两个版本做结构比较或逐个比对方法体，README 举的例子是 RimWorld 模组移植。面向模组开发的工具还能根据所查看的成员，以文本形式生成 Harmony 补丁骨架、绕行存根和 Transpiler 锚点建议。","entry_url":"https://awesomerea.org/resources/decompilerserver-dotnet-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/decompilerserver-dotnet-mcp/","evidence_url":"https://github.com/pardeike/DecompilerServer/blob/42c3f9106c20e5597cd11bcab70c5937d101f03e/README.md","group":"agents","id":"decompilerserver-dotnet-mcp","json_url":"https://awesomerea.org/resources/decompilerserver-dotnet-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/decompilerserver-dotnet-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/decompilerserver-dotnet-mcp/index.md","name":"DecompilerServer","name_zh":"DecompilerServer .NET 反编译 MCP 服务器","record_type":"resource","relationship":"independent-agent-integration","requirements":["Reviewed release: v1.4.0, published 2026-10-01; its tag points at the reviewed main commit. Release assets are framework-dependent single-file executables for Windows x64, macOS arm64 and x64, and Linux x64 and arm64 that need the .NET 10 runtime; building from source needs the .NET 10 SDK. The server speaks MCP over stdio, with README setup for Claude Desktop, Cursor, VS Code/Copilot and Codex, and an optional script installs a locally signed build and the bundled decompiler-mcp skill for Codex on macOS.","Users supply the managed .NET assemblies to inspect, such as a game's Assembly-CSharp.dll or a third-party library; the repository contains only its own test libraries, and the README notes that native libraries do not load. Loaded aliases are registered in LocalApplicationData/DecompilerServer/contexts.json and restored on demand, and at most four contexts stay resident by default (DECOMPILER_MAX_LOADED_CONTEXTS changes the limit).","Inspection tools carry the MCP readOnlyHint annotation; loading, unloading, context selection, decompiler settings and cache tools change server state. The patch, stub and wrapper generators return source text and do not modify the loaded assemblies. Responses are compact by default; DECOMPILER_RESPONSE_MODE=extended restores the earlier response fields.","The v1.4.0 release notes report 238 passing Release tests, and the release workflow builds and runs the test suite before publishing assets; these are project-reported results. MIT."],"requirements_zh":["所审阅版本为 v1.4.0，发布于 2026-10-01，其标签指向所审阅的 main 提交。发布包是依赖框架的单文件可执行程序，提供 Windows x64、macOS arm64 与 x64、Linux x64 与 arm64 版本，运行需要 .NET 10 运行时；从源码构建需要 .NET 10 SDK。服务器通过 stdio 提供 MCP，README 给出 Claude Desktop、Cursor、VS Code/Copilot 和 Codex 的配置方法；另有可选脚本可在 macOS 上为 Codex 安装本地签名的构建版本及随附的 decompiler-mcp 技能。","待分析的托管 .NET 程序集由用户自行提供，例如游戏的 Assembly-CSharp.dll 或第三方库；仓库只包含项目自己的测试库，README 也说明原生库无法加载。已加载的别名会登记在 LocalApplicationData/DecompilerServer/contexts.json 中，并在需要时恢复；默认最多同时驻留四个上下文，可通过 DECOMPILER_MAX_LOADED_CONTEXTS 修改上限。","查看类工具带有 MCP 的 readOnlyHint 标注；加载、卸载、切换上下文、反编译设置和缓存类工具会改变服务器状态。补丁、存根和包装器生成工具只返回源代码文本，不会修改已加载的程序集。响应默认采用精简格式，设置 DECOMPILER_RESPONSE_MODE=extended 可恢复旧版响应字段。","v1.4.0 发布说明称 238 项 Release 测试全部通过，发布工作流会先构建并运行测试套件再发布资源；这些均为项目自报结果。采用 MIT 许可。"],"targets":["app","game"],"url":"https://github.com/pardeike/DecompilerServer","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/JusticeRage/Gepetto/blob/f98e4c12decf86eae76ece9d6955bb6dfe472190/ida-plugin.json","https://github.com/JusticeRage/Gepetto/blob/f98e4c12decf86eae76ece9d6955bb6dfe472190/pyproject.toml","https://github.com/JusticeRage/Gepetto/blob/f98e4c12decf86eae76ece9d6955bb6dfe472190/gepetto/config.ini","https://github.com/JusticeRage/Gepetto/blob/f98e4c12decf86eae76ece9d6955bb6dfe472190/gepetto/ida/cli.py","https://github.com/JusticeRage/Gepetto/blob/f98e4c12decf86eae76ece9d6955bb6dfe472190/gepetto/ida/tools/tools.py","https://github.com/JusticeRage/Gepetto/blob/f98e4c12decf86eae76ece9d6955bb6dfe472190/gepetto/ida/tools/run_python.py","https://github.com/JusticeRage/Gepetto/blob/f98e4c12decf86eae76ece9d6955bb6dfe472190/gepetto/ida/handlers.py","https://github.com/JusticeRage/Gepetto/blob/f98e4c12decf86eae76ece9d6955bb6dfe472190/tests/conftest.py","https://github.com/JusticeRage/Gepetto/blob/f98e4c12decf86eae76ece9d6955bb6dfe472190/LICENSE","https://github.com/JusticeRage/Gepetto/releases/tag/v1.5.1"],"category":"agent-workflows","description_en":"IDA Pro plugin that sends Hex-Rays pseudocode to a hosted or local language model the user selects, to explain a function, comment it or propose new variable and function names, which the user picks from before they are applied. A chat console inside IDA also lets the model call tools that read disassembly, decompilation, cross-references, strings and types, rename and comment the database and run Python. The README warns that these general-purpose models may well be wrong and asks users to treat every result critically.","description_zh":"IDA Pro 插件，把 Hex-Rays 伪代码发送给使用者选定的托管或本地大模型，用于解释函数、添加注释或提出新的变量名与函数名，由使用者勾选后再应用。IDA 内的对话控制台还允许模型调用工具，读取反汇编、反编译结果、交叉引用、字符串和类型，对数据库进行重命名和注释，并运行 Python。README 提醒这些通用模型很可能出错，要求使用者审慎对待每一个结果。","entry_url":"https://awesomerea.org/resources/gepetto/","entry_url_zh":"https://awesomerea.org/zh/resources/gepetto/","evidence_url":"https://github.com/JusticeRage/Gepetto/blob/f98e4c12decf86eae76ece9d6955bb6dfe472190/README.md","group":"agents","id":"gepetto","json_url":"https://awesomerea.org/resources/gepetto/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/gepetto/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/gepetto/index.md","name":"Gepetto","name_zh":"Gepetto：调用大模型辅助逆向的 IDA 插件","record_type":"resource","relationship":"independent-agent-integration","requirements":["The reviewed main commit is 38 commits after the v1.5.1 release of 2025-11-19, while ida-plugin.json and pyproject.toml still declare version 1.5.0. The README requires IDA Pro 7.6 or later with the Hex-Rays decompiler. Installation uses Hex-Rays’ hcli plugin command, or copies gepetto.py and the gepetto folder into the IDA plugins directory and installs requirements.txt into IDA’s Python; pyproject.toml asks for Python 3.10+.","Each request sends the current function’s pseudocode, and in the chat console whatever the tools return, to the selected provider. Built-in providers include Anthropic, OpenAI, Gemini, Azure OpenAI, Groq, Together, Novita AI, Kluster.ai, DeepSeek and OpenRouter with the user’s own API keys, which the README notes are usually paid, plus local Ollama or LM Studio models. Further providers load as drop-in Python files or entry-point packages, which the README warns execute arbitrary code when IDA starts.","The chat console, chosen as Gepetto in IDA’s input bar, offers the model 22 tools: reading disassembly, bytes, pseudocode, cross-references, imports, symbols, strings, structures and search results; declaring C types; renaming functions, globals and local variables; setting comments; and run_python, which executes model-supplied Python inside IDA with no confirmation step. Its system prompt tells the model to carry out requested changes without asking. The Explain, Comment and Auto-rename menu actions work on one function, and Auto-rename lists the proposed names so the user selects which to apply; two actions the README does not describe, Generate C Code and Generate Python Code, save a model-written rewrite of the function to a file.","Repository tests use pytest with Hex-Rays’ idapro library and open a bundled manalyze.exe build, from the author’s Manalyze PE analyser, as a fixture; no CI workflow is published. The README’s before-and-after screenshot and its observation that renaming works better after an explanation are the author’s.","GPL-3.0 per LICENSE and ida-plugin.json; IDA Pro, the Hex-Rays decompiler and model services keep their own licences and terms. The README credits Kaspersky with initial funding and HarfangLab as the current backer."],"requirements_zh":["所审阅的 main 提交位于 2025-11-19 发布的 v1.5.1 之后 38 个提交，而 ida-plugin.json 与 pyproject.toml 仍标注 1.5.0 版。README 要求 IDA Pro 7.6 或更高版本并配备 Hex-Rays 反编译器。可通过 Hex-Rays 的 hcli 插件命令安装，或把 gepetto.py 与 gepetto 文件夹复制到 IDA 插件目录，再把 requirements.txt 安装到 IDA 使用的 Python 中；pyproject.toml 要求 Python 3.10+。","每次请求都会把当前函数的伪代码发送给所选服务商，在对话控制台中还会发送工具返回的全部内容。内置服务商包括 Anthropic、OpenAI、Gemini、Azure OpenAI、Groq、Together、Novita AI、Kluster.ai、DeepSeek 和 OpenRouter，需使用者自备 API 密钥，README 提示这些调用通常需要付费；也可使用本地 Ollama 或 LM Studio 模型。其他服务商可以作为 Python 文件或入口点软件包加载，README 提醒它们会在 IDA 启动时执行任意代码。","在 IDA 输入栏选择 Gepetto 即进入对话控制台，模型可调用 22 个工具：读取反汇编、字节、伪代码、交叉引用、导入表、符号、字符串、结构体和搜索结果；声明 C 类型；重命名函数、全局变量和局部变量；设置注释；以及 run_python，它在 IDA 内执行模型给出的 Python 代码，不经确认。其系统提示要求模型直接执行所请求的修改，无需询问。“解释”“注释”和“自动重命名”菜单操作只处理单个函数，自动重命名会列出建议名称供使用者勾选后应用；README 未介绍的“生成 C 代码”和“生成 Python 代码”两项操作会把模型改写的函数代码保存为文件。","仓库测试使用 pytest 和 Hex-Rays 的 idapro 库，并以仓库自带的 manalyze.exe（作者的 PE 分析工具 Manalyze 的构建产物）为测试样本；仓库未提供 CI 工作流。README 中的前后对比截图，以及先请求解释再重命名效果更好的观察，均为作者所述。","LICENSE 与 ida-plugin.json 标明采用 GPL-3.0；IDA Pro、Hex-Rays 反编译器和模型服务各有其许可与条款。README 感谢 Kaspersky 提供最初资助，并称 HarfangLab 为当前支持方。"],"targets":["binary"],"url":"https://github.com/JusticeRage/Gepetto","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/symgraph/GhidrAssistMCP/blob/b575acc1412cafcfd4dc9fedb7f99ecf219c68ab/docs/modernization-review.md","https://github.com/symgraph/GhidrAssistMCP/blob/b575acc1412cafcfd4dc9fedb7f99ecf219c68ab/build.gradle","https://github.com/symgraph/GhidrAssistMCP/blob/b575acc1412cafcfd4dc9fedb7f99ecf219c68ab/src/main/java/ghidrassistmcp/GhidrAssistMCPServer.java","https://github.com/symgraph/GhidrAssistMCP/blob/b575acc1412cafcfd4dc9fedb7f99ecf219c68ab/ghidra_scripts/GAMCPStartServerScript.java","https://github.com/symgraph/GhidrAssistMCP/blob/b575acc1412cafcfd4dc9fedb7f99ecf219c68ab/LICENSE","https://github.com/symgraph/GhidrAssistMCP/releases/tag/3.0.0"],"category":"agent-mcp","description_en":"Ghidra extension that runs an MCP server inside Ghidra over streamable HTTP and legacy SSE, with 100 explicitly named tools (93 enabled by default) for pseudocode, disassembly, P-code, control-flow and call graphs, cross-references, strings, imports and exports, plus renaming, retyping, comments and structure inference. Since version 3.0.0 the server starts with the project manager, so agents can create, open, save and close projects and open programs before a CodeBrowser exists, while one shared server tracks whichever CodeBrowser window has focus. Six program resource templates, seven analysis prompts and a bundled script for running the server under analyzeHeadless complete the package.","description_zh":"在 Ghidra 内运行 MCP 服务器的 Ghidra 扩展，通过 streamable HTTP 和旧版 SSE 提供 100 个名称明确的工具（默认启用 93 个），涵盖伪代码、反汇编、P-code、控制流图与调用图、交叉引用、字符串、导入表和导出表，以及重命名、修改类型、注释和结构体推断。自 3.0.0 版起，服务器随项目管理器一同启动，智能体在 CodeBrowser 尚未打开时即可创建、打开、保存和关闭项目并打开程序；同一个共享服务器会跟踪当前获得焦点的 CodeBrowser 窗口。扩展另附六个程序资源模板、七个分析提示词，以及在 analyzeHeadless 下运行服务器的脚本。","entry_url":"https://awesomerea.org/resources/ghidrassistmcp/","entry_url_zh":"https://awesomerea.org/zh/resources/ghidrassistmcp/","evidence_url":"https://github.com/symgraph/GhidrAssistMCP/blob/b575acc1412cafcfd4dc9fedb7f99ecf219c68ab/README.md","group":"agents","id":"ghidrassistmcp","json_url":"https://awesomerea.org/resources/ghidrassistmcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/ghidrassistmcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghidrassistmcp/index.md","name":"GhidrAssistMCP","name_zh":"GhidrAssistMCP Ghidra 原生 MCP 扩展","record_type":"resource","relationship":"independent-agent-integration","requirements":["Ghidra 12.0 or 12.1 Public running on Java 25 or newer; extension zips are specific to one Ghidra version. Release 3.0.0 (2026-10-09), whose tag is the reviewed commit, publishes a zip for Ghidra 12.1; installation goes through File → Install Extensions, and source builds use the bundled Gradle wrapper with Java 25 and GHIDRA_INSTALL_DIR. The server listens on localhost:8080 by default, with streamable HTTP at /mcp (MCP 2025-11-25) and legacy SSE at /sse (2024-11-05); the Java MCP SDK 2.0.1, Jetty and Jackson are bundled under private package names.","Programs come from the user's own Ghidra project or imports; the extension supplies no target binaries. Headless mode runs the bundled GAMCPStartServerScript.java inside analyzeHeadless against the loaded program, with wait=true to keep the session open and a completion_file option to end it; the project lifecycle tools need the GUI project manager.","Write tools change the program or project, including names, types, comments, structures, disassembly, analysis options and saves, and read and write tools carry separate MCP annotations. import_file, export_program and the five Ghidra script tools are disabled by default; a headless agent_lab profile enables sandbox-local program export while arbitrary-path import and scripts stay disabled. The README describes no client authentication; the server rejects browser requests whose Origin header is not allowed.","The project's modernization review reports 90 passing tests in buildExtension test runs against Ghidra 12.0 and 12.1, and a live Ghidra 12.1 smoke test on 2026-10-09 that predates the four project-control tools; these are project-reported. MIT. The repository moved from jtang613/GhidrAssistMCP, and its README recommends the author's GhidrAssist client."],"requirements_zh":["需要运行在 Java 25 或更新版本上的 Ghidra 12.0 或 12.1 Public；扩展 zip 与特定 Ghidra 版本对应。3.0.0 版（2026-10-09）的标签即所审阅的提交，该版本发布了适用于 Ghidra 12.1 的 zip；可通过 File → Install Extensions 安装，从源码构建则使用随附的 Gradle wrapper，并需要 Java 25 和 GHIDRA_INSTALL_DIR。服务器默认监听 localhost:8080，streamable HTTP 端点为 /mcp（MCP 2025-11-25），旧版 SSE 端点为 /sse（2024-11-05）；Java MCP SDK 2.0.1、Jetty 和 Jackson 以私有包名打包在扩展内。","待分析的程序来自用户自己的 Ghidra 项目或导入的文件，扩展本身不提供任何目标二进制。无界面模式在 analyzeHeadless 中运行随附的 GAMCPStartServerScript.java，作用于已加载的程序；设置 wait=true 可保持会话不退出，completion_file 选项则用于结束会话。项目生命周期类工具需要图形界面的项目管理器。","写入类工具会修改程序或项目，包括名称、类型、注释、结构体、反汇编、分析选项和保存操作；读写两类工具分别带有对应的 MCP 标注。import_file、export_program 和五个 Ghidra 脚本工具默认禁用；无界面模式下的 agent_lab 配置会开放沙箱内的程序导出，任意路径导入和脚本仍保持禁用。README 未说明任何客户端认证机制；服务器会拒绝 Origin 请求头不在允许范围内的浏览器请求。","项目的现代化评审文档称，在 Ghidra 12.0 和 12.1 上运行 buildExtension test 均通过 90 项测试，并记录了 2026-10-09 在 Ghidra 12.1 上的一次实机冒烟测试，而四个项目控制工具是在该测试之后加入的；以上均为项目自报结果。采用 MIT 许可。仓库已从 jtang613/GhidrAssistMCP 迁移，README 推荐作者自己的 GhidrAssist 客户端。"],"targets":["binary"],"url":"https://github.com/symgraph/GhidrAssistMCP","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/fkie-cad/dewolf/blob/3c389e18f03cd922f4b424a62d3717dac6fe3eee/README.md#L25-L72","https://github.com/fkie-cad/dewolf/blob/3c389e18f03cd922f4b424a62d3717dac6fe3eee/README.md#L106-L126","https://github.com/fkie-cad/dewolf/blob/3c389e18f03cd922f4b424a62d3717dac6fe3eee/plugin.json","https://github.com/fkie-cad/dewolf/blob/3c389e18f03cd922f4b424a62d3717dac6fe3eee/requirements.txt","https://github.com/fkie-cad/dewolf/tree/3c389e18f03cd922f4b424a62d3717dac6fe3eee/decompiler/pipeline","https://github.com/fkie-cad/dewolf/blob/3c389e18f03cd922f4b424a62d3717dac6fe3eee/Makefile","https://github.com/fkie-cad/dewolf/blob/3c389e18f03cd922f4b424a62d3717dac6fe3eee/.github/workflows/pipeline.yml","https://github.com/fkie-cad/dewolf/blob/3c389e18f03cd922f4b424a62d3717dac6fe3eee/LICENSE","https://github.com/fkie-cad/dewolf/releases/tag/v2026.7.11"],"category":"native-analysis","description_en":"Research decompiler from Fraunhofer FKIE, developed with Singapore's DSO National Laboratories between 2019 and 2021, that runs as a Binary Ninja plugin and starts from Binary Ninja's Medium Level IL. A pipeline of preprocessing, SSA, data-flow and control-flow stages restructures code following the DREAM/DREAM++ approach and emits C-like output. Results appear in a Binary Ninja dock widget, or decompile.py prints or writes them for a whole binary or one named function in batch use.","description_zh":"由 Fraunhofer FKIE 与新加坡 DSO 国家实验室在 2019 至 2021 年合作研发的研究型反编译器，以 Binary Ninja 插件形式运行，并以 Binary Ninja 的中级中间语言（Medium Level IL）为起点。它通过预处理、SSA、数据流和控制流等阶段组成的流水线，按照 DREAM/DREAM++ 方法重建控制结构，输出类 C 代码。结果可在 Binary Ninja 的停靠窗口中查看，也可在批量场景下用 decompile.py 对整个二进制或指定函数进行反编译，并输出到终端或文件。","entry_url":"https://awesomerea.org/resources/dewolf/","entry_url_zh":"https://awesomerea.org/zh/resources/dewolf/","evidence_url":"https://github.com/fkie-cad/dewolf/blob/3c389e18f03cd922f4b424a62d3717dac6fe3eee/README.md","group":"tools","id":"dewolf","json_url":"https://awesomerea.org/resources/dewolf/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dewolf/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dewolf/index.md","name":"dewolf","name_zh":"dewolf 研究型反编译器","record_type":"resource","relationship":"foundation","requirements":["Release at review: v2026.7.11, published 2026-07-11 by the project's automatic release workflow; the reviewed main commit is that release, and plugin.json declares the same version and lists Windows, Linux and macOS.","Needs Python 3.10+, a separately licensed Binary Ninja (the README asks for the latest stable release, at least 3.4; plugin.json sets minimum build 4271) with its Python API installed in the same environment, and astyle for indentation; libgraph-easy-perl is needed only for ASCII graph output. The plugin is installed by cloning it into Binary Ninja's plugin folder and installing requirements.txt, which pulls the project's dewolf-logic and dewolf-idioms packages from Git.","Settings made in the Binary Ninja GUI do not apply to decompile.py, which reads a config.json in the plugin folder instead; decompiler/util/default.json lists every option.","The README calls dewolf a research prototype that is not optimized for production use and warns of bugs or decompilation failures on real-world binaries. Its tests compile C sample sources and keep GNU coreutils executables under tests/coreutils/binaries as fixtures; CI builds a Docker image around a Binary Ninja archive and license supplied from repository secrets.","LGPL-2.1 (the plugin.json notice allows any later version)."],"requirements_zh":["审阅时的最新版本为 v2026.7.11，由项目的自动发布工作流于 2026-07-11 发布；所审阅的 main 分支提交即为该版本，plugin.json 声明的版本与之一致，并列出 Windows、Linux 和 macOS 平台。","需要 Python 3.10+、另行授权的 Binary Ninja（README 要求最新稳定版且不低于 3.4；plugin.json 规定最低构建号为 4271），并将其 Python API 安装到同一环境中，还需要用于代码缩进的 astyle；libgraph-easy-perl 仅在输出 ASCII 图时需要。安装方式是将仓库克隆到 Binary Ninja 的插件目录并安装 requirements.txt，其中会从 Git 拉取项目自己的 dewolf-logic 和 dewolf-idioms 包。","在 Binary Ninja 图形界面中所做的设置对 decompile.py 无效，命令行运行时改为读取插件目录中的 config.json；decompiler/util/default.json 列出了全部选项。","README 称 dewolf 是研究原型，并未针对生产使用充分优化，在真实二进制上可能出现错误甚至反编译失败。测试会编译 C 示例源码，并在 tests/coreutils/binaries 中保留 GNU coreutils 可执行文件作为测试夹具；CI 使用仓库密钥提供的 Binary Ninja 安装包和许可证构建 Docker 镜像。","采用 LGPL-2.1 许可（plugin.json 中的声明允许选用任何更新版本）。"],"targets":["binary"],"url":"https://github.com/fkie-cad/dewolf","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/dembrandt/dembrandt/blob/4deb8350b134669dc0251af56e028a7250d86914/README.md#L199-L214","https://github.com/dembrandt/dembrandt/blob/4deb8350b134669dc0251af56e028a7250d86914/docs/usage.md","https://github.com/dembrandt/dembrandt/blob/4deb8350b134669dc0251af56e028a7250d86914/docs/mcp.md","https://github.com/dembrandt/dembrandt/blob/4deb8350b134669dc0251af56e028a7250d86914/package.json","https://github.com/dembrandt/dembrandt/blob/4deb8350b134669dc0251af56e028a7250d86914/SECURITY.md","https://github.com/dembrandt/dembrandt/blob/4deb8350b134669dc0251af56e028a7250d86914/LICENSE","https://github.com/dembrandt/dembrandt/releases/tag/v0.39.2","https://www.npmjs.com/package/dembrandt/v/0.39.2"],"category":"web-analysis","description_en":"Node.js CLI that renders a website in Playwright-driven Chromium or Firefox and reads computed styles from the DOM to extract its design system: logo, color roles with the evidence behind each pick, typography, spacing, borders, shadows, motion, breakpoints and component styles such as buttons and inputs. Results export as W3C design tokens (DTCG), Tailwind v4 or shadcn/ui themes, DESIGN.md, an HTML report or a brand-guide PDF, alongside WCAG contrast checks on real DOM pairs and a CI drift gate against a committed baseline. It also runs as an MCP server for agent clients.","description_zh":"Node.js 命令行工具，通过 Playwright 驱动 Chromium 或 Firefox 渲染网站，并从 DOM 读取计算样式来提取其设计系统：标志、附带判定依据的颜色角色、字体排版、间距、边框、阴影、动效、断点，以及按钮、输入框等组件样式。结果可导出为 W3C 设计令牌（DTCG）、Tailwind v4 或 shadcn/ui 主题、DESIGN.md、HTML 报告或品牌指南 PDF，还能对页面中实际的前景与背景组合做 WCAG 对比度检查，并在 CI 中与已提交的基线比较、拦截设计漂移。它也能作为 MCP 服务器供智能体客户端调用。","entry_url":"https://awesomerea.org/resources/dembrandt/","entry_url_zh":"https://awesomerea.org/zh/resources/dembrandt/","evidence_url":"https://github.com/dembrandt/dembrandt/blob/4deb8350b134669dc0251af56e028a7250d86914/README.md","group":"tools","id":"dembrandt","json_url":"https://awesomerea.org/resources/dembrandt/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dembrandt/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dembrandt/index.md","name":"Dembrandt","name_zh":"Dembrandt 网站设计系统提取工具","record_type":"resource","relationship":"foundation","requirements":["Release at review: v0.39.2, published 2026-10-11 on GitHub and npm; the reviewed main commit is ten README, MCP-registry and Action-metadata commits ahead. SECURITY.md describes the project as pre-1.0, with fixes only for the latest 0.x release.","Requires Node.js 18+ and a one-time dembrandt install-browser step, because playwright-core ships no browser; Linux and CI hosts also need Playwright's system libraries, and Docker or CI containers may need --no-sandbox. The experimental --ai brand-color model needs the optional onnxruntime-node package. The MCP server starts with npx dembrandt mcp, and a separate GitHub Action wraps the drift gate.","Input is a live URL, rendered at 1920x1080 by default or 390x844 with --mobile; crawls merge several pages found from navigation links or from sitemap.xml after a robots.txt check. The README's limitations: dark mode needs --dark-mode, canvas/WebGL sites cannot be analyzed, some dynamically loaded content and hover or focus states can be missed, and JavaScript-heavy sites need hydration time. Pages behind a sign-in can be reached with the user's own cookies or an interactive login.","MIT. The README limits intended use to design systems you own or may analyze, on sites whose terms permit automated access, and asks users not to reproduce third-party brand identities, logos or trademarks. The optional --key flag uploads each run's snapshot to the vendor's hosted Dembrandt App, which is in beta."],"requirements_zh":["审阅时的版本为 v0.39.2，于 2026-10-11 发布到 GitHub 和 npm；所审阅的 main 分支提交比该版本多十个 README、MCP 注册信息和 Action 元数据方面的提交。SECURITY.md 称项目仍处于 1.0 之前阶段，只为最新的 0.x 版本提供修复。","需要 Node.js 18+，并须执行一次 dembrandt install-browser，因为 playwright-core 不附带浏览器；Linux 和 CI 主机还需安装 Playwright 所需的系统库，Docker 或 CI 容器中可能需要 --no-sandbox。实验性的 --ai 品牌主色模型需要可选的 onnxruntime-node 包。MCP 服务器通过 npx dembrandt mcp 启动，另有独立的 GitHub Action 封装漂移门禁。","输入是在线 URL，默认以 1920x1080 视口渲染，使用 --mobile 时为 390x844；多页抓取会合并从导航链接或 sitemap.xml（先检查 robots.txt）发现的多个页面。README 列出的限制包括：深色模式需加 --dark-mode，无法分析以 canvas/WebGL 渲染的网站，部分动态加载内容以及悬停或焦点状态可能遗漏，JavaScript 较重的网站需要等待水合完成。需要登录的页面可借助使用者自己的 Cookie 或交互式登录访问。","采用 MIT 许可。README 将预期用途限定为分析自己拥有或获准分析的设计系统，且网站条款须允许自动化访问，并要求不得用提取结果复制第三方品牌形象、标志或商标。可选的 --key 参数会把每次运行的快照上传到厂商托管、仍处于测试阶段的 Dembrandt App。"],"targets":["website"],"url":"https://github.com/dembrandt/dembrandt","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/SimoneAvogadro/android-reverse-engineering-skill/blob/0c7cf89830993df7dfc178498f69952262808bea/plugins/android-reverse-engineering/skills/android-reverse-engineering/SKILL.md","https://github.com/SimoneAvogadro/android-reverse-engineering-skill/blob/0c7cf89830993df7dfc178498f69952262808bea/plugins/android-reverse-engineering/.claude-plugin/plugin.json","https://github.com/SimoneAvogadro/android-reverse-engineering-skill/blob/0c7cf89830993df7dfc178498f69952262808bea/.claude-plugin/marketplace.json","https://github.com/SimoneAvogadro/android-reverse-engineering-skill/blob/0c7cf89830993df7dfc178498f69952262808bea/LICENSE"],"category":"agent-workflows","description_en":"Claude Code plugin and agent skill that drives jadx and Fernflower/Vineflower to decompile Android APK, XAPK, JAR and AAR files and document their HTTP APIs. A fingerprint pass first identifies the app's framework, HTTP stack, obfuscation level and native libraries, then shell scripts extract endpoints and authentication patterns across Retrofit, OkHttp, Volley, Ktor and Apollo/GraphQL, trace call flows from UI down to the network layer, and rebuild original Kotlin class names from the metadata R8 leaves behind. It installs through the bundled Claude Code marketplace, and its scripts also run standalone with a /decompile slash command.","description_zh":"Claude Code 插件及智能体技能，驱动 jadx 与 Fernflower/Vineflower 反编译 Android 的 APK、XAPK、JAR 和 AAR 文件并记录其 HTTP 接口。它先用指纹步骤识别应用的框架、HTTP 栈、混淆程度和原生库，再通过 shell 脚本在 Retrofit、OkHttp、Volley、Ktor 和 Apollo/GraphQL 等栈中提取接口与鉴权特征，追踪从界面到网络层的调用链，并利用 R8 无法剥除的元数据还原原始的 Kotlin 类名。技能通过自带的 Claude Code marketplace 安装，其脚本也可独立运行，并提供 /decompile 斜杠命令。","entry_url":"https://awesomerea.org/resources/android-reverse-engineering-skill/","entry_url_zh":"https://awesomerea.org/zh/resources/android-reverse-engineering-skill/","evidence_url":"https://github.com/SimoneAvogadro/android-reverse-engineering-skill/blob/0c7cf89830993df7dfc178498f69952262808bea/README.md","group":"agents","id":"android-reverse-engineering-skill","json_url":"https://awesomerea.org/resources/android-reverse-engineering-skill/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/android-reverse-engineering-skill/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/android-reverse-engineering-skill/index.md","name":"Android Reverse Engineering Skill","name_zh":"Android Reverse Engineering Skill 安卓反编译智能体技能","record_type":"resource","relationship":"independent-agent-integration","requirements":["A Claude Code client with plugin/skill support; install by adding SimoneAvogadro/android-reverse-engineering-skill as a marketplace and installing the android-reverse-engineering plugin, or from a local clone. The reviewed plugin manifest is version 1.5.0 on the master commit, ahead of the latest GitHub release v1.1.0 (2026-04-27).","The skill runs external tools it does not bundle: Java JDK 17+ and the jadx CLI are required, and Vineflower or Fernflower plus dex2jar are optional for better Java output; a dependency checker and an OS-detecting install helper are provided. Bash scripts are the primary path, with experimental PowerShell equivalents for Windows.","Users supply the Android packages to analyze; the repository ships no app files. Work is static decompilation, API documentation, call-flow tracing and Kotlin name recovery; the author reports roughly complete recovery of the Repository/ViewModel/UseCase classes on a typical app, which is a project-reported figure.","Apache-2.0 for the skill; the decompilers and other driven tools keep their own licenses. The README limits use to lawful purposes such as authorized security research, interoperability analysis, and malware analysis, and places responsibility on the user."],"requirements_zh":["需要支持插件/技能的 Claude Code 客户端；安装方式为将 SimoneAvogadro/android-reverse-engineering-skill 添加为 marketplace 并安装 android-reverse-engineering 插件，或从本地克隆安装。所审阅的插件清单在 master 提交上为 1.5.0 版，高于最新的 GitHub 发布版本 v1.1.0（2026-04-27）。","该技能调用的外部工具均不随附：必须安装 Java JDK 17+ 和 jadx 命令行；Vineflower 或 Fernflower 以及 dex2jar 为可选项，可改善 Java 反编译质量。技能提供依赖检查脚本和可识别操作系统的安装辅助脚本。Bash 脚本为主要方式，Windows 另有处于实验阶段的 PowerShell 等价脚本。","待分析的 Android 安装包由用户自行提供，仓库不含任何应用文件。工作内容为静态反编译、接口文档整理、调用链追踪和 Kotlin 类名还原；作者称在典型应用上可还原几乎全部 Repository/ViewModel/UseCase 类，此为项目自报数据。","技能本身采用 Apache-2.0；被驱动的各反编译器和其他工具保留各自许可。README 将用途限定于合法目的，例如经授权的安全研究、互操作性分析和恶意软件分析，并将责任归于使用者。"],"targets":["app"],"url":"https://github.com/SimoneAvogadro/android-reverse-engineering-skill","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/arcanite24/gb-recompiled/blob/9150f87d82fa98abcb6ea22329170463f9702eb8/ACCURACY.md","https://github.com/arcanite24/gb-recompiled/blob/9150f87d82fa98abcb6ea22329170463f9702eb8/ports/pokemon-crystal/README.md","https://github.com/arcanite24/gb-recompiled/blob/9150f87d82fa98abcb6ea22329170463f9702eb8/ports/pokemon-crystal/LEGAL.md","https://github.com/arcanite24/gb-recompiled/blob/9150f87d82fa98abcb6ea22329170463f9702eb8/.github/workflows/release.yml","https://github.com/arcanite24/gb-recompiled/blob/9150f87d82fa98abcb6ea22329170463f9702eb8/LICENSE","https://github.com/arcanite24/gb-recompiled/releases/tag/v0.1.0"],"category":"game-analysis","description_en":"Static recompiler that turns Game Boy and Game Boy Color ROMs into portable C projects: it decodes and analyzes banked LR35902 code, emits C with machine-readable metadata, and links it with a shared SDL2 runtime for video, audio, input, saves and hardware timing. Jump targets that static analysis missed fall back to an interpreter. The repository also carries differential, replay and frame and audio capture tooling, plus a Pokémon Crystal port that builds native features on hooks into the exact ROM.","description_zh":"将 Game Boy 和 Game Boy Color ROM 转换为可移植 C 项目的静态重编译器：它解码并分析分 bank 的 LR35902 代码，生成 C 代码及机器可读的元数据，再与共享的 SDL2 运行时链接，由运行时处理视频、音频、输入、存档和硬件时序。静态分析未覆盖的跳转目标会回退到解释器执行。仓库还提供差分对比、回放以及画面和音频捕获工具，并附有一个 Pokémon Crystal 移植，借助对特定 ROM 的挂钩实现原生功能。","entry_url":"https://awesomerea.org/resources/gb-recompiled/","entry_url_zh":"https://awesomerea.org/zh/resources/gb-recompiled/","evidence_url":"https://github.com/arcanite24/gb-recompiled/blob/9150f87d82fa98abcb6ea22329170463f9702eb8/README.md","group":"tools","id":"gb-recompiled","json_url":"https://awesomerea.org/resources/gb-recompiled/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/gb-recompiled/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/gb-recompiled/index.md","name":"GB Recompiled","name_zh":"GB Recompiled Game Boy 静态重编译器","record_type":"resource","relationship":"foundation","requirements":["The README calls it an experimental recompiler and says successful code generation does not guarantee that every scene runs correctly. ACCURACY.md (generated 2026-07-13) reports 8 of 8 Blargg and 63 of 67 Mooneye test ROMs passing and states that this is not a measure of commercial-game compatibility.","Users supply their own .gb or .gbc ROMs; the repository contains no ROMs. The bundled Crystal Recompiled port is ROM-free: it requires the user's exact US/Europe Rev 1 ROM, checks its hash before writing any ROM-derived output, and keeps generated projects in ignored local or private-cache paths, and its distribution policy forbids releasing ROMs, generated C or extracted assets. That port's alpha is verified end to end only on macOS arm64.","Release v0.1.0 (2026-08-03) ships prebuilt gbrecomp archives for Linux x64, macOS Intel and Apple silicon, and Windows x64; the reviewed main commit is 13 commits ahead, last committed 2026-09-10. Building from source needs CMake 3.20+, Ninja, SDL2 development files and a C11/C++20 compiler, and generated projects build with CMake and Ninja. ANDROID.md documents a separate single-ROM APK workflow.","A CTest suite covers isolated invariants. The README notes that differential mode shares runtime devices with the interpreter, leaving SameBoy comparisons and frame, audio and state captures as separate evidence. The only GitHub workflow builds release archives and smoke-tests them with a generated fixture ROM; an optional manual job checks the Crystal port against a privately held ROM without publishing.","MIT-licensed; the vendored Dear ImGui keeps its own license. The README states no affiliation with Nintendo, and the Crystal port none with Nintendo, The Pokémon Company, Game Freak or Creatures. The README points contributors and coding agents to AGENTS.md."],"requirements_zh":["README 称其为实验性重编译器，并说明代码生成成功不代表每个场景都能正确运行。ACCURACY.md（生成于 2026-07-13）报告 Blargg 测试 ROM 通过 8/8、Mooneye 通过 63/67，并说明这并不衡量商业游戏的兼容性。","使用者需自备 .gb 或 .gbc ROM；仓库不含任何 ROM。随附的 Crystal Recompiled 移植本身不含 ROM：它要求使用者提供特定的美版/欧版 Rev 1 ROM，在写出任何源自 ROM 的内容前先校验哈希，并把生成的项目放在被忽略的本地目录或私有缓存中；其分发政策禁止发布 ROM、生成的 C 代码或提取出的资产。该移植的 alpha 版只在 macOS arm64 上完成了端到端验证。","v0.1.0 版本（2026-08-03）提供 Linux x64、macOS Intel 与 Apple 芯片以及 Windows x64 的预构建 gbrecomp 压缩包；所审阅的 main 提交比它多 13 个提交，最后一次提交为 2026-09-10。从源码构建需要 CMake 3.20+、Ninja、SDL2 开发文件和支持 C11/C++20 的编译器，生成的项目同样用 CMake 和 Ninja 构建。ANDROID.md 另行说明了单 ROM 生成 APK 的流程。","CTest 测试套件覆盖相互独立的不变量。README 指出差分模式与解释器共用运行时设备，SameBoy 对比以及画面、音频和状态捕获则作为另外的证据。仓库唯一的 GitHub 工作流负责构建发布包，并用生成的测试 ROM 做冒烟测试；另有一个可选的手动任务以私下持有的 ROM 检查 Crystal 移植，不会发布任何内容。","采用 MIT 许可证；内置的 Dear ImGui 保留其自身许可。README 声明与 Nintendo 无关联，Crystal 移植也声明与 Nintendo、The Pokémon Company、Game Freak 和 Creatures 无关联。README 要求贡献者和编程代理阅读 AGENTS.md。"],"targets":["binary","game"],"url":"https://github.com/arcanite24/gb-recompiled","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/codemerx/CodemerxDecompile/blob/9ada3065e65112895445745aef888b9fb6fb46a7/src/CodemerxDecompile/ViewModels/MainWindowViewModel.cs","https://github.com/codemerx/CodemerxDecompile/blob/9ada3065e65112895445745aef888b9fb6fb46a7/src/CodemerxDecompile/Services/ProjectGenerationService.cs","https://github.com/codemerx/CodemerxDecompile/tree/9ada3065e65112895445745aef888b9fb6fb46a7/src/CodemerxDecompile/SearchResults","https://github.com/codemerx/CodemerxDecompile/blob/9ada3065e65112895445745aef888b9fb6fb46a7/src/CodemerxDecompile/CodemerxDecompile.csproj","https://github.com/codemerx/CodemerxDecompile/blob/9ada3065e65112895445745aef888b9fb6fb46a7/.gitmodules","https://github.com/codemerx/CodemerxDecompile/blob/9ada3065e65112895445745aef888b9fb6fb46a7/.github/workflows/package.yml","https://github.com/codemerx/CodemerxDecompile/blob/9ada3065e65112895445745aef888b9fb6fb46a7/src/CodemerxDecompile/Services/MatomoAnalyticsService.cs","https://github.com/codemerx/CodemerxDecompile/blob/9ada3065e65112895445745aef888b9fb6fb46a7/src/CodemerxDecompile/Extensions/ServiceCollectionExtensions.cs","https://github.com/codemerx/CodemerxDecompile/blob/9ada3065e65112895445745aef888b9fb6fb46a7/src/CodemerxDecompile/EnvironmentProvider.cs","https://github.com/codemerx/CodemerxDecompile/blob/9ada3065e65112895445745aef888b9fb6fb46a7/COPYING","https://github.com/codemerx/CodemerxDecompile/blob/9ada3065e65112895445745aef888b9fb6fb46a7/THIRD-PARTY-NOTICES.md","https://github.com/codemerx/CodemerxDecompile/releases/tag/1.5.0"],"category":"dotnet","description_en":"Cross-platform desktop .NET decompiler maintained by the original JustDecompile creators as a continuation of their JustDecompile Engine, built with Mono.Cecil and an Avalonia UI. It loads assemblies into a tree of namespaces, types, members and resolved references, shows decompiled C#, VB.NET or IL with go-to-definition and back/forward navigation, and searches names, types, string literals and instructions. A create-project command exports an assembly as a Visual Studio 2015, 2017 or 2019 project.","description_zh":"由 JustDecompile 原班开发者维护的跨平台桌面 .NET 反编译器，是其 JustDecompile 引擎的延续，基于 Mono.Cecil 并采用 Avalonia 界面。它把程序集加载为由命名空间、类型、成员和已解析引用组成的树，以 C#、VB.NET 或 IL 显示反编译结果，支持转到定义和前进／后退导航，并可搜索名称、类型、字符串字面量和指令。“创建项目”命令可将程序集导出为 Visual Studio 2015、2017 或 2019 项目。","entry_url":"https://awesomerea.org/resources/codemerxdecompile/","entry_url_zh":"https://awesomerea.org/zh/resources/codemerxdecompile/","evidence_url":"https://github.com/codemerx/CodemerxDecompile/blob/9ada3065e65112895445745aef888b9fb6fb46a7/README.md","group":"tools","id":"codemerxdecompile","json_url":"https://awesomerea.org/resources/codemerxdecompile/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/codemerxdecompile/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/codemerxdecompile/index.md","name":"CodemerxDecompile","name_zh":"CodemerxDecompile .NET 反编译器","record_type":"resource","relationship":"foundation","requirements":["Release at review: 1.5.0, published 2024-11-18, with portable archives for Windows x64 and ARM64, Linux x64 and macOS ARM64 and x64; the reviewed master commit is from the same day and was still the latest at review. The README says the macOS app is unsigned, so macOS reports it as damaged until its quarantine attribute is removed.","Source builds need the JustDecompileEngine and AvaloniaEdit Git submodules and the .NET 7 SDK: the app targets net7.0, and the release workflow publishes one build per runtime with dotnet publish. The main view uses the engine's C# 7 and Visual Basic 10 language modes.","Release builds send usage events, such as start-up, opening files, changing language, searching and creating projects, to a Matomo cloud server together with a hashed device identifier, the app version and OS details, and they query the GitHub API for newer releases; no setting to turn this off was found in the reviewed source.","AGPL-3.0 for the app and the JustDecompile Engine; Mono.Cecil and AvaloniaEdit are MIT-licensed, per the README and THIRD-PARTY-NOTICES.md. Input is the user's own .NET assemblies."],"requirements_zh":["审阅时的最新版本为 1.5.0，于 2024-11-18 发布，提供 Windows x64 和 ARM64、Linux x64 以及 macOS ARM64 和 x64 的免安装压缩包；所审阅的 master 分支提交与其同日，审阅时仍是最新提交。README 指出 macOS 版应用未签名，在移除隔离属性之前，macOS 会提示该应用已损坏。","从源码构建需要 JustDecompileEngine 和 AvaloniaEdit 两个 Git 子模块以及 .NET 7 SDK：应用的目标框架为 net7.0，发布工作流用 dotnet publish 为每个运行时分别生成构建。主界面使用引擎的 C# 7 和 Visual Basic 10 语言模式。","发布版构建会把启动、打开文件、切换语言、搜索和创建项目等使用事件，连同经哈希处理的设备标识、应用版本和操作系统信息发送到 Matomo 云服务器，并通过 GitHub API 查询新版本；在所审阅的源码中未发现关闭这些功能的设置。","应用本身和 JustDecompile 引擎采用 AGPL-3.0 许可；据 README 和 THIRD-PARTY-NOTICES.md，Mono.Cecil 与 AvaloniaEdit 采用 MIT 许可。输入为用户自己的 .NET 程序集。"],"targets":["app"],"url":"https://github.com/codemerx/CodemerxDecompile","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/2akouwu/reverify/blob/f32ea84ccd6bb2aff90eca711ccfdbf04e6b8923/BENCHMARK.md","https://github.com/2akouwu/reverify/blob/f32ea84ccd6bb2aff90eca711ccfdbf04e6b8923/EXAMPLE.md","https://github.com/2akouwu/reverify/blob/f32ea84ccd6bb2aff90eca711ccfdbf04e6b8923/pyproject.toml","https://github.com/2akouwu/reverify/blob/f32ea84ccd6bb2aff90eca711ccfdbf04e6b8923/reverify/mcp_server.py","https://github.com/2akouwu/reverify/blob/f32ea84ccd6bb2aff90eca711ccfdbf04e6b8923/reverify/agent.py","https://github.com/2akouwu/reverify/blob/f32ea84ccd6bb2aff90eca711ccfdbf04e6b8923/reverify/ledger.py","https://github.com/2akouwu/reverify/blob/f32ea84ccd6bb2aff90eca711ccfdbf04e6b8923/.github/workflows/ci.yml","https://github.com/2akouwu/reverify/blob/f32ea84ccd6bb2aff90eca711ccfdbf04e6b8923/SECURITY.md","https://github.com/2akouwu/reverify/blob/f32ea84ccd6bb2aff90eca711ccfdbf04e6b8923/LICENSE","https://github.com/2akouwu/reverify/releases/tag/v0.11.0","https://pypi.org/project/reverify/0.10.0/"],"category":"agent-workflows","description_en":"Python CLI and stdio MCP server that checks a model’s structured claims about a binary, such as bytes or typed values at an offset, strings, imports and exports, instruction mnemonics, emulation results and tested or Z3-proved equivalence, and returns VERIFIED, REFUTED or INCONCLUSIVE with the evidence the tools observed. Grounded and refuted results are kept in a per-binary ledger on disk, so a reset or later session resumes from them instead of from a summary, and a reconstruct loop has a model propose claims until an informative set verifies. A separate rollover command replaces context compaction in Claude Code, Codex, Gemini CLI or OpenCode with file hand-offs and fresh sessions.","description_zh":"Python 命令行工具和 stdio MCP 服务器，用于检查模型对二进制文件提出的结构化断言，例如某偏移处的字节或类型化数值、字符串、导入与导出、指令助记符、模拟执行结果，以及经测试或经 Z3 证明的等价性，并连同工具实际观察到的证据返回 VERIFIED、REFUTED 或 INCONCLUSIVE。已确证和已驳斥的结果保存在磁盘上按二进制文件划分的台账中，重置后或之后的会话可据此继续，而不依赖摘要；reconstruct 循环则让模型不断提出断言，直至一组有信息量的断言通过验证。另有 rollover 命令，用文件交接和新会话取代 Claude Code、Codex、Gemini CLI 或 OpenCode 的上下文压缩。","entry_url":"https://awesomerea.org/resources/reverify-claim-verifier/","entry_url_zh":"https://awesomerea.org/zh/resources/reverify-claim-verifier/","evidence_url":"https://github.com/2akouwu/reverify/blob/f32ea84ccd6bb2aff90eca711ccfdbf04e6b8923/README.md","group":"agents","id":"reverify-claim-verifier","json_url":"https://awesomerea.org/resources/reverify-claim-verifier/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/reverify-claim-verifier/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/reverify-claim-verifier/index.md","name":"Reverify","name_zh":"Reverify：用确定性工具核验模型二进制分析断言","record_type":"resource","relationship":"independent-agent-integration","requirements":["The reviewed main commit is 25 commits after the v0.11.0 GitHub release of 2026-09-04; PyPI’s newest version is 0.10.0, and the README’s status section still describes v0.9.0. The core is pure Python with no dependencies, and pyproject.toml declares Python 3.8+. The full extra adds capstone, unicorn, lief and z3-solver, and the angr extra adds the function, call and cross-reference claims, which return INCONCLUSIVE without an engine. The toolkit also parses PE, ELF and Mach-O files, scans byte patterns, decodes Protobuf and TLV data and generates Frida hook scripts.","The verifier and benchmarks need no model. reconstruct calls an OpenAI-compatible endpoint configured by OPENAI_API_KEY, OPENAI_BASE_URL and OPENAI_MODEL, orchestrate can drive Claude through the Claude Agent SDK on a Claude Code login, and the MCP server gives any MCP client parsing, disassembly, pattern-scan, semantic, claim, ledger and checkpoint tools. Ledgers and checkpoints are written under .reverify in the working directory. Users supply the binaries to analyse; the repository holds benchmark sources and result records, not target binaries.","reverify rollover install edits the user settings of each supported CLI it finds to add hooks and switch off native compaction, keeping backups and offering uninstall. The README warns that a Claude Code or Codex session not started through its launcher can then grow without limit, and reports one session that reached 909k tokens.","The headline benchmark applies a fixed textbook push rbp; mov rbp, rsp prologue guess, not a live model, to the entry points of system binaries. BENCHMARK.md reports that guess refuted on 69 of 71 Windows 11 files and never falsely verified, and 0 false VERIFIED among 475 known-false claims on 50 Windows binaries; CI repeats both checks on Linux, Windows and macOS and fails on any false VERIFIED. The author notes that 0 of N bounds the error rate rather than proving it zero. These are project-reported results.","MIT. SECURITY.md limits use to authorised work such as malware analysis, CTF, interoperability research and software the user owns or may analyse, and excludes circumventing licensing or copy protection on software the user does not own or license."],"requirements_zh":["所审阅的 main 提交位于 2026-09-04 发布的 GitHub v0.11.0 之后 25 个提交；PyPI 上最新版本为 0.10.0，README 的状态部分仍在介绍 v0.9.0。核心为纯 Python 实现、无依赖，pyproject.toml 声明支持 Python 3.8+。full 附加组件加入 capstone、unicorn、lief 和 z3-solver，angr 附加组件提供函数、调用和交叉引用类断言，未安装相应引擎时这些断言返回 INCONCLUSIVE。工具包还能解析 PE、ELF 和 Mach-O 文件，扫描字节模式，解码 Protobuf 与 TLV 数据，并生成 Frida 钩子脚本。","验证器与基准测试无需模型。reconstruct 调用由 OPENAI_API_KEY、OPENAI_BASE_URL 和 OPENAI_MODEL 配置的 OpenAI 兼容端点，orchestrate 可借助 Claude Agent SDK 使用 Claude Code 登录驱动 Claude，MCP 服务器则向任意 MCP 客户端提供解析、反汇编、模式扫描、语义分析、断言核验、台账与检查点工具。台账与检查点写入工作目录下的 .reverify。待分析的二进制文件由使用者自备；仓库包含基准测试源码与结果记录，不含目标二进制文件。","reverify rollover install 会修改所找到的每个受支持命令行工具的用户设置，加入钩子并关闭其原生压缩功能，同时保留备份并提供卸载命令。README 提醒，未通过其启动器启动的 Claude Code 或 Codex 会话随后可能无限增长，并报告有一个会话达到 909k token。","主要基准测试把固定的教科书式 push rbp; mov rbp, rsp 序言猜测（而非实时模型）应用于系统二进制文件的入口点。BENCHMARK.md 报告该猜测在 71 个 Windows 11 文件中有 69 个被驳斥，且从未被误判为 VERIFIED；在 50 个 Windows 二进制文件上的 475 条已知错误断言中误判为 VERIFIED 的为 0。CI 在 Linux、Windows 和 macOS 上重复这两项检查，只要出现一次误判 VERIFIED 即失败。作者指出“N 次中 0 次”只给出错误率的上界，并不证明其为零。这些均为项目报告的结果。","采用 MIT 许可。SECURITY.md 将用途限定于获授权的工作，如恶意软件分析、CTF、互操作研究以及使用者拥有或获准分析的软件，并禁止规避使用者未拥有或未获许可软件的授权或复制保护。"],"targets":["binary"],"url":"https://github.com/2akouwu/reverify","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/wux1an/wxapkg/blob/bae9b0f4c405ae9dfa0474daa54bb97e2074c571/wechat/core.go","https://github.com/wux1an/wxapkg/blob/bae9b0f4c405ae9dfa0474daa54bb97e2074c571/wechat/core_windows.go","https://github.com/wux1an/wxapkg/blob/bae9b0f4c405ae9dfa0474daa54bb97e2074c571/wechat/core_macos.go","https://github.com/wux1an/wxapkg/blob/bae9b0f4c405ae9dfa0474daa54bb97e2074c571/wechat/beautify.go","https://github.com/wux1an/wxapkg/blob/bae9b0f4c405ae9dfa0474daa54bb97e2074c571/go.mod","https://github.com/wux1an/wxapkg/blob/bae9b0f4c405ae9dfa0474daa54bb97e2074c571/.github/workflows/release.yml","https://github.com/wux1an/wxapkg/releases/tag/v2.0.0"],"category":"javascript-electron","description_en":"Desktop GUI for Windows and macOS, built with Wails, that unpacks WeChat mini-program .wxapkg packages for study. It scans the mini-program package folders of local WeChat 3.x and 4.x installations, including per-user folders, or takes a file or folder the user selects; packages that the PC client stores encrypted are decrypted first. Each packaged file is written to its recorded path, with optional beautification of JSON, HTML and JavaScript.","description_zh":"基于 Wails 构建的 Windows 与 macOS 桌面图形工具，用于解包微信小程序 .wxapkg 包以供研究。它会扫描本机微信 3.x 和 4.x 安装中的小程序包目录（包括各用户目录），也可处理用户选定的文件或目录；PC 客户端以加密形式存储的包会先行解密。包内每个文件都按其记录的路径写出，并可选择美化 JSON、HTML 和 JavaScript 代码。","entry_url":"https://awesomerea.org/resources/wux1an-wxapkg/","entry_url_zh":"https://awesomerea.org/zh/resources/wux1an-wxapkg/","evidence_url":"https://github.com/wux1an/wxapkg/blob/bae9b0f4c405ae9dfa0474daa54bb97e2074c571/README.md","group":"tools","id":"wux1an-wxapkg","json_url":"https://awesomerea.org/resources/wux1an-wxapkg/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/wux1an-wxapkg/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wux1an-wxapkg/index.md","name":"wxapkg","name_zh":"wxapkg 微信小程序解包工具","record_type":"resource","relationship":"foundation","requirements":["Release at review: v2.0.0, published 2026-04-16, with a Windows x64 executable and a macOS universal app; earlier v1.x releases shipped Windows executables only. The reviewed main commit adds only a settings dialog for the default output directory after that release.","The README names Windows and macOS as the supported platforms. Building from source needs Go 1.25 as declared in go.mod, the Wails v2 CLI and npm for the Vue frontend.","Input is .wxapkg packages already on the machine, found in WeChat's package folders or selected manually. The output is the files stored in the package: the reviewed code has no WXML or WXSS decompilation step, so compiled view code stays compiled, and reading mini-program information is still an unchecked item in the README's feature list.","No license file or license declaration was found. The README disclaimer limits use to learning and researching the design ideas and principles in software, with users bearing all legal responsibility; analyze only packages you are authorized to inspect."],"requirements_zh":["审阅时的版本为 v2.0.0，发布于 2026-04-16，提供 Windows x64 可执行文件和 macOS 通用应用；更早的 v1.x 版本只提供 Windows 可执行文件。所审阅的 main 分支提交在该版本之后只新增了用于设置默认输出目录的对话框。","README 写明支持 Windows 和 macOS。从源码构建需要 go.mod 声明的 Go 1.25、Wails v2 命令行工具，以及用于 Vue 前端的 npm。","输入是本机已有的 .wxapkg 包，可从微信的小程序包目录中找到，也可手动选择。输出的是包内存储的文件：所审阅的代码没有 WXML 或 WXSS 反编译步骤，编译后的视图代码仍保持编译形态；README 功能列表中的“获取小程序信息”尚未勾选完成。","未找到许可证文件或许可证声明。README 免责声明将用途限定为学习和研究软件内含的设计思想和原理，并由使用者承担全部法律责任；只应分析有权查看的小程序包。"],"targets":["app"],"url":"https://github.com/wux1an/wxapkg","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/numandev1/react-native-decompiler/blob/77c7b94e986c67b95c9dad5e619b118ef17bbe17/README.md#L48-L70","https://github.com/numandev1/react-native-decompiler/blob/77c7b94e986c67b95c9dad5e619b118ef17bbe17/README.md#L115-L121","https://github.com/numandev1/react-native-decompiler/blob/77c7b94e986c67b95c9dad5e619b118ef17bbe17/package.json","https://github.com/numandev1/react-native-decompiler/blob/77c7b94e986c67b95c9dad5e619b118ef17bbe17/src/main.ts#L46-L60","https://github.com/numandev1/react-native-decompiler/tree/77c7b94e986c67b95c9dad5e619b118ef17bbe17/src/decompilers","https://github.com/numandev1/react-native-decompiler/blob/77c7b94e986c67b95c9dad5e619b118ef17bbe17/.github/workflows/node.js.yml","https://github.com/numandev1/react-native-decompiler/blob/77c7b94e986c67b95c9dad5e619b118ef17bbe17/.github/workflows/publishnpm.yml","https://github.com/numandev1/react-native-decompiler/blob/77c7b94e986c67b95c9dad5e619b118ef17bbe17/LICENSE","https://registry.npmjs.org/react-native-decompiler/0.2.4","https://github.com/richardfuca/react-native-decompiler"],"category":"javascript-electron","description_en":"Alpha-stage Node.js CLI that splits a React Native JavaScript bundle (index.android.bundle or main.jsbundle), an unbundled js-modules folder, or Webpack entrypoint and chunk bundles into one readable file per module. Tagger, editor and decompiler plugins working on a Babel AST undo compilation artifacts such as Babel helpers, comma-operator chains and shortened booleans, turn element calls back into JSX and can rewrite modules as ES6 imports and exports, after which ESLint and Prettier tidy the output. Modules recognized as npm packages are skipped unless requested, and one module ID can limit output to that module and its dependencies.","description_zh":"处于 Alpha 阶段的 Node.js 命令行工具，可把 React Native 的 JavaScript 包（index.android.bundle 或 main.jsbundle）、未打包应用的 js-modules 目录，或 Webpack 入口包与分块包拆分为每个模块一个、便于阅读的文件。基于 Babel AST 的标注器、编辑器和反编译器插件会消除 Babel 辅助函数、逗号运算符链和缩写布尔值等编译痕迹，把元素创建调用还原为 JSX，并可将模块改写为 ES6 import／export 形式，最后用 ESLint 和 Prettier 整理输出。被识别为 npm 包的模块默认跳过，也可指定一个模块 ID，只输出该模块及其依赖。","entry_url":"https://awesomerea.org/resources/react-native-decompiler/","entry_url_zh":"https://awesomerea.org/zh/resources/react-native-decompiler/","evidence_url":"https://github.com/numandev1/react-native-decompiler/blob/77c7b94e986c67b95c9dad5e619b118ef17bbe17/README.md","group":"tools","id":"react-native-decompiler","json_url":"https://awesomerea.org/resources/react-native-decompiler/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/react-native-decompiler/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/react-native-decompiler/index.md","name":"React Native Decompiler","name_zh":"React Native 反编译器","record_type":"resource","relationship":"foundation","requirements":["Latest npm release: react-native-decompiler 0.2.4, published 2023-03-31, providing the react-native-decompiler and rnd commands; the reviewed master commit is from the same day and was still the latest at review. The package declares no Node.js engine range, its publish workflow uses Node.js 12, and it pins Babel 7.12, ESLint 7 and Prettier 2. It continues Richard Fu's original repository, which is now archived.","Input is a plain-JavaScript bundle taken from the user's own React Native app, a js-modules folder, or a Webpack entrypoint bundle or chunk folder. The README states in bold that encrypted or binary bundles are not supported.","The README labels the tool alpha, and the repository has no automated tests; CI only builds and lints it. The README documents the Prettier switch as --prettier, but the source reads --noPrettier. Output is cleaned-up module code for reading, not the original project sources.","AGPL-3.0-or-later."],"requirements_zh":["npm 上的最新版本为 react-native-decompiler 0.2.4，于 2023-03-31 发布，提供 react-native-decompiler 和 rnd 两个命令；所审阅的 master 分支提交与其同日，审阅时仍是最新提交。该包未声明 Node.js 版本范围，发布工作流使用 Node.js 12，并固定使用 Babel 7.12、ESLint 7 和 Prettier 2。它延续了 Richard Fu 的原始仓库，该仓库现已归档。","输入为取自用户自己 React Native 应用的纯 JavaScript 包、js-modules 目录，或 Webpack 入口包及分块目录。README 以粗体注明不支持加密或二进制格式的包。","README 将该工具标为 Alpha 阶段，仓库没有自动化测试，CI 只进行构建和代码检查。README 中关闭 Prettier 的选项写作 --prettier，而源码实际读取的是 --noPrettier。输出是便于阅读的整理后模块代码，并非原始项目源码。","采用 AGPL-3.0-or-later 许可。"],"targets":["app"],"url":"https://github.com/numandev1/react-native-decompiler","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/louisgthier/decompai/blob/0c2398c09e318be1bb6f6a52d13e572fac7c519b/LICENSE","https://github.com/louisgthier/decompai/blob/0c2398c09e318be1bb6f6a52d13e572fac7c519b/compose.yaml","https://github.com/louisgthier/decompai/blob/0c2398c09e318be1bb6f6a52d13e572fac7c519b/Dockerfile.runner","https://github.com/louisgthier/decompai/blob/0c2398c09e318be1bb6f6a52d13e572fac7c519b/requirements.txt","https://github.com/louisgthier/decompai/blob/0c2398c09e318be1bb6f6a52d13e572fac7c519b/src/main.py","https://github.com/louisgthier/decompai/blob/0c2398c09e318be1bb6f6a52d13e572fac7c519b/src/config.py","https://github.com/louisgthier/decompai/blob/0c2398c09e318be1bb6f6a52d13e572fac7c519b/src/tools/tools.py","https://github.com/louisgthier/decompai/blob/0c2398c09e318be1bb6f6a52d13e572fac7c519b/src/tools/sandboxed_shell/dockerized_bash.py","https://github.com/louisgthier/decompai/blob/0c2398c09e318be1bb6f6a52d13e572fac7c519b/tests/test_disassemble.py"],"category":"agent-workflows","description_en":"Gradio chat application whose LangGraph ReAct agent analyses an uploaded x86 Linux ELF binary: it lists and disassembles functions, decompiles them with Ghidra, drives radare2 and gdb, and runs shell commands and Python scripts in a privileged Kali Linux runner container. Workspaces are keyed by the binary’s SHA-256, so uploading the same file again restores the session. It came out of a school research project, and its CTF results are the authors’ own report.","description_zh":"Gradio 对话应用，其 LangGraph ReAct 智能体分析使用者上传的 x86 Linux ELF 二进制文件：列出并反汇编函数，用 Ghidra 反编译，调用 radare2 和 gdb，并在特权模式的 Kali Linux 运行容器中执行 shell 命令和 Python 脚本。工作区以二进制文件的 SHA-256 为键，再次上传同一文件即可恢复会话。该项目源自一项学校研究计划，其 CTF 成绩为作者自述。","entry_url":"https://awesomerea.org/resources/decompai/","entry_url_zh":"https://awesomerea.org/zh/resources/decompai/","evidence_url":"https://github.com/louisgthier/decompai/blob/0c2398c09e318be1bb6f6a52d13e572fac7c519b/README.md","group":"agents","id":"decompai","json_url":"https://awesomerea.org/resources/decompai/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/decompai/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/decompai/index.md","name":"DecompAI","name_zh":"DecompAI：在 Kali 容器中分析二进制的对话智能体","record_type":"resource","relationship":"independent-agent-integration","requirements":["The reviewed main commit of 2025-11-10 containerised the app. The repository has no tagged releases; the README points to app and runner images tagged 1.0.0 on Docker Hub. Only x86 Linux ELF binaries are supported, and QEMU-based ARM, MIPS and Windows PE support is listed as future work.","The app needs Python with the pinned requirements.txt (Gradio 5.25, LangGraph and LangChain) and Docker. docker compose builds or pulls a Kali runner image with kali-linux-headless, Ghidra 11.3.1, OpenJDK 21 and radare2 plugins, and the app controls the host Docker daemon through a mounted /var/run/docker.sock. Runner containers start with --privileged on Docker’s default network, and the Gradio interface listens on 0.0.0.0:7860 by default; the README asks maintainers to audit any added dependencies.","An OpenAI or Gemini API key and an LLM_MODEL setting go in .env. The README suggests gemini-2.5-pro or gemini-2.5-flash, while the code defaults to gpt-4o-mini; disassembly, decompiled code and tool output are sent to that provider. Users upload their own binaries. None are committed, and tests/test_disassemble.py expects a binaries/ch2.bin that the repository does not include.","The README reports validation on Root-Me CTF challenges, consistently solving difficulty-3-of-5 exercises automatically or semi-automatically, with no published runs or logs. Session data under /tmp/decompai_analysis_sessions by default is lost on reboot.","LICENSE is MIT text with an added clause requiring any use, modification or distribution to display a “Based on DecompAI” attribution, so GitHub does not recognise it as a standard licence; Ghidra, the Kali packages and model services keep their own terms. The README limits use to lawful reverse engineering, education and security research."],"requirements_zh":["所审阅的 main 提交（2025-11-10）将应用容器化。仓库没有打标签的发布版本，README 指向 Docker Hub 上标记为 1.0.0 的应用镜像与运行器镜像。目前只支持 x86 Linux ELF 二进制文件，基于 QEMU 的 ARM、MIPS 与 Windows PE 支持列为未来计划。","应用需要 Python 及 requirements.txt 中固定版本的依赖（Gradio 5.25、LangGraph 和 LangChain），以及 Docker。docker compose 会构建或拉取 Kali 运行器镜像，其中包含 kali-linux-headless、Ghidra 11.3.1、OpenJDK 21 和 radare2 插件；应用通过挂载的 /var/run/docker.sock 控制宿主机的 Docker 守护进程。运行器容器以 --privileged 模式在 Docker 默认网络上启动，Gradio 界面默认监听 0.0.0.0:7860；README 要求维护者审查新增的任何依赖。","需要在 .env 中填写 OpenAI 或 Gemini API 密钥及 LLM_MODEL 设置。README 建议使用 gemini-2.5-pro 或 gemini-2.5-flash，而代码默认使用 gpt-4o-mini；反汇编、反编译代码和工具输出都会发送给该服务商。二进制文件由使用者自行上传，仓库未提交任何二进制文件，而 tests/test_disassemble.py 需要仓库中并不存在的 binaries/ch2.bin。","README 称已在 Root-Me CTF 题目上验证，能自动或半自动地稳定解出难度为 3/5 的题目，但未公开运行记录或日志。会话数据默认保存在 /tmp/decompai_analysis_sessions，重启后会丢失。","LICENSE 为 MIT 文本另加一条款，要求任何使用、修改或分发都须显著标注“Based on DecompAI”署名，因此 GitHub 不将其识别为标准许可证；Ghidra、Kali 软件包和模型服务各有其条款。README 将用途限定于合法的逆向工程、教学和安全研究。"],"targets":["binary"],"url":"https://github.com/louisgthier/decompai","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/encounter/dtk-template/blob/95a941f755919ebe50c1725a4ce73524470e7a02/docs/getting_started.md","https://github.com/encounter/dtk-template/blob/95a941f755919ebe50c1725a4ce73524470e7a02/docs/dependencies.md","https://github.com/encounter/dtk-template/blob/95a941f755919ebe50c1725a4ce73524470e7a02/docs/github_actions.md","https://github.com/encounter/dtk-template/blob/95a941f755919ebe50c1725a4ce73524470e7a02/configure.py","https://github.com/encounter/dtk-template/blob/95a941f755919ebe50c1725a4ce73524470e7a02/tools/download_tool.py","https://github.com/encounter/dtk-template/blob/95a941f755919ebe50c1725a4ce73524470e7a02/LICENSE"],"category":"game-analysis","description_en":"Project template for starting GameCube and Wii matching-decompilation repositories around decomp-toolkit. Its configure.py generates a ninja build that analyzes and splits the game's DOL and REL files from per-version config.yml, symbols.txt and splits.txt files, compiles the decompiled C/C++ with period Metrowerks compilers, relinks the result and checks it against recorded SHA-1 hashes. It also wires in objdiff for per-object diffing, progress reporting for decomp.dev and an example GitHub Actions workflow.","description_zh":"用于围绕 decomp-toolkit 创建 GameCube 和 Wii 匹配反编译仓库的项目模板。其 configure.py 生成 ninja 构建：依据各版本的 config.yml、symbols.txt 和 splits.txt 分析并拆分游戏的 DOL 和 REL 文件，用当年的 Metrowerks 编译器编译反编译出的 C/C++ 代码，重新链接后与记录的 SHA-1 哈希核对。模板还集成了用于逐目标文件比对的 objdiff、面向 decomp.dev 的进度报告，以及一个 GitHub Actions 工作流示例。","entry_url":"https://awesomerea.org/resources/dtk-template/","entry_url_zh":"https://awesomerea.org/zh/resources/dtk-template/","evidence_url":"https://github.com/encounter/dtk-template/blob/95a941f755919ebe50c1725a4ce73524470e7a02/README.md","group":"tools","id":"dtk-template","json_url":"https://awesomerea.org/resources/dtk-template/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dtk-template/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dtk-template/index.md","name":"dtk-template","name_zh":"dtk-template GameCube/Wii 反编译项目模板","record_type":"resource","relationship":"foundation","requirements":["A scaffold rather than a finished project: users rename the GAMEID placeholders, write each version's configuration and refine symbols and splits after the initial analysis. The README says nearly all active GameCube and Wii decompilation projects use this structure. There are no releases or tags; the reviewed commit (2026-04-26) pins decomp-toolkit v1.8.3, objdiff v3.6.1, binutils 2.42-2 and the 20251118 compilers package.","Users place their own disc image or extracted game files in the ignored orig/[GAMEID] directory, and no game assets are committed. The CI guide has the game files needed for a build stored in a separate build-container repository and warns that it must stay private to avoid exposing the game's assets.","Needs Python and ninja on Windows, macOS or Linux; outside Windows a downloaded wibo wrapper runs the 32-bit Windows compilers, or a user-supplied Wine. configure.py downloads pinned decomp-toolkit, GameCube/Wii binutils, objdiff, sjiswrap and wibo releases plus a Metrowerks CodeWarrior compiler archive hosted by decomp.dev rather than by this repository.","Verification happens per project: the build compares the rebuilt DOL and REL files with the hashes in build.sha1, and objdiff and decomp.dev report per-object matching progress. The template ships no game configuration.","Released under CC0-1.0, which the README suggests replacing with the project's own license; downloaded tools keep their own licenses, and the CodeWarrior compilers are proprietary."],"requirements_zh":["这是脚手架而非成品项目：使用者需替换 GAMEID 占位名称、为每个版本编写配置，并在初步分析后不断修正符号和拆分点。README 称几乎所有活跃的 GameCube 和 Wii 反编译项目都采用这一结构。项目没有发布版本或标签；所审阅的提交（2026-04-26）固定了 decomp-toolkit v1.8.3、objdiff v3.6.1、binutils 2.42-2 以及 20251118 版编译器包。","使用者需将自己的光盘镜像或已提取的游戏文件放入被忽略的 orig/[GAMEID] 目录，仓库不提交任何游戏资产。CI 指南要求把构建所需的游戏文件存放在单独的构建容器仓库中，并提醒该仓库必须保持私有，以免泄露游戏资产。","在 Windows、macOS 或 Linux 上需要 Python 和 ninja；在 Windows 以外的平台上，由自动下载的 wibo 包装器或使用者自备的 Wine 运行 32 位 Windows 编译器。configure.py 会下载固定版本的 decomp-toolkit、GameCube/Wii binutils、objdiff、sjiswrap 和 wibo，以及由 decomp.dev 而非本仓库托管的 Metrowerks CodeWarrior 编译器压缩包。","验证由各项目自行完成：构建会将重新生成的 DOL 和 REL 文件与 build.sha1 中的哈希比对，objdiff 和 decomp.dev 则报告逐目标文件的匹配进度。模板本身不附带任何游戏配置。","以 CC0-1.0 发布，README 建议各项目换成自己的许可证；下载的工具保留各自的许可，CodeWarrior 编译器属于专有软件。"],"targets":["game"],"url":"https://github.com/encounter/dtk-template","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/SymbioticSec/hermes-decomp/blob/ad4c924720848a26136a56688b70339fe9ea7aba/docs/USAGE.md","https://github.com/SymbioticSec/hermes-decomp/blob/ad4c924720848a26136a56688b70339fe9ea7aba/docs/USAGE.md#L99-L152","https://github.com/SymbioticSec/hermes-decomp/blob/ad4c924720848a26136a56688b70339fe9ea7aba/docs/MCP.md","https://github.com/SymbioticSec/hermes-decomp/blob/ad4c924720848a26136a56688b70339fe9ea7aba/docs/LIBRARY.md","https://github.com/SymbioticSec/hermes-decomp/blob/ad4c924720848a26136a56688b70339fe9ea7aba/Cargo.toml","https://github.com/SymbioticSec/hermes-decomp/blob/ad4c924720848a26136a56688b70339fe9ea7aba/.github/workflows/build.yml","https://github.com/SymbioticSec/hermes-decomp/blob/ad4c924720848a26136a56688b70339fe9ea7aba/scripts/build/roundtrip.sh","https://github.com/SymbioticSec/hermes-decomp/blob/ad4c924720848a26136a56688b70339fe9ea7aba/scripts/build/roundtrip_known_failures.tsv","https://github.com/SymbioticSec/hermes-decomp/blob/ad4c924720848a26136a56688b70339fe9ea7aba/scripts/build/gates.sh","https://github.com/SymbioticSec/hermes-decomp/blob/ad4c924720848a26136a56688b70339fe9ea7aba/scripts/build/syntax_baseline.tsv","https://github.com/SymbioticSec/hermes-decomp/blob/ad4c924720848a26136a56688b70339fe9ea7aba/LICENSE","https://github.com/SymbioticSec/hermes-decomp/releases/tag/v0.2.4"],"category":"android","description_en":"Rust decompiler and analysis toolkit for Hermes bytecode (.hbc), the compiled form React Native apps ship for the Hermes engine; the README lists HBC versions 40 to 99. Its hermes-decomp CLI shows file information, disassembles, decompiles whole bundles or single functions to JavaScript, with a slower deep mode that recovers more names, and provides a terminal UI, cross-references, call graphs, control-flow graphs, Metro module and closure views and bytecode diffing. A separate hermes-mcp server exposes the read and analysis functions as MCP tools, and the hbc-decomp crate offers them as a Rust library.","description_zh":"面向 Hermes 字节码（.hbc）的 Rust 反编译与分析工具包；.hbc 是 React Native 应用为 Hermes 引擎打包的编译格式，README 列出支持 HBC 40 至 99 版本。其 hermes-decomp 命令行可显示文件信息、反汇编，并将整个包或单个函数反编译为 JavaScript，较慢的深度模式还能恢复更多名称；此外提供终端界面、交叉引用、调用图、控制流图、Metro 模块与闭包视图以及字节码差异比较。独立的 hermes-mcp 服务器将读取和分析功能作为 MCP 工具提供，hbc-decomp crate 则以 Rust 库的形式提供这些功能。","entry_url":"https://awesomerea.org/resources/hermes-decomp/","entry_url_zh":"https://awesomerea.org/zh/resources/hermes-decomp/","evidence_url":"https://github.com/SymbioticSec/hermes-decomp/blob/ad4c924720848a26136a56688b70339fe9ea7aba/README.md","group":"tools","id":"hermes-decomp","json_url":"https://awesomerea.org/resources/hermes-decomp/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/hermes-decomp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hermes-decomp/index.md","name":"hermes-decomp","name_zh":"hermes-decomp Hermes 字节码反编译器","record_type":"resource","relationship":"foundation","requirements":["Release at review: v0.2.4, published 2026-10-01, which is the reviewed main commit. Its archives contain hermes-decomp and hermes-mcp for Linux x86_64 and ARM64, macOS ARM64 and Windows x86_64, with SHA256SUMS; the README also lists a macOS x86_64 build, which this release lacks. Source builds need Rust 1.70+, and an update command checks for or installs newer releases.","Input is a Hermes bytecode file from the user's own React Native app, not a plain-JavaScript bundle. Full-bundle decompilation writes an .hdcache file next to the input unless --no-cache is passed. hermes-mcp uses stdio by default; its HTTP transport listens on 127.0.0.1:8744 unless another host is given, and docs/MCP.md lists only read and analysis tools.","Separate CLI write commands assemble or patch bytecode and HASM; they never recompile decompiled JavaScript. USAGE.md reports full write support for HBC 96 and below, verified against the Hermes VM, while HBC 97+ files support only same-length string patches and can be checked only with a macOS helper.","CI checks formatting and Clippy, builds on each platform and runs the test suite with corpus-dependent tests skipped; the repository keeps small jsx_cycle .hbc test fixtures. Local gates compile sample snippets with hermesc toolchains that the scripts fetch or build, run the original and decompiled code under Node and compare output, with five known failures listed, and cap unparsable modules per bundle, at 211 for the one recorded bundle, so decompiled output is not always valid JavaScript.","MIT license."],"requirements_zh":["审阅时的最新版本为 v0.2.4，于 2026-10-01 发布，即所审阅的 main 分支提交。其压缩包包含 hermes-decomp 和 hermes-mcp，覆盖 Linux x86_64 与 ARM64、macOS ARM64 和 Windows x86_64，并附 SHA256SUMS；README 还列出 macOS x86_64 构建，但该版本并未提供。从源码构建需要 Rust 1.70+，update 命令可检查或安装新版本。","输入为取自用户自己 React Native 应用的 Hermes 字节码文件，而非纯 JavaScript 包。反编译整个包时会在输入文件旁写入 .hdcache 缓存文件，传入 --no-cache 则不使用缓存。hermes-mcp 默认使用 stdio；其 HTTP 传输方式默认监听 127.0.0.1:8744，除非另行指定主机。docs/MCP.md 只列出读取和分析类工具。","命令行另有写入命令，可汇编或修补字节码和 HASM，但不会把反编译出的 JavaScript 重新编译。USAGE.md 称 HBC 96 及以下版本的写入功能完整，并已在 Hermes 虚拟机上验证；HBC 97 及以上的文件只支持等长字符串修补，且只能借助 macOS 上的辅助程序进行验证。","CI 检查代码格式和 Clippy，在各平台上构建，并在跳过依赖语料库的测试后运行测试套件；仓库保存了少量 jsx_cycle .hbc 测试夹具。本地检查会用脚本下载或构建的 hermesc 工具链编译示例代码片段，在 Node 下分别运行原始代码和反编译代码并比较输出（列出了五个已知失败项），还为每个包设定无法解析模块数的上限，唯一记录的包上限为 211 个，可见反编译输出并不总是合法的 JavaScript。","采用 MIT 许可。"],"targets":["app"],"url":"https://github.com/SymbioticSec/hermes-decomp","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/N64Recomp/N64ModernRuntime/blob/cdf5abbd5026fef5c364c676e4667c45e42b6863/CMakeLists.txt","https://github.com/N64Recomp/N64ModernRuntime/blob/cdf5abbd5026fef5c364c676e4667c45e42b6863/.gitmodules","https://github.com/N64Recomp/N64ModernRuntime/blob/cdf5abbd5026fef5c364c676e4667c45e42b6863/COPYING","https://github.com/N64Recomp/N64ModernRuntime/blob/cdf5abbd5026fef5c364c676e4667c45e42b6863/CONTRIBUTING.md","https://github.com/N64Recomp/N64ModernRuntime/blob/cdf5abbd5026fef5c364c676e4667c45e42b6863/librecomp/src/recomp.cpp#L360-L410","https://github.com/N64Recomp/N64ModernRuntime/blob/cdf5abbd5026fef5c364c676e4667c45e42b6863/librecomp/src/mods.cpp"],"category":"game-analysis","description_en":"Runtime for N64Recomp static recompilations and traditional source ports of N64 games, made of two libraries. ultramodern reimplements core libultra services (threads, message queues, timers, controllers, audio, RSP task handling and VI timing) and leaves controller input, audio playback and the graphics renderer, with RT64 recommended, to callbacks the host project registers. librecomp bridges N64Recomp-generated code to ultramodern and adds overlay handling, PI DMA ROM reads, and EEPROM, SRAM and Flash RAM saves.","description_zh":"供 N64Recomp 静态重编译项目和传统源码移植使用的 N64 游戏运行时，由两个库组成。ultramodern 重新实现 libultra 的核心服务（线程、消息队列、计时器、控制器、音频、RSP 任务处理和 VI 时序），并将手柄输入、音频播放和图形渲染器（推荐 RT64）交给宿主项目注册的回调处理。librecomp 负责将 N64Recomp 生成的代码与 ultramodern 衔接，并补充覆盖段处理、PI DMA 读取 ROM，以及 EEPROM、SRAM 和 Flash RAM 存档。","entry_url":"https://awesomerea.org/resources/n64modernruntime/","entry_url_zh":"https://awesomerea.org/zh/resources/n64modernruntime/","evidence_url":"https://github.com/N64Recomp/N64ModernRuntime/blob/cdf5abbd5026fef5c364c676e4667c45e42b6863/README.md","group":"tools","id":"n64modernruntime","json_url":"https://awesomerea.org/resources/n64modernruntime/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/n64modernruntime/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/n64modernruntime/index.md","name":"N64ModernRuntime","name_zh":"N64ModernRuntime N64 重编译运行时","record_type":"resource","relationship":"foundation","requirements":["No releases or tags at review; the README recommends including the libraries in a project's own CMake build with add_subdirectory. The reviewed main commit (2026-08-30) needs CMake 3.20+ and C++20; the README says it was developed with Clang 15, older Clang versions may not work, and recent MSVC and GCC should work but are not regularly tested. N64Recomp, miniz, xxHash and o1heap are pinned submodules.","The runtime contains no game code: the host project supplies the recompiled code, the renderer and the platform callbacks, and the user supplies the game ROM. The reviewed librecomp source checks a user-selected ROM against a per-game hash and also loads .nrm mod packages; the README does not describe either feature.","The README covers library scope only and has no compatibility list.","GPL-3.0 (COPYING); submodules keep their own licenses. CONTRIBUTING.md states that AI-generated code contributions are not accepted."],"requirements_zh":["审阅时没有发布版或标签；README 建议在项目自己的 CMake 构建中通过 add_subdirectory 引入这些库。所审阅的 main 提交（2026-08-30）需要 CMake 3.20+ 和 C++20；README 称其使用 Clang 15 开发，更早的 Clang 版本可能无法使用，较新的 MSVC 和 GCC 应可使用但未经常规测试。N64Recomp、miniz、xxHash 和 o1heap 以固定版本的子模块引入。","运行时本身不含游戏代码：宿主项目提供重编译代码、渲染器和平台回调，游戏 ROM 由使用者自行提供。所审阅的 librecomp 源码会按各游戏的哈希校验使用者选择的 ROM，还能加载 .nrm 模组包；README 未说明这两项功能。","README 只说明库的功能范围，没有兼容性列表。","采用 GPL-3.0 许可（COPYING）；子模块保留各自的许可。CONTRIBUTING.md 声明不接受由 AI 生成的代码贡献。"],"targets":["game"],"url":"https://github.com/N64Recomp/N64ModernRuntime","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/jac3km4/redscript/blob/3ca666c8ec14cfc803ef3888aab6ebc7a1c2bb86/Cargo.toml","https://github.com/jac3km4/redscript/blob/3ca666c8ec14cfc803ef3888aab6ebc7a1c2bb86/LICENSE","https://github.com/jac3km4/redscript/blob/3ca666c8ec14cfc803ef3888aab6ebc7a1c2bb86/crates/cli/src/main.rs#L31-L120","https://github.com/jac3km4/redscript/blob/3ca666c8ec14cfc803ef3888aab6ebc7a1c2bb86/assets/macos/archive/launch_modded.sh","https://github.com/jac3km4/redscript/releases/tag/v0.5.31","https://github.com/jac3km4/redscript/releases/tag/v1.0.0-preview.22","https://github.com/jac3km4/redscript/compare/v1.0.0-preview.22...3ca666c8ec14cfc803ef3888aab6ebc7a1c2bb86"],"category":"game-analysis","description_en":"Compiler and decompiler toolkit for REDscript, a statically typed, object-oriented language for writing scripts for REDengine, CD Projekt's engine used in Cyberpunk 2077. Its Rust crates parse and analyze source, generate bytecode with monomorphization of generics, decompile .redscripts bytecode bundles back into REDscript source, read and write REDengine's native binary format, and provide a drop-in replacement for CD Projekt's scc script compiler plus a C API with source mapping. The CLI exposes decompile, compile, lint and format commands; the language server and debugger live in a separate redscript-ide repository.","description_zh":"REDscript 的编译器与反编译器工具集。REDscript 是一种静态类型、面向对象的语言，用于为 CD Projekt 在《赛博朋克 2077》中使用的 REDengine 引擎编写脚本。其 Rust crate 负责解析和分析源码、生成字节码并对泛型做单态化、将 .redscripts 字节码包反编译回 REDscript 源码、读写 REDengine 原生二进制格式，并提供可直接替代 CD Projekt scc 脚本编译器的实现，以及带源码映射的 C API。命令行提供 decompile、compile、lint 和 format 命令；语言服务器和调试器位于单独的 redscript-ide 仓库。","entry_url":"https://awesomerea.org/resources/redscript/","entry_url_zh":"https://awesomerea.org/zh/resources/redscript/","evidence_url":"https://github.com/jac3km4/redscript/blob/3ca666c8ec14cfc803ef3888aab6ebc7a1c2bb86/README.md","group":"tools","id":"redscript","json_url":"https://awesomerea.org/resources/redscript/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/redscript/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/redscript/index.md","name":"REDscript","name_zh":"REDscript《赛博朋克 2077》脚本编译与反编译工具集","record_type":"resource","relationship":"foundation","requirements":["GitHub's latest stable release is v0.5.31 (2025-08-28), with Windows and macOS archives and standalone CLI binaries for Windows and macOS arm64. The default 1.0.x branch declares 1.0.0-preview.22, the newest prerelease (2025-09-07); the reviewed commit (2026-05-27) is 26 commits after that tag, and older lines live on the 0.5.x and 0.6.x branches. Source builds use Cargo with a Rust toolchain that supports the 2024 edition.","Installation targets the user's own Cyberpunk 2077 installation: the Windows archive is extracted into the game directory so scripts compile at game startup, with logs under r6/logs. On native macOS the game does not compile scripts at startup, so the README uses a bundled launch_modded.sh, and downloaded binaries must first be removed from quarantine. The decompiler reads a .redscripts bundle from the user's game, compilation uses one as its base, and the reviewed tree contains no game scripts or bundles.","Language documentation is on the REDmodding community wiki, and editor support for VS Code, neovim, IntelliJ IDEA, Zed and Helix is in the separate redscript-ide repository. The README states no supported game patch range.","MIT. The game's license terms are separate."],"requirements_zh":["GitHub 上最新的稳定版为 v0.5.31（2025-08-28），提供 Windows 和 macOS 压缩包，以及适用于 Windows 和 macOS arm64 的独立命令行二进制。默认的 1.0.x 分支声明的版本为 1.0.0-preview.22，即最新的预发布版（2025-09-07）；所审阅的提交（2026-05-27）比该标签多 26 个提交，较早的版本线位于 0.5.x 和 0.6.x 分支。从源码构建需使用 Cargo 及支持 2024 版次的 Rust 工具链。","安装面向使用者自己的《赛博朋克 2077》安装目录：在 Windows 上将压缩包解压到游戏目录，游戏启动时即会编译脚本，日志位于 r6/logs。在原生 macOS 上游戏不会在启动时编译脚本，因此 README 使用随附的 launch_modded.sh 启动游戏，下载的二进制文件还需先解除隔离。反编译器读取使用者游戏中的 .redscripts 包，编译也以该包为基础；所审阅的源码树中不含游戏脚本或脚本包。","语言文档位于 REDmodding 社区 wiki，适用于 VS Code、neovim、IntelliJ IDEA、Zed 和 Helix 的编辑器支持位于单独的 redscript-ide 仓库。README 未说明支持的游戏补丁范围。","采用 MIT 许可。游戏本身的许可条款与此相互独立。"],"targets":["game"],"url":"https://github.com/jac3km4/redscript","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/amruth-sn/kong/blob/8c4ee4bf52e0eb9efc3a0b22ad6da03387543fd2/BENCHMARKS.md","https://github.com/amruth-sn/kong/blob/8c4ee4bf52e0eb9efc3a0b22ad6da03387543fd2/pyproject.toml","https://github.com/amruth-sn/kong/blob/8c4ee4bf52e0eb9efc3a0b22ad6da03387543fd2/kong/__main__.py","https://github.com/amruth-sn/kong/blob/8c4ee4bf52e0eb9efc3a0b22ad6da03387543fd2/kong/agent/deobfuscator.py","https://github.com/amruth-sn/kong/blob/8c4ee4bf52e0eb9efc3a0b22ad6da03387543fd2/kong/llm/tools.py","https://github.com/amruth-sn/kong/blob/8c4ee4bf52e0eb9efc3a0b22ad6da03387543fd2/kong/evals/metrics.py","https://github.com/amruth-sn/kong/blob/8c4ee4bf52e0eb9efc3a0b22ad6da03387543fd2/.github/workflows/ci.yml","https://github.com/amruth-sn/kong/blob/8c4ee4bf52e0eb9efc3a0b22ad6da03387543fd2/LICENSE","https://github.com/amruth-sn/kong/releases/tag/v0.2.2","https://pypi.org/project/kong-re/0.2.2/","https://github.com/amruth-sn/kong/compare/v0.2.2...8c4ee4bf52e0eb9efc3a0b22ad6da03387543fd2"],"category":"agent-workflows","description_en":"Command-line pipeline that runs Ghidra in-process through PyGhidra and asks Claude, OpenAI or OpenAI-compatible models to name the functions, types and parameters of a stripped binary, working bottom-up through the call graph so callers see already-named callees. It matches known library and cryptographic signatures first, sends functions whose decompilation looks obfuscated through a tool-using deobfuscation pass with z3-based simplification, applies results to the Ghidra program and exports annotated C and an analysis.json file. Its README calls it the first agentic reverse engineer; that label and its accuracy and cost figures are the author’s claims.","description_zh":"命令行分析流水线，通过 PyGhidra 在进程内运行 Ghidra，请 Claude、OpenAI 或兼容 OpenAI 接口的模型为去符号二进制文件中的函数、类型和参数命名，并沿调用图自底向上处理，使调用者能看到已命名的被调函数。它先匹配已知库函数与密码算法特征，再把反编译结果疑似混淆的函数交给可调用工具、借助 z3 化简的去混淆环节，将结果应用到 Ghidra 程序中，并导出带注释的 C 代码和 analysis.json 文件。README 称其为首个智能体逆向工程师，这一说法以及其中的准确性和成本数据均为作者陈述。","entry_url":"https://awesomerea.org/resources/kong-agentic-reverse-engineer/","entry_url_zh":"https://awesomerea.org/zh/resources/kong-agentic-reverse-engineer/","evidence_url":"https://github.com/amruth-sn/kong/blob/8c4ee4bf52e0eb9efc3a0b22ad6da03387543fd2/README.md","group":"agents","id":"kong-agentic-reverse-engineer","json_url":"https://awesomerea.org/resources/kong-agentic-reverse-engineer/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/kong-agentic-reverse-engineer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/kong-agentic-reverse-engineer/index.md","name":"Kong","name_zh":"Kong：基于 Ghidra 的大模型去符号二进制分析流水线","record_type":"resource","relationship":"independent-agent-integration","requirements":["The reviewed main commit is 25 commits after the v0.2.2 release of 2026-03-18, which matches kong-re 0.2.2 on PyPI; those later commits add an unreleased Rust kong-ml crate and XDA model-training scripts that the README does not describe. Kong needs Python 3.11+ with uv, a local Ghidra installation and JDK 21+, which it detects or reads from GHIDRA_INSTALL_DIR and JAVA_HOME. Its commands are kong setup, analyze, info and eval, with a Textual interface or --headless output.","Analysis needs an Anthropic or OpenAI API key, or an OpenAI-compatible endpoint passed with --base-url, and sends each function’s decompilation with its cross-references, strings and neighbouring signatures to that service; Kong tracks token use and estimated cost per model. Users supply the binary to analyse, and the repository ships no target binaries.","The README rates its confidence by architecture and source language: high for C and C++ on x86, x86-64, ARM and AArch64, medium or low for Go, Rust, MIPS and PowerPC, and lower as binaries grow. Obfuscation is detected by patterns in the decompiled text before the deobfuscation pass. BENCHMARKS.md reports a single run with claude-opus-4-6 on a stripped liblzma.so.5.4.1 from the backdoored XZ Utils 5.6.1 (CVE-2024-3094): 355 of 396 queued functions analysed in 15 minutes for $6.63, with the five core implant functions found at model-reported confidence of 90–95%. These are author results.","The kong eval command scores analysis.json against ground-truth source, using word-based Jaccard matching for names and signature-component scoring for types; no evaluation results are published. CI runs the pytest suite on Python 3.11 to 3.14 for pull requests.","Apache-2.0 per LICENSE and pyproject.toml; Ghidra, model services and analysed binaries keep their own terms. The README names KeygraphHQ’s Shannon web-pentesting pipeline as its inspiration."],"requirements_zh":["所审阅的 main 提交位于 2026-03-18 发布的 v0.2.2 之后 25 个提交，该版本与 PyPI 上的 kong-re 0.2.2 一致；之后的提交加入了尚未发布的 Rust kong-ml crate 和 XDA 模型训练脚本，README 未作介绍。Kong 需要 Python 3.11+ 与 uv、本地安装的 Ghidra 以及 JDK 21+，它会自动检测，也可从 GHIDRA_INSTALL_DIR 和 JAVA_HOME 读取。命令包括 kong setup、analyze、info 和 eval，可使用 Textual 界面或 --headless 输出。","分析需要 Anthropic 或 OpenAI API 密钥，或通过 --base-url 指定兼容 OpenAI 接口的端点，并会把每个函数的反编译结果连同其交叉引用、字符串和相邻函数签名发送给该服务；Kong 按模型统计 token 用量和估算费用。待分析的二进制文件由使用者自备，仓库不附带目标二进制文件。","README 按架构和源语言给出可信度：x86、x86-64、ARM 和 AArch64 上的 C 与 C++ 为高，Go、Rust、MIPS 和 PowerPC 为中或低，且二进制越大可信度越低。混淆是在去混淆环节之前按反编译文本中的模式检测的。BENCHMARKS.md 报告了一次使用 claude-opus-4-6 的运行，对象是来自被植入后门的 XZ Utils 5.6.1、已去符号的 liblzma.so.5.4.1（CVE-2024-3094）：15 分钟内花费 6.63 美元分析了排队的 396 个函数中的 355 个，并以模型自报 90–95% 的置信度找出五个核心植入函数。这些均为作者结果。","kong eval 命令以真实源码为基准为 analysis.json 打分，名称采用基于词的 Jaccard 匹配，类型按签名组成部分评分；仓库未公开评测结果。CI 在拉取请求上以 Python 3.11 至 3.14 运行 pytest 测试套件。","LICENSE 与 pyproject.toml 标明采用 Apache-2.0；Ghidra、模型服务及被分析的二进制文件各有其条款。README 称其灵感来自 KeygraphHQ 的 Shannon 网页渗透测试流水线。"],"targets":["binary"],"url":"https://github.com/amruth-sn/kong","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/OpenRakis/Spice86/blob/28a877fc64888f070e2dad95ddb739f3e1fe84a2/README.md#L266-L290","https://github.com/OpenRakis/Spice86/blob/28a877fc64888f070e2dad95ddb739f3e1fe84a2/COMPATIBILITY.md","https://github.com/OpenRakis/Spice86/blob/28a877fc64888f070e2dad95ddb739f3e1fe84a2/doc/mcp.md","https://github.com/OpenRakis/Spice86/blob/28a877fc64888f070e2dad95ddb739f3e1fe84a2/src/Directory.Build.props","https://github.com/OpenRakis/Spice86/blob/28a877fc64888f070e2dad95ddb739f3e1fe84a2/LICENSE","https://github.com/OpenRakis/Spice86/blob/28a877fc64888f070e2dad95ddb739f3e1fe84a2/NOTICE","https://github.com/OpenRakis/Spice86/releases/tag/latest","https://www.nuget.org/packages/Spice86/16.1.0"],"category":"game-analysis","description_en":"PC emulator for executing, reverse engineering and rewriting real-mode DOS programs whose source code is unavailable. While a program runs it builds a control-flow graph, and on exit it dumps memory, execution flow, Ghidra-compatible symbols and a self-contained, runnable C# project whose generated functions override the original assembly, so analysts can rewrite them function by function into readable code while the program keeps working. It also provides a GDB remote server with custom analysis commands, a built-in debugger with a C-header structure viewer, an optional HTTP memory API and an MCP server whose tools cover CPU, memory, breakpoints, CFG and device state; an optional Ghidra plugin imports the dumps.","description_zh":"用于执行、逆向分析并重写无源码实模式 DOS 程序的 PC 模拟器。程序运行时它会构建控制流图，退出时转储内存、执行流、Ghidra 兼容的符号，以及一个可独立运行的 C# 项目，其中生成的函数会覆盖原有汇编代码，分析者可以在程序始终可运行的前提下逐个函数将其改写为可读代码。它还提供带自定义分析命令的 GDB 远程服务器、配有 C 头文件结构查看器的内置调试器、可选的 HTTP 内存 API，以及工具覆盖 CPU、内存、断点、控制流图和设备状态的 MCP 服务器；可选的 Ghidra 插件可导入这些转储。","entry_url":"https://awesomerea.org/resources/spice86/","entry_url_zh":"https://awesomerea.org/zh/resources/spice86/","evidence_url":"https://github.com/OpenRakis/Spice86/blob/28a877fc64888f070e2dad95ddb739f3e1fe84a2/README.md","group":"tools","id":"spice86","json_url":"https://awesomerea.org/resources/spice86/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/spice86/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/spice86/index.md","name":"Spice86","name_zh":"Spice86 实模式 DOS 逆向与重写模拟器","record_type":"resource","relationship":"foundation","requirements":["Releases are published on NuGet (16.1.0 at review, published 2026-08-05); the GitHub release tagged latest is a rolling development prerelease built from master with debug and release archives. The reviewed master commit (2026-10-13) declares 16.1.0. The project is a C# port and continuation of the original Java Spice86. Running and building need .NET 10 on Windows, macOS or Linux; source builds use dotnet build.","The README lists 8086/8088 as fully implemented, with partial 80186, 80286 and 80386 support (no protected mode or paging, and no FPU beyond detection); 1 MB segmented memory with EMS, XMS and HMA; text, CGA, EGA, VGA and VESA VBE 1.2 graphics, with CGA and EGA best effort; a largely complete DOS 5.0 INT 21h; and Sound Blaster, OPL and Adlib Gold audio ported from DOSBox Staging, with MT-32 partial and unavailable on macOS. COMPATIBILITY.md says many programs do not run and lists tested games individually.","The analyst supplies the DOS program and its files; the emulated C: drive defaults to the program folder. Dumps go to a subfolder named by the program's SHA-256 hash, and the generated project passes the expected checksum so overrides cannot run against a different binary. The GDB server starts by default on port 10000, and the MCP HTTP server is documented as enabled by default on port 8081. The Ghidra plugin is a separate repository that needs Java 17. The README suggests LLM assistance for rewriting generated functions and points to the project's Cryogenic rewrite of Cryo's Dune as a worked example.","Apache-2.0; NOTICE credits the Aeon project, the README credits DOSBox Staging for ported sound code and as the model for CD and floppy emulation, and a prebuilt FastExpressionCompiler DLL is vendored in 3rdparty. Test resources are small DOS test programs, most with assembly sources in the repository."],"requirements_zh":["正式版本发布在 NuGet 上（审阅时为 16.1.0，发布于 2026-08-05）；GitHub 上标签为 latest 的发布是从 master 持续构建的开发预发布版，提供调试版和发布版压缩包。所审阅的 master 提交（2026-10-13）声明的版本为 16.1.0。该项目是原 Java 版 Spice86 的 C# 移植与延续。运行和构建都需要 .NET 10，支持 Windows、macOS 和 Linux；从源码构建使用 dotnet build。","README 列出：8086/8088 已完整实现，80186、80286 和 80386 仅部分支持（未实现保护模式和分页，FPU 仅支持检测指令）；1 MB 分段内存，支持 EMS、XMS 和 HMA；支持文本模式、CGA、EGA、VGA 和 VESA VBE 1.2 图形，其中 CGA 与 EGA 为尽力实现；DOS 5.0 的 INT 21h 已大体完整；Sound Blaster、OPL 和 Adlib Gold 音频移植自 DOSBox Staging，MT-32 仅部分支持且在 macOS 上不可用。COMPATIBILITY.md 说明许多程序无法运行，并逐一列出了测试过的游戏。","DOS 程序及其文件由分析者自行提供；模拟的 C: 盘默认指向程序所在文件夹。转储文件存放在以程序 SHA-256 哈希命名的子文件夹中，生成的项目会传入预期校验和，因此覆盖代码不会作用于其他二进制。GDB 服务器默认在 10000 端口启动，文档说明 MCP HTTP 服务器默认启用，端口为 8081。Ghidra 插件位于单独的仓库，需要 Java 17。README 建议借助大语言模型改写生成的函数，并以该项目对 Cryo《沙丘》的 Cryogenic 重写作为实际示例。","采用 Apache-2.0 许可；NOTICE 致谢 Aeon 项目，README 说明声音代码移植自 DOSBox Staging，CD 与软盘模拟也以其为参照，3rdparty 目录内置了预编译的 FastExpressionCompiler DLL。测试资源是小型 DOS 测试程序，大多在仓库中附有汇编源码。"],"targets":["binary","game"],"url":"https://github.com/OpenRakis/Spice86","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/snuri00/ps2-web-recomp/blob/6526f4803d98e10de50bea3af104a4d26e9df033/scripts/port.sh","https://github.com/snuri00/ps2-web-recomp/blob/6526f4803d98e10de50bea3af104a4d26e9df033/scripts/test_vu_codegen.py","https://github.com/snuri00/ps2-web-recomp/blob/6526f4803d98e10de50bea3af104a4d26e9df033/CMakeLists.txt","https://github.com/snuri00/ps2-web-recomp/blob/6526f4803d98e10de50bea3af104a4d26e9df033/LICENSE","https://github.com/snuri00/ps2-web-recomp/blob/6526f4803d98e10de50bea3af104a4d26e9df033/runtime/src/ipu/NOTICE"],"category":"game-analysis","description_en":"Statically recompiles PlayStation 2 games for the browser: eerecomp translates the Emotion Engine code of a game's boot executable into C++ that is compiled to WebAssembly, and a runtime emulates the rest of the console, including a high-level EE kernel, an interpreted I/O processor running the disc's IRX modules, the vector units, SPU2 sound and the Graphics Synthesizer on WebGPU compute shaders. Its port script repeats headless runs to find functions reached through pointers and vector-unit microprograms to compile ahead of time, then builds the web page and a native runner.","description_zh":"将 PlayStation 2 游戏静态重编译后在浏览器中运行：eerecomp 把游戏启动程序中的 Emotion Engine 代码转换为 C++，再编译为 WebAssembly；运行时负责仿真主机的其余部分，包括高层仿真的 EE 内核、以解释器运行光盘 IRX 模块的 I/O 处理器、向量单元、SPU2 音频，以及基于 WebGPU 计算着色器的 Graphics Synthesizer。其移植脚本会反复进行无界面运行，找出经指针调用的函数和需要预先编译的向量单元微程序，最后构建网页和原生运行程序。","entry_url":"https://awesomerea.org/resources/ps2-web-recomp/","entry_url_zh":"https://awesomerea.org/zh/resources/ps2-web-recomp/","evidence_url":"https://github.com/snuri00/ps2-web-recomp/blob/6526f4803d98e10de50bea3af104a4d26e9df033/README.md","group":"tools","id":"ps2-web-recomp","json_url":"https://awesomerea.org/resources/ps2-web-recomp/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ps2-web-recomp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ps2-web-recomp/index.md","name":"PS2 Web Recomp","name_zh":"PS2 Web Recomp 浏览器游戏重编译工具","record_type":"resource","relationship":"foundation","requirements":["The README reports two titles brought up so far: the PAL Gran Turismo 4, playable from boot through races at full speed in Chrome, and God of War II from its menus into combat, which needed no game-specific code but exposed a recompiler bug and a vector-unit timing bug. It warns that another game will most likely stop at an unimplemented system call, IOP library function or GS feature, and that vector-unit results can differ from the console's in the last bit.","Users bring a disc image of a game they own; the repository contains no game code or data. The README states that the generated C++ and the built WebAssembly are translations of the game's executable that belong to its owners, asks users to keep them on their own machine and not publish them, and warns that anyone who can reach the local server can load the game.","Porting needs Git, CMake 3.20+, Ninja, a C++20 compiler (Clang preferred), Python 3 and 7-Zip for .7z images; the first run installs the Emscripten SDK and downloads wgpu-native, and the native window needs SDL2. Everything has been run on x86-64 Linux, and the scripts also build on Apple-silicon macOS; expect about 300 MB of disk per game. The page needs WebGPU, which Linux Chrome enables only behind flags (the software renderer fallback is too slow for 3D), plus cross-origin isolation headers and HTTP Range support.","There is no release, tag or CI workflow. scripts/test_vu_codegen.py exercises native and WebAssembly vector-unit code generation without a game disc, and a software GS rasterizer is kept as the reference for the GPU output. Frame rates are the author's measurements on one laptop. Last commit at review: 2026-10-19.","MIT-licensed; the MPEG decoder's VLC tables adapted from Play! keep its BSD 2-clause notice, and the README names PCSX2, Play! and the ps2sdk headers as behavior references. It states no affiliation with Sony or the games' publishers."],"requirements_zh":["README 报告目前已移植两款游戏：PAL 版 Gran Turismo 4 可在 Chrome 中全速运行，从启动一直玩到比赛；God of War II 可从菜单进入战斗，它没有用到任何游戏专用代码，但暴露了重编译器中的一个错误和向量单元时序中的一个错误。README 提醒，其他游戏很可能停在尚未实现的系统调用、IOP 库函数或 GS 功能上，而且向量单元的计算结果可能在最后一位与主机不同。","使用者需自备所拥有游戏的光盘镜像；仓库不含任何游戏代码或数据。README 说明生成的 C++ 和构建出的 WebAssembly 是对游戏可执行文件的转换，归游戏权利人所有，要求使用者只保留在自己的机器上、不得公开发布，并提醒任何能访问本地服务器的人都可以加载该游戏。","移植需要 Git、CMake 3.20+、Ninja、C++20 编译器（首选 Clang）、Python 3，镜像为 .7z 时还需 7-Zip；首次运行会安装 Emscripten SDK 并下载 wgpu-native，原生窗口还需要 SDL2。全部流程均在 x86-64 Linux 上运行过，脚本也能在 Apple 芯片的 macOS 上构建；每款游戏约需 300 MB 磁盘空间。网页需要 WebGPU，Linux 版 Chrome 须开启实验性开关才能使用（软件渲染回退对 3D 而言过慢），还需要跨源隔离响应头和 HTTP Range 支持。","项目没有发布版本、标签或 CI 工作流。scripts/test_vu_codegen.py 无需游戏光盘即可测试原生与 WebAssembly 的向量单元代码生成，软件 GS 光栅化器则保留为 GPU 输出的比对基准。帧率数据是作者在一台笔记本上的测量结果。审阅时最后一次提交为 2026-10-19。","采用 MIT 许可证；MPEG 解码器中改编自 Play! 的 VLC 表保留其 BSD 2-clause 声明，README 将 PCSX2、Play! 和 ps2sdk 头文件列为行为参考。项目声明与 Sony 及各游戏发行商无关联。"],"targets":["binary","game"],"url":"https://github.com/snuri00/ps2-web-recomp","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/paazmaya/shuji/blob/a97c6df48e2016fde7b072d3e8475dea3d7b872c/package.json","https://github.com/paazmaya/shuji/blob/a97c6df48e2016fde7b072d3e8475dea3d7b872c/CHANGELOG.md","https://github.com/paazmaya/shuji/blob/a97c6df48e2016fde7b072d3e8475dea3d7b872c/lib/find-map.js","https://github.com/paazmaya/shuji/blob/a97c6df48e2016fde7b072d3e8475dea3d7b872c/lib/read-sources.js","https://github.com/paazmaya/shuji/blob/a97c6df48e2016fde7b072d3e8475dea3d7b872c/lib/write-sources.js","https://github.com/paazmaya/shuji/blob/a97c6df48e2016fde7b072d3e8475dea3d7b872c/LICENSE","https://www.npmjs.com/package/shuji/v/0.8.0"],"category":"web-analysis","description_en":"Command-line tool that writes the original JavaScript and CSS sources embedded in source maps back out as files. It reads .map files, or JavaScript and CSS files whose sourceMappingURL holds an inline Base64 or URL-encoded map or points to a map in the same folder, and can walk directories with a regular-expression filter. Output is flattened to file names by default, or keeps the map's folder structure with --preserve.","description_zh":"命令行工具，可把源映射（source map）中内嵌的原始 JavaScript 和 CSS 源码重新写出为文件。它能读取 .map 文件，也能读取 sourceMappingURL 中内联了 Base64 或 URL 编码映射、或指向同一目录下映射文件的 JavaScript 和 CSS 文件，并可按正则表达式筛选、递归遍历目录。默认只按文件名平铺输出，使用 --preserve 则保留映射中的目录结构。","entry_url":"https://awesomerea.org/resources/shuji/","entry_url_zh":"https://awesomerea.org/zh/resources/shuji/","evidence_url":"https://github.com/paazmaya/shuji/blob/a97c6df48e2016fde7b072d3e8475dea3d7b872c/README.md","group":"tools","id":"shuji","json_url":"https://awesomerea.org/resources/shuji/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/shuji/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/shuji/index.md","name":"shuji","name_zh":"shuji 源映射源码恢复工具","record_type":"resource","relationship":"foundation","requirements":["npm release at review: shuji 0.8.0, published 2023-12-04, which requires Node.js 14.15.0+; the repository publishes tags but no GitHub releases. The reviewed main commit is 139 commits ahead and unreleased: it raises the minimum to Node.js 24.12.0, which the README already states, moves linting to Oxlint and, since 2026-10-11, rejects output paths that would escape the output directory.","Install the CLI globally with npm and run it on a file or directory with -o for the output directory; the default filter only picks .map files, so -M is needed to scan .js or .css files for inline maps. Maps are read from local files only: a referenced map must sit relative to the code file, and remote maps are not fetched.","Only sources whose content is embedded in the map's sourcesContent are written; entries that list a path without content are skipped, so maps built without included sources yield nothing for them. Existing files are never overwritten, so flattened sources with the same file name are skipped unless --preserve is used.","MIT. Recovered files remain the original authors' code under their own terms."],"requirements_zh":["审阅时的 npm 版本为 shuji 0.8.0，发布于 2023-12-04，要求 Node.js 14.15.0+；仓库只有标签，没有发布 GitHub Release。所审阅的 main 分支提交领先该版本 139 个提交且尚未发布：它把最低要求提高到 Node.js 24.12.0（README 已按此说明），把代码检查迁移到 Oxlint，并自 2026-10-11 起拒绝会跳出输出目录的输出路径。","用 npm 全局安装命令行工具，对文件或目录运行，并用 -o 指定输出目录；默认筛选条件只匹配 .map 文件，因此要扫描 .js 或 .css 文件中的内联映射需改用 -M。只读取本地文件中的映射：被引用的映射必须位于相对代码文件的路径上，不会获取远程映射。","只有源码内容嵌入在映射 sourcesContent 中的源文件才会被写出；只列出路径而无内容的条目会被跳过，因此未包含源码的映射无法恢复这些文件。已存在的文件不会被覆盖，所以平铺输出时同名源文件会被跳过，除非使用 --preserve。","采用 MIT 许可。恢复出的文件仍是原作者的代码，适用其自身条款。"],"targets":["website"],"url":"https://github.com/paazmaya/shuji","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/sp00nznet/xboxrecomp/blob/eb0aa1d5fcb1ca34cdb6470fcfa471d87f431d73/docs/GETTING_STARTED.md","https://github.com/sp00nznet/xboxrecomp/blob/eb0aa1d5fcb1ca34cdb6470fcfa471d87f431d73/templates/new-game/CMakeLists.txt","https://github.com/sp00nznet/xboxrecomp/blob/eb0aa1d5fcb1ca34cdb6470fcfa471d87f431d73/tools/conformance/mkxbe.py","https://github.com/sp00nznet/xboxrecomp/blob/eb0aa1d5fcb1ca34cdb6470fcfa471d87f431d73/LICENSE","https://github.com/sp00nznet/xboxrecomp/blob/eb0aa1d5fcb1ca34cdb6470fcfa471d87f431d73/NOTICE","https://github.com/sp00nznet/xboxrecomp/releases/tag/v0.14.0"],"category":"game-analysis","description_en":"Static-recompilation toolkit for original Xbox games: a Python pipeline parses a retail XBE, disassembles it, classifies library functions, recovers calling conventions and lifts every x86 function to C. The generated code is compiled in a separate game project that links the toolkit's runtime libraries, which stand in for the Xbox kernel and translate Direct3D 8, NV2A, audio and input to Direct3D 11 and Win32 APIs, or to SDL2 and OpenGL on Linux and macOS.","description_zh":"面向初代 Xbox 游戏的静态重编译工具包：Python 流水线解析零售版 XBE，进行反汇编、识别库函数、恢复调用约定，并将每个 x86 函数提升为 C 代码。生成的代码在独立的游戏项目中编译，并链接工具包的运行时库；这些库替代 Xbox 内核，并将 Direct3D 8、NV2A、音频和输入转换到 Direct3D 11 与 Win32 API，在 Linux 和 macOS 上则转换到 SDL2 与 OpenGL。","entry_url":"https://awesomerea.org/resources/xboxrecomp/","entry_url_zh":"https://awesomerea.org/zh/resources/xboxrecomp/","evidence_url":"https://github.com/sp00nznet/xboxrecomp/blob/eb0aa1d5fcb1ca34cdb6470fcfa471d87f431d73/README.md","group":"tools","id":"xboxrecomp","json_url":"https://awesomerea.org/resources/xboxrecomp/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/xboxrecomp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/xboxrecomp/index.md","name":"xboxrecomp","name_zh":"xboxrecomp 初代 Xbox 静态重编译工具包","record_type":"resource","relationship":"foundation","requirements":["The README for v0.14.0 (2026-10-16, the reviewed commit) calls the toolkit title-agnostic but built against Burnout 3: Takedown, and says a first run of a recompiled game will crash and needs iterative stubbing, indirect-call fixes and runtime work for each title. The author's own ports are early: the README retires an earlier playable claim for Burnout 3, whose recompiled path reaches engine initialization, and lists Wreckless and Blood Wake as booting or scaffolded.","Users supply default.xbe and the game's data files from their own original Xbox disc image. The repository contains no game code or assets and builds only libraries, never a game executable; the generated C, often millions of lines, is written into the user's own game project created from the bundled template.","The pipeline needs Python 3.10+ with Capstone (pytest for tests); Ghidra or IDA are optional and only recover symbol names. The runtime builds with CMake 3.20+ and Visual Studio 2022 or MinGW-w64 on Windows (D3D11, XInput, XAudio2, Media Foundation), or Clang/GCC with SDL2, libepoxy and pkg-config on x86-64 and arm64 Linux and macOS, where FMV decoding is not available. The v0.14.0 release has no binary assets.","Unit tests need no game files, and several compile the lifter's output and check it against x86 definitions with paired negative controls; the README gives 812 passed and 0 skipped as a clean run. A conformance suite runs lifted C and the original instructions on a real 32-bit x86 CPU over the same inputs, with Docker images supplying GCC and MSVC under Wine on Linux and macOS. The README calls lifter coverage good but unquantified, and the repository has no CI workflow.","MIT-licensed, except the MCPX APU sources and NV2A register definitions extracted from xemu, which stay LGPL-2.1-or-later as listed in NOTICE. The README credits Claude Code for AI-assisted development."],"requirements_zh":["v0.14.0（2026-10-16，即所审阅的提交）的 README 称工具包与具体游戏无关，但开发时以 Burnout 3: Takedown 为参考；重编译后的游戏首次运行必定崩溃，每款游戏都需要反复添加桩函数、修复间接调用并补充运行时。作者自己的移植仍处于早期：README 撤回了 Burnout 3 此前“可游玩”的说法，其重编译路径目前只到引擎初始化，Wreckless 和 Blood Wake 分别处于可启动和刚搭好框架的阶段。","使用者需从自己的初代 Xbox 光盘镜像中提供 default.xbe 和游戏数据文件。仓库不含任何游戏代码或资产，只构建库，不会产出游戏可执行文件；生成的 C 代码往往多达数百万行，写入使用者依据随附模板创建的游戏项目中。","流水线需要 Python 3.10+ 和 Capstone（测试另需 pytest）；Ghidra 或 IDA 为可选项，仅用于恢复符号名。运行时使用 CMake 3.20+ 构建：Windows 上用 Visual Studio 2022 或 MinGW-w64（D3D11、XInput、XAudio2、Media Foundation），x86-64 与 arm64 的 Linux 和 macOS 上用 Clang/GCC 加 SDL2、libepoxy 和 pkg-config，但这两个平台没有 FMV 解码。v0.14.0 发布版本不含二进制文件。","单元测试不需要游戏文件，其中若干项会编译提升器自身的输出并对照 x86 定义检查，同时配有反向对照；README 给出的完整通过结果为 812 项通过、0 项跳过。一致性测试在真实的 32 位 x86 CPU 上，用相同输入分别运行提升后的 C 代码和原始指令；在 Linux 和 macOS 上由 Docker 镜像提供 GCC 以及在 Wine 下运行的 MSVC。README 称提升器覆盖率良好但未量化，仓库中也没有 CI 工作流。","采用 MIT 许可证，但取自 xemu 的 MCPX APU 源码和 NV2A 寄存器定义保留 LGPL-2.1-or-later 许可，具体文件列于 NOTICE。README 致谢 Claude Code 参与了 AI 辅助开发。"],"targets":["binary","game"],"url":"https://github.com/sp00nznet/xboxrecomp","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/grumpycoders/pcsx-redux/blob/e1693b7f756ebdc4ccae1230ed09992079b51f90/README.md#L35-L58","https://github.com/grumpycoders/pcsx-redux/blob/e1693b7f756ebdc4ccae1230ed09992079b51f90/LICENSE","https://github.com/grumpycoders/pcsx-redux/blob/e1693b7f756ebdc4ccae1230ed09992079b51f90/LICENSES.md","https://github.com/grumpycoders/pcsx-redux/blob/e1693b7f756ebdc4ccae1230ed09992079b51f90/tools/README.md","https://github.com/grumpycoders/pcsx-redux/tree/e1693b7f756ebdc4ccae1230ed09992079b51f90/tools/ghidra_scripts","https://github.com/pcsx-redux/nugget/blob/bfffd59779268c771c5a6ebfe0d2b07b51706565/LICENSE","https://pcsx-redux.consoledev.net/Debugging/introduction/","https://pcsx-redux.consoledev.net/Debugging/gdb-server/","https://pcsx-redux.consoledev.net/Debugging/ghidra/","https://pcsx-redux.consoledev.net/Lua/introduction/","https://pcsx-redux.consoledev.net/web_server/","https://pcsx-redux.consoledev.net/openbios/"],"category":"game-analysis","description_en":"PlayStation 1 emulator forked from PCSX and built around development and reverse engineering, with an interpreter and dynamic recompiler, software and OpenGL renderers, a MIPS debugger, VRAM viewer, SPU and GPU debugging tools, and a built-in GDB server that its documentation connects to gdb, IDA Pro and Ghidra's debugger. A LuaJIT API exposes breakpoints, memory and registers, an assembler and an ISO builder, and an optional REST web server can dump RAM and VRAM. The repository also holds the OpenBIOS replacement BIOS, PS-EXE conversion and packing tools, a Psy-Q object-file converter, Ghidra scripts for exchanging symbols and overlays with the emulator, and PS1 hardware designs.","description_zh":"基于 PCSX 分支、面向开发与逆向工程的 PlayStation 1 模拟器，提供解释器与动态重编译器、软件和 OpenGL 渲染器、MIPS 调试器、显存查看器、SPU 与 GPU 调试工具，以及内置 GDB 服务器；其文档说明了如何用 gdb、IDA Pro 和 Ghidra 调试器连接它。LuaJIT API 提供断点、内存与寄存器、汇编器和 ISO 构建器等接口，可选的 REST Web 服务器还能转储内存和显存。仓库另含替代 BIOS OpenBIOS、PS-EXE 转换与打包工具、Psy-Q 目标文件转换器、用于与模拟器交换符号和覆盖段的 Ghidra 脚本，以及 PS1 硬件设计。","entry_url":"https://awesomerea.org/resources/pcsx-redux/","entry_url_zh":"https://awesomerea.org/zh/resources/pcsx-redux/","evidence_url":"https://github.com/grumpycoders/pcsx-redux/blob/e1693b7f756ebdc4ccae1230ed09992079b51f90/README.md","group":"tools","id":"pcsx-redux","json_url":"https://awesomerea.org/resources/pcsx-redux/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pcsx-redux/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pcsx-redux/index.md","name":"PCSX-Redux","name_zh":"PCSX-Redux PlayStation 1 调试模拟器","record_type":"resource","relationship":"foundation","requirements":["No tagged GitHub releases at review: the README links rolling development builds for Windows x64 (GUI and CLI), Linux x64 and arm64 AppImages and macOS Arm, and says the codebase is still experimental and has not reached its first stable release. Builds are 64-bit only and need a GPU and driver that can create at least an OpenGL 3.0 context; the macOS build is unsigned. The reviewed main commit is from 2026-10-19.","Source builds need a recursive clone: Visual Studio 2022 with NuGet on Windows; Docker for the AppImage, or make with clang and packages such as Capstone, FFmpeg, libuv, SDL3 and curl, on Linux; macOS Catalina or later with Xcode and Homebrew packages. OpenBIOS and other PS1 code need a mipsel-none-elf GCC toolchain, for which the repository provides install scripts.","Game discs and executables come from the user. The README presents OpenBIOS, built separately, as an alternative to the copyrighted retail BIOS, and the reviewed trees contain no retail BIOS, Psy-Q libraries or game files. The docs say most CPU debugging features need the dynarec disabled and the debugger enabled, and Ghidra debugging needs gdb-multiarch and Ghidra 10.3+. When enabled, the web server listens on port 8080 on all network interfaces by default, which the docs note makes it reachable from other machines.","GPL-2.0 for PCSX-Redux; OpenBIOS lives in the MIT-licensed nugget submodule, and LICENSES.md lists third-party libraries with their own licenses, some vendored with modifications."],"requirements_zh":["审阅时 GitHub 上没有带标签的发布版：README 链接的是持续更新的开发构建，涵盖 Windows x64（图形界面与命令行版）、Linux x64 和 arm64 AppImage 以及 macOS Arm，并说明代码库仍属实验性质，尚未发布首个稳定版。所有构建仅支持 64 位，需要能创建至少 OpenGL 3.0 上下文的 GPU 与驱动；macOS 版未经签名。所审阅的 main 提交日期为 2026-10-19。","从源码构建需递归克隆：Windows 上使用 Visual Studio 2022 并由 NuGet 获取依赖；Linux 上可用 Docker 生成 AppImage，或安装 clang 以及 Capstone、FFmpeg、libuv、SDL3、curl 等软件包后用 make 构建；macOS 需 Catalina 或更新版本、Xcode 和 Homebrew 软件包。编译 OpenBIOS 及其他 PS1 代码需要 mipsel-none-elf GCC 工具链，仓库提供了相应的安装脚本。","游戏光盘和可执行文件由使用者自行提供。README 将需单独构建的 OpenBIOS 作为受版权保护的零售版 BIOS 的替代品，所审阅的源码树中不含零售版 BIOS、Psy-Q 库或游戏文件。文档指出，大多数 CPU 调试功能需要关闭动态重编译并启用调试器；用 Ghidra 调试需要 gdb-multiarch 和 Ghidra 10.3+。Web 服务器启用后默认在所有网络接口的 8080 端口监听，文档提醒这意味着网络中的其他机器也能访问。","PCSX-Redux 采用 GPL-2.0 许可；OpenBIOS 位于采用 MIT 许可的 nugget 子模块中，LICENSES.md 列出了各自保留许可的第三方库，其中部分经过修改后内置。"],"targets":["binary","game"],"url":"https://github.com/grumpycoders/pcsx-redux","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/ben-sb/obfuscator-io-deobfuscator/blob/42efc019d375f3cc266887ec36e929905836639c/package.json","https://github.com/ben-sb/obfuscator-io-deobfuscator/blob/42efc019d375f3cc266887ec36e929905836639c/src/deobfuscator/deobfuscator.ts","https://github.com/ben-sb/obfuscator-io-deobfuscator/tree/42efc019d375f3cc266887ec36e929905836639c/src/deobfuscator/helpers/strings/decoders","https://github.com/ben-sb/obfuscator-io-deobfuscator/blob/42efc019d375f3cc266887ec36e929905836639c/src/deobfuscator/transformations/antiTamper/antiTamperRemover.ts","https://github.com/ben-sb/obfuscator-io-deobfuscator/blob/42efc019d375f3cc266887ec36e929905836639c/LICENSE","https://github.com/ben-sb/obfuscator-io-deobfuscator/pull/52","https://www.npmjs.com/package/obfuscator-io-deobfuscator/v/1.0.6"],"category":"web-analysis","description_en":"Deobfuscator dedicated to JavaScript produced by Obfuscator.io (javascript-obfuscator), which its README says also handles most forks. Working statically on a Babel AST, it reveals strings hidden in rotated, Base64- or RC4-encoded string arrays, inlines proxy functions, simplifies objects, arithmetic and string concatenation, removes dead code and the obfuscator's anti-tamper wrappers, and reverses control-flow flattening. Its configuration is detected automatically, and the author also hosts an online version.","description_zh":"专门处理 Obfuscator.io（javascript-obfuscator）所生成 JavaScript 的反混淆工具，README 称也能处理其大部分分支版本。它在 Babel AST 上进行静态处理，可还原隐藏在经过轮转、Base64 或 RC4 编码的字符串数组中的字符串，内联代理函数，化简对象、算术表达式和字符串拼接，删除死代码和混淆器的防篡改包装代码，并还原控制流平坦化。配置会自动检测，作者另提供在线版本。","entry_url":"https://awesomerea.org/resources/obfuscator-io-deobfuscator/","entry_url_zh":"https://awesomerea.org/zh/resources/obfuscator-io-deobfuscator/","evidence_url":"https://github.com/ben-sb/obfuscator-io-deobfuscator/blob/42efc019d375f3cc266887ec36e929905836639c/README.md","group":"tools","id":"obfuscator-io-deobfuscator","json_url":"https://awesomerea.org/resources/obfuscator-io-deobfuscator/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/obfuscator-io-deobfuscator/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/obfuscator-io-deobfuscator/index.md","name":"Obfuscator.io Deobfuscator","name_zh":"Obfuscator.io 专用反混淆工具","record_type":"resource","relationship":"foundation","requirements":["npm release at review: obfuscator-io-deobfuscator 1.0.6, published 2025-03-27. The reviewed main commit, merged 2026-08-09, adds unreleased improvements to string-array wrapper identification and README notes on running the CLI from source; package.json still reports 1.0.6. No GitHub releases are published.","Install the global obfuscator-io-deobfuscator CLI, which takes an input file and an optional output path, or build it from source with npm and TypeScript. It applies its Babel-based transformations repeatedly, for at most 50 passes; package.json declares no Node.js version range. An online version runs at obf-io.deobfuscate.io.","Input must be JavaScript produced by Obfuscator.io or a compatible fork; other obfuscators are out of scope, and the author's general-purpose javascript-deobfuscator covers generic patterns. The README states that it does not run untrusted code or use a sandbox; recovered strings and control flow still need checking against the original script.","The LICENSE file is Apache-2.0, while package.json and the npm metadata declare ISC."],"requirements_zh":["审阅时的 npm 版本为 obfuscator-io-deobfuscator 1.0.6，发布于 2025-03-27。所审阅的 main 分支提交合并于 2026-08-09，新增了尚未发布的字符串数组包装函数识别改进，以及从源码运行命令行工具的 README 说明；package.json 中的版本号仍为 1.0.6。仓库未发布 GitHub Release。","可全局安装 obfuscator-io-deobfuscator 命令行工具，它接受一个输入文件和可选的输出路径；也可以用 npm 和 TypeScript 从源码构建。它会反复执行基于 Babel 的各项转换，最多 50 轮；package.json 未声明 Node.js 版本范围。在线版本位于 obf-io.deobfuscate.io。","输入必须是 Obfuscator.io 或兼容分支版本生成的 JavaScript；其他混淆器不在其适用范围内，通用混淆模式可改用作者的通用工具 javascript-deobfuscator。README 称它不会运行不受信任的代码，也不使用沙箱；还原出的字符串和控制流仍需对照原始脚本核实。","LICENSE 文件为 Apache-2.0，而 package.json 和 npm 元数据声明的是 ISC。"],"targets":["website"],"url":"https://github.com/ben-sb/obfuscator-io-deobfuscator","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/mahaloz/decomp2dbg/blob/416dce4986f90c74876ddb00af18583f8de6e4fe/README.md#L20-L46","https://github.com/mahaloz/decomp2dbg/blob/416dce4986f90c74876ddb00af18583f8de6e4fe/README.md#L147-L168","https://github.com/mahaloz/decomp2dbg/blob/416dce4986f90c74876ddb00af18583f8de6e4fe/pyproject.toml","https://github.com/mahaloz/decomp2dbg/blob/416dce4986f90c74876ddb00af18583f8de6e4fe/LICENSE","https://github.com/mahaloz/decomp2dbg/blob/416dce4986f90c74876ddb00af18583f8de6e4fe/tests.py","https://github.com/mahaloz/decomp2dbg/blob/416dce4986f90c74876ddb00af18583f8de6e4fe/.github/workflows/ci-tests.yml","https://github.com/mahaloz/decomp2dbg/tree/416dce4986f90c74876ddb00af18583f8de6e4fe/testing/binaries","https://github.com/mahaloz/decomp2dbg/releases/tag/v4.0.3","https://pypi.org/project/decomp2dbg/4.0.3/"],"category":"dynamic-analysis","description_en":"Decompiler-to-debugger bridge that serves function names, global variables, stack and register variable names and decompiled code from IDA Pro, Binary Ninja, Ghidra or angr-management to GDB over an XML-RPC connection. Synced functions and globals become ordinary GDB symbols for breakpoints and memory examination, local variables appear as convenience variables, and each breakpoint stop prints the decompiled line for the current address. It works with vanilla GDB, GEF and pwndbg, and can map a shared library's symbols once its load range is supplied.","description_zh":"连通反编译器与调试器的桥接工具：通过 XML-RPC 连接，把 IDA Pro、Binary Ninja、Ghidra 或 angr-management 中的函数名、全局变量、栈变量与寄存器变量名以及反编译代码提供给 GDB。同步过来的函数和全局变量成为普通的 GDB 符号，可直接下断点和查看内存；局部变量以便利变量的形式出现，每次在断点处停下时还会打印当前地址对应的反编译代码行。它支持原生 GDB、GEF 和 pwndbg；提供共享库的加载地址范围后，也能为该库映射符号。","entry_url":"https://awesomerea.org/resources/decomp2dbg/","entry_url_zh":"https://awesomerea.org/zh/resources/decomp2dbg/","evidence_url":"https://github.com/mahaloz/decomp2dbg/blob/416dce4986f90c74876ddb00af18583f8de6e4fe/README.md","group":"tools","id":"decomp2dbg","json_url":"https://awesomerea.org/resources/decomp2dbg/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/decomp2dbg/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/decomp2dbg/index.md","name":"decomp2dbg","name_zh":"decomp2dbg 反编译器-调试器符号同步工具","record_type":"resource","relationship":"foundation","requirements":["Release at review: v4.0.3, published 2026-07-14 on GitHub and PyPI; the reviewed main commit is that version bump. Package metadata requires Python 3.10+, and the README says decomp2dbg must be installed in the same Python environment as the decompiler and the debugger. The bundled installer places the decompiler plugin and sources the GDB client from the user's .gdbinit, after GEF or pwndbg are loaded; a Windows decompiler outside WSL needs the README's manual steps.","The README lists IDA Pro 9.0+, Binary Ninja 2.4+, Ghidra 12+ (started in PyGhidra mode with the plugin enabled) and angr-management 9.0+, each installed separately; decompiler access goes through the declib library. Only GDB-based debuggers are supported: LLDB and WinDbg support, struct syncing, function-type syncing and online DWARF creation are listed as unfinished.","The decompiler side starts an XML-RPC server on localhost:3662 by default; debugging from another machine or VM needs the host and port at connect time and the port reachable. One decompiler can be connected at a time, and a shared library's symbols need its base and end addresses supplied manually.","tests.py holds integration tests that drive headless Ghidra, or IDA through idalib, with GDB; CI runs only the Ghidra suites against Ghidra 12.0. The testing/binaries directory keeps sample executables, including an Ubuntu objdump build, as test fixtures. BSD-2-Clause license."],"requirements_zh":["审阅时的最新版本为 v4.0.3，于 2026-07-14 在 GitHub 和 PyPI 发布；所审阅的 main 分支提交即为该版本号更新。包元数据要求 Python 3.10+；README 指出 decomp2dbg 必须安装在反编译器和调试器所用的同一 Python 环境中。自带的安装程序会放置反编译器插件，并在用户的 .gdbinit 中加载 GDB 客户端，加载位置须在 GEF 或 pwndbg 之后；若反编译器运行在 WSL 之外的 Windows 上，需要按 README 的手动步骤安装。","README 列出 IDA Pro 9.0+、Binary Ninja 2.4+、Ghidra 12+（须以 PyGhidra 模式启动并启用插件）和 angr-management 9.0+，均需另行安装；对反编译器的访问通过 declib 库实现。目前只支持基于 GDB 的调试器：LLDB 和 WinDbg 支持、结构体同步、函数类型同步以及在线生成 DWARF 都列为尚未完成。","反编译器一侧默认在 localhost:3662 启动 XML-RPC 服务；若在另一台机器或虚拟机上调试，需要在连接时指定主机和端口，并确保该端口可达。同一时间只能连接一个反编译器；共享库的符号需要手动提供其起始和结束地址。","tests.py 中的集成测试用 GDB 配合无界面运行的 Ghidra，或通过 idalib 运行的 IDA；CI 只针对 Ghidra 12.0 运行 Ghidra 测试套件。testing/binaries 目录保存了若干示例可执行文件作为测试夹具，其中包括一个 Ubuntu 的 objdump 构建。采用 BSD-2-Clause 许可。"],"targets":["binary"],"url":"https://github.com/mahaloz/decomp2dbg","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/ben-sb/javascript-deobfuscator/blob/4107a8a59d9a2267f921148cb33d3abf0bf6d128/package.json","https://github.com/ben-sb/javascript-deobfuscator/blob/4107a8a59d9a2267f921148cb33d3abf0bf6d128/src/config.ts","https://github.com/ben-sb/javascript-deobfuscator/blob/4107a8a59d9a2267f921148cb33d3abf0bf6d128/src/modifications/renaming/variableRenamer.ts","https://github.com/ben-sb/javascript-deobfuscator/blob/4107a8a59d9a2267f921148cb33d3abf0bf6d128/LICENSE","https://www.npmjs.com/package/js-deobfuscator/v/1.1.7"],"category":"web-analysis","description_en":"General-purpose JavaScript deobfuscator for common obfuscation patterns, published on npm as js-deobfuscator and usable as a library or CLI. It unpacks arrays of literals and replaces references to them, removes simple, array and arithmetic proxy functions, simplifies arithmetic and string concatenation, removes dead branches, turns computed member access into static properties, renames hexadecimal identifiers such as _0xca830a and beautifies the result. The author also hosts an online version and maintains a separate deobfuscator for Obfuscator.io output.","description_zh":"通用的 JavaScript 反混淆工具，针对常见混淆手法，以 js-deobfuscator 之名发布在 npm 上，可作为库或命令行工具使用。它能展开字面量数组并替换对其的引用，移除简单代理函数、数组代理函数和算术代理函数，化简算术表达式和字符串拼接，删除死分支，把计算属性访问转为静态属性，重命名 _0xca830a 这类十六进制标识符，并美化输出代码。作者另提供在线版本，并单独维护一个针对 Obfuscator.io 输出的反混淆工具。","entry_url":"https://awesomerea.org/resources/ben-sb-javascript-deobfuscator/","entry_url_zh":"https://awesomerea.org/zh/resources/ben-sb-javascript-deobfuscator/","evidence_url":"https://github.com/ben-sb/javascript-deobfuscator/blob/4107a8a59d9a2267f921148cb33d3abf0bf6d128/README.md","group":"tools","id":"ben-sb-javascript-deobfuscator","json_url":"https://awesomerea.org/resources/ben-sb-javascript-deobfuscator/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ben-sb-javascript-deobfuscator/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ben-sb-javascript-deobfuscator/index.md","name":"javascript-deobfuscator","name_zh":"javascript-deobfuscator 通用 JavaScript 反混淆工具","record_type":"resource","relationship":"foundation","requirements":["npm release at review: js-deobfuscator 1.1.7, published 2025-07-15; the reviewed main commit is that version bump. No GitHub releases are published. The TypeScript package parses and regenerates code with the Shift parser and the author's shift-codegen fork; package.json declares no Node.js version range.","Install it locally to import as a module, or globally for the js-deobfuscator CLI, which reads an input file and writes an output file, with -m for ES modules. The library config toggles each transformation. An online version runs at deobfuscate.io.","Supply the JavaScript to analyze yourself. It handles the generic patterns listed in the README; for Obfuscator.io output the README points to the author's dedicated deobfuscator. Hexadecimal identifiers are replaced with names drawn from a bundled word list, not recovered originals, so output still needs analyst review.","The LICENSE file is Apache-2.0, while package.json and the npm metadata declare ISC."],"requirements_zh":["审阅时的 npm 版本为 js-deobfuscator 1.1.7，发布于 2025-07-15；所审阅的 main 分支提交即为该版本号更新。仓库未发布 GitHub Release。这个 TypeScript 软件包使用 Shift 解析器和作者维护的 shift-codegen 分支来解析并重新生成代码；package.json 未声明 Node.js 版本范围。","可在本地安装后作为模块导入，或全局安装后使用 js-deobfuscator 命令行工具：读取输入文件并写出输出文件，-m 用于解析 ES 模块。库的配置项可分别开关每种转换。在线版本位于 deobfuscate.io。","需自行提供要分析的 JavaScript。它处理 README 所列的通用混淆模式；对于 Obfuscator.io 的输出，README 建议改用作者专门的反混淆工具。十六进制标识符会被替换为从内置词表中选取的名称，并非恢复原名，因此输出仍需分析人员复核。","LICENSE 文件为 Apache-2.0，而 package.json 和 npm 元数据声明的是 ISC。"],"targets":["website"],"url":"https://github.com/ben-sb/javascript-deobfuscator","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/djkaty/Il2CppInspector/blob/116c6355e7ee3656eab85ca753f913d428abc7a3/README.md#L713-L737","https://github.com/djkaty/Il2CppInspector/blob/116c6355e7ee3656eab85ca753f913d428abc7a3/LICENSE","https://github.com/djkaty/Il2CppInspector/blob/116c6355e7ee3656eab85ca753f913d428abc7a3/Il2CppInspector.Common/Il2CppInspector.csproj","https://github.com/djkaty/Il2CppInspector/blob/116c6355e7ee3656eab85ca753f913d428abc7a3/Il2CppInspector.GUI/Il2CppInspector.GUI.csproj","https://github.com/djkaty/Il2CppInspector/blob/116c6355e7ee3656eab85ca753f913d428abc7a3/.gitmodules","https://github.com/djkaty/Il2CppInspector/releases/tag/2021.1","https://github.com/djkaty/Il2CppInspector/compare/2021.1...116c6355e7ee3656eab85ca753f913d428abc7a3"],"category":"game-analysis","description_en":"Static analysis tool for Unity IL2CPP applications that reads an IL2CPP binary with its global-metadata.dat and outputs the application's type structure and method addresses as C# stub code, .NET assembly shim DLLs for decompilers such as ILSpy and dnSpy, IDA and Ghidra Python scripts that apply symbols and types, C++ type scaffolding and JSON address maps. Three APIs, also published as a NuGet package, and a plugin SDK expose the binary metadata, .NET type model and C++ model for custom analysis. The README states that it is not a decompiler and does not recover method source code.","description_zh":"面向 Unity IL2CPP 应用的静态分析工具：读取 IL2CPP 二进制及其 global-metadata.dat，将应用的类型结构和方法地址输出为 C# 存根代码、供 ILSpy 和 dnSpy 等反编译器使用的 .NET 程序集垫片 DLL、为 IDA 和 Ghidra 套用符号与类型的 Python 脚本、C++ 类型脚手架以及 JSON 地址映射。三套 API（另以 NuGet 包发布）和插件 SDK 开放二进制元数据、.NET 类型模型和 C++ 模型，供自定义分析使用。README 说明它不是反编译器，不会还原方法源码。","entry_url":"https://awesomerea.org/resources/il2cppinspector/","entry_url_zh":"https://awesomerea.org/zh/resources/il2cppinspector/","evidence_url":"https://github.com/djkaty/Il2CppInspector/blob/116c6355e7ee3656eab85ca753f913d428abc7a3/README.md","group":"tools","id":"il2cppinspector","json_url":"https://awesomerea.org/resources/il2cppinspector/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/il2cppinspector/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/il2cppinspector/index.md","name":"Il2CppInspector","name_zh":"Il2CppInspector Unity IL2CPP 静态分析工具","record_type":"resource","relationship":"foundation","requirements":["The README announces that development is suspended for the foreseeable future and that the author will not respond to issues or pull requests. The reviewed master commit, which added that notice, dates from 2021-11-23, 16 commits after the last release, 2021.1 (2021-01-31). The README recommends Cpp2IL instead.","Its version table marks Unity 5.3.0 through 2020.3.x (IL2CPP 16 to 27.1) as working and 2021.1 (27.2) as partial; later Unity versions are not covered. Documented inputs are ELF, PE, Mach-O, Universal Binary and PS4 FSELF images, 32- and 64-bit, for ARMv7, Thumb-2, ARMv8, x86 and x64, plus APK, AAB, XAPK, Zip and decrypted IPA packages.","The analyst supplies the IL2CPP binary and its matching global-metadata.dat; IPA executables must already be decrypted, and the README says packed, encrypted or obfuscated IL2CPP files are not its intended input. It warns that loading a packed PE file runs the DLL's entry point and initialization code, so untrusted DLLs should not be loaded and the tool should never run as administrator.","Builds use dotnet publish from a recursive clone and target .NET Core 3.1; the CLI builds for Windows, macOS and Linux, while the WPF GUI is Windows-only, and plugins are fetched separately with the get-plugins scripts. AGPL-3.0; the Bin2Object submodule and libraries such as dnlib and CxxDemangler keep their own licenses."],"requirements_zh":["README 宣布开发在可预见的未来暂停，作者也不会再回复 issue 或拉取请求。所审阅的 master 提交即添加该声明的提交，日期为 2021-11-23，比最后一个发布版 2021.1（2021-01-31）多 16 个提交。README 改为推荐 Cpp2IL。","其版本表将 Unity 5.3.0 至 2020.3.x（IL2CPP 16 至 27.1）标为可用，将 2021.1（27.2）标为部分支持；更新的 Unity 版本不在其列。文档列出的输入包括 ELF、PE、Mach-O、Universal Binary 和 PS4 FSELF 映像（32 位与 64 位，ARMv7、Thumb-2、ARMv8、x86 和 x64 架构），以及 APK、AAB、XAPK、Zip 和已解密的 IPA 包。","IL2CPP 二进制及与之匹配的 global-metadata.dat 由分析者自行提供；IPA 中的可执行文件须事先解密，README 也说明加壳、加密或混淆的 IL2CPP 文件不是其预期输入。README 警告，加载加壳的 PE 文件会执行该 DLL 的入口点和初始化代码，因此不应加载不可信的 DLL，也绝不要以管理员身份运行本工具。","从递归克隆的源码用 dotnet publish 构建，目标框架为 .NET Core 3.1；命令行版本可为 Windows、macOS 和 Linux 构建，基于 WPF 的图形界面仅限 Windows，插件需通过 get-plugins 脚本另行获取。采用 AGPL-3.0 许可；Bin2Object 子模块以及 dnlib、CxxDemangler 等库保留各自的许可。"],"targets":["app","binary","game"],"url":"https://github.com/djkaty/Il2CppInspector","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/sigalor/whatsapp-web-reveng/blob/04caed2b23680d23a3f39cf2b017c064ff1e85ed/backend/whatsapp.py","https://github.com/sigalor/whatsapp-web-reveng/blob/04caed2b23680d23a3f39cf2b017c064ff1e85ed/backend/whatsapp_binary_reader.py","https://github.com/sigalor/whatsapp-web-reveng/blob/04caed2b23680d23a3f39cf2b017c064ff1e85ed/doc/spec/def.proto","https://github.com/sigalor/whatsapp-web-reveng/blob/04caed2b23680d23a3f39cf2b017c064ff1e85ed/doc/spec/protobuf-extractor/index.js","https://github.com/sigalor/whatsapp-web-reveng/blob/04caed2b23680d23a3f39cf2b017c064ff1e85ed/package.json","https://github.com/sigalor/whatsapp-web-reveng/blob/04caed2b23680d23a3f39cf2b017c064ff1e85ed/requirements.txt","https://github.com/sigalor/whatsapp-web-reveng/blob/04caed2b23680d23a3f39cf2b017c064ff1e85ed/shell.nix","https://github.com/sigalor/whatsapp-web-reveng/blob/04caed2b23680d23a3f39cf2b017c064ff1e85ed/Dockerfile","https://github.com/sigalor/whatsapp-web-reveng/blob/04caed2b23680d23a3f39cf2b017c064ff1e85ed/LICENSE","https://github.com/sigalor/whatsapp-web-reveng/issues/372","https://engineering.fb.com/2021/07/14/security/whatsapp-multi-device/"],"category":"reconstruction-cases","description_en":"Documents and reimplements the WebSocket protocol WhatsApp Web used while browser sessions mirrored a paired phone: QR pairing, Curve25519/HKDF key setup, AES/HMAC-protected binary messages, the token-based node encoding and end-to-end media encryption. A Python backend, Node.js relay and browser front end decode a logged-in session’s messages into inspectable JSON, and the README lists independent reimplementations such as Baileys and go-whatsapp. This is an older protocol generation from before WhatsApp’s 2021 multi-device architecture, not a description of current WhatsApp Web.","description_zh":"记录并重新实现 WhatsApp Web 在浏览器会话镜像已配对手机时期使用的 WebSocket 协议：二维码配对、Curve25519/HKDF 密钥建立、经 AES/HMAC 保护的二进制报文、基于字符串令牌表的节点编码，以及端到端媒体加密。Python 后端、Node.js 中继和浏览器前端把已登录会话的报文解码成可查看的 JSON，README 还列出了 Baileys、go-whatsapp 等独立再实现。这是 WhatsApp 2021 年多设备架构之前的旧一代协议，不能当作对当前 WhatsApp Web 的描述。","entry_url":"https://awesomerea.org/resources/whatsapp-web-reveng-legacy-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/whatsapp-web-reveng-legacy-protocol-case/","evidence_url":"https://github.com/sigalor/whatsapp-web-reveng/blob/04caed2b23680d23a3f39cf2b017c064ff1e85ed/README.md","group":"cases","id":"whatsapp-web-reveng-legacy-protocol-case","json_url":"https://awesomerea.org/resources/whatsapp-web-reveng-legacy-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/whatsapp-web-reveng-legacy-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/whatsapp-web-reveng-legacy-protocol-case/index.md","name":"whatsapp-web-reveng: documenting the legacy WhatsApp Web protocol","name_zh":"whatsapp-web-reveng：记录旧版 WhatsApp Web 协议","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["Reviewed at the 2024-04-22 master head, a README-only change; the backend and Node relay last changed in August 2021, the protobuf schema in March 2020, and there are no releases or tags. The README’s pairing flow has the phone supply session details such as its battery level, the phone-mirroring companion model that WhatsApp’s July 2021 engineering post says multi-device replaces. A 2022 issue reports the server answering a QR scan with an upgrade_md_prod command. As checked on 2026-10-20, the 2024-04-22 head is still GitHub’s last recorded push, the repository is not archived and the README does not mark it as maintained, superseded or archived.","Use needs the user’s own WhatsApp account and phone to scan the pairing code, and the backend connects to WhatsApp’s servers. The protobuf definitions come from a helper script that parses the public WhatsApp Web JavaScript bundle. The README’s task list still names growing binary-decoding errors, writing binary messages and a less technical interface as open work.","Bare-metal setup needs Node.js 8+ and Python 2.7 with websocket-client, simple-websocket-server, curve25519-donna, pycrypto (pycryptodome in requirements.txt), pyqrcode and protobuf; Windows also needs Visual C++ for Python 9.0 and a supplied header. A shell.nix (Python 2.7, Node.js 13) and a Dockerfile are provided, and npm start runs the backend, Node API and front end together. The README says the Docker version is not stable enough for production.","There is no test suite: the package.json test script only starts the components. The documented correctness checks are HMAC validation of the server’s key data and of each binary message, and an in-browser JavaScript demo prints decrypted messages after a QR scan.","MIT (LICENSE, package.json). The README states the project is unaffiliated with and not endorsed by WhatsApp, that use is at the user’s own risk, and adds a cryptography export notice; WhatsApp’s services and terms apply separately."],"requirements_zh":["审阅对象为 2024-04-22 的 master 最新提交，该提交只修改了 README；后端和 Node 中继最后修改于 2021 年 8 月，protobuf 结构定义最后修改于 2020 年 3 月，没有发布版本或标签。README 描述的配对流程由手机提供电量等会话信息，也就是 WhatsApp 2021 年 7 月工程博客所说被多设备架构取代的手机镜像式配套设备模式。2022 年的一个 issue 报告扫描二维码后服务器返回 upgrade_md_prod 命令。据 2026-10-20 核查，2024-04-22 的最新提交仍是 GitHub 记录的最后一次推送，仓库未归档，README 未标注其仍在维护、已被取代或已归档。","使用时需要用户自己的 WhatsApp 账号和手机来扫描配对码，后端会连接 WhatsApp 服务器。protobuf 定义由一个辅助脚本解析公开的 WhatsApp Web JavaScript 包生成。README 的任务清单仍把二进制解码错误增多、二进制报文写入以及更易用的界面列为待完成工作。","直接安装需要 Node.js 8+ 和 Python 2.7，以及 websocket-client、simple-websocket-server、curve25519-donna、pycrypto（requirements.txt 中为 pycryptodome）、pyqrcode 和 protobuf；Windows 还需要 Visual C++ for Python 9.0 和仓库提供的头文件。项目提供 shell.nix（Python 2.7、Node.js 13）和 Dockerfile，npm start 会同时启动后端、Node API 和前端。README 说明 Docker 版本还不够稳定，不适合生产部署。","项目没有测试套件：package.json 的 test 脚本只是启动各组件。文档给出的正确性检查是对服务器密钥数据和每条二进制报文做 HMAC 校验，另有浏览器内 JavaScript 演示在扫描二维码后输出解密后的报文。","采用 MIT 许可（LICENSE、package.json）。README 声明项目与 WhatsApp 无关、未获其认可，使用风险自负，并附有加密软件出口声明；WhatsApp 的服务和条款另行适用。"],"targets":["protocol","website"],"url":"https://github.com/sigalor/whatsapp-web-reveng","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/GJDuck/e9patch/blob/682ab1f7f0480aa45edf1fd94457e5ee2dd01043/doc/e9tool-user-guide.md","https://github.com/GJDuck/e9patch/blob/682ab1f7f0480aa45edf1fd94457e5ee2dd01043/doc/e9patch-programming-guide.md","https://github.com/GJDuck/e9patch/blob/682ab1f7f0480aa45edf1fd94457e5ee2dd01043/build.sh","https://github.com/GJDuck/e9patch/blob/682ab1f7f0480aa45edf1fd94457e5ee2dd01043/e9compile.sh","https://github.com/GJDuck/e9patch/blob/682ab1f7f0480aa45edf1fd94457e5ee2dd01043/examples/win64_demo.c","https://github.com/GJDuck/e9patch/blob/682ab1f7f0480aa45edf1fd94457e5ee2dd01043/examples/stdlib.c","https://github.com/GJDuck/e9patch/tree/682ab1f7f0480aa45edf1fd94457e5ee2dd01043/contrib","https://github.com/GJDuck/e9patch/blob/682ab1f7f0480aa45edf1fd94457e5ee2dd01043/LICENSE","https://github.com/GJDuck/e9patch/releases/tag/v1.0.1","https://github.com/GJDuck/e9patch/compare/v1.0.1...682ab1f7f0480aa45edf1fd94457e5ee2dd01043"],"category":"dynamic-analysis","description_en":"Static binary rewriter for x86-64 Linux ELF executables and shared objects that inserts instrumentation without control-flow recovery and writes a drop-in replacement binary, following the PLDI 2020 paper Binary Rewriting without Control Flow Recovery. The e9tool front end selects instructions with a matching language over disassembly attributes and patches them with built-in trampolines, calls into C or C++ functions compiled with e9compile.sh, or hand-written plugin trampolines; the e9patch back end accepts JSON-RPC commands so other tools can drive it. Optional modes add heuristic control-flow recovery for faster rewritten binaries or SIGILL-based fallbacks for full patch coverage.","description_zh":"面向 x86-64 Linux ELF 可执行文件和共享库的静态二进制重写工具，无需恢复控制流即可插入插桩代码，并生成可直接替换原文件的二进制，方法源自 PLDI 2020 论文《无需控制流恢复的二进制重写》。前端 e9tool 用一套基于反汇编属性的匹配语言选择指令，再通过内置跳板、调用以 e9compile.sh 编译的 C/C++ 函数或手写的插件跳板进行修补；后端 e9patch 接收 JSON-RPC 命令，便于其他工具调用。可选模式包括借助启发式控制流恢复获得更快的重写结果，或借助 SIGILL 回退实现完全的修补覆盖。","entry_url":"https://awesomerea.org/resources/e9patch/","entry_url_zh":"https://awesomerea.org/zh/resources/e9patch/","evidence_url":"https://github.com/GJDuck/e9patch/blob/682ab1f7f0480aa45edf1fd94457e5ee2dd01043/README.md","group":"tools","id":"e9patch","json_url":"https://awesomerea.org/resources/e9patch/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/e9patch/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/e9patch/index.md","name":"E9Patch","name_zh":"E9Patch 静态二进制重写工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v1.0.1, published 2026-06-22, with an amd64 Debian package; earlier 1.0.0 release candidates ran through rc10 (2025-04-16) before v1.0.0 on 2026-03-01. The reviewed master commit (2026-06-28) is one commit ahead of v1.0.1, fixing undefined behavior on empty trampoline template entries, and its VERSION file reads 1.0.1.","build.sh builds e9patch and e9tool after checking for gcc, g++, make, binutils, xxd, markdown and zlib headers, and suggests Debian/Ubuntu package names; Zydis and libdw are vendored under contrib. Patch functions are compiled with e9compile.sh using gcc and freestanding flags. The README targets x86_64 Linux; the source also contains PE handling and a Windows example that calls itself a proof of concept, which the guides do not document.","Input is the user's own ELF executable or shared object, and output is written to a.out or a.so by default. The guide notes that the built-in linear disassembler can mishandle binaries that mix code and data and accepts --use-disasm and --use-targets CSV files from other analyzers. The CFR mode is heuristic and less robust, and in the -100 mode a rewritten program's own attempts to install a SIGILL handler fail with ENOSYS.","GPL-3.0, with specific files such as examples/stdlib.c under MIT as stated in their preambles."],"requirements_zh":["审阅时最新版本为 v1.0.1，发布于 2026-06-22，提供 amd64 Debian 软件包；此前 1.0.0 的候选版本一直发布到 rc10（2025-04-16），v1.0.0 于 2026-03-01 发布。所审阅的 master 提交（2026-06-28）比 v1.0.1 多一个提交，修复了跳板模板条目为空时的未定义行为，其 VERSION 文件为 1.0.1。","build.sh 在检查 gcc、g++、make、binutils、xxd、markdown 和 zlib 头文件后构建 e9patch 与 e9tool，并提示对应的 Debian/Ubuntu 软件包名；Zydis 与 libdw 以源码形式随附在 contrib 目录下。修补函数需用 e9compile.sh 以 gcc 和独立环境（freestanding）编译选项编译。README 面向 x86_64 Linux；源码中另有 PE 处理代码和一个自称概念验证的 Windows 示例，但使用指南未作说明。","输入为用户自己的 ELF 可执行文件或共享库，默认输出到 a.out 或 a.so。指南指出内置的线性反汇编器可能错误处理代码与数据混杂的二进制，因此支持通过 --use-disasm 和 --use-targets 读入其他分析工具生成的 CSV 文件。CFR 模式基于启发式，稳健性较低；在 -100 模式下，被重写的程序自行安装 SIGILL 处理函数时会以 ENOSYS 失败。","GPL-3.0 许可证，examples/stdlib.c 等个别文件按其文件头声明采用 MIT。"],"targets":["binary"],"url":"https://github.com/GJDuck/e9patch","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/LavaGang/MelonLoader/blob/5aff4d9d7c16ae153aad2f1035114dbc2713bf99/LICENSE.md","https://github.com/LavaGang/MelonLoader/blob/5aff4d9d7c16ae153aad2f1035114dbc2713bf99/Directory.Build.props","https://github.com/LavaGang/MelonLoader/blob/5aff4d9d7c16ae153aad2f1035114dbc2713bf99/RELEASE-NOTES.md","https://github.com/LavaGang/MelonLoader/blob/5aff4d9d7c16ae153aad2f1035114dbc2713bf99/Dependencies/Il2CppAssemblyGenerator/RemoteAPI.cs","https://github.com/LavaGang/MelonLoader/blob/5aff4d9d7c16ae153aad2f1035114dbc2713bf99/Dependencies/Il2CppAssemblyGenerator/Packages/Cpp2IL.cs","https://github.com/LavaGang/MelonLoader/releases/tag/v0.7.3","https://github.com/LavaGang/MelonLoader/compare/v0.7.3...5aff4d9d7c16ae153aad2f1035114dbc2713bf99"],"category":"game-analysis","description_en":"Mod loader for Unity games on both the Mono and IL2CPP runtimes, which loads plugins and mods from folders in a locally installed game; on Windows a proxy DLL, version.dll by default, starts it with the game. For IL2CPP games its assembly generator runs Cpp2IL and Il2CppInterop to produce managed interop assemblies, and HarmonyX and MonoMod are bundled for runtime patching. Its logs can capture Unity player output and Harmony messages, and debug options provide a Mono debug server for Mono games and a wait-for-debugger option for IL2CPP games.","description_zh":"面向 Mono 和 IL2CPP 两种运行时 Unity 游戏的模组加载器，从本地安装游戏目录中的文件夹加载插件和模组；在 Windows 上通过代理 DLL（默认为 version.dll）随游戏一同启动。对于 IL2CPP 游戏，其程序集生成器会调用 Cpp2IL 和 Il2CppInterop 生成托管互操作程序集，并随附 HarmonyX 与 MonoMod 用于运行时修补。其日志可捕获 Unity 播放器输出与 Harmony 消息，调试选项还为 Mono 游戏提供 Mono 调试服务器，为 IL2CPP 游戏提供等待调试器附加的选项。","entry_url":"https://awesomerea.org/resources/melonloader/","entry_url_zh":"https://awesomerea.org/zh/resources/melonloader/","evidence_url":"https://github.com/LavaGang/MelonLoader/blob/5aff4d9d7c16ae153aad2f1035114dbc2713bf99/README.md","group":"tools","id":"melonloader","json_url":"https://awesomerea.org/resources/melonloader/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/melonloader/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/melonloader/index.md","name":"MelonLoader","name_zh":"MelonLoader Unity 游戏模组加载器","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.7.3, published 2026-05-14, with Windows x64/x86, Linux x64 and macOS x64 archives plus Windows, Linux and macOS installers; the README also links nightly builds. The reviewed master commit (2026-10-01) declares the unreleased 0.7.4, 69 commits after v0.7.3, and its pending release notes add macOS arm64 support. The README links Linux instructions for Wine, Proton and native games, and marks Android and Oculus Quest support as work in progress.","The README lists the .NET 6.0 Desktop Runtime as a requirement for IL2CPP games, installed automatically on Windows. The installer or a manual install places MelonLoader and its proxy DLL in the user's own game folder, where the Plugins, Mods, logs and UserData/Loader.cfg configuration are created; some games need one of the alternative proxy file names. Source builds use the dotnet SDK, and the projects target Mono, Mono bleeding-edge and .NET frameworks.","On IL2CPP games the assembly generator queries MelonLoader's remote API by game name for settings such as a Cpp2IL version, obfuscation regex or deobfuscation mapping, and the README lists Cpp2IL, Unity runtime libraries and the .NET runtime as downloaded at run time. Configuration and launch options can force offline generation, a dumper version or regeneration.","Apache-2.0; bundled libraries such as Dobby, plthook, HarmonyX, MonoMod, Mono.Cecil, AsmResolver and Il2CppInterop (LGPL-3.0) keep their own licenses, and the README says the downloaded Unity runtime libraries are subject to Unity's terms of service. Game license terms are separate."],"requirements_zh":["审阅时最新发布版为 v0.7.3，于 2026-05-14 发布，提供 Windows x64/x86、Linux x64 和 macOS x64 压缩包，以及 Windows、Linux 和 macOS 安装程序；README 还提供了每夜构建的链接。所审阅的 master 提交（2026-10-01）声明的版本为尚未发布的 0.7.4，比 v0.7.3 多 69 个提交，其待发布说明中新增了 macOS arm64 支持。README 链接了适用于 Wine、Proton 和原生 Linux 游戏的说明，并将 Android 和 Oculus Quest 支持标为开发中。","README 将 .NET 6.0 桌面运行时列为 IL2CPP 游戏的必要条件，在 Windows 上会自动安装。通过安装程序或手动安装，MelonLoader 及其代理 DLL 会放入使用者自己的游戏目录，并在其中创建 Plugins、Mods、日志目录和 UserData/Loader.cfg 配置文件；部分游戏需改用其他可选的代理文件名。从源码构建需使用 dotnet SDK，各项目面向 Mono、Mono bleeding-edge 和 .NET 框架。","在 IL2CPP 游戏上，程序集生成器会按游戏名称查询 MelonLoader 的远程 API，获取 Cpp2IL 版本、混淆名正则或反混淆映射等设置；README 列明 Cpp2IL、Unity 运行时库和 .NET 运行时会在运行时下载。可通过配置文件或启动参数强制离线生成、指定转储器版本或重新生成。","采用 Apache-2.0 许可；随附的 Dobby、plthook、HarmonyX、MonoMod、Mono.Cecil、AsmResolver 和 Il2CppInterop（LGPL-3.0）等库保留各自的许可，README 还说明下载的 Unity 运行时库受 Unity 服务条款约束。游戏本身的许可条款与此相互独立。"],"targets":["game"],"url":"https://github.com/LavaGang/MelonLoader","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/lifting-bits/rellic/blob/370abaad86ae5adad82f85b81aff14557462b7f2/README.md#L179-L326","https://github.com/lifting-bits/rellic/blob/370abaad86ae5adad82f85b81aff14557462b7f2/docs/NoMoreGotos.pdf","https://github.com/lifting-bits/rellic/blob/370abaad86ae5adad82f85b81aff14557462b7f2/tools/xref/README.md","https://github.com/lifting-bits/rellic/blob/370abaad86ae5adad82f85b81aff14557462b7f2/tools/headergen/README.md","https://github.com/lifting-bits/rellic/blob/370abaad86ae5adad82f85b81aff14557462b7f2/tools/plugins/ida-rellic.py","https://github.com/lifting-bits/rellic/blob/370abaad86ae5adad82f85b81aff14557462b7f2/CMakeLists.txt","https://github.com/lifting-bits/rellic/blob/370abaad86ae5adad82f85b81aff14557462b7f2/LICENSE","https://github.com/lifting-bits/rellic/releases/tag/v0.2.3","https://github.com/lifting-bits/rellic/compare/v0.2.3...370abaad86ae5adad82f85b81aff14557462b7f2"],"category":"binary-libraries","description_en":"Trail of Bits implementation of the pattern-independent structuring algorithm from the No More Gotos paper, turning LLVM bitcode into goto-free C as a small, hackable decompiler back end that interoperates with LLVM and Remill. rellic-decomp translates a bitcode module to C in batch, rellic-xref serves a web interface for choosing refinement passes and linking C AST nodes to the bitcode that produced them, and rellic-headergen emits C layouts of data structures from a module's DWARF metadata. Machine code must first be lifted to bitcode by another tool; a bundled IDA script uses Anvill for that step.","description_zh":"Trail of Bits 对 No More Gotos 论文中模式无关结构化算法的实现，可把 LLVM bitcode 转换为不含 goto 的 C 代码，定位为小巧、易于修改且能与 LLVM 和 Remill 互操作的反编译器后端。rellic-decomp 批量将 bitcode 模块转换为 C；rellic-xref 提供 Web 界面，可选择要应用的细化遍，并将 C AST 节点与生成它的 bitcode 相互对应；rellic-headergen 根据模块中的 DWARF 元数据生成描述数据结构布局的 C 代码。机器码须先由其他工具提升为 bitcode；仓库附带的 IDA 脚本借助 Anvill 完成这一步。","entry_url":"https://awesomerea.org/resources/rellic/","entry_url_zh":"https://awesomerea.org/zh/resources/rellic/","evidence_url":"https://github.com/lifting-bits/rellic/blob/370abaad86ae5adad82f85b81aff14557462b7f2/README.md","group":"tools","id":"rellic","json_url":"https://awesomerea.org/resources/rellic/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/rellic/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rellic/index.md","name":"Rellic","name_zh":"Rellic LLVM bitcode 转 C 反编译器","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.2.3, published 2023-04-04, with LLVM 15 builds: deb and tgz packages for Ubuntu 20.04 and a tgz package for macOS 11. The reviewed master commit (2025-11-03) is 13 commits ahead and comments out the AnghaBench CI cron jobs; the code commits before it date from April 2024.","The README supports Linux, tested on Ubuntu 22.04, and also documents a macOS build. Building needs CMake 3.21+, LLVM and Clang 16, Z3 4.7.1+, gflags and glog, most of which come from Trail of Bits' prebuilt cxx-common packages; scripts/build.sh downloads the rest and produces a deb package. Docker images on Docker Hub and the GitHub Package Registry are parameterized by Ubuntu and LLVM version.","Input is an LLVM bitcode module built with the same LLVM version as the decompiler. C sources can be compiled with clang -emit-llvm, but executables need a separate lifter such as Remill or Anvill. The README's examples show output whose control flow and variable types differ from the original source, and its AnghaBench 1,000-program test only checks that bitcode translates to C, not the readability or behavior of the result.","Apache-2.0 license. The roundtrip tests compile C to IR and back and check that the result builds and behaves roughly like the original. By default rellic-xref listens on all addresses, on port 80."],"requirements_zh":["审阅时最新版本为 v0.2.3，发布于 2023-04-04，提供基于 LLVM 15 的构建：Ubuntu 20.04 的 deb 与 tgz 包，以及 macOS 11 的 tgz 包。所审阅的 master 提交（2025-11-03）比该版本多 13 个提交，内容是注释掉 AnghaBench CI 定时任务；此前的代码提交日期为 2024 年 4 月。","README 称支持 Linux，并在 Ubuntu 22.04 上测试过，另外也说明了 macOS 上的构建方法。构建需要 CMake 3.21+、LLVM 与 Clang 16、Z3 4.7.1+、gflags 和 glog，其中大部分可由 Trail of Bits 预构建的 cxx-common 包提供；scripts/build.sh 会下载其余依赖并生成 deb 包。Docker Hub 和 GitHub Package Registry 上的 Docker 镜像按 Ubuntu 与 LLVM 版本区分。","输入为与反编译器使用相同 LLVM 版本构建的 LLVM bitcode 模块。C 源码可用 clang -emit-llvm 编译得到，而可执行文件需借助 Remill 或 Anvill 等独立提升器处理。README 示例中输出的控制流和变量类型与原始源码不同；其 AnghaBench 1,000 个程序的测试只检查 bitcode 能否转换为 C，不检查结果的可读性或行为。","Apache-2.0 许可证。往返测试将 C 编译为 IR 再转回 C，检查结果能否构建且行为与原程序大致相同。rellic-xref 默认监听所有地址的 80 端口。"],"targets":["binary"],"url":"https://github.com/lifting-bits/rellic","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/boricj/ghidra-delinker-extension/blob/b3890c4443e4ab802c26b66d84821d3ac9362c18/README.md#L22-L63","https://github.com/boricj/ghidra-delinker-extension/blob/b3890c4443e4ab802c26b66d84821d3ac9362c18/.github/workflows/build.yaml","https://github.com/boricj/ghidra-delinker-extension/blob/b3890c4443e4ab802c26b66d84821d3ac9362c18/ghidra_scripts/DelinkProgram.java","https://github.com/boricj/ghidra-delinker-extension/tree/b3890c4443e4ab802c26b66d84821d3ac9362c18/src/test/resources/programs","https://github.com/boricj/ghidra-delinker-extension/blob/b3890c4443e4ab802c26b66d84821d3ac9362c18/LICENSE","https://github.com/boricj/ghidra-delinker-extension/releases/tag/v0.9.2","https://boricj.net/tenchu1/2024/05/31/part-11.html"],"category":"native-analysis","description_en":"Ghidra extension that delinks a selected part of a program back into a relocatable object file. Its relocation table synthesizer analyzer reconstructs, from the Ghidra database, the relocations a linker normally discards, and its exporters write COFF (x86, x86-64), ELF (x86, x86-64, MIPS) or OMF (x86) objects with symbols and relocation tables that a toolchain can link again. The README lists binary patching through the linker, software ports, format conversion, library extraction and decompilation projects that reimplement a program one object file at a time among its uses.","description_zh":"Ghidra 扩展，可把程序中选定的部分“反链接”回可重定位目标文件。其重定位表合成分析器根据 Ghidra 数据库重建链接器通常会丢弃的重定位信息，导出器则写出带符号表和重定位表、可由工具链重新链接的 COFF（x86、x86-64）、ELF（x86、x86-64、MIPS）或 OMF（x86）目标文件。README 列出的用途包括借助链接器打二进制补丁、软件移植、格式转换、提取库，以及逐个目标文件重新实现程序的反编译项目。","entry_url":"https://awesomerea.org/resources/ghidra-delinker-extension/","entry_url_zh":"https://awesomerea.org/zh/resources/ghidra-delinker-extension/","evidence_url":"https://github.com/boricj/ghidra-delinker-extension/blob/b3890c4443e4ab802c26b66d84821d3ac9362c18/README.md","group":"tools","id":"ghidra-delinker-extension","json_url":"https://awesomerea.org/resources/ghidra-delinker-extension/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ghidra-delinker-extension/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghidra-delinker-extension/index.md","name":"ghidra-delinker-extension","name_zh":"ghidra-delinker-extension Ghidra 目标文件反链接扩展","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.9.2, published 2026-09-26 at the reviewed commit, with separate extension archives for Ghidra 12.0.4, 12.1, 12.1.2, 12.1.3 and 12.1.4; use the archive built for the installed Ghidra release. CI builds with JDK 21.","Source builds need GHIDRA_INSTALL_DIR and Gradle. Dependencies come from GitHub's Maven registry, which requires a token with read:packages, or from vendored submodules through gradle installStandaloneDeps. After installation, RelocationTableSynthesizedPlugin is enabled from Ghidra's Experimental plugin list; a bundled DelinkProgram script covers headless use.","Input is a program already loaded and analyzed in Ghidra. The README warns that synthesized relocations depend on the accuracy of the Ghidra database, so incorrect or missing information can break or miss relocations, and advises rerunning the analyzer right before each export. Only the listed format and architecture combinations are supported.","Apache-2.0. The test references are built from C sources in the repository. The README's examples link the author's blog series, including one on decompiling the PlayStation game Tenchu: Stealth Assassins."],"requirements_zh":["审阅时最新版本为 v0.9.2，发布于 2026-09-26，正对应所审阅的提交，分别为 Ghidra 12.0.4、12.1、12.1.2、12.1.3 和 12.1.4 提供扩展压缩包；应选用与已安装 Ghidra 版本对应的包。CI 使用 JDK 21 构建。","从源码构建需要设置 GHIDRA_INSTALL_DIR 并使用 Gradle。依赖来自 GitHub 的 Maven 仓库，需要具备 read:packages 权限的令牌；也可以通过 gradle installStandaloneDeps 从内置的子模块构建依赖。安装后需在 Ghidra 的 Experimental 插件列表中启用 RelocationTableSynthesizedPlugin；随附的 DelinkProgram 脚本可用于无界面模式。","输入应为已在 Ghidra 中加载并分析的程序。README 提醒，合成的重定位依赖 Ghidra 数据库的准确性，信息错误或缺失可能导致重定位出错或遗漏，并建议每次导出前重新运行该分析器。仅支持表中所列的格式与架构组合。","采用 Apache-2.0 许可。测试用参考文件由仓库中的 C 源码构建。README 的示例链接了作者的博客系列，其中包括反编译 PlayStation 游戏《天诛》（Tenchu: Stealth Assassins）的系列文章。"],"targets":["binary","game"],"url":"https://github.com/boricj/ghidra-delinker-extension","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/BepInEx/BepInEx/blob/6cea286d204eb3754d3b8363a5a1fd6640164a49/LICENSE","https://github.com/BepInEx/BepInEx/blob/6cea286d204eb3754d3b8363a5a1fd6640164a49/Directory.Build.props","https://github.com/BepInEx/BepInEx/blob/6cea286d204eb3754d3b8363a5a1fd6640164a49/docs/BUILDING.md","https://github.com/BepInEx/BepInEx/blob/6cea286d204eb3754d3b8363a5a1fd6640164a49/Runtimes/Unity/BepInEx.Unity.IL2CPP/Il2CppInteropManager.cs#L48-L110","https://github.com/BepInEx/BepInEx/blob/6cea286d204eb3754d3b8363a5a1fd6640164a49/BepInEx.Preloader.Core/Patching/AssemblyPatcher.cs","https://github.com/BepInEx/BepInEx/releases/tag/v5.4.23.5","https://github.com/BepInEx/BepInEx/releases/tag/v6.0.0-pre.2","https://docs.bepinex.dev/master/articles/user_guide/installation/index.html","https://docs.bepinex.dev/master/articles/dev_guide/runtime_patching.html","https://docs.bepinex.dev/master/articles/dev_guide/preloader_patchers.html"],"category":"game-analysis","description_en":"Plugin and patching framework for Unity Mono, Unity IL2CPP and .NET Framework games such as XNA, FNA and MonoGame titles, which loads mods and analysis plugins into a locally installed game. Plugins patch methods at runtime with the bundled HarmonyX and MonoMod.RuntimeDetour, while preloader patchers rewrite managed assemblies with Mono.Cecil before the game loads them; on IL2CPP games it runs Cpp2IL and Il2CppInterop to generate interop assemblies from the game binary and global-metadata.dat. Its guides also cover configuration, logging, and debugging plugins and game assemblies with dnSpy.","description_zh":"面向 Unity Mono、Unity IL2CPP 以及 XNA、FNA、MonoGame 等 .NET Framework 游戏的插件与修补框架，可将模组和分析插件加载到本地安装的游戏中。插件借助随附的 HarmonyX 和 MonoMod.RuntimeDetour 在运行时修补方法，预加载修补器则在游戏加载托管程序集之前用 Mono.Cecil 改写它们；在 IL2CPP 游戏上，它会调用 Cpp2IL 和 Il2CppInterop，从游戏二进制和 global-metadata.dat 生成互操作程序集。其指南还介绍了配置、日志，以及用 dnSpy 调试插件和游戏程序集。","entry_url":"https://awesomerea.org/resources/bepinex/","entry_url_zh":"https://awesomerea.org/zh/resources/bepinex/","evidence_url":"https://github.com/BepInEx/BepInEx/blob/6cea286d204eb3754d3b8363a5a1fd6640164a49/README.md","group":"tools","id":"bepinex","json_url":"https://awesomerea.org/resources/bepinex/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/bepinex/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bepinex/index.md","name":"BepInEx","name_zh":"BepInEx Unity/.NET 游戏插件与修补框架","record_type":"resource","relationship":"foundation","requirements":["Latest stable release at review: v5.4.23.5, published 2026-02-08 from the v5-lts branch, with Windows x86/x64, Linux x86/x64, macOS universal and patcher archives; the README says only Unity Mono has stable releases. The reviewed master commit (2026-10-16) declares the unreleased 6.0.0 and is 75 commits after the latest 6.x prerelease, v6.0.0-pre.2 from 2024-08-27, which ships Unity Mono, Unity IL2CPP and .NET builds; newer bleeding-edge builds are published separately. The guides note that the preloader-patcher contract changed between v5 and v6.","The README's compatibility chart lists Unity Mono on Windows, macOS and Linux, Unity IL2CPP on Windows and Linux but not macOS or ARM, and .NET/XNA games on Windows or through Mono on macOS and Linux. The master installation guide lists Windows 7–10, Linux distributions with GCC 10+, macOS 10.13+ and Unity 3 or newer. Source builds use the bundled Cake script and need .NET 6.0 or newer.","BepInEx installs into the user's own game directory: the guide identifies Unity Mono games by a Managed folder and IL2CPP games by il2cpp_data. IL2CPP interop generation reads the game's binary and global-metadata.dat and, by default, downloads managed Unity base libraries for the game's Unity version from unity.bepinex.dev; a configuration option points it to a locally placed archive instead. Some games need the documented troubleshooting steps.","LGPL-2.1 (LGPL-2.1-only in the package metadata); the libraries it uses, including UnityDoorstop, HarmonyX, MonoMod, Mono.Cecil, Cpp2IL and Il2CppInterop, keep their own licenses. Game license terms are separate from the framework's license."],"requirements_zh":["审阅时最新稳定版为 v5.4.23.5，于 2026-02-08 从 v5-lts 分支发布，提供 Windows x86/x64、Linux x86/x64、macOS 通用版和修补器压缩包；README 称目前只有 Unity Mono 提供稳定版。所审阅的 master 提交（2026-10-16）声明的版本为尚未发布的 6.0.0，比最新的 6.x 预发布版 v6.0.0-pre.2（2024-08-27，提供 Unity Mono、Unity IL2CPP 和 .NET 构建）多 75 个提交；更新的 bleeding edge 构建另行发布。指南指出，预加载修补器的接口约定在 v5 与 v6 之间有所变化。","README 的兼容性表列出：Unity Mono 支持 Windows、macOS 和 Linux；Unity IL2CPP 支持 Windows 和 Linux，不支持 macOS 和 ARM；.NET/XNA 游戏支持 Windows，在 macOS 和 Linux 上需通过 Mono 运行。master 分支的安装指南列出 Windows 7–10、带 GCC 10+ 的 Linux 发行版、macOS 10.13+ 以及 Unity 3 或更新版本。从源码构建使用随附的 Cake 脚本，需要 .NET 6.0 或更新版本。","BepInEx 安装在使用者自己的游戏目录中：指南以 Managed 文件夹识别 Unity Mono 游戏，以 il2cpp_data 识别 IL2CPP 游戏。IL2CPP 互操作程序集的生成会读取游戏二进制和 global-metadata.dat，并默认从 unity.bepinex.dev 下载与游戏 Unity 版本对应的托管 Unity 基础库；也可通过配置项改用本地放置的压缩包。部分游戏需按文档中的故障排除步骤处理。","采用 LGPL-2.1 许可（软件包元数据为 LGPL-2.1-only）；其使用的 UnityDoorstop、HarmonyX、MonoMod、Mono.Cecil、Cpp2IL 和 Il2CppInterop 等库保留各自的许可。游戏本身的许可条款与该框架的许可相互独立。"],"targets":["game"],"url":"https://github.com/BepInEx/BepInEx","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/google/binexport/blob/1fc1d734db5924c9bc9067ae244cb9b94c94efcb/README.md#L26-L60","https://github.com/google/binexport/blob/1fc1d734db5924c9bc9067ae244cb9b94c94efcb/README.md#L242-L262","https://github.com/google/binexport/blob/1fc1d734db5924c9bc9067ae244cb9b94c94efcb/binexport2.proto","https://github.com/google/binexport/blob/1fc1d734db5924c9bc9067ae244cb9b94c94efcb/java/README.md","https://github.com/google/binexport/blob/1fc1d734db5924c9bc9067ae244cb9b94c94efcb/LICENSE","https://github.com/google/binexport/releases/tag/v12-20240417-ghidra_11.0.3"],"category":"binary-diffing","description_en":"The exporter component of BinDiff: plugins for IDA Pro and Binary Ninja and an extension for Ghidra that write an analyzed disassembly to the Protocol Buffer format BinDiff requires. The BinExport2 schema covers instructions with their operands and expressions, basic blocks, flow graphs, the call graph, sections, strings, comments and data references; the exporter can also write a statistics text file or a text dump for debugging. Exports can be scripted through IDC or IDAPython in IDA and through a BinExport.java script that also runs in Ghidra's headless analyzer.","description_zh":"BinDiff 的导出组件：为 IDA Pro 和 Binary Ninja 提供插件、为 Ghidra 提供扩展，把已分析的反汇编结果写成 BinDiff 所需的 Protocol Buffer 格式。BinExport2 模式涵盖带操作数和表达式的指令、基本块、流程图、调用图、节区、字符串、注释和数据引用；导出器还可输出统计文本文件或用于调试的文本转储。在 IDA 中可通过 IDC 或 IDAPython 脚本导出，在 Ghidra 中可使用同样能在无界面分析器中运行的 BinExport.java 脚本。","entry_url":"https://awesomerea.org/resources/binexport/","entry_url_zh":"https://awesomerea.org/zh/resources/binexport/","evidence_url":"https://github.com/google/binexport/blob/1fc1d734db5924c9bc9067ae244cb9b94c94efcb/README.md","group":"tools","id":"binexport","json_url":"https://awesomerea.org/resources/binexport/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/binexport/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binexport/index.md","name":"BinExport","name_zh":"BinExport 反汇编导出插件","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v12-20240417-ghidra_11.0.3, published 2024-04-17, with Linux, macOS and Windows plugin archives and a Ghidra 11.0.3 extension; the release notes say its artifacts are not code-signed. The reviewed main commit is 111 commits ahead of that release, and its README requires IDA Pro 9.4 or later and drops the 8.x series, so the current README describes plugins that no release yet provides.","Requires a separately licensed IDA Pro or Binary Ninja installation, or Ghidra; Binary Ninja integration is minimal and the Ghidra extension is described as experimental. Users supply their own binaries and analysis databases, and BinDiff itself is a separate tool.","Native builds need CMake 3.20+, Boost 1.83+ (a partial copy is bundled), GCC 15 or recent Clang on Linux and macOS or Visual Studio 2022 with the Windows 11 SDK, and download Abseil, GoogleTest, Protocol Buffers and the IDA and Binary Ninja SDKs; Debian 11 is the preferred Linux build environment. The Ghidra extension builds with OpenJDK 21+, Gradle 8.7+ and Ghidra 11.0.3.","Apache-2.0. The README states that it is not an official Google product."],"requirements_zh":["审阅时最新版本为 v12-20240417-ghidra_11.0.3，发布于 2024-04-17，提供 Linux、macOS 和 Windows 插件压缩包以及 Ghidra 11.0.3 扩展；发布说明指出这些构件未经代码签名。所审阅的 main 分支提交领先该版本 111 个提交，其 README 要求 IDA Pro 9.4 或更高版本并已停止支持 8.x 系列，因此当前 README 描述的插件尚无对应的发布版本。","需要另行获得授权的 IDA Pro 或 Binary Ninja，或安装 Ghidra；Binary Ninja 集成仍较简略，Ghidra 扩展被描述为实验性版本。用户需自备二进制文件和分析数据库；BinDiff 本身是另一个独立工具。","原生插件构建需要 CMake 3.20+、Boost 1.83+（仓库附带部分副本）、在 Linux 和 macOS 上使用 GCC 15 或较新的 Clang、在 Windows 上使用 Visual Studio 2022 与 Windows 11 SDK，并会下载 Abseil、GoogleTest、Protocol Buffers 以及 IDA 和 Binary Ninja SDK；Linux 首选构建环境为 Debian 11。Ghidra 扩展使用 OpenJDK 21+、Gradle 8.7+ 和 Ghidra 11.0.3 构建。","采用 Apache-2.0 许可。README 声明它不是 Google 官方产品。"],"targets":["binary"],"url":"https://github.com/google/binexport","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/CheckPointSW/Karta/blob/7a3d0d302f59b2098b1792f1d4ac881e6c5d21b0/docs/Installation.md","https://github.com/CheckPointSW/Karta/blob/7a3d0d302f59b2098b1792f1d4ac881e6c5d21b0/docs/Open%20Source%20Fingerprinting.md","https://github.com/CheckPointSW/Karta/blob/7a3d0d302f59b2098b1792f1d4ac881e6c5d21b0/docs/Matching%20supported%20libraries.md","https://github.com/CheckPointSW/Karta/blob/7a3d0d302f59b2098b1792f1d4ac881e6c5d21b0/docs/Compiling%20a%20configuration.md","https://github.com/CheckPointSW/Karta/blob/7a3d0d302f59b2098b1792f1d4ac881e6c5d21b0/docs/Thumbs%20Up.md","https://github.com/CheckPointSW/Karta/blob/7a3d0d302f59b2098b1792f1d4ac881e6c5d21b0/docs/disassembler.md","https://github.com/CheckPointSW/Karta/blob/7a3d0d302f59b2098b1792f1d4ac881e6c5d21b0/setup.py","https://github.com/CheckPointSW/Karta/blob/7a3d0d302f59b2098b1792f1d4ac881e6c5d21b0/requirements.txt","https://github.com/CheckPointSW/Karta/blob/7a3d0d302f59b2098b1792f1d4ac881e6c5d21b0/LICENSE","https://github.com/CheckPointSW/Karta/tree/7a3d0d302f59b2098b1792f1d4ac881e6c5d21b0/src/libs","https://github.com/CheckPointSW/Karta/tree/7a3d0d302f59b2098b1792f1d4ac881e6c5d21b0/configs","https://github.com/CheckPointSW/Karta/releases/tag/v2.1.0"],"category":"binary-diffing","description_en":"Source-code-assisted IDA Python plugin from Check Point Research that finds and matches open-source libraries compiled into large binaries and firmware. Its identifier script reports which supported libraries, such as OpenSSL, zlib, libpng and net-snmp, are present and fingerprints their versions; the matcher then uses a JSON configuration built from that library version to locate its compiled files by their original function order, match their functions and the external libc functions they call, and export selected matches as IDA names. The bundled Thumbs Up scripts improve IDA's function analysis beforehand, including ARM/Thumb separation in firmware.","description_zh":"Check Point Research 开发的源码辅助 IDA Python 插件，用于在大型二进制和固件中查找并匹配编译进去的开源库。识别脚本会列出二进制中存在哪些受支持的库（如 OpenSSL、zlib、libpng 和 net-snmp），并识别其版本；匹配脚本再借助由该库版本生成的 JSON 配置，按原始函数顺序定位各个编译单元，匹配其中的函数及其调用的外部 libc 函数，并可把选定的匹配结果作为名称导入 IDA。附带的 Thumbs Up 脚本可预先改进 IDA 的函数分析，包括区分固件中的 ARM 与 Thumb 代码。","entry_url":"https://awesomerea.org/resources/karta/","entry_url_zh":"https://awesomerea.org/zh/resources/karta/","evidence_url":"https://github.com/CheckPointSW/Karta/blob/7a3d0d302f59b2098b1792f1d4ac881e6c5d21b0/README.md","group":"tools","id":"karta","json_url":"https://awesomerea.org/resources/karta/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/karta/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/karta/index.md","name":"Karta","name_zh":"Karta 开源库匹配插件","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v2.1.0, published 2021-05-18; the reviewed master commit, from 2022-03-15, adds only README and CI workflow changes. The README says the original author can no longer maintain the repository after leaving Check Point Research, citing the IDA Pro versions and regression-test requirements involved.","Requires IDA Pro 7.4 or newer with Python 3; v1.2.0 is the last release for Python 2 and older IDA versions. setup.py installs dependencies including elementals, sark, click and scikit-learn, while requirements.txt still names the old sklearn package. The scripts are loaded through IDA's script-file menu rather than installed as plugins. IDA is the only implemented disassembler backend, although the docs describe an interface for adding others.","Run the scripts on a binary that IDA has already analyzed well, and select the Windows option for Windows-compiled binaries. Matching needs a configuration for the exact library version: the repository ships configurations for OpenSSL 1.0.1j, libpng 1.2.29, libtiff 4.0.8 and zlib 1.2.3 and 1.2.11, and others are generated with karta_analyze_src.py, which also drives IDA, from the static library and object files of a library you compile yourself, following the notes in compilations/. Upstream advises backing up the binary before Thumbs Up, which makes major changes to its analysis.","MIT license. The identifier covers 15 library modules, including the closed-source Treck library, which is detected only. Matches are heuristic proposals whose matching rules differ in accuracy and are shown in different colors, so they need analyst review."],"requirements_zh":["审阅时最新版本为 v2.1.0，发布于 2021-05-18；所审阅的 master 分支提交日期为 2022-03-15，此后只增加了 README 和 CI 工作流的改动。README 称原作者离开 Check Point Research 后已无法继续维护该仓库，原因是运行全部回归测试的要求繁多，且涉及多个 IDA Pro 版本。","需要 IDA Pro 7.4 或更高版本及 Python 3；v1.2.0 是支持 Python 2 和旧版 IDA 的最后一个版本。setup.py 会安装 elementals、sark、click 和 scikit-learn 等依赖，而 requirements.txt 仍写着已弃用的 sklearn 包名。这些脚本通过 IDA 的脚本文件菜单加载，无需安装为插件。目前只实现了 IDA 这一种反汇编器后端，文档虽介绍了接入其他反汇编器的接口。","应在 IDA 已充分分析的二进制上运行这些脚本；Windows 编译的二进制需勾选 Windows 选项。匹配需要对应库确切版本的配置：仓库自带 OpenSSL 1.0.1j、libpng 1.2.29、libtiff 4.0.8 以及 zlib 1.2.3 和 1.2.11 的配置，其他版本需按照 compilations/ 中的说明自行编译该库，再用 karta_analyze_src.py（同样需要调用 IDA）从静态库和目标文件生成配置。上游建议在运行 Thumbs Up 前备份二进制，因为它会大幅修改分析结果。","采用 MIT 许可。识别脚本包含 15 个库模块，其中闭源的 Treck 库只能检测是否存在。匹配结果是启发式的候选，不同匹配规则的准确度不同并以不同颜色标示，需要分析人员复核。"],"targets":["binary","firmware"],"url":"https://github.com/CheckPointSW/Karta","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/vtil-project/VTIL-Core/blob/9ebee8e890a3a8923cc41f07821f740910e7c9b2/CMakeLists.txt","https://github.com/vtil-project/VTIL-Core/blob/9ebee8e890a3a8923cc41f07821f740910e7c9b2/Docs/COMPILE.md","https://github.com/vtil-project/VTIL-Core/blob/9ebee8e890a3a8923cc41f07821f740910e7c9b2/VTIL-Common/CMakeLists.txt","https://github.com/vtil-project/VTIL-Core/blob/9ebee8e890a3a8923cc41f07821f740910e7c9b2/Dependencies/capstone/CMakeLists.txt","https://github.com/vtil-project/VTIL-Core/blob/9ebee8e890a3a8923cc41f07821f740910e7c9b2/Dependencies/keystone/CMakeLists.txt","https://github.com/vtil-project/VTIL-Core/tree/9ebee8e890a3a8923cc41f07821f740910e7c9b2/VTIL-Compiler/optimizer","https://github.com/vtil-project/VTIL-Core/tree/9ebee8e890a3a8923cc41f07821f740910e7c9b2/Sample%20Routines","https://github.com/vtil-project/VTIL-Core/blob/9ebee8e890a3a8923cc41f07821f740910e7c9b2/.github/workflows/build.yml","https://github.com/vtil-project/VTIL-Core/blob/9ebee8e890a3a8923cc41f07821f740910e7c9b2/LICENSE.md","https://github.com/keystone-engine/keystone/blob/dc7932ef2b2c4a793836caec6ecab485005139d6/EXCEPTIONS-CLIENT"],"category":"binary-libraries","description_en":"C++20 core of the VTIL (Virtual-machine Translation Intermediate Language) project, an intermediate language and optimizing compiler that the README describes as built for binary de-obfuscation and de-virtualization. Unlike LLVM IR, VTIL keeps the native stack, physical registers and non-SSA form, so code from register or stack machines can be lifted into it, native instructions can stay inline, and code can be emitted back at any virtual address. The library provides the IL with routines, basic blocks and serialization, a symbolic expression engine and simplifier, optimizer passes such as dead-code elimination, propagation and stack pinning, and Capstone/Keystone-based AMD64 and ARM64 disassembly and assembly helpers.","description_zh":"VTIL（Virtual-machine Translation Intermediate Language，虚拟机翻译中间语言）项目的 C++20 核心库。VTIL 是一种中间语言及优化编译器，README 称其专为二进制去混淆与去虚拟化分析而设计。与 LLVM IR 不同，VTIL 保留原生栈、物理寄存器和非 SSA 形式，因此寄存器机或栈机代码都能提升到其中，原生指令可直接嵌入 IL 流，代码也能重新输出到任意虚拟地址。该库提供包含例程、基本块和序列化的 IL、符号表达式引擎与化简器、死代码消除、传播和栈固定等优化遍，以及基于 Capstone/Keystone 的 AMD64 与 ARM64 反汇编和汇编辅助功能。","entry_url":"https://awesomerea.org/resources/vtil-core/","entry_url_zh":"https://awesomerea.org/zh/resources/vtil-core/","evidence_url":"https://github.com/vtil-project/VTIL-Core/blob/9ebee8e890a3a8923cc41f07821f740910e7c9b2/README.md","group":"tools","id":"vtil-core","json_url":"https://awesomerea.org/resources/vtil-core/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/vtil-core/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/vtil-core/index.md","name":"VTIL-Core","name_zh":"VTIL-Core 虚拟机翻译中间语言核心库","record_type":"resource","relationship":"foundation","requirements":["No releases or tags; the README says the repository is incomplete because the initial release is not done, and further documentation is still to come. The reviewed master commit (2026-07-27) only edits the README; the preceding code commits date from 2026-04-04 and 2026-04-05.","Build with CMake 3.16+ and a C++20 compiler: generate a Visual Studio solution on Windows, or use Ninja on Linux and macOS, where Apple Silicon builds need -DCMAKE_OSX_ARCHITECTURES=x86_64. CMake fetches Capstone and Keystone at pinned commits, and CI builds on Windows Server 2022, Ubuntu 24.04 and macOS 14.","This is a library for analyzing virtualized or obfuscated code: the user supplies a lifter that translates the code under analysis into VTIL routines, which can then be optimized, inspected or re-emitted. The reviewed tree contains no lifter for a particular virtual machine or protector. Its Sample Routines folder holds 2020 .vtil test routines next to the small C test functions they correspond to, which commit messages describe as VMProtect tests.","BSD-3-Clause license. The fetched dependencies keep their own licenses: Capstone's BSD-style license, and Keystone's GPL-2.0 with a FOSS license exception, which matters when distributing builds."],"requirements_zh":["没有发布版本或标签；README 说明首个版本尚未完成，因此仓库仍不完整，更多文档也有待补充。所审阅的 master 提交（2026-07-27）只修改了 README，此前的代码提交日期为 2026-04-04 和 2026-04-05。","使用 CMake 3.16+ 和 C++20 编译器构建：在 Windows 上生成 Visual Studio 解决方案，在 Linux 和 macOS 上使用 Ninja；Apple Silicon 上构建需加 -DCMAKE_OSX_ARCHITECTURES=x86_64。CMake 会按固定提交获取 Capstone 和 Keystone，CI 在 Windows Server 2022、Ubuntu 24.04 和 macOS 14 上构建。","这是用于分析虚拟化或混淆代码的库：用户需提供提升器，把待分析代码转换为 VTIL 例程，然后再进行优化、检查或重新输出。所审阅的代码树中没有针对特定虚拟机或保护器的提升器。其 Sample Routines 目录存放 2020 年的 .vtil 测试例程及对应的小型 C 测试函数，提交信息称之为 VMProtect 测试。","BSD-3-Clause 许可证。所获取的依赖保留各自的许可证：Capstone 采用 BSD 风格许可证，Keystone 采用附带 FOSS 许可例外的 GPL-2.0，分发构建产物时需注意。"],"targets":["binary"],"url":"https://github.com/vtil-project/VTIL-Core","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/REhints/efiXplorer/blob/9e3b40a2ac0524e04dc69540ab4ff911fda13d27/ida-plugin.json","https://github.com/REhints/efiXplorer/blob/9e3b40a2ac0524e04dc69540ab4ff911fda13d27/.gitmodules","https://github.com/REhints/efiXplorer/blob/9e3b40a2ac0524e04dc69540ab4ff911fda13d27/LICENSE","https://github.com/REhints/efiXplorer/wiki/efiXplorer-features/7ce26a454a0585c3c17785b61c28633123eae6f6","https://github.com/REhints/efiXplorer/wiki/efiXloader/7ce26a454a0585c3c17785b61c28633123eae6f6","https://github.com/REhints/efiXplorer/wiki/Build-instruction-and-installation/7ce26a454a0585c3c17785b61c28633123eae6f6","https://github.com/REhints/efiXplorer/releases/tag/v6.3.0","https://plugins.hex-rays.com/binarly-io/efixplorer","https://i.blackhat.com/eu-20/Wednesday/eu-20-Labunets-efiXplorer-Hunting-For-UEFI-Firmware-Vulnerabilities-At-Scale-With-Automated-Static-Analysis.pdf"],"category":"firmware","description_en":"IDA Pro plugin and loader that automate static analysis of UEFI firmware. The plugin annotates Boot, Runtime, SMM and PEI service calls, lists the EFI protocols and known GUIDs a module installs or consumes, applies protocol interface types in the Hex-Rays decompiler, flags suspected SMM callout and GetVariable out-of-bounds write patterns for review and saves a JSON report. The efiXloader module opens a whole firmware image in one IDA database, with driver entry points, navigation between drivers and a DXE driver dependency graph.","description_zh":"用于自动化 UEFI 固件静态分析的 IDA Pro 插件与加载器。插件可标注 Boot、Runtime、SMM 和 PEI 服务调用，列出模块安装或使用的 EFI 协议与已知 GUID，在 Hex-Rays 反编译器中应用协议接口类型，标记疑似 SMM callout 及 GetVariable 越界写入模式供人工复核，并保存 JSON 报告。efiXloader 加载模块可在单个 IDA 数据库中打开整个固件镜像，提供各驱动入口点、驱动间导航和 DXE 驱动依赖关系图。","entry_url":"https://awesomerea.org/resources/efixplorer/","entry_url_zh":"https://awesomerea.org/zh/resources/efixplorer/","evidence_url":"https://github.com/REhints/efiXplorer/blob/9e3b40a2ac0524e04dc69540ab4ff911fda13d27/README.md","group":"tools","id":"efixplorer","json_url":"https://awesomerea.org/resources/efixplorer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/efixplorer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/efixplorer/index.md","name":"efiXplorer","name_zh":"efiXplorer UEFI 固件分析 IDA 插件","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v6.3.0, published 2026-08-20 as a zip of prebuilt binaries; the reviewed master commit is two GUID-database submodule updates ahead. ida-plugin.json declares IDA 8.3 or newer on Windows x86_64, Linux x86_64 and macOS x86_64/aarch64; the plugin is listed in Hex-Rays' plugin repository and can be installed with ida-hcli.","Needs a licensed IDA Pro. Applying protocol interface types also needs the Hex-Rays decompiler, and the build instructions cover building without it. Source builds use CMake or build.py against the IDA SDK, UEFITool and GUID database submodules; a manual install copies the plugin and the guids directory into IDA's plugins folder and the loader into its loaders folder.","Input is a UEFI firmware image or individual UEFI driver the analyst already has. The wiki's feature table lists SMM services and the dependency graph for 64-bit modules only and PEI services for 32-bit only. Its loader page still says only 64-bit drivers are supported, while the v6.3.0 notes add 32-bit modules in the loader, and the wiki pages still link the earlier binarly-io repository.","GPL-3.0; ida-plugin.json declares GPL-3.0-only. Vulnerability-scanner hits are suspected findings presented for analyst review, not confirmed bugs; the authors' Black Hat Europe 2020 and EKO 2020 publications describe the approach."],"requirements_zh":["审阅时最新版本为 v6.3.0，于 2026-08-20 以预编译二进制 zip 包发布；所审阅的 master 提交比它多两次 GUID 数据库子模块更新。ida-plugin.json 声明需要 IDA 8.3 或更高版本，支持 Windows x86_64、Linux x86_64 以及 macOS x86_64/aarch64；该插件已收录于 Hex-Rays 插件库，可用 ida-hcli 安装。","需要已授权的 IDA Pro。应用协议接口类型还需要 Hex-Rays 反编译器，构建说明也介绍了不含该反编译器的构建方式。从源码构建时，通过 CMake 或 build.py 使用 IDA SDK、UEFITool 和 GUID 数据库子模块；手动安装需把插件和 guids 目录复制到 IDA 的 plugins 文件夹，把加载器复制到 loaders 文件夹。","输入为分析者已有的 UEFI 固件镜像或单个 UEFI 驱动。wiki 的功能表将 SMM 服务和依赖关系图列为仅支持 64 位模块，PEI 服务仅支持 32 位。其加载器页面仍称只支持 64 位驱动，而 v6.3.0 的发布说明已为加载器加入 32 位模块支持；wiki 页面也仍链接到早先的 binarly-io 仓库。","采用 GPL-3.0；ida-plugin.json 声明为 GPL-3.0-only。漏洞扫描结果只是供分析者复核的疑似问题，并非已确认的缺陷；作者在 Black Hat Europe 2020 和 EKO 2020 的发表材料介绍了相关方法。"],"targets":["firmware"],"url":"https://github.com/REhints/efiXplorer","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/ChiChou/vscode-frida/blob/271aa369fbf8331047184766775a1f1b9332e13b/README.md#L13-L31","https://github.com/ChiChou/vscode-frida/blob/271aa369fbf8331047184766775a1f1b9332e13b/README.md#L76-L111","https://github.com/ChiChou/vscode-frida/blob/271aa369fbf8331047184766775a1f1b9332e13b/package.json","https://github.com/ChiChou/vscode-frida/blob/271aa369fbf8331047184766775a1f1b9332e13b/CHANGELOG.md","https://github.com/ChiChou/vscode-frida/blob/271aa369fbf8331047184766775a1f1b9332e13b/LICENSE","https://github.com/ChiChou/vscode-frida/releases/tag/v0.12.11"],"category":"dynamic-analysis","description_en":"Unofficial Visual Studio Code extension for Frida work. A sidebar lists apps and processes on local, Apple Simulator, USB and remote devices to attach, spawn or kill, and runtime panels browse an attached process's native modules and exports and its Java and Objective-C classes, methods and protocols; selected items generate Interceptor, Objective-C or Java hook scaffolds, optionally with GitHub Copilot-inferred native signatures, and Objective-C headers or Java class stubs can be dumped. A language server completes class, selector and module names from a live target, and the extension also scaffolds Frida agent and C-module projects, script-debugging configurations, syslog streaming and Android frida-server setup.","description_zh":"非官方的 Visual Studio Code 扩展，用于 Frida 相关工作。侧边栏列出本地、Apple 模拟器、USB 和远程设备上的应用与进程，可附加、启动或结束它们；运行时面板可浏览已附加进程的原生模块与导出函数，以及 Java 和 Objective-C 的类、方法与协议，并根据所选项目生成 Interceptor、Objective-C 或 Java 的 Hook 代码框架（可选用 GitHub Copilot 推断原生函数签名），还能导出 Objective-C 头文件或 Java 类存根。语言服务器根据运行中的目标补全类名、选择器和模块名；扩展还提供 Frida agent 与 C 模块项目脚手架、脚本调试配置、系统日志流以及 Android frida-server 部署。","entry_url":"https://awesomerea.org/resources/vscode-frida/","entry_url_zh":"https://awesomerea.org/zh/resources/vscode-frida/","evidence_url":"https://github.com/ChiChou/vscode-frida/blob/271aa369fbf8331047184766775a1f1b9332e13b/README.md","group":"tools","id":"vscode-frida","json_url":"https://awesomerea.org/resources/vscode-frida/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/vscode-frida/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/vscode-frida/index.md","name":"Frida Workbench for VSCode","name_zh":"Frida Workbench VS Code 扩展","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.12.11, published 2026-09-29 as a .vsix package, whose tag is the reviewed main commit; package.json requires VS Code 1.94+. The extension is also listed on the Visual Studio Marketplace under the CodeColorist publisher. CHANGELOG.md's newest entry is v0.12.8, so later releases are not described there.","Needs Python 3.7+ with the frida-tools package; because of PEP 668 the README recommends the workspace's active virtual environment, or pipx or uv. Targets need a working Frida setup: on Android the extension can download and start frida-server, iOS USB access from Windows needs iTunes kept open, libimobiledevice is optional for SSH shells, and iOS shells require a jailbroken device.","The language server attaches to the live target named in .vscode/frida.json, which needs a device and exactly one of app, pid or process. Copilot-assisted hook generation depends on GitHub Copilot, and Objection is an optional external tool. Users supply their own devices, apps and processes.","A community project, not affiliated with the Frida team; MIT-licensed."],"requirements_zh":["审阅时最新版本为 v0.12.11，于 2026-09-29 以 .vsix 包发布，其标签即所审阅的 main 分支提交；package.json 要求 VS Code 1.94+。该扩展也以 CodeColorist 发布者名义上架 Visual Studio Marketplace。CHANGELOG.md 最新条目为 v0.12.8，此后的版本未在其中说明。","需要 Python 3.7+ 和 frida-tools 包；由于 PEP 668，README 建议使用工作区当前激活的虚拟环境，或通过 pipx、uv 安装。目标端需可用的 Frida 环境：在 Android 上扩展可下载并启动 frida-server；在 Windows 上通过 USB 访问 iOS 设备需保持 iTunes 打开；libimobiledevice 为打开 SSH Shell 的可选依赖，iOS Shell 需要越狱设备。","语言服务器会附加到 .vscode/frida.json 指定的运行中目标，该文件需包含 device 字段，并且 app、pid、process 三者恰好填写一个。Copilot 辅助的 Hook 生成依赖 GitHub Copilot，Objection 为可选的外部工具。用户需自备设备、应用和进程。","社区项目，与 Frida 官方团队无关联；采用 MIT 许可。"],"targets":["app"],"url":"https://github.com/ChiChou/vscode-frida","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/clearbluejar/ghidriff/blob/4f5d895fcbb1eacd65efd81145922c15bb7e741d/README.md#L282-L315","https://github.com/clearbluejar/ghidriff/blob/4f5d895fcbb1eacd65efd81145922c15bb7e741d/setup.cfg","https://github.com/clearbluejar/ghidriff/blob/4f5d895fcbb1eacd65efd81145922c15bb7e741d/ghidriff/ghidra_diff_engine.py#L205-L226","https://github.com/clearbluejar/ghidriff/blob/4f5d895fcbb1eacd65efd81145922c15bb7e741d/ghidriff/ghidra_diff_engine.py#L845-L876","https://github.com/clearbluejar/ghidriff/blob/4f5d895fcbb1eacd65efd81145922c15bb7e741d/ghidriff/ghidra_diff_engine.py#L1453-L1474","https://github.com/clearbluejar/ghidriff/blob/4f5d895fcbb1eacd65efd81145922c15bb7e741d/www/docs/README/Supported%20Platforms.md","https://github.com/clearbluejar/ghidriff/blob/4f5d895fcbb1eacd65efd81145922c15bb7e741d/docs/progress-log.md","https://github.com/clearbluejar/ghidriff/blob/4f5d895fcbb1eacd65efd81145922c15bb7e741d/LICENSE","https://github.com/clearbluejar/ghidriff/releases/tag/v1.0.0","https://pypi.org/project/ghidriff/1.0.0/"],"category":"binary-diffing","description_en":"Command-line binary diffing engine that drives Ghidra headlessly through pyghidra: it imports and analyzes an old and a new binary, then reports added, deleted and modified functions, with patch diffing as its main use. The default VersionTrackingDiff engine combines several Ghidra Version Tracking correlators with BSim matching, alongside simpler symbol-name and structural-graph engines and a GhidraDiffEngine base class for custom differs. Results are written as JSON and Markdown with Mermaid charts and meta diffs of strings, called and calling functions and binary metadata, plus optional side-by-side HTML.","description_zh":"命令行二进制差异分析引擎，通过 pyghidra 以无界面方式驱动 Ghidra：导入并分析新旧两个版本的二进制，列出新增、删除和修改的函数，主要用于补丁比对。默认的 VersionTrackingDiff 引擎组合了多个 Ghidra 版本跟踪关联器和 BSim 匹配，另有基于符号名和结构图的较简单引擎，并提供 GhidraDiffEngine 基类供编写自定义比对器。结果以 JSON 和带 Mermaid 图表的 Markdown 输出，附有字符串、被调用与调用函数及二进制元数据的元差异，也可另外生成并排对照的 HTML。","entry_url":"https://awesomerea.org/resources/ghidriff/","entry_url_zh":"https://awesomerea.org/zh/resources/ghidriff/","evidence_url":"https://github.com/clearbluejar/ghidriff/blob/4f5d895fcbb1eacd65efd81145922c15bb7e741d/README.md","group":"tools","id":"ghidriff","json_url":"https://awesomerea.org/resources/ghidriff/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ghidriff/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghidriff/index.md","name":"ghidriff","name_zh":"ghidriff Ghidra 二进制差异分析引擎","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v1.0.0, published 2025-07-04 on GitHub and PyPI, which requires Python 3.9+ and pyghidra 2.0+. The reviewed main commit, merged 2026-05-11, is six commits ahead and still reports version 1.0.0: it requires Python 3.10+ and pyghidra 3.x, targets Ghidra 12.0.4 and logs a warning when another Ghidra or pyghidra version is running. setup.cfg classifies the package as Alpha.","Install Ghidra with a JDK supported by that release, set GHIDRA_INSTALL_DIR and install the package with pip or uvx; the README covers Windows, Linux and macOS, and its x64/arm64 Docker image ships the PyPI release so Ghidra and Java need not be installed on the host. Large binaries may need a larger JVM memory share.","Supply two or more versions of the same binary, ordered oldest to newest, with an optional summary across several new versions; anything Ghidra can import and analyze can be compared, with a custom base address for firmware or bootloader images, analyzer options and GDT type archives. The supported-platforms page says native code works best, managed .NET results are mixed and native libraries must be taken out of an APK first. A preflight check stops the diff when the two programs' processor languages differ or their symbol counts differ by 4,000 or more, unless --force-diff is given. By default Ghidra's well-known PDB symbol servers are configured with a local symbol store unless --no-symbols is set.","GPL-3.0. Matching quality depends on Ghidra's analysis and decompilation. The README's use cases and the documentation site's sample diffs cover Windows and macOS system binaries obtained separately; the repository ships no target binaries."],"requirements_zh":["审阅时最新版本为 v1.0.0，于 2025-07-04 发布到 GitHub 和 PyPI，要求 Python 3.9+ 和 pyghidra 2.0+。所审阅的 main 分支提交合并于 2026-05-11，比该版本多六个提交，版本号仍为 1.0.0：它要求 Python 3.10+ 和 pyghidra 3.x，以 Ghidra 12.0.4 为目标版本，运行其他版本的 Ghidra 或 pyghidra 时会记录警告。setup.cfg 将该软件包标为 Alpha 阶段。","需安装 Ghidra 及该版本支持的 JDK，设置 GHIDRA_INSTALL_DIR，再用 pip 或 uvx 安装；README 介绍了 Windows、Linux 和 macOS 上的配置，其 x64/arm64 Docker 镜像内置 PyPI 发布版，无需在主机上安装 Ghidra 和 Java。分析大型二进制时可能需要调高 JVM 内存占比。","需提供同一二进制的两个或更多版本，按从旧到新的顺序排列，多个新版本时可附加汇总；凡是 Ghidra 能导入和分析的文件都可比较，并可为固件或引导程序镜像指定基址、自定义分析器选项和 GDT 类型库。支持平台页面指出原生代码效果最好，托管 .NET 代码结果不一，APK 中的原生库需先取出。预检若发现两个程序的处理器语言不同，或符号数量相差 4,000 个及以上，就会中止比对，除非指定 --force-diff。默认会配置 Ghidra 内置的知名 PDB 符号服务器和本地符号库，可用 --no-symbols 关闭。","采用 GPL-3.0 许可。匹配质量取决于 Ghidra 的分析和反编译结果。README 的用例和文档站的示例差异报告针对另行获取的 Windows 和 macOS 系统二进制；仓库本身不附带任何目标二进制。"],"targets":["binary","firmware"],"url":"https://github.com/clearbluejar/ghidriff","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/marin-m/vmlinux-to-elf/blob/2d094bc9c220b6b50f8215cbc3c9e581210ce1a6/README.md#L89-L98","https://github.com/marin-m/vmlinux-to-elf/blob/2d094bc9c220b6b50f8215cbc3c9e581210ce1a6/README.md#L153-L192","https://github.com/marin-m/vmlinux-to-elf/blob/2d094bc9c220b6b50f8215cbc3c9e581210ce1a6/pyproject.toml","https://github.com/marin-m/vmlinux-to-elf/blob/2d094bc9c220b6b50f8215cbc3c9e581210ce1a6/vmlinux_to_elf/core/kallsyms.py","https://github.com/marin-m/vmlinux-to-elf/blob/2d094bc9c220b6b50f8215cbc3c9e581210ce1a6/LICENSE","https://github.com/marin-m/vmlinux-to-elf/releases/tag/1.3.6","https://pypi.org/project/vmlinux-to-elf/1.3.6/"],"category":"firmware","description_en":"Rebuild an analyzable ELF with function and variable symbols from a Linux kernel image, whether a raw or compressed vmlinux, vmlinuz, zImage or bzImage blob, certain Android boot.img files or a stripped kernel ELF, by locating and decoding the embedded kallsyms symbol table. It detects the compression format, instruction set, endianness, word size, entry point and an approximate base address and writes an ELF for IDA Pro or Ghidra; a kallsyms-finder listing, a standalone decompressor and a GTK GUI are included.","description_zh":"通过定位并解码内嵌的 kallsyms 符号表，从 Linux 内核镜像重建带函数与变量符号、可供分析的 ELF 文件；输入可以是原始或压缩的 vmlinux、vmlinuz、zImage、bzImage 数据块，部分 Android boot.img 文件，或已去除符号的内核 ELF。工具会检测压缩格式、指令集、字节序、位宽、入口点和近似基址，并生成可在 IDA Pro 或 Ghidra 中分析的 ELF；另附列出符号的 kallsyms-finder、独立解压工具和 GTK 图形界面。","entry_url":"https://awesomerea.org/resources/vmlinux-to-elf/","entry_url_zh":"https://awesomerea.org/zh/resources/vmlinux-to-elf/","evidence_url":"https://github.com/marin-m/vmlinux-to-elf/blob/2d094bc9c220b6b50f8215cbc3c9e581210ce1a6/README.md","group":"tools","id":"vmlinux-to-elf","json_url":"https://awesomerea.org/resources/vmlinux-to-elf/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/vmlinux-to-elf/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/vmlinux-to-elf/index.md","name":"vmlinux-to-elf","name_zh":"vmlinux-to-elf 内核符号恢复工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 1.3.6, published 2026-05-20 on GitHub and PyPI; its notes include provisional support for reserializing section-stripped ELF kernels and uImage LZMA decompression. The reviewed master commit is four commits ahead, with GUI and packaging updates, and carries a 1.3.6.1 tag that has no release. PyPI classifies the project as beta.","Requires Python 3.9+ with lz4, zstandard, minilzo and peewee. The README installs the CLI and GUI with snap on Ubuntu, from the AUR, or with uv plus GTK 4, libadwaita and PyGObject development packages; Flathub provides the GUI on distributions whose libadwaita is older than 1.6.","Input is a kernel image the analyst already has; kernels built without CONFIG_KALLSYMS are not supported. The README states support for Linux 2.6.10 through 6.4 as of August 2023, raw-kernel architecture detection for MIPS, ARM, ARM64, PowerPC, SPARC, x86, x86-64, SuperH and ARC, XZ, LZMA, GZip, BZ2, LZ4, LZO and Zstd decompression, and OpenWrt's uncompressed kallsyms variant. Instruction set, bit size, file offset and base address can be overridden when detection fails.","GPL-3.0-or-later. Recovered symbols carry only the name, address and nm-style type stored in kallsyms, and the base address is a heuristic: the first text symbol address with the low 12 bits cleared."],"requirements_zh":["审阅时最新版本为 1.3.6，于 2026-05-20 发布在 GitHub 和 PyPI；其发布说明包括对去除节区的 ELF 内核重新序列化的初步支持，以及 uImage LZMA 解压。所审阅的 master 提交比它多四个提交，内容为图形界面和打包更新，并带有一个没有对应发布的 1.3.6.1 标签。PyPI 将项目标为 beta 阶段。","需要 Python 3.9+ 以及 lz4、zstandard、minilzo 和 peewee。README 介绍了几种安装命令行和图形界面的方式：Ubuntu 上用 snap，或从 AUR 安装，或用 uv 并配合 GTK 4、libadwaita 和 PyGObject 开发包；在 libadwaita 低于 1.6 的发行版上，可通过 Flathub 使用图形界面。","输入为分析者已有的内核镜像；未启用 CONFIG_KALLSYMS 编译的内核不受支持。README 称截至 2023 年 8 月支持 Linux 2.6.10 至 6.4，可为原始内核检测 MIPS、ARM、ARM64、PowerPC、SPARC、x86、x86-64、SuperH 和 ARC 架构，支持 XZ、LZMA、GZip、BZ2、LZ4、LZO 和 Zstd 解压，并能处理 OpenWrt 的未压缩 kallsyms 变体。自动检测失败时，可手动指定指令集、位宽、文件偏移和基址。","采用 GPL-3.0-or-later。恢复出的符号只包含 kallsyms 中存储的名称、地址和 nm 风格的类型；基址为启发式推断，即第一个代码段符号地址清除低 12 位后的值。"],"targets":["binary","firmware"],"url":"https://github.com/marin-m/vmlinux-to-elf","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/GrammaTech/ddisasm/blob/1d17f292e3672078eeb753473847306ca3f0f1ff/doc/source/GENERAL/1-Installation.md","https://github.com/GrammaTech/ddisasm/blob/1d17f292e3672078eeb753473847306ca3f0f1ff/doc/source/GENERAL/2-Building-Ddisasm.md","https://github.com/GrammaTech/ddisasm/blob/1d17f292e3672078eeb753473847306ca3f0f1ff/doc/source/GENERAL/3-Command-line-options.md#L38-L53","https://github.com/GrammaTech/ddisasm/blob/1d17f292e3672078eeb753473847306ca3f0f1ff/doc/source/GENERAL/5-AdvancedUsage.md","https://github.com/GrammaTech/ddisasm/blob/1d17f292e3672078eeb753473847306ca3f0f1ff/CHANGELOG.md","https://github.com/GrammaTech/ddisasm/blob/1d17f292e3672078eeb753473847306ca3f0f1ff/version.txt","https://github.com/GrammaTech/ddisasm/blob/1d17f292e3672078eeb753473847306ca3f0f1ff/CONTRIBUTING.md","https://github.com/GrammaTech/ddisasm/blob/1d17f292e3672078eeb753473847306ca3f0f1ff/LICENSE.txt","https://github.com/GrammaTech/ddisasm/releases/tag/v1.8.0","https://pypi.org/project/ddisasm/1.9.5/","https://www.usenix.org/conference/usenixsecurity20/presentation/flores-montoya"],"category":"native-analysis","description_en":"GrammaTech's Datalog disassembler, which turns ELF and PE binaries for x86-32, x86-64, ARM32, ARM64 and MIPS32 into the GTIRB intermediate representation. It decodes a superset of possible instructions, then applies Soufflé Datalog rules and weighted heuristics to infer code locations, symbolization and function boundaries; gtirb-pprinter turns the result into reassemblable assembly or a rebuilt binary, and the GTIRB APIs or gtirb-rewriting can modify it in between. User hint files add Datalog facts or change heuristic weights where inference goes wrong.","description_zh":"GrammaTech 开发的 Datalog 反汇编器，可将 x86-32、x86-64、ARM32、ARM64 和 MIPS32 架构的 ELF 与 PE 二进制转换为 GTIRB 中间表示。它先解码所有可能指令的超集，再用 Soufflé Datalog 规则和加权启发式推断代码位置、符号化结果和函数边界；gtirb-pprinter 可将结果输出为可重新汇编的汇编代码或重建的二进制，期间还可借助 GTIRB API 或 gtirb-rewriting 修改程序。推断出错时，用户可通过提示文件添加 Datalog 事实或调整启发式权重。","entry_url":"https://awesomerea.org/resources/ddisasm/","entry_url_zh":"https://awesomerea.org/zh/resources/ddisasm/","evidence_url":"https://github.com/GrammaTech/ddisasm/blob/1d17f292e3672078eeb753473847306ca3f0f1ff/README.md","group":"tools","id":"ddisasm","json_url":"https://awesomerea.org/resources/ddisasm/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ddisasm/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ddisasm/index.md","name":"Ddisasm","name_zh":"Ddisasm Datalog 可重汇编反汇编器","record_type":"resource","relationship":"foundation","requirements":["Latest GitHub release at review: v1.8.0, published 2023-12-14 without attached files. Later versions are distributed elsewhere: PyPI lists ddisasm 1.9.5, uploaded 2026-07-06 as a single manylinux x86_64 wheel. The reviewed main commit, from 2026-10-13, declares version 1.9.6, which its changelog marks unreleased.","Prebuilt options are the grammatech/ddisasm Docker image (stable or unstable tags), Ubuntu 20 (focal) apt packages and Windows .zip builds on GrammaTech's servers; the docs warn against mixing stable and unstable tools. Source builds need a C++17 compiler, GTIRB 1.12.1+, gtirb-pprinter 2.0.0+, Capstone 5.0.1+ (GrammaTech tests with its fork), Soufflé 2.4 built with 64-bit numbers, libehp 1.0.0+ and LIEF 0.13.2+.","Input is an ELF or PE binary; rebuilding through gtirb-pprinter invokes a compiler or assembler such as gcc. Code inference and symbolization are heuristic: --self-diagnose checks symbolization only for binaries linked with complete relocation information, and the docs call the option that replaces CFI directives with .eh_frame symbolic expressions experimental and unreliable.","AGPL-3.0; contributions require GrammaTech's contributor license agreement. GTIRB, gtirb-pprinter and gtirb-rewriting are separate projects. The README cites a USENIX Security 2020 paper and an IEEE S&P 2025 paper on the approach."],"requirements_zh":["审阅时 GitHub 上最新的发布为 v1.8.0，发布于 2023-12-14，未附带文件。之后的版本通过其他渠道分发：PyPI 列出的 ddisasm 1.9.5 于 2026-07-06 上传，仅有一个 manylinux x86_64 wheel。所审阅的 main 分支提交（2026-10-13）声明版本为 1.9.6，更新日志将其标为尚未发布。","预构建版本有 grammatech/ddisasm Docker 镜像（stable 或 unstable 标签）、Ubuntu 20（focal）apt 软件包，以及 GrammaTech 服务器上的 Windows .zip 构建；文档提醒不要混用 stable 与 unstable 版本的工具。从源码构建需要支持 C++17 的编译器、GTIRB 1.12.1+、gtirb-pprinter 2.0.0+、Capstone 5.0.1+（GrammaTech 使用其分支测试）、启用 64 位数值编译的 Soufflé 2.4、libehp 1.0.0+ 以及 LIEF 0.13.2+。","输入为 ELF 或 PE 二进制；通过 gtirb-pprinter 重建二进制时会调用 gcc 等编译器或汇编器。代码推断和符号化属于启发式：--self-diagnose 只能对链接时保留完整重定位信息的二进制检查符号化结果；文档称用 .eh_frame 符号表达式代替 CFI 指令的选项仍属实验性，结果不可靠。","采用 AGPL-3.0 许可；贡献代码需签署 GrammaTech 的贡献者许可协议。GTIRB、gtirb-pprinter 和 gtirb-rewriting 是独立项目。README 引用了 USENIX Security 2020 和 IEEE S&P 2025 的两篇方法论文。"],"targets":["binary"],"url":"https://github.com/GrammaTech/ddisasm","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/korcankaraokcu/PINCE/blob/9357ba3d8d96477f9bb81e427a97c57f67725c74/README.md#L25-L67","https://github.com/korcankaraokcu/PINCE/blob/9357ba3d8d96477f9bb81e427a97c57f67725c74/README.md#L92-L116","https://github.com/korcankaraokcu/PINCE/blob/9357ba3d8d96477f9bb81e427a97c57f67725c74/PINCE.sh","https://github.com/korcankaraokcu/PINCE/blob/9357ba3d8d96477f9bb81e427a97c57f67725c74/install.sh","https://github.com/korcankaraokcu/PINCE/blob/9357ba3d8d96477f9bb81e427a97c57f67725c74/COPYING","https://github.com/korcankaraokcu/PINCE/blob/9357ba3d8d96477f9bb81e427a97c57f67725c74/AUTHORS","https://github.com/korcankaraokcu/PINCE/releases/tag/v0.10.2"],"category":"dynamic-analysis","description_en":"Linux front end for the GNU Debugger (GDB), focused on games but usable for other reverse engineering; the name stands for “PINCE is not Cheat Engine”. It scans process memory and pointers through libmemscan into a typed address table, and its memory view adds disassembly, an on-the-fly assembler, code dissection for referenced calls, jumps and strings, function, region and instruction searches, and structure overlays, including structures generated from Mono/IL2CPP class dissection of native Linux or Wine/Proton processes. Debugging covers chained breakpoints and watchpoints, tracking of the instructions that access an address, tracing and stack traces, alongside a GDB console and the reusable libpince Python library.","description_zh":"面向 Linux 的 GNU 调试器（GDB）前端，以游戏为主要对象，也可用于其他逆向工程；名称意为“PINCE is not Cheat Engine”。它借助 libmemscan 扫描进程内存和指针，并将结果放入带类型的地址表；内存视图提供反汇编、即时汇编、对引用的调用、跳转和字符串进行代码剖析、函数/内存区域/指令搜索以及结构体叠加查看，其中结构体可由对原生 Linux 或 Wine/Proton 进程中 Mono/IL2CPP 类的剖析自动生成。调试功能包括可链式关联的断点与观察点、追踪访问某地址的指令、执行跟踪和调用栈查看，并提供 GDB 控制台和可复用的 libpince Python 库。","entry_url":"https://awesomerea.org/resources/pince/","entry_url_zh":"https://awesomerea.org/zh/resources/pince/","evidence_url":"https://github.com/korcankaraokcu/PINCE/blob/9357ba3d8d96477f9bb81e427a97c57f67725c74/README.md","group":"tools","id":"pince","json_url":"https://awesomerea.org/resources/pince/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pince/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pince/index.md","name":"PINCE","name_zh":"PINCE GDB 前端与内存分析工具","record_type":"resource","relationship":"foundation","requirements":["Linux only. Latest release at review: v0.10.2, published 2026-09-18, whose tag is the reviewed master commit; it ships an x86_64 AppImage that the README supports on distributions as new as Ubuntu 22.04 or newer.","Local development installs run install.sh with APT, Pacman or DNF and need Python 3.11+, PyQt 6.11+ and GDB; Kubuntu 22.04+ and Arch Linux are officially supported, while Debian 12+, Fedora 35+ and openSUSE are only partially supported and not actively tested. The PINCE.sh launcher runs PINCE as root, elevating through pkexec or sudo.","Users select a running process of their own to inspect. The README states that users are responsible for their actions and asks that only this GitHub repository be trusted as a source of PINCE code or packages.","GPL-3.0-or-later (COPYING); AUTHORS lists the bundled Silk icons in media/icons under CC BY 3.0 (COPYING.CC-BY)."],"requirements_zh":["仅支持 Linux。审阅时最新版本为 v0.10.2，发布于 2026-09-18，其标签即所审阅的 master 分支提交；发布包为 x86_64 AppImage，README 表示支持不早于 Ubuntu 22.04 的发行版。","本地开发安装通过 install.sh 使用 APT、Pacman 或 DNF 完成，需要 Python 3.11+、PyQt 6.11+ 和 GDB；官方支持 Kubuntu 22.04+ 和 Arch Linux，Debian 12+、Fedora 35+ 和 openSUSE 仅部分支持且未经积极测试。PINCE.sh 启动脚本会通过 pkexec 或 sudo 以 root 身份运行 PINCE。","用户需自行选择要检查的运行中进程。README 声明用户须对自身行为负责，并提醒只信任此 GitHub 仓库提供的 PINCE 源码或软件包。","采用 GPL-3.0-or-later 许可（COPYING）；AUTHORS 说明 media/icons 中随附的 Silk 图标采用 CC BY 3.0 许可（COPYING.CC-BY）。"],"targets":["binary","game"],"url":"https://github.com/korcankaraokcu/PINCE","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/rocky/python-uncompyle6/blob/91298ba80e322cfb8736ab8a697509527297a7a9/README.rst#L77-L126","https://github.com/rocky/python-uncompyle6/blob/91298ba80e322cfb8736ab8a697509527297a7a9/README.rst#L176-L299","https://github.com/rocky/python-uncompyle6/blob/91298ba80e322cfb8736ab8a697509527297a7a9/NEWS.md","https://github.com/rocky/python-uncompyle6/blob/91298ba80e322cfb8736ab8a697509527297a7a9/pyproject.toml","https://github.com/rocky/python-uncompyle6/blob/91298ba80e322cfb8736ab8a697509527297a7a9/uncompyle6/version.py","https://github.com/rocky/python-uncompyle6/blob/91298ba80e322cfb8736ab8a697509527297a7a9/COPYING","https://github.com/rocky/python-uncompyle6/releases/tag/3.9.3","https://pypi.org/project/uncompyle6/3.9.3/"],"category":"native-analysis","description_en":"Cross-version decompiler that translates Python bytecode back into equivalent Python source, accepting bytecode from Python 1.0 through 3.8 as well as some PyPy bytecode and Dropbox's Python 2.5. It disassembles code objects with the companion xdis library and parses the instruction stream into a grammar-based tree from which source is printed; it can also deparse just the fragment around a given bytecode offset, which the author's trepan debuggers use for exact location reporting. It succeeds the older decompyle, uncompyle and uncompyle2 forks.","description_zh":"跨版本的 Python 反编译器，可把 Python 字节码还原为等价的 Python 源码，支持 Python 1.0 至 3.8 的字节码，以及部分 PyPy 字节码和 Dropbox 的 Python 2.5 字节码。它借助配套的 xdis 库反汇编代码对象，再把指令流解析成基于语法的树并据此输出源码；它还能只反解析给定字节码偏移附近的代码片段，作者的 trepan 调试器即用此功能精确报告位置。它是早期 decompyle、uncompyle 和 uncompyle2 等分支的后继项目。","entry_url":"https://awesomerea.org/resources/uncompyle6/","entry_url_zh":"https://awesomerea.org/zh/resources/uncompyle6/","evidence_url":"https://github.com/rocky/python-uncompyle6/blob/91298ba80e322cfb8736ab8a697509527297a7a9/README.rst","group":"tools","id":"uncompyle6","json_url":"https://awesomerea.org/resources/uncompyle6/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/uncompyle6/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/uncompyle6/index.md","name":"uncompyle6","name_zh":"uncompyle6 跨版本 Python 字节码反编译器","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 3.9.3, published 2025-09-29 on GitHub and PyPI; the reviewed master commit is 34 commits later and reports 3.9.4.dev0. Installing from PyPI, like the master branch, is meant for running on Python 3.11+; older interpreters back to Python 2.4 use the version-specific tarballs, eggs or wheels on GitHub Releases, built from separate git branches. It depends on xdis 6.3+, spark-parser and click.","The README reports testing on bytecode from Python 1.4, 2.1–2.7 and 3.0–3.8 and later PyPy versions. Python 3 support is strongest around 3.3–3.4 and weakens further away, control flow is the biggest known problem, and the author does not intend serious work on 3.8 or 3.9, pointing to the separate decompyle3 for 3.7 and 3.8. Bytecode newer than 3.8 is not decompiled, and candidate-release magic numbers, some Python 3.6 magic variants, encrypted or custom-interpreter bytecode other than Dropbox's old 2.5, obfuscated code, Cython and MicroPython are not handled.","Input .pyc or .pyo files come from the user; it cannot decompile Py2EXE executables directly, and bytecode bundled by such packagers has to be extracted first. The --syntax-verify option checks only that the output is valid Python syntax, so the README suggests cross-checking with other uncompyle6 versions or other decompilers such as pycdc. Recovered source remains subject to the rights of the original program’s owner.","GPL-3.0-or-later per pyproject.toml, with the GPL-3.0 text in COPYING."],"requirements_zh":["审阅时最新版本为 3.9.3，于 2025-09-29 在 GitHub 和 PyPI 发布；所审阅的 master 提交比该版本晚 34 个提交，版本号为 3.9.4.dev0。与 master 分支一样，从 PyPI 安装的版本面向 Python 3.11+ 运行环境；更早的解释器（最早到 Python 2.4）需使用 GitHub Releases 中按版本区分的源码包、egg 或 wheel，它们由各自独立的 git 分支构建。依赖 xdis 6.3+、spark-parser 和 click。","README 称已用 Python 1.4、2.1–2.7、3.0–3.8 以及较新 PyPy 版本的字节码测试过。对 Python 3 的支持以 3.3–3.4 附近最好，离这两个版本越远越弱；控制流是最大的已知问题，作者也不打算认真投入 3.8 或 3.9 的支持，并建议 3.7 和 3.8 改用独立的 decompyle3。高于 3.8 的字节码不会被反编译；候选发布版本的魔数、部分 Python 3.6 魔数变体、除 Dropbox 旧版 2.5 以外的加密或定制解释器字节码、混淆代码以及 Cython 和 MicroPython 均不受支持。","输入的 .pyc 或 .pyo 文件由使用者提供；它不能直接反编译 Py2EXE 生成的可执行文件，这类打包程序中的字节码需先行提取。--syntax-verify 选项只检查输出是否为合法的 Python 语法，因此 README 建议用其他版本的 uncompyle6 或 pycdc 等其他反编译器交叉核对。恢复出的源码仍受原程序权利人的权利约束。","pyproject.toml 声明采用 GPL-3.0-or-later，COPYING 收录 GPL-3.0 全文。"],"targets":["app","binary"],"url":"https://github.com/rocky/python-uncompyle6","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/bootleg/ret-sync/blob/60e7b0fd1bea7bad44da7688801b2bd12fb02040/README.md#L102-L113","https://github.com/bootleg/ret-sync/blob/60e7b0fd1bea7bad44da7688801b2bd12fb02040/README.md#L519-L571","https://github.com/bootleg/ret-sync/blob/60e7b0fd1bea7bad44da7688801b2bd12fb02040/README.md#L1060-L1115","https://github.com/bootleg/ret-sync/tree/60e7b0fd1bea7bad44da7688801b2bd12fb02040/ext_ghidra/dist","https://github.com/bootleg/ret-sync/blob/60e7b0fd1bea7bad44da7688801b2bd12fb02040/COPYING","https://github.com/bootleg/ret-sync/releases/tag/ext_bn_community_release_v0.1.0"],"category":"dynamic-analysis","description_en":"Reverse-Engineering Tools SYNChronization: plugins that keep IDA, Ghidra or Binary Ninja graph and decompiler views following a live WinDbg, GDB, LLDB, OllyDbg 1.10/2 or x64dbg session, rebasing addresses on the fly so ASLR does not break the mapping. Debugger commands push comments, labels, rebased addresses and command output into the disassembler database and resolve symbols from it, while disassembler hotkeys set breakpoints and step the debugger; several databases can be synced at once and the two sides may run on different hosts. A standalone Python library offers the same position syncing to custom tracing tools.","description_zh":"ret-sync 即“逆向工程工具同步”：一组插件，让 IDA、Ghidra 或 Binary Ninja 的图形与反编译视图跟随运行中的 WinDbg、GDB、LLDB、OllyDbg 1.10/2 或 x64dbg 调试会话，并实时重定基址，使 ASLR 不影响地址对应。调试器命令可将注释、标签、重定基后的地址和命令输出写入反汇编数据库，并从中解析符号；反汇编器中的快捷键则可设置断点、单步执行调试器。可同时同步多个数据库，两端也可运行在不同主机上。独立的 Python 库可为自定义跟踪工具提供同样的位置同步。","entry_url":"https://awesomerea.org/resources/ret-sync/","entry_url_zh":"https://awesomerea.org/zh/resources/ret-sync/","evidence_url":"https://github.com/bootleg/ret-sync/blob/60e7b0fd1bea7bad44da7688801b2bd12fb02040/README.md","group":"tools","id":"ret-sync","json_url":"https://awesomerea.org/resources/ret-sync/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ret-sync/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ret-sync/index.md","name":"ret-sync","name_zh":"ret-sync 调试器与反汇编器同步插件","record_type":"resource","relationship":"foundation","requirements":["No release tracks the reviewed master commit (2026-02-15): the only GitHub release is a 2022 Binary Ninja community build, prebuilt WinDbg, OllyDbg, OllyDbg2 and x64dbg plugins come from an Azure DevOps pipeline, and ext_ghidra/dist holds per-version Ghidra extension archives, the newest for Ghidra 11.4.2. Each Ghidra archive supports only the Ghidra version in its file name; other versions are built with Gradle against a local installation.","The IDA plugin requires IDA 9.2+, with older IDA versions served by history before the ida9.2 tag; the Binary Ninja plugin needs Binary Ninja 2.2+ with Python 3 and is marked experimental; the WinDbg extension is built from a Visual Studio solution, reported working with Visual Studio 2017 and 2026; the IDA and GDB plugins need Python 2.7+ or Python 3. IDA, Binary Ninja and WinDbg are obtained separately, and users supply their own binaries and debugging targets.","The README states there is no authentication or encryption between debugger and disassembler and that self-modifying code is out of scope; its tested-versions list is older (Python 2.7/3.7, IDA 7.7, Ghidra 10.1.1, Binary Ninja 3.0, GDB 8.1, LLDB 310.2.37), and it notes GDB signal issues with multi-threaded debugging and a possible WinDbg race condition. Remote and renamed-module setups are configured through an optional .sync INI file.","GPL-3.0-or-later; the Binary Ninja plugin is MIT-licensed. ret-sync is a fork of Quarkslab's qb-sync."],"requirements_zh":["没有任何发布版本对应所审阅的 master 分支提交（2026-02-15）：GitHub 上唯一的发布是 2022 年的 Binary Ninja 社区版构建；WinDbg、OllyDbg、OllyDbg2 和 x64dbg 的预编译插件由 Azure DevOps 流水线产出；ext_ghidra/dist 存放按 Ghidra 版本区分的扩展压缩包，最新一个对应 Ghidra 11.4.2。每个 Ghidra 压缩包只支持文件名中标明的 Ghidra 版本，其他版本需针对本地安装用 Gradle 构建。","IDA 插件需要 IDA 9.2+，更早的 IDA 版本需使用 ida9.2 标签之前的历史版本；Binary Ninja 插件需要 Binary Ninja 2.2+ 和 Python 3，并被标为实验性；WinDbg 扩展通过 Visual Studio 解决方案构建，README 报告 Visual Studio 2017 和 2026 均可成功构建；IDA 和 GDB 插件需要 Python 2.7+ 或 Python 3。IDA、Binary Ninja 和 WinDbg 需另行获取，用户需自备二进制文件和调试目标。","README 说明调试器与反汇编器之间没有任何认证或加密，自修改代码不在支持范围内；其列出的测试版本较旧（Python 2.7/3.7、IDA 7.7、Ghidra 10.1.1、Binary Ninja 3.0、GDB 8.1、LLDB 310.2.37），并提到 GDB 调试多线程程序时存在信号问题、WinDbg 可能存在竞态条件。远程调试和模块名不一致等场景通过可选的 .sync INI 文件配置。","采用 GPL-3.0-or-later 许可，Binary Ninja 插件采用 MIT 许可。ret-sync 是 Quarkslab qb-sync 的分支。"],"targets":["binary"],"url":"https://github.com/bootleg/ret-sync","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/extremecoders-re/pyinstxtractor/blob/815d31cf26bc71e62f851b2e549452e7b7c9dd98/pyinstxtractor.py","https://github.com/extremecoders-re/pyinstxtractor/blob/815d31cf26bc71e62f851b2e549452e7b7c9dd98/pyinstxtractor.py#L405-L419","https://github.com/extremecoders-re/pyinstxtractor/blob/815d31cf26bc71e62f851b2e549452e7b7c9dd98/LICENSE","https://github.com/extremecoders-re/pyinstxtractor/releases/tag/2026.07"],"category":"native-analysis","description_en":"Single-file Python script that extracts the contents of executables built with PyInstaller, including Linux ELF builds without other tools. It locates the PyInstaller archive in the executable, reports the PyInstaller and Python versions and likely entry-point scripts, and writes out the bundled CArchive files and the modules in the PYZ archive. It fixes the headers of the extracted .pyc files so that Python bytecode decompilers such as uncompyle6 and Decompyle++ (pycdc) recognize them.","description_zh":"单文件 Python 脚本，用于提取由 PyInstaller 构建的可执行文件的内容，Linux ELF 构建也无需借助其他工具即可提取。它在可执行文件中定位 PyInstaller 归档，报告 PyInstaller 和 Python 版本以及可能的入口脚本，并导出打包在 CArchive 中的文件和 PYZ 归档中的模块。它还会修复导出的 .pyc 文件头，使 uncompyle6、Decompyle++（pycdc）等 Python 字节码反编译器能够识别。","entry_url":"https://awesomerea.org/resources/pyinstxtractor/","entry_url_zh":"https://awesomerea.org/zh/resources/pyinstxtractor/","evidence_url":"https://github.com/extremecoders-re/pyinstxtractor/blob/815d31cf26bc71e62f851b2e549452e7b7c9dd98/README.md","group":"tools","id":"pyinstxtractor","json_url":"https://awesomerea.org/resources/pyinstxtractor/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pyinstxtractor/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pyinstxtractor/index.md","name":"PyInstaller Extractor (pyinstxtractor)","name_zh":"PyInstaller Extractor（pyinstxtractor）PyInstaller 程序提取工具","record_type":"resource","relationship":"foundation","requirements":["Runs under Python 2.x or 3.x and needs no PyInstaller installation. Latest release at review: 2026.07, published 2026-07-22 without attached files; it tags the reviewed master commit, whose script header still calls itself version 2.0. The README lists PyInstaller 2.0 through 6.19.0 as tested against a separate test-binary repository and supported.","Modules in the PYZ archive are extracted only when the script runs under the same Python major and minor version that built the executable; otherwise it warns and skips them, and an archive whose table of contents fails to unmarshal is skipped too. Entries that cannot be decompressed, such as those of encrypted PYZ archives, are saved unchanged with an .encrypted suffix rather than decoded.","The PyInstaller executable comes from the user, and turning the recovered bytecode into source needs a separate decompiler. Recovered code remains subject to the rights of the original program’s owner.","GPL-3.0."],"requirements_zh":["可在 Python 2.x 或 3.x 下运行，无需安装 PyInstaller。审阅时最新版本为 2026.07，发布于 2026-07-22，未附带任何文件；该标签指向所审阅的 master 提交，而脚本头部仍自称 2.0 版。README 列出 PyInstaller 2.0 至 6.19.0 各版本已用独立的测试样本仓库测试并受支持。","只有当脚本运行的 Python 主次版本与构建该可执行文件时所用的版本相同时，才会提取 PYZ 归档中的模块；否则会发出警告并跳过，目录表无法反序列化的归档同样会被跳过。无法解压的条目（例如加密 PYZ 归档中的条目）会原样保存并加上 .encrypted 后缀，而不会被解码。","PyInstaller 可执行文件由使用者自行提供；要把恢复出的字节码还原为源码，还需另用反编译器。恢复出的代码仍受原程序权利人的权利约束。","采用 GPL-3.0 许可。"],"targets":["app","binary"],"url":"https://github.com/extremecoders-re/pyinstxtractor","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/BinaryAnalysisPlatform/bap/blob/034bbd09646a589d5eb1f10b740177d628da80fd/README.md#L24-L124","https://github.com/BinaryAnalysisPlatform/bap/blob/034bbd09646a589d5eb1f10b740177d628da80fd/dune-project","https://github.com/BinaryAnalysisPlatform/bap/blob/034bbd09646a589d5eb1f10b740177d628da80fd/bap-llvm.opam","https://github.com/BinaryAnalysisPlatform/bap/blob/034bbd09646a589d5eb1f10b740177d628da80fd/CHANGES.md","https://github.com/BinaryAnalysisPlatform/bap/blob/034bbd09646a589d5eb1f10b740177d628da80fd/LICENSE","https://github.com/BinaryAnalysisPlatform/bap/releases/tag/v2.5.0","https://github.com/BinaryAnalysisPlatform/bap/releases/tag/v2.6.0-alpha","https://github.com/BinaryAnalysisPlatform/bap/compare/v2.5.0...034bbd09646a589d5eb1f10b740177d628da80fd"],"category":"binary-libraries","description_en":"OCaml binary analysis platform from Carnegie Mellon University. Its bap command loads a program, disassembles it, lifts instructions into an architecture-neutral intermediate representation, builds the control-flow graph and runs analysis passes, while objdump, raw-loader and mc modes handle linear disassembly, raw code blobs and single encodings. The README lists x86, x86-64, ARM, MIPS and PowerPC support, an interpreter, a microexecution interpreter, a symbolic executor and the Primus Lisp language for analyses, function stubs and SMT-solver queries; analyses are written as OCaml plugins or by embedding BAP as a library, with C bindings and minimal Python support in separate repositories.","description_zh":"卡内基梅隆大学开发的 OCaml 二进制分析平台。其 bap 命令可加载程序、进行反汇编、将指令提升为与架构无关的中间表示、构建控制流图并运行分析遍；objdump、raw 加载器和 mc 模式分别用于线性反汇编、原始代码块和单条指令编码。README 列出对 x86、x86-64、ARM、MIPS 和 PowerPC 的支持，以及解释器、微执行解释器、符号执行器和 Primus Lisp 语言，后者可用于编写分析、为函数编写桩模型和调用 SMT 求解器；分析以 OCaml 插件形式编写，或将 BAP 作为库嵌入应用，C 绑定和最基本的 Python 支持位于独立仓库。","entry_url":"https://awesomerea.org/resources/bap/","entry_url_zh":"https://awesomerea.org/zh/resources/bap/","evidence_url":"https://github.com/BinaryAnalysisPlatform/bap/blob/034bbd09646a589d5eb1f10b740177d628da80fd/README.md","group":"tools","id":"bap","json_url":"https://awesomerea.org/resources/bap/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/bap/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bap/index.md","name":"Binary Analysis Platform (BAP)","name_zh":"BAP 二进制分析平台","record_type":"resource","relationship":"foundation","requirements":["Latest stable release at review: v2.5.0, published 2022-07-11, with x86_64 Debian and RPM packages, tgz archives and sigs.zip/sigs.tar.gz signature archives; a v2.6.0-alpha development build dates from 2023-01-07. The reviewed master commit (2026-05-07) is 60 commits ahead of v2.5.0 and its opam packages carry version dev; the commit before it dates from April 2025.","The binary packages omit the OCaml development environment, so writing analyses needs a source install. The README recommends opam with OCaml 4.14.1 (opam install bap), offers a rolling testing opam repository that follows master, and also documents dune builds from a clone; the opam dependencies keep core_kernel and base below v0.16. The LLVM backend needs llvm-config (conf-bap-llvm 1.8+). The Ghidra and radare2 integrations, which the README calls experimental, and the Z3-based symbolic executor come with the bap-extra meta-package; IDA Pro integration is a separate package.","Input is a user-supplied executable, or a raw code blob opened with --loader=raw and a base address. The tree also has RISC-V, SystemZ and Thumb packages beyond the README's architecture list. Lifted output depends on per-architecture semantics coverage; the 2.5.0 changelog adds a --print-missing option to list unlifted instructions.","MIT license; contributions to the repository are accepted under MIT, while separately hosted plugins may use any license, including a proprietary one. The README names ForAllSecure Mayhem, Draper's CBAT tools and Fraunhofer FKIE's CWE Checker as projects built on BAP."],"requirements_zh":["审阅时最新稳定版为 v2.5.0，发布于 2022-07-11，提供 x86_64 的 Debian 与 RPM 软件包、tgz 压缩包以及 sigs.zip/sigs.tar.gz 签名包；另有一个 v2.6.0-alpha 开发构建，日期为 2023-01-07。所审阅的 master 提交（2026-05-07）比 v2.5.0 多 60 个提交，其 opam 包版本标为 dev，上一个提交则是 2025 年 4 月。","二进制软件包不含 OCaml 开发环境，编写分析需从源码安装。README 推荐使用 opam 和 OCaml 4.14.1（opam install bap），也提供跟随 master 分支滚动更新的 testing opam 仓库，并说明了从克隆仓库用 dune 构建的方法；opam 依赖将 core_kernel 和 base 限制在 v0.16 以下。LLVM 后端需要 llvm-config（conf-bap-llvm 1.8+）。README 称为实验性的 Ghidra 与 radare2 集成以及基于 Z3 的符号执行器包含在 bap-extra 元包中；IDA Pro 集成则是单独的软件包。","输入为用户提供的可执行文件，或通过 --loader=raw 并指定基址打开的原始代码块。仓库中还有 README 架构列表之外的 RISC-V、SystemZ 和 Thumb 软件包。提升结果取决于各架构语义的覆盖程度；2.5.0 更新日志新增了 --print-missing 选项，用于列出未能提升的指令。","MIT 许可证；提交到该仓库的贡献须采用 MIT，而独立托管的插件可使用任意许可证，包括专有许可证。README 列出 ForAllSecure Mayhem、Draper 的 CBAT 工具和 Fraunhofer FKIE 的 CWE Checker 等基于 BAP 构建的项目。"],"targets":["binary"],"url":"https://github.com/BinaryAnalysisPlatform/bap","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/furiousMAC/continuity/blob/d9fa98bddafbfa3baafc84e37a417d78a0598546/dissector/README.md","https://github.com/furiousMAC/continuity/blob/d9fa98bddafbfa3baafc84e37a417d78a0598546/dissector/INSTALL.md","https://github.com/furiousMAC/continuity/blob/d9fa98bddafbfa3baafc84e37a417d78a0598546/dissector/FIELDS.md","https://github.com/furiousMAC/continuity/blob/d9fa98bddafbfa3baafc84e37a417d78a0598546/dissector/CHANGELOG.md","https://github.com/furiousMAC/continuity/blob/d9fa98bddafbfa3baafc84e37a417d78a0598546/HARDWARE.md","https://github.com/furiousMAC/continuity/tree/d9fa98bddafbfa3baafc84e37a417d78a0598546/messages","https://github.com/furiousMAC/continuity/blob/d9fa98bddafbfa3baafc84e37a417d78a0598546/LICENSE.md","https://github.com/furiousMAC/continuity/commit/c125a620598bc132ac356202fcced6a481775909","https://petsymposium.org/2019/files/papers/issue4/popets-2019-0057.pdf"],"category":"protocol-analysis","description_en":"Reverse-engineering notes and a Wireshark dissector for Apple's proprietary Continuity Bluetooth LE advertisements, continuing the authors' PETS 2019 privacy study. Per-message pages document field layouts and observed values for 14 message types, including AirDrop, Handoff, Proximity Pairing, Nearby Info and Find My, and the dissector replaces Wireshark's packet-bthci_cmd.c so captured advertisements decode into named btcommon.apple fields.","description_zh":"针对 Apple 专有 Continuity 蓝牙低功耗广播的逆向工程笔记与 Wireshark 解析器，是作者 PETS 2019 隐私研究的延续。各报文页面记录了 AirDrop、Handoff、Proximity Pairing、Nearby Info、Find My 等 14 种报文类型的字段布局和观测到的取值；解析器替换 Wireshark 的 packet-bthci_cmd.c，使捕获到的广播能解码为具名的 btcommon.apple 字段。","entry_url":"https://awesomerea.org/resources/furiousmac-continuity/","entry_url_zh":"https://awesomerea.org/zh/resources/furiousmac-continuity/","evidence_url":"https://github.com/furiousMAC/continuity/blob/d9fa98bddafbfa3baafc84e37a417d78a0598546/README.md","group":"tools","id":"furiousmac-continuity","json_url":"https://awesomerea.org/resources/furiousmac-continuity/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/furiousmac-continuity/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/furiousmac-continuity/index.md","name":"furiousMAC Continuity","name_zh":"furiousMAC Apple Continuity 协议逆向与解析器","record_type":"resource","relationship":"foundation","requirements":["No GitHub releases; the reviewed commit, from 2025-08-29, merges a typo fix. The dissector README calls the March 2021 version for Wireshark 3.4.4 the most up to date: the 4.4.0 file contributed in 2024 ports it to build on Wireshark 4.4.0 without dissector changes and may not correctly dissect messages from the latest iOS versions. Fields the message tables mark as unknown or uncertain remain open.","On Linux and macOS, users download the Wireshark source for the matching version, replace epan/dissectors/packet-bthci_cmd.c with the project's file and build Wireshark. The repository also commits prebuilt 64-bit Windows Wireshark installers for 3.0.8 and 3.2.1, which the dissector README says are based on the original ShmooCon 2020 dissector and should not be used.","Capturing advertisements needs a BLE sniffer: HARDWARE.md recommends a Nordic nRF51 dongle with Nordic's sniffer firmware, or an Ubertooth One with the included btleshark.sh capture script. Analysis uses advertisements the analyst captures; the repository contains no sample captures.","GPL-2.0. The README credits many message types and field meanings to Celosia and Cunche's PETS 2020 paper."],"requirements_zh":["没有 GitHub 发布版本；所审阅的提交日期为 2025-08-29，合并的是一处拼写修正。解析器 README 称 2021 年 3 月针对 Wireshark 3.4.4 的版本是最新的：2024 年贡献的 4.4.0 文件只是将其移植到 Wireshark 4.4.0 上编译，解析逻辑没有改动，可能无法正确解析最新 iOS 版本的报文。报文表中标为未知或不确定的字段仍未解决。","在 Linux 和 macOS 上，需下载对应版本的 Wireshark 源码，用项目提供的文件替换 epan/dissectors/packet-bthci_cmd.c，再编译 Wireshark。仓库还提交了 3.0.8 和 3.2.1 版的 64 位 Windows Wireshark 预编译安装程序，解析器 README 称它们基于 ShmooCon 2020 时的初版解析器，不应再使用。","捕获广播需要 BLE 嗅探硬件：HARDWARE.md 推荐刷入 Nordic 嗅探固件的 Nordic nRF51 加密狗，或配合仓库内 btleshark.sh 抓包脚本使用的 Ubertooth One。分析对象是分析者自己捕获的广播，仓库中没有附带样本抓包。","采用 GPL-2.0。README 指出，许多报文类型和字段含义最早由 Celosia 与 Cunche 在 PETS 2020 论文中发现。"],"targets":["protocol"],"url":"https://github.com/furiousMAC/continuity","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/uxmal/reko/blob/63c497aef0f3ea23340b1ed560e51b72fd0d4281/doc/guide/reko.md","https://github.com/uxmal/reko/blob/63c497aef0f3ea23340b1ed560e51b72fd0d4281/doc/guide/cli.md","https://github.com/uxmal/reko/tree/63c497aef0f3ea23340b1ed560e51b72fd0d4281/src/Arch","https://github.com/uxmal/reko/tree/63c497aef0f3ea23340b1ed560e51b72fd0d4281/src/ImageLoaders","https://github.com/uxmal/reko/blob/63c497aef0f3ea23340b1ed560e51b72fd0d4281/.github/workflows/reko.yml","https://github.com/uxmal/reko/blob/63c497aef0f3ea23340b1ed560e51b72fd0d4281/subjects/README.md","https://github.com/uxmal/reko/blob/63c497aef0f3ea23340b1ed560e51b72fd0d4281/COPYING","https://github.com/uxmal/reko/releases/tag/version-0.12.5","https://www.nuget.org/packages/Reko.Decompiler.Runtime/0.12.5"],"category":"native-analysis","description_en":"General-purpose decompiler that loads executables or raw images, scans their machine code into a machine-independent register transfer language, groups it into procedures and decompiles them into high-level C code. The reviewed source has 64 architecture directories, from 6502, Z80 and PDP-11 to ARM, MIPS, PowerPC, RISC-V and x86, and loaders for formats including ELF, PE/MZ, Mach-O, COFF, Amiga Hunk, VMS, WebAssembly, Xbox XBE and Xbox 360 XEX. It runs as a Windows Forms GUI, a command-line client or a .NET library, and project files and scripts let users add names, types and comments.","description_zh":"通用反编译器：加载可执行文件或原始镜像，把机器码扫描转换为与机器无关的寄存器传输语言，再归并为过程并反编译为高级 C 代码。所审阅的源码包含 64 个架构目录，从 6502、Z80、PDP-11 到 ARM、MIPS、PowerPC、RISC-V 和 x86，并提供 ELF、PE/MZ、Mach-O、COFF、Amiga Hunk、VMS、WebAssembly、Xbox XBE 及 Xbox 360 XEX 等格式的加载器。可作为 Windows Forms 图形界面、命令行客户端或 .NET 库使用，用户还可通过项目文件和脚本补充名称、类型和注释。","entry_url":"https://awesomerea.org/resources/reko/","entry_url_zh":"https://awesomerea.org/zh/resources/reko/","evidence_url":"https://github.com/uxmal/reko/blob/63c497aef0f3ea23340b1ed560e51b72fd0d4281/README.md","group":"tools","id":"reko","json_url":"https://awesomerea.org/resources/reko/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/reko/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/reko/index.md","name":"Reko","name_zh":"Reko 通用反编译器","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 0.12.5, published 2026-09-29, with x86 and x64 Windows MSI installers and command-line and GUI zip builds; the Reko.Decompiler.Runtime NuGet package is also at 0.12.5. The reviewed master commit, from 2026-10-14, is ten commits ahead of that release.","Requires .NET 9.0. Source builds use the .NET 9.0 SDK, or Visual Studio 2026 for IDE users, plus CMake for the NativeProxy project; the WiX toolset is needed only for MSI installers. CI builds on Ubuntu, Windows and macOS. The cross-platform Avalonia GUI is still under development, and the user guide's non-Windows instructions still mention AppVeyor builds and Mono.","Input is a binary the user has the right to decompile; the README warns that many software licenses prohibit decompilation. Raw images need the loader, architecture, base and entry addresses given explicitly. The user guide says useful decompilation usually needs the user to supply types, names and comments, and that a heuristic scan may be needed when indirect jumps or calls hide code.","GPL-2.0 (COPYING). The complete architecture and format list is on the project wiki. The repository's subjects directory holds regression samples collected from other sources together with Reko's output for them; it is test data, not part of the tool."],"requirements_zh":["审阅时最新版本为 0.12.5，发布于 2026-09-29，提供 x86 与 x64 的 Windows MSI 安装包，以及命令行和图形界面的 zip 构建；Reko.Decompiler.Runtime NuGet 包同为 0.12.5。所审阅的 master 分支提交（2026-10-14）比该版本多十个提交。","需要 .NET 9.0。从源码构建需要 .NET 9.0 SDK（IDE 用户可用 Visual Studio 2026），NativeProxy 项目还需要 CMake；WiX 工具集仅在制作 MSI 安装包时需要。CI 在 Ubuntu、Windows 和 macOS 上构建。跨平台的 Avalonia 图形界面仍在开发中；用户指南中针对非 Windows 系统的说明仍提到 AppVeyor 构建和 Mono。","输入应为使用者有权反编译的二进制文件；README 提醒，许多软件许可禁止反编译。原始镜像需明确指定加载器、架构、基址和入口地址。用户指南指出，有用的反编译结果通常需要用户补充类型、名称和注释；当间接跳转或调用使代码难以发现时，可能还需要启发式扫描。","采用 GPL-2.0 许可（见 COPYING）。完整的架构与格式列表位于项目 wiki。仓库的 subjects 目录存放从其他来源收集的回归测试样本及 Reko 对它们的输出，属于测试数据，不是工具本身的一部分。"],"targets":["binary","firmware"],"url":"https://github.com/uxmal/reko","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/dyninst/dyninst/blob/0c083894f16d5ea9beb8ad1eea2b60b5c2f95f86/README.md#L47-L63","https://github.com/dyninst/dyninst/blob/0c083894f16d5ea9beb8ad1eea2b60b5c2f95f86/docs/README.md","https://github.com/dyninst/dyninst/blob/0c083894f16d5ea9beb8ad1eea2b60b5c2f95f86/docs/dyninstAPI/manual-latex/Introduction.tex","https://github.com/dyninst/dyninst/blob/0c083894f16d5ea9beb8ad1eea2b60b5c2f95f86/docs/parseAPI/manual-latex/1-Intro.tex","https://github.com/dyninst/dyninst/blob/0c083894f16d5ea9beb8ad1eea2b60b5c2f95f86/docs/instructionAPI/manual-latex/1-Intro.tex","https://github.com/dyninst/dyninst/blob/0c083894f16d5ea9beb8ad1eea2b60b5c2f95f86/docs/dataflowAPI/manual-latex/Intro.tex","https://github.com/dyninst/dyninst/blob/0c083894f16d5ea9beb8ad1eea2b60b5c2f95f86/cmake/DyninstPlatform.cmake","https://github.com/dyninst/dyninst/blob/0c083894f16d5ea9beb8ad1eea2b60b5c2f95f86/CMakeLists.txt","https://github.com/dyninst/dyninst/blob/0c083894f16d5ea9beb8ad1eea2b60b5c2f95f86/cmake/DyninstLanguageStandards.cmake","https://github.com/dyninst/dyninst/tree/0c083894f16d5ea9beb8ad1eea2b60b5c2f95f86/cmake/tpls","https://github.com/dyninst/dyninst/blob/0c083894f16d5ea9beb8ad1eea2b60b5c2f95f86/LICENSE.md","https://github.com/dyninst/dyninst/blob/0c083894f16d5ea9beb8ad1eea2b60b5c2f95f86/COPYRIGHT","https://github.com/dyninst/dyninst/releases/tag/v13.0.0"],"category":"dynamic-analysis","description_en":"Binary instrumentation, analysis and modification libraries from the Paradyn project. DyninstAPI inserts and changes instrumentation in a running program, or rewrites an executable or library on disk and writes the patched copy back, through one machine-independent interface that also supports static and dynamic analysis. Separately documented components handle symbol tables, line numbers and types (SymtabAPI), instruction decoding and disassembly (InstructionAPI), parsing into blocks, functions and loops (ParseAPI), dataflow analyses such as slicing (DataFlowAPI), process control, stack walking and patching.","description_zh":"源自 Paradyn 项目的二进制插桩、分析与修改库。DyninstAPI 可在运行中的程序里插入和修改插桩代码，也可改写磁盘上的可执行文件或库并写回修改后的副本；同一套与机器无关的接口还支持静态和动态分析。各组件有独立手册，分别负责符号表、行号与类型（SymtabAPI）、指令解码与反汇编（InstructionAPI）、解析为基本块、函数和循环（ParseAPI）、切片等数据流分析（DataFlowAPI），以及进程控制、栈回溯和代码修补。","entry_url":"https://awesomerea.org/resources/dyninst/","entry_url_zh":"https://awesomerea.org/zh/resources/dyninst/","evidence_url":"https://github.com/dyninst/dyninst/blob/0c083894f16d5ea9beb8ad1eea2b60b5c2f95f86/README.md","group":"tools","id":"dyninst","json_url":"https://awesomerea.org/resources/dyninst/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dyninst/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dyninst/index.md","name":"Dyninst","name_zh":"Dyninst 二进制插桩与分析库","record_type":"resource","relationship":"foundation","requirements":["The CMake platform check accepts Linux, FreeBSD and Windows hosts on x86-64, 32-bit x86, AArch64, ppc64le and riscv64, plus AMD GPU code-generation targets; InstructionAPI documents x86, x86-64, ARMv8-64 and 32/64-bit PowerPC decoding. The README calls AArch64 dynamic instrumentation experimental and incomplete, and its known issues include no Windows 64-bit or Windows rewriter mode, uncaught exceptions in relocated code, a fragile Windows stack walker and a crash when parsing a binary with no functions.","Latest release at review: v13.0.0, published 2024-03-21. The reviewed master commit still declares version 13.0.0 and is 590 commits ahead of that tag; the README says the bundled v13.0.0 PDF manuals are a snapshot, so current behavior needs manuals built from source with pdflatex.","Install with Spack or build from source with CMake 3.14+ (3.19.0 is rejected), a C11/C++11 toolchain (GCC 6+), Boost 1.71+, TBB 2019.9+ and, on Unix, elfutils 0.186+; Docker containers for development are described in the docker directory. Users supply their own executables, libraries or running processes to analyze or instrument.","LGPL-2.1 (LICENSE.md). COPYRIGHT credits Barton P. Miller with contributions from LLNS, Red Hat and Bull SAS, and DataFlowAPI incorporates Rose Compiler Project code under its own copyright notice."],"requirements_zh":["CMake 平台检查接受 Linux、FreeBSD 和 Windows 主机，架构为 x86-64、32 位 x86、AArch64、ppc64le 和 riscv64，另有 AMD GPU 代码生成目标；InstructionAPI 文档列出 x86、x86-64、ARMv8-64 以及 32/64 位 PowerPC 指令解码。README 称 AArch64 动态插桩仍属实验性且不完整，已知问题包括不支持 Windows 64 位模式和 Windows 改写模式、重定位代码中的异常无法捕获、Windows 栈回溯不稳定，以及解析不含函数的二进制时会崩溃。","审阅时最新版本为 v13.0.0，发布于 2024-03-21。所审阅的 master 分支提交仍声明版本 13.0.0，领先该标签 590 个提交；README 说明随附的 v13.0.0 PDF 手册只是快照，了解当前行为需用 pdflatex 从源码构建手册。","可通过 Spack 安装，或从源码构建：需要 CMake 3.14+（拒绝 3.19.0）、C11/C++11 工具链（GCC 6+）、Boost 1.71+、TBB 2019.9+，在 Unix 上还需 elfutils 0.186+；docker 目录介绍了用于开发的 Docker 容器。用户需自备要分析或插桩的可执行文件、库或运行中的进程。","采用 LGPL-2.1 许可（LICENSE.md）。COPYRIGHT 将版权归于 Barton P. Miller，并列出 LLNS、Red Hat 和 Bull SAS 的贡献；DataFlowAPI 包含 Rose Compiler Project 的代码，适用其单独的版权声明。"],"targets":["binary"],"url":"https://github.com/dyninst/dyninst","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/m4b/goblin/blob/24a62600a4a75c145c08ec9dd82964acf1bb833b/Cargo.toml","https://github.com/m4b/goblin/blob/24a62600a4a75c145c08ec9dd82964acf1bb833b/CHANGELOG.md","https://github.com/m4b/goblin/blob/24a62600a4a75c145c08ec9dd82964acf1bb833b/src/lib.rs#L286-L323","https://github.com/m4b/goblin/blob/24a62600a4a75c145c08ec9dd82964acf1bb833b/src/pe/options.rs","https://github.com/m4b/goblin/tree/24a62600a4a75c145c08ec9dd82964acf1bb833b/src/pe","https://github.com/m4b/goblin/tree/24a62600a4a75c145c08ec9dd82964acf1bb833b/src/mach","https://github.com/m4b/goblin/tree/24a62600a4a75c145c08ec9dd82964acf1bb833b/src/elf","https://github.com/m4b/goblin/blob/24a62600a4a75c145c08ec9dd82964acf1bb833b/LICENSE","https://github.com/m4b/goblin/tree/0.10.6","https://docs.rs/crate/goblin/0.10.7"],"category":"binary-libraries","description_en":"Rust crate for zero-copy, endian-aware parsing of ELF32/64, 32/64-bit Mach-O and multi-architecture fat containers, PE32/PE32+, COFF objects, Terse Executable (TE) images and Unix/BSD archives; Object::parse picks the format from its magic bytes. Parsed structures cover ELF headers, sections, symbols, dynamic entries, relocations and notes, Mach-O load commands, imports and exports, and PE imports, exports, relocations, TLS, resources, exception and unwind data, Authenticode certificates and the .NET CLR header. Feature flags can reduce it to std-free #[repr(C)] struct definitions for kernels and other no_std code.","description_zh":"以零拷贝、感知字节序的方式解析二进制格式的 Rust crate，支持 ELF32/64、32/64 位 Mach-O 及多架构 fat 容器、PE32/PE32+、COFF 目标文件、Terse Executable（TE）镜像以及 Unix/BSD 归档；Object::parse 根据魔数自动识别格式。解析结果涵盖 ELF 的文件头、节区、符号、动态段条目、重定位和 note，Mach-O 的加载命令及导入导出，以及 PE 的导入导出、重定位、TLS、资源、异常与展开信息、Authenticode 证书和 .NET CLR 头。借助特性开关，它还可精简为不依赖 std 的 #[repr(C)] 结构体定义，供内核等 no_std 代码使用。","entry_url":"https://awesomerea.org/resources/goblin/","entry_url_zh":"https://awesomerea.org/zh/resources/goblin/","evidence_url":"https://github.com/m4b/goblin/blob/24a62600a4a75c145c08ec9dd82964acf1bb833b/README.md","group":"tools","id":"goblin","json_url":"https://awesomerea.org/resources/goblin/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/goblin/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/goblin/index.md","name":"goblin","name_zh":"goblin 二进制格式解析库","record_type":"resource","relationship":"foundation","requirements":["Latest tag at review: 0.10.6 (also tagged v0.10.6) on the 2026-05-25 version-bump commit; the project publishes no GitHub releases. crates.io also lists 0.10.7, published 2026-05-28, which has no matching tag or changelog entry. The reviewed master commit (2026-08-30) still declares 0.10.6.","Used as a Cargo dependency; it needs rustc 1.85.0+ (Rust 2024 edition) and depends on plain, scroll and an optional log. Default features enable every format with std; elf32/elf64, mach32/mach64, pe32/pe64, te and archive select backends, endian_fd parses by the binary's own byte order, and Mach-O, PE and TE parsing requires alloc and endian_fd.","Input is a byte slice holding an executable, object file or archive the user supplies. goblin parses format metadata only and includes no disassembler, so code needs a separate instruction decoder. PE parse options can skip RVA resolution, attribute certificates, TLS data, resources or imports, and the changelog describes an ELF and PE permissive mode for packed, broken or malware samples.","MIT license. The README quotes a report of 100 million fuzzing runs, and the repository holds cargo-fuzz and AFL harnesses."],"requirements_zh":["审阅时最新标签为 0.10.6（另有同名的 v0.10.6 标签），位于 2026-05-25 的版本号更新提交；项目不发布 GitHub Release。crates.io 另列有 0.10.7，发布于 2026-05-28，但仓库中没有对应的标签或更新日志条目。所审阅的 master 提交（2026-08-30）仍声明版本 0.10.6。","作为 Cargo 依赖使用，需要 rustc 1.85.0+（Rust 2024 edition），依赖 plain、scroll 和可选的 log。默认特性启用全部格式及 std；elf32/elf64、mach32/mach64、pe32/pe64、te 和 archive 用于选择后端，endian_fd 按二进制自身的字节序解析，而 Mach-O、PE 和 TE 解析需要 alloc 与 endian_fd。","输入为用户自行提供的可执行文件、目标文件或归档的字节切片。goblin 只解析格式元数据，不包含反汇编器，代码部分需另用指令解码器处理。PE 解析选项可跳过 RVA 解析、属性证书、TLS 数据、资源或导入表；更新日志还提到 ELF 与 PE 的宽松解析模式，用于处理加壳、损坏或恶意软件样本。","MIT 许可证。README 引用了一份 1 亿次模糊测试的报告，仓库中也有 cargo-fuzz 与 AFL 测试框架。"],"targets":["binary"],"url":"https://github.com/m4b/goblin","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/alufers/mitmproxy2swagger/blob/f432acafa5907258f0f529ff582c75fefdca00d7/pyproject.toml"],"category":"web-analysis","description_en":"Command-line tool that reverse-engineers undocumented REST APIs from captured traffic. It reads a mitmproxy flow file, or a HAR export from the browser DevTools, and generates an OpenAPI 3.0 specification describing the observed endpoints. Running it again over further captures safely merges the new data into an existing schema.","description_zh":"命令行工具，从捕获的流量还原未公开的 REST API。它读取 mitmproxy 流文件或浏览器 DevTools 导出的 HAR，生成描述所观察端点的 OpenAPI 3.0 规范。对更多捕获再次运行时，会将新数据安全合并到已有规范中。","entry_url":"https://awesomerea.org/resources/mitmproxy2swagger/","entry_url_zh":"https://awesomerea.org/zh/resources/mitmproxy2swagger/","evidence_url":"https://github.com/alufers/mitmproxy2swagger/blob/f432acafa5907258f0f529ff582c75fefdca00d7/README.md","group":"tools","id":"mitmproxy2swagger","json_url":"https://awesomerea.org/resources/mitmproxy2swagger/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/mitmproxy2swagger/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mitmproxy2swagger/index.md","name":"mitmproxy2swagger","name_zh":"mitmproxy2swagger","record_type":"resource","relationship":"foundation","requirements":["Installed from PyPI (also packaged for Arch Linux) or run via the provided Dockerfile; pyproject.toml marks version 0.15.0 and requires Python 3.12+.","Takes a mitmproxy flow file or a browser HAR export as input; the analyst captures that traffic separately, for example with mitmproxy, and supplies the API base-URL prefix. The two-pass workflow lets several captures be merged into an existing schema.","Intended for APIs and traffic the analyst is authorized to capture and analyze. The project metadata in pyproject.toml declares the MIT license; no standalone LICENSE file is present for GitHub to detect."],"requirements_zh":["通过 PyPI 安装（亦有 Arch Linux 软件包），或使用随附的 Dockerfile 运行；pyproject.toml 标注版本 0.15.0，要求 Python 3.12+。","以 mitmproxy 流文件或浏览器 HAR 导出作为输入；使用者需另行捕获这些流量（例如通过 mitmproxy），并提供 API 的基础 URL 前缀。两阶段流程可将多次捕获合并到已有规范中。","仅用于分析者有权捕获与分析的 API 和流量。pyproject.toml 中的项目元数据声明采用 MIT 许可证；仓库没有可供 GitHub 识别的独立 LICENSE 文件。"],"targets":["protocol","website"],"url":"https://github.com/alufers/mitmproxy2swagger","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/commaai/opendbc/blob/48c7f06c6f27c41e7169242acb03ef9775658deb/README.md#L69-L105","https://github.com/commaai/opendbc/blob/48c7f06c6f27c41e7169242acb03ef9775658deb/README.md#L137-L141","https://github.com/commaai/opendbc/blob/48c7f06c6f27c41e7169242acb03ef9775658deb/opendbc/dbc/README.md","https://github.com/commaai/opendbc/blob/48c7f06c6f27c41e7169242acb03ef9775658deb/docs/CARS.md","https://github.com/commaai/opendbc/tree/48c7f06c6f27c41e7169242acb03ef9775658deb/opendbc/can","https://github.com/commaai/opendbc/blob/48c7f06c6f27c41e7169242acb03ef9775658deb/pyproject.toml","https://github.com/commaai/opendbc/blob/48c7f06c6f27c41e7169242acb03ef9775658deb/RELEASES.md","https://github.com/commaai/opendbc/blob/48c7f06c6f27c41e7169242acb03ef9775658deb/LICENSE","https://github.com/commaai/opendbc/releases/tag/v0.3.1","https://pypi.org/project/opendbc/0.3.1/"],"category":"protocol-analysis","description_en":"comma.ai's repository of DBC files describing the CAN messages and signals of many car makes, with a Python library that parses and builds CAN messages from those definitions; its porting guide has contributors reverse engineer new messages from recorded drives in the cabana tool. Per-brand car ports built on it parse vehicle state, identify models from ECU firmware versions and generate openpilot's steering, gas and brake messages, while safety code for comma's panda interface restricts which messages can be sent.","description_zh":"comma.ai 维护的 DBC 文件库，描述多个汽车品牌的 CAN 报文与信号，并附带一个依据这些定义解析和构造 CAN 报文的 Python 库；其车型移植指南要求贡献者在 cabana 工具中利用行车记录逆向分析新的报文。基于它的各品牌车型移植代码可解析车辆状态、根据 ECU 固件版本识别车型，并生成 openpilot 的转向、油门和制动报文；面向 comma panda 接口的安全代码则限制哪些报文可以发出。","entry_url":"https://awesomerea.org/resources/opendbc/","entry_url_zh":"https://awesomerea.org/zh/resources/opendbc/","evidence_url":"https://github.com/commaai/opendbc/blob/48c7f06c6f27c41e7169242acb03ef9775658deb/README.md","group":"tools","id":"opendbc","json_url":"https://awesomerea.org/resources/opendbc/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/opendbc/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/opendbc/index.md","name":"opendbc","name_zh":"opendbc 汽车 CAN 报文定义库","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.3.1, published 2026-04-22 on GitHub and PyPI; the reviewed master commit is 296 commits ahead of it. docs/CARS.md lists 406 known cars: 341 with upstream support, 14 community, 32 dashcam-only, 16 not compatible and 3 in a custom category. The README says it and that list are the project's only documentation.","The package requires Python 3.11 or 3.12 because pycapnp does not work with 3.13. From a clone, test.sh installs dependencies, builds with SCons, runs the tests and lints; the README roadmap still lists pip install opendbc as open even though PyPI carries the 0.3.x releases. For a live car, the porting guide starts with a comma four and a car-specific harness, and the DBC README connects through a panda.","New definitions come from the analyst's own recorded drives loaded in cabana, which lives in the openpilot repository; the README also points to the commaCarSegments dataset of CAN data from 300 car models. The DBC README recommends recording uncertain signal interpretations as comments, so definitions cover only what contributors have documented for each car.","MIT. The README says panda safety firmware starts with silent CAN buses and that some output modes are disabled in release firmware."],"requirements_zh":["审阅时最新版本为 v0.3.1，于 2026-04-22 发布在 GitHub 和 PyPI；所审阅的 master 提交比它多 296 个提交。docs/CARS.md 列出 406 款已知车型：341 款为上游支持，14 款为社区支持，32 款仅支持行车记录仪模式，16 款不兼容，另有 3 款属于自定义类别。README 称它与这份车型列表就是项目的全部文档。","软件包要求 Python 3.11 或 3.12，因为 pycapnp 无法在 3.13 上运行。克隆仓库后，test.sh 会安装依赖、用 SCons 构建、运行测试并执行代码检查；尽管 PyPI 上已有 0.3.x 版本，README 路线图仍将 pip install opendbc 列为未完成事项。连接实车时，移植指南以 comma four 和适配具体车型的线束为起点，DBC README 则通过 panda 连接。","新的报文定义来自分析者自己的行车记录，并在 openpilot 仓库中的 cabana 工具里分析；README 还提到 commaCarSegments 数据集，其中包含 300 款车型的 CAN 数据。DBC README 建议把不确定的信号解释写成注释，因此这些定义只涵盖贡献者已为各车型记录的内容。","采用 MIT 许可。README 称 panda 安全固件启动时 CAN 总线处于静默状态，部分输出模式在正式版固件中被禁用。"],"targets":["protocol"],"url":"https://github.com/commaai/opendbc","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/mandiant/flare-floss/blob/e10079080ec5b6fb7584c5331842a94eb4a9b301/doc/theory.md","https://github.com/mandiant/flare-floss/blob/e10079080ec5b6fb7584c5331842a94eb4a9b301/doc/usage.md","https://github.com/mandiant/flare-floss/blob/e10079080ec5b6fb7584c5331842a94eb4a9b301/doc/installation.md","https://github.com/mandiant/flare-floss/blob/e10079080ec5b6fb7584c5331842a94eb4a9b301/doc/language_specific_strings.md","https://github.com/mandiant/flare-floss/blob/e10079080ec5b6fb7584c5331842a94eb4a9b301/scripts/README.md","https://github.com/mandiant/flare-floss/blob/e10079080ec5b6fb7584c5331842a94eb4a9b301/pyproject.toml","https://github.com/mandiant/flare-floss/blob/e10079080ec5b6fb7584c5331842a94eb4a9b301/floss/version.py","https://github.com/mandiant/flare-floss/blob/e10079080ec5b6fb7584c5331842a94eb4a9b301/LICENSE.txt","https://github.com/mandiant/flare-floss/releases/tag/v3.2.0","https://github.com/mandiant/flare-floss/releases/tag/quantumstrand-beta3","https://pypi.org/project/flare-floss/3.2.0/"],"category":"native-analysis","description_en":"Mandiant FLARE string extractor for malware analysis that is used like strings.exe but also recovers obfuscated strings. Besides static ASCII and UTF-16LE strings it extracts stack strings, tight strings and strings decoded by functions: it heuristically identifies decoding routines, recovers their arguments through control-flow analysis, emulates them and diffs memory before and after emulation. It also extracts Go and Rust strings and accepts PE, ELF and raw 32- or 64-bit shellcode; JSON results can be turned into import scripts for IDA Pro, Ghidra, Binary Ninja, radare2 and x64dbg.","description_zh":"Mandiant FLARE 团队的恶意软件字符串提取工具，用法与 strings.exe 相同，但还能还原混淆字符串。除了静态的 ASCII 和 UTF-16LE 字符串，它还能提取栈字符串、紧凑栈字符串（tight strings）以及由函数解码出的字符串：先用启发式方法识别解码函数，通过控制流分析取得调用参数，再模拟执行这些函数，并比较模拟前后的内存状态。它还能提取 Go 和 Rust 字符串，支持 PE、ELF 以及 32 位或 64 位原始 shellcode；JSON 结果可转换为 IDA Pro、Ghidra、Binary Ninja、radare2 和 x64dbg 的导入脚本。","entry_url":"https://awesomerea.org/resources/flare-floss/","entry_url_zh":"https://awesomerea.org/zh/resources/flare-floss/","evidence_url":"https://github.com/mandiant/flare-floss/blob/e10079080ec5b6fb7584c5331842a94eb4a9b301/README.md","group":"tools","id":"flare-floss","json_url":"https://awesomerea.org/resources/flare-floss/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/flare-floss/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/flare-floss/index.md","name":"FLOSS (FLARE Obfuscated String Solver)","name_zh":"FLOSS 混淆字符串提取工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v3.2.0, published 2026-10-16 as standalone Linux, macOS and Windows executables and on PyPI for Python 3.10+; it adds basic ELF support and moves the Ghidra import script to PyGhidra. The reviewed master commit has 857 commits that are not in v3.2.0, which in turn has 8 not on master: it merges the QUANTUMSTRAND preview, so the layout-aware static strings with file-structure context and tags, the HTML report and the hosted viewer described in its README have so far shipped only in quantumstrand pre-releases (latest quantumstrand-beta3, 2026-04-22). Master requires Python 3.12+ and still reports version 3.1.1.","Decoding uses static emulation with embedded FLIRT signatures to identify library functions; files above 64 MB abort deobfuscation unless --large-file is given. Shellcode is recognized by .sc32/.raw32/.sc64/.raw64 extensions or selected with -f. Source clones need Git LFS for the tag databases and signature files, and the installation guide calls the Python API unstable between releases, leaving the CLI as the stable interface.","Samples come from the analyst. v3.2.0 fixed an issue in which crafted .viv vivisect workspace files, either the sample itself or one beside it, could execute code during analysis in v3.1.1 and earlier and in the QUANTUMSTRAND pre-releases; saved workspaces now load only with FLOSS_LOAD_VIV_WORKSPACE=1. Decoded strings come only from routines that FLOSS identifies as decoders and emulates.","Apache-2.0."],"requirements_zh":["审阅时最新版本为 v3.2.0，发布于 2026-10-16，提供 Linux、macOS 和 Windows 独立可执行文件，并在 PyPI 上发布（需要 Python 3.10+）；该版本新增基本的 ELF 支持，并把 Ghidra 导入脚本迁移到 PyGhidra。所审阅的 master 提交中有 857 个提交不在 v3.2.0 中，而 v3.2.0 也有 8 个提交不在 master 上：master 已合并 QUANTUMSTRAND 预览版，因此其 README 中介绍的带文件结构上下文和标签的布局感知静态字符串、HTML 报告和在线查看器，目前只随 quantumstrand 预发布版本提供（最新为 2026-04-22 的 quantumstrand-beta3）。master 要求 Python 3.12+，版本号仍为 3.1.1。","解码采用静态模拟执行，并借助内置的 FLIRT 签名识别库函数；超过 64 MB 的文件会中止去混淆，除非指定 --large-file。shellcode 可通过 .sc32/.raw32/.sc64/.raw64 扩展名识别，或用 -f 指定。从源码克隆时需要 Git LFS 来获取标签数据库和签名文件；安装指南指出 Python API 在不同版本之间可能变化，稳定的接口是命令行。","样本由分析人员自行提供。v3.2.0 修复了一个问题：在 v3.1.1 及更早版本和 QUANTUMSTRAND 预发布版本中，精心构造的 .viv vivisect 工作区文件（无论是样本本身还是样本旁的同名文件）可在分析时执行代码；现在只有设置 FLOSS_LOAD_VIV_WORKSPACE=1 时才会加载已保存的工作区。解码出的字符串只来自 FLOSS 识别为解码函数并成功模拟执行的例程。","采用 Apache-2.0 许可。"],"targets":["binary"],"url":"https://github.com/mandiant/flare-floss","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/zyantific/zydis/blob/a95bb71013436547f689fc0b380f48edf663066e/README.md#L73-L135","https://github.com/zyantific/zydis/blob/a95bb71013436547f689fc0b380f48edf663066e/README.md#L159-L175","https://github.com/zyantific/zydis/blob/a95bb71013436547f689fc0b380f48edf663066e/CMakeLists.txt#L1-L80","https://github.com/zyantific/zydis/blob/a95bb71013436547f689fc0b380f48edf663066e/meson.build","https://github.com/zyantific/zydis/blob/a95bb71013436547f689fc0b380f48edf663066e/include/Zydis/DecoderTypes.h","https://github.com/zyantific/zydis/blob/a95bb71013436547f689fc0b380f48edf663066e/include/Zydis/Encoder.h","https://github.com/zyantific/zydis/blob/a95bb71013436547f689fc0b380f48edf663066e/include/Zydis/Formatter.h","https://github.com/zyantific/zydis/blob/a95bb71013436547f689fc0b380f48edf663066e/tools/ZydisDisasm.c","https://github.com/zyantific/zydis/blob/a95bb71013436547f689fc0b380f48edf663066e/.gitmodules","https://github.com/zyantific/zydis/blob/a95bb71013436547f689fc0b380f48edf663066e/LICENSE","https://github.com/zyantific/zydis/releases/tag/v4.1.1","https://github.com/zyantific/zydis/releases/tag/v4.1.0","https://github.com/zyantific/zydis/compare/v4.1.1...a95bb71013436547f689fc0b380f48edf663066e"],"category":"binary-libraries","description_en":"Lightweight C11 x86/x86-64 disassembler and code-generation library. Its decoder reports each instruction's operands, accessed CPU and FPU flags, ISA set and extension and branch type; the formatter prints Intel, MASM or AT&T syntax, and the encoder assembles instructions from encoder requests, which can also be derived from decoded instructions. ZydisDisasm and ZydisInfo command-line tools are included, and the official Rust and Python 3 bindings live in separate repositories.","description_zh":"轻量级 C11 x86/x86-64 反汇编与代码生成库。解码器可报告每条指令的操作数、所访问的 CPU 与 FPU 标志、ISA 集与扩展以及分支类型；格式化器可输出 Intel、MASM 或 AT&T 语法，编码器则根据编码请求生成指令，请求也可由已解码的指令转换而来。仓库附带 ZydisDisasm 与 ZydisInfo 命令行工具，官方 Rust 与 Python 3 绑定位于独立仓库。","entry_url":"https://awesomerea.org/resources/zydis/","entry_url_zh":"https://awesomerea.org/zh/resources/zydis/","evidence_url":"https://github.com/zyantific/zydis/blob/a95bb71013436547f689fc0b380f48edf663066e/README.md","group":"tools","id":"zydis","json_url":"https://awesomerea.org/resources/zydis/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/zydis/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/zydis/index.md","name":"Zydis","name_zh":"Zydis x86 反汇编与代码生成库","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v4.1.1, published 2025-02-16 with no attached files; v4.1.0 (2024-02-04) carries the zydis-amalgamated single-header and single-source archives the README describes. The README says master holds the next, unreleased version without API stability guarantees; the reviewed master commit (2026-07-27) declares 5.0.0 and is 121 commits ahead of and 59 behind the v4.1.1 tag.","Build with CMake 3.10+ (the README lists Windows, macOS, Linux and the BSDs), the Meson 1.3+ build file, the maintained Visual Studio 2022 project, or the amalgamated files with any C11 compiler. A recursive clone fetches the Zycore support library from its zycore-c submodule unless a system copy is forced. The README lists Arch, Debian, Ubuntu, Homebrew, NixOS and vcpkg packages, and CMake options can disable the decoder, encoder, formatter, AVX-512 or KNC support or force minimal decoding mode.","The caller supplies code bytes and selects a 16-, 32- or 64-bit machine mode; ZydisDisasm reads a raw byte file. No executable-format loader is documented, so locating code in PE, ELF or firmware images needs another tool.","MIT license; Zycore is a separate MIT-licensed zyantific repository. The README's statements about performance, dependency-free and allocation-free operation, thread safety, testing on Windows, macOS, FreeBSD, Linux and UEFI, and use in x64dbg, Firefox and WebKit."],"requirements_zh":["审阅时最新版本为 v4.1.1，发布于 2025-02-16，未附带文件；README 所述的 zydis-amalgamated 单头文件加单源文件压缩包见于 v4.1.0（2024-02-04）。README 说明 master 分支存放尚未发布的下一版本，不保证 API 稳定；所审阅的 master 提交（2026-07-27）声明版本 5.0.0，比 v4.1.1 标签多 121 个提交、少 59 个提交。","可使用 CMake 3.10+（README 列出 Windows、macOS、Linux 和各 BSD）、Meson 1.3+ 构建文件、官方维护的 Visual Studio 2022 项目，或在任意 C11 编译器上使用合并版文件进行构建。递归克隆会从 zycore-c 子模块获取 Zycore 支持库，除非强制使用系统已安装的版本。README 列出 Arch、Debian、Ubuntu、Homebrew、NixOS 和 vcpkg 软件包；CMake 选项可关闭解码器、编码器、格式化器、AVX-512 或 KNC 支持，或强制使用最小解码模式。","调用方需提供代码字节，并选择 16、32 或 64 位机器模式；ZydisDisasm 读取原始字节文件。文档未描述可执行文件格式加载器，因此要在 PE、ELF 或固件镜像中定位代码需借助其他工具。","MIT 许可证；Zycore 是 zyantific 的独立仓库，同样采用 MIT 许可证。README 中关于性能、无第三方依赖与无动态内存分配、线程安全、在 Windows、macOS、FreeBSD、Linux 和 UEFI 上测试以及被 x64dbg、Firefox 和 WebKit 采用的说法。"],"targets":["binary"],"url":"https://github.com/zyantific/zydis","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/ma1co/Sony-PMCA-RE/blob/a82f5baaa8e9c3d9f28f94699e860fb2e48cc8e0/README.md#L30-L76","https://github.com/ma1co/Sony-PMCA-RE/blob/a82f5baaa8e9c3d9f28f94699e860fb2e48cc8e0/docs/AppInstallation.md","https://github.com/ma1co/Sony-PMCA-RE/blob/a82f5baaa8e9c3d9f28f94699e860fb2e48cc8e0/pmca-console.py","https://github.com/ma1co/Sony-PMCA-RE/blob/a82f5baaa8e9c3d9f28f94699e860fb2e48cc8e0/requirements.txt","https://github.com/ma1co/Sony-PMCA-RE/blob/a82f5baaa8e9c3d9f28f94699e860fb2e48cc8e0/.github/workflows/build.yml","https://github.com/ma1co/Sony-PMCA-RE/blob/a82f5baaa8e9c3d9f28f94699e860fb2e48cc8e0/updatershell/pack.py","https://github.com/ma1co/Sony-PMCA-RE/blob/a82f5baaa8e9c3d9f28f94699e860fb2e48cc8e0/LICENSE.txt","https://github.com/ma1co/Sony-PMCA-RE/releases/tag/v0.18","https://openmemories.readthedocs.io/devices.html"],"category":"firmware","description_en":"USB tool built from reverse engineering Sony digital cameras. On supported models it reads camera information and installs Android apps through the PlayMemories Camera Apps mechanism, while its firmware-updater and service-mode shells can dump firmware, run Linux commands and change settings. The repository's notes describe the app-installation exchange between the Sony app store, the browser plugin and the camera.","description_zh":"基于逆向 Sony 数码相机而开发的 USB 工具。在受支持的机型上，它可读取相机信息，并借助 PlayMemories Camera Apps 机制安装 Android 应用；其固件更新模式和服务模式下的 shell 可转储固件、执行 Linux 命令并调整设置。仓库中的说明文档记录了 Sony 应用商店、浏览器插件与相机之间的应用安装交互过程。","entry_url":"https://awesomerea.org/resources/sony-pmca-re/","entry_url_zh":"https://awesomerea.org/zh/resources/sony-pmca-re/","evidence_url":"https://github.com/ma1co/Sony-PMCA-RE/blob/a82f5baaa8e9c3d9f28f94699e860fb2e48cc8e0/README.md","group":"tools","id":"sony-pmca-re","json_url":"https://awesomerea.org/resources/sony-pmca-re/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/sony-pmca-re/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sony-pmca-re/index.md","name":"Sony-PMCA-RE","name_zh":"Sony-PMCA-RE Sony 数码相机逆向工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.18, published 2022-04-08, with Windows and macOS builds of the pmca-console command line and the more limited pmca-gui. The reviewed master commit, from 2022-08-18, is 22 commits ahead of it. On Linux the Python 3 sources run with the listed requirements and libusb; the CI builds use Python 3.6 and PyInstaller. As checked on 2026-10-20, the reviewed 2022-08-18 commit is still the master head, GitHub’s last recorded push was 2024-07-27, the repository is not archived and the README does not mark it as maintained, superseded or archived.","Needs a supported Sony camera connected over USB; the README links an external OpenMemories compatibility list. App installation needs a camera with PlayMemories Camera Apps support. Firmware-updater mode uses the operating system's mass-storage driver and excludes CXD90045 and CXD90057 devices, whose firmware is cryptographically signed. Service mode is console-only and needs libusb drivers on Windows; macOS mass-storage access needs Sony's camera driver.","The README calls the project an early-stage experiment based on reverse engineering and warns that it could harm the camera, with no responsibility taken. Firmware-file unpacking lives in the separate fwtool project.","MIT. The repository holds no Sony firmware or apps; the prebuilt updater payloads under updatershell/fdat are packed by pack.py from the project's own sources."],"requirements_zh":["审阅时最新版本为 v0.18，发布于 2022-04-08，提供 pmca-console 命令行工具和功能较少的 pmca-gui 的 Windows 与 macOS 版本。所审阅的 master 分支提交（2022-08-18）比该版本多 22 个提交。在 Linux 上需按所列依赖和 libusb 运行 Python 3 源码；CI 构建使用 Python 3.6 和 PyInstaller。据 2026-10-20 核查，所审阅的 2022-08-18 提交仍是 master 分支最新提交，GitHub 记录的最后一次推送为 2024-07-27，仓库未归档，README 未标注其仍在维护、已被取代或已归档。","需要通过 USB 连接受支持的 Sony 相机；README 链接了外部的 OpenMemories 兼容机型列表。安装应用要求相机支持 PlayMemories Camera Apps。固件更新模式使用操作系统自带的大容量存储驱动，不适用于固件经过加密签名的 CXD90045 和 CXD90057 机型。服务模式仅限命令行使用，在 Windows 上需安装 libusb 驱动；macOS 上以大容量存储模式访问相机需安装 Sony 的相机驱动。","README 称该项目是基于逆向工程的早期实验，并警告可能损坏相机，开发者不承担任何责任。固件文件的解包由独立的 fwtool 项目负责。","采用 MIT 许可。仓库中没有 Sony 固件或应用；updatershell/fdat 下预先构建的更新程序载荷由 pack.py 用项目自身的源码打包生成。"],"targets":["firmware","protocol"],"url":"https://github.com/ma1co/Sony-PMCA-RE","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/QBDI/QBDI/blob/3318580550215a0c7a64e9c2476e02eb5fc55f14/README.rst#L18-L52","https://github.com/QBDI/QBDI/blob/3318580550215a0c7a64e9c2476e02eb5fc55f14/docs/source/intro.rst","https://github.com/QBDI/QBDI/blob/3318580550215a0c7a64e9c2476e02eb5fc55f14/docs/source/api_description.rst","https://github.com/QBDI/QBDI/blob/3318580550215a0c7a64e9c2476e02eb5fc55f14/docs/source/changelog.rst","https://github.com/QBDI/QBDI/blob/3318580550215a0c7a64e9c2476e02eb5fc55f14/LICENSE.txt","https://github.com/QBDI/QBDI/releases/tag/v0.12.1","https://pypi.org/project/PyQBDI/0.12.1/"],"category":"dynamic-analysis","description_en":"Quarkslab's modular dynamic binary instrumentation (DBI) framework, which JIT-recompiles a program's basic blocks inside its own process so that an instrumentation tool can register callbacks before or after instructions, on memory reads and writes, and on VM events. The engine is a library that can start an instrumented execution anywhere in a process, scripted from C, C++, Python (PyQBDI) or Frida JavaScript. It has no preferred injection method: it bundles the LD_PRELOAD-based QBDIPreload for Linux and macOS dynamic executables and is integrated with Frida.","description_zh":"Quarkslab 开发的模块化动态二进制插桩（DBI）框架：在目标进程内部按基本块对程序进行 JIT 重编译，使插桩工具可以在指令执行前后、内存读写以及虚拟机事件上注册回调。引擎以库的形式提供，可在进程中任意位置启动插桩执行，并可通过 C、C++、Python（PyQBDI）或 Frida JavaScript 编写脚本。它不绑定特定注入方式：自带基于 LD_PRELOAD 的 QBDIPreload，用于 Linux 和 macOS 动态可执行文件，并已与 Frida 集成。","entry_url":"https://awesomerea.org/resources/qbdi/","entry_url_zh":"https://awesomerea.org/zh/resources/qbdi/","evidence_url":"https://github.com/QBDI/QBDI/blob/3318580550215a0c7a64e9c2476e02eb5fc55f14/README.rst","group":"tools","id":"qbdi","json_url":"https://awesomerea.org/resources/qbdi/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/qbdi/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/qbdi/index.md","name":"QBDI","name_zh":"QBDI 动态二进制插桩框架","record_type":"resource","relationship":"foundation","requirements":["The README status table supports execution and memory-access information for x86-64 and x86 on Android, Linux, macOS and Windows, ARM on Android and Linux, and AArch64 on Android, Linux, macOS and iOS; iOS support is described as unstable and needs a jailbroken device. Latest release at review: v0.12.1, published 2026-01-07, with Android, iOS, macOS and Windows packages; Linux packages last appear in v0.12.0 (2025-10-14). PyQBDI 0.12.1 on PyPI requires Python 3.8+.","The reviewed dev-next commit is 12 commits ahead of v0.12.1; the README says all new work merges there and there is no scheduled release plan. Source builds need CMake 3.12+, Ninja or Make and a C++17 toolchain, and build a bundled LLVM statically because QBDI uses private LLVM APIs of one specific version; per-platform configuration scripts cover Linux, macOS, Windows (with a native Python 3 and Visual Studio) and Android NDK cross-compilation.","The README states that QBDI does not handle signals, new-thread creation or C++ exceptions. Its documentation adds that the instrumentation tool shares the target's heap and libraries, so non-reentrant code such as the heap allocator should be left to the execution broker outside the instrumentation range, and the OS loader itself cannot be instrumented. Users supply their own target programs and an injection route.","LICENSE.txt places QBDI under Apache-2.0 and lists statically linked components: LLVM (Apache-2.0 with LLVM exceptions), spdlog, fmtlib, Catch2, pybind11 and a GPLv3/Apache-2.0 SHA-256 implementation; GitHub could not classify the combined file."],"requirements_zh":["README 的状态表显示，x86-64 和 x86 在 Android、Linux、macOS 和 Windows 上，ARM 在 Android 和 Linux 上，AArch64 在 Android、Linux、macOS 和 iOS 上均支持执行与内存访问信息；iOS 支持被描述为不稳定，且需要越狱设备。审阅时最新版本为 v0.12.1，发布于 2026-01-07，提供 Android、iOS、macOS 和 Windows 软件包；Linux 软件包最后见于 v0.12.0（2025-10-14）。PyPI 上的 PyQBDI 0.12.1 需要 Python 3.8+。","所审阅的 dev-next 提交领先 v0.12.1 共 12 个提交；README 说明所有新功能都合并到该分支，且没有固定的发布计划。从源码构建需要 CMake 3.12+、Ninja 或 Make 以及 C++17 工具链，并会静态构建自带的 LLVM，因为 QBDI 使用特定版本 LLVM 的私有 API；各平台的配置脚本涵盖 Linux、macOS、Windows（需原生 Python 3 和 Visual Studio）以及基于 Android NDK 的交叉编译。","README 说明 QBDI 不处理信号、新线程创建和 C++ 异常。其文档还指出，插桩工具与目标程序共用堆和库，因此堆分配器等不可重入代码应交给插桩范围之外的执行代理处理，且操作系统加载器本身无法插桩。用户需自备目标程序和注入途径。","LICENSE.txt 说明 QBDI 采用 Apache-2.0 许可，并列出静态链接的组件：LLVM（Apache-2.0 附 LLVM 例外）、spdlog、fmtlib、Catch2、pybind11，以及采用 GPLv3/Apache-2.0 的 SHA-256 实现；GitHub 无法识别这份合并许可文件。"],"targets":["app","binary"],"url":"https://github.com/QBDI/QBDI","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/Ch0pin/medusa/blob/a7bd929f297f0725a5e4d2e3952874a757d4e2fc/LICENSE"],"category":"android","description_en":"Modular Frida-based framework for runtime analysis of Android and iOS apps the analyst is authorized to test. From a single coordinated script it loads plug-in modules to inspect network and WebView activity, trace API calls, examine memory and cryptographic operations, monitor malware behavior, and handle protections such as SSL pinning. The README reports it ships with over 90 reusable modules.","description_zh":"基于 Frida 的模块化框架，用于对分析者有权测试的 Android 与 iOS 应用进行运行时分析。通过单个协调脚本加载插件模块，检查网络与 WebView 活动、跟踪 API 调用、查看内存与加密操作、监控恶意软件行为，并处理 SSL 固定等保护。README 称其内置 90 多个可复用模块。","entry_url":"https://awesomerea.org/resources/medusa-framework/","entry_url_zh":"https://awesomerea.org/zh/resources/medusa-framework/","evidence_url":"https://github.com/Ch0pin/medusa/blob/a7bd929f297f0725a5e4d2e3952874a757d4e2fc/README.md","group":"tools","id":"medusa-framework","json_url":"https://awesomerea.org/resources/medusa-framework/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/medusa-framework/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/medusa-framework/index.md","name":"MEDUSA","name_zh":"MEDUSA","record_type":"resource","relationship":"foundation","requirements":["Requires Python 3 and runs on Linux or macOS, with the README noting limited functionality on Windows; a preconfigured Dockerfile is also provided.","Instrumenting a target needs a rooted device or emulator with adb and a running Frida server; the tool operates only on apps the analyst is authorized to test.","The README reports 90+ reusable modules and an optional MCP server component; it names capabilities such as SSL-pinning handling. GPL-3.0 licensed; the repository ships the framework and its modules, no application packages."],"requirements_zh":["需要 Python 3，可在 Linux 或 macOS 上运行，README 指出在 Windows 上功能有限；同时提供预配置的 Dockerfile。","对目标进行插桩需要已 root 的设备或模拟器，并具备 adb 与运行中的 Frida server；工具仅用于分析者有权测试的应用。","README 称其提供 90 多个可复用模块以及可选的 MCP 服务组件；它列出了诸如 SSL 固定处理等能力。采用 GPL-3.0 许可证；仓库仅包含框架及其模块，不含任何应用安装包。"],"targets":["app"],"url":"https://github.com/Ch0pin/medusa","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/orhun/binsider/blob/7f0633d1a69af15cc3be9e0533cb36dbe67eb598/Cargo.toml","https://github.com/orhun/binsider/blob/7f0633d1a69af15cc3be9e0533cb36dbe67eb598/CHANGELOG.md","https://github.com/orhun/binsider/blob/7f0633d1a69af15cc3be9e0533cb36dbe67eb598/.github/workflows/cd.yml","https://github.com/orhun/binsider/blob/7f0633d1a69af15cc3be9e0533cb36dbe67eb598/website/src/content/docs/usage/dynamic-analysis.md","https://github.com/orhun/binsider/blob/7f0633d1a69af15cc3be9e0533cb36dbe67eb598/website/src/content/docs/usage/static-analysis.md","https://github.com/orhun/binsider/blob/7f0633d1a69af15cc3be9e0533cb36dbe67eb598/website/src/content/docs/installation/crates-io.md","https://github.com/orhun/binsider/blob/7f0633d1a69af15cc3be9e0533cb36dbe67eb598/website/src/content/docs/extras/library.md","https://github.com/orhun/binsider/blob/7f0633d1a69af15cc3be9e0533cb36dbe67eb598/LICENSE-MIT","https://github.com/orhun/binsider/blob/7f0633d1a69af15cc3be9e0533cb36dbe67eb598/LICENSE-APACHE","https://github.com/orhun/binsider/releases/tag/v0.3.2"],"category":"native-analysis","description_en":"Terminal user interface for inspecting ELF binaries. It shows file information and linked shared libraries in the manner of stat and ldd, browses ELF headers, notes, sections, segments, symbols, dynamic symbols and relocations much like readelf, extracts strings with an adjustable minimum length, and offers a searchable hexdump view. Optional dynamic analysis runs the binary and traces its system calls like strace, with a summary of time and call counts per system call; the interface can also be embedded as a Rust library in Ratatui applications.","description_zh":"用于查看 ELF 二进制的终端用户界面。它可像 stat 和 ldd 那样显示文件信息和所链接的共享库，像 readelf 那样浏览 ELF 头、注释、节区、段、符号、动态符号和重定位，按可调的最小长度提取字符串，并提供可搜索的十六进制视图。可选的动态分析会运行该二进制，像 strace 那样跟踪其系统调用，并按系统调用汇总耗时和调用次数；该界面还能作为 Rust 库嵌入 Ratatui 应用。","entry_url":"https://awesomerea.org/resources/binsider/","entry_url_zh":"https://awesomerea.org/zh/resources/binsider/","evidence_url":"https://github.com/orhun/binsider/blob/7f0633d1a69af15cc3be9e0533cb36dbe67eb598/README.md","group":"tools","id":"binsider","json_url":"https://awesomerea.org/resources/binsider/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/binsider/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binsider/index.md","name":"binsider","name_zh":"binsider ELF 二进制分析终端界面","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.3.2, published 2026-02-01, on crates.io and as prebuilt archives for Linux (x86_64, i686, AArch64, ARM and powerpc64le, with glibc and musl variants), macOS on Intel and Apple silicon, and Windows x86_64. The release workflow enables dynamic analysis only in the x86_64 Linux builds and the AArch64 glibc build. The reviewed main commit is six commits later and adds the --syscall-number, --string-limit and --no-abbrev trace options, which the website documents but no release includes yet.","Cargo.toml requires Rust 1.88+, although the website's installation pages still give an MSRV of 1.74.1. The dynamic-analysis feature is enabled by default and can be left out with --no-default-features. The website also documents Docker, Nix, Arch Linux and Alpine Linux installation.","Input is an ELF file chosen by the user. Dynamic analysis executes that binary on the host under ptrace-based tracing, so untrusted samples should only be traced in an isolated environment; the other views read the file without running it.","Dual-licensed MIT OR Apache-2.0."],"requirements_zh":["审阅时最新版本为 v0.3.2，发布于 2026-02-01，可从 crates.io 安装，也提供预编译压缩包，覆盖 Linux（x86_64、i686、AArch64、ARM 和 powerpc64le，含 glibc 与 musl 版本）、Intel 和 Apple 芯片的 macOS 以及 Windows x86_64。发布工作流只在 x86_64 Linux 构建和 AArch64 glibc 构建中启用动态分析。所审阅的 main 提交比该版本晚六个提交，新增了 --syscall-number、--string-limit 和 --no-abbrev 跟踪选项，网站文档已有说明，但尚未包含在任何发布版本中。","Cargo.toml 要求 Rust 1.88+，而网站安装页面仍写着最低支持版本为 1.74.1。dynamic-analysis 功能默认启用，可用 --no-default-features 去掉。网站还介绍了 Docker、Nix、Arch Linux 和 Alpine Linux 的安装方式。","输入为使用者选择的 ELF 文件。动态分析会在宿主机上以基于 ptrace 的跟踪方式执行该二进制，因此不可信样本只应在隔离环境中跟踪；其他视图只读取文件，不会运行它。","采用 MIT 或 Apache-2.0 双许可。"],"targets":["binary"],"url":"https://github.com/orhun/binsider","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/mytechnotalent/Reverse-Engineering/blob/8ae661a1cf37fb17afc29981d424f1656dc7741b/README.md#L136-L178","https://github.com/mytechnotalent/Reverse-Engineering/tree/8ae661a1cf37fb17afc29981d424f1656dc7741b","https://github.com/mytechnotalent/Reverse-Engineering/blob/8ae661a1cf37fb17afc29981d424f1656dc7741b/LICENSE","https://0xinfection.github.io/reversing/","https://github.com/mytechnotalent/rea/blob/a2f8a158eb2161899f479018db2630e7e9b93145/README.md"],"category":"learning","description_en":"A free, English lesson index by mytechnotalent that grows almost daily: 490 numbered lessons, most of which have learners write small programs and then debug and patch (\"hack\") them, across x86, x64, 32/64-bit ARM, RISC-V and AVR. Early courses start from number systems, registers, memory and the stack; later ones cover microcontroller firmware on Raspberry Pi Pico/Pico 2, STM32F401, ESP32-C3, ATmega328P and micro:bit boards, plus Windows, Go, Rust and WebAssembly programs. The README is a table of links; the lesson text lives in a GitBook and in the author's other repositories and PDF books.","description_zh":"mytechnotalent 维护的免费英文课程索引，几乎每天更新：共 490 节编号课程，多数课程让学习者先编写小程序，再对其调试和打补丁（文中称 \"hack\"），覆盖 x86、x64、32/64 位 ARM、RISC-V 和 AVR。前期课程从数制、寄存器、内存和栈讲起；后期转向 Raspberry Pi Pico/Pico 2、STM32F401、ESP32-C3、ATmega328P 和 micro:bit 等开发板上的微控制器固件，以及 Windows、Go、Rust 和 WebAssembly 程序。README 本身只是链接目录，课程正文位于一个 GitBook 以及作者其他仓库中的课程文件和 PDF 书。","entry_url":"https://awesomerea.org/resources/mytechnotalent-reverse-engineering/","entry_url_zh":"https://awesomerea.org/zh/resources/mytechnotalent-reverse-engineering/","evidence_url":"https://github.com/mytechnotalent/Reverse-Engineering/blob/8ae661a1cf37fb17afc29981d424f1656dc7741b/README.md","group":"learn","id":"mytechnotalent-reverse-engineering","json_url":"https://awesomerea.org/resources/mytechnotalent-reverse-engineering/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/mytechnotalent-reverse-engineering/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mytechnotalent-reverse-engineering/index.md","name":"Reverse Engineering (mytechnotalent)","name_zh":"逆向工程教程（mytechnotalent）","record_type":"resource","relationship":"learning","requirements":["At reviewed commit 8ae661a (pushed 2026-10-18) the README lists 490 numbered lessons in 26 courses and headlines a dated \"Today's Tutorial\" (Lesson 329, 18 October 2026); the default branch has received commits on most recent days. Lesson 1 describes the x86 course as starting from the basic concepts of malware reverse engineering and working up to an entry-level look at assembly, while later courses assume that grounding. The Reverse Engineering Data course (lessons 461–490) is statistics and machine-learning notebooks, not binary analysis.","No third-party target files are needed: most courses follow a write, debug, then patch pattern on programs the learner builds from the lessons. The embedded courses need physical boards (Raspberry Pi Pico and Pico 2/RP2350, STM32F401CCU6, ESP32-C3, ATmega328P, micro:bit), and the RISC-V course says it lists everything to purchase. The repository root also keeps Fritzing schematics and a few Windows MASM/Visual Studio example projects with their Debug builds.","Toolchains are set out in the linked material rather than the README, which mentions GDB in the x86 course, a Linux install lesson and PlatformIO for the ESP32-C3. Most of lessons 1–203 point to the \"Reverse Engineering For Everyone!\" GitBook by @mytechnotalent (built by @0xInfection); later lessons point to PDF books and lesson files in the author's separate repositories, which move independently.","The README's \"Reverse Engineering Assistant\" (REA) link is the author's own mytechnotalent/rea tool. The repository is Apache-2.0; linked books and repositories carry their own terms."],"requirements_zh":["在所审阅的提交 8ae661a（推送于 2026-10-18）中，README 列出 26 门课程共 490 节编号课程，并在开头标注带日期的“今日教程”（第 329 课，2026 年 10 月 18 日）；默认分支近期几乎每天都有提交。第 1 课称 x86 课程从恶意软件逆向工程的基本概念讲起，逐步过渡到入门级的汇编语言讲解，后续课程则默认读者已具备这些基础。Reverse Engineering Data 课程（第 461–490 课）是统计与机器学习笔记本，并非二进制分析内容。","无需任何第三方目标文件：多数课程按“编写、调试、再打补丁”的模式，处理学习者依照课程自行构建的程序。嵌入式课程需要实体开发板（Raspberry Pi Pico 与 Pico 2/RP2350、STM32F401CCU6、ESP32-C3、ATmega328P、micro:bit），RISC-V 课程称会列出需要购买的全部物品。仓库根目录还保存了 Fritzing 原理图，以及几个附带 Debug 构建产物的 Windows MASM/Visual Studio 示例项目。","工具链在链接的材料中说明，README 本身只提到 x86 课程中的 GDB、一节安装 Linux 的课程，以及用于 ESP32-C3 的 PlatformIO。第 1–203 课大多指向 @mytechnotalent 编写、@0xInfection 制作的 GitBook《Reverse Engineering For Everyone!》；之后的课程指向作者其他仓库中的 PDF 书和课程文件，这些内容独立更新。","README 中的“Reverse Engineering Assistant”（REA）链接指向作者自己的 mytechnotalent/rea 工具。本仓库采用 Apache-2.0 许可证；链接的书籍和仓库适用各自的条款。"],"targets":["binary","firmware"],"url":"https://github.com/mytechnotalent/Reverse-Engineering","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/cranebeaker/coop-anything/blob/bffd56f00bdd6063db13fa59c18a74678b121ca0/AGENTS.md","https://github.com/cranebeaker/coop-anything/blob/bffd56f00bdd6063db13fa59c18a74678b121ca0/playbook/mcp.md","https://github.com/cranebeaker/coop-anything/blob/bffd56f00bdd6063db13fa59c18a74678b121ca0/playbook/reverse-engineering.md","https://github.com/cranebeaker/coop-anything/blob/bffd56f00bdd6063db13fa59c18a74678b121ca0/.agents/skills/coop-reverse-engineer/SKILL.md","https://github.com/cranebeaker/coop-anything/blob/bffd56f00bdd6063db13fa59c18a74678b121ca0/tools/mcp/coop_mcp.py","https://github.com/cranebeaker/coop-anything/blob/bffd56f00bdd6063db13fa59c18a74678b121ca0/data/SCHEMA.md","https://github.com/cranebeaker/coop-anything/blob/bffd56f00bdd6063db13fa59c18a74678b121ca0/DIRECTORY.md","https://github.com/cranebeaker/coop-anything/blob/bffd56f00bdd6063db13fa59c18a74678b121ca0/games/command-and-conquer-3/NOTES.md","https://github.com/cranebeaker/coop-anything/blob/bffd56f00bdd6063db13fa59c18a74678b121ca0/games/world-in-conflict/NOTES.md","https://github.com/cranebeaker/coop-anything/blob/bffd56f00bdd6063db13fa59c18a74678b121ca0/games/deus-ex/README.md","https://github.com/cranebeaker/coop-anything/blob/bffd56f00bdd6063db13fa59c18a74678b121ca0/.github/workflows/directory.yml","https://github.com/cranebeaker/coop-anything/blob/bffd56f00bdd6063db13fa59c18a74678b121ca0/LICENSE"],"category":"community-integrations","description_en":"Agent playbook, skill set and stdio MCP server for adding online or split-screen co-op to single-player games the players already have installed. Agents either revive an existing co-op mod or reverse engineer the game and engine to build one, test it with in-game bots and send their notes back, while the MCP server searches a directory of 223 co-op projects and 32 open gaps, detects a game’s engine from its install folder and records the executable’s identity. Its README and reverse-engineering skill pair it with REA for native code, and two game write-ups report observations made through REA’s Ghidra lane.","description_zh":"为玩家已安装的单人游戏加入联机或分屏合作模式的智能体操作手册、技能集与 stdio MCP 服务器。智能体或修复已有的合作模组，或逆向分析游戏及其引擎从头实现，再用游戏内机器人测试并把笔记回馈给仓库；MCP 服务器则可检索收录 223 个合作项目和 32 处空缺的目录，根据安装目录识别游戏引擎，并记录可执行文件的身份信息。其 README 和逆向分析技能建议原生代码部分搭配 REA 使用，另有两份游戏笔记报告了借助 REA 的 Ghidra 通道得到的观察结果。","entry_url":"https://awesomerea.org/resources/coop-anything/","entry_url_zh":"https://awesomerea.org/zh/resources/coop-anything/","evidence_url":"https://github.com/cranebeaker/coop-anything/blob/bffd56f00bdd6063db13fa59c18a74678b121ca0/README.md","group":"rea","id":"coop-anything","json_url":"https://awesomerea.org/resources/coop-anything/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/coop-anything/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/coop-anything/index.md","name":"Co-op Anything","name_zh":"Co-op Anything：为单人游戏加入合作模式的智能体手册","record_type":"resource","relationship":"community-integration","requirements":["The repository was created on 2026-10-16, the reviewed commit is from 2026-10-18, and there are no releases, so the playbook, directory and reported results are changing quickly. The MCP server is a Python 3.9+ script without an SDK that needs PyYAML for its directory tools; Claude Code picks it up from .mcp.json, and the playbook gives Codex, Gemini CLI and Cursor settings. The same skills ship under .agents/skills and .claude/skills.","Every player needs the game installed, and the hub holds no game files or assets. AGENTS.md tells agents to work on a copied install, ask the owner before installing software or using their accounts, and pin downloads by SHA-256. Its rules allow building on existing decompilations or decompiling a game, with that code kept in the game’s own repository under the licence of what it builds on. Analysis tools such as REA, Ghidra, IDA MCP servers, Frida, Cheat Engine, BepInEx and UE4SS are installed separately, and the playbook leaves REA’s npx rea-agents setup for the owner to run before restarting the agent.","Networking guidance uses Steam relay through Valve’s free Spacewar test app, and split-screen guidance builds on Nucleus Co-op and PartyDeck. The project rules restrict it to co-op and forbid anti-cheat bypass for online services and cheating in other people’s multiplayer games.","Results are reported by the author and contributors. The README lists Deus Ex as released and Ocarina of Time as fully synced, with other games in progress; each directory entry carries a QA level, from none through player reports and automated bot tests to a verified playthrough, and the Deus Ex write-up reports automated tests with real game clients. CI only checks that DIRECTORY.md matches data/directory.yaml.","MIT for the hub; MinHook source vendored in one game experiment keeps its own licence, and linked mods, decompilations, tools and games keep their own terms. The REA connection is a documented pairing for native analysis plus reported use in game notes."],"requirements_zh":["仓库创建于 2026-10-16，所审阅的提交日期为 2026-10-18，尚无发布版本，因此操作手册、目录和报告结果变化很快。MCP 服务器是不依赖 SDK 的 Python 3.9+ 脚本，目录类工具需要 PyYAML；Claude Code 可从 .mcp.json 自动加载，操作手册还给出 Codex、Gemini CLI 与 Cursor 的配置。相同的技能同时放在 .agents/skills 和 .claude/skills 中。","每位玩家都需要安装游戏，本仓库不存放任何游戏文件或素材。AGENTS.md 要求智能体在复制出的安装副本上工作，在安装软件或使用所有者账户前先征得同意，并以 SHA-256 固定下载内容。其规则允许基于已有的反编译成果或自行反编译游戏，但相关代码须放在该游戏自己的仓库中，并遵守所依据成果的许可。REA、Ghidra、IDA MCP 服务器、Frida、Cheat Engine、BepInEx 和 UE4SS 等分析工具需另行安装，操作手册规定由所有者自行运行 REA 的 npx rea-agents setup，然后重启智能体。","联网指南借助 Valve 免费的 Spacewar 测试应用使用 Steam 中继，分屏指南基于 Nucleus Co-op 与 PartyDeck。项目规则限定只做合作模式，禁止为在线服务绕过反作弊，也禁止在他人的多人游戏中作弊。","结果由作者和贡献者报告。README 称 Deus Ex 已发布、Ocarina of Time 已完全同步，其余游戏仍在进行中；目录中的每个条目都标有 QA 等级，从无测试、玩家报告、自动化机器人测试到完整通关验证，Deus Ex 的说明文档报告了使用真实游戏客户端的自动化测试。CI 仅检查 DIRECTORY.md 是否与 data/directory.yaml 一致。","仓库本身采用 MIT 许可；某个游戏实验中内置的 MinHook 源码保留其自身许可，所链接的模组、反编译成果、工具和游戏各有其条款。与 REA 的关联在于文档建议在原生代码分析中搭配使用，以及游戏笔记中报告的使用记录。"],"targets":["game"],"url":"https://github.com/cranebeaker/coop-anything","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/ainfosec/FISSURE/blob/75abda154a3f0642df00100d847e51d63d186821/README.md#L55-L101","https://github.com/ainfosec/FISSURE/blob/75abda154a3f0642df00100d847e51d63d186821/README.md#L267-L416","https://github.com/ainfosec/FISSURE/blob/75abda154a3f0642df00100d847e51d63d186821/CHANGELOG.md","https://github.com/ainfosec/FISSURE/blob/75abda154a3f0642df00100d847e51d63d186821/docs/RTD/pages/operation.rst","https://github.com/ainfosec/FISSURE/blob/75abda154a3f0642df00100d847e51d63d186821/.gitmodules","https://github.com/ainfosec/FISSURE/blob/75abda154a3f0642df00100d847e51d63d186821/LICENSE","https://github.com/ainfosec/FISSURE/releases/tag/Python3_20260921","https://fissure.readthedocs.io/en/latest/"],"category":"protocol-analysis","description_en":"GNU Radio-based RF framework that carries a signal from survey and detection through IQ capture, inspection, conditioning, feature extraction and classification into a protocol discovery workflow. Its demodulation workspace estimates symbol rates for OOK/ASK and binary FSK recordings, and the bitstream and framing stage applies Manchester or differential decoding, sync-pattern and CRC evidence and repeated-message detection to propose message boundaries. A Qt dashboard coordinates local or remote SDR sensor nodes, a library keeps protocol and packet definitions, dissectors and archived recordings, and plugins add inspection modules such as radar pulse analysis.","description_zh":"基于 GNU Radio 的射频框架，可将信号从频谱巡查与检测，经 IQ 采集、检查、调理、特征提取和分类，一路带入协议发现流程。其解调工作区可为 OOK/ASK 和二进制 FSK 录制估计符号速率；比特流与成帧阶段则结合曼彻斯特或差分解码、同步模式与 CRC 证据以及重复报文检测，推断报文边界。Qt 仪表盘负责协调本地或远程的 SDR 传感节点，资料库保存协议与数据包定义、解析器和归档录制，插件还可加入雷达脉冲分析等检查模块。","entry_url":"https://awesomerea.org/resources/fissure/","entry_url_zh":"https://awesomerea.org/zh/resources/fissure/","evidence_url":"https://github.com/ainfosec/FISSURE/blob/75abda154a3f0642df00100d847e51d63d186821/README.md","group":"tools","id":"fissure","json_url":"https://awesomerea.org/resources/fissure/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/fissure/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fissure/index.md","name":"FISSURE","name_zh":"FISSURE 射频信号分析与协议发现框架","record_type":"resource","relationship":"foundation","requirements":["Development happens on the Python3 branch, reviewed at its 2026-10-17 commit; the README calls GitHub releases periodic snapshots that may lack recent fixes, and the latest, Python3_20260921 (published 2026-09-29), is seven commits behind. The changelog shows protocol discovery being rebuilt in October 2026: Demodulation and Bitstream & Framing are new, Packet Analysis is a placeholder, and the older Bit Slicing, Dissectors and Sniffer tabs are hidden as obsolete, while the Read the Docs operation pages still describe the older tabs.","Installed by cloning the repository and running its interactive installer as a normal user, not with sudo, preferably on a clean system. The README lists DragonOS, Kali, Raspberry Pi OS and Ubuntu 20.04 to 24.04 with PyQt5 and GNU Radio 3.8 or 3.10 (Ubuntu 18.04 only on the deprecated Python2 branch), beta support for a few other distributions, Windows 11 through WSL2 and Apptainer images on Ubuntu 24.04. Testing is most extensive on Ubuntu, and flow graphs may need recompiling across GNU Radio versions.","Live capture needs a supported SDR such as a USRP, HackRF, RTL2832U, LimeSDR, bladeRF, PlutoSDR or SDRplay receiver; the README says hardware support is being migrated into the plugin architecture, so not every legacy integration works in every workflow. Offline analysis uses the analyst's own IQ or SigMF recordings.","GPL-3.0; GNU Radio out-of-tree blocks come from git submodules under their own licenses. The framework also includes transmit, packet-crafting, fuzzing and attack workflows, plus geolocation, targeting and TAK sharing for distributed operations."],"requirements_zh":["开发在 Python3 分支上进行，本次审阅其 2026-10-17 的提交；README 称 GitHub 发布只是定期快照，可能缺少近期修复，最新的 Python3_20260921（发布于 2026-09-29）比所审阅提交落后七个提交。更新日志显示协议发现功能正在 2026 年 10 月重建：解调与“比特流与成帧”为新增功能，数据包分析仍是占位页，旧的比特切分、解析器和嗅探标签页已作为过时功能隐藏，而 Read the Docs 上的操作说明仍在介绍这些旧标签页。","通过克隆仓库并以普通用户身份（而非 sudo）运行交互式安装程序进行安装，最好在全新系统上安装。README 列出的平台包括 DragonOS、Kali、Raspberry Pi OS 以及 Ubuntu 20.04 至 24.04，搭配 PyQt5 和 GNU Radio 3.8 或 3.10（Ubuntu 18.04 仅适用于已弃用的 Python2 分支）；另有几个发行版处于测试阶段，Windows 11 可通过 WSL2 使用，Ubuntu 24.04 上还可使用 Apptainer 镜像。测试最充分的是 Ubuntu；在不同 GNU Radio 版本间切换时，流图可能需要重新编译。","实时采集需要受支持的 SDR，例如 USRP、HackRF、RTL2832U、LimeSDR、bladeRF、PlutoSDR 或 SDRplay 接收机；README 称硬件支持正在迁移到插件架构，并非所有旧集成都能在每种工作流中使用。离线分析使用分析者自己的 IQ 或 SigMF 录制文件。","采用 GPL-3.0；GNU Radio 树外模块来自 git 子模块，各自适用其许可证。该框架还包含发射、数据包构造、模糊测试和攻击工作流，以及面向分布式行动的定位、目标管理和 TAK 共享功能。"],"targets":["protocol"],"url":"https://github.com/ainfosec/FISSURE","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/mitmproxy/android-unpinner/blob/60cbfee4d43cedaff622d72c27d87e418a111413/pyproject.toml"],"category":"android","description_en":"Tool from the mitmproxy project that removes certificate pinning from an Android APK you own or are authorized to test, without a rooted device. It marks the app debuggable, touching only AndroidManifest.xml, and injects a Frida Gadget over ADB so an interception proxy can read the app's traffic, reusing HTTP Toolkit's unpinning script. It bundles the Android SDK helpers it needs and can also handle split APKs delivered as XAPK.","description_zh":"来自 mitmproxy 项目的工具，可在无需 root 的情况下移除使用者拥有或有权测试的 Android APK 的证书固定。它将应用标记为可调试（仅改动 AndroidManifest.xml），并通过 ADB 注入 Frida Gadget，复用 HTTP Toolkit 的解固定脚本，使检查代理能够读取应用流量。工具自带所需的 Android SDK 辅助程序，并可处理以 XAPK 形式提供的分包。","entry_url":"https://awesomerea.org/resources/android-unpinner/","entry_url_zh":"https://awesomerea.org/zh/resources/android-unpinner/","evidence_url":"https://github.com/mitmproxy/android-unpinner/blob/60cbfee4d43cedaff622d72c27d87e418a111413/README.md","group":"tools","id":"android-unpinner","json_url":"https://awesomerea.org/resources/android-unpinner/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/android-unpinner/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/android-unpinner/index.md","name":"Android Unpinner","name_zh":"Android Unpinner","record_type":"resource","relationship":"foundation","requirements":["Installed with uv or pip and requires Python 3.10+ (pyproject version 1.0); the target device connects to a desktop over USB/ADB, and the tool bundles the adb, apksigner, zipalign and aapt2 helpers for Windows, Linux and macOS.","Patches the target APK and needs active instrumentation from the desktop each time the app launches, so rooting the device is not required; intended only for apps you own or are authorized to test.","The README states the project's own code is MIT-licensed, with no separate LICENSE file for GitHub to detect; bundled components keep their own licenses, including HTTP Toolkit's unpinning script (AGPL-3.0), the Frida gadgets (wxWindows Library Licence) and Android build/platform tools. The repository also ships HTTP Toolkit's open-source SSL-pinning demo APK (Apache-2.0) as a test target."],"requirements_zh":["通过 uv 或 pip 安装，要求 Python 3.10+（pyproject 版本为 1.0）；目标设备经 USB/ADB 连接到桌面计算机，工具自带适用于 Windows、Linux 与 macOS 的 adb、apksigner、zipalign 与 aapt2 辅助程序。","工具会修补目标 APK，且每次启动应用时都需要来自桌面的主动插桩，因此无需 root 设备；仅适用于使用者拥有或有权测试的应用。","README 说明项目自身代码采用 MIT 许可证，没有可供 GitHub 识别的独立 LICENSE 文件；随附组件各自保留其许可证，包括 HTTP Toolkit 的解固定脚本（AGPL-3.0）、Frida gadget（wxWindows Library Licence）以及 Android 构建/平台工具。仓库还附带 HTTP Toolkit 的开源 SSL 固定演示 APK（Apache-2.0）作为测试目标。"],"targets":["app","protocol"],"url":"https://github.com/mitmproxy/android-unpinner","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/airbus-seclab/cpu_rec/blob/6b192399cd56ad6953e568e1263024dd8a4ef38d/README.md#L7-L76","https://github.com/airbus-seclab/cpu_rec/blob/6b192399cd56ad6953e568e1263024dd8a4ef38d/README.md#L140-L151","https://github.com/airbus-seclab/cpu_rec/blob/6b192399cd56ad6953e568e1263024dd8a4ef38d/README.md#L233-L296","https://github.com/airbus-seclab/cpu_rec/blob/6b192399cd56ad6953e568e1263024dd8a4ef38d/cpu_rec.py#L329-L516","https://github.com/airbus-seclab/cpu_rec/blob/6b192399cd56ad6953e568e1263024dd8a4ef38d/cpu_rec.py#L517-L645","https://github.com/airbus-seclab/cpu_rec/blob/6b192399cd56ad6953e568e1263024dd8a4ef38d/.github/workflows/portability.yml","https://github.com/airbus-seclab/cpu_rec/blob/6b192399cd56ad6953e568e1263024dd8a4ef38d/LICENCE","https://github.com/airbus-seclab/cpu_rec/releases/tag/v1.1","https://www.sstic.org/2017/presentation/cpu_rec/"],"category":"firmware","description_en":"Statistically recognize the CPU instruction set in an arbitrary binary file, such as an unknown firmware image, by comparing Markov-chain byte statistics with a default corpus covering dozens of architectures, from 6502 and 8051 to ARM, MIPS, PowerPC, RISC-V, x86-64 and WebAssembly. It reports a match for the whole file, then the largest chunk that matches one architecture, and shows entropy so that encrypted or compressed regions can be discounted. It runs standalone, as a Python function or as a binwalk module.","description_zh":"对任意二进制文件（例如来历不明的固件镜像）中的 CPU 指令集进行统计识别：把字节的马尔可夫链统计与默认语料库比较，语料库涵盖数十种架构，从 6502、8051 到 ARM、MIPS、PowerPC、RISC-V、x86-64 和 WebAssembly。它先给出整个文件的匹配结果，再找出与单一架构匹配的最大数据块，并显示熵值，以便排除加密或压缩区域。可独立运行，也可作为 Python 函数或 binwalk 模块使用。","entry_url":"https://awesomerea.org/resources/cpu-rec/","entry_url_zh":"https://awesomerea.org/zh/resources/cpu-rec/","evidence_url":"https://github.com/airbus-seclab/cpu_rec/blob/6b192399cd56ad6953e568e1263024dd8a4ef38d/README.md","group":"tools","id":"cpu-rec","json_url":"https://awesomerea.org/resources/cpu-rec/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/cpu-rec/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cpu-rec/index.md","name":"cpu_rec","name_zh":"cpu_rec CPU 指令集统计识别工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v1.1, published 2024-03-19 and tagged at the reviewed commit; it adds an optional pickled corpus for faster startup and LIEF as an alternative to elfesteem. There is no package: cpu_rec.py and the cpu_rec_corpus directory are copied into the same directory. As checked on 2026-10-20, nothing has been pushed since v1.1 and the repository is not archived; the README’s Development status section holds only CI badges and does not mark the project as maintained, superseded or archived.","Runs on Python 3 or Python 2; the portability workflow covers Python 3.10, PyPy 2.7 and 3.9 and GraalPy on Ubuntu and macOS. Without the lzma module the .xz corpus files must be decompressed first. Optional elfesteem or LIEF extracts the text section of ELF, PE, Mach-O or COFF files. The README reports about one minute of analysis per MB, and 1 GB of RAM to build signatures for 70 architectures, on the author's laptop.","Binwalk mode installs into binwalk's module directory and needs a binwalk that includes devttys0/binwalk pull request 241; these instructions point to the earlier Python binwalk.","Results are heuristic: the README warns that files can contain several architectures, small chunks can be misdetected, and results for data with entropy above 0.9 are probably meaningless. 78k and TriCore are left out of the default corpus for licensing reasons and can only be added from the user's own binaries.","cpu_rec.py is Apache-2.0. The README describes the default corpus as a composite of code chunks under their own licenses, mostly from Debian, BusyBox, C-Kermit and the author's own cross-compiled open-source builds, plus a few of unknown license, including an H8S binary distributed by Dell; build_default_corpus records each origin."],"requirements_zh":["审阅时最新版本为 v1.1，发布于 2024-03-19，标签正对应所审阅的提交；该版本新增可选的 pickle 语料缓存以加快启动，并可用 LIEF 代替 elfesteem。没有安装包：只需把 cpu_rec.py 和 cpu_rec_corpus 目录复制到同一目录。据 2026-10-20 核查，v1.1 发布后没有新的推送，仓库未归档；README 的“Development status”一节只有 CI 徽章，未标注项目仍在维护、已被取代或已归档。","可在 Python 3 或 Python 2 上运行；可移植性工作流在 Ubuntu 和 macOS 上测试 Python 3.10、PyPy 2.7 与 3.9 以及 GraalPy。若没有 lzma 模块，需先解压 .xz 语料文件。可选的 elfesteem 或 LIEF 能提取 ELF、PE、Mach-O 或 COFF 文件的代码段。README 称在作者的笔记本上，每 MB 约需一分钟分析时间，为 70 种架构建立签名需要 1 GB 内存。","binwalk 模式需安装到 binwalk 的模块目录，并要求 binwalk 包含 devttys0/binwalk 第 241 号合并请求的补丁；这些说明针对的是早期的 Python 版 binwalk。","结果属于启发式判断：README 提醒，一个文件可能包含多种架构，小数据块可能被误判，熵值高于 0.9 的数据所得结果大概没有意义。78k 和 TriCore 因许可问题未收入默认语料库，只能由使用者用自有二进制补充。","cpu_rec.py 采用 Apache-2.0 许可。README 说明默认语料库是由各自带有许可的代码块组成的复合作品，主要来自 Debian、BusyBox、C-Kermit 和作者自行交叉编译的开源程序，另有少数许可不明的代码块，其中包括 Dell 分发的一个 H8S 二进制；build_default_corpus 记录了每一块的来源。"],"targets":["binary","firmware"],"url":"https://github.com/airbus-seclab/cpu_rec","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/icedland/iced/blob/8cfc5f57c08fd2e80a4cec9d3d9d36f642b2de31/src/rust/iced-x86/README.md#L1-L62","https://github.com/icedland/iced/blob/8cfc5f57c08fd2e80a4cec9d3d9d36f642b2de31/src/rust/iced-x86/Cargo.toml","https://github.com/icedland/iced/blob/8cfc5f57c08fd2e80a4cec9d3d9d36f642b2de31/src/csharp/Intel/README.md","https://github.com/icedland/iced/blob/8cfc5f57c08fd2e80a4cec9d3d9d36f642b2de31/src/csharp/Intel/Iced/Iced.csproj","https://github.com/icedland/iced/blob/8cfc5f57c08fd2e80a4cec9d3d9d36f642b2de31/src/java/iced-x86/README.md","https://github.com/icedland/iced/blob/8cfc5f57c08fd2e80a4cec9d3d9d36f642b2de31/src/rust/iced-x86-py/README.md","https://github.com/icedland/iced/blob/8cfc5f57c08fd2e80a4cec9d3d9d36f642b2de31/src/rust/iced-x86-js/README.md","https://github.com/icedland/iced/blob/8cfc5f57c08fd2e80a4cec9d3d9d36f642b2de31/src/rust/iced-x86-lua/README.md","https://github.com/icedland/iced/blob/8cfc5f57c08fd2e80a4cec9d3d9d36f642b2de31/LICENSE.txt","https://github.com/icedland/iced/releases/tag/v1.21.0","https://github.com/icedland/iced/compare/v1.21.0...8cfc5f57c08fd2e80a4cec9d3d9d36f642b2de31","https://pypi.org/project/iced-x86/1.21.0/"],"category":"binary-libraries","description_en":"x86 instruction library for 16-, 32- and 64-bit code that decodes, formats, assembles and encodes instructions, with masm, nasm, GNU AT&T and Intel XED output syntaxes. Its instruction-info API reports the registers, memory operands and RFLAGS bits an instruction reads or writes, its CPUID feature flags and control-flow type, and the encoder can re-encode decoded instructions at any address. Rust, C# (.NET) and Java implementations live in one repository, with Python, JavaScript (WebAssembly) and Lua bindings built on the Rust crate.","description_zh":"面向 16、32 和 64 位 x86 代码的指令库，可解码、格式化、汇编和编码指令，输出支持 masm、nasm、GNU AT&T 和 Intel XED 语法。其指令信息 API 可报告指令读写的寄存器、内存操作数和 RFLAGS 标志位，以及所需的 CPUID 特性标志和控制流类型；编码器还能把已解码的指令重新编码到任意地址。同一仓库维护 Rust、C#（.NET）和 Java 三套实现，另有基于 Rust crate 的 Python、JavaScript（WebAssembly）和 Lua 绑定。","entry_url":"https://awesomerea.org/resources/iced/","entry_url_zh":"https://awesomerea.org/zh/resources/iced/","evidence_url":"https://github.com/icedland/iced/blob/8cfc5f57c08fd2e80a4cec9d3d9d36f642b2de31/README.md","group":"tools","id":"iced","json_url":"https://awesomerea.org/resources/iced/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/iced/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/iced/index.md","name":"iced","name_zh":"iced x86 指令解码与汇编库","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v1.21.0, published 2024-01-20, distributed as iced-x86 on crates.io, PyPI, npm and Maven Central (group io.github.icedland.iced) and as iced on NuGet. The reviewed master commit (2026-07-14) is 340 commits ahead of that tag, with no newer release, and still declares version 1.21.0.","The Rust crate needs rustc 1.64.0+, supports no_std and WebAssembly, and uses Cargo features to select the decoder, encoder, block encoder, instruction info, each formatter and the optional code assembler. The .NET library targets .NET Standard 2.0/2.1 and .NET Framework 4.5, and the Java library needs Java 8+. PyPI ships Windows, macOS and Linux wheels, and source builds need Rust and Python 3.8+; the JavaScript package is built with wasm-pack, and the Lua binding is built from source with Rust, luarocks and Lua 5.1+.","The caller supplies raw code bytes, the bitness and the instruction pointer. The reviewed documentation describes no executable-format parsing or function discovery, so a loader or format library has to locate code first. Knights Corner MVEX instructions need the mvex feature and the KNC decoder option.","MIT license. The README reports that all instructions are tested, that iced was tested against xed, gas, objdump, masm, dumpbin, nasm and ndisasm and fuzzed, and Rust throughput above 250 MB/s for decoding and 130 MB/s for decoding plus formatting in its disas-bench results."],"requirements_zh":["审阅时最新版本为 v1.21.0，发布于 2024-01-20，在 crates.io、PyPI、npm 和 Maven Central（group 为 io.github.icedland.iced）上以 iced-x86 发布，在 NuGet 上名为 iced。所审阅的 master 分支提交（2026-07-14）比该标签多 340 个提交，此后没有新版本，版本号仍为 1.21.0。","Rust crate 需要 rustc 1.64.0+，支持 no_std 和 WebAssembly，并通过 Cargo 特性选择解码器、编码器、块编码器、指令信息、各格式化器以及可选的代码汇编器。.NET 库面向 .NET Standard 2.0/2.1 和 .NET Framework 4.5，Java 库需要 Java 8+。PyPI 提供 Windows、macOS 和 Linux 的 wheel，从源码构建需要 Rust 和 Python 3.8+；JavaScript 包用 wasm-pack 构建，Lua 绑定则需用 Rust、luarocks 和 Lua 5.1+ 从源码构建。","调用方需提供原始代码字节、位数和指令指针。所审阅的文档未描述可执行文件格式解析或函数发现功能，因此需先用加载器或格式解析库定位代码。Knights Corner 的 MVEX 指令需要启用 mvex 特性并传入 KNC 解码选项。","MIT 许可证。README 称所有指令均经过测试，iced 已与 xed、gas、objdump、masm、dumpbin、nasm 和 ndisasm 对照测试并经过模糊测试，其 disas-bench 结果中 Rust 版解码速度超过 250 MB/s，解码加格式化超过 130 MB/s。"],"targets":["binary"],"url":"https://github.com/icedland/iced","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/niklashigi/apk-mitm/blob/5a96363fc9112b97d60fc2bd3799d6bbfd8e4e00/LICENSE","https://github.com/niklashigi/apk-mitm/blob/5a96363fc9112b97d60fc2bd3799d6bbfd8e4e00/package.json","https://github.com/niklashigi/apk-mitm/releases/tag/v1.3.0"],"category":"android","description_en":"Command-line tool that prepares an Android APK you own or are authorized to test for HTTPS traffic inspection. It decodes the package with Apktool, adjusts the network security configuration to trust user-added certificates, disables certificate pinning, then re-encodes and signs the patched APK, so a proxy can read the app's traffic without a rooted device. App bundles supplied as .xapk or .apks are also supported.","description_zh":"命令行工具，为使用者拥有或有权测试的 Android APK 准备 HTTPS 流量检查。它用 Apktool 解码安装包、调整网络安全配置以信任用户添加的证书、关闭证书固定，再重新编码并签名修补后的 APK，使代理无需 root 设备即可读取应用流量。也支持以 .xapk 或 .apks 形式提供的应用捆绑包。","entry_url":"https://awesomerea.org/resources/apk-mitm/","entry_url_zh":"https://awesomerea.org/zh/resources/apk-mitm/","evidence_url":"https://github.com/niklashigi/apk-mitm/blob/5a96363fc9112b97d60fc2bd3799d6bbfd8e4e00/README.md","group":"tools","id":"apk-mitm","json_url":"https://awesomerea.org/resources/apk-mitm/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/apk-mitm/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/apk-mitm/index.md","name":"apk-mitm","name_zh":"apk-mitm","record_type":"resource","relationship":"foundation","requirements":["Installed from npm as a global CLI and requires Node.js 14+ and Java 8+ per the README; patching app bundles on Linux also needs zip and unzip available.","Operates on an APK or app bundle the analyst supplies and is intended only for apps you own or are authorized to test; rooting the device is not required because the changes are applied statically before install.","The README notes the static Apktool-based approach can fail on large or complex apps and cannot address certificate pinning enforced inside native binaries such as Flutter. MIT licensed; the repository ships the tool only, no application packages.","As checked on 2026-10-20, the latest release, v1.3.0 (2024-04-21, also the latest npm version), is the reviewed commit and still the main head; GitHub’s last recorded push was 2024-07-24, the repository is not archived and the README does not mark it as maintained, superseded or archived."],"requirements_zh":["通过 npm 以全局命令行工具安装，README 要求 Node.js 14+ 与 Java 8+；在 Linux 上修补应用捆绑包还需具备 zip 与 unzip。","对使用者提供的 APK 或应用捆绑包进行操作，仅适用于使用者拥有或有权测试的应用；因修改在安装前静态完成，无需 root 设备。","README 指出基于 Apktool 的静态方式在大型或复杂应用上可能失败，且无法处理在原生二进制（如 Flutter）中强制执行的证书固定。采用 MIT 许可证；仓库仅包含工具本身，不含任何应用安装包。","据 2026-10-20 核查，最新发布版本 v1.3.0（2024-04-21，也是 npm 上的最新版本）即所审阅的提交，仍是 main 分支最新提交；GitHub 记录的最后一次推送为 2024-07-24，仓库未归档，README 未标注其仍在维护、已被取代或已归档。"],"targets":["app","protocol"],"url":"https://github.com/niklashigi/apk-mitm","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/fkie-cad/friTap/blob/d7398a153755c136005e932414592885348cf83d/README.md#L175-L198","https://github.com/fkie-cad/friTap/blob/d7398a153755c136005e932414592885348cf83d/README.md#L200-L216","https://github.com/fkie-cad/friTap/blob/d7398a153755c136005e932414592885348cf83d/USAGE.md","https://github.com/fkie-cad/friTap/blob/d7398a153755c136005e932414592885348cf83d/EXAMPLE.md","https://github.com/fkie-cad/friTap/blob/d7398a153755c136005e932414592885348cf83d/setup.py#L35-L40","https://github.com/fkie-cad/friTap/blob/d7398a153755c136005e932414592885348cf83d/LICENSE","https://github.com/fkie-cad/friTap/tree/d7398a153755c136005e932414592885348cf83d/integrations/wireshark","https://github.com/fkie-cad/friTap/releases/tag/v2.5.2","https://pypi.org/project/friTap/2.5.2/","https://doi.org/10.1016/j.fsidi.2024.301766"],"category":"protocol-analysis","description_en":"Frida-based tool that hooks TLS libraries such as OpenSSL, BoringSSL, NSS and GnuTLS inside a running process and writes NSS key logs and decrypted payloads as PCAP, so analysts can inspect an application's encrypted traffic in Wireshark. For stripped or statically linked libraries it accepts byte patterns or offsets and can scan for renamed libraries, or it can recover TLS secrets by scanning heap memory instead of hooking. A terminal UI, a Python API and a Wireshark extcap integration wrap the same capture.","description_zh":"基于 Frida 的工具，在运行中的进程内挂钩 OpenSSL、BoringSSL、NSS、GnuTLS 等 TLS 库，输出 NSS 格式的密钥日志和解密后的 PCAP 明文，便于分析者在 Wireshark 中检查应用的加密流量。对于去除符号或静态链接的库，可通过字节模式或偏移量定位函数、扫描被重命名的库，也可不挂钩而改为扫描堆内存来恢复 TLS 密钥。终端界面、Python API 和 Wireshark extcap 集成都基于同一套捕获功能。","entry_url":"https://awesomerea.org/resources/fritap/","entry_url_zh":"https://awesomerea.org/zh/resources/fritap/","evidence_url":"https://github.com/fkie-cad/friTap/blob/d7398a153755c136005e932414592885348cf83d/README.md","group":"tools","id":"fritap","json_url":"https://awesomerea.org/resources/fritap/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/fritap/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fritap/index.md","name":"friTap","name_zh":"friTap TLS 密钥提取与流量解密工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v2.5.2, uploaded to PyPI on 2026-09-29 and published on GitHub on 2026-10-04; the reviewed main commit is identical to that tag. The README describes Linux, Windows and Android as supported and macOS and iOS as partial and still under development, and says the Windows implementations were verified only on Windows 10.","Installed with pip as fritap on Python 3.10+. friTap 2.x requires frida 17.x and frida-tools 14.x; devices with an older frida-server need a legacy friTap line installed through the documented constraints files. Mobile apps need a frida-server running on the device, and the Android walkthrough uses a rooted phone or emulator with adb in PATH; the desktop example attaches with sudo. libpcap or Npcap is needed only for full packet capture, and live Wireshark piping works only on Linux and macOS.","Analysts name the process or app package to attach to or spawn. Coverage differs by library and platform: the README's support table marks many combinations as read/write hooks only, keys only or not yet implemented, so plaintext captures can be incomplete. Byte patterns for statically linked BoringSSL can come from the authors' separate BoringSecretHunter tool, which analyzes the user's own copy of the library.","GPL-3.0; setup.py declares GPL-3.0-only while its inline comment says GPLv3 or later. The README presents the tool for malware analysis and application privacy research and asks users to cite the authors' 2024 Forensic Science International: Digital Investigation paper on TLS key material extraction."],"requirements_zh":["审阅时最新版本为 v2.5.2，于 2026-09-29 上传至 PyPI，2026-10-04 在 GitHub 发布；所审阅的 main 提交与该标签完全一致。README 称已支持 Linux、Windows 和 Android，对 macOS 与 iOS 的支持仍不完整且在开发中，Windows 实现仅在 Windows 10 上验证过。","在 Python 3.10+ 上通过 pip 安装 fritap。friTap 2.x 需要 frida 17.x 和 frida-tools 14.x；设备上的 frida-server 较旧时，需借助文档提供的约束文件安装旧版 friTap。分析移动应用需在设备上运行 frida-server，Android 演示使用已 root 的手机或模拟器，并要求 adb 位于 PATH 中；桌面示例使用 sudo 附加进程。只有完整抓包才需要 libpcap 或 Npcap，实时管道输出到 Wireshark 仅支持 Linux 和 macOS。","分析者需指定要附加或启动的进程或应用包名。不同库和平台的覆盖程度不同：README 的支持表将许多组合标为仅读写挂钩、仅密钥或尚未实现，因此明文捕获可能不完整。静态链接 BoringSSL 所需的字节模式可由作者另行提供的 BoringSecretHunter 工具生成，该工具分析的是使用者自有的库文件副本。","采用 GPL-3.0；setup.py 声明 GPL-3.0-only，但其行内注释写的是 GPLv3 或更高版本。README 将该工具定位于恶意软件分析和应用隐私研究，并请使用者引用作者 2024 年发表于 Forensic Science International: Digital Investigation 的 TLS 密钥材料提取论文。"],"targets":["app","protocol"],"url":"https://github.com/fkie-cad/friTap","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/KasperskyLab/hrtng/blob/2c7b78e5772cc8728d8b450fd5a87cb226a683fb/README.md#L13-L15","https://github.com/KasperskyLab/hrtng/blob/2c7b78e5772cc8728d8b450fd5a87cb226a683fb/README.md#L112-L150","https://github.com/KasperskyLab/hrtng/blob/2c7b78e5772cc8728d8b450fd5a87cb226a683fb/doc/decr.md","https://github.com/KasperskyLab/hrtng/blob/2c7b78e5772cc8728d8b450fd5a87cb226a683fb/doc/appcall.md","https://github.com/KasperskyLab/hrtng/blob/2c7b78e5772cc8728d8b450fd5a87cb226a683fb/doc/deob.md","https://github.com/KasperskyLab/hrtng/blob/2c7b78e5772cc8728d8b450fd5a87cb226a683fb/doc/msig.md","https://github.com/KasperskyLab/hrtng/blob/2c7b78e5772cc8728d8b450fd5a87cb226a683fb/.github/workflows/build.yml","https://github.com/KasperskyLab/hrtng/blob/2c7b78e5772cc8728d8b450fd5a87cb226a683fb/ida-plugin.json","https://github.com/KasperskyLab/hrtng/blob/2c7b78e5772cc8728d8b450fd5a87cb226a683fb/CHANGELOG.md","https://github.com/KasperskyLab/hrtng/blob/2c7b78e5772cc8728d8b450fd5a87cb226a683fb/NOTICE.txt","https://github.com/KasperskyLab/hrtng/blob/2c7b78e5772cc8728d8b450fd5a87cb226a683fb/COPYING","https://github.com/KasperskyLab/hrtng/releases/tag/v3.9.114","https://securelist.com/hrtng-ida-pro-plugin/114780/"],"category":"native-analysis","description_en":"IDA plugin published by Kaspersky that extends the Hex-Rays decompiler with tools its author collected for reverse-engineering work, including malware analysis. It decrypts strings, data and constants with built-in ciphers or in bulk through IDA's Appcall debugger feature, resolves API-name hashes, unflattens control flow and forces decompilation of obfuscated code, and recognizes library code through microcode signatures, inlined-function detection and PAT files built from an IDA database. Pseudocode helpers cover automatic renaming, retyping and enum substitution, structure creation, virtual and indirect call navigation, and patching.","description_zh":"Kaspersky 发布的 IDA 插件，为 Hex-Rays 反编译器加入了作者在包括恶意软件分析在内的逆向工作中积累的各类工具。它可用内置密码算法解密字符串、数据和常量，或借助 IDA 的 Appcall 调试器功能批量解密；还能识别 API 名称哈希、消除控制流平坦化并强制反编译混淆代码，并通过微码签名、内联函数检测和从 IDA 数据库生成的 PAT 文件识别库代码。伪代码辅助功能包括自动重命名、类型修改和枚举替换、结构体创建、虚函数与间接调用导航以及补丁。","entry_url":"https://awesomerea.org/resources/hrtng/","entry_url_zh":"https://awesomerea.org/zh/resources/hrtng/","evidence_url":"https://github.com/KasperskyLab/hrtng/blob/2c7b78e5772cc8728d8b450fd5a87cb226a683fb/README.md","group":"tools","id":"hrtng","json_url":"https://awesomerea.org/resources/hrtng/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/hrtng/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hrtng/index.md","name":"hrtng","name_zh":"hrtng IDA 反编译增强插件","record_type":"resource","relationship":"foundation","requirements":["Requires IDA with the Hex-Rays decompiler. The README supports only the latest IDA version; the plugin can still be compiled against IDA SDK 7.3 or later, but new features are usually not well tested on older versions. Latest release at review: v3.9.114, published 2026-09-02, with prebuilt archives for IDA 9.2, 9.3 and 9.4 plus a separate 7z archive; the reviewed master commit is one changelog fix ahead and declares 3.9.115 in ida-plugin.json.","The CI workflow builds Linux x64, macOS (Apple silicon and Intel) and Windows x64 binaries, and Linux ARM for IDA 9.3 and 9.4. Source builds use CMake with the Crypto++ CMake submodule and an IDA SDK whose path and version are set in src/CMakeLists.txt; the README gives manual SDK fixes for 8.5 and 9.1. The apilist.txt and literal.txt files from bin/plugins must sit beside the plugin for API-hash scanning and enum substitution.","Samples and IDA databases come from the analyst. The Appcall engine for mass decryption runs the analyzed program's own decryption routine under the selected IDA debugger, and its documentation reports testing only with the imul emulator and IDA's Remote Windows debugger. Obfuscated-code decompilation and inline detection are described as experimental.","GPL-3.0. NOTICE.txt lists bundled third-party code and its licenses, including Crypto++ 8.9.0 under the Boost Software License 1.0, used for ciphers such as RC4, AES and ChaCha20, and MIT-licensed GraphSlick and microavx code."],"requirements_zh":["需要带 Hex-Rays 反编译器的 IDA。README 称只支持最新的 IDA 版本；插件仍可针对 IDA SDK 7.3 及以上版本编译，但新功能通常未在旧版本上充分测试。审阅时最新版本为 v3.9.114，发布于 2026-09-02，提供适用于 IDA 9.2、9.3 和 9.4 的预编译压缩包，另附一个 7z 压缩包；所审阅的 master 提交比该版本多一个更新日志中的修复，并在 ida-plugin.json 中声明版本 3.9.115。","CI 工作流构建 Linux x64、macOS（Apple 芯片和 Intel）和 Windows x64 二进制，并为 IDA 9.3 和 9.4 构建 Linux ARM 版本。从源码构建需使用 CMake、Crypto++ CMake 子模块和 IDA SDK，SDK 路径与版本在 src/CMakeLists.txt 中设置；README 给出了 SDK 8.5 和 9.1 需要手动修正的内容。API 哈希扫描和枚举替换需要把 bin/plugins 中的 apilist.txt 和 literal.txt 放在插件旁边。","样本和 IDA 数据库由分析人员自行提供。批量解密的 Appcall 引擎会在所选 IDA 调试器中运行被分析程序自身的解密函数，其文档称仅用 imul 模拟器和 IDA 的 Remote Windows 调试器测试过。混淆代码反编译和内联检测被标为实验性功能。","采用 GPL-3.0 许可。NOTICE.txt 列出了随附的第三方代码及其许可证，其中包括采用 Boost Software License 1.0 的 Crypto++ 8.9.0（用于 RC4、AES、ChaCha20 等密码算法），以及采用 MIT 许可的 GraphSlick 和 microavx 代码。"],"targets":["binary"],"url":"https://github.com/KasperskyLab/hrtng","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/httptoolkit/frida-interception-and-unpinning/blob/560dd29d410fe785f9f390e3c7f86ca8359c8d67/LICENSE"],"category":"android","description_en":"A set of Frida scripts from HTTP Toolkit for inspecting a mobile app's HTTPS traffic while analysing apps you own or are authorized to test. Injected into a running Android or iOS app, they redirect its connections to an interception proxy, add a user-supplied CA certificate to the trust stores, and disable certificate pinning and transparency checks so the proxy can read the traffic. Individual scripts can also be used on their own to hook specific behaviour.","description_zh":"来自 HTTP Toolkit 的一组 Frida 脚本，用于在分析自有或经授权测试的应用时检查移动应用的 HTTPS 流量。将其注入运行中的 Android 或 iOS 应用后，可把连接重定向到检查代理、将用户提供的 CA 证书加入信任库，并关闭证书固定与证书透明度检查，使代理能够读取流量。各脚本也可单独使用以挂钩特定行为。","entry_url":"https://awesomerea.org/resources/frida-interception-and-unpinning/","entry_url_zh":"https://awesomerea.org/zh/resources/frida-interception-and-unpinning/","evidence_url":"https://github.com/httptoolkit/frida-interception-and-unpinning/blob/560dd29d410fe785f9f390e3c7f86ca8359c8d67/README.md","group":"tools","id":"frida-interception-and-unpinning","json_url":"https://awesomerea.org/resources/frida-interception-and-unpinning/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/frida-interception-and-unpinning/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/frida-interception-and-unpinning/index.md","name":"Frida Mobile Interception Scripts","name_zh":"Frida 移动端拦截脚本","record_type":"resource","relationship":"foundation","requirements":["Delivered as Frida scripts injected into a target app with the Frida CLI; the README's Android workflow requires a rooted device or emulator running frida-server as root, and the iOS workflow requires a jailbroken device with Frida installed.","The analyst supplies their own interception proxy and CA certificate and edits config.js before use; the scripts are intended only for mobile apps you own or are authorized to test, not for circumventing protections on third-party software.","AGPL-3.0 licensed and funded by NLnet as part of the HTTP Toolkit project; the repository ships scripts only and no application packages."],"requirements_zh":["以 Frida 脚本形式通过 Frida 命令行注入目标应用；README 的 Android 流程要求已 root 的设备或模拟器，并以 root 身份运行 frida-server，iOS 流程要求已越狱并安装 Frida 的设备。","使用者需自行提供检查代理与 CA 证书，并在使用前编辑 config.js；这些脚本仅适用于使用者拥有或有权测试的移动应用，不得用于绕过第三方软件的保护。","采用 AGPL-3.0 许可证，由 NLnet 资助，是 HTTP Toolkit 项目的一部分；仓库仅包含脚本，不含任何应用安装包。"],"targets":["app","protocol"],"url":"https://github.com/httptoolkit/frida-interception-and-unpinning","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/airbus-seclab/bincat/blob/5d0ee3b56867059427eb0f4123c4d9de0b8059dd/README.md#L25-L37","https://github.com/airbus-seclab/bincat/blob/5d0ee3b56867059427eb0f4123c4d9de0b8059dd/README.md#L119-L132","https://github.com/airbus-seclab/bincat/blob/5d0ee3b56867059427eb0f4123c4d9de0b8059dd/CHANGELOG","https://github.com/airbus-seclab/bincat/blob/5d0ee3b56867059427eb0f4123c4d9de0b8059dd/doc/manual.md","https://github.com/airbus-seclab/bincat/blob/5d0ee3b56867059427eb0f4123c4d9de0b8059dd/doc/ini_format.md","https://github.com/airbus-seclab/bincat/blob/5d0ee3b56867059427eb0f4123c4d9de0b8059dd/doc/install_manual.md","https://github.com/airbus-seclab/bincat/blob/5d0ee3b56867059427eb0f4123c4d9de0b8059dd/doc/install_docker.md","https://github.com/airbus-seclab/bincat/blob/5d0ee3b56867059427eb0f4123c4d9de0b8059dd/doc/windows_build.md","https://github.com/airbus-seclab/bincat/blob/5d0ee3b56867059427eb0f4123c4d9de0b8059dd/doc/COPYING","https://github.com/airbus-seclab/bincat/releases/tag/v1.5"],"category":"native-analysis","description_en":"Static binary code analysis toolkit designed for reverse engineers. Starting from a chosen address and initial state, it computes register and memory values, taint and reconstructed types, with forward and backward analysis and heap use-after-free and double-free detection; bits it cannot determine are shown as unknown. It is driven from an IDA plugin, where analysts can override values or taint, skip functions or replace instructions with NOPs before re-running, or from Python and an .ini configuration for automation.","description_zh":"面向逆向工程人员的二进制代码静态分析工具包。它从选定的地址和初始状态出发，计算寄存器与内存的值、污点和重建出的类型，支持前向与后向分析，并能检测堆上的释放后使用和重复释放；无法确定的位会标为未知。分析可在 IDA 插件中进行，分析人员可覆盖值或污点、跳过函数或把指令替换为 NOP 后重新运行；也可通过 Python 和 .ini 配置文件实现自动化。","entry_url":"https://awesomerea.org/resources/bincat/","entry_url_zh":"https://awesomerea.org/zh/resources/bincat/","evidence_url":"https://github.com/airbus-seclab/bincat/blob/5d0ee3b56867059427eb0f4123c4d9de0b8059dd/README.md","group":"tools","id":"bincat","json_url":"https://awesomerea.org/resources/bincat/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/bincat/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bincat/index.md","name":"BinCAT","name_zh":"BinCAT 二进制静态分析工具包","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v1.5, published 2025-02-25; its tag is the reviewed master commit, and the repository has had no commits since. The Linux and Windows release archives bundle the analyzer and the IDA plugin, which is installed by running install_plugin.py from IDA. The plugin requires IDA 7.4 or later with Python 3; the changelog adds IDA 8.3 support in v1.3 and IDA 9.0 support in v1.4.","The README lists x86-32, x86-64, ARMv7, ARMv8 and PowerPC as analysis targets; the changelog also records initial RISC-V and initial, incomplete ARMv7 Thumb support. The analyzer runs locally on Linux or Windows (macOS only “maybe”, per the README) or as a Flask web service in the airbusseclab/bincat Docker image that the plugin reaches through its remote URL option. Source builds need OCaml with dune, menhir, ocamlgraph, ppxlib and zarith plus Python 3; Windows builds use Cygwin and an opam mingw64 OCaml switch.","Each analysis is described by a versioned .ini file covering the program, its sections and imports, the initial register and memory state and overrides; the IDA plugin generates it from the open database, ELF core dumps can supply the initial state, and the format documentation is partial, with the parser source as its reference. Binaries to analyze come from the user; the tutorial uses the project’s own keygen-me sample.","AGPL-3.0 per the README and doc/COPYING; GitHub detects no license because there is no root license file. The OCaml code includes LGPLv2 OCaml runtime code, the plugin includes Apache-2.0 code from python-pyqt5-hexview, and a modified copy of c2newspeak is bundled. Results depend on the configured initial state, skipped functions and overrides."],"requirements_zh":["审阅时最新版本为 v1.5，发布于 2025-02-25；其标签即所审阅的 master 提交，此后仓库没有新的提交。Linux 和 Windows 发布包同时包含分析器和 IDA 插件，插件通过在 IDA 中运行 install_plugin.py 安装。插件要求 IDA 7.4 或更高版本并使用 Python 3；更新日志记载 v1.3 起支持 IDA 8.3，v1.4 起支持 IDA 9.0。","README 列出的分析目标架构为 x86-32、x86-64、ARMv7、ARMv8 和 PowerPC；更新日志另记有初步的 RISC-V 支持，以及初步且不完整的 ARMv7 Thumb 支持。分析器可在 Linux 或 Windows 本地运行（README 称 macOS“也许”可用），也可作为 airbusseclab/bincat Docker 镜像中的 Flask 网络服务运行，插件通过远程 URL 选项连接。从源码构建需要 OCaml 及 dune、menhir、ocamlgraph、ppxlib 和 zarith，以及 Python 3；Windows 构建使用 Cygwin 和 opam 的 mingw64 OCaml 环境。","每次分析由一个带版本号的 .ini 文件描述，内容包括程序及其节区和导入、寄存器与内存的初始状态以及覆盖设置；IDA 插件会根据当前打开的数据库生成该文件，也可用 ELF 核心转储提供初始状态。该格式的文档并不完整，以解析器源码为准。待分析的二进制由使用者自行提供；教程使用的是项目自带的 keygen-me 示例程序。","README 和 doc/COPYING 表明采用 AGPL-3.0；由于仓库根目录没有许可证文件，GitHub 未识别出许可证。OCaml 代码包含采用 LGPLv2 的 OCaml 运行时代码，插件包含采用 Apache-2.0 的 python-pyqt5-hexview 代码，并附带一份修改过的 c2newspeak。分析结果取决于所配置的初始状态、跳过的函数和覆盖设置。"],"targets":["binary"],"url":"https://github.com/airbus-seclab/bincat","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/marin-m/pbtk/blob/7c5fa2ca4cee9e8a2862c6e3332e7b8a850bb8e8/pyproject.toml","https://github.com/marin-m/pbtk/blob/7c5fa2ca4cee9e8a2862c6e3332e7b8a850bb8e8/LICENSE","https://github.com/marin-m/pbtk/blob/7c5fa2ca4cee9e8a2862c6e3332e7b8a850bb8e8/src/pbtk/extractors/jar_extract.py#L46-L52","https://github.com/marin-m/pbtk/blob/7c5fa2ca4cee9e8a2862c6e3332e7b8a850bb8e8/src/pbtk/extractors/web_extract.py#L57-L65","https://github.com/marin-m/pbtk/blob/7c5fa2ca4cee9e8a2862c6e3332e7b8a850bb8e8/src/pbtk/utils/transports.py","https://github.com/marin-m/pbtk/tree/7c5fa2ca4cee9e8a2862c6e3332e7b8a850bb8e8/src/pbtk/utils/external","https://github.com/marin-m/pbtk/blob/7c5fa2ca4cee9e8a2862c6e3332e7b8a850bb8e8/TROUBLESHOOTING.md","https://github.com/marin-m/pbtk/releases/tag/1.1.3","https://pypi.org/project/pbtk/1.1.3/"],"category":"protocol-analysis","description_en":"Recover Protobuf message definitions from compiled programs as readable .proto files. Extractors cover the Java runtimes in JAR, DEX and APK files (including ProGuard-obfuscated code), binaries that embed Protobuf reflection metadata, and web apps using the Protobuf-URL format. A GUI then binds a recovered message type to an HTTP endpoint, decodes hex-encoded captured samples into an editable field tree and resends edited messages, so analysts can relate each field to the response.","description_zh":"从已编译程序中恢复 Protobuf 消息定义，并还原为可读的 .proto 文件。提取器覆盖 JAR、DEX 和 APK 中的各类 Java 运行时（包括经 ProGuard 混淆的代码）、内嵌 Protobuf 反射元数据的二进制文件，以及使用 Protobuf-URL 格式的 Web 应用。随后可在图形界面中把恢复出的消息类型绑定到 HTTP 端点，将十六进制形式的抓包样本解码为可编辑的字段树，并重新发送修改后的消息，帮助分析者把每个字段与响应对应起来。","entry_url":"https://awesomerea.org/resources/pbtk/","entry_url_zh":"https://awesomerea.org/zh/resources/pbtk/","evidence_url":"https://github.com/marin-m/pbtk/blob/7c5fa2ca4cee9e8a2862c6e3332e7b8a850bb8e8/README.md","group":"tools","id":"pbtk","json_url":"https://awesomerea.org/resources/pbtk/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pbtk/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pbtk/index.md","name":"pbtk","name_zh":"pbtk Protobuf 逆向工具集","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 1.1.3, published 2026-08-21 on GitHub and PyPI; the reviewed master commit is four commits ahead of it, adding a version display, a dependency bump and new brand colors, and carries a 1.1.3.1 tag with no GitHub release or PyPI upload. The README's 2026 notes say Java extraction now works mostly with older APKs and the Chrome-based Protobuf-URL web extractor needs an update; finishing the automatic fuzzing part is listed as forthcoming.","Requires Python 3.10+, PySide6 and the Python protobuf runtime. The README documents a snap for Ubuntu, the pbtk-git AUR package, and uv or pipx installs, and says Windows is supported. Java extraction needs a Java runtime (the Debian instructions install OpenJDK 8), and web extraction drives a Chrome or Chromium instance through websocket-client.","Analysts supply the APK, JAR, DEX or native library to analyze and, optionally, hex-encoded request samples they captured themselves with a proxy such as mitmproxy or Wireshark. Replay sends the edited messages to the live endpoint the analyst configures. Extracted .protos and endpoint definitions are stored in a .pbtk folder in the home directory (a pbtk folder under APPDATA on Windows).","GPL-3.0-or-later per pyproject.toml. The package bundles third-party executables: protoc builds, dex2jar 2.4 jars with their Apache-2.0 notice, and JAD decompiler binaries for which the repository includes no license text. Definitions recovered from minified code keep obfuscated names until the analyst renames them."],"requirements_zh":["审阅时最新版本为 1.1.3，于 2026-08-21 发布在 GitHub 和 PyPI；所审阅的 master 提交比它多四个提交，加入了版本显示、一次依赖升级和新的品牌配色，并带有一个既无 GitHub 发布也未上传 PyPI 的 1.1.3.1 标签。README 中 2026 年的说明指出，Java 提取目前主要适用于较旧的 APK，基于 Chrome 的 Protobuf-URL Web 提取器有待更新；完成自动模糊测试部分仍列为后续计划。","需要 Python 3.10+、PySide6 和 Python protobuf 运行时。README 介绍了 Ubuntu 的 snap 包、AUR 的 pbtk-git 包以及 uv 或 pipx 安装方式，并称支持 Windows。Java 提取需要 Java 运行时（Debian 安装说明中使用 OpenJDK 8），Web 提取则通过 websocket-client 驱动 Chrome 或 Chromium 实例。","分析者需自行提供要分析的 APK、JAR、DEX 或原生库，并可选提供自己用 mitmproxy、Wireshark 等工具抓取的十六进制请求样本。重放功能会把修改后的消息发送到分析者配置的在线端点。提取出的 .proto 和端点定义保存在用户主目录的 .pbtk 文件夹中（Windows 上为 APPDATA 下的 pbtk 文件夹）。","pyproject.toml 声明 GPL-3.0-or-later。软件包内附带第三方可执行文件：protoc 构建、附 Apache-2.0 声明的 dex2jar 2.4 jar 包，以及仓库中没有任何许可证文本的 JAD 反编译器二进制。从混淆代码中恢复出的定义会保留混淆名称，需由分析者自行重命名。"],"targets":["app","protocol"],"url":"https://github.com/marin-m/pbtk","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/Impact-I/reFlutter/blob/846a00033ef39a53502eed8b775b6699fe0fc684/setup.py","https://github.com/Impact-I/reFlutter/blob/846a00033ef39a53502eed8b775b6699fe0fc684/LICENSE","https://github.com/Impact-I/reFlutter/blob/846a00033ef39a53502eed8b775b6699fe0fc684/enginehash.csv"],"category":"android","description_en":"Flutter reverse-engineering framework for apps the analyst is authorized to inspect. It repacks an app with a prebuilt patched Dart engine, or instruments the app's own engine at runtime, to emit a JSONL dump of every function's name, class, library and code offset into the Dart instructions image for Frida or IDA/Ghidra work. It can also route the app's HTTPS traffic through an inspection proxy with Flutter certificate pinning disabled.","description_zh":"面向分析者有权检查的应用的 Flutter 逆向框架。它通过替换为预编译的已打补丁 Dart 引擎（repack 模式）或在运行时插桩应用自带引擎（attach 模式），导出包含每个函数名称、类、库以及其在 Dart 指令镜像中代码偏移的 JSONL 清单，供 Frida 或 IDA/Ghidra 使用。它还能在关闭 Flutter 证书固定的情况下，将应用的 HTTPS 流量路由到检查代理。","entry_url":"https://awesomerea.org/resources/reflutter/","entry_url_zh":"https://awesomerea.org/zh/resources/reflutter/","evidence_url":"https://github.com/Impact-I/reFlutter/blob/846a00033ef39a53502eed8b775b6699fe0fc684/README.md","group":"tools","id":"reflutter","json_url":"https://awesomerea.org/resources/reflutter/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/reflutter/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/reflutter/index.md","name":"reFlutter","name_zh":"reFlutter","record_type":"resource","relationship":"foundation","requirements":["Installed from PyPI as reflutter (setup.py marks version 0.9.8 and requires Python 3.10+) and runs on Linux, Windows or macOS; the README notes a repacked APK must be re-signed and zip-aligned with an external signer before install.","The README lists support for Android arm64, arm32 and x64 and iOS arm64 across release and profile builds on the stable and beta channels, with engine coverage keyed by snapshot hash in enginehash.csv; pre-monorepo engines (<= 3.27) are built from the archived flutter/engine repository. Frida hooking and dump collection need a matching frida-server on the target device or emulator.","Intended for Flutter applications the analyst owns or is authorized to inspect. GPL-3.0 licensed; the project ships tooling and prebuilt engine assets but no application packages."],"requirements_zh":["通过 PyPI 以 reflutter 安装（setup.py 标注版本 0.9.8，要求 Python 3.10+），可在 Linux、Windows 或 macOS 上运行；README 指出 repack 后的 APK 需用外部签名工具重新签名并进行 zip 对齐后再安装。","README 列出支持 Android 的 arm64、arm32 与 x64 以及 iOS 的 arm64，覆盖 stable 与 beta 渠道的 release 和 profile 构建，引擎覆盖范围按快照哈希记录在 enginehash.csv；monorepo 合并前（<= 3.27）的引擎需从归档的 flutter/engine 仓库构建。Frida 挂钩与转储收集需要目标设备或模拟器上具备匹配的 frida-server。","仅用于分析者拥有或有权检查的 Flutter 应用。采用 GPL-3.0 许可证；项目提供工具与预编译引擎资源，但不含任何应用安装包。"],"targets":["app","protocol"],"url":"https://github.com/Impact-I/reFlutter","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/ejfkdev/ddc/blob/e240550669fed51edc8d373654b1883322a60eec/README.md#L179-L192","https://github.com/ejfkdev/ddc/blob/e240550669fed51edc8d373654b1883322a60eec/docs/cli.md","https://github.com/ejfkdev/ddc/blob/e240550669fed51edc8d373654b1883322a60eec/docs/subcommands.md","https://github.com/ejfkdev/ddc/blob/e240550669fed51edc8d373654b1883322a60eec/docs/validation.md","https://github.com/ejfkdev/ddc/blob/e240550669fed51edc8d373654b1883322a60eec/docs/architecture.md","https://github.com/ejfkdev/ddc/blob/e240550669fed51edc8d373654b1883322a60eec/crates/ddc-cli/src/mode_help.rs","https://github.com/ejfkdev/ddc/blob/e240550669fed51edc8d373654b1883322a60eec/Cargo.toml","https://github.com/ejfkdev/ddc/blob/e240550669fed51edc8d373654b1883322a60eec/.github/workflows/ci.yml","https://github.com/ejfkdev/ddc/blob/e240550669fed51edc8d373654b1883322a60eec/LICENSE","https://github.com/ejfkdev/ddc/releases/tag/v0.1.30"],"category":"android","description_en":"Rust decompiler that turns Android DEX bytecode, versions 035 to 041, from APKs, multi-dex apps and XAPK/APKS/APKM containers into Java, folding lambdas and string concatenation back into Java syntax and giving locals jadx-style names. By default every file also goes through a source-level cleanup pass, described as semantics-preserving, that inlines copy chains, recovers ternaries and for-each loops and drops dead stores; --fast skips it. Alongside full decompilation, 15 query subcommands return app and manifest information, resources, strings, cross-references, class hierarchies, disassembly or single classes and methods on demand, and the same queries are served over REST and MCP.","description_zh":"用 Rust 编写的反编译器，可将 APK、多 DEX 应用以及 XAPK/APKS/APKM 容器中 035 至 041 版本的 Android DEX 字节码转换为 Java，把 lambda 和字符串拼接还原为 Java 语法，并按 jadx 的风格为局部变量命名。默认情况下，每个文件还会经过一道据称保持语义的源码级整理，内联拷贝链、恢复三元表达式和 for-each 循环并删除无用赋值；--fast 可跳过这一步。除完整反编译外，15 个查询子命令可按需返回应用与清单信息、资源、字符串、交叉引用、类层次结构、反汇编以及单个类或方法，同样的查询也可通过 REST 和 MCP 提供。","entry_url":"https://awesomerea.org/resources/ddc/","entry_url_zh":"https://awesomerea.org/zh/resources/ddc/","evidence_url":"https://github.com/ejfkdev/ddc/blob/e240550669fed51edc8d373654b1883322a60eec/README.md","group":"tools","id":"ddc","json_url":"https://awesomerea.org/resources/ddc/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ddc/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ddc/index.md","name":"ddc","name_zh":"ddc Android DEX 反编译器","record_type":"resource","relationship":"foundation","requirements":["Release at review: v0.1.30, published 2026-10-18, which is the reviewed main commit. The repository was created in September 2026 and releases come quickly (v0.1.28 to v0.1.30 within eight days). Releases ship raw binaries for Linux, Windows and macOS on x86_64 and ARM64, the non-macOS builds UPX-compressed, and Homebrew, Scoop and cargo-binstall install them; source builds use stable Rust and the author's jdc-core, cure and xyz-rust crates.","Input is an APK, app container or DEX file from the user's own app; full decompilation writes an <input>-out directory next to the input by default. ddc serve and ddc http default to the listen address :8080, with no host given, and bearer-token authentication is optional; ddc mcp stdio runs as an agent subprocess.","The README reports that all 909,689 files emitted for seven benchmark APKs, and docs/validation.md that 4.08 million files from 39 apps, pass javac's parse phase; this is a syntax check only. Known limitations include erased generic types, separate d8-desugared lambda classes, timeouts on some very large R8 methods whose output can vary between runs, and desugared pattern switches; a full-classpath javac run still finds about 7,500 ddc-attributable errors across 0.91 million files, roughly twice jadx's count on the same set.","CI builds and runs cargo test on Linux, macOS and Windows. The benchmark APKs are not in the repository; its fixtures are small DEX files and one binary AndroidManifest. MIT license."],"requirements_zh":["审阅时的最新版本为 v0.1.30，于 2026-10-18 发布，即所审阅的 main 分支提交。仓库创建于 2026 年 9 月，版本更新频繁（v0.1.28 至 v0.1.30 相隔仅八天）。每个版本提供 Linux、Windows 和 macOS 的 x86_64 与 ARM64 原始二进制文件，非 macOS 版本经过 UPX 压缩，可通过 Homebrew、Scoop 和 cargo-binstall 安装；从源码构建使用稳定版 Rust，并依赖作者自己的 jdc-core、cure 和 xyz-rust crate。","输入为取自用户自己应用的 APK、应用容器或 DEX 文件；完整反编译默认在输入文件旁生成 <input>-out 目录。ddc serve 和 ddc http 的默认监听地址为 :8080（未指定主机），Bearer 令牌认证为可选项；ddc mcp stdio 以智能体子进程方式运行。","README 称七个基准 APK 生成的全部 909,689 个文件、docs/validation.md 称 39 个应用生成的 408 万个文件都能通过 javac 的解析阶段，但这只是语法检查。已知局限包括泛型类型被擦除、经 d8 脱糖的 lambda 类仍为单独文件、部分超大 R8 方法会超时且输出可能因运行而异，以及模式匹配 switch 以脱糖后的形式呈现；使用完整类路径的 javac 检查在 91 万个文件中仍发现约 7,500 个归因于 ddc 的错误，约为 jadx 在同一组文件上的两倍。","CI 在 Linux、macOS 和 Windows 上构建并运行 cargo test。基准 APK 不在仓库中，测试夹具只有少量 DEX 文件和一个二进制 AndroidManifest。采用 MIT 许可。"],"targets":["app"],"url":"https://github.com/ejfkdev/ddc","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/platomav/MEAnalyzer/blob/d27ccdba0aadbad490f47b5b631c369b682a7ef5/README.md#L100-L148","https://github.com/platomav/MEAnalyzer/blob/d27ccdba0aadbad490f47b5b631c369b682a7ef5/MEA.py#L10-L31","https://github.com/platomav/MEAnalyzer/blob/d27ccdba0aadbad490f47b5b631c369b682a7ef5/MEA.py#L9927-L9955","https://github.com/platomav/MEAnalyzer/blob/d27ccdba0aadbad490f47b5b631c369b682a7ef5/MEA.py#L10441-L10470","https://github.com/platomav/MEAnalyzer/blob/d27ccdba0aadbad490f47b5b631c369b682a7ef5/LICENSE","https://github.com/platomav/MEAnalyzer/releases/tag/v1.312.0-r378"],"category":"firmware","description_en":"Parse Intel Management Engine (CS)ME, TXE and SPS firmware, Graphics System Controller firmware and their independent PMC, PCHC, PHY and option-ROM images to report family, version, release, SKU, platform, size and health status. Research options print flash partition, BPDT/IFWI and CSE layout tables, validate RSA signatures and checksums, and unpack the supported CSE and GSC code and file systems. A bundled database identifies known images and reports those not yet listed in the community firmware repositories.","description_zh":"解析 Intel 管理引擎 (CS)ME、TXE 和 SPS 固件、图形系统控制器（GSC）固件，以及与之配套的独立 PMC、PCHC、PHY 和 Option ROM 镜像，报告系列、版本、发布类型、SKU、平台、大小和健康状态。研究用参数可显示 Flash 分区表、BPDT/IFWI 和 CSE 布局表，校验 RSA 签名与校验和，并解包所支持的 CSE、GSC 代码及文件系统。附带的数据库能识别已知镜像，并报告社区固件仓库尚未收录的镜像。","entry_url":"https://awesomerea.org/resources/me-analyzer/","entry_url_zh":"https://awesomerea.org/zh/resources/me-analyzer/","evidence_url":"https://github.com/platomav/MEAnalyzer/blob/d27ccdba0aadbad490f47b5b631c369b682a7ef5/README.md","group":"tools","id":"me-analyzer","json_url":"https://awesomerea.org/resources/me-analyzer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/me-analyzer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/me-analyzer/index.md","name":"ME Analyzer","name_zh":"ME Analyzer Intel 引擎与图形固件分析工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v1.312.0 with database r378 (tag v1.312.0-r378), published 2026-09-06 at the reviewed commit, with no attached builds. The README describes the tool as the MEA.py script plus its bundled MEA.dat, Huffman.dat and FileTable.dat databases, and says MEA.dat is required to run.","Requires Python 3.7+, which the script checks at startup, and the third-party colorama, crccheck and pltable modules. The README lists Windows, Linux and macOS hosts; the script also accepts BSD.","Input is an Intel Engine, Graphics or Independent firmware image the user already has, given as files or scanned from a directory with -mass. The README lists ME 2-15, TXE 0-4, SPS 1-5, GSC 100 (DG1) and selected PMC, PCHC, PHY and OROM generations, and states that any family or version not listed is unsupported, with no plans to add others.","By default the script contacts GitHub to compare its version and database with the latest ones (-duc disables this) and copies any input that triggers a note, warning or error into a __CHECK__ folder in the output directory (-dcm disables this).","BSD-2-Clause-Patent. The README describes parsing, validation and unpacking, not rebuilding or modifying images; reported details depend on the bundled database."],"requirements_zh":["审阅时最新版本为 v1.312.0，数据库为 r378（标签 v1.312.0-r378），发布于 2026-09-06，正对应所审阅的提交，未附带构建文件。README 说明该工具由 MEA.py 脚本及随附的 MEA.dat、Huffman.dat 和 FileTable.dat 数据库组成，其中 MEA.dat 是运行所必需的。","需要 Python 3.7+（脚本启动时会检查），以及第三方模块 colorama、crccheck 和 pltable。README 列出的宿主系统为 Windows、Linux 和 macOS；脚本也接受 BSD 系统。","输入为使用者已有的 Intel 引擎、图形或独立固件镜像，可逐个传入文件，也可用 -mass 扫描整个目录。README 列出的支持范围为 ME 2-15、TXE 0-4、SPS 1-5、GSC 100（DG1），以及部分 PMC、PCHC、PHY 和 OROM 代次，并说明未列出的系列或版本均不受支持，目前也不打算增加。","默认情况下，脚本会连接 GitHub，将自身版本和数据库与最新版本比较（-duc 可关闭）；凡是触发提示、警告或错误的输入，都会被复制到输出目录下的 __CHECK__ 文件夹（-dcm 可关闭）。","采用 BSD-2-Clause-Patent 许可。README 描述的是解析、校验和解包，而非重建或修改镜像；报告的信息取决于随附的数据库。"],"targets":["firmware"],"url":"https://github.com/platomav/MEAnalyzer","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/marcosd4h/DeepExtractIDA/blob/af6b01df3ce5774016f6e3cf336ed0ca2f47b512/ida-plugin.json","https://github.com/marcosd4h/DeepExtractIDA/blob/af6b01df3ce5774016f6e3cf336ed0ca2f47b512/headless_batch_extractor.ps1","https://github.com/marcosd4h/DeepExtractIDA/blob/af6b01df3ce5774016f6e3cf336ed0ca2f47b512/docs/data_format_reference.md","https://github.com/marcosd4h/DeepExtractIDA/blob/af6b01df3ce5774016f6e3cf336ed0ca2f47b512/tests/conftest.py","https://github.com/marcosd4h/DeepExtractIDA/blob/af6b01df3ce5774016f6e3cf336ed0ca2f47b512/.github/workflows/release.yml","https://github.com/marcosd4h/DeepExtractIDA/blob/af6b01df3ce5774016f6e3cf336ed0ca2f47b512/deep_extract/deps/pefile-2024.8.26.dist-info/LICENSE","https://github.com/marcosd4h/DeepExtractIDA/blob/af6b01df3ce5774016f6e3cf336ed0ca2f47b512/LICENSE","https://github.com/marcosd4h/DeepExtractIDA/releases/tag/v0.9.14"],"category":"agent-workflows","description_en":"IDA Pro 9.x plugin and PowerShell batch extractor that turn Windows PE files into material AI coding agents can read: a per-binary SQLite database of PE metadata, signatures, disassembly, Hex-Rays pseudocode, cross-references, strings, stack frames, loops and dangerous API calls, plus optional grouped C++ and assembly files with per-function caller, callee and string headers and JSON indexes. It runs headless over directories, file lists or the modules of a running process, or interactively on the open IDA database, keeping the analyst’s renames and comments. The agent commands that work on this output come from the separate DeepExtractRuntime project.","description_zh":"IDA Pro 9.x 插件与 PowerShell 批量提取脚本，可把 Windows PE 文件转换为 AI 编程智能体能够读取的材料：每个二进制文件对应一个 SQLite 数据库，内含 PE 元数据、函数签名、反汇编、Hex-Rays 伪代码、交叉引用、字符串、栈帧、循环与危险 API 调用；还可选择输出分组的 C++ 与汇编文件，每个函数附带调用者、被调者与字符串信息头，并生成 JSON 索引。它可以无界面地处理目录、文件列表或正在运行进程加载的模块，也可以在已打开的 IDA 数据库上交互运行，并保留分析者所做的重命名和注释。处理这些输出的智能体命令来自独立的 DeepExtractRuntime 项目。","entry_url":"https://awesomerea.org/resources/deepextract-ida/","entry_url_zh":"https://awesomerea.org/zh/resources/deepextract-ida/","evidence_url":"https://github.com/marcosd4h/DeepExtractIDA/blob/af6b01df3ce5774016f6e3cf336ed0ca2f47b512/README.md","group":"agents","id":"deepextract-ida","json_url":"https://awesomerea.org/resources/deepextract-ida/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/deepextract-ida/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/deepextract-ida/index.md","name":"DeepExtract (DeepExtractIDA)","name_zh":"DeepExtract：把 PE 文件导出给 AI 智能体的 IDA 插件","record_type":"resource","relationship":"independent-agent-integration","requirements":["The reviewed main commit is the v0.9.14 release of 2026-09-12; ida-plugin.json lists IDA 9.0 to 9.3 on Windows x86-64, and the plugin installs with Hex-Rays’ hcli or runs from a clone. The README requires Windows 10 or 11 and IDA Pro 9.x, with the Pro edition for headless mode. The Hex-Rays decompiler is needed only for pseudocode and C++ output, while assembly output works from disassembly alone. pefile is vendored; the batch script also checks for Python on PATH and needs symchk.exe from the Windows SDK Debugging Tools for its default PDB download from Microsoft’s public symbol server.","Users supply the PE files, from single binaries to whole directories such as System32 or the modules loaded by a running process. The README warns that large batches can run for days and produce tens to hundreds of gigabytes. Outputs contain disassembly and decompiled code of the analysed binaries, whose own licences still apply.","The extractor calls no model. With -EnableAI, the batch extractor writes a CLAUDE.md that tells the agent, without asking the user, to clone the DeepExtractRuntime repository’s default branch into .claude and install Cursor rules and hooks; that runtime and its agents are not part of this repository.","Vtable and indirect-call resolution are labelled experimental, with stated limits such as a single vtable at object offset 0 and a short intra-procedural instruction window. Tests load IDA-independent modules such as the schema, configuration and code formatters outside IDA, and the release workflow only packages the plugin.","MIT, with the vendored pefile under its own MIT licence; IDA Pro, the Hex-Rays decompiler and the Windows SDK tools are licensed separately. The README presents the output for AI-assisted vulnerability research, reverse engineering, threat hunting and code review."],"requirements_zh":["所审阅的 main 提交即 2026-09-12 发布的 v0.9.14；ida-plugin.json 列出支持 Windows x86-64 上的 IDA 9.0 至 9.3，可通过 Hex-Rays 的 hcli 安装插件，也可直接从克隆的仓库运行。README 要求 Windows 10 或 11 与 IDA Pro 9.x，无界面模式需要 Pro 版。只有输出伪代码和 C++ 文件时才需要 Hex-Rays 反编译器，汇编输出仅依赖反汇编。pefile 已随仓库附带；批量脚本还会检查 PATH 中的 Python，并需要 Windows SDK 调试工具中的 symchk.exe，以便默认从 Microsoft 公共符号服务器下载 PDB。","PE 文件由使用者提供，范围可从单个二进制文件到 System32 等整个目录，或某个运行中进程加载的全部模块。README 提醒大规模批处理可能持续数天，并产生数十至数百 GB 的输出。输出包含被分析二进制文件的反汇编和反编译代码，这些文件自身的许可依然适用。","提取器本身不调用任何模型。使用 -EnableAI 时，批量提取脚本会写入一份 CLAUDE.md，要求智能体不经询问使用者，就把 DeepExtractRuntime 仓库的默认分支克隆到 .claude 并安装 Cursor 规则与钩子；该运行时及其智能体不属于本仓库。","虚表与间接调用解析标注为实验性功能，并说明了限制，例如仅处理对象偏移 0 处的单个虚表，且只在过程内的短指令窗口中匹配。测试在 IDA 之外加载模式定义、配置和代码格式化等不依赖 IDA 的模块，发布工作流只负责打包插件。","采用 MIT 许可，附带的 pefile 保留其自身的 MIT 许可；IDA Pro、Hex-Rays 反编译器和 Windows SDK 工具需另行获得许可。README 将其输出定位于 AI 辅助的漏洞研究、逆向工程、威胁狩猎和代码审查。"],"targets":["binary"],"url":"https://github.com/marcosd4h/DeepExtractIDA","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/CalebFenton/simplify/blob/29fb25d624aecf0b075dea5c6029b2541474ddfe/LICENSE.GPL","https://github.com/CalebFenton/simplify/blob/29fb25d624aecf0b075dea5c6029b2541474ddfe/LICENSE.COMMERCIAL","https://github.com/CalebFenton/simplify/blob/29fb25d624aecf0b075dea5c6029b2541474ddfe/.gitmodules","https://github.com/CalebFenton/simplify/blob/29fb25d624aecf0b075dea5c6029b2541474ddfe/.travis.yml","https://github.com/CalebFenton/simplify/blob/29fb25d624aecf0b075dea5c6029b2541474ddfe/smalivm/build.gradle","https://github.com/CalebFenton/simplify/releases/tag/v1.3.0"],"category":"android","description_en":"Generic Android deobfuscator built on smalivm, a sandboxed Dalvik virtual machine that executes each method and records every possible register and class value along all execution paths, taking both branches when a value such as file or network input is unknown. Simplify then repeatedly applies constant propagation, dead-code removal, unreflection and peephole optimizations to the APK or DEX, which can decrypt strings and remove reflection while keeping behaviour the same; it does not rename classes or methods. smalivm can also be used as a library, and the last release adds sdbg, a step-through Smali debugger built on it.","description_zh":"基于 smalivm 的通用 Android 反混淆工具。smalivm 是一个沙箱化的 Dalvik 虚拟机，会逐个执行方法并记录所有执行路径上可能的寄存器与类取值；遇到文件或网络输入等未知值时，两个分支都会执行。Simplify 随后对 APK 或 DEX 反复进行常量传播、死代码删除、反射还原和窥孔优化，可在保持行为不变的前提下解密字符串、去除反射；它不会重命名类或方法。smalivm 也可作为库使用，最新发布版还附带基于它的单步 Smali 调试器 sdbg。","entry_url":"https://awesomerea.org/resources/simplify-android-deobfuscator/","entry_url_zh":"https://awesomerea.org/zh/resources/simplify-android-deobfuscator/","evidence_url":"https://github.com/CalebFenton/simplify/blob/29fb25d624aecf0b075dea5c6029b2541474ddfe/README.md","group":"tools","id":"simplify-android-deobfuscator","json_url":"https://awesomerea.org/resources/simplify-android-deobfuscator/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/simplify-android-deobfuscator/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/simplify-android-deobfuscator/index.md","name":"Simplify","name_zh":"Simplify Android 反混淆工具","record_type":"resource","relationship":"foundation","requirements":["Development is inactive: the latest release, v1.3.0 of 2020-03-30, ships simplify, smalivm and sdbg jars, and the reviewed master commit dates from 2021-05-23. The project pins smali/dexlib2 2.4.0 and, by default, builds its Android framework reference from android-25 classes, so check results on apps that use newer DEX or API features.","Run it as java -jar simplify.jar on a user-supplied APK or DEX. Building needs JDK 8, a recursive clone for the AndroidFrameworkSmali submodule of reference framework classes, and the Gradle fatjar task. Execution limits on visits, call depth and time apply per method; the README advises narrowing large apps with include and exclude patterns, and output DEX defaults to API level 15.","--remove-weak, on by default, removes code even when it has weak side effects, and --ignore-errors may lead to unexpected behaviour, so compare output with the original code. The repository includes a project-provided obfuscated example app for testing; tests ran through a Travis CI configuration using Oracle JDK 8, the repository has no GitHub Actions workflow.","Dual-licensed: GPL-3.0 for open-source use, or a commercial license that permits binary distribution without source redistribution. Android framework classes and dependencies keep their own terms."],"requirements_zh":["项目已不再活跃：最新发布版 v1.3.0 于 2020-03-30 发布，提供 simplify、smalivm 和 sdbg 三个 jar；所审阅的 master 分支提交日期为 2021-05-23。项目固定使用 smali/dexlib2 2.4.0，默认以 android-25 的类构建 Android 框架参考，因此分析使用较新 DEX 或 API 特性的应用时应核对结果。","使用方式是对使用者自备的 APK 或 DEX 运行 java -jar simplify.jar。构建需要 JDK 8，需递归克隆 AndroidFrameworkSmali 子模块以获取参考框架类，并执行 Gradle 的 fatjar 任务。每个方法的执行受访问次数、调用深度和时间限制；README 建议对大型应用用包含与排除模式缩小范围，输出 DEX 默认 API 级别为 15。","--remove-weak 默认开启，即使代码存在弱副作用也会删除；--ignore-errors 可能导致意外结果，因此应将输出与原始代码对照。仓库附带项目提供的混淆示例应用用于测试；测试曾通过使用 Oracle JDK 8 的 Travis CI 配置运行，仓库没有 GitHub Actions 工作流。","采用双重许可：开源用途适用 GPL-3.0，或选择允许分发二进制但禁止再分发源码的商业许可。Android 框架类和各依赖保留各自条款。"],"targets":["app"],"url":"https://github.com/CalebFenton/simplify","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/charles2gan/GDA-android-reversing-Tool/blob/20f8ce8d51b0dc032c08e009e28ea76995d71889/LICENSE","https://github.com/charles2gan/GDA-android-reversing-Tool/blob/20f8ce8d51b0dc032c08e009e28ea76995d71889/NOTICE","https://github.com/charles2gan/GDA-android-reversing-Tool/blob/20f8ce8d51b0dc032c08e009e28ea76995d71889/skills/mal_skill/SKILL.md","https://github.com/charles2gan/GDA-android-reversing-Tool/blob/20f8ce8d51b0dc032c08e009e28ea76995d71889/update_history","https://github.com/charles2gan/GDA-android-reversing-Tool/releases/tag/GDA4.12"],"category":"android","description_en":"Windows-native Dalvik decompiler and Android analysis workbench written in C++ that opens APK, DEX, ODEX, OAT, JAR, AAR and class files without installation. Besides Java and Smali views with cross-references, renaming and comments, it identifies packers, deobfuscates and decrypts strings, tracks data flow and taint, solves paths, runs rule-based malicious-behaviour, vulnerability and privacy-leak scans, and can dump device memory or hook methods with Frida. Shell and server CLI modes, Python and Java scripting and a sample malware-triage agent skill expose the same analysis to scripts and agents.","description_zh":"以 C++ 编写、原生运行于 Windows 的 Dalvik 反编译器与 Android 分析工作台，无需安装即可打开 APK、DEX、ODEX、OAT、JAR、AAR 和 class 文件。除带交叉引用、重命名和注释的 Java 与 Smali 视图外，它还能识别加固壳、反混淆并解密字符串、追踪数据流与污点、求解路径，运行基于规则的恶意行为、漏洞和隐私泄露扫描，并可转储设备内存或用 Frida 钩挂方法。Shell 与服务器两种命令行模式、Python 和 Java 脚本以及一个恶意软件分诊智能体技能示例，让脚本和智能体也能调用这些分析功能。","entry_url":"https://awesomerea.org/resources/gda-android-decompiler/","entry_url_zh":"https://awesomerea.org/zh/resources/gda-android-decompiler/","evidence_url":"https://github.com/charles2gan/GDA-android-reversing-Tool/blob/20f8ce8d51b0dc032c08e009e28ea76995d71889/README.md","group":"tools","id":"gda-android-decompiler","json_url":"https://awesomerea.org/resources/gda-android-decompiler/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/gda-android-decompiler/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/gda-android-decompiler/index.md","name":"GDA (GJoy Dex Analyzer)","name_zh":"GDA Android 反编译器","record_type":"resource","relationship":"foundation","requirements":["Releases are Windows-only zip archives; the latest, GDA 4.12 of 2026-04-07, adds shell and server CLI modes among fixes. The repository holds no decompiler source: the README says GDA is not an open-source project, at least in the short term, and the repository publishes the free binaries with open scripts, plugin examples, rule samples and colour themes.","The executable runs without setup. Dex-family inputs need no Java, while JAR, AAR and class files need a working Java runtime for the bundled dx tool. The README says GDA is protected with VMProtect and unpacks embedded adb, a gdump memory-dump helper and rule files into the user’s application-data folder, which some antivirus products flag; the author states it has no malicious behaviour.","The skills folder holds a gda-analyze skill in Claude Code’s format that drives a bundled GDA.exe through a Python wrapper to trace code, extract indicators and draft malware reports, plus a server-mode client and test script. Its output, like the built-in rule-based scans, needs manual confirmation.","LICENSE is Apache-2.0, and NOTICE says most of GDA is released under it, with adb and dex libraries taken from the Android SDK and AOSP; this conflicts with the README’s closed-source statement, so the binaries’ terms are unclear. Users supply the apps they analyze."],"requirements_zh":["发布版均为仅支持 Windows 的 zip 压缩包；最新的 GDA 4.12 发布于 2026-04-07，除修复问题外新增了 Shell 与服务器两种命令行模式。仓库不包含反编译器源码：README 称 GDA 并非开源项目（至少短期内如此），仓库发布的是免费的二进制程序以及开源脚本、插件示例、规则样例和配色主题。","程序无需安装即可运行。Dex 系列文件无需 Java，而 JAR、AAR 和 class 文件需要可正常运行的 Java 环境以调用附带的 dx 工具。README 称 GDA 使用 VMProtect 保护，并会把内置的 adb、用于转储内存的 gdump 及规则文件释放到用户的应用数据目录，因此可能被部分杀毒软件误报；作者声明其没有恶意行为。","skills 目录包含一个采用 Claude Code 格式的 gda-analyze 技能，通过 Python 封装调用随附的 GDA.exe，用于追踪代码、提取威胁指标并起草恶意软件报告；另有服务器模式客户端和测试脚本。其输出与内置的基于规则的扫描结果一样，需要人工确认。","LICENSE 为 Apache-2.0，NOTICE 也称 GDA 大部分内容以该许可证发布，其中 adb 和 dex 库取自 Android SDK 与 AOSP；这与 README 中的闭源说法相互矛盾，因此二进制程序的使用条款并不明确。待分析的应用由使用者自备。"],"targets":["app"],"url":"https://github.com/charles2gan/GDA-android-reversing-Tool","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/hugsy/gef/blob/49c07dc60624f264d40b5c6ea39b2bf3a4e9958f/gef.py#L8-L28","https://github.com/hugsy/gef/blob/49c07dc60624f264d40b5c6ea39b2bf3a4e9958f/gef.py#L130-L131","https://github.com/hugsy/gef/blob/49c07dc60624f264d40b5c6ea39b2bf3a4e9958f/docs/install.md","https://github.com/hugsy/gef/blob/49c07dc60624f264d40b5c6ea39b2bf3a4e9958f/docs/compat.md","https://github.com/hugsy/gef/blob/49c07dc60624f264d40b5c6ea39b2bf3a4e9958f/docs/commands/gef-remote.md","https://github.com/hugsy/gef/blob/49c07dc60624f264d40b5c6ea39b2bf3a4e9958f/docs/commands/heap.md","https://github.com/hugsy/gef/blob/49c07dc60624f264d40b5c6ea39b2bf3a4e9958f/docs/index.md#L83-L85","https://github.com/hugsy/gef/blob/49c07dc60624f264d40b5c6ea39b2bf3a4e9958f/docs/testing.md","https://github.com/hugsy/gef/blob/49c07dc60624f264d40b5c6ea39b2bf3a4e9958f/LICENSE","https://github.com/hugsy/gef/releases/tag/2026.01"],"category":"dynamic-analysis","description_en":"Single-file Python extension, gef.py, that adds dynamic-analysis commands to GDB. Each stop shows a context view of registers, stack, code, threads and call trace, and commands cover memory maps, pointer dereferencing, searching process memory for patterns, ELF and security-property information, process status and glibc heap inspection. An architecture abstraction layer covers x86-32/64, ARMv5–v7, AArch64, SPARC, MIPS and PowerPC, and gef-remote enriches remote sessions through gdbserver or the GDB stubs of qemu-user and qemu-system.","description_zh":"单文件 Python 扩展 gef.py，为 GDB 增加动态分析命令。每次程序停下时都会显示寄存器、栈、代码、线程和调用轨迹等上下文视图，命令涵盖内存映射、指针解引用、在进程内存中搜索模式、ELF 与安全属性信息、进程状态以及 glibc 堆检查。其架构抽象层覆盖 x86-32/64、ARMv5–v7、AArch64、SPARC、MIPS 和 PowerPC；gef-remote 命令可通过 gdbserver 或 qemu-user、qemu-system 的 GDB stub 增强远程调试会话。","entry_url":"https://awesomerea.org/resources/gef/","entry_url_zh":"https://awesomerea.org/zh/resources/gef/","evidence_url":"https://github.com/hugsy/gef/blob/49c07dc60624f264d40b5c6ea39b2bf3a4e9958f/README.md","group":"tools","id":"gef","json_url":"https://awesomerea.org/resources/gef/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/gef/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/gef/index.md","name":"GEF (GDB Enhanced Features)","name_zh":"GEF GDB 增强扩展","record_type":"resource","relationship":"foundation","requirements":["Needs GDB 10.0+ built with Python 3.10+, the baseline since GEF 2025.01 in the compatibility table, plus file, readelf, nm, ps and python3 on the host; Python 2 users are pointed to the separate gef-legacy. The README installs it by downloading gef.py, through an install script or manually, and sourcing it from the user's .gdbinit file.","Release at review: 2026.01, published 2026-02-02 without binary assets; the reviewed main commit is 12 commits ahead, adding glibc 2.42/2.43 heap support and removing unmaintained commands. More commands live in the separate GEF-Extras repository.","GEF relies on the GDB API and Linux-specific sources such as /proc/<pid>, so some features may not work on custom or hardened systems, and heap commands support only the glibc allocator. qemu mode needs a local copy of the debugged binary because QEMU's GDB stub cannot transfer files. The README aims it at exploit developers and reverse engineers.","MIT license. Tests run with pytest under the Python version GDB was built against."],"requirements_zh":["需要以 Python 3.10+ 构建的 GDB 10.0+（兼容性表显示自 GEF 2025.01 起即为此基线），宿主机上还需有 file、readelf、nm、ps 和 python3；仍需 Python 2 的用户请改用独立的 gef-legacy。README 介绍的安装方式是通过安装脚本或手动下载 gef.py，并在用户的 .gdbinit 文件中加载它。","审阅时的版本为 2026.01，发布于 2026-02-02，不含二进制资源；所审阅的 main 分支提交比该版本多 12 个提交，增加了对 glibc 2.42/2.43 堆的支持并移除了无人维护的命令。更多命令位于独立的 GEF-Extras 仓库。","GEF 依赖 GDB API 以及 /proc/<pid> 等 Linux 特有的信息来源，因此部分功能在定制或加固的系统上可能无法使用，堆命令也只支持 glibc 分配器。qemu 模式需要本地保存一份被调试的二进制，因为 QEMU 的 GDB stub 无法传输文件。README 将其定位为面向漏洞利用开发者和逆向工程人员的工具。","采用 MIT 许可。测试使用 pytest，并须在 GDB 编译时所用的 Python 版本下运行。"],"targets":["binary"],"url":"https://github.com/hugsy/gef","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/0xZ0F/Z0FCourse_ReverseEngineering/blob/ee4b07095d6f81ba5e5c7e0b70f7cb39e3af83b1/TableOfContents.md","https://github.com/0xZ0F/Z0FCourse_ReverseEngineering/blob/ee4b07095d6f81ba5e5c7e0b70f7cb39e3af83b1/Chapter%201%20-%20Introduction/1.0%20Introduction.md","https://github.com/0xZ0F/Z0FCourse_ReverseEngineering/blob/ee4b07095d6f81ba5e5c7e0b70f7cb39e3af83b1/Chapter%201%20-%20Introduction/1.2%20Setup.md","https://github.com/0xZ0F/Z0FCourse_ReverseEngineering/blob/ee4b07095d6f81ba5e5c7e0b70f7cb39e3af83b1/FilesNeeded/FilesNeeded.md","https://github.com/0xZ0F/Z0FCourse_ReverseEngineering/blob/ee4b07095d6f81ba5e5c7e0b70f7cb39e3af83b1/Chapter%208%20-%20Generic%20Table/8.00%20GenericTable.md","https://github.com/0xZ0F/Z0FCourse_ReverseEngineering/blob/ee4b07095d6f81ba5e5c7e0b70f7cb39e3af83b1/FAQ.md","https://github.com/0xZ0F/Z0FCourse_ReverseEngineering/blob/ee4b07095d6f81ba5e5c7e0b70f7cb39e3af83b1/License.md"],"category":"learning","description_en":"A free English course by Z0F on reverse engineering 64-bit Windows programs, which its README pitches as taking learners from beginner to intermediate. Markdown lessons move from number systems, x64 registers, memory layout and calling conventions to x64dbg and Ghidra, then reverse small samples and an author-written DLL, recovering a Player class and calling the DLL's exports from a program of one's own. The unfinished later chapters introduce Windows internals and reverse ntdll's generic-table functions.","description_zh":"Z0F 编写的免费英文课程，讲解如何逆向 64 位 Windows 程序，README 称目标是帮助学习者从入门进阶到中级。Markdown 课程从数制、x64 寄存器、内存布局和调用约定讲起，过渡到 x64dbg 与 Ghidra，再逆向若干小样本以及作者自己编写的 DLL，还原其中的 Player 类，并在自己编写的程序中调用该 DLL 的导出函数。尚未完成的后续章节介绍 Windows 内部机制，并逆向 ntdll 中的 generic table 系列函数。","entry_url":"https://awesomerea.org/resources/z0f-reverse-engineering-course/","entry_url_zh":"https://awesomerea.org/zh/resources/z0f-reverse-engineering-course/","evidence_url":"https://github.com/0xZ0F/Z0FCourse_ReverseEngineering/blob/ee4b07095d6f81ba5e5c7e0b70f7cb39e3af83b1/README.md","group":"learn","id":"z0f-reverse-engineering-course","json_url":"https://awesomerea.org/resources/z0f-reverse-engineering-course/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/z0f-reverse-engineering-course/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/z0f-reverse-engineering-course/index.md","name":"Z0FCourse Reverse Engineering","name_zh":"Z0FCourse 逆向工程课程","record_type":"resource","relationship":"learning","requirements":["Reviewed at commit ee4b070 (2026-07-25). Most lessons were written in 2019–2020, and the table of contents marks Chapter 7 (Windows) and Chapter 8 (Generic Table) as work in progress; the .NET and other-architecture material promised by the setup and Before You Begin pages is not in the tree. Later commits are small fixes, formatting, refreshed PDF copies and new links. The README points to two TryHackMe rooms as an interactive version of chapters 1–6.","Chapter 1 lists a good understanding of C/C++, object-oriented programming and pointers as prerequisites and highly recommends prior x86/x64 assembly. The course needs a 64-bit Windows system, a virtual machine being optional until the malware material; setup names the Microsoft Visual C++ Redistributable, x64dbg (with the optional xAnalyzer plugin) and dnSpy or ILSpy as required, with Ghidra and Visual Studio highly recommended.","The target programs are the author's own and ship with their source in FilesNeeded: the Chapter 6 DLL with two host programs and debug symbols, plus a sample malware program and dropper for a chapter not yet written, which FilesNeeded marks as use-at-your-own-risk. Chapter 8 instead analyzes Windows's own ntdll.dll, which is not included. PDF copies of the chapters are also committed, and the README warns they may lag the Markdown lessons.","The repository's License.md is the AGPL-3.0 text; the FAQ adds that downloading is allowed for personal use only and defers redistribution and teaching use to the license."],"requirements_zh":["审阅提交为 ee4b070（2026-07-25）。大部分课程写于 2019–2020 年，目录将第 7 章（Windows）和第 8 章（Generic Table）标为未完成；环境配置页和 Before You Begin 页面预告的 .NET 及其他架构内容并不在仓库中。之后的提交多为小修正、格式整理、更新 PDF 副本和添加链接。README 推荐两个 TryHackMe 房间，作为第 1–6 章的交互式版本。","第 1 章列出的前置要求是熟练掌握 C/C++、面向对象编程和指针，并强烈建议先学过 x86/x64 汇编。课程需要 64 位 Windows 系统，在进入恶意软件内容之前虚拟机并非必需；环境配置页列为必需的有 Microsoft Visual C++ Redistributable、x64dbg（可选 xAnalyzer 插件），以及 dnSpy 或 ILSpy，并强烈推荐 Ghidra 和 Visual Studio。","课程中的目标程序均由作者编写，并连同源码放在 FilesNeeded 中：第 6 章的 DLL、两个调用它的宿主程序及调试符号，另有一个恶意软件样本程序及其投放器，对应尚未撰写的章节，FilesNeeded 注明使用风险自负。第 8 章则分析 Windows 自带的 ntdll.dll，仓库并未包含该文件。仓库还提交了各章的 PDF 副本，README 提醒这些 PDF 可能落后于 Markdown 课程。","仓库中的 License.md 为 AGPL-3.0 全文；FAQ 另称仅允许为个人使用而下载，再分发和教学使用则以许可证为准。"],"targets":["binary"],"url":"https://github.com/0xZ0F/Z0FCourse_ReverseEngineering","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/APKLab/APKLab/blob/6ae69b1ba03d65cb78388f7e2fa6a3b8f0081c74/CHANGELOG.md","https://github.com/APKLab/APKLab/blob/6ae69b1ba03d65cb78388f7e2fa6a3b8f0081c74/package.json","https://github.com/APKLab/APKLab/blob/6ae69b1ba03d65cb78388f7e2fa6a3b8f0081c74/src/data/constants.ts","https://github.com/APKLab/APKLab/blob/6ae69b1ba03d65cb78388f7e2fa6a3b8f0081c74/.github/workflows/apklab.yml","https://github.com/APKLab/APKLab/blob/6ae69b1ba03d65cb78388f7e2fa6a3b8f0081c74/LICENSE","https://github.com/APKLab/website/blob/f8afc6deac69b4ef77f741f891e4d836bf3720f9/static/apklab_update_config.json"],"category":"android","description_en":"VS Code extension that turns the editor into an Android reverse-engineering workbench around Apktool, Jadx, smali-lsp and uber-apk-signer. It decodes an APK into resources and Smali, decompiles it to Java, gives Smali go-to-definition, references and diagnostics through a language server, and rebuilds, signs and installs the modified app. It can also generate Frida hooks for Smali methods, add a Frida gadget, prepare an app for HTTPS traffic inspection with apk-mitm and produce a Quark-Engine malware-analysis report.","description_zh":"把 VS Code 变成 Android 逆向工作台的扩展，整合 Apktool、Jadx、smali-lsp 和 uber-apk-signer。它可将 APK 解码为资源文件和 Smali 并反编译为 Java，借助语言服务器为 Smali 提供定义跳转、引用查找和诊断，还能重新构建、签名并安装修改后的应用。此外，它可为 Smali 方法生成 Frida 钩子、加入 Frida gadget、借助 apk-mitm 为 HTTPS 流量检查做准备，并生成 Quark-Engine 恶意软件分析报告。","entry_url":"https://awesomerea.org/resources/apklab/","entry_url_zh":"https://awesomerea.org/zh/resources/apklab/","evidence_url":"https://github.com/APKLab/APKLab/blob/6ae69b1ba03d65cb78388f7e2fa6a3b8f0081c74/README.md","group":"tools","id":"apklab","json_url":"https://awesomerea.org/resources/apklab/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/apklab/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/apklab/index.md","name":"APKLab","name_zh":"APKLab Android 逆向工作台","record_type":"resource","relationship":"foundation","requirements":["The latest tag, v2.0.0, dated 2026-04-06 in the changelog, added smali-lsp, Frida hook generation and gadget injection and Apktool 3.0+ compatibility; the reviewed master commit of 2026-07-16 is five commits ahead of it. The extension is published on the VS Code Marketplace and Open VSX, and package.json requires VS Code 1.91+. The README lists Linux, macOS and WSL2, and CI also builds and tests it on Windows.","JDK 17+ is required. On first use the extension downloads the tools named in the project’s update configuration into a .apklab folder in the user’s home directory, at review Apktool 3.0.2, smali-lsp 1.5.0, uber-apk-signer 1.3.0 and Jadx 1.5.6, unless the user sets their paths. adb is optional for installing to a device, and Quark-Engine 21.01.6+ is optional for malware reports. Users supply the APKs.","CI lints and packages the extension and runs its test suite on Ubuntu, macOS and Windows against a sample open-source APK from the separate testdata repository. Jadx output can be incomplete, and rebuilt APKs are re-signed with uber-apk-signer, using the configured keystore when one is set.","AGPL-3.0; Apktool, Jadx, smali-lsp, uber-apk-signer, apk-mitm, Frida and Quark-Engine keep their own licenses. HTTPS-inspection patching and gadget injection modify the app under analysis, and the tool grants no rights to analyze, patch or redistribute third-party apps."],"requirements_zh":["最新标签 v2.0.0 在更新日志中的日期为 2026-04-06，新增 smali-lsp、Frida 钩子生成与 gadget 注入，并兼容 Apktool 3.0+；所审阅的 master 分支提交日期为 2026-07-16，比该标签多 5 个提交。扩展发布在 VS Code 应用市场和 Open VSX，package.json 要求 VS Code 1.91+。README 列出 Linux、macOS 和 WSL2，CI 还在 Windows 上构建和测试。","需要 JDK 17+。首次使用时，扩展会把项目更新配置中列出的工具下载到用户主目录下的 .apklab 文件夹，审阅时为 Apktool 3.0.2、smali-lsp 1.5.0、uber-apk-signer 1.3.0 和 Jadx 1.5.6；使用者也可自行指定路径。adb 为可选项，用于安装到设备；Quark-Engine 21.01.6+ 为可选项，用于生成恶意软件报告。APK 由使用者自备。","CI 在 Ubuntu、macOS 和 Windows 上运行代码检查、打包扩展并执行测试套件，测试使用独立 testdata 仓库中的一个开源示例 APK。Jadx 的输出可能不完整；重新构建的 APK 由 uber-apk-signer 重新签名，设置了密钥库时使用该密钥库。","采用 AGPL-3.0 许可；Apktool、Jadx、smali-lsp、uber-apk-signer、apk-mitm、Frida 和 Quark-Engine 保留各自许可证。HTTPS 检查补丁和 gadget 注入会修改被分析的应用，本工具不授予分析、修补或再分发第三方应用的任何权利。"],"targets":["app"],"url":"https://github.com/APKLab/APKLab","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/JonathanSalwan/Triton/blob/bc84cf745e99768e07d51dcd734eba35c59f1b3e/README.md#L102-L130","https://github.com/JonathanSalwan/Triton/blob/bc84cf745e99768e07d51dcd734eba35c59f1b3e/CMakeLists.txt#L9-L38","https://github.com/JonathanSalwan/Triton/blob/bc84cf745e99768e07d51dcd734eba35c59f1b3e/src/testers/CMakeLists.txt","https://github.com/JonathanSalwan/Triton/blob/bc84cf745e99768e07d51dcd734eba35c59f1b3e/src/testers/x86/unicorn_test_x86.py#L19-L21","https://github.com/JonathanSalwan/Triton/tree/bc84cf745e99768e07d51dcd734eba35c59f1b3e/src/examples/python","https://github.com/JonathanSalwan/Triton/blob/bc84cf745e99768e07d51dcd734eba35c59f1b3e/LICENSE.txt","https://github.com/JonathanSalwan/Triton/releases/tag/v0.9","https://pypi.org/project/triton-library/1.0.0rc4/"],"category":"binary-libraries","description_en":"C++ library with Python bindings for dynamic binary analysis of x86, x86-64, ARM32, AArch64 and RISC-V 32/64 code. Callers process instructions one at a time, optionally with concrete register and memory values; Triton builds symbolic expressions from each instruction's semantics, tracks taint and solves path constraints through Z3 or Bitwuzla. It also synthesizes and simplifies expressions and lifts them to LLVM IR or Z3 and back, for building analysis tools, automating reverse engineering, software verification or emulating code.","description_zh":"面向 x86、x86-64、ARM32、AArch64 和 RISC-V 32/64 代码动态二进制分析的 C++ 库，提供 Python 绑定。调用方逐条处理指令，并可设置具体的寄存器和内存值；Triton 依据每条指令的语义构建符号表达式、进行污点跟踪，并通过 Z3 或 Bitwuzla 求解路径约束。它还能合成与化简表达式，并将其提升为 LLVM IR 或 Z3 表达式后再转换回来，可用于构建分析工具、自动化逆向工程、软件验证或模拟执行代码。","entry_url":"https://awesomerea.org/resources/triton/","entry_url_zh":"https://awesomerea.org/zh/resources/triton/","evidence_url":"https://github.com/JonathanSalwan/Triton/blob/bc84cf745e99768e07d51dcd734eba35c59f1b3e/README.md","group":"tools","id":"triton","json_url":"https://awesomerea.org/resources/triton/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/triton/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/triton/index.md","name":"Triton","name_zh":"Triton 动态二进制分析库","record_type":"resource","relationship":"foundation","requirements":["The README calls Triton a part-time project that may not be fully reliable. The newest GitHub release is v0.9 from 2022-02-09, with Windows builds only; PyPI's triton-library 1.0.0rc4, first uploaded 2024-05-22 with wheels added through 2026-02-23, provides CPython 3.8–3.14 wheels for x86_64 Linux (manylinux 2.31/2.34), macOS 12 and Windows. The reviewed master commit declares version 1.0, and the dev-v1.0 branch was 22 commits ahead.","Source builds use CMake 3.20+ and need Capstone 5+. Z3 4.6+ is the default solver; Bitwuzla 0.4+, LLVM 12+ for lifting, Boost 1.68+ and libpython 3.6+ for the Python bindings are optional, and LLVM and Bitwuzla are off by default. The README also covers Windows builds and a vcpkg port maintained outside the project.","The README example processes raw instruction bytes against caller-set registers; some bundled examples load executables with LIEF and hook libc functions themselves, and the examples include CTF write-ups with their challenge binaries. CTest runs Python unit tests and per-architecture scripts that compare Triton's semantics with the Unicorn emulator; the x86 script notes that Unicorn 2.1.1 lacks some tested instructions.","Apache-2.0; Capstone, Z3, Bitwuzla, LLVM and Boost keep their own licenses. Symbolic results describe only the executed instructions and modeled state."],"requirements_zh":["README 称 Triton 是业余维护的项目，未必完全可靠。GitHub 上最新的发布版本是 2022-02-09 的 v0.9，且仅提供 Windows 构建；PyPI 上的 triton-library 1.0.0rc4 首次上传于 2024-05-22，此后陆续补充 wheel 至 2026-02-23，提供面向 x86_64 Linux（manylinux 2.31/2.34）、macOS 12 和 Windows 的 CPython 3.8–3.14 wheel。所审阅的 master 分支提交声明版本为 1.0，dev-v1.0 分支领先 22 个提交。","从源码构建使用 CMake 3.20+，并需要 Capstone 5+。Z3 4.6+ 是默认求解器；Bitwuzla 0.4+、用于提升的 LLVM 12+、Boost 1.68+ 以及用于 Python 绑定的 libpython 3.6+ 均为可选，其中 LLVM 和 Bitwuzla 默认不启用。README 还介绍了 Windows 构建以及由项目外部维护的 vcpkg 移植。","README 示例针对调用方设置的寄存器处理原始指令字节；部分随附示例自行用 LIEF 加载可执行文件并钩住 libc 函数，示例中还包括附带题目二进制的 CTF 解题记录。CTest 运行 Python 单元测试，以及按架构将 Triton 语义与 Unicorn 模拟器对照的脚本；x86 脚本注明 Unicorn 2.1.1 不支持部分被测指令。","采用 Apache-2.0 许可；Capstone、Z3、Bitwuzla、LLVM 和 Boost 沿用各自的许可证。符号分析结果只描述已执行的指令和已建模的状态。"],"targets":["binary"],"url":"https://github.com/JonathanSalwan/Triton","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/syssec-utd/pylingual/blob/509ea92e560b2c2c99b0c9901bd33e404fbfb4b8/pyproject.toml","https://github.com/syssec-utd/pylingual/blob/509ea92e560b2c2c99b0c9901bd33e404fbfb4b8/pylingual/decompiler_config.yaml","https://github.com/syssec-utd/pylingual/blob/509ea92e560b2c2c99b0c9901bd33e404fbfb4b8/pylingual/decompiler.py","https://github.com/syssec-utd/pylingual/blob/509ea92e560b2c2c99b0c9901bd33e404fbfb4b8/pylingual/equivalence_check.py","https://github.com/syssec-utd/pylingual/blob/509ea92e560b2c2c99b0c9901bd33e404fbfb4b8/pylingual/models.py","https://github.com/syssec-utd/pylingual/tree/509ea92e560b2c2c99b0c9901bd33e404fbfb4b8/pylingual/control_flow_reconstruction/templates","https://github.com/syssec-utd/pylingual/blob/509ea92e560b2c2c99b0c9901bd33e404fbfb4b8/LICENSE","https://github.com/syssec-utd/pylingual/releases/tag/v0.0.1","https://huggingface.co/syssec-utd/py312-pylingual-v1-statement","https://doi.org/10.1109/SP61157.2025.00052"],"category":"native-analysis","description_en":"Research decompiler for CPython bytecode from Python 3.6 onward that pairs per-version transformer models with control-flow reconstruction. A segmentation model splits bytecode into statements, a statement model translates each into source, and templates rebuild loops, conditionals, exception handlers, with blocks and match statements. The result is recompiled with the target Python version and its control flow compared with the original bytecode, and failing segments are retried with alternative segmentations; the design is described in the IEEE S&P 2025 paper “PyLingual: Toward Perfect Decompilation of Evolving High-Level Languages”.","description_zh":"面向 Python 3.6 及以后版本 CPython 字节码的研究型反编译器，将按版本训练的 Transformer 模型与控制流重建相结合。分段模型把字节码切分为语句，语句模型将每段翻译为源码，再由模板重建循环、条件分支、异常处理、with 块和 match 语句。生成结果会用目标 Python 版本重新编译，并与原字节码比较控制流，未通过的片段会改用其他分段方案重试；其设计见 IEEE S&P 2025 论文《PyLingual: Toward Perfect Decompilation of Evolving High-Level Languages》。","entry_url":"https://awesomerea.org/resources/pylingual/","entry_url_zh":"https://awesomerea.org/zh/resources/pylingual/","evidence_url":"https://github.com/syssec-utd/pylingual/blob/509ea92e560b2c2c99b0c9901bd33e404fbfb4b8/README.md","group":"tools","id":"pylingual","json_url":"https://awesomerea.org/resources/pylingual/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pylingual/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pylingual/index.md","name":"PyLingual","name_zh":"PyLingual Python 字节码反编译器","record_type":"resource","relationship":"foundation","requirements":["First release at review: v0.0.1, published 2026-09-21, whose notes report decompilation rates of about 82–87% for Python 3.6–3.12 and about 71% for 3.13–3.15 on the separate pylingual_eval_dataset; these are project-reported figures. The reviewed main commit is 67 commits later and declares version 0.1.0. The README warns that this readability-focused codebase may initially regress in control-flow accuracy compared with the hosted service.","Installed from a clone with uv tool install; pyproject.toml requires Python 3.12+ and pulls in PyTorch, Transformers, Hugging Face Hub and xdis. Per-version segmentation and statement models are downloaded from the syssec-utd Hugging Face organization at their unpinned main revision and run on CUDA when available, otherwise on CPU. Model cards differ in declared licenses: the 3.12 statement model states Apache-2.0, while its segmenter states none.","Checking a reconstruction compiles it in the target version: uv-managed interpreters cover 3.8–3.15, while 3.6 and 3.7 need pyenv or pyenv-win, which --init-pyenv can install. An optional Redis instance caches model predictions, keyed by version and normalized bytecode but not by model revision. The pylingual.io web service is a hosted alternative, so confidential .pyc files should stay with the local CLI.","GPL-3.0-only. Passing the control-flow check does not prove that the recovered source is identical to the original, and recovered code keeps the original owner’s rights."],"requirements_zh":["审阅时的首个版本为 v0.0.1，发布于 2026-09-21，其发布说明称在独立的 pylingual_eval_dataset 上，Python 3.6–3.12 的反编译成功率约为 82–87%，3.13–3.15 约为 71%；这些均为项目自报数据。所审阅的 main 提交比该版本晚 67 个提交，声明的版本为 0.1.0。README 提醒，这份注重可读性的代码在控制流准确度上起初可能不及在线服务。","需从克隆的仓库用 uv tool install 安装；pyproject.toml 要求 Python 3.12+，并依赖 PyTorch、Transformers、Hugging Face Hub 和 xdis。各版本的分段模型和语句模型从 syssec-utd 的 Hugging Face 组织下载，使用未固定的 main 修订版；有 CUDA 时在 GPU 上运行，否则使用 CPU。各模型卡声明的许可证不一：3.12 语句模型标为 Apache-2.0，其分段模型则未声明。","检查重建结果需要用目标版本编译：uv 管理的解释器覆盖 3.8–3.15，3.6 和 3.7 则需要 pyenv 或 pyenv-win，可通过 --init-pyenv 安装。可选的 Redis 实例用于缓存模型预测，缓存键包含版本和规范化后的字节码，但不包含模型修订版。pylingual.io 网页服务是托管的替代方案，因此机密的 .pyc 文件应只用本地命令行处理。","采用 GPL-3.0-only 许可。通过控制流检查并不能证明恢复出的源码与原始源码完全一致，恢复出的代码仍归原权利人所有。"],"targets":["app","binary"],"url":"https://github.com/syssec-utd/pylingual","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/sonicdcer/sf64/blob/4235c59f00b04440e3fd5fec49f0bc80e48cf212/Makefile","https://github.com/sonicdcer/sf64/blob/4235c59f00b04440e3fd5fec49f0bc80e48cf212/tools/Makefile","https://github.com/sonicdcer/sf64/blob/4235c59f00b04440e3fd5fec49f0bc80e48cf212/starfox64.us.rev1.md5","https://github.com/sonicdcer/sf64/blob/4235c59f00b04440e3fd5fec49f0bc80e48cf212/config.yml","https://github.com/sonicdcer/sf64/blob/4235c59f00b04440e3fd5fec49f0bc80e48cf212/.gitmodules","https://github.com/sonicdcer/sf64/blob/4235c59f00b04440e3fd5fec49f0bc80e48cf212/.github/workflows/ci.yaml","https://github.com/sonicdcer/sf64/blob/4235c59f00b04440e3fd5fec49f0bc80e48cf212/LICENSE.md"],"category":"reconstruction-cases","description_en":"Reconstructs C source for the US 1.1 (Rev A) Nintendo 64 release of Star Fox 64 that, compiled with the IDO compiler through a static recompilation, rebuilds a ROM with the published MD5; the README badge counts all 2,951 functions as matching. Code and assets are split from the user’s own ROM at build time, and the repository contains no assets or assembly. The separately curated Starship PC port compiles this C code, while Starfox 64: Recompiled takes headers and some functions from it for its patches.","description_zh":"为 Nintendo 64 版《星际火狐 64》美版 1.1（Rev A）重建 C 源码；借助静态重编译运行的 IDO 编译器编译后，可重建出 MD5 与公布值一致的 ROM，README 徽章显示全部 2,951 个函数均已一致。构建时从使用者自备的 ROM 中拆分代码与素材，仓库本身不含素材或汇编。另行收录的 Starship PC 移植直接编译这份 C 代码，Starfox 64: Recompiled 则从中取用头文件和部分函数来编写补丁。","entry_url":"https://awesomerea.org/resources/sf64-matching-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sf64-matching-decomp-case/","evidence_url":"https://github.com/sonicdcer/sf64/blob/4235c59f00b04440e3fd5fec49f0bc80e48cf212/README.md","group":"cases","id":"sf64-matching-decomp-case","json_url":"https://awesomerea.org/resources/sf64-matching-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sf64-matching-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sf64-matching-decomp-case/index.md","name":"Star Fox 64: a complete matching Nintendo 64 decompilation","name_zh":"《星际火狐 64》：完整的 Nintendo 64 版一致性反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed master pin of 2026-09-28 is a clean-up commit after the July 2026 commits announcing 100% completion. README calls this a complete matching decompilation of the US 1.1 (Rev A) ROM, MD5 741a94eee093c4c8684e66b89f8685e8, and says it is not a PC port. Splat configurations and linker scripts also exist for US 1.0, Japanese and European releases, with checksum files for uncompressed Japanese and European 1.0 ROMs, but README does not document building them.","Building needs the user’s own US 1.1 Rev A ROM, placed in the project root as baserom.us.rev1.z64. README says the repository includes no assets or assembly code; make init decompresses the ROM, splits code, data and assets with splat, then builds. config.yml and assets/yaml also hold the Torch asset definitions that write starship.otr for the Starship port.","README documents Linux, natively or under WSL or a VM, with make, Git, build-essential, MIPS binutils, Python 3 with pip, libpng and the listed clang tools, or macOS with Homebrew’s coreutils, make, pkg-config and mips64-elf binutils; native Windows builds are unsupported. make toolchain downloads decompals’ ido-static-recomp build of the IDO compiler and builds the mio0 tool and Torch, while submodules add splat, asm-processor, asm-differ, m2c and Torch. A GCC build is available but defines NON_MATCHING.","With COMPARE=1 by default, the build checks the output against starfox64.us.rev1.md5, and README reads a mismatch as a bad base ROM or non-matching code. CI runs make init on the US ROM, fetched from a private repository through secrets, and a separate workflow checks formatting.","The repository carries CC0-1.0, which does not cover Nintendo’s game, the ROM or extracted assets; the IDO compiler and the submodules keep their own terms."],"requirements_zh":["所审阅的 master 固定版本是 2026 年 9 月 28 日的一次整理提交，此前于 2026 年 7 月有提交宣布完成度达到 100%。README 称其为美版 1.1（Rev A）ROM 的完整一致性反编译，对应 MD5 为 741a94eee093c4c8684e66b89f8685e8，并说明这不是 PC 移植。仓库中还有美版 1.0、日版和欧版的 splat 配置与链接脚本，以及日版和欧版 1.0 未压缩 ROM 的校验文件，但 README 未说明如何构建这些版本。","构建需要使用者自备美版 1.1 Rev A ROM，并以 baserom.us.rev1.z64 为名放在项目根目录。README 表示仓库不含任何素材或汇编代码；make init 会解压 ROM，用 splat 拆分代码、数据与素材，然后构建。config.yml 和 assets/yaml 中还有供 Starship 移植使用的 Torch 素材定义，用于生成 starship.otr。","README 说明的构建环境是 Linux（原生、WSL 或虚拟机），需要 make、Git、build-essential、MIPS binutils、带 pip 的 Python 3、libpng 及列明的 clang 工具；或是 macOS，通过 Homebrew 安装 coreutils、make、pkg-config 与 mips64-elf binutils；不支持在 Windows 上原生构建。make toolchain 会下载 decompals 用 ido-static-recomp 制作的 IDO 编译器，并构建 mio0 工具与 Torch；子模块提供 splat、asm-processor、asm-differ、m2c 和 Torch。也可用 GCC 构建，但会定义 NON_MATCHING。","默认 COMPARE=1 时，构建会依据 starfox64.us.rev1.md5 校验产物；README 将校验失败解释为基础 ROM 有误或部分代码尚未一致。CI 对通过密钥从私有仓库取得的美版 ROM 运行 make init，另有工作流检查代码格式。","仓库采用 CC0-1.0，不涵盖任天堂的游戏、ROM 或提取出的素材；IDO 编译器与各子模块仍受各自条款约束。"],"targets":["game"],"url":"https://github.com/sonicdcer/sf64","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/timschneeb/GalaxyBudsClient/blob/754b6fdfb1c151b022cece775c8aaad4eb185afa/GalaxyBudsRFCommProtocol.md","https://github.com/timschneeb/GalaxyBudsClient/blob/754b6fdfb1c151b022cece775c8aaad4eb185afa/Galaxy%20Buds%20Plus%20RFComm%20Protocol%20Notes.md","https://github.com/timschneeb/GalaxyBudsClient/blob/754b6fdfb1c151b022cece775c8aaad4eb185afa/GalaxyBudsClient/GalaxyBudsClient.csproj","https://github.com/timschneeb/GalaxyBudsClient/blob/754b6fdfb1c151b022cece775c8aaad4eb185afa/GalaxyBudsClient.Android/GalaxyBudsClient.Android.csproj","https://github.com/timschneeb/GalaxyBudsClient/blob/754b6fdfb1c151b022cece775c8aaad4eb185afa/global.json","https://github.com/timschneeb/GalaxyBudsClient/tree/754b6fdfb1c151b022cece775c8aaad4eb185afa/GalaxyBudsClient/Model/Specifications","https://github.com/timschneeb/GalaxyBudsClient/blob/754b6fdfb1c151b022cece775c8aaad4eb185afa/GalaxyBudsClient/Model/Firmware/FirmwareRemoteClient.cs","https://github.com/timschneeb/GalaxyBudsClient/blob/754b6fdfb1c151b022cece775c8aaad4eb185afa/GalaxyBudsClient/Interface/ViewModels/Pages/FirmwarePageViewModel.cs","https://github.com/timschneeb/GalaxyBudsClient/blob/754b6fdfb1c151b022cece775c8aaad4eb185afa/GalaxyBudsClient.Tests/GalaxyBudsClient.Tests.csproj","https://github.com/timschneeb/GalaxyBudsClient/blob/754b6fdfb1c151b022cece775c8aaad4eb185afa/GalaxyBudsClient.Tests/Buds2Pro/ExtendedStatusUpdateTests.cs","https://github.com/timschneeb/GalaxyBudsClient/blob/754b6fdfb1c151b022cece775c8aaad4eb185afa/.github/workflows/compile-linux.yml","https://github.com/timschneeb/GalaxyBudsClient/blob/754b6fdfb1c151b022cece775c8aaad4eb185afa/LICENSE","https://github.com/timschneeb/GalaxyBudsClient/releases/tag/5.2.1"],"category":"reconstruction-cases","description_en":"Reimplements control of Samsung Galaxy Buds over their proprietary RFCOMM serial protocol in a cross-platform desktop and Android manager. The author reports recovering the message format by analyzing the earbuds’ binary stream and disassembling Samsung’s official Android apps, and publishes partial packet notes for the 2019 Buds and the Buds+. Beyond the official app’s settings, it exposes battery statistics, diagnostics, factory self-tests, hidden debug information and firmware flashing for supported models.","description_zh":"在跨平台桌面与 Android 管理器中，通过三星 Galaxy Buds 专有的 RFCOMM 串口协议重新实现耳机控制。作者称通过分析耳机发出的二进制数据流并反汇编三星官方 Android 应用来恢复报文格式，并公开了 2019 款 Buds 和 Buds+ 的部分数据包笔记。除官方应用的设置外，它还提供电池统计、诊断、出厂自检、隐藏调试信息，以及适用型号的固件刷写。","entry_url":"https://awesomerea.org/resources/galaxy-buds-client-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/galaxy-buds-client-protocol-case/","evidence_url":"https://github.com/timschneeb/GalaxyBudsClient/blob/754b6fdfb1c151b022cece775c8aaad4eb185afa/README.md","group":"cases","id":"galaxy-buds-client-protocol-case","json_url":"https://awesomerea.org/resources/galaxy-buds-client-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/galaxy-buds-client-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/galaxy-buds-client-protocol-case/index.md","name":"Galaxy Buds Client: an unofficial manager built on Samsung’s earbud protocol","name_zh":"Galaxy Buds Client：基于三星耳机协议的非官方管理器","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["Reviewed at the 2026-10-01 master head, 72 commits after release 5.2.1 (2026-06-07). Device specifications in source cover Galaxy Buds models from the original 2019 Buds through the Buds4 series. The protocol notes say they are incomplete and point to the source for details; this is an independent client, not recovered Samsung source, and features vary by model.","Requires the user’s own Galaxy Buds paired over Bluetooth; earbud firmware and Samsung’s official apps are not part of the repository. Firmware flashing and downgrades download builds from the author’s firmware service, behind an in-app disclaimer and a model-compatibility check meant to avoid bricking. Release notes say the app can share protocol data through an on-demand crowdsourcing feature to support models the author does not own, and sends crash dumps to Sentry; both can be disabled in settings.","Builds from one solution with the .NET 10 SDK (global.json pins 10.0.300) and Avalonia, targeting Windows 10 build 19041+, macOS 12+, Linux and Android 7.0+ (API 24); Linux Bluetooth uses a bundled BlueZ D-Bus library. Release 5.2.1 attaches unsigned Windows and macOS installers and Linux x64/ARM portable binaries; the README also lists Flatpak, AUR and winget packages, and the Android version is sold on Google Play.","An NUnit test project decodes captured extended-status packets from seven models and checks message and spatial-audio parsing; the reviewed CI workflows build and publish binaries without running those tests. Protocol and feature behavior on real earbuds remains author-reported.","GPLv3 (LICENSE); the README states the project is not affiliated with or supervised by Samsung. Samsung firmware, apps and trademarks keep their own rights."],"requirements_zh":["审阅对象为 2026-10-01 的 master 最新提交，比 5.2.1 版（2026-06-07）多 72 个提交。源码中的设备规格覆盖从 2019 款初代 Buds 到 Buds4 系列的 Galaxy Buds 型号。协议笔记自称并不完整，细节需参考源码；这是独立客户端，并非恢复出的三星源码，功能因型号而异。","需要用户自己通过蓝牙配对的 Galaxy Buds；耳机固件和三星官方应用都不在仓库中。固件刷写和降级会从作者的固件服务下载版本，应用内先显示免责声明，并做型号兼容性检查以避免设备变砖。发布说明称，应用可通过按需启用的众包功能共享协议数据，用于支持作者没有的型号，并会把崩溃转储发送到 Sentry；两者都可在设置中关闭。","使用 .NET 10 SDK（global.json 固定为 10.0.300）和 Avalonia 从同一解决方案构建，面向 Windows 10 build 19041+、macOS 12+、Linux 及 Android 7.0+（API 24）；Linux 蓝牙通过仓库自带的 BlueZ D-Bus 库实现。5.2.1 版附带未签名的 Windows 与 macOS 安装包以及 Linux x64/ARM 便携版；README 还列出 Flatpak、AUR 和 winget 软件包，Android 版在 Google Play 付费提供。","NUnit 测试项目解码七个型号的已捕获扩展状态数据包，并检查报文和空间音频解析；所审阅的 CI 工作流只构建并发布二进制文件，不运行这些测试。协议与功能在真实耳机上的表现仍属作者报告。","采用 GPLv3（LICENSE）；README 声明项目与三星无关，也不受其监管。三星固件、应用和商标保留各自权利。"],"targets":["app","protocol"],"url":"https://github.com/timschneeb/GalaxyBudsClient","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/OWASP/mastg/blob/02ffd85fb74383ec2a30b42866d38f89d72c0ead/Document/0x04c-Tampering-and-Reverse-Engineering.md","https://github.com/OWASP/mastg/blob/02ffd85fb74383ec2a30b42866d38f89d72c0ead/Document/0x05b-Android-Security-Testing.md","https://github.com/OWASP/mastg/blob/02ffd85fb74383ec2a30b42866d38f89d72c0ead/Document/0x06b-iOS-Security-Testing.md","https://github.com/OWASP/mastg/blob/02ffd85fb74383ec2a30b42866d38f89d72c0ead/tests-beta/index.md","https://github.com/OWASP/mastg/blob/02ffd85fb74383ec2a30b42866d38f89d72c0ead/demos/index.md","https://github.com/OWASP/mastg/blob/02ffd85fb74383ec2a30b42866d38f89d72c0ead/Crackmes/README.md","https://github.com/OWASP/mastg/blob/02ffd85fb74383ec2a30b42866d38f89d72c0ead/CITATION.cff","https://github.com/OWASP/mastg/blob/02ffd85fb74383ec2a30b42866d38f89d72c0ead/License.md","https://github.com/OWASP/mastg/releases/tag/v2.0.0"],"category":"learning","description_en":"OWASP’s open manual for Android and iOS app security testing and reverse engineering, published at mas.owasp.org. Chapters on platform internals, test setup and app tampering and reverse engineering sit beside modular, individually referenced tests, techniques, tool pages, knowledge articles, best practices and runnable demos, all mapped to MASVS controls and MASWE weaknesses. OWASP’s UnCrackable crackme apps serve as practice targets and examples.","description_zh":"OWASP 维护的开放手册，讲解 Android 和 iOS 应用的安全测试与逆向工程，发布于 mas.owasp.org。除平台原理、测试环境搭建以及应用篡改与逆向工程等章节外，还收录可单独引用的测试、技术、工具页面、知识条目、最佳实践和可运行的演示，均与 MASVS 控制项和 MASWE 弱点对应。OWASP 自己的 UnCrackable 破解练习应用用作练习目标和示例。","entry_url":"https://awesomerea.org/resources/owasp-mastg/","entry_url_zh":"https://awesomerea.org/zh/resources/owasp-mastg/","evidence_url":"https://github.com/OWASP/mastg/blob/02ffd85fb74383ec2a30b42866d38f89d72c0ead/README.md","group":"learn","id":"owasp-mastg","json_url":"https://awesomerea.org/resources/owasp-mastg/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/owasp-mastg/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/owasp-mastg/index.md","name":"OWASP Mobile Application Security Testing Guide (MASTG)","name_zh":"OWASP 移动应用安全测试指南（MASTG）","record_type":"resource","relationship":"learning","requirements":["Reviewed at the 2026-09-30 master commit. The latest release, v2.0.0 of 2026-06-30, is described as completing the refactor into modular, machine-readable components and as the first stable release of that framework, while CITATION.cff still names version 1.5.0 of 2022. The pin holds 92 v1 tests and 200 atomic tests, 167 techniques, 135 tool pages, 157 demos, 141 knowledge articles and 74 best practices.","Reading needs only a browser; OWASP’s separate mas-website workflow builds the site. Following the techniques needs a Windows, Linux or macOS host with the tools each page names, such as the Android SDK platform tools, plus test devices or emulators. The guide recommends a rooted Android test device or jailbroken iOS device for dynamic analysis, warns against using a personal device, and describes fallbacks for testers without one.","The UnCrackable apps for Android and iOS are OWASP’s own reverse-engineering challenges, used as examples throughout the guide. Sample-app pages describe third-party apps, and tool pages describe external software; both keep their own terms. Demo results are written up from the guide’s sample code, not from tests of production apps.","The repository is licensed CC BY-SA 4.0, so adapted text needs attribution and the same license."],"requirements_zh":["审阅基于 2026-09-30 的 master 分支提交。最新版本 v2.0.0 发布于 2026-06-30，发布说明称其完成了向模块化、机器可读组件的重构，并且是该框架的首个稳定版；而 CITATION.cff 仍写着 2022 年的 1.5.0 版。所固定的提交包含 92 项 v1 测试和 200 项原子测试、167 项技术、135 个工具页面、157 个演示、141 篇知识条目和 74 项最佳实践。","阅读只需浏览器；网站由 OWASP 独立的 mas-website 工作流构建。按技术页面操作需要 Windows、Linux 或 macOS 主机，以及各页面列出的工具（如 Android SDK 平台工具），并准备测试设备或模拟器。指南建议使用已 root 的 Android 测试设备或已越狱的 iOS 设备进行动态分析，提醒不要使用个人设备，并为没有此类设备的测试者介绍了替代办法。","Android 与 iOS 版 UnCrackable 应用是 OWASP 自己的逆向工程挑战，在指南中通篇用作示例。示例应用页面介绍的是第三方应用，工具页面介绍的是外部软件，二者均保留各自条款。演示结果基于指南自带的示例代码撰写，并非对正式发布应用的测试。","仓库采用 CC BY-SA 4.0 许可，改编文本须署名并沿用相同许可。"],"targets":["app"],"url":"https://mas.owasp.org/MASTG/","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/bkaankose/Wino-Mail/blob/72b8d56881789ab11e42c9ab41b6567db1b85cde/LICENSE.md"],"category":"reconstruction-cases","description_en":"Native Windows client that aims to preserve the familiar Windows Mail and Calendar experience while rebuilding its functionality. The upstream README documents a WinUI 3 interface, mail and calendar providers, contacts, tasks and offline workflows.","description_zh":"原生 Windows 客户端，以重建 Windows 邮件与日历的功能、保留熟悉的使用体验为目标。上游 README 说明了 WinUI 3 界面、邮件与日历服务、联系人、待办及离线工作流。","entry_url":"https://awesomerea.org/resources/wino-mail-case/","entry_url_zh":"https://awesomerea.org/zh/resources/wino-mail-case/","evidence_url":"https://github.com/bkaankose/Wino-Mail/blob/72b8d56881789ab11e42c9ab41b6567db1b85cde/README.md","group":"cases","id":"wino-mail-case","json_url":"https://awesomerea.org/resources/wino-mail-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/wino-mail-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wino-mail-case/index.md","name":"Wino Mail: recreating Windows Mail and Calendar","name_zh":"Wino Mail：重建 Windows 邮件与日历体验","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","license","testing"],"requirements":["Windows application from bkaankose/Wino-Mail; the README links Microsoft Store and App Installer distribution.","The repository publishes GNU GPL v3 license text for its code; this does not license the original Microsoft application or branding.","Feature coverage and preservation of the original experience are upstream goals and claims."],"requirements_zh":["来自 bkaankose/Wino-Mail 的 Windows 应用；README 链接 Microsoft Store 与 App Installer 分发渠道。","仓库为其代码提供 GNU GPL 第 3 版许可证正文；这不授予原 Microsoft 应用或品牌的许可。","功能覆盖与保留原有体验均为上游目标和声明。"],"targets":["app"],"url":"https://github.com/bkaankose/Wino-Mail","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/PrimeDecomp/prime/blob/2fd31790998c0486744a6289cac7e2fecc22d143/configure.py","https://github.com/PrimeDecomp/prime/blob/2fd31790998c0486744a6289cac7e2fecc22d143/tools/download_tool.py","https://github.com/PrimeDecomp/prime/blob/2fd31790998c0486744a6289cac7e2fecc22d143/config/GM8E01_00/config.yml","https://github.com/PrimeDecomp/prime/blob/2fd31790998c0486744a6289cac7e2fecc22d143/config/GM8E01_00/build.sha1","https://github.com/PrimeDecomp/prime/blob/2fd31790998c0486744a6289cac7e2fecc22d143/CONTRIBUTING.md","https://github.com/PrimeDecomp/prime/blob/2fd31790998c0486744a6289cac7e2fecc22d143/docs/metaforce.md","https://github.com/PrimeDecomp/prime/blob/2fd31790998c0486744a6289cac7e2fecc22d143/docs/nes-emulator.md","https://github.com/PrimeDecomp/prime/blob/2fd31790998c0486744a6289cac7e2fecc22d143/.gitmodules","https://github.com/PrimeDecomp/prime/blob/2fd31790998c0486744a6289cac7e2fecc22d143/.github/workflows/build.yml","https://github.com/PrimeDecomp/prime/blob/2fd31790998c0486744a6289cac7e2fecc22d143/LICENSE","https://decomp.dev/PrimeDecomp/prime","https://web.archive.org/web/20261020042005/https://decomp.dev/PrimeDecomp/prime/GM8E01_00/2fd31790998c0486744a6289cac7e2fecc22d143.json","https://web.archive.org/web/20261020042012/https://decomp.dev/PrimeDecomp/prime/GM8E01_01/2fd31790998c0486744a6289cac7e2fecc22d143.json","https://web.archive.org/web/20261020042019/https://decomp.dev/PrimeDecomp/prime/GM8E01_02/2fd31790998c0486744a6289cac7e2fecc22d143.json","https://web.archive.org/web/20261020042108/https://decomp.dev/PrimeDecomp/prime/GM8E01_48/2fd31790998c0486744a6289cac7e2fecc22d143.json","https://web.archive.org/web/20261020042116/https://decomp.dev/PrimeDecomp/prime/GM8P01_00/2fd31790998c0486744a6289cac7e2fecc22d143.json","https://web.archive.org/web/20261020042125/https://decomp.dev/PrimeDecomp/prime/GM8J01_00/2fd31790998c0486744a6289cac7e2fecc22d143.json"],"category":"reconstruction-cases","description_en":"Reconstructs C++ source for Metroid Prime’s GameCube executable and its NES-emulator module so that CodeWarrior builds match the originals, across the USA, Korean, PAL and Japanese releases, with early configurations for demo discs and three Wii releases. Matched units are compiled from source and linked with objects split from the user’s disc, then checked against per-version SHA-1 hashes; the repository contains no game assets or assembly. The separately curated Metaforce and Metroid Prime Port build their native ports on this code.","description_zh":"为《密特罗德 Prime》GameCube 版的可执行文件及其 NES 模拟器模块重建 C++ 源码，使 CodeWarrior 编译结果与原文件一致，涵盖美版、韩版、PAL 版与日版，另有针对体验版光盘和三个 Wii 版本的早期配置。已匹配的单元由源码编译，再与从使用者光盘中拆分出的对象链接，并按各版本的 SHA-1 哈希校验；仓库不含游戏素材或汇编。另行收录的 Metaforce 与 Metroid Prime Port 都在这份代码之上构建原生移植。","entry_url":"https://awesomerea.org/resources/primedecomp-metroid-prime-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/primedecomp-metroid-prime-decomp-case/","evidence_url":"https://github.com/PrimeDecomp/prime/blob/2fd31790998c0486744a6289cac7e2fecc22d143/README.md","group":"cases","id":"primedecomp-metroid-prime-decomp-case","json_url":"https://awesomerea.org/resources/primedecomp-metroid-prime-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/primedecomp-metroid-prime-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/primedecomp-metroid-prime-decomp-case/index.md","name":"Metroid Prime: the PrimeDecomp matching GameCube decompilation","name_zh":"《密特罗德 Prime》：PrimeDecomp 的 GameCube 版一致性反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed main pin of 2026-10-19 updates objdiff to v3.8.2. README describes a work-in-progress decompilation supporting GM8E01_00 (USA v1.088), GM8E01_01 (USA v1.093), GM8E01_48 (Korea v1.097), GM8P01_00 (PAL v1.110), GM8J01_00 (Japan v1.111) and GM8E01_02 (USA v1.111); configure.py and CI also cover the Multi-Game Demo Disc, a Japanese demo and the Wii New Play Control and Trilogy releases. Output is the original main.dol and, for the six retail GameCube versions, the NES emulator REL, not a port; docs/metaforce.md explains how to convert code from Metaforce into matching C++98.","Building needs the user’s own disc image of the chosen version in its orig/ folder, in ISO (GCM), RVZ, WIA, WBFS, CISO, NFS, GCZ or TGC format, which can be deleted after the first build. The repository contains no game assets or assembly; decomp-toolkit splits the original executable and its embedded data locally. CONTRIBUTING lists Metaforce, a shared Ghidra server and a symbol map from an early demo disc as references for contributors.","Builds run natively on Windows with Python and ninja; macOS needs ninja and Wine Crossover, and Linux uses ninja with the automatically downloaded wibo wrapper on x86 or Wine elsewhere. configure.py pins decomp-toolkit v1.8.4, objdiff v3.8.2, binutils 2.42-1, sjiswrap v1.2.2, wibo 1.0.3 and a 20251118 compiler bundle from files.decomp.dev, compiling game code with CodeWarrior GC/1.3.2, or Wii/1.0a for the Wii releases. The MusyX audio library comes from a submodule.","The default build links source-built objects only for units marked Matching, uses original extracted objects for the rest and checks main.dol and the NES REL against the version’s build.sha1. decomp.dev’s reports for the pinned commit list 93.89% of GM8E01_00 code (16,478 of 16,685 functions) and 98.47% of its data matched, with 739 of 829 units complete; the other USA and Korean releases report 92.5–93.83% of code, PAL 84.37%, Japan 82.91%, and the demo and Wii builds early figures. CI builds all eleven configurations in a container that supplies the original files.","The repository carries CC0-1.0, which does not cover Nintendo’s game, the disc content or the downloaded compilers; the vendored zlib 1.1.3 keeps its own license and MusyX is a separate repository."],"requirements_zh":["所审阅的 main 分支固定版本日期为 2026 年 10 月 19 日，该提交将 objdiff 更新到 v3.8.2。README 将其描述为进行中的反编译，支持 GM8E01_00（美版 v1.088）、GM8E01_01（美版 v1.093）、GM8E01_48（韩版 v1.097）、GM8P01_00（PAL 版 v1.110）、GM8J01_00（日版 v1.111）和 GM8E01_02（美版 v1.111）；configure.py 与 CI 还涵盖 Multi-Game Demo Disc、一个日本体验版，以及 Wii 上的 New Play Control 版和三部曲合集。产物是原始的 main.dol，以及六个零售 GameCube 版本各自的 NES 模拟器 REL，而非移植；docs/metaforce.md 说明如何把 Metaforce 的代码改写为能一致编译的 C++98。","构建需要把使用者自备的所选版本光盘镜像放入对应的 orig/ 目录，格式可为 ISO（GCM）、RVZ、WIA、WBFS、CISO、NFS、GCZ 或 TGC，首次构建后即可删除。仓库不含游戏素材或汇编；decomp-toolkit 在本地拆分原始可执行文件及其内嵌数据。CONTRIBUTING 为贡献者列出的参考资料包括 Metaforce、一个共享 Ghidra 服务器，以及早期体验版光盘中附带的符号表。","在 Windows 上可直接用 Python 与 ninja 构建；macOS 需要 ninja 和 Wine Crossover；Linux 需要 ninja，在 x86 上会自动下载 wibo 包装器，其他架构则使用 Wine。configure.py 固定 decomp-toolkit v1.8.4、objdiff v3.8.2、binutils 2.42-1、sjiswrap v1.2.2、wibo 1.0.3，以及从 files.decomp.dev 下载的 20251118 编译器包；游戏代码用 CodeWarrior GC/1.3.2 编译，Wii 版本则用 Wii/1.0a。MusyX 音频库来自子模块。","默认构建只对标为 Matching 的单元链接由源码编译的对象，其余单元使用从原文件提取的对象，再按该版本的 build.sha1 校验 main.dol 与 NES REL。decomp.dev 针对该固定提交的报告显示，GM8E01_00 有 93.89% 的代码（16,685 个函数中的 16,478 个）与 98.47% 的数据已匹配，829 个单元中 739 个已完成；其他美版与韩版的代码匹配率为 92.5%–93.83%，PAL 版为 84.37%，日版为 82.91%，体验版与 Wii 版仍处于早期。CI 在提供原始文件的容器中构建全部十一种配置。","仓库采用 CC0-1.0，不涵盖任天堂的游戏、光盘内容或下载的编译器；仓库内附带的 zlib 1.1.3 保留其自身许可，MusyX 则是独立仓库。"],"targets":["game"],"url":"https://github.com/PrimeDecomp/prime","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/Serega25511s/Batla-3D-server-emu/blob/c70f254ee86b3fa7363b5afb98541bcaa9e6c751/LICENSE","https://github.com/Serega25511s/Batla-3D-server-emu/blob/c70f254ee86b3fa7363b5afb98541bcaa9e6c751/server/docs/protocol.md","https://github.com/Serega25511s/Batla-3D-server-emu/blob/c70f254ee86b3fa7363b5afb98541bcaa9e6c751/server/docs/weapon-upgrades.md","https://github.com/Serega25511s/Batla-3D-server-emu/blob/c70f254ee86b3fa7363b5afb98541bcaa9e6c751/server/src/Batla.Server/Batla.Server.csproj"],"category":"reconstruction-cases","description_en":"C# server emulator for the 2015 Steam client of Batla 3D, covering HTTP account, shop and room services and Lidgren UDP gameplay. It includes a client-assembly patcher and protocol notes that distinguish recovered client evidence from emulator rules.","description_zh":"面向 Batla 3D 2015 年 Steam 客户端的 C# 服务端模拟器，涵盖账户、商店、房间 HTTP 服务与 Lidgren UDP 对战。项目包含客户端程序集补丁工具，协议文档区分了从客户端恢复的证据与模拟器自行选择的规则。","entry_url":"https://awesomerea.org/resources/batla-3d-server-emulator-case/","entry_url_zh":"https://awesomerea.org/zh/resources/batla-3d-server-emulator-case/","evidence_url":"https://github.com/Serega25511s/Batla-3D-server-emu/blob/c70f254ee86b3fa7363b5afb98541bcaa9e6c751/README.md","group":"cases","id":"batla-3d-server-emulator-case","json_url":"https://awesomerea.org/resources/batla-3d-server-emulator-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/batla-3d-server-emulator-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/batla-3d-server-emulator-case/index.md","name":"Batla 3D server emulator (2015 client)","name_zh":"Batla 3D 服务端模拟器（2015 年客户端）","reconstruction_method":"other","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","license","limits","limits"],"requirements":["Requires an owned Unity 4.6.9f1 Steam client and .NET 10 SDK. The patcher uses dnlib; strict Steam validation requires Windows x86 Steam libraries.","MIT covers the repository code; game files must come from your own installation. Client patches also change packet fields and gameplay behavior beyond the server address.","Some combat, economy and objective values are emulator policies.","The README declares this stack frozen and unsupported. The referenced Batla.UdpSmoke harness is absent from the reviewed tree."],"requirements_zh":["需要自行持有 Unity 4.6.9f1 Steam 客户端及 .NET 10 SDK。补丁工具使用 dnlib；严格 Steam 验证需要 Windows x86 的 Steam 库。","MIT 许可覆盖仓库代码；游戏文件需要由自己的安装副本提供。客户端补丁除了服务器地址，还修改数据包字段和游戏行为。","部分战斗、经济与目标数值属于模拟器策略。","README 声明这一版本已冻结且不再维护。所审阅文件树中未找到文档引用的 Batla.UdpSmoke 测试工具。"],"targets":["game","protocol"],"url":"https://github.com/Serega25511s/Batla-3D-server-emu","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/mahaloz/decompilation-wiki/blob/0133d7124ea65d0eb717ff9a01c01b28923d2ca2/mkdocs.yml","https://github.com/mahaloz/decompilation-wiki/blob/0133d7124ea65d0eb717ff9a01c01b28923d2ca2/docs/contributing.md","https://github.com/mahaloz/decompilation-wiki/blob/0133d7124ea65d0eb717ff9a01c01b28923d2ca2/docs/decompilers/directory.md","https://github.com/mahaloz/decompilation-wiki/blob/0133d7124ea65d0eb717ff9a01c01b28923d2ca2/docs/applications/program-reconstruction.md","https://github.com/mahaloz/decompilation-wiki/blob/0133d7124ea65d0eb717ff9a01c01b28923d2ca2/docs/fundamentals/neural-decompilation.md","https://github.com/mahaloz/decompilation-wiki/blob/0133d7124ea65d0eb717ff9a01c01b28923d2ca2/.github/workflows/publish.yml","https://github.com/mahaloz/decompilation-wiki/blob/0133d7124ea65d0eb717ff9a01c01b28923d2ca2/LICENSE"],"category":"learning","description_en":"Community wiki explaining how decompilers work, from disassembly, lifting and control-flow recovery to type recovery, control-flow structuring, quality evaluation and neural decompilation, citing the research behind each technique. It also keeps directories of decompilers, plugins, blogs and talks, pages on applied research such as symbol recovery, code similarity and vulnerability discovery, and a table of about 240 game reconstruction projects by original platform.","description_zh":"社区维护的维基，讲解反编译器如何工作，从反汇编、提升和控制流恢复，到类型恢复、控制流结构化、质量评估和神经反编译，并为各项技术注明研究出处。它还整理了反编译器、插件、博客和演讲目录，设有符号恢复、代码相似性和漏洞发现等应用研究页面，以及按原平台列出的约 240 个游戏重建项目表。","entry_url":"https://awesomerea.org/resources/decompilation-wiki/","entry_url_zh":"https://awesomerea.org/zh/resources/decompilation-wiki/","evidence_url":"https://github.com/mahaloz/decompilation-wiki/blob/0133d7124ea65d0eb717ff9a01c01b28923d2ca2/README.md","group":"learn","id":"decompilation-wiki","json_url":"https://awesomerea.org/resources/decompilation-wiki/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/decompilation-wiki/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/decompilation-wiki/index.md","name":"The Decompilation Wiki","name_zh":"Decompilation Wiki 反编译维基","record_type":"resource","relationship":"learning","requirements":["Reviewed at the 2026-10-15 main commit, from which a workflow builds the site with MkDocs Material and publishes it to GitHub Pages; reading needs only a browser. The README calls the wiki early in development: it has about 30 pages, several of them short, and the neural-decompilation page was last changed in September 2024.","Listings are compiled from contributions. The decompiler directory’s 23 rows note open-source, inactive, plugin and educational status, and the program-reconstruction table lists 241 games, 39 marked completed. Cited papers are gathered in a linked Google Sheets list kept outside the repository.","Changes arrive as GitHub pull requests: listing additions should give a description link, tags and a source link, while content changes to research areas need a citation or a reasoned argument. Local previews use Python and MkDocs.","The repository is BSD-2-Clause; linked papers, tools and projects keep their own terms. The wiki was started by Zion Leonahenahe Basque and is maintained with community contributions."],"requirements_zh":["审阅基于 2026-10-15 的 main 分支提交；工作流以 MkDocs Material 构建网站并发布到 GitHub Pages，阅读只需浏览器。README 称该维基仍处于早期开发阶段：全站约 30 个页面，部分篇幅较短；神经反编译页面最后修改于 2024 年 9 月。","各类目录由贡献者整理。反编译器目录共 23 行，标注开源、停止维护、插件形式和教学用途等属性；程序重建表列出 241 款游戏，其中 39 款标为已完成。所引用的论文汇总在仓库之外的一份 Google Sheets 表格中。","修改通过 GitHub 拉取请求提交：新增条目应附说明链接、标签和源码链接，研究内容的实质修改则需引用文献或给出充分论证。本地预览使用 Python 和 MkDocs。","仓库采用 BSD-2-Clause 许可；所链接的论文、工具和项目保留各自条款。该维基由 Zion Leonahenahe Basque 创建，并依靠社区贡献维护。"],"targets":["binary","game"],"url":"https://decompilation.wiki/","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/RSDKModding/RSDKv4-Decompilation/blob/a7f5195e21fdad7b75e4587e249013feeea9e6f3/FAQ.md","https://github.com/RSDKModding/RSDKv4-Decompilation/blob/a7f5195e21fdad7b75e4587e249013feeea9e6f3/LICENSE.md","https://github.com/RSDKModding/RSDKv4-Decompilation/blob/a7f5195e21fdad7b75e4587e249013feeea9e6f3/CMakeLists.txt","https://github.com/RSDKModding/RSDKv4-Decompilation/blob/a7f5195e21fdad7b75e4587e249013feeea9e6f3/.gitmodules","https://github.com/RSDKModding/RSDKv4-Decompilation/tree/a7f5195e21fdad7b75e4587e249013feeea9e6f3/RSDKv4/NativeObjects","https://github.com/RSDKModding/RSDKv4-Decompilation/blob/a7f5195e21fdad7b75e4587e249013feeea9e6f3/.github/workflows/build.yml","https://github.com/RSDKModding/RSDKv4-Decompilation/releases/tag/1.3.3"],"category":"reconstruction-cases","description_en":"Decompiles Retro Engine (RSDK) v4, the engine behind Sonic the Hedgehog and Sonic the Hedgehog 2 (2013), together with the games’ natively coded menus, and builds it for Windows, Linux and Android. The engine runs the game scripts contained in the official releases’ data files, which users must supply. The project adds a script compiler, a mod loader and an experimental online mode for Sonic 2’s 2P VS; it is the predecessor of the same group’s RSDKv5 decompilation.","description_zh":"反编译 Retro Engine（RSDK）v4——《索尼克》与《索尼克 2》（2013）所用的引擎——以及两款游戏中以原生代码实现的菜单，可构建 Windows、Linux 与 Android 版本。引擎运行官方发行版数据文件中的游戏脚本，这些文件需由使用者自备。项目增加了脚本编译器、模组加载器，以及《索尼克 2》双人对战的实验性联网模式；它是同一团队 RSDKv5 反编译项目的前身。","entry_url":"https://awesomerea.org/resources/rsdkv4-sonic-1-2-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rsdkv4-sonic-1-2-decomp-case/","evidence_url":"https://github.com/RSDKModding/RSDKv4-Decompilation/blob/a7f5195e21fdad7b75e4587e249013feeea9e6f3/README.md","group":"cases","id":"rsdkv4-sonic-1-2-decomp-case","json_url":"https://awesomerea.org/resources/rsdkv4-sonic-1-2-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rsdkv4-sonic-1-2-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rsdkv4-sonic-1-2-decomp-case/index.md","name":"RSDKv4 Decompilation: Retro Engine v4 and the Sonic 1 & 2 (2013) menus","name_zh":"RSDKv4 Decompilation：Retro Engine v4 与《索尼克》1、2（2013）菜单的反编译","reconstruction_method":"decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["Reviewed at the 2026-09-06 main head, 13 commits after release 1.3.3 (2025-11-02). README calls it a complete decompilation of Retro Engine v4 and the menus from Sonic 1 and 2 (2013); the licence says most code is meant to be functionally the same as the specified RSDK version. RETRO_REVISION defaults to 3 (Origins), and RETRO_ORIGINAL_CODE removes the project’s changes but, per CMake, cannot build a playable game.","It will not run without assets from an official release of Sonic 1 or Sonic 2: README names Sonic Origins on Steam, the Epic Games Store and Switch, and the now-delisted iOS and Android releases. The FAQ notes that Origins data files are packed as RSDKv5 datapacks and lack the games’ music and sound effects, and that release builds and autobuilds disable the DLC and block Origins’ Amy; the repository ships no game data.","Clone recursively, because GitHub’s source ZIPs omit the stb, tinyxml2, asio and Flatpak submodules. CMake 3.10+ builds use Visual Studio with vcpkg (GLEW, SDL2, libogg, libvorbis) on Windows, the listed GLEW, SDL2 and Ogg/Vorbis packages on Linux, and a separate Android guide; Xcode, UWP and Flatpak projects are included, while Vita, Switch, 3DS and WebAssembly ports are unofficial forks. Sonic 2’s online 2P VS needs a Python 3.8+ server that README calls a very unstable proof of concept.","CI builds Windows x86 and x64, Android and Linux binaries with the Plus DLC disabled; it runs no tests, and the project publishes no comparison with the original engine binaries. The FAQ says bugs present in official releases will mostly not be fixed.","The custom RSDKv3/v4 Decompilation Source Code License v2 requires distributed prebuilt executables to default to DLC off, forbids commercial use and distributing game assets other than unique modded ones, requires crediting the original RSDK author Christian “Taxman” Whitehead and the decompilation authors Rubberduckycooly and st×tic, and binds forks to the same terms."],"requirements_zh":["审阅对象为 2026-09-06 的 main 分支最新提交，比 1.3.3 发行版（2025-11-02）晚 13 个提交。README 称其为 Retro Engine v4 及 Sonic 1、2（2013）菜单的完整反编译；许可证说明大部分代码旨在与所指定 RSDK 版本功能一致。RETRO_REVISION 默认为 3（Origins）；RETRO_ORIGINAL_CODE 会移除项目自身的改动，但按 CMake 说明，这样无法构建出可玩的游戏。","没有《索尼克》或《索尼克 2》官方发行版的素材就无法运行：README 列出了 Steam、Epic Games Store 和 Switch 上的 Sonic Origins，以及现已下架的 iOS 与 Android 版本。FAQ 指出 Origins 的数据文件以 RSDKv5 数据包格式打包，且不含游戏的音乐和音效；正式发行版和自动构建会禁用 DLC，并阻止使用 Origins 中的 Amy。仓库不附带任何游戏数据。","需递归克隆，因为 GitHub 的源码 ZIP 不包含 stb、tinyxml2、asio 和 Flatpak 子模块。CMake 3.10+ 构建在 Windows 上使用 Visual Studio 与 vcpkg（GLEW、SDL2、libogg、libvorbis），在 Linux 上使用所列的 GLEW、SDL2 与 Ogg/Vorbis 软件包，Android 另有单独指南；仓库还包含 Xcode、UWP 和 Flatpak 工程，而 Vita、Switch、3DS 与 WebAssembly 移植均为非官方分支。《索尼克 2》的联网双人对战需要 Python 3.8+ 服务器，README 称其只是非常不稳定的概念验证。","CI 在禁用 Plus DLC 的情况下构建 Windows x86 与 x64、Android 和 Linux 二进制；不运行测试，项目也未公布与原版引擎二进制的对比。FAQ 表示官方版本中已有的漏洞大多不会修复。","自定义的 RSDKv3/v4 Decompilation Source Code License v2 要求分发的预构建可执行文件默认关闭 DLC，禁止商业使用，禁止分发除独有模组素材以外的游戏素材，要求注明原 RSDK 作者 Christian “Taxman” Whitehead 以及反编译作者 Rubberduckycooly 和 st×tic，并要求分支遵守同样条款。"],"targets":["game"],"url":"https://github.com/RSDKModding/RSDKv4-Decompilation","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/cea-sec/miasm/blob/3671fc24d6e625c2d75f3311724eb6b0c97664f8/README.md#L503-L603","https://github.com/cea-sec/miasm/blob/3671fc24d6e625c2d75f3311724eb6b0c97664f8/pyproject.toml","https://github.com/cea-sec/miasm/blob/3671fc24d6e625c2d75f3311724eb6b0c97664f8/CHANGELOG.md","https://github.com/cea-sec/miasm/blob/3671fc24d6e625c2d75f3311724eb6b0c97664f8/LICENSE","https://github.com/cea-sec/miasm/blob/3671fc24d6e625c2d75f3311724eb6b0c97664f8/.github/workflows/tests.yml","https://github.com/cea-sec/miasm/tree/3671fc24d6e625c2d75f3311724eb6b0c97664f8/miasm/arch","https://github.com/cea-sec/miasm/tree/3671fc24d6e625c2d75f3311724eb6b0c97664f8/miasm/analysis","https://github.com/cea-sec/miasm/tree/3671fc24d6e625c2d75f3311724eb6b0c97664f8/miasm/os_dep","https://pypi.org/project/miasm/0.1.5/"],"category":"binary-libraries","description_en":"Python reverse-engineering framework for analyzing, modifying and generating binary programs. It reads, modifies and generates 32- and 64-bit PE and ELF files, assembles and disassembles x86, ARM, AArch64, MIPS, PowerPC, SH4, MSP430 and MeP code, and lifts it into its own intermediate language for symbolic execution, SSA and data-flow analysis, dependency graphs and expression simplification aimed at deobfuscation. Its JIT emulator runs shellcode or parts of binaries through LLVM, GCC, Clang or pure-Python backends, with Python callbacks that stand in for library functions, sandboxes with selected Windows API and Linux emulation, and dynamic symbolic execution through Z3.","description_zh":"用于分析、修改和生成二进制程序的 Python 逆向工程框架。它可读取、修改和生成 32 位与 64 位 PE 和 ELF 文件，汇编和反汇编 x86、ARM、AArch64、MIPS、PowerPC、SH4、MSP430 与 MeP 代码，并将其提升到自有的中间语言，用于符号执行、SSA 与数据流分析、依赖图以及面向反混淆的表达式化简。其 JIT 模拟器可借助 LLVM、GCC、Clang 或纯 Python 后端运行 shellcode 或二进制中的部分代码，用 Python 回调代替库函数，提供模拟部分 Windows API 和 Linux 行为的沙箱，并可通过 Z3 进行动态符号执行。","entry_url":"https://awesomerea.org/resources/miasm/","entry_url_zh":"https://awesomerea.org/zh/resources/miasm/","evidence_url":"https://github.com/cea-sec/miasm/blob/3671fc24d6e625c2d75f3311724eb6b0c97664f8/README.md","group":"tools","id":"miasm","json_url":"https://awesomerea.org/resources/miasm/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/miasm/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/miasm/index.md","name":"Miasm","name_zh":"Miasm 逆向工程框架","record_type":"resource","relationship":"foundation","requirements":["PyPI’s latest release and the newest tag are 0.1.5 from 2023-04-18; GitHub releases stop at v0.1.3 from 2019. The reviewed master commit still declares 0.1.5 but is 100 commits ahead of that tag, so current code is installed from a clone with pip or taken from the project’s Docker images. CI runs the regression suite on Ubuntu with Python 3.10 and 3.13.","pyproject.toml requires Python 3.10+ with future and pyparsing, pinned to 3.3.2. Native jitter extensions are built only when a C compiler is available; otherwise installation continues without the jitter features unless MIASM_REQUIRE_JIT=1 is set. Optional extras add pycparser C-type parsing, Z3 for solver-backed dependency graphs and dynamic symbolic execution, llvmlite 0.44.0 for the LLVM backend, graphviz export and pycryptodome for Windows crypto API emulation. The README marks the LLVM backend untested on Windows.","Binaries, shellcode and memory dumps come from the analyst. The bundled Windows API emulation targets 32-bit x86, and other library effects are modeled with Python callbacks. The IDA plugins use a subset of Miasm without the jitter.","GPL-2.0-only. Lifted IR, simplified expressions and emulation results are analysis aids."],"requirements_zh":["PyPI 上的最新版本和最新标签均为 0.1.5，发布于 2023-04-18；GitHub Releases 只更新到 2019 年的 v0.1.3。所审阅的 master 提交仍标为 0.1.5，但比该标签多 100 个提交，因此当前代码需从克隆的仓库用 pip 安装，或使用项目的 Docker 镜像。CI 在 Ubuntu 上以 Python 3.10 和 3.13 运行回归测试。","pyproject.toml 要求 Python 3.10+，依赖 future 和固定为 3.3.2 的 pyparsing。只有在存在 C 编译器时才会构建原生 JIT 扩展；否则安装会继续进行但缺少 JIT 相关功能，除非设置了 MIASM_REQUIRE_JIT=1。可选扩展包括 pycparser C 类型解析、用于求解器支持的依赖图和动态符号执行的 Z3、用于 LLVM 后端的 llvmlite 0.44.0、graphviz 导出，以及用于模拟 Windows 加密 API 的 pycryptodome。README 标明 LLVM 后端在 Windows 上未经测试。","二进制、shellcode 和内存转储由分析者自行提供。自带的 Windows API 模拟面向 32 位 x86，其他库函数的效果通过 Python 回调来建模。IDA 插件只使用 Miasm 的部分功能，不包含 JIT。","采用 GPL-2.0-only 许可。提升得到的 IR、化简后的表达式和模拟结果只是分析辅助。"],"targets":["binary"],"url":"https://github.com/cea-sec/miasm","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/JetBrains/fernflower/blob/924b60f87d93743ab63b59454eec708e8309ef2a/README.md#L48-L92","https://github.com/JetBrains/fernflower/blob/924b60f87d93743ab63b59454eec708e8309ef2a/build.gradle.kts","https://github.com/JetBrains/fernflower/blob/924b60f87d93743ab63b59454eec708e8309ef2a/LICENSE.txt","https://github.com/JetBrains/fernflower/blob/924b60f87d93743ab63b59454eec708e8309ef2a/NOTICE.txt","https://www.jetbrains.com/intellij-repository/releases/com/jetbrains/intellij/java/java-decompiler-engine/maven-metadata.xml"],"category":"jvm","description_en":"JetBrains' analytical decompiler that turns Java class files back into Java source; IntelliJ IDEA bundles it to show code when debugging or browsing class files. The standalone console decompiler takes class files, JARs, ZIPs or directories, can load library files with -e only as analysis context, and writes Java sources to an output directory. Options cover generic signatures, lambdas, inner classes, record and switch patterns, per-method time limits and renaming of ambiguous or obfuscated identifiers, optionally through a user-supplied renamer class.","description_zh":"JetBrains 的分析型反编译器，可将 Java class 文件还原为 Java 源码；IntelliJ IDEA 内置了它，用于在调试或浏览 class 文件时显示代码。独立的控制台反编译器接受 class 文件、JAR、ZIP 或目录，可通过 -e 加载仅作为分析上下文的库文件，并将 Java 源码写入输出目录。选项涵盖泛型签名、lambda、内部类、记录模式与 switch 模式、单个方法的处理时限，以及对含糊或混淆标识符的重命名，也可由使用者提供的重命名类来实现。","entry_url":"https://awesomerea.org/resources/fernflower/","entry_url_zh":"https://awesomerea.org/zh/resources/fernflower/","evidence_url":"https://github.com/JetBrains/fernflower/blob/924b60f87d93743ab63b59454eec708e8309ef2a/README.md","group":"tools","id":"fernflower","json_url":"https://awesomerea.org/resources/fernflower/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/fernflower/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fernflower/index.md","name":"Fernflower","name_zh":"Fernflower Java 反编译器","record_type":"resource","relationship":"foundation","requirements":["No GitHub releases: the README says releases are published in the IntelliJ repository, whose java-decompiler-engine metadata listed 262.10968.63 as the latest release at review. The README describes Fernflower as part of IntelliJ Community, which takes patches as pull requests, and bugs go to JetBrains' YouTrack (subsystem Java. Decompiler. Engine).","The reviewed master commit's Gradle build (wrapper 9.1.0) compiles for Java 21 and produces fernflower.jar, or a fernflower start script with ./gradlew installDist; the README documents the java -jar fernflower.jar command line.","Inputs are user-supplied class, JAR or ZIP files; libraries passed with -e inform analysis of class and method relationships but are not decompiled. The README says most options are aimed at professional reverse engineers. Output is reconstructed Java, not the original source.","Apache-2.0 with a JetBrains NOTICE. The README credits Stiver as the original author and JetBrains as maintainer since 2014, with some ForgeFlower patches merged; Vineflower is a separately maintained fork."],"requirements_zh":["GitHub 上没有发布版本：README 称版本发布在 IntelliJ 仓库中，审阅时其 java-decompiler-engine 元数据列出的最新版本为 262.10968.63。README 称 Fernflower 属于 IntelliJ Community 项目，补丁需以拉取请求提交到该项目，问题则提交到 JetBrains YouTrack（子系统 Java. Decompiler. Engine）。","所审阅 master 分支提交中的 Gradle 构建（wrapper 9.1.0）以 Java 21 为编译目标，可生成 fernflower.jar，或通过 ./gradlew installDist 生成 fernflower 启动脚本；README 介绍了 java -jar fernflower.jar 命令行用法。","输入由使用者提供：class、JAR 或 ZIP 文件；通过 -e 传入的库文件用于分析类与方法之间的关系，但不会被反编译。README 称多数选项面向专业逆向工程人员。输出是重建的 Java 代码，并非原始源码。","采用 Apache-2.0 许可，附 JetBrains 的 NOTICE。README 称 Stiver 为原作者，JetBrains 自 2014 年起负责维护，并合并了部分 ForgeFlower 补丁；Vineflower 是另行维护的分支。"],"targets":["app"],"url":"https://github.com/JetBrains/fernflower","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/HyperDbg/HyperDbg/blob/ff3ba351a1059ce558967aa45a2c70ed25620aa4/README.md#L136-L187","https://github.com/HyperDbg/HyperDbg/blob/ff3ba351a1059ce558967aa45a2c70ed25620aa4/CHANGELOG.md","https://github.com/HyperDbg/HyperDbg/blob/ff3ba351a1059ce558967aa45a2c70ed25620aa4/LICENSE","https://github.com/HyperDbg/HyperDbg/tree/ff3ba351a1059ce558967aa45a2c70ed25620aa4/.github/workflows","https://github.com/HyperDbg/docs/blob/8bc60c027e741b8c77bba2200423e27cd18d8ed1/getting-started/build-and-install.md","https://github.com/HyperDbg/docs/blob/8bc60c027e741b8c77bba2200423e27cd18d8ed1/getting-started/faq.md","https://github.com/HyperDbg/HyperDbg/releases/tag/v0.24"],"category":"dynamic-analysis","description_en":"Hypervisor-assisted Windows debugger that virtualizes the running system with Intel VT-x and Extended Page Tables to debug kernel and user mode, either locally as a tracing and introspection tool or from a host attached over a serial connection to a guest virtual machine. Its events include EPT-based hidden breakpoints and hooks, memory read, write and execute monitoring without the limits of hardware debug registers, monitoring of system calls, CPUID, MSRs, I/O ports, MMIO, exceptions and interrupts, and Intel PT and LBR branch tracing. A kernel-side script engine, PDB symbol support and an SDK automate analysis.","description_zh":"借助虚拟化技术的 Windows 调试器：利用 Intel VT-x 和扩展页表（EPT）将正在运行的系统虚拟化，从而调试内核态和用户态代码；既可在本机作为跟踪与内省工具运行，也可从宿主机通过串行连接附加到客户虚拟机进行调试。其事件包括基于 EPT 的隐藏断点与钩子、不受硬件调试寄存器限制的内存读写和执行监控，对系统调用、CPUID、MSR、I/O 端口、MMIO、异常和中断的监控，以及 Intel PT 与 LBR 分支跟踪。内核侧脚本引擎、PDB 符号支持和 SDK 可用于自动化分析。","entry_url":"https://awesomerea.org/resources/hyperdbg/","entry_url_zh":"https://awesomerea.org/zh/resources/hyperdbg/","evidence_url":"https://github.com/HyperDbg/HyperDbg/blob/ff3ba351a1059ce558967aa45a2c70ed25620aa4/README.md","group":"tools","id":"hyperdbg","json_url":"https://awesomerea.org/resources/hyperdbg/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/hyperdbg/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hyperdbg/index.md","name":"HyperDbg","name_zh":"HyperDbg 虚拟化辅助调试器","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.24, published 2026-09-22 as a single compiled ZIP; the reviewed master commit is that release. The README and FAQ name Windows as the only supported OS. The v0.24 changelog reports that the kernel modules now compile on Linux, but Linux support is still under development.","Requires an Intel x64 processor with VT-x and EPT; AMD and ARM processors are not supported, and the FAQ says most features need a 4th-generation or later Intel processor. The driver is not digitally signed, so the documented setup enables VT-x in firmware and turns off driver signature enforcement and virtualization-based security on the debugged machine. The documentation recommends a guest VM under VMware Workstation, ESXi or KVM in Debugger Mode, because local VMI Mode cannot pause or step.","Building from source needs a recursive clone, Visual Studio 2026 and current Windows SDK and WDK releases; CI builds with Visual Studio 2022 and 2026. The user supplies the drivers, programs or systems to debug, and the README recommends OpenSecurityTraining2’s Reversing with HyperDbg (Dbg3301) course for getting started.","GPL-3.0 for HyperDbg and its submodules unless a file states otherwise; dependencies keep their own licenses. The README also describes transparency features aimed at debugger detection."],"requirements_zh":["审阅时最新版本为 v0.24，发布于 2026-09-22，以单个编译好的 ZIP 提供；所审阅的 master 提交即该版本。README 和 FAQ 均称 Windows 是唯一受支持的操作系统。v0.24 的更新日志称内核模块现已可在 Linux 上编译，但 Linux 支持仍在开发中。","需要支持 VT-x 和 EPT 的 Intel x64 处理器；不支持 AMD 和 ARM 处理器，FAQ 指出大部分功能需要第 4 代或更新的 Intel 处理器。其驱动没有数字签名，因此文档中的配置步骤要求在固件中启用 VT-x，并在被调试的机器上关闭驱动签名强制和基于虚拟化的安全（VBS）。文档建议在 VMware Workstation、ESXi 或 KVM 下的客户虚拟机中以调试器模式使用，因为本机的 VMI 模式无法暂停或单步执行。","从源码构建需要递归克隆仓库，并安装 Visual Studio 2026 以及最新的 Windows SDK 和 WDK；CI 使用 Visual Studio 2022 和 2026 构建。待调试的驱动、程序或系统由使用者提供；README 推荐通过 OpenSecurityTraining2 的 Reversing with HyperDbg（Dbg3301）课程入门。","HyperDbg 及其子模块除另有声明外均采用 GPL-3.0，依赖项适用各自的许可证。README 还介绍了针对调试器检测的透明化功能。"],"targets":["binary"],"url":"https://github.com/HyperDbg/HyperDbg","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/jindrapetrik/jpexs-decompiler/blob/de7efbf4754865f46c1c5bd36c9db9cc4ef2fa0b/README.md#L155-L176","https://github.com/jindrapetrik/jpexs-decompiler/blob/de7efbf4754865f46c1c5bd36c9db9cc4ef2fa0b/build.properties","https://github.com/jindrapetrik/jpexs-decompiler/blob/de7efbf4754865f46c1c5bd36c9db9cc4ef2fa0b/Dockerfile","https://github.com/jindrapetrik/jpexs-decompiler/blob/de7efbf4754865f46c1c5bd36c9db9cc4ef2fa0b/.github/workflows/build.yml","https://github.com/jindrapetrik/jpexs-decompiler/blob/de7efbf4754865f46c1c5bd36c9db9cc4ef2fa0b/libsrc/ffdec_lib/README.md","https://github.com/jindrapetrik/jpexs-decompiler/blob/de7efbf4754865f46c1c5bd36c9db9cc4ef2fa0b/libsrc/ffdec_lib/license.txt","https://github.com/jindrapetrik/jpexs-decompiler/blob/de7efbf4754865f46c1c5bd36c9db9cc4ef2fa0b/license.txt","https://github.com/jindrapetrik/jpexs-decompiler/blob/de7efbf4754865f46c1c5bd36c9db9cc4ef2fa0b/CHANGELOG.md","https://github.com/jindrapetrik/jpexs-decompiler/wiki/Features","https://github.com/jindrapetrik/jpexs-decompiler/wiki/Installation","https://github.com/jindrapetrik/jpexs-decompiler/releases/tag/version26.3.0"],"category":"web-analysis","description_en":"Java desktop decompiler and editor for Adobe Flash SWF files. It decompiles ActionScript 1/2 and AS3 side by side with the P-code they came from, edits scripts as source (experimental) or through the assembler view, and exports or replaces images, shapes, sounds, video, fonts and texts, with SWF-to-FLA conversion, SWF-to-XML round trips and SVG or HTML5 Canvas output. It also opens SWC and ABC files, Scaleform GFx and 64-bit Iggy files, has an ActionScript debugger and deobfuscation passes for obfuscated AS3, and offers its parser and decompiler as the ffdec_lib Java library and a command line.","description_zh":"面向 Adobe Flash SWF 文件的 Java 桌面反编译与编辑工具。它可反编译 ActionScript 1/2 和 AS3，并与对应的 P-code 对照显示；既能以源码形式（实验性）编辑脚本，也能通过汇编视图编辑，还可导出或替换图像、形状、声音、视频、字体和文本，支持 SWF 转 FLA、SWF 与 XML 互转，以及输出 SVG 或 HTML5 Canvas。它还能打开 SWC、ABC 文件以及 Scaleform GFx 和 64 位 Iggy 文件，内置 ActionScript 调试器和针对混淆 AS3 的反混淆处理，并以 ffdec_lib Java 库和命令行形式提供其解析与反编译功能。","entry_url":"https://awesomerea.org/resources/jpexs-decompiler/","entry_url_zh":"https://awesomerea.org/zh/resources/jpexs-decompiler/","evidence_url":"https://github.com/jindrapetrik/jpexs-decompiler/blob/de7efbf4754865f46c1c5bd36c9db9cc4ef2fa0b/README.md","group":"tools","id":"jpexs-decompiler","json_url":"https://awesomerea.org/resources/jpexs-decompiler/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/jpexs-decompiler/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/jpexs-decompiler/index.md","name":"JPEXS Free Flash Decompiler (FFDec)","name_zh":"JPEXS Flash 反编译器（FFDec）","record_type":"resource","relationship":"foundation","requirements":["Latest stable release at review: 26.3.0, published 2026-09-14, with a Windows MSI, a Debian package, a macOS app and pkg, a cross-platform ZIP and separate ffdec_lib and Javadoc archives; nightly prereleases are built from the dev branch. The reviewed master commit is two commits after the version26.3.0 tag, a Chinese README update and a dependency bump.","The application needs Java 8 or later on Windows, Linux or macOS; the installation guide asks for Oracle JDK 8+ on macOS. build.properties targets Java 8, and source builds use Apache Ant or the bundled NetBeans project, with Git recommended so the build can embed the revision. The Dockerfile runs the command-line interface on an Eclipse Temurin 21 JRE, and CI runs the Ant checkstyle, build and test targets on Windows.","SWF, SWC, GFx and Iggy inputs come from the user. Video display and export rely on the vlcj and JNA libraries, debugging needs a debug Flash Player, either the standalone player launched from FFDec or a remote player in listening mode, and AS3 editing through the Flex SDK is marked unstable.","The application is GPL-3.0-or-later and the ffdec_lib library LGPL-3.0, with bundled third-party libraries under their own licenses. Decompiled scripts and extracted assets keep the rights of the SWF’s owners. The README directs bug reports to the tracker on free-decompiler.com rather than GitHub issues."],"requirements_zh":["审阅时最新稳定版为 26.3.0，发布于 2026-09-14，提供 Windows MSI、Debian 软件包、macOS 应用及 pkg、跨平台 ZIP，以及单独的 ffdec_lib 库和 Javadoc 压缩包；每日构建预发布版由 dev 分支生成。所审阅的 master 提交比 version26.3.0 标签多两个提交，分别是中文 README 更新和一次依赖升级。","运行该应用需要 Windows、Linux 或 macOS 上的 Java 8 或更高版本；安装指南要求 macOS 使用 Oracle JDK 8+。build.properties 以 Java 8 为目标，从源码构建可使用 Apache Ant 或自带的 NetBeans 项目，并建议安装 Git 以便构建时写入修订号。Dockerfile 在 Eclipse Temurin 21 JRE 上运行命令行界面，CI 在 Windows 上运行 Ant 的 checkstyle、build 和 test 目标。","SWF、SWC、GFx 和 Iggy 输入文件由使用者提供。视频显示与导出依赖 vlcj 和 JNA 库；调试需要调试版 Flash Player，可以是由 FFDec 启动的独立播放器，也可以是以监听模式连接的远程播放器；通过 Flex SDK 编辑 AS3 被标为不稳定。","应用本身采用 GPL-3.0-or-later，ffdec_lib 库采用 LGPL-3.0，自带的第三方库各自适用其许可证。反编译得到的脚本和提取出的资源仍归 SWF 的权利人所有。README 要求在 free-decompiler.com 的问题追踪器而非 GitHub Issues 中报告问题。"],"targets":["game","website"],"url":"https://github.com/jindrapetrik/jpexs-decompiler","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/macabeus/mizuchi/blob/25eaef4214574cc20f376878dbc1b8099e97164e/mizuchi.example.yaml","https://github.com/macabeus/mizuchi/blob/25eaef4214574cc20f376878dbc1b8099e97164e/docs/integrator-plugin.md","https://github.com/macabeus/mizuchi/blob/25eaef4214574cc20f376878dbc1b8099e97164e/package.json","https://github.com/macabeus/mizuchi/blob/25eaef4214574cc20f376878dbc1b8099e97164e/.gitmodules","https://github.com/macabeus/mizuchi/blob/25eaef4214574cc20f376878dbc1b8099e97164e/.github/workflows/ci.yml","https://github.com/macabeus/mizuchi/blob/25eaef4214574cc20f376878dbc1b8099e97164e/LICENSE"],"category":"agent-workflows","description_en":"Plugin pipeline for matching decompilation that loops over functions in an existing decomp project: m2c drafts C, decomp-permuter mutates it, Claude rewrites it through a compile-and-diff tool, and objdiff accepts a result only when the compiled object matches the target assembly. A local Decomp Atlas web app indexes matched and unmatched functions with call graphs and code embeddings, helps pick the next function and builds prompts, while HTML reports summarise each run. An optional integrator places matched C into a git worktree, checks the build and can commit, push or open a PR.","description_zh":"面向匹配反编译的插件式流水线，在现有反编译项目中逐个处理函数：m2c 生成 C 初稿，decomp-permuter 对其做变异，Claude 借助编译并比对的工具改写代码，只有编译出的目标文件与目标汇编一致时才由 objdiff 判定通过。本地 Decomp Atlas 网页应用为已匹配和未匹配函数建立索引，附调用图和代码向量，帮助挑选下一个函数并生成提示词；HTML 报告汇总每次运行结果。可选的集成插件会把匹配成功的 C 代码放入 git 工作树，检查构建，并可提交、推送或发起 PR。","entry_url":"https://awesomerea.org/resources/mizuchi-matching-decompilation-pipeline/","entry_url_zh":"https://awesomerea.org/zh/resources/mizuchi-matching-decompilation-pipeline/","evidence_url":"https://github.com/macabeus/mizuchi/blob/25eaef4214574cc20f376878dbc1b8099e97164e/README.md","group":"agents","id":"mizuchi-matching-decompilation-pipeline","json_url":"https://awesomerea.org/resources/mizuchi-matching-decompilation-pipeline/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/mizuchi-matching-decompilation-pipeline/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mizuchi-matching-decompilation-pipeline/index.md","name":"Mizuchi","name_zh":"Mizuchi 匹配反编译流水线","record_type":"resource","relationship":"independent-agent-integration","requirements":["The reviewed main commit of 2026-08-17 declares package version 0.1.0; the repository has no releases or tags and is installed from source with npm on Node.js 22+. m2c and decomp-permuter are optional git submodules with setup scripts. Code embeddings need Python 3.10+ and download torch, transformers and an embedding model of about 2–3 GB, using Apple-Silicon MPS or the CPU; --skip-embeddings avoids them.","The Claude phase runs through the Claude Agent SDK and needs ANTHROPIC_API_KEY or cached Claude Code credentials; responses are cached locally by prompt hash. The example configuration allows 25 retries per prompt, gives the model read-only codebase tools plus compile_and_view_assembly, and accepts code only at zero instruction differences.","Mizuchi works inside a decompilation project the user already has, configured with a map file, non-matching assembly folders, a compiler shell script and the project’s period compiler. It supplies no ROMs, game assets or decompiled game code; the original files come from that project and the user’s own copies. Listed target settings include GBA, DS, 3DS, N64, GameCube, Wii, PlayStation 1/2, PSP, Switch, Saturn, Dreamcast, Win32, Android x86 and IRIX.","CI on Ubuntu runs type checks, lint, formatting and the Vitest suite and builds the CLI, using bundled agbcc and KMC GCC compiler fixtures. The README links an author post on benchmarks, and the repository publishes no match results. The integrator can push branches and open PRs with gh, and its optional AI build fix lets Claude edit files and run shell commands in the worktree, so review its output before it reaches a shared project.","MIT-licensed. m2c, decomp-permuter, objdiff, the embedding model and the compilers keep their own terms, and decompiled code inherits the target project’s rights and contribution rules."],"requirements_zh":["所审阅的 main 分支提交日期为 2026-08-17，声明软件包版本 0.1.0；仓库没有发布版或标签，需在 Node.js 22+ 环境下用 npm 从源码安装。m2c 和 decomp-permuter 是可选的 git 子模块，附有安装脚本。代码向量需要 Python 3.10+，并会下载约 2–3 GB 的 torch、transformers 和向量模型，使用 Apple Silicon 的 MPS 或 CPU 运行；加 --skip-embeddings 可跳过。","Claude 阶段通过 Claude Agent SDK 运行，需要 ANTHROPIC_API_KEY 或已缓存的 Claude Code 登录凭据；响应按提示词哈希缓存在本地。示例配置为每个提示词允许重试 25 次，向模型提供只读的代码库工具和 compile_and_view_assembly，只有指令差异为零时才接受代码。","Mizuchi 在使用者已有的反编译项目中工作，需要配置映射文件、未匹配汇编目录、编译器脚本和该项目使用的当年编译器。它不提供 ROM、游戏素材或反编译出的游戏代码；原始文件来自该项目和使用者自有的副本。所列目标设置包括 GBA、DS、3DS、N64、GameCube、Wii、PlayStation 1/2、PSP、Switch、Saturn、Dreamcast、Win32、Android x86 和 IRIX。","Ubuntu 上的 CI 运行类型检查、代码规范检查、格式检查和 Vitest 测试并构建 CLI，测试使用仓库内的 agbcc 与 KMC GCC 编译器样本。README 链接了作者关于基准测试的文章，仓库本身未发布匹配结果。集成插件可用 gh 推送分支并发起 PR，其可选的 AI 构建修复会让 Claude 在工作树中编辑文件并执行 shell 命令，因此结果进入共享项目前应先审查。","采用 MIT 许可。m2c、decomp-permuter、objdiff、向量模型和各编译器保留各自条款，反编译出的代码受目标项目的权利和贡献规则约束。"],"targets":["binary","game"],"url":"https://github.com/macabeus/mizuchi","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/Noelo-Lab/kuna/blob/d1f98e52e054bc7684fd5bb13fca5088f3e09a2d/NOTICE","https://github.com/Noelo-Lab/kuna/blob/d1f98e52e054bc7684fd5bb13fca5088f3e09a2d/LICENSE","https://github.com/Noelo-Lab/kuna/blob/d1f98e52e054bc7684fd5bb13fca5088f3e09a2d/decompiler/Cargo.toml","https://github.com/Noelo-Lab/kuna/blob/d1f98e52e054bc7684fd5bb13fca5088f3e09a2d/docs/history.md","https://github.com/Noelo-Lab/kuna/blob/d1f98e52e054bc7684fd5bb13fca5088f3e09a2d/integrations/ghidra/KunaDecompiler/README.md","https://github.com/Noelo-Lab/kuna/blob/d1f98e52e054bc7684fd5bb13fca5088f3e09a2d/skills/kuna/SKILL.md","https://github.com/Noelo-Lab/kuna/blob/d1f98e52e054bc7684fd5bb13fca5088f3e09a2d/.github/workflows/tests.yml","https://github.com/Noelo-Lab/kuna/blob/d1f98e52e054bc7684fd5bb13fca5088f3e09a2d/.github/workflows/release.yml","https://github.com/Noelo-Lab/kuna/releases/tag/v1.906"],"category":"native-analysis","description_en":"Agent-first decompiler written in Rust that began as a port of Ghidra’s C++ decompiler and SLEIGH compiler, and has since diverged with option-gated features, some ported from angr. A single self-contained kuna binary decompiles one function or exports a whole binary to C, header and assembly files, and the same engine runs in the browser through WebAssembly or as the decompiler backend inside Ghidra. The project calls itself an experiment in having LLM agents refine the decompiler; most code is agent-written and steered by regression and benchmark results.","description_zh":"以智能体为核心、用 Rust 编写的反编译器，最初移植自 Ghidra 的 C++ 反编译器和 SLEIGH 编译器，此后加入了可按选项开关的功能（部分移植自 angr），已与上游分化。单个自包含的 kuna 程序可反编译单个函数，也可将整个二进制导出为 C、头文件和汇编文件；同一引擎还能通过 WebAssembly 在浏览器中运行，或在 Ghidra 中充当反编译后端。项目自称是让 LLM 智能体持续改进反编译器的实验，大部分代码由智能体编写，并以回归测试和基准结果为导向。","entry_url":"https://awesomerea.org/resources/kuna/","entry_url_zh":"https://awesomerea.org/zh/resources/kuna/","evidence_url":"https://github.com/Noelo-Lab/kuna/blob/d1f98e52e054bc7684fd5bb13fca5088f3e09a2d/README.md","group":"tools","id":"kuna","json_url":"https://awesomerea.org/resources/kuna/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/kuna/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/kuna/index.md","name":"Kuna","name_zh":"Kuna 智能体优先反编译器","record_type":"resource","relationship":"foundation","requirements":["The README calls Kuna an experiment. A scheduled workflow publishes releases daily; the latest at review, v1.906 of 2026-10-18, has kuna archives for Linux x86_64 (glibc and musl) and arm64, macOS arm64 and x86_64 and Windows x86_64, a specs archive and a Ghidra 12.1.2 extension zip. The reviewed main commit is 40 commits ahead of it, and the README’s Ghidra install step still links the older v1.157 zip.","Release binaries embed the compiled SLEIGH specs. Source builds need only a Rust toolchain, with the workspace declaring Rust 1.90+; make specs compiles the vendored Ghidra processor specs before a release-style kuna build. Users supply the binaries to analyze; the README says the browser version decompiles on the user’s machine, so the file stays local.","The Ghidra extension is version-locked to the Ghidra release in its file name and bundles Linux, macOS and Windows backends; other 12.x releases are marked unverified, and the README says not all native Ghidra features are supported yet. Headless Ghidra never loads the plugin, so the README swaps the stock decompile binary or uses a PyGhidra toggle, and reports testing that swap with Ghidra 12.1.2 and REA 3.1.0.","CI runs the 675-assertion XML regression corpus vendored from Ghidra against a checked-in baseline, Kuna’s own stage testcases, the cargo workspace suite, a spec-documentation check, CLI tests and the browser page’s modules. docs/history.md reports that the Rust port matched all 675 assertions against the untouched C++ decompiler before the C++ tree was removed. The README’s top DecBench standing and speed figures are project-reported.","Apache-2.0. NOTICE says the engine, SLEIGH compiler, processor specs and regression corpus derive from Ghidra, also Apache-2.0, and that some structuring and region-recovery code is ported from angr under BSD-2-Clause. Output can differ from stock Ghidra by design and is a reading aid."],"requirements_zh":["README 称 Kuna 是一项实验。项目由定时工作流每天发布版本；审阅时最新为 2026-10-18 的 v1.906，提供 Linux x86_64（glibc 与 musl）和 arm64、macOS arm64 与 x86_64、Windows x86_64 的 kuna 压缩包，以及规格文件包和适配 Ghidra 12.1.2 的扩展 zip。所审阅的 main 分支提交比该版本多 40 个提交，而 README 的 Ghidra 安装步骤仍链接较旧的 v1.157 扩展包。","发布版二进制已内置编译好的 SLEIGH 规格。从源码构建只需 Rust 工具链，工作区声明 Rust 1.90+；构建与发布版一致的 kuna 之前，需先用 make specs 编译随仓库附带的 Ghidra 处理器规格。待分析的二进制由使用者自备；README 称浏览器版在使用者本机完成反编译，文件不会离开本地。","Ghidra 扩展与文件名中的 Ghidra 版本绑定，内含 Linux、macOS 和 Windows 后端；其他 12.x 版本被标为未经验证，README 也说明尚不支持 Ghidra 原生的全部功能。无界面 Ghidra 不加载该插件，因此 README 改为替换原有的 decompile 程序或使用 PyGhidra 开关，并称已在 Ghidra 12.1.2 和 REA 3.1.0 上测试过这种替换。","CI 运行从 Ghidra 引入的 XML 回归语料（675 条断言）并与仓库内的基线比对，同时运行 Kuna 自有的阶段测试用例、cargo 工作区测试、规格文档检查、CLI 测试和浏览器页面模块测试。docs/history.md 称 Rust 移植版在移除 C++ 代码树之前，已在全部 675 条断言上与未改动的 C++ 反编译器一致。README 中的 DecBench 领先名次和速度数据为项目自述。","采用 Apache-2.0 许可。NOTICE 说明引擎、SLEIGH 编译器、处理器规格和回归语料源自同为 Apache-2.0 的 Ghidra，部分结构化与区域恢复代码按 BSD-2-Clause 移植自 angr。其输出按设计可能与原版 Ghidra 不同，只是阅读辅助。"],"targets":["binary"],"url":"https://github.com/Noelo-Lab/kuna","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-19","additional_evidence_urls":["https://github.com/Konloch/bytecode-viewer/blob/31430e0033fa220db566b5ef461256727ff6793b/README.md#L33-L46","https://github.com/Konloch/bytecode-viewer/blob/31430e0033fa220db566b5ef461256727ff6793b/pom.xml#L1-L55","https://github.com/Konloch/bytecode-viewer/blob/31430e0033fa220db566b5ef461256727ff6793b/src/main/java/the/bytecode/club/bytecodeviewer/decompilers/impl/KrakatauDecompiler.java","https://github.com/Konloch/bytecode-viewer/blob/31430e0033fa220db566b5ef461256727ff6793b/src/main/java/the/bytecode/club/bytecodeviewer/util/apk2Jar/Enjarify.java","https://github.com/Konloch/bytecode-viewer/blob/31430e0033fa220db566b5ef461256727ff6793b/LICENSE","https://github.com/Konloch/bytecode-viewer/releases/tag/v2.13.2","https://github.com/Konloch/bytecode-viewer/security/advisories/GHSA-3wq9-j4fc-4wmc"],"category":"jvm","description_en":"Desktop suite for inspecting compiled Java and Android programs: drop in a class, JAR, WAR, APK, DEX, XAPK or APKM file to browse its classes and resources, with up to three decompiler or disassembler views side by side. The README lists six bundled Java decompilers (Krakatau, CFR, Procyon, FernFlower, JADX and JD-GUI), Krakatau and Smali/baksmali disassemblers and assemblers plus javap, Dex2Jar and Enjarify for APK/DEX conversion, a built-in Java compiler for editing, and static search. Java and JavaScript plugins receive every loaded class as an ASM ClassNode for jobs such as string deobfuscation or malicious-code searches.","description_zh":"用于检查已编译 Java 与 Android 程序的桌面套件：拖入 class、JAR、WAR、APK、DEX、XAPK 或 APKM 文件即可浏览其中的类和资源，并可并排显示最多三个反编译器或反汇编器视图。README 列出六个内置 Java 反编译器（Krakatau、CFR、Procyon、FernFlower、JADX 和 JD-GUI）、Krakatau 与 Smali/baksmali 反汇编器和汇编器以及 javap，还有用于 APK/DEX 转换的 Dex2Jar 和 Enjarify、用于编辑的内置 Java 编译器和静态搜索。Java 和 JavaScript 插件会收到全部已加载类的 ASM ClassNode，可用于字符串去混淆或恶意代码搜索等任务。","entry_url":"https://awesomerea.org/resources/bytecode-viewer/","entry_url_zh":"https://awesomerea.org/zh/resources/bytecode-viewer/","evidence_url":"https://github.com/Konloch/bytecode-viewer/blob/31430e0033fa220db566b5ef461256727ff6793b/README.md","group":"tools","id":"bytecode-viewer","json_url":"https://awesomerea.org/resources/bytecode-viewer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/bytecode-viewer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bytecode-viewer/index.md","name":"Bytecode Viewer","name_zh":"Bytecode Viewer Java/Android 逆向工程套件","record_type":"resource","relationship":"foundation","requirements":["Release at review: v2.13.2, published 2026-01-01 and re-released on 2026-01-06 with Windows APK fixes, as a single runnable JAR started with java -jar. Its notes call it an in-development version whose CLI is being rewritten and is not functional, pointing CLI users to v2.12; the reviewed master commit is ten fix commits ahead of that tag and still declares 2.13.2.","pom.xml targets Java 8 and holds the bundled JADX at 1.4.7 because newer versions need Java 11+; source builds use mvn package. Some tools call external runtimes: the Krakatau decompiler needs a configured Python 2 command and a JRE rt.jar library, and Enjarify needs Python 3. The README suggests a larger -Xmx heap for OutOfMemoryError.","Inputs are user-supplied class, JAR, ZIP, WAR, APK, DEX, XAPK or APKM files. Decompiled Java is reconstructed from bytecode rather than recovered source, and the bundled decompilers can disagree; the side-by-side views are for comparing them.","GPL-3.0 per the LICENSE file; bundled decompilers and converters keep their own licenses. The repository's Zip Slip advisory (CVE-2022-21675) affects v2.10.x and is fixed from v2.11.0."],"requirements_zh":["审阅时的版本为 v2.13.2，发布于 2026-01-01，并于 2026-01-06 重新发布以修复 Windows 上的 APK 问题，以单个可运行 JAR 形式提供，用 java -jar 启动。其发布说明称这是开发中版本，命令行界面正在重写、目前无法使用，需要命令行的用户请改用 v2.12；所审阅的 master 分支提交比该标签多十个修复提交，声明的版本仍为 2.13.2。","pom.xml 以 Java 8 为目标，并因新版需要 Java 11+ 而将内置 JADX 固定在 1.4.7；从源码构建使用 mvn package。部分工具会调用外部运行环境：Krakatau 反编译器需要配置 Python 2 命令和 JRE 的 rt.jar 库，Enjarify 需要 Python 3。README 建议在出现 OutOfMemoryError 时用 -Xmx 增大堆内存。","输入由使用者提供：class、JAR、ZIP、WAR、APK、DEX、XAPK 或 APKM 文件。反编译得到的 Java 代码是从字节码重建的，并非恢复出的原始源码，各内置反编译器的结果也可能不同；并排视图正是为了对比这些结果。","LICENSE 文件为 GPL-3.0；内置的反编译器和转换工具沿用各自的许可证。仓库发布的 Zip Slip 安全公告（CVE-2022-21675）影响 v2.10.x，自 v2.11.0 起修复。"],"targets":["app"],"url":"https://github.com/Konloch/bytecode-viewer","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/Vector35/binaryninja-api/blob/14d46ea2a46330b0b6abbea8dcb620f84494fc8b/README.md#L17-L45","https://github.com/Vector35/binaryninja-api/blob/14d46ea2a46330b0b6abbea8dcb620f84494fc8b/README.md#L74-L78","https://github.com/Vector35/binaryninja-api/blob/14d46ea2a46330b0b6abbea8dcb620f84494fc8b/README.md#L140-L146","https://github.com/Vector35/binaryninja-api/blob/14d46ea2a46330b0b6abbea8dcb620f84494fc8b/CMakeLists.txt","https://github.com/Vector35/binaryninja-api/blob/14d46ea2a46330b0b6abbea8dcb620f84494fc8b/rust/Cargo.toml","https://github.com/Vector35/binaryninja-api/blob/14d46ea2a46330b0b6abbea8dcb620f84494fc8b/LICENSE.txt","https://github.com/Vector35/binaryninja-api/blob/14d46ea2a46330b0b6abbea8dcb620f84494fc8b/rust/LICENSE","https://github.com/Vector35/binaryninja-api/blob/14d46ea2a46330b0b6abbea8dcb620f84494fc8b/docs/dev/plugins.md#L57-L75","https://github.com/Vector35/binaryninja-api/blob/14d46ea2a46330b0b6abbea8dcb620f84494fc8b/docs/dev/mcp-tools.md","https://github.com/Vector35/binaryninja-api/releases/tag/stable/6.0.10601"],"category":"native-analysis","description_en":"Vector 35’s public C++, Python and Rust APIs for Binary Ninja, with their documentation, examples and the open-source plugins built on them. Binary Ninja itself is a closed-source commercial application, and this repository does not contain its analysis core. The open plugins cover the x86/x86_64, ARM64, ARMv7, PowerPC, MIPS, RISC-V and MSP430 architectures, ELF, PE/COFF, Mach-O and Apple shared-cache and kernel-cache loaders, DWARF, PDB and IDB import, and Objective-C, RTTI and SVD analysis, while the examples walk the low- and medium-level intermediate languages and extend the analysis pipeline through workflows.","description_zh":"Vector 35 为 Binary Ninja 公开的 C++、Python 和 Rust API，附带文档、示例以及基于这些 API 的开源插件。Binary Ninja 本身是闭源商业软件，本仓库不包含其分析核心。开源插件涵盖 x86/x86_64、ARM64、ARMv7、PowerPC、MIPS、RISC-V 和 MSP430 架构，ELF、PE/COFF、Mach-O 以及 Apple 共享缓存和内核缓存加载器，DWARF、PDB 与 IDB 导入，以及 Objective-C、RTTI 和 SVD 分析；示例则演示如何遍历低级与中级中间语言，并通过工作流扩展分析流程。","entry_url":"https://awesomerea.org/resources/binary-ninja-api/","entry_url_zh":"https://awesomerea.org/zh/resources/binary-ninja-api/","evidence_url":"https://github.com/Vector35/binaryninja-api/blob/14d46ea2a46330b0b6abbea8dcb620f84494fc8b/README.md","group":"tools","id":"binary-ninja-api","json_url":"https://awesomerea.org/resources/binary-ninja-api/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/binary-ninja-api/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binary-ninja-api/index.md","name":"Binary Ninja API","name_zh":"Binary Ninja 公开 API","record_type":"resource","relationship":"foundation","requirements":["The dev branch tracks Binary Ninja development builds. The newest release in this repository at review is stable/6.0.10601, published 2026-09-03, whose assets are Binary Ninja Free installers; the reviewed dev commit is 165 commits ahead of it, and dev-only material such as the guide to plugin-registered MCP tools is not in that release. The README says master tracks the stable build, but master was last updated in August 2024.","The API does not run on its own: plugins and scripts load the closed-source core from an installed copy of Binary Ninja. C++ plugins must be built from the API revision named in the installation’s api_REVISION.txt, and the install_api.py script shipped with the installation adds the Python module to another interpreter. The standalone examples and other headless scripts need a license with headless API access; the plugin guide says non-commercial licenses lack headless automation and names the Commercial and Ultimate editions for it.","CMakeLists.txt requires CMake 3.28+, a 64-bit C++20 toolchain and a Python 3.12+ interpreter. UI plugins need Qt 6.8.2, which the README recommends taking from the official installer or Vector 35’s Qt build rather than Homebrew, and -DHEADLESS=ON skips them. The Rust crate declares rust-version 1.98.1.","Most of the API and documentation is MIT-licensed and the Rust API is Apache-2.0; some components carry their own license files, and contributions go through Vector 35’s CLA. These licenses cover the API layer only and do not make Binary Ninja open source. The repository’s issue tracker also serves the wider product."],"requirements_zh":["dev 分支跟踪 Binary Ninja 的开发版构建。审阅时本仓库最新的发布为 stable/6.0.10601，发布于 2026-09-03，其附件是 Binary Ninja Free 安装包；所审阅的 dev 提交比它多 165 个提交，插件注册 MCP 工具的指南等仅在 dev 上的内容并未包含在该版本中。README 称 master 分支跟踪稳定版，但 master 最后一次更新是在 2024 年 8 月。","该 API 无法单独运行：插件和脚本需加载已安装的 Binary Ninja 中的闭源核心。C++ 插件必须基于安装目录中 api_REVISION.txt 所指定的 API 版本构建；安装包附带的 install_api.py 脚本可将 Python 模块添加到其他解释器。独立示例及其他无界面脚本需要支持无界面 API 访问的许可证；插件指南指出非商业许可证不提供无界面自动化，并说明 Commercial 和 Ultimate 版本可用。","CMakeLists.txt 要求 CMake 3.28+、64 位 C++20 工具链以及 Python 3.12+ 解释器。UI 插件需要 Qt 6.8.2，README 建议使用官方安装程序或 Vector 35 的 Qt 构建，而不要使用 Homebrew 版本；-DHEADLESS=ON 可跳过 UI 插件。Rust crate 声明 rust-version 为 1.98.1。","大部分 API 和文档采用 MIT 许可，Rust API 采用 Apache-2.0；部分组件附有各自的许可证文件，贡献代码需签署 Vector 35 的 CLA。这些许可证仅覆盖 API 层，并不意味着 Binary Ninja 是开源软件。该仓库的问题追踪器同时服务于整个产品。"],"targets":["binary","firmware"],"url":"https://github.com/Vector35/binaryninja-api","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/rwengine/openrw/blob/5c5f266b71aa55aeec8cb4d823f19e7c4348f3bd/CMakeLists.txt","https://github.com/rwengine/openrw/blob/5c5f266b71aa55aeec8cb4d823f19e7c4348f3bd/cmake_options.cmake","https://github.com/rwengine/openrw/blob/5c5f266b71aa55aeec8cb4d823f19e7c4348f3bd/cmake_configure.cmake","https://github.com/rwengine/openrw/blob/5c5f266b71aa55aeec8cb4d823f19e7c4348f3bd/conanfile.py","https://github.com/rwengine/openrw/blob/5c5f266b71aa55aeec8cb4d823f19e7c4348f3bd/.gitmodules","https://github.com/rwengine/openrw/tree/5c5f266b71aa55aeec8cb4d823f19e7c4348f3bd/rwcore/loaders","https://github.com/rwengine/openrw/tree/5c5f266b71aa55aeec8cb4d823f19e7c4348f3bd/rwengine/src/script","https://github.com/rwengine/openrw/blob/5c5f266b71aa55aeec8cb4d823f19e7c4348f3bd/tests/CMakeLists.txt","https://github.com/rwengine/openrw/blob/5c5f266b71aa55aeec8cb4d823f19e7c4348f3bd/.github/workflows/build-and-test.yml","https://github.com/rwengine/openrw/blob/5c5f266b71aa55aeec8cb4d823f19e7c4348f3bd/.appveyor.yml","https://github.com/rwengine/openrw/blob/5c5f266b71aa55aeec8cb4d823f19e7c4348f3bd/cmake/ctest/build.ctest","https://github.com/rwengine/openrw/blob/5c5f266b71aa55aeec8cb4d823f19e7c4348f3bd/COPYING","https://github.com/rwengine/openrw/issues/52","https://github.com/rwengine/openrw/wiki/FAQ","https://github.com/rwengine/openrw/wiki/Getting-Started","https://github.com/rwengine/openrw/wiki/Configuration"],"category":"reconstruction-cases","description_en":"Re-implements Rockstar Games’ Grand Theft Auto III (2001) as a cross-platform C++ engine that runs on the data of a legitimate PC copy. It has its own loaders for the game’s RenderWare models, textures and archives, a script machine for the original mission scripts, and an optional Qt data viewer. Playability is partial: the project’s mission tracker marks six early Portland story missions as completable.","description_zh":"以跨平台 C++ 引擎重新实现 Rockstar Games 的《侠盗猎车手 III》（2001），在正版 PC 游戏的数据上运行。项目自行实现了游戏 RenderWare 模型、纹理和归档的加载器，提供执行原版任务脚本的脚本机，并附带可选的 Qt 数据查看器。可玩程度有限：项目的任务追踪清单只将波特兰的六个早期剧情任务标为可完成。","entry_url":"https://awesomerea.org/resources/openrw-gta3-engine-case/","entry_url_zh":"https://awesomerea.org/zh/resources/openrw-gta3-engine-case/","evidence_url":"https://github.com/rwengine/openrw/blob/5c5f266b71aa55aeec8cb4d823f19e7c4348f3bd/README.md","group":"cases","id":"openrw-gta3-engine-case","json_url":"https://awesomerea.org/resources/openrw-gta3-engine-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/openrw-gta3-engine-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/openrw-gta3-engine-case/index.md","name":"OpenRW: an open re-implementation of the Grand Theft Auto III engine","name_zh":"OpenRW：《侠盗猎车手 III》引擎的开源重新实现","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed main snapshot dates from 2025-06-18; the repository has no tagged releases and the wiki says there are no official builds, so OpenRW is built from source. The playable-missions tracker (issue #52, last updated 2024-07-24) checks six story missions, all in Portland, and notes missing AI, broken cutscenes or unimplemented opcodes for many others; the FAQ says Vice City and San Andreas are not supported yet.","README requires a legitimate copy of the original PC game, and the FAQ says the original assets cannot be distributed; the repository contains no game data. rwgame reads the game directory set in its openrw.ini configuration file, and the optional rwviewer opens objects and models from the same data.","Builds use CMake 3.8+ and a C++17 compiler against Boost (program_options and system, plus unit_test_framework for tests), OpenAL, Bullet, GLM, FFmpeg, SDL2 and OpenGL, with FreeType for the tools and Qt 5 for the viewer; Conan is an optional package manager. The FAQ names C++17 and OpenGL 3.3 Core as hard requirements, and README reports ports to Linux, macOS, Windows and several BSDs.","GitHub Actions jobs on Arch Linux, Fedora and Ubuntu and an AppVeyor Visual Studio 2017 job run a CTest script that builds the code and its Boost.Test unit suite; tests that need game data sit behind the TEST_DATA option, which that script does not enable. No comparison with the original executable is published.","README applies GPL-3.0-or-later and lists FFmpeg (LGPL-2.1 or later), Bullet and SDL 2.0 (zlib) as third-party licences; the microprofile and imgui submodules are separate projects, and the game’s own assets keep their rights."],"requirements_zh":["所审阅的 main 快照日期为 2025-06-18；仓库没有带标签的发行版，wiki 也说明没有官方构建，因此需从源码构建 OpenRW。可玩任务追踪清单（issue #52，最后更新于 2024-07-24）勾选了六个剧情任务，全部位于波特兰，其余许多任务标注了缺少 AI、过场动画异常或操作码未实现等问题；FAQ 说明尚不支持《罪恶都市》和《圣安地列斯》。","README 要求使用原版 PC 游戏的正版副本，FAQ 说明项目不能分发原版素材；仓库不含任何游戏数据。rwgame 读取其 openrw.ini 配置文件中设定的游戏目录，可选的 rwviewer 也从同一份数据中打开物体和模型。","需使用 CMake 3.8+ 与 C++17 编译器构建，依赖 Boost（program_options 与 system，测试另需 unit_test_framework）、OpenAL、Bullet、GLM、FFmpeg、SDL2 和 OpenGL；工具需要 FreeType，查看器需要 Qt 5，Conan 为可选的包管理器。FAQ 将 C++17 和 OpenGL 3.3 Core 列为硬性要求，README 称已移植到 Linux、macOS、Windows 及多种 BSD。","Arch Linux、Fedora、Ubuntu 上的 GitHub Actions 任务和一个 AppVeyor Visual Studio 2017 任务运行 CTest 脚本，构建代码及其 Boost.Test 单元测试套件；需要游戏数据的测试受 TEST_DATA 选项控制，而该脚本并未启用。项目未公布与原版可执行文件的对比。","README 声明采用 GPL-3.0-or-later，并列出 FFmpeg（LGPL-2.1 或更高版本）、Bullet 和 SDL 2.0（zlib）等第三方许可；microprofile 与 imgui 子模块是独立项目，游戏本身的素材保留各自权利。"],"targets":["game"],"url":"https://github.com/rwengine/openrw","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/rexglue/rexglue-sdk/blob/c94f5ebdcb3c9d1a460ca48e04f9758448f8d518/CMakeLists.txt#L1-L104","https://github.com/rexglue/rexglue-sdk/blob/c94f5ebdcb3c9d1a460ca48e04f9758448f8d518/CMakePresets.json","https://github.com/rexglue/rexglue-sdk/blob/c94f5ebdcb3c9d1a460ca48e04f9758448f8d518/LICENSE","https://github.com/rexglue/rexglue-sdk/blob/c94f5ebdcb3c9d1a460ca48e04f9758448f8d518/.gitmodules","https://github.com/rexglue/rexglue-sdk/releases/tag/v0.10.0","https://github.com/rexglue/rexglue-sdk/wiki","https://github.com/rexglue/rexglue-sdk/wiki/Getting-Started","https://github.com/rexglue/rexglue-sdk/wiki/Codegen-Pipeline-Overview","https://github.com/rexglue/rexglue-sdk/wiki/Function-Overrides","https://github.com/rexglue/rexglue-sdk/wiki/Mid-ASM-Hooks"],"category":"game-analysis","description_en":"Experimental SDK for statically recompiling Xbox 360 executables into portable C++23 that runs natively on Windows, Linux and macOS. Its rexglue CLI scaffolds a per-game CMake project and, from a TOML config, analyzes a XEX binary (import resolution, PDATA, block discovery, gap filling, jump resolution and call-target validation) before translating each PowerPC instruction into C++; a runtime derived from Xenia's emulator core, with D3D12 or Vulkan graphics, hosts the generated code. Generated functions are weak aliases that native C++ overrides or mid-function hooks can replace, so a port can be refined one function at a time.","description_zh":"实验性 SDK，可将 Xbox 360 可执行文件静态重编译为可移植的 C++23 代码，在 Windows、Linux 和 macOS 上原生运行。其 rexglue 命令行工具为单个游戏搭建 CMake 项目，并根据 TOML 配置分析 XEX 二进制（导入解析、PDATA、基本块发现、空隙填充、跳转解析和调用目标校验），再将每条 PowerPC 指令翻译为 C++；生成的代码由派生自 Xenia 模拟器核心的运行时承载，图形后端为 D3D12 或 Vulkan。生成的函数均为弱别名，可用原生 C++ 覆盖或在函数内插入钩子来替换，从而逐个函数完善移植。","entry_url":"https://awesomerea.org/resources/rexglue-sdk/","entry_url_zh":"https://awesomerea.org/zh/resources/rexglue-sdk/","evidence_url":"https://github.com/rexglue/rexglue-sdk/blob/c94f5ebdcb3c9d1a460ca48e04f9758448f8d518/README.md","group":"tools","id":"rexglue-sdk","json_url":"https://awesomerea.org/resources/rexglue-sdk/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/rexglue-sdk/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rexglue-sdk/index.md","name":"ReXGlue SDK","name_zh":"ReXGlue Xbox 360 静态重编译 SDK","record_type":"resource","relationship":"foundation","requirements":["The README cautions that the project is in early development with breaking API changes, and the wiki calls it experimental and pre-1.0, not a turnkey way to play Xbox 360 games or an alternative to Xenia. Users must specify function boundaries, implement missing kernel imports and iterate on the codegen output; unresolved calls stop generation as validation errors unless --force is passed.","Release at review: v0.10.0, published 2026-08-21, with SDK archives for Windows amd64, Linux amd64/arm64 and macOS amd64/arm64; the default main branch holds that release, while nightly prereleases are built from the development branch, 24 commits ahead. Building needs a recursive clone, CMake 3.25+, Ninja and Clang 18+ or AppleClang 16+ on a 64-bit x86_64 or ARM64 host, and other compilers are rejected; the wiki's Windows setup uses Visual Studio 2022 with its Clang toolset and its Linux setup Clang 20+ with GTK3 headers.","Each project's TOML config points at the user's own Xbox 360 XEX; the SDK ships no game code. Documentation is the GitHub wiki, last edited 2026-06-04, whose status section still describes v0.3.x and calls the graphics, audio and input backends in flux.","LICENSE is a BSD-3-Clause text that credits Xenia-derived portions (GitHub reports NOASSERTION); submodules and the bundled PowerPC binutils executables keep their own licenses. The README disclaims affiliation with Microsoft and prohibits use for piracy."],"requirements_zh":["README 提醒该项目处于早期开发阶段，公共 API 会有破坏性变更；wiki 称其为实验性的 1.0 前版本，既不是开箱即用的 Xbox 360 游戏运行方案，也不能替代 Xenia。使用者需要手动指定函数边界、实现缺失的内核导入，并反复修正代码生成结果；未解析的调用会作为校验错误阻止生成，除非传入 --force。","审阅时的版本为 v0.10.0，发布于 2026-08-21，提供 Windows amd64、Linux amd64/arm64 和 macOS amd64/arm64 的 SDK 压缩包；默认的 main 分支即该版本，夜间预发布版则由领先 24 个提交的 development 分支构建。构建需要递归克隆、CMake 3.25+、Ninja，以及 Clang 18+ 或 AppleClang 16+，宿主须为 64 位 x86_64 或 ARM64，其他编译器会被拒绝；wiki 中的 Windows 环境使用 Visual Studio 2022 及其 Clang 工具集，Linux 环境使用 Clang 20+ 和 GTK3 开发头文件。","每个项目的 TOML 配置都指向使用者自己的 Xbox 360 XEX 文件；SDK 本身不含任何游戏代码。文档位于 GitHub wiki，最后编辑于 2026-06-04，其状态部分仍描述 v0.3.x，并称图形、音频和输入后端仍在变动。","LICENSE 为 BSD-3-Clause 文本，并注明部分代码源自 Xenia（GitHub 显示为 NOASSERTION）；子模块和随附的 PowerPC binutils 可执行文件沿用各自的许可证。README 声明与 Microsoft 无关，并禁止用于盗版。"],"targets":["binary","game"],"url":"https://github.com/rexglue/rexglue-sdk","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/Dryxio/reagent/blob/d12cea338c61898b06a86fe8adb25275fa9d5615/docs/validation-0.3.md","https://github.com/Dryxio/reagent/blob/d12cea338c61898b06a86fe8adb25275fa9d5615/docs/benchmark-0.3.json","https://github.com/Dryxio/reagent/blob/d12cea338c61898b06a86fe8adb25275fa9d5615/docs/architecture.md","https://github.com/Dryxio/reagent/blob/d12cea338c61898b06a86fe8adb25275fa9d5615/docs/configuration.md","https://github.com/Dryxio/reagent/blob/d12cea338c61898b06a86fe8adb25275fa9d5615/examples/gta_timer/README.md","https://github.com/Dryxio/reagent/blob/d12cea338c61898b06a86fe8adb25275fa9d5615/CHANGELOG.md","https://github.com/Dryxio/reagent/blob/d12cea338c61898b06a86fe8adb25275fa9d5615/pyproject.toml","https://github.com/Dryxio/reagent/blob/d12cea338c61898b06a86fe8adb25275fa9d5615/.github/workflows/ci.yml","https://github.com/Dryxio/reagent/blob/d12cea338c61898b06a86fe8adb25275fa9d5615/LICENSE","https://github.com/Dryxio/reagent/releases/tag/v0.4.0","https://github.com/Dryxio/ghidra-bridge/blob/faaf05363796cbc43eac7924f3b6981cd5e40619/README.md"],"category":"agent-workflows","description_en":"An open-source Python agent, published on PyPI as auto-re-agent, that drafts C/C++ implementations of functions in a compiled program from Ghidra evidence and has a separately configurable checker model review each draft in a bounded fix loop. A candidate is accepted only after a structural comparison with the decompile, assembly, control-flow and P-code evidence, the project’s own build, test and optional differential commands, and 11 heuristic parity signals. The README calls these gates conservative evidence, not proof of equivalence, and the tool writes candidates to an overlay rather than patching the source tree.","description_zh":"开源 Python 智能体，以 auto-re-agent 之名发布于 PyPI。它依据 Ghidra 提供的证据为已编译程序中的函数起草 C/C++ 实现，再由可单独配置的检查模型在有轮数上限的修复循环中审阅每份草稿。候选代码须先与反编译、汇编、控制流和 P-code 证据做结构比对，再通过项目自己的构建、测试及可选的差分命令和 11 项启发式一致性信号，才会被接受。README 称这些关卡只是保守的证据，并非等价性证明；工具把候选代码写入覆盖层，而不直接修改源码树。","entry_url":"https://awesomerea.org/resources/reagent-cpp-reconstruction-agent/","entry_url_zh":"https://awesomerea.org/zh/resources/reagent-cpp-reconstruction-agent/","evidence_url":"https://github.com/Dryxio/reagent/blob/d12cea338c61898b06a86fe8adb25275fa9d5615/README.md","group":"agents","id":"reagent-cpp-reconstruction-agent","json_url":"https://awesomerea.org/resources/reagent-cpp-reconstruction-agent/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/reagent-cpp-reconstruction-agent/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/reagent-cpp-reconstruction-agent/index.md","name":"ReAgent","name_zh":"ReAgent C/C++ 函数重建智能体","record_type":"resource","relationship":"independent-agent-integration","requirements":["The reviewed pin follows the v0.4.0 release of 2026-09-09 by one documentation commit; pyproject.toml classifies the package as alpha. The re-agent CLI covers init, plan, reverse, parity, status, estimate and evidence commands, with generic-cpp, windows-x64, gta-reversed and openrct2 profiles, the last two carrying hook and stub patterns for those existing reimplementation projects. Outputs are per-function candidate code, per-call prompt and response logs, checkpoints and a knowledge graph; the README says it never commits, pushes or overwrites the original tree.","Users supply the target program, a local Ghidra project in which it is imported, and a C/C++ project whose matching function bodies candidates replace in a temporary copy; the FAQ says useful results depend on that project’s source context, types, symbols and validation commands. Evidence comes from Ghidra exports read through the author’s separate ghidra-ai-bridge, whose headless export needs PyGhidra and a local Ghidra installation; without Ghidra only source-only parity checks run. No target binary or Ghidra export is bundled, and the GTA example needs the user’s own San Andreas executable.","It needs Python 3.10 or later; CI runs the tests on Linux with Python 3.10–3.13, on Windows with 3.12 and on macOS with 3.13. At least one model provider is required: a Claude or OpenAI-compatible API key, or an authenticated local Claude Code or Codex CLI, with reverser and checker free to use different providers at the user’s cost. Build, test and runtime commands are project-owned; argument arrays run directly on Windows and POSIX, legacy string commands need /bin/sh, and their results count as acceptance evidence only after trust_configured_commands is set explicitly.","docs/validation-0.3.md reports 131 tests passing locally on Python 3.13 with Ruff and strict mypy, and CI skips tests that need a model or Ghidra. Its one reference experiment, dated 2026-09-04, generated three GTA San Andreas timer functions with Claude CLI; each is reported to have passed review in one round, compiled through the example adapter and matched the original x86 code under Unicorn on seven inputs, with all three wrong-output controls detected. The author calls these 21 matching observations.","The repository and ghidra-ai-bridge are MIT-licensed; Ghidra, model services and the analysed programs keep their own terms. The README warns that configured commands are arbitrary project-owned commands to be trusted only when the project owner controls them, and that the Ghidra integration has to be tested in the user’s own environment."],"requirements_zh":["所审阅的固定版本是 2026 年 9 月 9 日 v0.4.0 发布之后的一次文档提交；pyproject.toml 将该包标为 Alpha 阶段。re-agent 命令行提供 init、plan、reverse、parity、status、estimate 与 evidence 等命令，并附带 generic-cpp、windows-x64、gta-reversed 和 openrct2 四种配置模板，后两种带有针对这两个现有重新实现项目的钩子与桩函数模式。输出包括每个函数的候选代码、每次调用的提示与回复日志、检查点和知识图谱；README 称它从不提交、推送或覆盖原始源码树。","使用者需自备目标程序、已导入该程序的本地 Ghidra 项目，以及一个 C/C++ 项目，候选代码会在其临时副本中替换对应的函数体；常见问题说明，结果是否有用取决于该项目的源码上下文、类型、符号和验证命令。证据来自 Ghidra 导出数据，经作者另行发布的 ghidra-ai-bridge 读取，其无界面导出需要 PyGhidra 和本地安装的 Ghidra；没有 Ghidra 时只能运行仅基于源码的一致性检查。仓库不附带任何目标二进制或 Ghidra 导出，GTA 示例需要使用者自己的 San Andreas 可执行文件。","需要 Python 3.10 或更高版本；CI 在 Linux 上用 Python 3.10–3.13、在 Windows 上用 3.12、在 macOS 上用 3.13 运行测试。至少需要一种模型来源：Claude 或 OpenAI 兼容 API 密钥，或已登录的本地 Claude Code 或 Codex 命令行；起草模型与检查模型可使用不同来源，费用由使用者承担。构建、测试和运行命令由项目自行提供：参数数组形式可在 Windows 和 POSIX 上直接执行，旧式字符串命令需要 /bin/sh，且只有显式设置 trust_configured_commands 后，其结果才算作验收证据。","docs/validation-0.3.md 报告 131 项测试在本地 Python 3.13 上全部通过，Ruff 与严格模式 mypy 检查亦通过；CI 会跳过需要模型或 Ghidra 的测试。其中唯一的参考实验日期为 2026 年 9 月 4 日，用 Claude CLI 生成了 GTA San Andreas 的三个计时器函数；据报告，每个函数都在一轮审阅内通过，经示例适配器编译，并在 Unicorn 中以七组输入与原始 x86 代码结果一致，三个故意出错的对照也全部被检出。作者称这是 21 次一致的观测。","仓库与 ghidra-ai-bridge 均采用 MIT 许可；Ghidra、模型服务及被分析的程序仍受各自条款约束。README 提醒，所配置的命令是由项目自行提供的任意命令，只有在项目所有者掌控时才应信任，而 Ghidra 集成需要在使用者自己的环境中测试。"],"targets":["binary","game"],"url":"https://github.com/Dryxio/reagent","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/mandiant/capa/blob/7a235c46965ea0965c65be3b9ee1e21dca686f3d/README.md#L153-L160","https://github.com/mandiant/capa/blob/7a235c46965ea0965c65be3b9ee1e21dca686f3d/doc/installation.md","https://github.com/mandiant/capa/blob/7a235c46965ea0965c65be3b9ee1e21dca686f3d/doc/usage.md","https://github.com/mandiant/capa/blob/7a235c46965ea0965c65be3b9ee1e21dca686f3d/doc/limitations.md","https://github.com/mandiant/capa/blob/7a235c46965ea0965c65be3b9ee1e21dca686f3d/capa/loader.py#L65-L75","https://github.com/mandiant/capa/blob/7a235c46965ea0965c65be3b9ee1e21dca686f3d/capa/ida/plugin/README.md#L97-L110","https://github.com/mandiant/capa/blob/7a235c46965ea0965c65be3b9ee1e21dca686f3d/capa/ghidra/README.md","https://github.com/mandiant/capa/blob/7a235c46965ea0965c65be3b9ee1e21dca686f3d/pyproject.toml","https://github.com/mandiant/capa/blob/7a235c46965ea0965c65be3b9ee1e21dca686f3d/LICENSE.txt","https://github.com/mandiant/capa/releases/tag/v10.0.0","https://pypi.org/project/flare-capa/10.0.0/"],"category":"native-analysis","description_en":"Mandiant FLARE tool that reports what an executable can do by matching a YAML rule set against features extracted from PE, ELF and .NET files or 32/64-bit shellcode, such as API calls, imports, strings and constants. Matches are grouped into capability namespaces with ATT&CK and MBC tags, and verbose output shows the function or basic-block addresses and features behind each match, pointing analysts to code worth studying. It also reads CAPE, DRAKVUF and VMRay sandbox reports for dynamic features and can use vivisect, IDA Pro, Ghidra or Binary Ninja for analysis, with explorer plugins for IDA and Ghidra and a browser viewer for its JSON results.","description_zh":"Mandiant FLARE 团队的工具，将 YAML 规则集与从 PE、ELF、.NET 文件或 32/64 位 shellcode 中提取的 API 调用、导入、字符串和常量等特征进行匹配，报告可执行文件具备哪些功能。匹配结果按功能命名空间归类并标注 ATT&CK 和 MBC，详细输出会列出每项匹配所依据的函数或基本块地址及特征，为分析人员指出值得深入研究的代码。它还能读取 CAPE、DRAKVUF 和 VMRay 沙箱报告以利用动态特征，可选用 vivisect、IDA Pro、Ghidra 或 Binary Ninja 进行分析，并提供 IDA 和 Ghidra 的 explorer 插件以及查看 JSON 结果的浏览器界面。","entry_url":"https://awesomerea.org/resources/capa/","entry_url_zh":"https://awesomerea.org/zh/resources/capa/","evidence_url":"https://github.com/mandiant/capa/blob/7a235c46965ea0965c65be3b9ee1e21dca686f3d/README.md","group":"tools","id":"capa","json_url":"https://awesomerea.org/resources/capa/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/capa/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/capa/index.md","name":"capa","name_zh":"capa 可执行文件功能识别工具","record_type":"resource","relationship":"foundation","requirements":["Release at review: v10.0.0, published 2026-10-16, with standalone PyInstaller builds for Linux (x86_64, arm64 and a Python 3.13 variant), macOS (x86_64 and arm64) and Windows that run without installation; the reviewed master commit only syncs the rules submodule after that tag. The installation guide says the Linux build needs GLIBC 2.26+ and that macOS Gatekeeper must approve the binary on first run. The flare-capa PyPI package (10.0.0, Python 3.10+) does not include the default rules or library-identification signatures, which are passed with -r and -s.","Inputs are user-supplied PE, ELF or .NET modules, raw shellcode, CAPE, DRAKVUF or VMRay reports, BinExport2 files or saved capa feature files. The IDA Pro explorer needs IDA 7.4+ with Python 3.10+ (tested through IDA 9.0); the Ghidra backend and explorer script need Ghidra 12.0+ started through PyGhidra; the Binary Ninja backend uses a separately installed Binary Ninja.","The limitations guide states that packed or obfuscated programs, installers and packaged programs such as AutoIt give misleading or incomplete results, and that capabilities split across wrapper or child functions are not matched; capa warns when its rules detect packing or installers. Matches are rule-based indications of capability, not confirmed behavior.","Apache-2.0, as is the separate capa-rules repository. v10.0.0 fixes code execution through crafted vivisect .viv workspace files, which affected v9.4.0 and earlier; existing workspaces now load only with CAPA_LOAD_VIV_WORKSPACE=1. A recursive source clone also fetches the test-file submodule, which the installation guide warns contains many malware samples."],"requirements_zh":["审阅时的版本为 v10.0.0，发布于 2026-10-16，提供用 PyInstaller 打包、无需安装即可运行的独立构建，涵盖 Linux（x86_64、arm64 及 Python 3.13 版本）、macOS（x86_64 和 arm64）和 Windows；所审阅的 master 分支提交在该标签之后仅同步了规则子模块。安装指南指出 Linux 构建需要 GLIBC 2.26+，macOS 首次运行时须在 Gatekeeper 中批准该程序。flare-capa PyPI 软件包（10.0.0，需 Python 3.10+）不含默认规则和库识别签名，需通过 -r 和 -s 参数指定。","输入由使用者提供：PE、ELF 或 .NET 模块、原始 shellcode、CAPE、DRAKVUF 或 VMRay 报告、BinExport2 文件或已保存的 capa 特征文件。IDA Pro explorer 插件需要 IDA 7.4+ 和 Python 3.10+（已测试至 IDA 9.0）；Ghidra 后端和 explorer 脚本需要通过 PyGhidra 启动的 Ghidra 12.0+；Binary Ninja 后端需使用另行安装的 Binary Ninja。","局限性文档指出，加壳或混淆的程序、安装程序以及 AutoIt 等打包程序会导致结果有误或不完整，分散在包装函数或子函数中的功能也无法匹配；当规则检测到加壳或安装程序时，capa 会发出警告。匹配结果是基于规则的功能迹象，并非已确认的行为。","采用 Apache-2.0 许可，独立的 capa-rules 仓库同样如此。v10.0.0 修复了通过特制 vivisect .viv 工作区文件执行代码的问题，该问题影响 v9.4.0 及更早版本；现在仅在设置 CAPA_LOAD_VIV_WORKSPACE=1 时才会加载已有工作区。递归克隆源码还会拉取测试文件子模块，安装指南警告其中包含大量恶意软件样本。"],"targets":["binary"],"url":"https://github.com/mandiant/capa","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/ruffle-rs/ruffle/blob/ea24ef78aa6c898e8170c1a603a496dd1131bd6c/CONTRIBUTING.md#L30-L36","https://github.com/ruffle-rs/ruffle/blob/ea24ef78aa6c898e8170c1a603a496dd1131bd6c/CONTRIBUTING.md#L167-L196","https://github.com/ruffle-rs/ruffle/blob/ea24ef78aa6c898e8170c1a603a496dd1131bd6c/tests/README.md","https://github.com/ruffle-rs/ruffle/blob/ea24ef78aa6c898e8170c1a603a496dd1131bd6c/web/README.md#L33-L82","https://github.com/ruffle-rs/ruffle/blob/ea24ef78aa6c898e8170c1a603a496dd1131bd6c/core/src/avm2/globals/README.md#L111-L127","https://github.com/ruffle-rs/ruffle/blob/ea24ef78aa6c898e8170c1a603a496dd1131bd6c/Cargo.toml","https://github.com/ruffle-rs/ruffle/blob/ea24ef78aa6c898e8170c1a603a496dd1131bd6c/LICENSE.md","https://github.com/ruffle-rs/ruffle/releases/tag/v0.7.1","https://ruffle.rs/compatibility"],"category":"reconstruction-cases","description_en":"Reimplements Adobe Flash Player in Rust so that SWF content, from ActionScript 1/2 (AVM1) to ActionScript 3 (AVM2), runs in a native desktop player or in browsers through WebAssembly, as a self-hosted script or a browser extension. Its contributor guide says behavior comes from observing Flash Player's output or from license-compatible sources such as Adobe's open avmplus code, and forbids decompiling Flash Player, Flash Professional or Animate. Regression tests run contributor-made SWFs and compare their trace output, and optionally rendered images, with captures from the official debug Flash Player.","description_zh":"用 Rust 重新实现 Adobe Flash Player，使从 ActionScript 1/2（AVM1）到 ActionScript 3（AVM2）的 SWF 内容能在原生桌面播放器中运行，或通过 WebAssembly 以自托管脚本或浏览器扩展的形式在浏览器中运行。其贡献指南称，行为依据对 Flash Player 输出的观察或 Adobe 开源的 avmplus 等许可兼容来源确定，并禁止反编译 Flash Player、Flash Professional 或 Animate。回归测试运行贡献者自制的 SWF，将其 trace 输出（以及可选的渲染图像）与官方调试版 Flash Player 的记录进行比较。","entry_url":"https://awesomerea.org/resources/ruffle-flash-player-case/","entry_url_zh":"https://awesomerea.org/zh/resources/ruffle-flash-player-case/","evidence_url":"https://github.com/ruffle-rs/ruffle/blob/ea24ef78aa6c898e8170c1a603a496dd1131bd6c/README.md","group":"cases","id":"ruffle-flash-player-case","json_url":"https://awesomerea.org/resources/ruffle-flash-player-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/ruffle-flash-player-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ruffle-flash-player-case/index.md","name":"Ruffle: a Rust reimplementation of Adobe Flash Player","name_zh":"Ruffle：用 Rust 重新实现的 Adobe Flash Player","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The README says Ruffle supports ActionScript 1, 2 and 3 pretty well but is not finished. At review, the website's compatibility page reported 99% of the AVM1 language and 82% of its API, and 90% of the AVM2 language and 82% of its API, and acknowledged graphical inaccuracies in AVM1 content. Release at review: v0.7.1, published 2026-10-07 and described as equivalent to v0.7.0 apart from extension-publishing fixes; nightly builds continue, and the reviewed master commit is 73 commits ahead.","Users supply the SWF files or the pages that embed them. Release assets cover Linux (x86_64, i686 and aarch64), macOS universal and Windows (x86 and x86_64) desktop builds, self-hosted web and browser-extension packages and a reproducible source archive; the README also points to Firefox and Chrome extensions, Flathub, npm and a separate Android project.","Building needs the latest stable Rust (the workspace uses the 2024 edition) and Java on PATH to compile the ActionScript 3 built-in classes; Linux builds need ALSA, udev, fontconfig, FreeType and OpenSSL development packages. Web builds also need the wasm32-unknown-unknown target, Node.js with npm 7+, wasm-bindgen-cli 0.2.127 and Binaryen. Bundled scanner and exporter tools bulk-parse SWFs and render PNG screenshots.","Contributors are asked to commit each test SWF with its source, and expected trace output and screenshots come from running the debug Flash Player; known failures can be marked in a test's test.toml. These tests check Ruffle's behavior on authored test files.","Dual-licensed MIT or Apache-2.0 (GitHub reports NOASSERTION); LICENSE.md lists third-party dependency licenses, and the repository includes asc.jar from the Flex SDK to compile its ActionScript classes. SWF content keeps its own rights."],"requirements_zh":["README 称 Ruffle 对 ActionScript 1、2、3 的支持已相当不错，但远未完成。审阅时，网站的兼容性页面报告 AVM1 语言支持 99%、API 82%，AVM2 语言支持 90%、API 82%，并承认 AVM1 内容存在一些图形不准确之处。审阅时的版本为 v0.7.1，发布于 2026-10-07，说明称除修复扩展发布问题外与 v0.7.0 相同；夜间构建仍在持续，所审阅的 master 分支提交比该版本多 73 个提交。","使用者需自行提供 SWF 文件或嵌入它们的网页。发布资源包括 Linux（x86_64、i686 和 aarch64）、macOS 通用版和 Windows（x86 与 x86_64）桌面构建、自托管网页包和浏览器扩展包，以及可复现的源码归档；README 还提到 Firefox 和 Chrome 扩展、Flathub、npm，以及独立的 Android 项目。","构建需要最新稳定版 Rust（工作区使用 2024 edition），并需在 PATH 中提供 Java 以编译 ActionScript 3 内置类；Linux 构建需要 ALSA、udev、fontconfig、FreeType 和 OpenSSL 开发包。网页构建还需要 wasm32-unknown-unknown 目标、Node.js 与 npm 7+、wasm-bindgen-cli 0.2.127 以及 Binaryen。附带的 scanner 和 exporter 工具可批量解析 SWF 并生成 PNG 截图。","贡献者被要求将每个测试 SWF 与其源文件一同提交，预期的 trace 输出和截图来自运行调试版 Flash Player 的结果；已知失败可在测试的 test.toml 中标注。这些测试检验 Ruffle 在自制测试文件上的行为。","采用 MIT 或 Apache-2.0 双许可（GitHub 显示为 NOASSERTION）；LICENSE.md 列出第三方依赖的许可证，仓库还附带来自 Flex SDK 的 asc.jar，用于编译其 ActionScript 类。SWF 内容保留各自权利。"],"targets":["game","website"],"url":"https://github.com/ruffle-rs/ruffle","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/sp00nznet/ps3recomp/blob/39a36296511c445707adabcd312f0b740cfbd694/docs/GETTING_STARTED.md","https://github.com/sp00nznet/ps3recomp/blob/39a36296511c445707adabcd312f0b740cfbd694/docs/BUILDING.md","https://github.com/sp00nznet/ps3recomp/blob/39a36296511c445707adabcd312f0b740cfbd694/docs/REGRESSION_GATE.md","https://github.com/sp00nznet/ps3recomp/blob/39a36296511c445707adabcd312f0b740cfbd694/docs/FIRMWARE_LLE.md","https://github.com/sp00nznet/ps3recomp/blob/39a36296511c445707adabcd312f0b740cfbd694/tools/test_ppu_lift.py","https://github.com/sp00nznet/ps3recomp/blob/39a36296511c445707adabcd312f0b740cfbd694/LICENSE","https://github.com/sp00nznet/ps3recomp/blob/39a36296511c445707adabcd312f0b740cfbd694/third_party/at3_standalone/README.txt","https://github.com/sp00nznet/ps3recomp/releases/tag/v0.15.0"],"category":"game-analysis","description_en":"Toolkit and runtime for statically recompiling PlayStation 3 games into native executables. Python tools parse PS3 ELF and PRX files, find functions and firmware imports, and lift PPU and SPU code to C/C++; a project template links that code with a C/C++ runtime providing LV2 system calls, high-level emulation of the system libraries and RSX graphics translation to Direct3D 12, Metal or Vulkan.","description_zh":"用于将 PlayStation 3 游戏静态重编译为原生可执行文件的工具包与运行时。Python 工具解析 PS3 ELF 和 PRX 文件，识别函数与固件导入，并将 PPU 和 SPU 代码提升为 C/C++；项目模板再将这些代码与 C/C++ 运行时链接，由运行时提供 LV2 系统调用、系统库的高层仿真，以及转换到 Direct3D 12、Metal 或 Vulkan 的 RSX 图形层。","entry_url":"https://awesomerea.org/resources/ps3recomp/","entry_url_zh":"https://awesomerea.org/zh/resources/ps3recomp/","evidence_url":"https://github.com/sp00nznet/ps3recomp/blob/39a36296511c445707adabcd312f0b740cfbd694/README.md","group":"tools","id":"ps3recomp","json_url":"https://awesomerea.org/resources/ps3recomp/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ps3recomp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ps3recomp/index.md","name":"ps3recomp","name_zh":"ps3recomp PS3 静态重编译工具包","record_type":"resource","relationship":"foundation","requirements":["The README for v0.15.0 (released 2026-10-16; the reviewed master commit is two commits ahead) reports about 93 complete and 5 partial high-level-emulated system-library modules, with media decoding and SPURS still partial. Only Windows with Direct3D 12 runs a recompiled game from this tree; macOS and Linux build the runtime and pass its tests, but no title has yet booted to gameplay there.","Users supply a decrypted ELF of the game executable (EBOOT.BIN) from their own legally obtained copy; the repository ships no keys, firmware or game files and does not decrypt retail executables. The optional firmware low-level-emulation path also needs decrypted firmware modules that the user provides. Each game is ported in its own project: the README lists The Simpsons Arcade Game and Tornado Outbreak as in game in separate repositories.","Building from source needs Python (3.10+ in the README, 3.9+ in the build guides), CMake 3.20+ and a C17/C++20 compiler (MSVC or clang-cl, GCC 12+ or Clang 15+). SDL2 is required off Windows, and FFmpeg is optional and loaded at run time for video and ATRAC3plus decoding. Releases ship prebuilt SDK bundles with the runtime library, headers and Python pipeline for Windows x64, macOS arm64 and Linux x64. Last commit at review: 2026-10-16.","CI builds the runtime and runs the lifter test suites and C unit tests on Windows, macOS arm64 and Linux, plus the Vulkan backend on lavapipe; the README states that a passing check does not mean a game ran. A lifter conformance suite checks the C emitted for single instructions against expectations derived from the PowerISA, and a regression gate compares five ports with recorded milestone logs before shared-runtime changes land.","MIT-licensed; the vendored ATRAC3/ATRAC3plus decoder taken from PPSSPP stays LGPL-2.1-or-later. The README states that the project contains no Sony code, firmware, keys or copyrighted material and that its system-library modules are written from documented behavior, with RPCS3 used as a behavioral reference rather than a code source."],"requirements_zh":["v0.15.0（发布于 2026-10-16；所审阅的 master 提交比它多两个提交）的 README 报告，系统库的高层仿真模块约 93 个已完成、5 个部分完成，其中媒体解码和 SPURS 仍不完整。目前只有 Windows 上的 Direct3D 12 能在本仓库中运行重编译后的游戏；macOS 和 Linux 能构建运行时并通过测试，但尚无游戏在这两个平台上从本仓库启动到可游玩状态。","使用者需从自己合法取得的游戏副本中提供已解密的游戏可执行文件（EBOOT.BIN）ELF；仓库不附带任何密钥、固件或游戏文件，也不解密零售版可执行文件。可选的固件低层仿真路径还需要使用者自行提供已解密的固件模块。每款游戏都在独立项目中移植：README 列出 The Simpsons Arcade Game 和 Tornado Outbreak 已进入游戏画面，它们位于单独的仓库。","从源码构建需要 Python（README 写 3.10+，构建指南写 3.9+）、CMake 3.20+，以及支持 C17/C++20 的编译器（MSVC 或 clang-cl、GCC 12+ 或 Clang 15+）。非 Windows 平台必须安装 SDL2；FFmpeg 为可选项，运行时加载，用于视频和 ATRAC3plus 解码。发布版本为 Windows x64、macOS arm64 和 Linux x64 提供预构建的 SDK 包，内含运行时库、头文件和 Python 流水线。审阅时最后一次提交为 2026-10-16。","CI 在 Windows、macOS arm64 和 Linux 上构建运行时并运行提升器测试套件与 C 单元测试，另在 lavapipe 上测试 Vulkan 后端；README 说明检查通过并不代表游戏能够运行。提升器一致性测试将单条指令生成的 C 代码与依据 PowerISA 推导的预期结果比对，回归门禁则在共享运行时变更合入前，将五个移植项目与记录下来的里程碑日志进行比较。","采用 MIT 许可证；内置的 ATRAC3/ATRAC3plus 解码器取自 PPSSPP，保留 LGPL-2.1-or-later 许可。README 声明项目不含任何 Sony 代码、固件、密钥或受版权保护的材料，系统库模块依据公开记录的行为编写，RPCS3 仅作为行为参考而非代码来源。"],"targets":["binary","game"],"url":"https://github.com/sp00nznet/ps3recomp","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/AITYunivers/NebulaFD/blob/a24d4d1da78c35412413faac750e07ff7d603a8a/README.md","https://github.com/AITYunivers/NebulaFD/blob/a24d4d1da78c35412413faac750e07ff7d603a8a/Nebula.Tools/GameDumper/MFAParser.cs","https://github.com/AITYunivers/NebulaFD/blob/a24d4d1da78c35412413faac750e07ff7d603a8a/Nebula.Tools/GameDumper/AssetDump.cs","https://github.com/AITYunivers/NebulaFD/blob/a24d4d1da78c35412413faac750e07ff7d603a8a/Nebula.Tools/GameDumper/GameDumper.csproj","https://github.com/AITYunivers/NebulaFD/blob/a24d4d1da78c35412413faac750e07ff7d603a8a/Nebula.CLI/Nebula.CLI.csproj","https://github.com/AITYunivers/NebulaFD/blob/a24d4d1da78c35412413faac750e07ff7d603a8a/.github/workflows/main.yml","https://github.com/AITYunivers/NebulaFD/releases/tag/september_2026_update"],"category":"game-analysis","description_en":"Work-in-progress decompiler for games made with Clickteam Fusion 2.5, with fixes for older Multimedia Fusion 1.5 files. Its .NET console app reads Windows executables, Android APKs, iOS IPAs, CCN data files and existing MFA projects, then runs plug-in tools: an MFA Parser that writes the game back out as an editable Fusion project, and an Asset Dumper for images, sounds, music, fonts, icons, shaders and packed files.","description_zh":"面向 Clickteam Fusion 2.5 游戏的反编译器，仍在开发中，也针对更早的 Multimedia Fusion 1.5 文件做了修复。其 .NET 控制台程序可读取 Windows 可执行文件、Android APK、iOS IPA、CCN 数据文件以及现有的 MFA 项目，再运行插件式工具：MFA Parser 将游戏重新写成可编辑的 Fusion 项目，Asset Dumper 则导出图像、音效、音乐、字体、图标、着色器和打包文件。","entry_url":"https://awesomerea.org/resources/nebulafd/","entry_url_zh":"https://awesomerea.org/zh/resources/nebulafd/","evidence_url":"https://github.com/AITYunivers/NebulaFD/blob/a24d4d1da78c35412413faac750e07ff7d603a8a/Nebula.CLI/Program.cs","group":"tools","id":"nebulafd","json_url":"https://awesomerea.org/resources/nebulafd/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/nebulafd/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/nebulafd/index.md","name":"Nebula (NebulaFD)","name_zh":"Nebula（NebulaFD）Clickteam Fusion 反编译器","record_type":"resource","relationship":"foundation","requirements":["The README is a placeholder that calls itself a work in progress and documents no usage, build steps or supported formats. The latest release, september_2026_update (2026-09-28, the reviewed commit), lists fixes for Multimedia Fusion 1.5 files and Fusion 2.5 build 296 events plus experimental Android support, and notes that console-exporter detection breaks with custom exporters.","Users supply a compiled Fusion game: the console asks for a file path and picks a reader from the extension (EXE, APK, IPA, MFA, ZIP, ANM, TMP or GAM, with other files read as CCN data) or from the user's choice. The MFA Parser and Asset Dumper load as DLLs from the program's Tools folder and write to a Dumps folder.","Release archives require the .NET 6.0 Desktop Runtime, and the projects target net6.0. The only GitHub workflow compiles the solution with MSBuild on Windows and uploads the build as an artifact, and the dumper's post-build step uses the Windows robocopy command; no other platform is documented. The repository contains no test project.","There is no license file and GitHub detects none, so reuse terms are not stated. The README credits Kostya for the image bank."],"requirements_zh":["README 只是一个占位页面，自称仍在编写中，没有说明用法、构建步骤或支持的格式。最新发布版本 september_2026_update（2026-09-28，即所审阅的提交）列出了针对 Multimedia Fusion 1.5 文件和 Fusion 2.5 build 296 事件的修复以及实验性的 Android 支持，并说明主机导出器的检测在自定义导出器上会失效。","使用者需提供已编译的 Fusion 游戏：控制台会询问文件路径，再根据扩展名（EXE、APK、IPA、MFA、ZIP、ANM、TMP 或 GAM，其他文件按 CCN 数据读取）或使用者的选择确定读取器。MFA Parser 和 Asset Dumper 以 DLL 形式从程序的 Tools 文件夹加载，输出写入 Dumps 文件夹。","发布压缩包需要 .NET 6.0 Desktop Runtime，各项目的目标框架为 net6.0。仓库唯一的 GitHub 工作流在 Windows 上用 MSBuild 编译解决方案并把构建结果上传为制品，导出工具的生成后步骤使用 Windows 的 robocopy 命令；未说明支持其他平台。仓库中没有测试项目。","仓库没有许可证文件，GitHub 也未检测到许可证，因此未说明复用条款。README 致谢 Kostya 开发了图像库。"],"targets":["game"],"url":"https://github.com/AITYunivers/NebulaFD","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/gdorgian/ScooterLink/blob/a089f6210e863d56b590ed4625b92f886ff6a097/README.md","https://github.com/gdorgian/ScooterLink/blob/a089f6210e863d56b590ed4625b92f886ff6a097/App/Sources/SABProtocol.swift","https://github.com/gdorgian/ScooterLink/blob/a089f6210e863d56b590ed4625b92f886ff6a097/App/Sources/SABCrypto.swift","https://github.com/gdorgian/ScooterLink/blob/a089f6210e863d56b590ed4625b92f886ff6a097/App/Sources/SABClient.swift","https://github.com/gdorgian/ScooterLink/blob/a089f6210e863d56b590ed4625b92f886ff6a097/App/Sources/ButtonActions.swift","https://github.com/gdorgian/ScooterLink/blob/a089f6210e863d56b590ed4625b92f886ff6a097/App/Tests/main.swift","https://github.com/gdorgian/ScooterLink/blob/a089f6210e863d56b590ed4625b92f886ff6a097/App/project.yml","https://github.com/gdorgian/ScooterLink/blob/a089f6210e863d56b590ed4625b92f886ff6a097/LICENSE"],"category":"reconstruction-cases","description_en":"Replaces Honda RoadSync’s Apple Music-only media control with an iOS app that pairs with a Honda PCX 2025 TFT dash over Bluetooth Low Energy and turns handlebar presses into system-wide commands for any player. The author documents the dash’s BLE services, key exchange, button registration and event bytes, reportedly worked out from the official Android app and logged traffic. Results are author-reported on one PCX125, and the protocol notes separate confirmed from unverified parts.","description_zh":"以一个 iOS 应用替代 Honda RoadSync 仅支持 Apple Music 的媒体控制：通过低功耗蓝牙与 Honda PCX 2025 的 TFT 仪表配对，把车把按键转换为对任意播放器生效的系统级命令。作者记录了仪表的 BLE 服务、密钥交换、按键注册与事件字节，据称依据官方 Android 应用及通信日志推断得出。结果为作者在一台 PCX125 上的报告，协议说明区分了已确认与未验证的部分。","entry_url":"https://awesomerea.org/resources/scooterlink-honda-roadsync-case/","entry_url_zh":"https://awesomerea.org/zh/resources/scooterlink-honda-roadsync-case/","evidence_url":"https://github.com/gdorgian/ScooterLink/blob/a089f6210e863d56b590ed4625b92f886ff6a097/docs/PROTOCOL.md","group":"cases","id":"scooterlink-honda-roadsync-case","json_url":"https://awesomerea.org/resources/scooterlink-honda-roadsync-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/scooterlink-honda-roadsync-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/scooterlink-honda-roadsync-case/index.md","name":"ScooterLink: reconstructing Honda RoadSync’s handlebar-button protocol","name_zh":"ScooterLink：重建 Honda RoadSync 车把按键协议","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed commit follows the v1.2 release and changes only one README link. It targets a Honda PCX 2025 with the TFT dash and RoadSync support; README reports testing on a PCX125 2025 and calls other RoadSync models untested. Select and Back map to play/pause and Next/Previous to track changes, and the app reconnects at ignition and switches the dash to phone mode. Now-playing text, speed and volume control are unavailable, and no Android version exists.","No Honda software is needed at runtime, but RoadSync’s phone pairing must first be deleted on the dash, which keeps one phone key. The protocol was reportedly derived from the official RoadSync Android app and logged traffic; source comments cite decompiled Android app version 26.8.10 and a findings file, but the app, decompiled code, captures and that file are not in the repository.","Building needs a Mac with Xcode 16+, XcodeGen and the user’s own signing team and bundle ID; the app targets iOS 17, and the prebuilt v1.2 IPA must be sideloaded with a personal or developer Apple ID. Controlling other apps’ playback relies on Apple’s private MediaRemote framework, which README says rules out App Store distribution.","docs/PROTOCOL.md marks key exchange, per-connection validation, button registration, the phone-screen request and button events as confirmed on a real PCX125 2025, and dash drawing as unverified. A Mac-run Swift self-test checks CRC values, a simulated key exchange, validation parsing and registration and screen byte layouts. README reports that experimental colour slots and a drawn screen left the dash refusing phone mode until re-pairing, keeps that code switched off and warns never to write to the firmware-update service.","MIT covers the project code. README says the project is independent of Honda and contains no Honda code or files, only original code and a description of the Bluetooth messages written for interoperability; Honda, PCX and RoadSync remain trademarks of their owners. The author’s post credits Claude with the reverse engineering."],"requirements_zh":["所审阅的提交位于 v1.2 发布之后，只改动了 README 中的一个链接。项目面向配备 TFT 仪表并支持 RoadSync 的 Honda PCX 2025；README 报告在一台 PCX125 2025 上测试，其他支持 RoadSync 的车型被标为未测试。Select 与 Back 键对应播放／暂停，Next／Previous 对应切换曲目，应用会在点火时自动重连并把仪表切换到手机模式。无法显示正在播放的曲目、车速或调节音量，也没有 Android 版本。","运行时无需任何 Honda 软件，但须先在仪表上删除 RoadSync 的手机配对，因为仪表只保存一部手机的密钥。据称协议是依据官方 RoadSync Android 应用及通信日志推断得出；源码注释提到反编译的 Android 应用 26.8.10 版本及一份调查记录文件，但该应用、反编译代码、抓包记录和这份文件均未收录在仓库中。","构建需要一台装有 Xcode 16+ 与 XcodeGen 的 Mac，以及使用者自己的签名团队和 Bundle ID；应用面向 iOS 17，预构建的 v1.2 IPA 须借助个人或开发者 Apple ID 侧载安装。控制其他应用的播放依赖 Apple 的私有 MediaRemote 框架，README 称因此无法上架 App Store。","docs/PROTOCOL.md 将密钥交换、每次连接的验证、按键注册、手机界面请求和按键事件标为已在一台实际 PCX125 2025 上确认，仪表绘制则标为未验证。一项在 Mac 上运行的 Swift 自测检查 CRC 值、模拟的密钥交换、验证应答解析以及注册与界面的字节布局。README 报告，实验性的颜色槽位和自绘界面曾使仪表在重新配对前拒绝进入手机模式，因此相关代码保持关闭，并警告切勿写入固件更新服务。","项目代码采用 MIT 许可。README 称项目独立于 Honda，不含任何 Honda 代码或文件，只有原创代码以及为互操作编写的蓝牙消息说明；Honda、PCX 与 RoadSync 仍为其权利人的商标。作者帖子称逆向工作由 Claude 完成。"],"targets":["app","protocol"],"url":"https://github.com/gdorgian/ScooterLink","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/buzzer-re/Rikugan/blob/a2ba6691baa0a7ace3bce9fe834a4f6f7610b77d/README.md","https://github.com/buzzer-re/Rikugan/blob/a2ba6691baa0a7ace3bce9fe834a4f6f7610b77d/LICENSE","https://github.com/wangyu-ovo/CREBench/blob/9fc4016538a0bab8c230732a9f788a61ed43addf/README.md"],"category":"learning","description_en":"Matthieu Breuil’s Synacktiv article explains tool-calling and code-executing agent designs and describes Frontkick, a CodeAct agent that runs generated Python inside Binary Ninja. It compares Frontkick with the open-source Rikugan plugin on two CREBench cryptographic binary tasks, then attributes most of Frontkick’s advantage to a prompt that listed installed Python libraries rather than to its architecture. It is a small evaluation write-up with per-run results, not a released tool or a general benchmark finding.","description_zh":"Matthieu Breuil 在 Synacktiv 发表的文章讲解了调用预定义工具与执行生成代码两类智能体设计，并介绍在 Binary Ninja 内运行生成的 Python 代码的 CodeAct 智能体 Frontkick。文章在 CREBench 的两个密码二进制任务上将 Frontkick 与开源插件 Rikugan 对比，随后指出 Frontkick 的优势主要来自提示词中列出已安装 Python 库的做法，而非其架构本身。这是一篇附逐次运行结果的小规模评估文章，不是已发布的工具，也不是普遍性的基准结论。","entry_url":"https://awesomerea.org/resources/frontkick-rikugan-crebench-comparison/","entry_url_zh":"https://awesomerea.org/zh/resources/frontkick-rikugan-crebench-comparison/","evidence_url":"https://www.synacktiv.com/en/publications/ufc-666-frontkick-vs-rikugan","group":"learn","id":"frontkick-rikugan-crebench-comparison","json_url":"https://awesomerea.org/resources/frontkick-rikugan-crebench-comparison/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/frontkick-rikugan-crebench-comparison/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/frontkick-rikugan-crebench-comparison/index.md","name":"Frontkick vs Rikugan: a CREBench agent comparison","name_zh":"Frontkick 与 Rikugan：基于 CREBench 的智能体对比","record_type":"resource","relationship":"learning","requirements":["The article on Synacktiv’s publications site is dated 13/10/2026. It describes Frontkick as a CodeAct agent that executes generated Python against Binary Ninja’s API, with a recipe-retrieval corpus, a single-level subagent and truncation of older turns; no download, repository or license for Frontkick is linked. Rikugan is an MIT-licensed community agent plugin for IDA Pro and Binary Ninja built on schema-validated tools, while Vector 35’s closed-source Sidekick was excluded because its internals are not accessible.","The comparison used Claude Sonnet 5.5 with CREBench’s AES-128-CBC and ChaCha20 cases in the hardcode_plain/O0 setting, supplied as stripped binaries, with four runs per case for each agent and a 1M-token budget. Each run had to identify the algorithm and key and reimplement decryption to recover the flag. The article does not state the Binary Ninja, Rikugan or Frontkick versions or publish the run transcripts it inspected.","In the published run table Frontkick fully solves six of eight runs and Rikugan none; the means are about 86 versus 31 out of 100 and about 0.60M versus 0.95M tokens, which the article summarizes as roughly half the tokens and nearly three times the score. On AES-128-CBC, Rikugan repeatedly tried a Python crypto package that was not installed and fell back to a manual implementation, whereas Frontkick’s prompt listed the installed libraries. The author therefore calls the outcome a draw driven by prompt design, and proposes a rerun with aligned prompts.","Two tasks, one model and eight runs per agent cannot support general conclusions about either agent, about tool-calling versus code-executing designs, or about other CREBench settings."],"requirements_zh":["这篇发表于 Synacktiv 出版物页面的文章标注日期为 2026-10-13。文章介绍 Frontkick 是一个 CodeAct 智能体，针对 Binary Ninja 的 API 执行生成的 Python 代码，配有脚本示例检索语料、单层子智能体以及对较早轮次的截断机制；文中没有给出 Frontkick 的下载、仓库或许可证。Rikugan 是采用 MIT 许可、面向 IDA Pro 与 Binary Ninja 的社区智能体插件，基于经过模式校验的工具；Vector 35 的闭源 Sidekick 因无法了解其内部机制而未纳入对比。","对比使用 Claude Sonnet 5.5，选取 CREBench 中 hardcode_plain/O0 设置下的 AES-128-CBC 与 ChaCha20 两个用例，以去除符号的二进制文件形式提供；每个智能体每个用例运行四次，token 预算为 100 万。每次运行都需识别算法和密钥，并重新实现解密流程以取得 flag。文章未说明 Binary Ninja、Rikugan 或 Frontkick 的版本，也未公开其查看过的运行记录。","按文中公布的逐次运行表，Frontkick 在八次运行中有六次完全解出，Rikugan 一次也没有；两者平均得分约为 86 对 31（满分 100），平均 token 用量约为 60 万对 95 万，文章将其概括为 token 约减半、成功得分接近三倍。在 AES-128-CBC 上，Rikugan 反复尝试调用未安装的 Python 密码库，失败后改为手工实现算法，而 Frontkick 的提示词列出了已安装的库。作者因此认为结果是由提示词设计造成的平局，并提议在对齐提示词后重新测试。","两个任务、一个模型、每个智能体八次运行，不足以得出关于任一智能体、关于工具调用与代码执行两类设计，或关于 CREBench 其他设置的普遍结论。"],"targets":["binary"],"url":"https://www.synacktiv.com/en/publications/ufc-666-frontkick-vs-rikugan","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/GaryOderNichts/OpenDMCUFirm/blob/9e6747f71cb91f2c182869b4df1091f6d5d8218d/Makefile","https://github.com/GaryOderNichts/OpenDMCUFirm/blob/9e6747f71cb91f2c182869b4df1091f6d5d8218d/Dockerfile","https://github.com/GaryOderNichts/OpenDMCUFirm/blob/9e6747f71cb91f2c182869b4df1091f6d5d8218d/hexconv.py","https://github.com/GaryOderNichts/OpenDMCUFirm/blob/9e6747f71cb91f2c182869b4df1091f6d5d8218d/link.ld","https://github.com/GaryOderNichts/OpenDMCUFirm/blob/9e6747f71cb91f2c182869b4df1091f6d5d8218d/source/dmcu.c","https://github.com/GaryOderNichts/OpenDMCUFirm/blob/9e6747f71cb91f2c182869b4df1091f6d5d8218d/.github/workflows/build.yml","https://github.com/GaryOderNichts/OpenDMCUFirm/commit/58ab01fe071f0c6df8798b8b178f8160d1c3cacf","https://github.com/GaryOderNichts/evwii/blob/978b0068e003a15cd85b2141c5d5248369ed3d87/README.md"],"category":"reconstruction-cases","description_en":"Reimplements in C the firmware of the Wii U’s DMCU, the M68HC11-compatible display microcontroller in its AMD graphics controller, which in Wii mode reads the Video Interface state and configures display output, deinterlacing, scaling and overscan. The README says the work is based on reverse engineering of the original firmware but is not a byte-for-byte matching decompilation, and calls it a work in progress. The built image replaces the stock firmware in Wii mode when loaded through the evWii plugin.","description_zh":"用 C 语言重新实现 Wii U 的 DMCU 固件。DMCU 是其 AMD 图形控制器中兼容 M68HC11 的显示微控制器，在 Wii 模式下读取视频接口（VI）状态，并配置显示输出、去隔行、缩放与过扫描。README 称这项工作基于对原固件的逆向工程，但并非逐字节一致的反编译，并说明项目仍在开发中。构建出的镜像经 evWii 插件载入后，在 Wii 模式下替代原厂固件。","entry_url":"https://awesomerea.org/resources/opendmcufirm-wii-u-dmcu-firmware-case/","entry_url_zh":"https://awesomerea.org/zh/resources/opendmcufirm-wii-u-dmcu-firmware-case/","evidence_url":"https://github.com/GaryOderNichts/OpenDMCUFirm/blob/9e6747f71cb91f2c182869b4df1091f6d5d8218d/README.md","group":"cases","id":"opendmcufirm-wii-u-dmcu-firmware-case","json_url":"https://awesomerea.org/resources/opendmcufirm-wii-u-dmcu-firmware-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/opendmcufirm-wii-u-dmcu-firmware-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/opendmcufirm-wii-u-dmcu-firmware-case/index.md","name":"OpenDMCUFirm: a reimplemented Wii U DMCU display firmware","name_zh":"OpenDMCUFirm：重新实现的 Wii U DMCU 显示固件","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","prerequisites","testing","license"],"requirements":["The reviewed main commit has no releases or tags. The README describes a work-in-progress reimplementation with potential issues expected; recent commits name registers and state fields, and one reports a function fully matched after a missing variable caused problems in 240p titles. link.ld warns that Nintendo’s nn_cmpt writes values into the middle of the DMCU’s ERAM and can overwrite the code.","The build uses only the project’s C sources and needs no original firmware. Running the result needs a Wii U with the Aroma plugin environment and evWii: dmcu.d.hex goes in the SD card’s wiiu folder and is loaded with evWii’s “Load DMCU Firmware from SD Card” option for Wii mode.","The compiler is GCC 3.3.6-m68hc1x-20060122 from the GNU 68HC11/12 packages. The Dockerfile sets it up on Ubuntu 24.04 from the checksum-verified Windows installer run under Wine, and a prebuilt garyodernichts/dmcubuilder image is offered; Python 3 runs hexconv.py to turn the S19 output into the DMCU hex format.","CI only builds dmcu.d.hex in that container and uploads it as an artifact. The reviewed files contain no test suite, hardware test log or comparison with the stock firmware’s behavior.","The repository has no license file and GitHub detects none; project source files state only that they are part of OpenDMCUFirm. The bundled 68HC11 and stdint headers keep their FSF GPL and BSD notices, evWii is GPL-2.0, and the original firmware keeps its own rights."],"requirements_zh":["所审阅的 main 提交没有发行版或标签。README 称这是仍在开发中的重新实现，预计会有问题；近期提交为寄存器和状态字段命名，其中一次提交称某个函数已完全一致，此前缺失的一个变量曾在 240p 游戏中引发问题。link.ld 警告 Nintendo 的 nn_cmpt 会直接向 DMCU 的 ERAM 中段写入数值，可能覆盖代码。","构建只使用项目自己的 C 源码，不需要原始固件。运行需要装有 Aroma 插件环境和 evWii 的 Wii U：将 dmcu.d.hex 放入 SD 卡的 wiiu 文件夹，再用 evWii 的“Load DMCU Firmware from SD Card”选项在 Wii 模式下载入。","编译器为 GNU 68HC11/12 软件包中的 GCC 3.3.6-m68hc1x-20060122。Dockerfile 在 Ubuntu 24.04 上用经校验和核对的 Windows 安装程序在 Wine 下配置该工具链，也提供预构建的 garyodernichts/dmcubuilder 镜像；再由 Python 3 运行 hexconv.py，将 S19 输出转换为 DMCU 的 hex 格式。","CI 只在该容器中构建 dmcu.d.hex 并作为构件上传。所审文件中没有测试套件、硬件测试记录，也没有与原厂固件行为的比较。","仓库没有许可证文件，GitHub 也未识别出许可证；项目源文件只注明属于 OpenDMCUFirm。随附的 68HC11 与 stdint 头文件保留各自的 FSF GPL 和 BSD 声明，evWii 采用 GPL-2.0，原始固件仍受其自身权利约束。"],"targets":["firmware"],"url":"https://github.com/GaryOderNichts/OpenDMCUFirm","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/Nilbong/COD4-Rewrite/blob/bd03eb07f2b2ec84dd33946bfc2b8163fc49c480/Cargo.toml","https://github.com/Nilbong/COD4-Rewrite/blob/bd03eb07f2b2ec84dd33946bfc2b8163fc49c480/crates/game/Cargo.toml","https://github.com/Nilbong/COD4-Rewrite/blob/bd03eb07f2b2ec84dd33946bfc2b8163fc49c480/crates/game/src/main.rs","https://github.com/Nilbong/COD4-Rewrite/blob/bd03eb07f2b2ec84dd33946bfc2b8163fc49c480/crates/game/src/netplay/mod.rs","https://github.com/Nilbong/COD4-Rewrite/blob/bd03eb07f2b2ec84dd33946bfc2b8163fc49c480/crates/multiplayer/README.md","https://github.com/Nilbong/COD4-Rewrite/blob/bd03eb07f2b2ec84dd33946bfc2b8163fc49c480/crates/multiplayer/tests/relay_roundtrip.rs"],"category":"reconstruction-cases","description_en":"A Rust/Bevy reconstruction of Call of Duty 4 multiplayer systems, using assets from a local game installation. Source covers menus, local bots, movement and combat, and connects custom relay-based netplay to the game.","description_zh":"以 Rust/Bevy 重建《使命召唤4》的多人游戏系统，使用本地游戏安装中的素材。源码包含菜单、本地机器人、移动和战斗，并将自定义中继联机实现接入游戏。","entry_url":"https://awesomerea.org/resources/cod4-rewrite-reconstruction-case/","entry_url_zh":"https://awesomerea.org/zh/resources/cod4-rewrite-reconstruction-case/","evidence_url":"https://github.com/Nilbong/COD4-Rewrite/blob/bd03eb07f2b2ec84dd33946bfc2b8163fc49c480/README.md","group":"cases","id":"cod4-rewrite-reconstruction-case","json_url":"https://awesomerea.org/resources/cod4-rewrite-reconstruction-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/cod4-rewrite-reconstruction-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cod4-rewrite-reconstruction-case/index.md","name":"CoD4 Rewrite: Rust/Bevy reconstruction","name_zh":"CoD4 Rewrite：Rust/Bevy 游戏重建","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Requires Windows, a Vulkan-capable GPU and an owned CoD4 patch 1.7 installation. Optional Black Ops, Modern Warfare 2 and World at War content requires their separate installations; game assets are not supplied.","Current source connects the multiplayer dependency and NetplayPlugin despite README statements that networking is pending.","Rendering and gameplay include deliberate extensions.","Cargo declares MIT OR Apache-2.0, inherited by the game and multiplayer crates. No standalone license text was found in the reviewed tree."],"requirements_zh":["需要 Windows、支持 Vulkan 的显卡及自有 CoD4 1.7 安装。可选的《黑色行动》《现代战争2》《战争世界》内容需要对应的独立安装；项目不提供游戏素材。","当前源码已接入多人依赖及 NetplayPlugin，尽管 README 仍将联网列为待完成。","渲染和玩法含有刻意扩展。","Cargo 声明 MIT OR Apache-2.0，游戏与多人模块继承该声明。所审阅文件树中未找到独立的许可证文本。"],"targets":["binary","game"],"url":"https://github.com/Nilbong/COD4-Rewrite","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/jaenster/libd2/blob/bc21bb924b9238def4907bd2b3f79e8041a5fc0a/LICENSE","https://github.com/jaenster/libd2/blob/bc21bb924b9238def4907bd2b3f79e8041a5fc0a/docs/VERIFICATION.md","https://github.com/jaenster/libd2/blob/bc21bb924b9238def4907bd2b3f79e8041a5fc0a/docs/BUILDING.md","https://github.com/jaenster/libd2/blob/bc21bb924b9238def4907bd2b3f79e8041a5fc0a/build.zig.zon","https://github.com/jaenster/libd2/blob/bc21bb924b9238def4907bd2b3f79e8041a5fc0a/packages/drlg/src/oracle.zig","https://github.com/jaenster/libd2/blob/bc21bb924b9238def4907bd2b3f79e8041a5fc0a/packages/drlg/src/verify_tests.zig"],"category":"reconstruction-cases","description_en":"Zig libraries reconstructing Diablo II 1.14d seeded maps, item generation, saves, simulation rules and network formats. Selected components expose native and WebAssembly interfaces; verification notes distinguish retail map comparisons from weaker subsystem evidence.","description_zh":"以 Zig 库重建《暗黑破坏神II》1.14d 的种子地图、物品生成、存档、模拟规则和网络格式。部分组件提供原生与 WebAssembly 接口；验证说明区分了原游戏地图对照与其他子系统较弱的证据。","entry_url":"https://awesomerea.org/resources/libd2-engine-core-reconstruction-case/","entry_url_zh":"https://awesomerea.org/zh/resources/libd2-engine-core-reconstruction-case/","evidence_url":"https://github.com/jaenster/libd2/blob/bc21bb924b9238def4907bd2b3f79e8041a5fc0a/README.md","group":"cases","id":"libd2-engine-core-reconstruction-case","json_url":"https://awesomerea.org/resources/libd2-engine-core-reconstruction-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/libd2-engine-core-reconstruction-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/libd2-engine-core-reconstruction-case/index.md","name":"libd2: Diablo II 1.14d engine-core libraries","name_zh":"libd2：《暗黑破坏神II》1.14d 引擎组件库","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Builds require Zig 0.16.0. These are modular engine libraries, not a complete playable client; basic generation uses embedded data and fixtures.","MIT covers the Zig source. Included Blizzard-derived binary blobs and map fixtures are expressly excluded from that grant; the repository is not asset-free.","The authors report cell-level comparisons for five Nightmare seeds and two holdouts, plus per-level CRC checks for 200 seeds at three difficulties.","The game and net packages are checked against recovered rules and packet layouts, not a live server; save, item and pathfinding checks have different depth."],"requirements_zh":["构建需要 Zig 0.16.0。这些是模块化引擎库，并非完整可玩的客户端；基础生成使用内嵌数据和测试样本。","MIT 覆盖 Zig 源码，但明确排除随仓库提供、由 Blizzard 游戏派生的二进制数据和地图样本；仓库并非不含游戏派生素材。","作者报告五个噩梦难度种子及两个保留种子的逐格对照，另以 200 个种子的三个难度进行逐关 CRC 检查。","game 和 net 包依据恢复出的规则及报文布局检查，而非原服务器运行对照；存档、物品与路径检查的证据深度不同。"],"targets":["binary","game","protocol"],"url":"https://github.com/jaenster/libd2","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/abedegno/underworld-exhumed/blob/e5deadd6945b492636aadccc14f52caa908b4186/docs/PORT.md","https://github.com/abedegno/underworld-exhumed/blob/e5deadd6945b492636aadccc14f52caa908b4186/docs/BUILDING.md","https://github.com/abedegno/underworld-exhumed/blob/e5deadd6945b492636aadccc14f52caa908b4186/LICENSE","https://github.com/abedegno/underworld-exhumed/blob/e5deadd6945b492636aadccc14f52caa908b4186/NOTICE","https://github.com/abedegno/underworld-exhumed/blob/e5deadd6945b492636aadccc14f52caa908b4186/Makefile"],"category":"reconstruction-cases","description_en":"Pairs reconstructed DOS sources with native ports of Ultima Underworld I and II. The upstream documents Exhume-based byte-matching builds, routine-level comparisons and recorded-session replay against DOS.","description_zh":"将 Ultima Underworld I 与 II 的 DOS 源码重建与原生移植结合。上游记录了基于 Exhume 的字节匹配构建、例程级比较及对照 DOS 的录制会话回放。","entry_url":"https://awesomerea.org/resources/underworld-exhumed-case/","entry_url_zh":"https://awesomerea.org/zh/resources/underworld-exhumed-case/","evidence_url":"https://github.com/abedegno/underworld-exhumed/blob/e5deadd6945b492636aadccc14f52caa908b4186/README.md","group":"cases","id":"underworld-exhumed-case","json_url":"https://awesomerea.org/resources/underworld-exhumed-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/underworld-exhumed-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/underworld-exhumed-case/index.md","name":"Underworld Exhumed: reconstructing Ultima Underworld I and II","name_zh":"Underworld Exhumed：重建 Ultima Underworld I 与 II","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Native ports target macOS, Windows and Linux. Playing and checking against the originals requires your own matching game files (the README targets GOG releases); byte-matching builds additionally require the documented Turbo C++ 1.01 and TASM 2.0 inputs. Native-port compilation itself does not require game data.","The MIT license covers the project’s own tools, documentation and added annotations/structure. NOTICE explicitly excludes rights in the original games and derived game code; optional MT-32 playback requires separately obtained ROMs.","Recorded sessions and routine tests provide bounded upstream evidence. Full tests require licensed inputs absent from the public repository."],"requirements_zh":["原生移植面向 macOS、Windows 与 Linux。运行及对照原版检查需要自备匹配的游戏文件（README 面向 GOG 版本）；字节匹配构建还需文档指定的 Turbo C++ 1.01 与 TASM 2.0 输入。仅编译原生移植本身不需要游戏数据。","MIT 许可涵盖项目自有工具、文档及新增注释／结构；NOTICE 明确不授予原游戏及派生游戏代码的权利。可选 MT-32 播放需要另行取得的 ROM。","录制会话与例程测试属于上游的有界证据。完整测试需要公开仓库未提供的授权输入。"],"targets":["binary","game"],"url":"https://github.com/abedegno/underworld-exhumed","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/fredangstadt-lang/LineWarsII-SDL/blob/343bb50942a61e9d7fa1c1314cd1f03f8e7b12ac/CMakeLists.txt","https://github.com/fredangstadt-lang/LineWarsII-SDL/blob/343bb50942a61e9d7fa1c1314cd1f03f8e7b12ac/platform/sdl3/hal_sdl.c","https://github.com/fredangstadt-lang/LineWarsII-SDL/blob/343bb50942a61e9d7fa1c1314cd1f03f8e7b12ac/docs/PORTING_CHECKLIST.md","https://github.com/fredangstadt-lang/LineWarsII-SDL/blob/343bb50942a61e9d7fa1c1314cd1f03f8e7b12ac/LICENSE.md","https://github.com/fredangstadt-lang/LineWarsII-SDL/blob/343bb50942a61e9d7fa1c1314cd1f03f8e7b12ac/NOTICE.md"],"category":"reconstruction-cases","description_en":"Provides an SDL3 backend for a portable-C reconstruction of the 1994 DOS game. Its build configuration links the reconstructed engine to video, input and audio adapters; the upstream documents differential gates against original machine code.","description_zh":"为 1994 年 DOS 游戏的可移植 C 重建提供 SDL3 后端。构建配置将重建引擎接到视频、输入与音频适配层，上游记录了对照原始机器码的差分测试关卡。","entry_url":"https://awesomerea.org/resources/linewars-ii-sdl-case/","entry_url_zh":"https://awesomerea.org/zh/resources/linewars-ii-sdl-case/","evidence_url":"https://github.com/fredangstadt-lang/LineWarsII-SDL/blob/343bb50942a61e9d7fa1c1314cd1f03f8e7b12ac/README.md","group":"cases","id":"linewars-ii-sdl-case","json_url":"https://awesomerea.org/resources/linewars-ii-sdl-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/linewars-ii-sdl-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/linewars-ii-sdl-case/index.md","name":"LineWars II: a portable SDL3 reconstruction","name_zh":"LineWars II：可移植的 SDL3 重建版","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirements":["Builds target Windows and Linux using C99, CMake 3.16+ and SDL3; the reviewed build notes specify SDL 3.4.12 built with the same compiler as the game. This is a port of the separate LineWarsII-DOS reconstruction.","The reconstructed/ported source uses PolyForm Noncommercial 1.0.0. NOTICE reports original-author Patrick Aalto’s July 16, 2026 permission for freeware distribution of the original game material; it does not grant commercial-use permission. SDL keeps its separate zlib license.","The upstream reports renderer and menu comparisons and captured PCM levels within about 10% of its DOS reference; higher-resolution rendering changes the presentation."],"requirements_zh":["使用 C99、CMake 3.16+ 与 SDL3 构建 Windows/Linux 版本；已读构建说明指定 SDL 3.4.12，并要求与游戏使用同一编译器。这是独立 LineWarsII-DOS 重建项目的移植。","重建及移植源码采用 PolyForm Noncommercial 1.0.0。NOTICE 记录原作者 Patrick Aalto 于 2026 年 7 月 16 日允许原游戏材料以免费软件形式分发，但未授予商业使用许可；SDL 保留独立的 zlib 许可。","上游报告了渲染器和菜单比较，以及捕获的 PCM 电平与 DOS 参照相差约 10% 以内；高分辨率渲染改变了表现。"],"targets":["binary","game"],"url":"https://github.com/fredangstadt-lang/LineWarsII-SDL","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/Druthulu/BFM-decomp/blob/b6a28f96bac70af70573826f767a96cf212fd5e3/docs/verification.md","https://github.com/Druthulu/BFM-decomp/blob/b6a28f96bac70af70573826f767a96cf212fd5e3/Makefile","https://github.com/Druthulu/BFM-decomp/blob/b6a28f96bac70af70573826f767a96cf212fd5e3/LICENSE","https://github.com/Druthulu/BFM-decomp/blob/b6a28f96bac70af70573826f767a96cf212fd5e3/src/NOTICE.md","https://github.com/Druthulu/BFM-decomp/blob/b6a28f96bac70af70573826f767a96cf212fd5e3/THIRD_PARTY.md"],"category":"reconstruction-cases","description_en":"Documents an agent-assisted reconstruction of the USA PlayStation game with a pinned compiler and whole-binary SHA-1 gates. The verification recipe covers the main executable, resident engine and disc-loaded code modules, with explicit library and assembly exceptions.","description_zh":"记录美版 PlayStation 游戏的智能体辅助重建，使用固定编译器及完整二进制 SHA-1 检查。验证规约覆盖主程序、常驻引擎及光盘加载代码模块，并明确列出库与汇编例外。","entry_url":"https://awesomerea.org/resources/bfm-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/bfm-decomp-case/","evidence_url":"https://github.com/Druthulu/BFM-decomp/blob/b6a28f96bac70af70573826f767a96cf212fd5e3/README.md","group":"cases","id":"bfm-decomp-case","json_url":"https://awesomerea.org/resources/bfm-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/bfm-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bfm-decomp-case/index.md","name":"BFM-decomp: Brave Fencer Musashi matching decompilation","name_zh":"BFM-decomp：Brave Fencer Musashi 匹配反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Requires an owned USA SLUS-00726 disc dump, Linux/WSL2, Python 3.12 and the documented pinned GCC 2.7.2/MIPS toolchain. Optional PsyQ SDK objects must be supplied separately.","AGPL-3.0 applies to the project’s tools and documentation. src/NOTICE.md asserts no license over the reconstructed game code, whose original rights belong to Square/Square Enix; third-party components retain their own licenses.","The 218-binary matching contract is an upstream claim backed by its recipe and a recorded full run dated September 7, 2026. That log is for an earlier tree, not this reviewed HEAD. SDK/assembly exceptions and unfinished readability remain documented; public no-ROM CI audits and compiles but cannot perform the original-byte comparison."],"requirements_zh":["需要自备美版 SLUS-00726 光盘转储、Linux/WSL2、Python 3.12 及文档指定的 GCC 2.7.2/MIPS 固定工具链；可选 PsyQ SDK 对象需另行提供。","AGPL-3.0 适用于项目工具与文档；src/NOTICE.md 未对重建游戏代码授予许可，原作权利属于 Square／Square Enix，第三方组件保留各自许可。","218 个二进制的匹配规约属于上游声明，其验证步骤及 2026 年 9 月 7 日完整运行记录提供依据；该日志对应更早的代码树，并非本次复核的 HEAD。SDK／汇编例外及未完成的可读性工作仍有明确记录；公开无 ROM CI 仅审查和编译，不能进行原始字节比较。"],"targets":["binary","game"],"url":"https://github.com/Druthulu/BFM-decomp","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/Abdoulrazack1/Logic-Lens/blob/bb15aab345de64ef044a074d5e564fb087999032/package.json","https://github.com/Abdoulrazack1/Logic-Lens/blob/bb15aab345de64ef044a074d5e564fb087999032/src/predictor.js","https://github.com/Abdoulrazack1/Logic-Lens/blob/bb15aab345de64ef044a074d5e564fb087999032/src/model.js","https://github.com/Abdoulrazack1/Logic-Lens/blob/bb15aab345de64ef044a074d5e564fb087999032/src/tf-setup.js","https://github.com/Abdoulrazack1/Logic-Lens/blob/bb15aab345de64ef044a074d5e564fb087999032/src/semantic/semantic-analyzer.js","https://github.com/Abdoulrazack1/Logic-Lens/blob/bb15aab345de64ef044a074d5e564fb087999032/tests/semantic.test.js","https://github.com/Abdoulrazack1/Logic-Lens/blob/bb15aab345de64ef044a074d5e564fb087999032/CONTRIBUTING.md"],"category":"javascript-electron","description_en":"Experimental JavaScript source-analysis toolkit that classifies AST-token sequences into configured formula families after local training, and produces heuristic structure, call-graph and intent reports. It supports code-comprehension experiments; its predictions do not establish arbitrary program invariants or semantic equivalence.","description_zh":"实验性 JavaScript 源码分析工具：本地训练后将 AST token 序列归入预设公式类别，并生成启发式结构、调用图和意图报告。它可用于代码理解实验，但预测结果不证明任意程序的不变量或语义等价。","entry_url":"https://awesomerea.org/resources/logic-lens/","entry_url_zh":"https://awesomerea.org/zh/resources/logic-lens/","evidence_url":"https://github.com/Abdoulrazack1/Logic-Lens/blob/bb15aab345de64ef044a074d5e564fb087999032/README.md","group":"tools","id":"logic-lens","json_url":"https://awesomerea.org/resources/logic-lens/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/logic-lens/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/logic-lens/index.md","name":"Logic-Lens","name_zh":"Logic-Lens：实验性 JavaScript 源码理解工具","record_type":"resource","relationship":"foundation","requirements":["The README documents Node.js 18 or newer. Package version 1.1.0 declares TensorFlow.js, its native Node binding and Acorn; the setup first tries the native TensorFlow binding and then falls back to the pure JavaScript CPU backend.","Formula prediction requires local synthetic-data generation and training. The predictor expects model weights and metadata that are absent from the reviewed repository tree.","Predictions select from a configured formula catalogue. The README’s accuracy/confidence examples are author-reported; heuristic intent and quality reports are not behavioral-equivalence proofs.","Standalone semantic-test definitions cover structure, heuristic patterns and report shape. CONTRIBUTING mentions npm test, but package.json has no test script.","README and package metadata declare MIT, but the reviewed commit has no LICENSE file."],"requirements_zh":["README 要求 Node.js 18 或更新版本。package 版本 1.1.0 声明依赖 TensorFlow.js、其原生 Node 绑定与 Acorn；初始化先尝试原生 TensorFlow 绑定，再回退到纯 JavaScript CPU 后端。","公式预测需要在本地生成合成数据并训练。预测器所需的模型权重与元数据未包含在所审阅的仓库树中。","预测从预设公式目录中选择类别。README 的准确率和置信度示例来自作者报告；启发式意图与质量报告也不是行为等价证明。","独立的语义测试定义覆盖结构、启发式模式和报告格式。CONTRIBUTING 提到 npm test，但 package.json 没有 test 脚本。","README 与 package 元数据声明 MIT，但所审阅提交没有 LICENSE 文件。"],"targets":["app"],"url":"https://github.com/Abdoulrazack1/Logic-Lens","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/abhirampatel/android-security-toolkit/blob/d9153acad34a062298b15244a0c38f0497680dbf/apk_scanner.py"],"category":"android","description_en":"Local Python APK triage tool that drives apktool and strings, checks manifest settings and source/native-library strings, and produces TXT/JSON findings for manual review. Its rules flag possible issues without proving exploitability or reconstructing application behavior.","description_zh":"本地 Python APK 初步分析工具，调用 apktool 与 strings 检查清单配置、源码及原生库字符串，输出 TXT／JSON 结果供人工核验。规则仅提示潜在问题，不证明可利用性，也不重建应用行为。","entry_url":"https://awesomerea.org/resources/android-security-toolkit/","entry_url_zh":"https://awesomerea.org/zh/resources/android-security-toolkit/","evidence_url":"https://github.com/abhirampatel/android-security-toolkit/blob/d9153acad34a062298b15244a0c38f0497680dbf/README.md","group":"tools","id":"android-security-toolkit","json_url":"https://awesomerea.org/resources/android-security-toolkit/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/android-security-toolkit/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/android-security-toolkit/index.md","name":"Android Security Toolkit","name_zh":"Android Security Toolkit：APK 静态初步分析","record_type":"resource","relationship":"foundation","requirements":["Python 3 standard-library imports, separately installed apktool and strings/binutils, and an authorized local APK are required. Manifest analysis depends on successful apktool decoding.","String and manifest-rule matches require manual verification. A symbol, permission or flag alone does not establish an exploitable execution path. The README distinguishes this initial static pass from manual code review, dynamic/native analysis and library CVE matching.","The reviewed two-file tree contains no automated tests or versioned validation corpus. README sample output is an author-provided illustration.","The README states MIT, but the reviewed tree contains no standalone license file."],"requirements_zh":["需要 Python 3 标准库、另行安装的 apktool 与 strings／binutils，以及获得授权的本地 APK。清单分析依赖 apktool 成功解码。","字符串与清单规则匹配需人工核验；单个符号、权限或标志不能证明存在可利用的执行路径。README 将这一步静态初筛与人工代码审阅、动态／原生分析及依赖库 CVE 匹配区分开来。","所审阅的两文件仓库没有自动化测试或版本化验证样本。README 示例输出属于作者提供的说明。","README 声明 MIT，但所审阅的仓库树没有独立的许可证文件。"],"targets":["app"],"url":"https://github.com/abhirampatel/android-security-toolkit","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/AkashNaickar/crdb-sample-frontend/blob/673dc8c8d93b4f8a13257604749b638adf146298/site/index.html","https://github.com/AkashNaickar/crdb-sample-frontend/blob/673dc8c8d93b4f8a13257604749b638adf146298/site/js/main.js","https://github.com/AkashNaickar/crdb-sample-frontend/blob/673dc8c8d93b4f8a13257604749b638adf146298/scripts/check-site.test.mjs","https://github.com/AkashNaickar/crdb-sample-frontend/blob/673dc8c8d93b4f8a13257604749b638adf146298/package.json","https://github.com/AkashNaickar/crdb-sample-frontend/blob/673dc8c8d93b4f8a13257604749b638adf146298/LICENSE","https://github.com/AkashNaickar/crdb-sample-frontend/blob/673dc8c8d93b4f8a13257604749b638adf146298/CONTRIBUTING.md"],"category":"reconstruction-cases","description_en":"Rebuilds the Littlebird.ai home page in plain HTML/CSS/JavaScript from captured markup and assets, with source-wired mobile navigation, FAQ toggles, scroll reveals and OS-dependent call-to-action presentation. It illustrates a bounded website reconstruction, with uncaptured routes and product functionality left outside the scope.","description_zh":"依据捕获的标记与资源，用原生 HTML/CSS/JavaScript 重建 Littlebird.ai 首页；源码实现移动导航、FAQ 展开、滚动显现及随操作系统变化的按钮展示。它是范围明确的网页重建案例，不涵盖未捕获路由或产品本身的功能。","entry_url":"https://awesomerea.org/resources/littlebird-static-rebuild-case/","entry_url_zh":"https://awesomerea.org/zh/resources/littlebird-static-rebuild-case/","evidence_url":"https://github.com/AkashNaickar/crdb-sample-frontend/blob/673dc8c8d93b4f8a13257604749b638adf146298/README.md","group":"cases","id":"littlebird-static-rebuild-case","json_url":"https://awesomerea.org/resources/littlebird-static-rebuild-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/littlebird-static-rebuild-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/littlebird-static-rebuild-case/index.md","name":"Littlebird.ai static home-page rebuild","name_zh":"Littlebird.ai 静态首页重建","record_type":"resource","relationship":"independent-reconstruction","requirements":["The captured scope is the home page and five embedded demos. Pricing, blog and other uncaptured routes are absent; several download controls are placeholder links. This is not a recreation of the Littlebird desktop/mobile application or its backend.","The shipped site is plain HTML/CSS/JavaScript without a build step. The documented local preview and asset-integrity suite use Node.js 20+ and its standard library.","The original npm test checks local asset references, basic file and embedded-page completeness, and independence from the ignored capture directory.","The MIT file covers repository code. The README explicitly excludes captured third-party fonts, imagery, markup and copy from that grant and identifies this as an unofficial study rebuild."],"requirements_zh":["捕获范围仅为首页及五个嵌入式演示；定价、博客等未捕获路由缺失，若干下载控件为占位链接。它不复现 Littlebird 桌面／移动应用或后端。","交付页面采用原生 HTML/CSS/JavaScript，无构建步骤；文档中的本地预览与资源完整性测试使用 Node.js 20+ 及其标准库。","原有 npm test 检查本地资源引用、基本文件与嵌入页面完整性，以及对被忽略捕获目录的独立性。","MIT 文件覆盖仓库代码；README 明确指出捕获的第三方字体、图像、标记与文案不属于该授权，并将项目界定为非官方学习重建。"],"targets":["website"],"url":"https://github.com/AkashNaickar/crdb-sample-frontend","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/akiselev/ilspy-cli/blob/089895f16a9031bb8391db13c2160def9a2e8b60/src/main.rs","https://github.com/akiselev/ilspy-cli/blob/089895f16a9031bb8391db13c2160def9a2e8b60/src/ilspy/detect.rs","https://github.com/akiselev/ilspy-cli/blob/089895f16a9031bb8391db13c2160def9a2e8b60/src/bridge/mod.rs","https://github.com/akiselev/ilspy-cli/blob/089895f16a9031bb8391db13c2160def9a2e8b60/bridge/IlSpyBridge.cs","https://github.com/akiselev/ilspy-cli/blob/089895f16a9031bb8391db13c2160def9a2e8b60/bridge/IlSpyBridge.csproj","https://github.com/akiselev/ilspy-cli/blob/089895f16a9031bb8391db13c2160def9a2e8b60/tests/integration_tests.rs","https://github.com/akiselev/ilspy-cli/blob/089895f16a9031bb8391db13c2160def9a2e8b60/tests/fixtures/SampleLib/SampleClass.cs","https://github.com/akiselev/ilspy-cli/blob/089895f16a9031bb8391db13c2160def9a2e8b60/Cargo.toml","https://github.com/akiselev/ilspy-cli/blob/089895f16a9031bb8391db13c2160def9a2e8b60/AGENTS.md"],"category":"dotnet","description_en":"Rust CLI that hosts an ILSpy C# bridge in-process for assembly, type and named-method decompilation, source search and structured JSON output. A separate PE-header detector identifies managed assemblies without loading the .NET runtime.","description_zh":"通过进程内托管的 ILSpy C# 桥接层，提供程序集、类型和指定方法的反编译、源码搜索及结构化 JSON 输出的 Rust CLI；独立的 PE 头检测器无需加载 .NET 运行时即可识别托管程序集。","entry_url":"https://awesomerea.org/resources/akiselev-ilspy-cli/","entry_url_zh":"https://awesomerea.org/zh/resources/akiselev-ilspy-cli/","evidence_url":"https://github.com/akiselev/ilspy-cli/blob/089895f16a9031bb8391db13c2160def9a2e8b60/README.md","group":"tools","id":"akiselev-ilspy-cli","json_url":"https://awesomerea.org/resources/akiselev-ilspy-cli/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/akiselev-ilspy-cli/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/akiselev-ilspy-cli/index.md","name":"ilspy-cli: targeted .NET decompilation for agents","name_zh":"ilspy-cli：面向 Agent 的定向 .NET 反编译","record_type":"resource","relationship":"foundation","requirements":["Building requires a Rust toolchain and .NET 8 SDK; build.rs invokes dotnet publish for the C# bridge, whose project pins ICSharpCode.Decompiler 9.1.0.7988. Decompilation needs the .NET 8 runtime; the detect command follows a separate Rust-only path.","Method selection matches the first method with the requested name within the named type; it does not disambiguate overloads by signature. Source search skips types whose decompilation throws, so an empty result is not proof that the requested pattern is absent from the complete assembly.","The integration suite builds one small SampleLib fixture and checks command output, including a simple Add method.","README and Cargo metadata declare GPL-3.0, but the complete pinned tree has no separate LICENSE/COPYING text. The upstream ILSpy engine and user-provided assemblies retain their own licensing conditions."],"requirements_zh":["构建需要 Rust 工具链与 .NET 8 SDK；build.rs 调用 dotnet publish 构建 C# 桥接层，其项目固定使用 ICSharpCode.Decompiler 9.1.0.7988。反编译需要 .NET 8 运行时，detect 命令走独立的纯 Rust 路径。","方法选择仅在指定类型内取第一个同名方法，不按签名区分重载；源码搜索会跳过反编译抛异常的类型，因此空结果不证明整个程序集中没有所查模式。","集成测试构建一个小型 SampleLib 样例并检查命令输出，包括简单的 Add 方法。","README 与 Cargo 元数据声明 GPL-3.0，但完整固定提交中没有单独的 LICENSE／COPYING 正文；上游 ILSpy 引擎与用户提供的程序集仍适用各自的许可条件。"],"targets":["app"],"url":"https://github.com/akiselev/ilspy-cli","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/akopetsch/swe1r-assets-unity/blob/2fcae9138583da959882171095920ab9b802168b/package.json","https://github.com/akopetsch/swe1r-assets-unity/blob/2fcae9138583da959882171095920ab9b802168b/Samples~/SampleProject/ProjectSettings/ProjectVersion.txt","https://github.com/akopetsch/swe1r-assets-unity/blob/2fcae9138583da959882171095920ab9b802168b/Samples~/SampleProject/Assets/packages.config","https://github.com/akopetsch/swe1r-assets-unity/blob/2fcae9138583da959882171095920ab9b802168b/Samples~/SampleProject/Assets/Code/Editor/BlockEditorWindow.cs","https://github.com/akopetsch/swe1r-assets-unity/blob/2fcae9138583da959882171095920ab9b802168b/Samples~/SampleProject/Assets/Code/ModelBlock/ModelBlockItemImporter.cs","https://github.com/akopetsch/swe1r-assets-unity/blob/2fcae9138583da959882171095920ab9b802168b/Samples~/SampleProject/Assets/Code/ModelBlock/ModelBlockItemExporter.cs","https://github.com/akopetsch/swe1r-assets-unity/blob/2fcae9138583da959882171095920ab9b802168b/Samples~/SampleProject/Assets/Code/SplineBlock/SplineBlockItemImporter.cs","https://github.com/akopetsch/swe1r-assets-unity/blob/2fcae9138583da959882171095920ab9b802168b/Samples~/SampleProject/Assets/Code/SplineBlock/SplineBlockItemExporter.cs","https://github.com/akopetsch/swe1r-assets-unity/blob/2fcae9138583da959882171095920ab9b802168b/LICENSE"],"category":"game-analysis","description_en":"Work-in-progress Unity editor sample for importing and modifying Star Wars Episode I: Racer model blocks, then serializing them back through swe1r-assets. Its editor includes an unmodified import/export byte-comparison command; it is an asset-format workflow rather than a reimplementation of the game.","description_zh":"尚在开发中的 Unity 编辑器样例，可导入和修改《星球大战：极速飞车》的模型块，再通过 swe1r-assets 序列化回原格式。编辑器提供未修改导入／导出结果的字节比较命令；其范围是资产格式工作流，而非完整游戏重实现。","entry_url":"https://awesomerea.org/resources/swe1r-assets-unity/","entry_url_zh":"https://awesomerea.org/zh/resources/swe1r-assets-unity/","evidence_url":"https://github.com/akopetsch/swe1r-assets-unity/blob/2fcae9138583da959882171095920ab9b802168b/README.md","group":"tools","id":"swe1r-assets-unity","json_url":"https://awesomerea.org/resources/swe1r-assets-unity/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/swe1r-assets-unity/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/swe1r-assets-unity/index.md","name":"swe1r-assets-unity: Racer model-block editor sample","name_zh":"swe1r-assets-unity：Racer 模型块编辑器样例","record_type":"resource","relationship":"foundation","requirements":["The README explicitly says this is currently a sample project. The package and sample pin Unity 2022.3.30f1; packages.config references SWE1R.Assets.Blocks 0.0.1-alpha.15 and ByteSerialization 0.0.1-alpha.9. Required game block files are read from a user-selected local game-data directory.","Model import/export is wired in the editor and importer/exporter classes. Texture, spline and sprite sections currently expose filenames without equivalent operation controls; spline importer/exporter subclasses are empty.","Test Re-Export compares the original and serialized model-item byte arrays with SequenceEqual, and Test Re-Export All loops over the loaded model block. The README claims bit-perfect unchanged round trips, but the tree contains no saved corpus/result report.","Repository code has an MIT LICENSE and source SPDX headers. That code license is not evidence of permission to redistribute the original game data."],"requirements_zh":["README 明确说明当前仅为样例项目；package 与样例固定使用 Unity 2022.3.30f1，packages.config 引用 SWE1R.Assets.Blocks 0.0.1-alpha.15 和 ByteSerialization 0.0.1-alpha.9。所需游戏块文件从用户选择的本地游戏数据目录读取。","编辑器与导入／导出类实现了模型操作；纹理、样条与精灵区域当前仅显示文件名，没有同等操作控件，样条导入／导出子类为空。","Test Re-Export 使用 SequenceEqual 比较原模型项与重新序列化后的字节数组，Test Re-Export All 遍历已加载的模型块。README 宣称未修改数据可逐字节往返，但树中没有固定语料及结果报告。","仓库代码包含 MIT LICENSE 和源码 SPDX 标记；该代码许可不能证明原游戏数据可再分发。"],"targets":["game"],"url":"https://github.com/akopetsch/swe1r-assets-unity","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/alexandra-seredkina/React-Decode/blob/80e8bda2912b7e3f9e01bc3a0034a61ea488b14a/package.json","https://github.com/alexandra-seredkina/React-Decode/blob/80e8bda2912b7e3f9e01bc3a0034a61ea488b14a/package-lock.json","https://github.com/alexandra-seredkina/React-Decode/blob/80e8bda2912b7e3f9e01bc3a0034a61ea488b14a/LICENSE","https://github.com/alexandra-seredkina/React-Decode/blob/80e8bda2912b7e3f9e01bc3a0034a61ea488b14a/src/pipeline.js","https://github.com/alexandra-seredkina/React-Decode/blob/80e8bda2912b7e3f9e01bc3a0034a61ea488b14a/src/analyze/requests.js","https://github.com/alexandra-seredkina/React-Decode/blob/80e8bda2912b7e3f9e01bc3a0034a61ea488b14a/src/sourcemap.js","https://github.com/alexandra-seredkina/React-Decode/blob/80e8bda2912b7e3f9e01bc3a0034a61ea488b14a/src/loader.js","https://github.com/alexandra-seredkina/React-Decode/blob/80e8bda2912b7e3f9e01bc3a0034a61ea488b14a/test/pipeline.test.js"],"category":"javascript-electron","description_en":"Static-analysis CLI for compiled React JavaScript that produces readable bundle output and inferred API-request, route and application-constant reports. It can extract embedded source-map contents when available.","description_zh":"面向已构建 React JavaScript 的静态分析 CLI，可输出更易读的代码，以及推断的 API 请求、路由和应用常量报告；存在 source map 内嵌源码时可将其提取。","entry_url":"https://awesomerea.org/resources/react-decode/","entry_url_zh":"https://awesomerea.org/zh/resources/react-decode/","evidence_url":"https://github.com/alexandra-seredkina/React-Decode/blob/80e8bda2912b7e3f9e01bc3a0034a61ea488b14a/README.md","group":"tools","id":"react-decode","json_url":"https://awesomerea.org/resources/react-decode/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/react-decode/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/react-decode/index.md","name":"React-Decode","name_zh":"React-Decode","record_type":"resource","relationship":"foundation","requirements":["The reviewed package declares Node.js >=20, but its locked Babel 8 dependencies require ^22.18.0 or >=24.11.0. The lock pins Babel parser/traverse 8.0.7, generator/types 8.0.6 and Prettier 3.9.10.","Provide authorized JavaScript bundles, HTML, source maps or a URL. URL mode retrieves scripts, chunks and maps; source extraction requires strings in sourcesContent, not just mapping coordinates.","API and value inference is bounded and heuristic: wrapper discovery uses at most six rounds, dynamic values can remain placeholders, and inferred request/response fields are not a verified API specification. Control-flow flattening and string-array obfuscation are outside the documented scope.","The MIT LICENSE and package.json agree, but package.json declares 0.1.0 while the root lock metadata says 1.0.0 and ISC. Input bundles retain their own rights.","Reports may contain credential-like strings from the input; --json prints them unmasked."],"requirements_zh":["所审阅的包声明 Node.js >=20，但锁定的 Babel 8 依赖要求 ^22.18.0 或 >=24.11.0。lock 固定 parser/traverse 8.0.7、generator/types 8.0.6 和 Prettier 3.9.10。","输入需为有权分析的 JavaScript 包、HTML、source map 或 URL。URL 模式会获取脚本、分块和映射文件；源码提取需要 sourcesContent 中的字符串，仅有映射坐标并不足够。","API 与值推断具有范围上限且依赖启发式规则：请求封装发现最多迭代六轮，动态值可能仍是占位符，推断的请求／响应字段不等于已验证的 API 规范。文档明确不处理控制流平坦化和字符串数组混淆。","MIT LICENSE 与 package.json 一致，但 package.json 标记 0.1.0，而根 lock 元数据标记 1.0.0 与 ISC。输入代码仍受其自身权利约束。","报告可能包含输入中的凭据形态字符串，--json 会原样输出而不遮蔽。"],"targets":["website"],"url":"https://github.com/alexandra-seredkina/React-Decode","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/alexandrmotologa/wasmlens/blob/2351cccea90f812053b30d1ad14816d3c664a4f7/pyproject.toml","https://github.com/alexandrmotologa/wasmlens/blob/2351cccea90f812053b30d1ad14816d3c664a4f7/LICENSE","https://github.com/alexandrmotologa/wasmlens/blob/2351cccea90f812053b30d1ad14816d3c664a4f7/src/wasmlens/cli/main.py","https://github.com/alexandrmotologa/wasmlens/blob/2351cccea90f812053b30d1ad14816d3c664a4f7/src/wasmlens/parser/module.py","https://github.com/alexandrmotologa/wasmlens/blob/2351cccea90f812053b30d1ad14816d3c664a4f7/src/wasmlens/parser/section_parser.py","https://github.com/alexandrmotologa/wasmlens/blob/2351cccea90f812053b30d1ad14816d3c664a4f7/src/wasmlens/parser/opcodes.py","https://github.com/alexandrmotologa/wasmlens/blob/2351cccea90f812053b30d1ad14816d3c664a4f7/src/wasmlens/disassembler/wat_formatter.py","https://github.com/alexandrmotologa/wasmlens/blob/2351cccea90f812053b30d1ad14816d3c664a4f7/src/wasmlens/decompiler/reconstructor.py","https://github.com/alexandrmotologa/wasmlens/blob/2351cccea90f812053b30d1ad14816d3c664a4f7/src/wasmlens/decompiler/ast.py","https://github.com/alexandrmotologa/wasmlens/blob/2351cccea90f812053b30d1ad14816d3c664a4f7/src/wasmlens/emulator/vm.py","https://github.com/alexandrmotologa/wasmlens/blob/2351cccea90f812053b30d1ad14816d3c664a4f7/tests/test_decompiler.py","https://github.com/alexandrmotologa/wasmlens/blob/2351cccea90f812053b30d1ad14816d3c664a4f7/tests/test_parser.py"],"category":"webassembly","description_en":"Python CLI with static paths for inspecting WebAssembly sections and function signatures, producing WAT-style instruction listings, and reconstructing limited C-like pseudocode. These are exploratory analysis aids for supported modules, not recovered original source or a complete WebAssembly runtime.","description_zh":"提供 WebAssembly 区段与函数签名检查、WAT 风格指令列表和有限 C 风格伪代码重建的 Python CLI。所收录的是面向受支持模块的探索性静态分析路径，不代表恢复原始源码或实现完整 WebAssembly 运行时。","entry_url":"https://awesomerea.org/resources/wasmlens/","entry_url_zh":"https://awesomerea.org/zh/resources/wasmlens/","evidence_url":"https://github.com/alexandrmotologa/wasmlens/blob/2351cccea90f812053b30d1ad14816d3c664a4f7/README.md","group":"tools","id":"wasmlens","json_url":"https://awesomerea.org/resources/wasmlens/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/wasmlens/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wasmlens/index.md","name":"WasmLens: exploratory WebAssembly inspection","name_zh":"WasmLens：探索性 WebAssembly 检查","record_type":"resource","relationship":"foundation","requirements":["The reviewed package declares version 0.1.0 and Python >=3.10, with Typer, Rich, FastAPI, Uvicorn, Pydantic, NetworkX and python-multipart dependencies; pytest/httpx are development extras. The source includes an MIT LICENSE. Dependency lower bounds are declared.","The info, disasm and decompile commands read a supplied .wasm file through the same parser. That parser has no 0xFD SIMD decoding branch and may label unsupported opcodes as unknown.","The WAT-style module listing is not a lossless reassembly format: data segments are reduced to previews of up to 32 bytes and active offsets use a placeholder. The C-like reconstructor has no general fallback for unhandled instructions, uses only the first result type, and expresses branch labels in comments.","Its dispatch lacks handlers for operations including floating-point arithmetic and indirect calls, and an unhandled instruction can advance the program counter without implementing its effect.","Supply only modules you are permitted to analyze."],"requirements_zh":["所审阅的包声明版本 0.1.0、Python >=3.10，依赖 Typer、Rich、FastAPI、Uvicorn、Pydantic、NetworkX 与 python-multipart；pytest/httpx 属于开发依赖。源码包含 MIT LICENSE。依赖声明了版本下限。","info、disasm 和 decompile 命令通过同一解析器读取用户提供的 .wasm 文件。解析器没有 0xFD SIMD 解码分支，可能将不支持的操作码标记为 unknown。","WAT 风格模块列表不是无损重汇编格式：数据段仅保留最多 32 字节的预览，活动数据段的偏移使用占位符。C 风格重建器对未处理指令没有通用后备处理，仅取首个返回类型，并以注释表达分支标签。","分派代码缺少浮点算术、间接调用等操作的处理器，遇到未处理指令时可能推进程序计数器而不实现其效果。","只应提供有权分析的模块。"],"targets":["binary"],"url":"https://github.com/alexandrmotologa/wasmlens","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/SubmitGame/awesome-decomp-games/blob/02727e90fe10c7b55fad3fdd4bd671c55e1fe587/CONTRIBUTING.md","https://github.com/SubmitGame/awesome-decomp-games/blob/02727e90fe10c7b55fad3fdd4bd671c55e1fe587/scripts/build.py","https://github.com/SubmitGame/awesome-decomp-games/blob/02727e90fe10c7b55fad3fdd4bd671c55e1fe587/.github/workflows/refresh.yml","https://github.com/SubmitGame/awesome-decomp-games/blob/02727e90fe10c7b55fad3fdd4bd671c55e1fe587/LICENSE","https://github.com/SubmitGame/awesome-decomp-games/blob/02727e90fe10c7b55fad3fdd4bd671c55e1fe587/LICENSE-CODE"],"category":"related-lists","description_en":"A generated, rated index of public game reconstruction projects: decompilations, disassemblies, static recompilations, source ports, engine remakes and browser ports. A daily job merges several upstream lists and registries with GitHub and decomp.dev metadata, drops dead links and rebuilds the README and website from data files. Useful for discovery; its scores are automated heuristics, not reviews.","description_zh":"自动生成并附评分的公开游戏重建项目索引，涵盖反编译、反汇编、静态重编译、源码移植、引擎重制及浏览器移植。每日任务合并多个上游目录与登记站点，结合 GitHub 和 decomp.dev 元数据，剔除失效链接，再由数据文件重建 README 和网站。适合用来发现项目；其评分是自动启发式结果，并非人工审阅。","entry_url":"https://awesomerea.org/resources/submitgame-awesome-decomp-games/","entry_url_zh":"https://awesomerea.org/zh/resources/submitgame-awesome-decomp-games/","evidence_url":"https://github.com/SubmitGame/awesome-decomp-games/blob/02727e90fe10c7b55fad3fdd4bd671c55e1fe587/README.md","group":"learn","id":"submitgame-awesome-decomp-games","json_url":"https://awesomerea.org/resources/submitgame-awesome-decomp-games/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/submitgame-awesome-decomp-games/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/submitgame-awesome-decomp-games/index.md","name":"Awesome Decomp Games","name_zh":"Awesome Decomp Games：附评分、每日刷新的游戏重建项目目录","record_type":"resource","relationship":"learning","requirements":["The reviewed README, generated 2026-10-16, reports 2,118 projects covering 1,829 games, with sections for 646 decompilations, 520 static recompilations, 230 source ports, 206 engine remakes, 107 disassemblies, 53 browser ports, tools, mods and 347 inactive entries.","Each entry's 1–5 playability, completeness, activity and popularity sub-scores are computed by scripts/build.py from GitHub metadata, decomp.dev progress and description keywords. Projects their source list flags as AI-generated are marked ⚠️ and lose 0.2.","Entries are seeded from the listed upstream collections and registries plus data/additions.json and data/overrides.json. A scheduled GitHub Actions job runs daily at 03:17 UTC to refresh metadata, check links and browser-play URLs, and commit the regenerated files, so summaries can still lag the linked projects.","The list states that it hosts no ROMs, ISOs, BIOS files or game assets, and its contribution rules refuse links to them and repositories that ship game data; most listed projects need files from the user's own copy. Some browser entries are labeled as playing instantly without the user's files. The list does not document each site's rights basis.","The list and data are released under CC0 1.0 and the scripts and website code under MIT; linked projects and game screenshots keep their own rights. Two REA showcase repositories appear among the entries."],"requirements_zh":["所审阅的 README 生成于 2026-10-16，报告共 2,118 个项目、涵盖 1,829 款游戏，分为 646 个反编译、520 个静态重编译、230 个源码移植、206 个引擎重制、107 个反汇编、53 个浏览器移植，以及工具、模组和 347 个不活跃条目等分类。","每个条目的可玩性、完成度、活跃度和热度四项 1–5 分子评分由 scripts/build.py 依据 GitHub 元数据、decomp.dev 进度和描述关键词计算。来源目录标记为 AI 生成的项目带 ⚠️ 标记并扣 0.2 分。","条目来自所列的上游目录与登记站点，并合并 data/additions.json 和 data/overrides.json 中的增补与修正。GitHub Actions 定时任务每天 03:17 UTC 运行，刷新元数据、检查链接和浏览器游玩地址，并提交重新生成的文件，因此摘要仍可能落后于所链接的项目。","该目录声明不托管 ROM、ISO、BIOS 文件或游戏素材，贡献规则也拒绝收录指向这些内容的链接及附带游戏数据的仓库；多数所列项目需要使用者自有游戏副本中的文件。部分浏览器条目标注无需使用者文件即可直接游玩。目录未说明各网站的权利依据。","目录与数据采用 CC0 1.0，脚本和网站代码采用 MIT；所链接项目和游戏截图保留各自权利。条目中包含两个 REA 展示仓库。"],"targets":["game"],"url":"https://github.com/SubmitGame/awesome-decomp-games","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-20","additional_evidence_urls":["https://blog.chrislewis.au/decompiling-a-nintendo-64-game-in-84-days/","https://github.com/cdlewis/snowboardkids-decomp/blob/0a398d907aae32ae45e6ba0ca688049e5c60dab8/docs/versions.md","https://github.com/cdlewis/snowboardkids-decomp/blob/0a398d907aae32ae45e6ba0ca688049e5c60dab8/reports/jp-exact-functions.md","https://github.com/cdlewis/snowboardkids-decomp/blob/0a398d907aae32ae45e6ba0ca688049e5c60dab8/reports/region-functions.md","https://github.com/cdlewis/snowboardkids-decomp/blob/0a398d907aae32ae45e6ba0ca688049e5c60dab8/.github/workflows/build.yaml","https://github.com/cdlewis/snowboardkids-decomp/blob/0a398d907aae32ae45e6ba0ca688049e5c60dab8/.gitignore","https://github.com/cdlewis/snowboardkids-decomp/blob/0a398d907aae32ae45e6ba0ca688049e5c60dab8/.gitmodules","https://github.com/cdlewis/snowboardkids-decomp/blob/0a398d907aae32ae45e6ba0ca688049e5c60dab8/snowboardkids.sha1"],"category":"reconstruction-cases","description_en":"A matching decompilation of the original Nintendo 64 Snowboard Kids that rebuilds SHA1-identical North American and Japanese ROMs from a user-supplied ROM. The author’s 84-day post-mortem describes coding agents run through his Nigel harness alongside m2c, the permuter and a shared file of compiler learnings, and declines to credit LLMs alone for the speed-up. It is a separate project from the Snowboard Kids 2 decompilation.","description_zh":"原版 Nintendo 64 游戏 Snowboard Kids 的匹配反编译，利用使用者自备的 ROM 重新构建 SHA1 一致的北美版与日版 ROM。作者在 84 天复盘文章中介绍了通过自建的 Nigel 工具调度编程智能体，并结合 m2c、permuter 与共享编译器经验文件的流程，同时表示不应把提速完全归功于大模型。它与 Snowboard Kids 2 反编译是不同的项目。","entry_url":"https://awesomerea.org/resources/snowboardkids-matching-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/snowboardkids-matching-decomp-case/","evidence_url":"https://github.com/cdlewis/snowboardkids-decomp/blob/0a398d907aae32ae45e6ba0ca688049e5c60dab8/README.md","group":"cases","id":"snowboardkids-matching-decomp-case","json_url":"https://awesomerea.org/resources/snowboardkids-matching-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/snowboardkids-matching-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/snowboardkids-matching-decomp-case/index.md","name":"Snowboard Kids: an agent-assisted N64 matching decompilation","name_zh":"Snowboard Kids：智能体辅助的 N64 匹配反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["The 2026-08-26 post reports the game 100% decompiled: every function has C that compiles to identical machine code, apart from a small amount of handwritten system-library assembly that was original source. It dates the repository from 28 May 2026 to the final matching function on 19 August 2026 and counts 2,145 functions, against 596 days and 2,995 functions for Snowboard Kids 2. The README says the Japanese version currently builds from extracted assembly; reports/jp-exact-functions.md lists 120 JP functions compiled from C.","Building requires the user’s own North American or Japanese ROM, named snowboardkids.z64 or snowboardkids.jp.z64 with the SHA1 listed in the README; the build extracts assembly and assets from it into git-ignored directories. The README says the repository contains no game assets or assembly, although the reviewed tree tracks libultra .s files and a box-art image. CI builds both regions from a baserom checked out of a separate private repository.","The verified host is x86-64 Linux with make, git, Python 3, clang, wget, tar and binutils-mips-linux-gnu; a macOS setup is documented but still needs validation. make -C tools sets up the recompiled IDO 5.3 toolchain (IDO_DIR can point to another), submodules supply asm-processor, asm-differ and decomp-permuter, and optional matching helpers need requirements.txt.","tools/build-and-verify.sh cleans, extracts, builds and checks the output ROM’s SHA1 against the original for the selected region, and reports/region-functions.md aligns 1,293 of 2,110 US functions with the JP ROM by exact or address-normalized matches. The post describes agents writing C function by function, a script running m2c on every unmatched function, permuter runs with deadlines and four parallel worktrees; it calls its comparison of GPT-5.5/5.6, Claude 4.5, Fable and GLM 5.2 unscientific.","The author estimates that roughly 4.8% of matching commits involved expert intervention, says the figure does not measure effort, credits contributors for many difficult IDO matches and calls attributing the whole speed-up to LLMs a gross oversimplification. A 100% match still leaves generated names, unknown structure fields and data to document. No license file is present at the reviewed commit, and the README states commercial use is a non-goal."],"requirements_zh":["2026-08-26 的文章报告游戏已 100% 反编译：每个函数都有编译后机器码完全一致的 C 实现，只保留少量本就以手写汇编为原始源码的系统库代码。文章称仓库从 2026 年 5 月 28 日开始，到 2026 年 8 月 19 日完成最后一个匹配函数，共 2,145 个函数；Snowboard Kids 2 则用了 596 天、共 2,995 个函数。README 称日版目前仍由提取出的汇编构建；reports/jp-exact-functions.md 列出 120 个已由 C 编译的日版函数。","构建需要使用者自有的北美版或日版 ROM，分别命名为 snowboardkids.z64 或 snowboardkids.jp.z64，且 SHA1 须与 README 所列一致；构建会从中提取汇编和素材，放入 git 忽略的目录。README 称仓库不含任何游戏素材或汇编，但所审阅的提交中仍跟踪 libultra 的 .s 文件和一张包装盒图片。CI 从另一个私有仓库检出基础 ROM 来构建两个区域版本。","经验证的宿主为 x86-64 Linux，需要 make、git、Python 3、clang、wget、tar 和 binutils-mips-linux-gnu；文档提供了 macOS 配置，但仍待验证。make -C tools 会配置重编译的 IDO 5.3 工具链（也可用 IDO_DIR 指向其他安装），子模块提供 asm-processor、asm-differ 和 decomp-permuter，可选的匹配辅助工具需安装 requirements.txt。","tools/build-and-verify.sh 会针对所选区域执行清理、提取、构建，并将输出 ROM 的 SHA1 与原 ROM 比对；reports/region-functions.md 通过逐字节或地址归一化匹配，将 2,110 个美版函数中的 1,293 个与日版 ROM 对应起来。文章介绍了智能体逐个函数编写 C 代码、用脚本对每个未匹配函数运行 m2c、为 permuter 设定时限以及四个并行工作树的做法；文章自称对 GPT-5.5/5.6、Claude 4.5、Fable 和 GLM 5.2 的比较并不科学。","作者估计约 4.8% 的匹配提交有专家介入，并说明该数字不衡量投入的工作量；作者感谢多位贡献者完成了许多困难的 IDO 匹配，并认为把提速全部归功于大模型是严重的过度简化。100% 匹配后，仍有自动生成的名称、未知的结构字段和数据需要整理。所审阅的提交中没有许可证文件，README 声明不以任何商业用途为目标。"],"targets":["game"],"url":"https://github.com/cdlewis/snowboardkids-decomp","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/joelanders/reflecticon-224/blob/37fde47f6cf94d4f4f96f3c233382e2c43a70354/README.md","https://github.com/joelanders/reflecticon-224/blob/37fde47f6cf94d4f4f96f3c233382e2c43a70354/emulator/tests/qualify_firmware.py","https://github.com/joelanders/reflecticon-224/blob/37fde47f6cf94d4f4f96f3c233382e2c43a70354/emulator/tests/qualified.json","https://github.com/joelanders/reflecticon-224/blob/37fde47f6cf94d4f4f96f3c233382e2c43a70354/juce-plugin/tests/byte_exact/compare_wasm.mjs","https://github.com/joelanders/reflecticon-224/blob/37fde47f6cf94d4f4f96f3c233382e2c43a70354/web-demo/page/firmware.js","https://github.com/joelanders/reflecticon-224/blob/37fde47f6cf94d4f4f96f3c233382e2c43a70354/web-demo/page/firmware_sets.json","https://github.com/joelanders/reflecticon-224/blob/37fde47f6cf94d4f4f96f3c233382e2c43a70354/.github/workflows/plugin.yml","https://github.com/joelanders/reflecticon-224/blob/37fde47f6cf94d4f4f96f3c233382e2c43a70354/.github/workflows/pages.yml","https://github.com/joelanders/reflecticon-224/blob/37fde47f6cf94d4f4f96f3c233382e2c43a70354/8080/LICENSE-floooh-chips","https://github.com/joelanders/reflecticon-224/blob/37fde47f6cf94d4f4f96f3c233382e2c43a70354/8080/LICENSE-m8080","https://news.ycombinator.com/item?id=50111576"],"category":"reconstruction-cases","description_en":"Emulates the Lexicon 224, 224X and 224XL digital reverbs so that their own firmware runs in a browser page or a JUCE plugin. The repository layers KiCad schematics, gate-level and board-level Verilog models, an 8080-hosted C++ emulator and analog input/output models, and checks faster layers against slower ones using user-supplied ROMs. It is a work-in-progress hardware-and-firmware emulation whose documentation is still pending, not recovered algorithm source.","description_zh":"模拟 Lexicon 224、224X 与 224XL 数字混响器，使其原厂固件能在浏览器页面或 JUCE 插件中运行。仓库分层包含 KiCad 原理图、门级与板级 Verilog 模型、以 8080 为主机的 C++ 模拟器及模拟输入／输出模型，并用使用者自备的 ROM 以较慢层级校验较快层级。这是仍在开发、文档尚未完成的硬件与固件模拟，并非恢复出的算法源码。","entry_url":"https://awesomerea.org/resources/reflecticon-224-lexicon-emulation-case/","entry_url_zh":"https://awesomerea.org/zh/resources/reflecticon-224-lexicon-emulation-case/","evidence_url":"https://github.com/joelanders/reflecticon-224/blob/37fde47f6cf94d4f4f96f3c233382e2c43a70354/Makefile","group":"cases","id":"reflecticon-224-lexicon-emulation-case","json_url":"https://awesomerea.org/resources/reflecticon-224-lexicon-emulation-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/reflecticon-224-lexicon-emulation-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/reflecticon-224-lexicon-emulation-case/index.md","name":"reflecticon-224: running Lexicon 224 reverb firmware on emulated hardware","name_zh":"reflecticon-224：在模拟硬件上运行 Lexicon 224 混响器固件","record_type":"resource","relationship":"independent-reconstruction","requirements":["The reviewed pin is from 2026-10-13; the repository was created on 2026-09-28. README calls it a work in progress whose documentation will follow, so the Makefile is the main map: it links the schematics, gate-, board- and ISA-level models, the C++ emulator, analog models, the WebAssembly page and the plugin. Recognized firmware sets include several 224 versions, 224X v8.1 and 224XL v8.1A and v8.21.","Users supply their own Lexicon ROM chip files, which README says stay on their computer. The page and plugin recognize known sets by SHA-256, and the repository lists those hashes, not ROM bytes. Firmware checks read a LEXICON_FIRMWARE folder with one subfolder per set and skip when it is absent. The web demo does ship program-name and slider-value catalogs keyed to specific firmware sets.","make check runs the firmware-free checks, and any target whose tool is missing, such as Verilator 5 or KiCad’s command-line tool, reports itself as skipped. The page builds with Emscripten 5.0.1 for GitHub Pages. The plugin builds with CMake and JUCE 8.0.14 as macOS AU, VST3 and standalone targets, and CI validates the AU with auval; the tagged v0.1.0-alpha.1 prerelease is an ad-hoc signed macOS 11+ build that contains no firmware.","make check-firmware runs the user’s ROMs through several layers, including service-manual signature tables at gate level. Qualification compares the emulator’s CPU state, control-store writes and DAC captures with board-level runs, and qualified.json stores expected hashes for two scenarios. A byte-exact gate compares the WebAssembly build bit for bit with the native reference. These project checks need the ROMs.","GitHub detects no repository license, so no reuse terms beyond viewing are granted; the included 8080 cores carry zlib and MIT notices. README disclaims affiliation with Lexicon or its owners, and the original firmware remains theirs. In the Hacker News thread for a related report, a commenter who identifies the repository as theirs describes paid schematic tracing and LLM agents turning schematics into Verilog."],"requirements_zh":["所审阅的固定版本提交于 2026-10-13，仓库创建于 2026-09-28。README 称项目仍在开发，文档稍后补充，因此 Makefile 是主要导览：它串联原理图、门级／板级／指令集级模型、C++ 模拟器、模拟电路模型、WebAssembly 页面与插件。可识别的固件组合包括多个 224 版本、224X v8.1 以及 224XL v8.1A 与 v8.21。","使用者需自备 Lexicon ROM 芯片文件，README 说明这些文件只留在本机。页面与插件通过 SHA-256 识别已知组合，仓库只列出这些哈希，不含 ROM 字节。固件检查读取 LEXICON_FIRMWARE 文件夹（每个组合一个子文件夹），缺少时跳过。网页演示确实附带按特定固件组合整理的程序名称与推子取值目录。","make check 运行无需固件的检查；缺少所需工具（如 Verilator 5 或 KiCad 命令行工具）的目标会报告为已跳过。页面用 Emscripten 5.0.1 构建并发布到 GitHub Pages。插件用 CMake 与 JUCE 8.0.14 构建为 macOS AU、VST3 与独立程序，CI 用 auval 验证 AU；带标签的 v0.1.0-alpha.1 预发布版是临时签名的 macOS 11+ 构建，不含任何固件。","make check-firmware 用使用者的 ROM 逐层运行检查，其中包括门级的维修手册特征值表。资格检查把模拟器的 CPU 状态、控制存储写入与 DAC 采集结果同板级运行结果比较，qualified.json 保存两个场景的预期哈希。逐字节一致性检查把 WebAssembly 构建与原生参考实现逐位比较。这些项目检查都需要 ROM。","GitHub 未检测到仓库许可证，因此除浏览外未授予其他使用权；所含 8080 核心带有 zlib 与 MIT 声明。README 声明与 Lexicon 及其权利人无关，原厂固件仍归其所有。在一份相关报告的 Hacker News 讨论中，一位自称该仓库作者的评论者提到付费请人描绘原理图，并让 LLM 智能体把原理图转为 Verilog。"],"targets":["firmware"],"url":"https://github.com/joelanders/reflecticon-224","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/SAT-R/sa3/pull/4","https://github.com/decompme/decomp.me/pull/1474","https://github.com/SAT-R/sa3/blob/f28834dd4c92ad1ed761a978210355ad63d70b88/README.md"],"category":"reconstruction-cases","description_en":"Macabeus’s dated study describes prompting Claude Sonnet 3.5 and DeepSeek R1 with assembly, similar decompiled functions and structs to write matching C for Marun, one enemy module of the community Sonic Advance 3 GBA decompilation. The resulting pull request replaced that module’s assembly and was merged; the author calls the setting unusually AI-friendly, and the project now bars LLM-origin contributions.","description_zh":"Macabeus 在注明日期的研究文章中，介绍了如何把汇编、相似的已反编译函数和结构体放进提示词，让 Claude Sonnet 3.5 与 DeepSeek R1 为社区 Sonic Advance 3 GBA 反编译项目中的敌人模块 Marun 编写匹配的 C 代码。由此产生的拉取请求替换了该模块的汇编并已合并；作者认为这一场景对 AI 格外友好，而该项目现已不接受源自大模型的贡献。","entry_url":"https://awesomerea.org/resources/sa3-marun-ai-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sa3-marun-ai-decomp-case/","evidence_url":"https://gambiconf.substack.com/p/development-journey-on-game-decompilation","group":"cases","id":"sa3-marun-ai-decomp-case","json_url":"https://awesomerea.org/resources/sa3-marun-ai-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sa3-marun-ai-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sa3-marun-ai-decomp-case/index.md","name":"Sonic Advance 3: an AI-assisted match of one enemy module","name_zh":"Sonic Advance 3：AI 辅助匹配单个敌人模块","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["The post, dated 20 May 2025 and subtitled an ongoing study, covers a single module: Marun, an enemy in the community Sonic Advance 3 GBA matching decompilation. Work began on 6 January 2025, and pull request #4, which replaced the module’s 1,154-line assembly file with 494 lines of C, was merged on 31 January; the post equates it to 0.3% of the project’s total progress. It is a bounded contribution study, not a whole-game decompilation.","Building the SA3 decompilation requires the user’s own European Sonic Advance 3 ROM, named baserom_sa3.gba and matching the release the README identifies by SHA1, plus a sufficiently recent agbcc compiler fork. The study itself worked in decomp.me scratches, putting assembly, similar decompiled functions and relevant structs into prompts for Claude Sonnet 3.5 and DeepSeek R1.","Match percentages come from decomp.me: the post reports a 96% first Sonnet 3.5 attempt that later prompts could not reproduce, a 74% DeepSeek R1 result raised to 100% by replacing memset with CpuFill16, and R1 output that usually matched at least about 60%. The merged pull request is the project-level outcome; the post reports no separate build or test.","The author calls the setting very AI-friendly because similar modules were already decompiled for use as examples and the GBA compiler is simpler and more predictable; generated C lacked project-specific macros and needed readability work. The author’s decomp.me AI-panel pull request was closed unmerged; the post says user benefit was unclear and it required a paid API key.","At the reviewed SA3 commit, the README states a strict no-LLM/no-AI policy for issues and pull requests, so that project no longer accepts this workflow. The SA3 repository has no license file at that commit, and the ROM and its assets retain their own rights."],"requirements_zh":["文章发布于 2025 年 5 月 20 日，副标题称其为持续进行的研究，只涉及一个模块：社区 Sonic Advance 3 GBA 匹配反编译项目中的敌人 Marun。工作始于 2025 年 1 月 6 日；第 4 号拉取请求以 494 行 C 代码替换了该模块 1,154 行的汇编文件，并于 1 月 31 日合并，文章称这相当于项目总进度的 0.3%。这是一次有限范围的贡献研究，而非整部游戏的反编译。","构建 SA3 反编译项目需要使用者自有的欧版 Sonic Advance 3 ROM，命名为 baserom_sa3.gba，且须与 README 以 SHA1 标明的版本一致，另需足够新的 agbcc 编译器分支。该研究本身在 decomp.me 的 scratch 中进行，把汇编、相似的已反编译函数及相关结构体放进给 Claude Sonnet 3.5 和 DeepSeek R1 的提示词。","匹配百分比来自 decomp.me：文章报告 Sonnet 3.5 首次尝试达到 96%，但之后的提示词未能复现；DeepSeek R1 的一次结果为 74%，把 memset 换成 CpuFill16 后达到 100%；R1 的输出通常至少有约 60% 的匹配度。已合并的拉取请求是项目层面的结果；文章未报告另外的构建或测试。","作者认为这一场景对 AI 非常友好，因为已有相似的模块完成反编译可作示例，而且 GBA 编译器较简单、较可预测；生成的 C 代码缺少项目特有的宏，还需要改善可读性。作者为 decomp.me 提交的 AI 面板拉取请求未经合并即被关闭；文章称其用户收益尚不明确，而且需要付费 API 密钥。","在所审阅的 SA3 提交中，README 规定了严格的禁止大模型／AI 政策，适用于议题和拉取请求，因此该项目已不再接受这种工作流。该提交中 SA3 仓库没有许可证文件，ROM 及其素材仍受各自权利约束。"],"targets":["game"],"url":"https://gambiconf.substack.com/p/development-journey-on-game-decompilation","verification":"source-reviewed","verified_at":"2026-10-18"},{"added_at":"2026-10-20","additional_evidence_urls":["https://github.com/jonaswagnr/ix500-scan/blob/24a5f7c89fc6d0c35a4d83d0879348ced153844a/vens/PROTOCOL","https://github.com/jonaswagnr/ix500-scan/blob/24a5f7c89fc6d0c35a4d83d0879348ced153844a/vens/README.md","https://github.com/jonaswagnr/ix500-scan/blob/24a5f7c89fc6d0c35a4d83d0879348ced153844a/vens/scansnap.py","https://github.com/jonaswagnr/ix500-scan/blob/24a5f7c89fc6d0c35a4d83d0879348ced153844a/scansnapd.py","https://github.com/jonaswagnr/ix500-scan/blob/24a5f7c89fc6d0c35a4d83d0879348ced153844a/app/Package.swift","https://github.com/jonaswagnr/ix500-scan/blob/24a5f7c89fc6d0c35a4d83d0879348ced153844a/app/build.sh","https://github.com/jonaswagnr/ix500-scan/blob/24a5f7c89fc6d0c35a4d83d0879348ced153844a/app/Sources/IX500Scan/ScannerService.swift","https://github.com/jonaswagnr/ix500-scan/blob/24a5f7c89fc6d0c35a4d83d0879348ced153844a/social/texte.md","https://github.com/jonaswagnr/ix500-scan/blob/24a5f7c89fc6d0c35a4d83d0879348ced153844a/LICENSE","https://github.com/bramheerink/scansnap/blob/5706688db58f45a4d3db239de6e2e93bab36bb0f/LICENSE"],"category":"reconstruction-cases","description_en":"Replaces ScanSnap Home for a Fujitsu/PFU ScanSnap iX500 on macOS with a SwiftUI app and Python service that scan over Wi-Fi through the community-reverse-engineered VENS protocol, or over USB through SANE, and produce searchable PDFs. It vendors bramheerink’s GPL-2.0 driver, extends it for macOS, and documents further handshake and hardware-status fields, including the scan-button bit. Results are author-reported; the repository publishes no tests or captures.","description_zh":"在 macOS 上以 SwiftUI 应用和 Python 后台服务替代 ScanSnap Home，为富士通／PFU ScanSnap iX500 提供扫描：Wi-Fi 经由社区逆向的 VENS 协议，USB 经由 SANE，输出可搜索的 PDF。项目内置 bramheerink 的 GPL-2.0 驱动并为 macOS 做了扩展，还记录了更多握手字段和硬件状态字段，包括扫描键状态位。结果均为作者报告，仓库未公开测试或抓包记录。","entry_url":"https://awesomerea.org/resources/ix500-scan-scansnap-wifi-case/","entry_url_zh":"https://awesomerea.org/zh/resources/ix500-scan-scansnap-wifi-case/","evidence_url":"https://github.com/jonaswagnr/ix500-scan/blob/24a5f7c89fc6d0c35a4d83d0879348ced153844a/README.md","group":"cases","id":"ix500-scan-scansnap-wifi-case","json_url":"https://awesomerea.org/resources/ix500-scan-scansnap-wifi-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/ix500-scan-scansnap-wifi-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ix500-scan-scansnap-wifi-case/index.md","name":"iX500 Scan: a macOS client for the reverse-engineered ScanSnap Wi-Fi protocol","name_zh":"iX500 Scan：基于逆向 ScanSnap Wi-Fi 协议的 macOS 客户端","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed commit 24a5f7c (three commits, all dated 2026-10-15) targets the Fujitsu/PFU ScanSnap iX500. README says ScanSnap Home 3.7 is no longer maintained and hangs on macOS 27; the project offers Wi-Fi scanning started by the device’s scan button, a USB path through SANE, and searchable PDFs with rotation, cropping, blank-page removal and OCR. No release build is published, and other ScanSnap models are not claimed.","The Wi-Fi path needs the user’s own iX500 and two values that README says only ScanSnap Home knows: the scanner’s 12-character pairing key and the paired computer’s 8-byte HostID. They are obtained once from ScanSnap Home’s own connection to that scanner; the repository includes no vendor software, firmware or captures.","Building needs macOS 14+, Xcode 15+ (Swift tools 5.10), the system Python 3 with Pillow, and Homebrew sane-backends, ocrmypdf, img2pdf and tesseract-lang. build.sh bundles the Python service and vendored driver into an ad-hoc-signed app that runs the service with /usr/bin/python3.","The protocol work extends bramheerink/scansnap, whose VENS specification says it was reverse-engineered from captures of ScanSnap Home talking to an iX500. README adds handshake fields for the paired HostID, local time and UTC offset, hardware-status bits for an empty feeder and the scan button, and a session timeout of about 40 s, and notes that Wi-Fi images always arrive as 300 dpi colour, rotated 180° with scanner background. No automated tests, captures or comparisons with ScanSnap Home output are published.","GPL-2.0, matching the vendored driver at commit 5706688, whose file header records the author’s changes. This is an unofficial client, not recovered vendor source or firmware. The repository’s draft social posts credit an evening with Claude Code for closing the remaining protocol gaps."],"requirements_zh":["审阅提交 24a5f7c（共三次提交，均为 2026-10-15）面向富士通／PFU ScanSnap iX500。README 称 ScanSnap Home 3.7 已不再维护，在 macOS 27 上会卡死；项目提供由设备扫描键触发的 Wi-Fi 扫描、经 SANE 的 USB 扫描，以及带旋转、裁边、去空白页和 OCR 的可搜索 PDF。未发布构建好的版本，也未声称支持其他 ScanSnap 型号。","Wi-Fi 扫描需要用户自己的 iX500，以及 README 所说只有 ScanSnap Home 才知道的两个值：扫描仪的 12 位配对密钥和已配对电脑的 8 字节 HostID。这两个值需从 ScanSnap Home 与该扫描仪的连接中一次性取得；仓库不包含厂商软件、固件或抓包文件。","构建需要 macOS 14+、Xcode 15+（Swift tools 5.10）、带 Pillow 的系统 Python 3，以及通过 Homebrew 安装的 sane-backends、ocrmypdf、img2pdf 和 tesseract-lang。build.sh 把 Python 服务和内置驱动打包进一个临时（ad-hoc）签名的应用，应用通过 /usr/bin/python3 运行该服务。","协议部分扩展自 bramheerink/scansnap，其 VENS 规范称是根据 ScanSnap Home 与 iX500 通信的抓包逆向得出。README 补充了握手中已配对 HostID、本地时间与 UTC 偏移的字段，空纸盒与扫描键的硬件状态位，以及约 40 秒的会话超时，并说明 Wi-Fi 图像始终以 300 dpi 彩色、旋转 180° 且带扫描仪背景的形式传回。仓库未公开自动化测试、抓包或与 ScanSnap Home 输出的对比。","采用 GPL-2.0，与内置驱动所基于的 5706688 提交一致，驱动文件头记录了作者的修改。这是非官方客户端，并非恢复的厂商源码或固件。仓库中的社交媒体草稿称，作者借助 Claude Code 用一个晚上补齐了协议中剩余的空白。"],"targets":["app","protocol"],"url":"https://github.com/jonaswagnr/ix500-scan","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/Python-roborock/local_roborock_server/blob/c3b32845c63a4bc9d1fc9dfb205b86a33ea06bf3/README.md","https://github.com/Python-roborock/local_roborock_server/blob/c3b32845c63a4bc9d1fc9dfb205b86a33ea06bf3/docs/known_limitations.md","https://github.com/Python-roborock/local_roborock_server/blob/c3b32845c63a4bc9d1fc9dfb205b86a33ea06bf3/docs/tested_vacuums.md","https://github.com/Python-roborock/local_roborock_server/blob/c3b32845c63a4bc9d1fc9dfb205b86a33ea06bf3/docs/roborock_app.md","https://github.com/Python-roborock/local_roborock_server/blob/c3b32845c63a4bc9d1fc9dfb205b86a33ea06bf3/pyproject.toml","https://github.com/Python-roborock/local_roborock_server/blob/c3b32845c63a4bc9d1fc9dfb205b86a33ea06bf3/.github/workflows/docker-release.yml","https://github.com/Python-roborock/local_roborock_server/blob/c3b32845c63a4bc9d1fc9dfb205b86a33ea06bf3/LICENSE"],"category":"reconstruction-cases","description_en":"Runs a local HTTPS and MQTT stack in place of Roborock’s cloud, so supported vacuums keep live maps and controls on an isolated network without rooting or hardware changes. The maintainer’s technical write-up recounts earlier app and traffic analysis and a later investigation in which Claude Code and Codex worked against an emulated firmware environment. Compatibility is reported per model by the project and its users.","description_zh":"运行一套本地 HTTPS 与 MQTT 服务来替代 Roborock 云端，使受支持的扫地机在隔离网络中无需 root 或改装硬件即可保留实时地图与控制。维护者的技术说明回顾了早期的应用与流量分析，以及后来借助 Claude Code 和 Codex、在模拟固件环境中开展的调查。兼容性由项目及其用户按型号报告。","entry_url":"https://awesomerea.org/resources/roborock-local-server-cloud-case/","entry_url_zh":"https://awesomerea.org/zh/resources/roborock-local-server-cloud-case/","evidence_url":"https://github.com/Python-roborock/local_roborock_server/blob/c3b32845c63a4bc9d1fc9dfb205b86a33ea06bf3/docs/technical_writeup.md","group":"cases","id":"roborock-local-server-cloud-case","json_url":"https://awesomerea.org/resources/roborock-local-server-cloud-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/roborock-local-server-cloud-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/roborock-local-server-cloud-case/index.md","name":"Roborock Local Server: a self-hosted stand-in for Roborock’s vacuum cloud","name_zh":"Roborock Local Server：自托管替代 Roborock 扫地机云端","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed version 1.2.1 (commit c3b3284) targets most Roborock vacuums on the v2 protocol; README excludes the entry-level Q series, and the tested-models page lists confirmed models, unresolved failures and certificate-chain notes. Documented limitations include firmware updates and schedules; camera streaming is verified on two models, and China-market devices reject commands outside China.","Setup needs a domain the user controls with local DNS rewriting, a valid TLS certificate, a LAN host for Docker Compose or the Home Assistant add-on, and a second Wi-Fi computer for one-time onboarding. The official Roborock app works only after an interception login step and, on Android, a patched APK; Home Assistant and the open-source LocalRock app are alternatives.","Python 3.11–3.13 with FastAPI, aiohttp, cryptography and python-roborock 4.20.0; a container image is published, and CI runs the pytest suite before building it. Tests cover onboarding, protocol authentication, MQTT proxying, certificates and scenes.","The write-up says long-running Claude Code (Opus 4.6) and Codex sessions, given the maintainer’s own rooted S7, its firmware, python-roborock and the decompiled app, helped find the remaining onboarding step after earlier manual attempts stalled. It credits Dennis Giese’s firmware research, Valetudo and other community work.","MIT license with an as-is disclaimer; the project is not affiliated with Roborock. It is a compatible server, not recovered Roborock server code, and vendor firmware or app changes may break it."],"requirements_zh":["审阅版本为 1.2.1（提交 c3b3284），面向大多数采用 v2 协议的 Roborock 扫地机；README 排除了入门级 Q 系列，已测型号页面列出了确认可用的型号、尚未解决的失败案例及证书链说明。文档所列限制包括固件更新和定时任务；摄像头直播仅在两款型号上验证过，中国大陆版设备在境外会拒绝执行命令。","部署需要用户自有并可在本地改写 DNS 的域名、有效的 TLS 证书、局域网内运行 Docker Compose 或 Home Assistant 加载项的主机，以及一台用于一次性配网的带 Wi-Fi 的电脑。官方 Roborock 应用需先完成一次拦截登录步骤，安卓端还需打补丁的 APK；也可改用 Home Assistant 或开源的 LocalRock 应用。","需要 Python 3.11–3.13，依赖 FastAPI、aiohttp、cryptography 和 python-roborock 4.20.0；项目发布了容器镜像，CI 在构建前运行 pytest 测试。测试覆盖配网、协议认证、MQTT 代理、证书与场景。","技术说明称，在早期人工尝试受阻后，长时间运行的 Claude Code（Opus 4.6）与 Codex 会话借助维护者自己已 root 的 S7、其固件、python-roborock 及反编译后的应用，帮助找到了配网中剩余的关键一步。说明致谢了 Dennis Giese 的固件研究、Valetudo 及其他社区工作。","采用 MIT 许可并附“按现状提供”的免责声明；项目与 Roborock 无关联。这是兼容的服务器实现，并非恢复的 Roborock 服务端代码，厂商固件或应用的变化可能使其失效。"],"targets":["protocol"],"url":"https://github.com/Python-roborock/local_roborock_server","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/kongdayan/wristbeam/blob/712f577ac55b476ff91e0b44565934ac0d4cad4d/Sources/GarminBar/Protocol/GFDISession.swift","https://github.com/kongdayan/wristbeam/blob/712f577ac55b476ff91e0b44565934ac0d4cad4d/Sources/GarminBar/Protocol/GFDICodec.swift","https://github.com/kongdayan/wristbeam/blob/712f577ac55b476ff91e0b44565934ac0d4cad4d/Sources/GarminBar/Protocol/GFDIFiles.swift","https://github.com/kongdayan/wristbeam/blob/712f577ac55b476ff91e0b44565934ac0d4cad4d/Sources/GarminBar/Protocol/GFDIBattery.swift","https://github.com/kongdayan/wristbeam/blob/712f577ac55b476ff91e0b44565934ac0d4cad4d/Sources/GarminBar/Protocol/GFDICoreIdentity.swift","https://github.com/kongdayan/wristbeam/blob/712f577ac55b476ff91e0b44565934ac0d4cad4d/docs/DEVICES.md","https://github.com/kongdayan/wristbeam/blob/712f577ac55b476ff91e0b44565934ac0d4cad4d/VERIFICATION.md","https://github.com/kongdayan/wristbeam/blob/712f577ac55b476ff91e0b44565934ac0d4cad4d/docs/developer/API.md","https://github.com/kongdayan/wristbeam/blob/712f577ac55b476ff91e0b44565934ac0d4cad4d/docs/developer/WATCH-REQUESTS.md","https://github.com/kongdayan/wristbeam/blob/712f577ac55b476ff91e0b44565934ac0d4cad4d/CONTRIBUTING.md","https://github.com/kongdayan/wristbeam/blob/712f577ac55b476ff91e0b44565934ac0d4cad4d/Package.swift","https://github.com/kongdayan/wristbeam/blob/712f577ac55b476ff91e0b44565934ac0d4cad4d/VERSION","https://github.com/kongdayan/wristbeam/blob/712f577ac55b476ff91e0b44565934ac0d4cad4d/CHANGELOG.md","https://github.com/kongdayan/wristbeam/blob/712f577ac55b476ff91e0b44565934ac0d4cad4d/LICENSE"],"category":"reconstruction-cases","description_en":"Implements a Garmin watch companion as a native macOS menu-bar app that pairs over Bluetooth, receives live health notifications and original FIT files, and can upload them to Garmin Connect. Source comments attribute its GFDI framing, handshake, file-transfer and status fields to analysis of a supplied Garmin Android package, cross-checked against community implementations such as Gadgetbridge. Device verification covers one watch model, and the opt-in MCP and HTTP interfaces expose only locally cached data.","description_zh":"以原生 macOS 菜单栏应用实现佳明手表的配套客户端：通过蓝牙配对，接收实时健康通知和原始 FIT 文件，并可上传至 Garmin Connect。源码注释称，GFDI 分帧、握手、文件传输和状态字段依据对一个自备佳明 Android 安装包的分析实现，并与 Gadgetbridge 等社区实现相互核对。设备验证仅涵盖一款手表；可选启用的 MCP 与 HTTP 接口只提供本地缓存的数据。","entry_url":"https://awesomerea.org/resources/wristbeam-garmin-watch-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/wristbeam-garmin-watch-protocol-case/","evidence_url":"https://github.com/kongdayan/wristbeam/blob/712f577ac55b476ff91e0b44565934ac0d4cad4d/README.md","group":"cases","id":"wristbeam-garmin-watch-protocol-case","json_url":"https://awesomerea.org/resources/wristbeam-garmin-watch-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/wristbeam-garmin-watch-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wristbeam-garmin-watch-protocol-case/index.md","name":"WristBeam: reconstructing Garmin’s watch protocol for a Mac companion","name_zh":"WristBeam：为 Mac 配套应用重建佳明手表协议","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at VERSION 0.3.7 plus unreleased changes. It needs macOS 13+, a Garmin watch prepared with heart-rate broadcast off, and, for cloud features, a Garmin China or Global account signed in through Garmin’s own page; a local mode pauses all Garmin cloud access. Application-level encryption, native MLR/CoreTransfer and desktop widgets are unsupported, and a sleeping Mac cannot sync.","Protocol source comments describe an independent Swift implementation of GFDI framing (COBS, CRC-16), multilink registration, device information, file directories and transfers, battery status and account-identity fields, each tied to named classes of a supplied Garmin Android package. Gadgetbridge, garmin-bridge and garmin-ble are cited as corroborating wire observations that were consulted, not ported. The reviewed tree contains no APK or decompiled listing; cloud history uses Connect client endpoints that the developer guide says are not a published Garmin API contract.","Building needs macOS 13+, Swift 5.9+ and Command Line Tools; native swift test and CodeQL analysis need full Xcode, which CI supplies. CONTRIBUTING lists lint, localization, secret-scan, release-pipeline and core regression scripts. Release packages are ad hoc signed and not Apple notarized.","The device matrix marks pairing, fresh notifications, original FIT download, China upload and daily charts verified only for an Instinct 2 Solar on 2026-10-13, with firmware unrecorded. Other Instinct, fēnix, epix, Forerunner, Venu and vívoactive models and real Global uploads remain unverified. VERIFICATION.md records regression counts run through Command Line Tools rather than full XCTest.","MIT covers the project, which says it is not affiliated with Garmin; Garmin services, the Android package, watch firmware and health data keep their own terms. MCP, the HTTP/HTTPS API and webhooks are off until enabled."],"requirements_zh":["审阅版本为 VERSION 0.3.7 及未发布的改动。需要 macOS 13+、已关闭心率广播的佳明手表；使用云端功能时，还需通过佳明官方页面登录佳明中国或国际账号。本地模式会暂停所有佳明云端访问。不支持应用层加密、原生 MLR／CoreTransfer 和桌面小组件，Mac 休眠时无法同步。","协议源码注释称，GFDI 分帧（COBS、CRC-16）、多链路注册、设备信息、文件目录与传输、电池状态及账号身份字段均以 Swift 独立实现，并逐项对应自备佳明 Android 安装包中的具名类。Gadgetbridge、garmin-bridge 和 garmin-ble 被列为相互印证的线上协议观察资料，仅作参考而未移植。所审阅文件树不含 APK 或反编译清单；云端历史数据使用 Connect 客户端接口，开发者指南说明这些接口并非佳明公开的 API 约定。","构建需要 macOS 13+、Swift 5.9+ 和 Command Line Tools；原生 swift test 及 CodeQL 分析需要完整 Xcode，由 CI 提供。CONTRIBUTING 列出了代码检查、本地化、密钥扫描、发布流水线及核心回归脚本。发布包为临时（ad hoc）签名，未经 Apple 公证。","设备矩阵仅将 Instinct 2 Solar 于 2026-10-13 的配对、实时通知、原始 FIT 下载、中国区上传和每日图表标为已验证，且未记录固件版本。其他 Instinct、fēnix、epix、Forerunner、Venu 和 vívoactive 型号以及国际区的实际上传仍未验证。VERIFICATION.md 记录的回归数量通过 Command Line Tools 运行，而非完整 XCTest。","MIT 覆盖项目本身，项目声明与佳明无关联；佳明服务、Android 安装包、手表固件和健康数据保留各自条款。MCP、HTTP／HTTPS API 和 Webhook 在启用前均为关闭状态。"],"targets":["app","protocol"],"url":"https://github.com/kongdayan/wristbeam","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/ohos-decompiler/abc-decompiler/blob/427c4cd9f80496236a4a3548d29a6b8aaf74b8e0/README.md#L16-L28","https://github.com/ohos-decompiler/abc-decompiler/blob/427c4cd9f80496236a4a3548d29a6b8aaf74b8e0/README.md#L38-L70","https://github.com/ohos-decompiler/abc-decompiler/blob/427c4cd9f80496236a4a3548d29a6b8aaf74b8e0/jadx-core/src/main/java/jadx/core/dex/instructions/InsnDecoder.java","https://github.com/ohos-decompiler/abc-decompiler/blob/427c4cd9f80496236a4a3548d29a6b8aaf74b8e0/jadx-core/build.gradle.kts","https://github.com/ohos-decompiler/abc-decompiler/blob/427c4cd9f80496236a4a3548d29a6b8aaf74b8e0/LICENSE","https://github.com/ohos-decompiler/abc-decompiler/releases/tag/h1","https://github.com/ohos-decompiler/abcde","https://github.com/ohos-decompiler/abc-decompiler/issues/6"],"category":"android","description_en":"Decompiler for HarmonyOS Ark bytecode (.abc), the format HarmonyOS app packages carry in modules.abc, built by adapting the jadx decompiler and reading files through a patched copy of the abcde library. Because much of Ark bytecode is semantically close to DEX, it reuses jadx's GUI, IR and passes: an .abc file dropped into the jadx-based window is shown as decompiled code. The README reports that all 227 usable instructions of the 282 Ark opcodes are implemented, most special instructions as pseudo-functions.","description_zh":"面向鸿蒙方舟字节码（.abc）的反编译工具；HarmonyOS 应用包中的 modules.abc 即为此格式。它通过改造 jadx 反编译器实现，并借助打过补丁的 abcde 库读取文件。由于方舟字节码有很大一部分与 DEX 字节码语义相近，它沿用了 jadx 的图形界面、中间表示和处理流程：把 .abc 文件拖入基于 jadx 的窗口即可查看反编译代码。README 称 282 条方舟字节码中可用的 227 条指令均已实现，其中大部分特殊指令以伪函数形式实现。","entry_url":"https://awesomerea.org/resources/abc-decompiler/","entry_url_zh":"https://awesomerea.org/zh/resources/abc-decompiler/","evidence_url":"https://github.com/ohos-decompiler/abc-decompiler/blob/427c4cd9f80496236a4a3548d29a6b8aaf74b8e0/README.md","group":"tools","id":"abc-decompiler","json_url":"https://awesomerea.org/resources/abc-decompiler/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/abc-decompiler/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/abc-decompiler/index.md","name":"abc-decompiler","name_zh":"abc-decompiler 鸿蒙方舟字节码反编译器","record_type":"resource","relationship":"foundation","requirements":["The README describes the project as still in development: decompilation passes for more readable output, a custom IR and data-flow analysis are listed as unfinished. The only release, h1, published 2024-12-20, ships a single jadx-dev-all.jar built from the reviewed master commit, and the repository has had no pushes since.","Building needs JDK 17+; the patched abcde fork must first be published to the local Maven repository and its version substituted into the Gradle files before ./gradlew dist. Input is the modules.abc file from the user's own HarmonyOS HAP package.","The repository is a modified jadx code base: jadx's DEX input, test samples and inherited CI files remain, and it has no GitHub Actions workflow of its own, so no tests of Ark bytecode output are reported.","Apache-2.0, as inherited from jadx; the abcde fork is also Apache-2.0."],"requirements_zh":["README 称项目仍在开发中：用于改善代码可读性的反编译优化模块、定制中间表示以及数据流分析均列为尚未完成。唯一的发布版本 h1 于 2024-12-20 发布，只提供一个由所审阅 master 分支提交构建的 jadx-dev-all.jar，此后仓库再无推送。","构建需要 JDK 17+；须先将打过补丁的 abcde 分支发布到本地 Maven 仓库，并在 Gradle 文件中替换为实际版本号，再执行 ./gradlew dist。输入为用户自己 HarmonyOS HAP 包中的 modules.abc 文件。","该仓库是改造过的 jadx 代码库：jadx 原有的 DEX 输入、测试样本和继承来的 CI 文件仍保留，自身没有 GitHub Actions 工作流，因此未报告针对方舟字节码输出的测试。","沿用 jadx 的 Apache-2.0 许可；abcde 分支同样采用 Apache-2.0。"],"targets":["app"],"url":"https://github.com/ohos-decompiler/abc-decompiler","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/JJTech0130/pypush/blob/71aa2e4442061596f75e6b02dfad613330127b5b/pyproject.toml","https://github.com/JJTech0130/pypush/blob/71aa2e4442061596f75e6b02dfad613330127b5b/LICENSE","https://github.com/JJTech0130/pypush/tree/71aa2e4442061596f75e6b02dfad613330127b5b/pypush","https://github.com/JJTech0130/pypush/blob/71aa2e4442061596f75e6b02dfad613330127b5b/pypush/apns/__init__.py","https://github.com/JJTech0130/pypush/blob/71aa2e4442061596f75e6b02dfad613330127b5b/pypush/apns/lifecycle.py","https://github.com/JJTech0130/pypush/blob/71aa2e4442061596f75e6b02dfad613330127b5b/pypush/apns/protocol.py","https://github.com/JJTech0130/pypush/blob/71aa2e4442061596f75e6b02dfad613330127b5b/pypush/cli/__init__.py","https://github.com/JJTech0130/pypush/blob/71aa2e4442061596f75e6b02dfad613330127b5b/tests/test_apns.py","https://github.com/JJTech0130/pypush/blob/71aa2e4442061596f75e6b02dfad613330127b5b/.github/workflows/lint.yml","https://github.com/JJTech0130/pypush/releases/tag/v2.0.2","https://pypi.org/project/pypush/2.0.2/"],"category":"reconstruction-cases","description_en":"Reimplements the client side of Apple’s private Apple Push Notification service (APNs) protocol in platform-independent Python: it activates as an Apple device, connects to the APNs courier, mints app-scoped tokens and receives push notifications. The project began as the author’s proof of concept for iMessage reverse engineering, but the current rewrite has removed IDS and iMessage support for now. It uses Apple’s services outside Apple’s official clients.","description_zh":"以与平台无关的 Python 重新实现 Apple 私有推送通知服务（APNs）协议的客户端：它以 Apple 设备身份完成激活，连接 APNs courier 服务器，生成限定于应用的令牌并接收推送通知。项目最初是作者 iMessage 逆向研究的概念验证，但当前重写版暂时移除了 IDS 和 iMessage 支持。它在 Apple 官方客户端之外使用 Apple 的服务。","entry_url":"https://awesomerea.org/resources/pypush-apns-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/pypush-apns-protocol-case/","evidence_url":"https://github.com/JJTech0130/pypush/blob/71aa2e4442061596f75e6b02dfad613330127b5b/README.md","group":"cases","id":"pypush-apns-protocol-case","json_url":"https://awesomerea.org/resources/pypush-apns-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/pypush-apns-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pypush-apns-protocol-case/index.md","name":"pypush: a Python client for Apple’s push protocol","name_zh":"pypush：Apple 推送协议的 Python 客户端","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the 2026-03-15 main head, identical to release v2.0.2 on PyPI. The README warns that the rewrite is unstable, that many features have been temporarily removed and that stability should not be expected before 3.0.0. The IDS, iMessage, GrandSlam and CloudKit packages are empty placeholders, so the earlier iMessage work is not part of this version.","Activation and connections go to Apple’s live activation and APNs servers through what the project calls Apple’s internal API, outside Apple’s official clients; the README notes that some APIs may need device identifiers. Apple’s terms for these services apply separately.","Requires Python 3.9+ with anyio, httpx (HTTP/2) and cryptography; the cli extra adds Frida, Rich and Typer. The CLI listens for notifications on a topic, and its proxy mode, meant for observing a Mac’s own APNs traffic, attaches Frida to the local apsd daemon and requires System Integrity Protection disabled and root.","Pull-request CI runs Ruff and pytest on Python 3.9–3.12 across Linux, macOS and Windows. The tests activate against Apple’s servers, open an APNs connection and round-trip a sandbox notification through a scoped token, so they depend on live services rather than offline protocol fixtures.","LICENSE is the Server Side Public License v1, and the package metadata classifies it as Other/Proprietary; the README says Beeper purchased the project and directs licensing questions to Beeper."],"requirements_zh":["审阅对象为 2026-03-15 的 main 最新提交，与 PyPI 上的 v2.0.2 版本一致。README 警告重写版尚不稳定，许多功能已被暂时移除，3.0.0 之前不应期待稳定。IDS、iMessage、GrandSlam 和 CloudKit 包都是空占位，因此早期的 iMessage 成果不在此版本中。","激活和连接会通过项目所称的 Apple 内部 API 访问 Apple 线上的激活服务器和 APNs 服务器，处于 Apple 官方客户端之外；README 指出部分 API 可能需要设备标识符。Apple 对这些服务的条款另行适用。","需要 Python 3.9+ 及 anyio、httpx（HTTP/2）和 cryptography；cli 附加依赖会加入 Frida、Rich 和 Typer。命令行可在指定主题上监听通知；其代理模式用于观察 Mac 自身的 APNs 流量，会用 Frida 附加到本机 apsd 守护进程，需要关闭系统完整性保护（SIP）并以 root 运行。","拉取请求的 CI 在 Linux、macOS 和 Windows 上以 Python 3.9–3.12 运行 Ruff 和 pytest。测试会向 Apple 服务器激活、建立 APNs 连接，并通过限定令牌往返一条沙盒通知，因此依赖线上服务，而非离线协议样本。","LICENSE 为 Server Side Public License v1，包元数据将其归类为 Other/Proprietary；README 称项目已被 Beeper 收购，许可问题需联系 Beeper。"],"targets":["protocol"],"url":"https://github.com/JJTech0130/pypush","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/marsinator358/luajit-decompiler-v2/blob/6a8a0cec48fdf175dddaca5d3fbfe3aa59b5550a/LICENSE","https://github.com/marsinator358/luajit-decompiler-v2/blob/6a8a0cec48fdf175dddaca5d3fbfe3aa59b5550a/main.h","https://github.com/marsinator358/luajit-decompiler-v2/blob/6a8a0cec48fdf175dddaca5d3fbfe3aa59b5550a/main.cpp","https://github.com/marsinator358/luajit-decompiler-v2/blob/6a8a0cec48fdf175dddaca5d3fbfe3aa59b5550a/bytecode/bytecode.cpp","https://github.com/marsinator358/luajit-decompiler-v2/releases/tag/Mar_24_2024"],"category":"game-analysis","description_en":"Decompiles LuaJIT bytecode files back into Lua source, written as a replacement for the older Python LuaJIT decompiler. The README reports full support for gotos and for stripped bytecode, including reconstructed locals and upvalues, and its boolean-expression recovery follows a published decompilation algorithm. It processes single files or whole folders and writes .lua output.","description_zh":"将 LuaJIT 字节码文件反编译回 Lua 源码，作为旧版 Python LuaJIT 反编译器的替代品编写。README 称它完整支持 goto 和去除调试信息的字节码，包括还原局部变量和上值；其布尔表达式恢复基于一篇已发表的反编译算法论文。它可处理单个文件或整个文件夹，输出 .lua 文件。","entry_url":"https://awesomerea.org/resources/luajit-decompiler-v2/","entry_url_zh":"https://awesomerea.org/zh/resources/luajit-decompiler-v2/","evidence_url":"https://github.com/marsinator358/luajit-decompiler-v2/blob/6a8a0cec48fdf175dddaca5d3fbfe3aa59b5550a/README.md","group":"tools","id":"luajit-decompiler-v2","json_url":"https://awesomerea.org/resources/luajit-decompiler-v2/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/luajit-decompiler-v2/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/luajit-decompiler-v2/index.md","name":"LuaJIT Decompiler v2","name_zh":"LuaJIT Decompiler v2 字节码反编译器","record_type":"resource","relationship":"foundation","requirements":["Users supply LuaJIT bytecode files or a folder containing them, by drag and drop or on the command line; decompiled .lua files go to an output folder beside the executable unless overridden. Options filter by extension, ignore debug info, skip files that fail instead of showing an assertion pop-up, and format output to minimize diffs.","The reader accepts bytecode format versions 1 and 2 and rejects big-endian bytecode, which the README lists as future work along with better decompilation of conditional assignments. The repository has no tests, CI or published accuracy results; the program reports how many files failed to decompile.","Windows only: the README directs users to a release executable (the Mar_24_2024 release, whose notes say it was rebuilt on 2026-05-14), and main.h lists Visual Studio, C++20, the Windows API and an unsigned default char as build requirements, with no project or build files included. A Call-of-Duty branch, four commits ahead of master, has its own release executable. Last commit at review: 2026-05-14.","MIT license text that also carries the LuaJIT and Lua copyright notices; GitHub does not classify it."],"requirements_zh":["使用者需提供 LuaJIT 字节码文件或包含这些文件的文件夹，可拖放到程序上或通过命令行传入；反编译出的 .lua 文件默认写入可执行文件旁的 output 文件夹，也可另行指定。选项包括按扩展名筛选、忽略调试信息、跳过失败文件而不弹出断言窗口，以及调整输出格式以减少差异。","读取器接受第 1 和第 2 版字节码格式，拒绝大端字节码；README 将大端支持和改进条件赋值的反编译列为待办事项。仓库没有测试、CI 或公开的准确率结果；程序会报告反编译失败的文件数。","仅支持 Windows：README 引导使用者下载发布页的可执行文件（Mar_24_2024 版本，其说明称已于 2026-05-14 重新编译），main.h 列出的构建要求为 Visual Studio、C++20、Windows API 以及默认 char 为无符号，仓库未附带项目或构建文件。另有一个 Call-of-Duty 分支，比 master 多四个提交，并有单独的发布可执行文件。审阅时最后一次提交为 2026-05-14。","许可证为 MIT 文本，并附有 LuaJIT 和 Lua 的版权声明；GitHub 未能识别其类型。"],"targets":["binary","game"],"url":"https://github.com/marsinator358/luajit-decompiler-v2","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/mandiant/flare-learning-hub/blob/ebd4e3a7dd71c0082db2748aba13e300447cd2e0/macc/README.md","https://github.com/mandiant/flare-learning-hub/blob/ebd4e3a7dd71c0082db2748aba13e300447cd2e0/ttd/README.md","https://github.com/mandiant/flare-learning-hub/blob/ebd4e3a7dd71c0082db2748aba13e300447cd2e0/LICENSE","https://github.com/mandiant/flare-learning-hub/blob/ebd4e3a7dd71c0082db2748aba13e300447cd2e0/CONTRIBUTING.md","https://docs.google.com/document/d/1I83PHeEImWacuQut02VBlkJ2-CJcuTYmt6mxa_xGqlA","https://docs.google.com/document/d/15gbXsTtWyxlUr5bxWO0wvWNHDZqxqh_LEqLanyZpdyw","https://docs.google.com/document/d/1AG76FBur7aagm36o-hNbny1X1Q3_IGHEjbP-JDsrJH4"],"category":"learning","description_en":"Free English reverse-engineering and malware-analysis modules from Mandiant's FLARE team, published as Google Docs, with lab binaries, IDA databases and scripts kept in this repository. The Malware Analysis Crash Course builds from x86 basics to reading Windows API use through assembly-patching exercises and labs with worked solutions; the other modules introduce WinDbg Time Travel Debugging for malware triage and provide a reference to how Go 1.24 programs look in Windows executables.","description_zh":"Mandiant FLARE 团队发布的免费英文逆向工程与恶意软件分析课程模块，正文以 Google Docs 形式发布，实验用二进制文件、IDA 数据库和脚本存放在本仓库中。其中的恶意软件分析速成课从 x86 基础讲到解读 Windows API 调用，穿插汇编修改练习和附详细解答的实验；其余模块介绍如何用 WinDbg 时间旅行调试（Time Travel Debugging）分诊恶意软件，并提供一份说明 Go 1.24 程序在 Windows 可执行文件中呈现方式的参考手册。","entry_url":"https://awesomerea.org/resources/flare-learning-hub/","entry_url_zh":"https://awesomerea.org/zh/resources/flare-learning-hub/","evidence_url":"https://github.com/mandiant/flare-learning-hub/blob/ebd4e3a7dd71c0082db2748aba13e300447cd2e0/README.md","group":"learn","id":"flare-learning-hub","json_url":"https://awesomerea.org/resources/flare-learning-hub/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/flare-learning-hub/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/flare-learning-hub/index.md","name":"FLARE Learning Hub","name_zh":"FLARE 学习中心","record_type":"resource","relationship":"learning","requirements":["At reviewed commit ebd4e3a (2026-03-31), the repository, first committed on 2026-03-19, holds three modules: Malware Analysis Crash Course (nine chapters, five labs, hacking exercises and flash quizzes), An Introduction to Time Travel Debugging (a demo, one triage lab and a JavaScript automation reference) and The Go Reverse Engineering Reference. Module text lives in web-published Google Docs that change outside the repository. The README promises refinements and new modules, but no commits followed 31 March by the review date.","The crash course is the entry point: it assumes Windows command-line use, Boolean logic, two's complement, basic programming and networking. The TTD module assumes basic x86 Windows reversing and WinDbg. The Go reference assumes x86 reversing and Go, and is restricted to Windows AMD64 executables built with Go 1.24.0.","The README says all modules support only Intel x86-64 environments and strongly recommends an isolated, snapshot-capable FLARE-VM virtual machine. The crash course uses IDA and FakeNet, and its exercises ship with IDA database files; the TTD module uses WinDbg, which includes TTD, and ttd.exe. Lab and demo binaries, databases and scripts are FLARE-made and come as password-protected archives. The README warns that some behave like malware and may be flagged, so they belong only in that VM; one TTD demo trace is a separate Google Drive download.","The repository is Apache-2.0; the Google Docs reviewed carry no separate license statement. The project does not accept contributions and takes errata by email."],"requirements_zh":["在所审阅的提交 ebd4e3a（2026-03-31）中，该仓库首次提交于 2026-03-19，包含三个模块：恶意软件分析速成课（九章、五个实验、汇编修改练习和随堂小测）、时间旅行调试入门（一个演示、一个分诊实验和一份 JavaScript 自动化参考）以及 Go 逆向工程参考手册。模块正文位于网页发布的 Google Docs 中，会在仓库之外更新。README 称会持续完善现有模块并发布新模块，但截至审阅日，3 月 31 日之后没有新提交。","速成课是入门起点，要求熟悉 Windows 命令行、布尔逻辑、补码，以及基本的编程和网络知识。TTD 模块要求具备基本的 x86 Windows 逆向能力并会使用 WinDbg。Go 参考手册要求具备 x86 逆向基础并熟悉 Go，内容仅限使用 Go 1.24.0 构建的 Windows AMD64 可执行文件。","README 说明所有模块目前只支持 Intel x86-64 环境，并强烈建议使用隔离且支持快照的 FLARE-VM 虚拟机。速成课使用 IDA 和 FakeNet，练习附带 IDA 数据库文件；TTD 模块使用自带 TTD 的 WinDbg 以及 ttd.exe。实验和演示用的二进制文件、数据库和脚本均由 FLARE 制作，以带密码的压缩包提供。README 提醒其中部分程序具有类似恶意软件的行为，可能被安全软件标记，因此只应在上述虚拟机中使用；TTD 的一个演示跟踪文件需另从 Google Drive 下载。","本仓库采用 Apache-2.0 许可证；所审阅的 Google Docs 未另附许可声明。项目不接受贡献，勘误通过电子邮件反馈。"],"targets":["binary"],"url":"https://github.com/mandiant/flare-learning-hub","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/lumirth/pw/blob/6dc7bc09950078fa3fe0dffa4dae34e9549a99da/docs/build.md","https://github.com/lumirth/pw/blob/6dc7bc09950078fa3fe0dffa4dae34e9549a99da/docs/source.md","https://github.com/lumirth/pw/blob/6dc7bc09950078fa3fe0dffa4dae34e9549a99da/docs/references.md","https://github.com/lumirth/pw/blob/6dc7bc09950078fa3fe0dffa4dae34e9549a99da/docs/third-party.md","https://github.com/lumirth/pw/blob/6dc7bc09950078fa3fe0dffa4dae34e9549a99da/assets/README.md","https://github.com/lumirth/pw/blob/6dc7bc09950078fa3fe0dffa4dae34e9549a99da/assets/placeholders/LICENSE.md","https://github.com/lumirth/pw/blob/6dc7bc09950078fa3fe0dffa4dae34e9549a99da/config/toolchains.json","https://github.com/lumirth/pw/blob/6dc7bc09950078fa3fe0dffa4dae34e9549a99da/LICENSE"],"category":"reconstruction-cases","description_en":"Reconstructs as C the firmware of the Pokéwalker, the pedometer accessory for Pokémon HeartGold and SoulSilver, for its Renesas H8/38606 microcontroller. With artwork from the user’s retail firmware image and a supported Renesas compiler suite, the README reports a byte-identical rebuild of the 48 KiB image; without that image, original placeholder art gives a non-matching reference build. The author describes disassembling and decompiling the retail binary, the HeartGold/SoulSilver ROMs and the candidate compilers, alongside published hardware research.","description_zh":"以 C 语言重建 Pokéwalker 的固件。Pokéwalker 是《宝可梦 心金／魂银》配套的计步器配件，采用 Renesas H8/38606 微控制器。README 报告，使用从使用者自备的零售固件镜像中取得的美术素材及受支持的 Renesas 编译器套件，可重新构建出逐字节相同的 48 KiB 镜像；没有该镜像时，项目原创的占位美术只能生成不一致的参考构建。作者称其结合已公开的硬件研究，对零售二进制文件、心金／魂银 ROM 及候选编译器进行了反汇编和反编译。","entry_url":"https://awesomerea.org/resources/pokewalker-matching-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/pokewalker-matching-decomp-case/","evidence_url":"https://github.com/lumirth/pw/blob/6dc7bc09950078fa3fe0dffa4dae34e9549a99da/README.md","group":"cases","id":"pokewalker-matching-decomp-case","json_url":"https://awesomerea.org/resources/pokewalker-matching-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/pokewalker-matching-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pokewalker-matching-decomp-case/index.md","name":"pw: a matching decompilation of the Pokéwalker firmware","name_zh":"pw：Pokéwalker 固件的一致性反编译重建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["The reviewed main branch is a single initial-release commit of 2026-09-14 with no tags or releases. The README calls the matching reconstruction complete for one image, 49,152 bytes with SHA-256 f9e210a3…d15607, and assumes it is the only Pokéwalker firmware. The source keeps 40 C90 modules whose file names encode the observed link order, and changes must preserve matching.","Users supply a lawfully obtained Pokéwalker firmware image, used only for artwork, and the Renesas H8, H8S, H8SX family C compiler package; neither is distributed, and the README withholds acquisition instructions. Only suites 6.02.01 and 6.02.02 are reported to reproduce the image. Missing artwork falls back to the bundled placeholders, which normally changes the output hash.","Builds are reported on macOS Arm64, where the 32-bit Windows compiler runs through Wibo and Rosetta, and natively on Windows x86_64; other hosts are unverified. uv supplies Python 3.11+ (3.12 by default), Ninja and Pillow from uv.lock, configure.py generates build.ninja, and macOS configuration downloads and validates the recorded Wibo release.","ninja verify requires the retail size and SHA-256 and writes verified.json; the build guide asks for that check under both compiler suites and records per-module input and output hashes to catch stale objects. Host unit tests cover the build utilities, a development check adds clang-format, Ruff and Cppcheck, and there is no CI workflow. Matching is author-reported.","Original project material is dedicated to the public domain under CC0 1.0, and the placeholder artwork carries its own CC0 notice; retail firmware and extracted artwork keep their rights. include/startup/iodefine.h is a retained Renesas HEW device header outside the CC0 dedication with no license grant, and the compiler-archive reader credits MIT-licensed ISx and Unshield. The project states no affiliation with Nintendo, The Pokémon Company, GAME FREAK or Renesas."],"requirements_zh":["所审阅的 main 分支只有 2026-09-14 的一次初始发布提交，没有标签或发行版。README 称针对单一镜像的一致性重建已经完成；该镜像大小为 49,152 字节，SHA-256 为 f9e210a3…d15607，项目假定它是唯一的 Pokéwalker 固件。源码保留为 40 个 C90 模块，文件名体现观察到的链接顺序，任何修改都必须保持一致。","使用者需自备合法取得的 Pokéwalker 固件镜像（只用于美术素材），以及 Renesas H8、H8S、H8SX 系列 C 编译器套件；仓库不分发两者，README 也不提供获取方法。据报告只有 6.02.01 和 6.02.02 两个套件能重现该镜像。缺少美术素材时会改用随附的占位素材，通常会使输出哈希不同。","据报告已在 macOS Arm64（32 位 Windows 编译器经 Wibo 和 Rosetta 运行）及 Windows x86_64（原生运行）上构建成功，其他宿主未经验证。uv 依 uv.lock 提供 Python 3.11 及以上版本（默认 3.12）、Ninja 和 Pillow，configure.py 生成 build.ninja；在 macOS 上，配置步骤会下载并校验记录在案的 Wibo 版本。","ninja verify 要求与零售镜像的大小及 SHA-256 一致，并写出 verified.json；构建指南要求在两个编译器套件下都完成这项检查，并记录每个模块的输入和输出哈希以发现过期的目标文件。宿主单元测试覆盖构建工具，开发检查另加 clang-format、Ruff 和 Cppcheck，项目没有 CI 工作流。一致性结果为作者报告。","项目原创内容以 CC0 1.0 贡献至公有领域，占位美术另附 CC0 声明；零售固件及提取的美术素材仍受各自权利约束。include/startup/iodefine.h 是保留的 Renesas HEW 器件头文件，不在 CC0 贡献范围内，也没有许可授权；编译器归档读取器注明借鉴采用 MIT 许可的 ISx 和 Unshield。项目声明与 Nintendo、The Pokémon Company、GAME FREAK 及 Renesas 均无关联。"],"targets":["firmware","game"],"url":"https://github.com/lumirth/pw","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/katana-project/slicer/blob/1881aae26eed58d12885a21305554aae2cb4ccc5/package.json","https://github.com/katana-project/slicer/tree/1881aae26eed58d12885a21305554aae2cb4ccc5/src/lib/disasm/worker","https://github.com/katana-project/slicer/blob/1881aae26eed58d12885a21305554aae2cb4ccc5/src/lib/workspace/jdk.ts","https://github.com/katana-project/slicer/blob/1881aae26eed58d12885a21305554aae2cb4ccc5/LICENSE","https://docs.katana-project.org/slicer/","https://docs.katana-project.org/slicer/reference/disasm/","https://docs.katana-project.org/slicer/reference/deobf/","https://docs.katana-project.org/slicer/reference/analysis/mapping/","https://docs.katana-project.org/slicer/reference/analysis/transformers/","https://docs.katana-project.org/slicer/reference/share/","https://slicer.run/"],"category":"jvm","description_en":"Browser-based Java reverse-engineering tool that loads class files and JAR/ZIP archives and disassembles or decompiles them with Vineflower (the default), CFR, Procyon or JASM, compiled to run in the browser, next to its own bytecode disassembler. It draws inheritance and interface graphs and per-method control-flow graphs, searches constant-pool entries, instructions and member declarations or usages, applies Tiny, SRG/TSRG/CSRG or ProGuard mappings, and offers generic transformers that strip or normalize bytecode attributes so decompilers cope better with obfuscation. A JavaScript scripting API can add disassemblers and manipulate the workspace; the README itself recommends Recaf for serious reverse engineering.","description_zh":"基于浏览器的 Java 逆向工程工具：可加载 class 文件和 JAR/ZIP 归档，使用编译为可在浏览器中运行的 Vineflower（默认）、CFR、Procyon 或 JASM 进行反汇编或反编译，另有自带的字节码反汇编器。它能绘制继承与接口实现关系图以及单个方法的控制流图，搜索常量池条目、指令以及成员声明或使用位置，可应用 Tiny、SRG/TSRG/CSRG 或 ProGuard 映射，还提供剥离或规范化字节码属性的通用转换器，帮助反编译器更好地应对混淆。JavaScript 脚本 API 可添加反汇编器并操作工作区；README 自己也建议，若要进行严肃的逆向工程，应使用 Recaf。","entry_url":"https://awesomerea.org/resources/slicer/","entry_url_zh":"https://awesomerea.org/zh/resources/slicer/","evidence_url":"https://github.com/katana-project/slicer/blob/1881aae26eed58d12885a21305554aae2cb4ccc5/README.md","group":"tools","id":"slicer","json_url":"https://awesomerea.org/resources/slicer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/slicer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/slicer/index.md","name":"slicer","name_zh":"slicer 浏览器端 Java 逆向工具","record_type":"resource","relationship":"foundation","requirements":["Runs as the hosted web app at slicer.run and can be installed as a PWA. The repository has no releases or tags, so this entry pins the reviewed main commit (2026-09-19); local builds are a Vite and Svelte app built with pnpm, and the repository has no CI workflow. The documentation says slicer is in active development and that features may be missing.","The documentation states that no data is sent to any server and that decompilers run locally in the browser; JDK library classes are fetched on demand from data.slicer.run, and URL parameters can load a JAR, mapping file or script from another site. Input is class files or JAR/ZIP archives from software the user may analyze; HPROF heap dumps and Android binary XML can also be viewed.","The documentation warns that decompiled output is a best-effort approximation that may not be valid Java, especially for code from non-javac compilers or obfuscators. slicer has no obfuscator-specific deobfuscation, and its remapper does not propagate names through inheritance.","MIT license for slicer; bundled components such as the Vineflower and Procyon decompilers are Apache-2.0."],"requirements_zh":["以 slicer.run 上托管的网页应用形式运行，也可安装为 PWA。仓库没有发布版本或标签，因此本条目固定到所审阅的 main 分支提交（2026-09-19）；本地构建是用 pnpm 构建的 Vite 与 Svelte 应用，仓库没有配置 CI 工作流。文档称 slicer 仍在积极开发中，部分功能可能缺失。","文档称不会向任何服务器发送数据，反编译器均在浏览器本地运行；JDK 库类会按需从 data.slicer.run 获取，URL 参数还可从其他网站加载 JAR、映射文件或脚本。输入为用户有权分析的软件中的 class 文件或 JAR/ZIP 归档；也可查看 HPROF 堆转储和 Android 二进制 XML。","文档提醒，反编译输出只是尽力而为的近似结果，未必是合法的 Java 代码，对非 javac 编译器或混淆器生成的代码尤其如此。slicer 没有针对特定混淆器的反混淆功能，其重映射器也不会沿继承关系传播名称。","slicer 本身采用 MIT 许可；其中包含的 Vineflower 和 Procyon 反编译器等组件采用 Apache-2.0 许可。"],"targets":["app"],"url":"https://github.com/katana-project/slicer","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/SteamRE/SteamKit/blob/49387aec55c24104946af7a7b160148358e538b4/SteamKit2/SteamKit2/SteamKit2.csproj","https://github.com/SteamRE/SteamKit/blob/49387aec55c24104946af7a7b160148358e538b4/global.json","https://github.com/SteamRE/SteamKit/blob/49387aec55c24104946af7a7b160148358e538b4/.gitmodules","https://github.com/SteamRE/SteamKit/tree/49387aec55c24104946af7a7b160148358e538b4/Samples","https://github.com/SteamRE/SteamKit/blob/49387aec55c24104946af7a7b160148358e538b4/Resources/NetHook2/readme.md","https://github.com/SteamRE/SteamKit/blob/49387aec55c24104946af7a7b160148358e538b4/Resources/ProtobufDumper/ProtobufDumper/ExecutableScanner.cs","https://github.com/SteamRE/SteamKit/blob/49387aec55c24104946af7a7b160148358e538b4/Resources/SteamLanguage/emsg.steamd","https://github.com/SteamRE/SteamKit/blob/49387aec55c24104946af7a7b160148358e538b4/.github/workflows/steamkit2-build.yaml","https://github.com/SteamRE/SteamKit/blob/49387aec55c24104946af7a7b160148358e538b4/.github/workflows/update-protobufs.yaml","https://github.com/SteamRE/SteamKit/blob/49387aec55c24104946af7a7b160148358e538b4/SteamKit2/Tests/Tests.csproj","https://github.com/SteamRE/SteamKit/blob/49387aec55c24104946af7a7b160148358e538b4/LICENSE","https://github.com/SteamRE/SteamKit/releases/tag/3.5.0","https://www.nuget.org/packages/SteamKit2/3.4.0"],"category":"protocol-analysis","description_en":".NET library that implements the client side of Valve’s Steam network protocol: connection-manager sessions, authentication, friends, unified service and Game Coordinator messages, Web API calls and CDN depot downloads. Message classes are generated from Steam protobufs tracked in a submodule and from the project’s own SteamLanguage definitions. Its Resources tree adds protocol-research tools: NetHook2, a Windows DLL that hooks a running Steam client to dump the network messages it exchanges, NetHookAnalyzer2 for viewing those dumps, and ProtobufDumper for recovering protobuf definitions from executables.","description_zh":"实现 Valve Steam 网络协议客户端的 .NET 库，涵盖连接管理服务器会话、身份验证、好友、统一服务消息与 Game Coordinator 消息、Web API 调用以及 CDN depot 下载。消息类由子模块跟踪的 Steam protobuf 和项目自有的 SteamLanguage 定义生成。其 Resources 目录还提供协议研究工具：NetHook2 是挂钩正在运行的 Steam 客户端、转储其收发网络消息的 Windows DLL，NetHookAnalyzer2 用于查看这些转储，ProtobufDumper 则从可执行文件中恢复 protobuf 定义。","entry_url":"https://awesomerea.org/resources/steamkit/","entry_url_zh":"https://awesomerea.org/zh/resources/steamkit/","evidence_url":"https://github.com/SteamRE/SteamKit/blob/49387aec55c24104946af7a7b160148358e538b4/readme.md","group":"tools","id":"steamkit","json_url":"https://awesomerea.org/resources/steamkit/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/steamkit/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/steamkit/index.md","name":"SteamKit","name_zh":"SteamKit Steam 网络协议库","record_type":"resource","relationship":"foundation","requirements":["The reviewed master head is identical to GitHub release 3.5.0 of 2026-10-19; at review NuGet still listed 3.4.0 as the newest SteamKit2 package. The README requires the .NET 10 runtime to use the library and the .NET 10 SDK to build it, although the library project multi-targets net8.0 and net10.0. Documentation consists of XML API docs, the wiki and numbered samples covering login, QR authentication, web cookies, friends, Web API and a Dota Game Coordinator request.","Authenticated features need the user’s own Steam account. The library follows Valve’s undocumented, changing protocol: a weekly workflow regenerates message classes from the SteamTracking protobuf submodule and opens a pull request, and the NetHook2 readme notes that releases can lag behind Steam changes.","NetHook2 is a Windows-only C++ DLL built with Visual Studio 2022 and vcpkg that needs the x86 Visual C++ redistributable. Its readme says it depends on binary signature scans of the Steam client that updates can break, and that Steam may crash while it is attached. NetHookAnalyzer2 is a Windows GUI; CI publishes both as workflow artifacts. They inspect the user’s own client traffic.","CI builds the library, SteamLanguage parser, protobuf tools and samples on Windows, macOS and Linux (x64 and ARM) and runs the xUnit v3 test project, whose fixtures include recorded packets and small depot manifest and chunk samples. The tests check parsing, crypto helpers, async jobs and depot handling, not equivalence with Valve’s client.","LGPL-2.1 (LICENSE). The tracked Steam protobuf definitions come from a separate submodule, and Valve’s services and terms apply independently of the library license."],"requirements_zh":["所审阅的 master 最新提交与 2026-10-19 的 GitHub 3.5.0 版完全一致；审阅时 NuGet 上最新的 SteamKit2 包仍为 3.4.0。README 要求使用该库需 .NET 10 运行时、构建需 .NET 10 SDK，但库项目同时面向 net8.0 和 net10.0。文档包括 XML API 文档、wiki 以及按编号排列的示例，涵盖登录、二维码认证、网页 Cookie、好友、Web API 和 Dota Game Coordinator 请求。","需要身份验证的功能要用用户自己的 Steam 账号。该库所跟随的 Valve 协议没有公开文档且不断变化：每周运行的工作流会根据 SteamTracking protobuf 子模块重新生成消息类并提交拉取请求，NetHook2 的说明也指出版本发布可能落后于 Steam 的变化。","NetHook2 是仅限 Windows 的 C++ DLL，使用 Visual Studio 2022 和 vcpkg 构建，需要 x86 版 Visual C++ 运行库。其说明称它依赖对 Steam 客户端的二进制特征扫描，客户端更新可能使之失效，挂接期间 Steam 也可能崩溃。NetHookAnalyzer2 是 Windows 图形界面工具；CI 会把两者作为工作流产物发布。它们检查的是用户自己客户端的流量。","CI 在 Windows、macOS 和 Linux（x64 与 ARM）上构建该库、SteamLanguage 解析器、protobuf 工具和示例，并运行 xUnit v3 测试项目；测试样本包括录制的数据包以及小型 depot 清单和数据块样本。测试检查解析、加密辅助函数、异步任务和 depot 处理，并不检验与 Valve 客户端的等价性。","采用 LGPL-2.1（LICENSE）。所跟踪的 Steam protobuf 定义来自独立的子模块，Valve 的服务与条款独立于该库的许可证适用。"],"targets":["game","protocol"],"url":"https://github.com/SteamRE/SteamKit","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/dekuNukem/Nintendo_Switch_Reverse_Engineering/blob/b354f21ae81f7b0d1d060b2b61e66ad0d9bc1756/bluetooth_hid_notes.md","https://github.com/dekuNukem/Nintendo_Switch_Reverse_Engineering/blob/b354f21ae81f7b0d1d060b2b61e66ad0d9bc1756/bluetooth_hid_subcommands_notes.md","https://github.com/dekuNukem/Nintendo_Switch_Reverse_Engineering/blob/b354f21ae81f7b0d1d060b2b61e66ad0d9bc1756/spi_flash_notes.md","https://github.com/dekuNukem/Nintendo_Switch_Reverse_Engineering/blob/b354f21ae81f7b0d1d060b2b61e66ad0d9bc1756/USB-HID-Notes.md","https://github.com/dekuNukem/Nintendo_Switch_Reverse_Engineering/blob/b354f21ae81f7b0d1d060b2b61e66ad0d9bc1756/imu_sensor_notes.md","https://github.com/dekuNukem/Nintendo_Switch_Reverse_Engineering/blob/b354f21ae81f7b0d1d060b2b61e66ad0d9bc1756/rumble_data_table.md","https://github.com/dekuNukem/Nintendo_Switch_Reverse_Engineering/blob/b354f21ae81f7b0d1d060b2b61e66ad0d9bc1756/joycon_reader/README.md","https://github.com/dekuNukem/Nintendo_Switch_Reverse_Engineering/blob/b354f21ae81f7b0d1d060b2b61e66ad0d9bc1756/packet_parse/nxbt/README.md"],"category":"learning","description_en":"Notes begun by dekuNukem in 2017 and extended by contributors on how the Joy-Con, Pro Controller and parts of the Switch console and dock work, worked out from teardowns, logic-analyzer captures and packet logs. Markdown files cover the Joy-Con board test points and rail-connector pinout, the wired serial handshake with its CRC-8 checksum, Bluetooth HID input and output reports with 32 documented subcommands, the USB HID commands of the Pro Controller and charging grip, the SPI flash memory map with stick and 6-axis calibration, IMU conversion formulas and rumble encoding tables. The repository also keeps STM32 test firmware that plays the console or a Joy-Con on the rail, a Wireshark dissector for the Bluetooth traffic, and the captures behind the notes.","description_zh":"由 dekuNukem 于 2017 年发起、众多贡献者陆续补充的笔记，记录 Joy-Con、Pro 手柄以及 Switch 主机与底座部分硬件的工作方式，依据来自拆机、逻辑分析仪抓取和数据包记录。各 Markdown 文件涵盖 Joy-Con 电路板测试点与滑轨接口引脚定义、带 CRC-8 校验的有线串口握手、蓝牙 HID 输入与输出报告及其中记录的 32 个子命令、Pro 手柄与充电握把的 USB HID 命令、含摇杆与六轴校准数据的 SPI 闪存布局、IMU 换算公式以及振动编码表。仓库还保存了在滑轨接口上扮演主机或 Joy-Con 的 STM32 测试固件、用于解析蓝牙流量的 Wireshark 解析器，以及笔记所依据的抓取数据。","entry_url":"https://awesomerea.org/resources/nintendo-switch-joycon-re-notes/","entry_url_zh":"https://awesomerea.org/zh/resources/nintendo-switch-joycon-re-notes/","evidence_url":"https://github.com/dekuNukem/Nintendo_Switch_Reverse_Engineering/blob/b354f21ae81f7b0d1d060b2b61e66ad0d9bc1756/README.md","group":"learn","id":"nintendo-switch-joycon-re-notes","json_url":"https://awesomerea.org/resources/nintendo-switch-joycon-re-notes/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/nintendo-switch-joycon-re-notes/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/nintendo-switch-joycon-re-notes/index.md","name":"Nintendo Switch Reverse Engineering","name_zh":"Nintendo Switch 逆向工程笔记","record_type":"resource","relationship":"learning","requirements":["Reviewed at commit b354f21 (2026-08-21). Of 277 commits, 228 date from 2017 and most others from 2018–2021; the 2026 changes document the console's sanity checks on stick calibration. The notes describe the original Joy-Con and Pro Controller, listing controller firmware 3.89 as the latest, and several fields remain marked unknown, so newer firmware and controllers need separate checking.","Following the notes needs one's own controller. The wired-protocol work involves opening a Joy-Con and connecting its rail connector, which uses 1.8 V logic, to a logic analyzer or microcontroller; the Bluetooth and USB notes assume a host that can exchange raw HID reports, and their sample C code uses hidapi-style calls. No controller or dock firmware is included: the README says a dock firmware dump was made but is not posted.","The joycon_reader and joycon_spoofer projects target an STM32F072 and were generated with STM32CubeMX for Keil MDK-ARM; their build outputs are committed alongside the sources. The nxbt dissector has to be compiled as a plugin within a Wireshark source build, a Lua script dissects Bluetooth traffic captured over USB, and small Python scripts parse captures and compute the serial checksum. The .logicdata captures need logic-analyzer software that reads that format.","The Bluetooth notes also document SPI flash write and sector-erase and firmware-update commands, with warnings about erasing whole sectors; the field meanings come from the contributors' own captures and tests.","GitHub detects no license and the repository has no license file, so the notes state no reuse terms; a datasheets folder holds copies of third-party chip datasheets, and the Lua dissector says it is provided with no license. The README credits the many contributors."],"requirements_zh":["审阅提交为 b354f21（2026-08-21）。全部 277 个提交中有 228 个来自 2017 年，其余大多在 2018–2021 年；2026 年的修改补充了主机对摇杆校准数据所做的合理性检查。笔记针对初代 Joy-Con 和 Pro 手柄，列出的最新手柄固件为 3.89，且仍有若干字段标为未知，因此较新的固件和手柄需另行核实。","照着笔记操作需要自己的手柄。有线协议部分需要拆开 Joy-Con，将其滑轨接口（1.8 V 逻辑电平）接到逻辑分析仪或单片机上；蓝牙与 USB 部分假定主机能收发原始 HID 报告，示例 C 代码使用 hidapi 风格的调用。仓库不含任何手柄或底座固件：README 称已制作底座固件转储，但并未发布。","joycon_reader 和 joycon_spoofer 两个项目面向 STM32F072，由 STM32CubeMX 生成并使用 Keil MDK-ARM 构建，构建产物与源码一同提交。nxbt 解析器需要在 Wireshark 源码构建中作为插件编译；另有一个 Lua 脚本用于解析经 USB 抓取的蓝牙流量，几个小型 Python 脚本用于解析抓取数据和计算串口校验和。.logicdata 抓取文件需要能读取该格式的逻辑分析仪软件。","蓝牙笔记还记录了 SPI 闪存写入、扇区擦除和固件更新命令，并提醒擦除会作用于整个扇区；各字段含义来自贡献者自己的抓取与测试。","GitHub 未检测到许可证，仓库也没有许可证文件，因此笔记未声明复用条款；datasheets 文件夹存放第三方芯片数据手册的副本，Lua 解析器注明不附带许可证。README 致谢了众多贡献者。"],"targets":["firmware","protocol"],"url":"https://github.com/dekuNukem/Nintendo_Switch_Reverse_Engineering","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/maddiestone/AndroidAppRE/tree/17f9eeb5cb190d31cd90e9b9c7967978ea7a9d10","https://github.com/maddiestone/AndroidAppRE/blob/17f9eeb5cb190d31cd90e9b9c7967978ea7a9d10/reversing_dex.md","https://github.com/maddiestone/AndroidAppRE/blob/17f9eeb5cb190d31cd90e9b9c7967978ea7a9d10/reversing_native_libs.md","https://github.com/maddiestone/AndroidAppRE/blob/17f9eeb5cb190d31cd90e9b9c7967978ea7a9d10/obfuscation.md","https://github.com/maddiestone/AndroidAppRE/blob/17f9eeb5cb190d31cd90e9b9c7967978ea7a9d10/conclusion.md","https://github.com/maddiestone/AndroidAppRE/blob/17f9eeb5cb190d31cd90e9b9c7967978ea7a9d10/README.md"],"category":"learning","description_en":"Maddie Stone's free English workshop introducing static reverse engineering of Android apps, published as GitHub Pages. Its chapters cover app components and entry points, Dalvik bytecode and smali, decompiling DEX with jadx, finding and reading JNI native libraries in Ghidra, and string deobfuscation. Seven exercises with written solutions apply this to triaging malware samples and spotting command-execution flaws in pre-installed apps.","description_zh":"Maddie Stone 编写的免费英文工作坊，以 GitHub Pages 发布，入门讲解 Android 应用的静态逆向工程。各章涵盖应用组件与入口点、Dalvik 字节码与 smali、用 jadx 反编译 DEX、在 Ghidra 中定位并阅读 JNI 原生库，以及字符串去混淆。七个附书面解答的练习将这些方法用于分诊恶意软件样本，以及找出预装应用中的命令执行缺陷。","entry_url":"https://awesomerea.org/resources/android-app-re-101/","entry_url_zh":"https://awesomerea.org/zh/resources/android-app-re-101/","evidence_url":"https://github.com/maddiestone/AndroidAppRE/blob/17f9eeb5cb190d31cd90e9b9c7967978ea7a9d10/index.md","group":"learn","id":"android-app-re-101","json_url":"https://awesomerea.org/resources/android-app-re-101/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/android-app-re-101/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/android-app-re-101/index.md","name":"Android App Reverse Engineering 101","name_zh":"Android 应用逆向工程 101","record_type":"resource","relationship":"learning","requirements":["Reviewed at commit 17f9eeb, the last default-branch commit (2020-04-29); most pages date from 2019 and the material is not being extended. The introduction says the workshop covers static analysis only and does not teach app development, malware analysis or vulnerability hunting themselves; the conclusion points to Frida and dynamic analysis as next steps.","Exercises are designed for the author's Ubuntu 18.04 64-bit VM image, offered for VirtualBox and VMware from Google Drive, with jadx and Ghidra installed. The exercise APKs (apps triaged as possible malware and two pre-installed vendor apps, each named with a SHA-256 digest in most exercises) exist only inside that VM; the repository holds Markdown pages and images and no APKs.","The native-library chapter assumes some ARM assembly, pointing to outside tutorials, and says every exercise library also has an x86 build. The pages were last updated in 2020, so their screenshots may not match current jadx and Ghidra releases.","The repository has no license file, so reuse terms for the text are not stated; the pages credit the Android robot logo to Google under CC BY 3.0."],"requirements_zh":["审阅提交为 17f9eeb，即默认分支的最后一次提交（2020-04-29）；大部分页面写于 2019 年，内容已不再扩充。导言说明工作坊只讲静态分析，不涉及应用开发、恶意软件分析或漏洞挖掘本身的细节；结语推荐将 Frida 与动态分析作为后续方向。","练习按作者提供的 Ubuntu 18.04 64 位虚拟机镜像设计，镜像通过 Google Drive 提供 VirtualBox 和 VMware 两种格式，预装 jadx 和 Ghidra。练习用的 APK（若干需判断是否为恶意软件的应用和两个厂商预装应用，多数练习给出其 SHA-256 摘要）只存在于该虚拟机中；仓库本身只包含 Markdown 页面和图片，没有任何 APK。","原生库一章默认读者具备一定的 ARM 汇编基础，并推荐了外部教程；文中说明每个练习用的原生库都另有 x86 版本。页面最后更新于 2020 年，其截图可能与当前版本的 jadx 和 Ghidra 不一致。","仓库没有许可证文件，因此正文的复用条款未作说明；页面注明 Android 机器人标志来自 Google，按 CC BY 3.0 使用。"],"targets":["app","binary"],"url":"https://www.ragingrock.com/AndroidAppRE/","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/koopthekoopa/wii-ipl/blob/f4c09f4001c5a0b9af734ad1e3f80a54c5e5723c/CONTRIBUTING.md","https://github.com/koopthekoopa/wii-ipl/blob/f4c09f4001c5a0b9af734ad1e3f80a54c5e5723c/configure.py","https://github.com/koopthekoopa/wii-ipl/blob/f4c09f4001c5a0b9af734ad1e3f80a54c5e5723c/config/43U/config.yml","https://github.com/koopthekoopa/wii-ipl/blob/f4c09f4001c5a0b9af734ad1e3f80a54c5e5723c/config/43U/build.sha1","https://github.com/koopthekoopa/wii-ipl/blob/f4c09f4001c5a0b9af734ad1e3f80a54c5e5723c/.github/workflows/build.yml","https://github.com/koopthekoopa/wii-ipl/blob/f4c09f4001c5a0b9af734ad1e3f80a54c5e5723c/libs/RVL_SDK/README.md","https://github.com/koopthekoopa/wii-ipl/blob/f4c09f4001c5a0b9af734ad1e3f80a54c5e5723c/libs/NW4R/README.md","https://github.com/koopthekoopa/wii-ipl/blob/f4c09f4001c5a0b9af734ad1e3f80a54c5e5723c/libs/RVLMiddleware/README.md","https://github.com/koopthekoopa/wii-ipl/blob/f4c09f4001c5a0b9af734ad1e3f80a54c5e5723c/libs/RVL_SDK/src/bte/NOTICE","https://github.com/koopthekoopa/wii-ipl/blob/f4c09f4001c5a0b9af734ad1e3f80a54c5e5723c/src/scene/nakamuraTest/gamespy/README.md","https://github.com/koopthekoopa/wii-ipl/blob/f4c09f4001c5a0b9af734ad1e3f80a54c5e5723c/LICENSE","https://decomp.dev/koopthekoopa/wii-ipl/43U"],"category":"reconstruction-cases","description_en":"A work-in-progress decompilation of the Wii Menu, the console’s System Menu (IPL), targeting version 4.3 in its USA, European, Japanese and Korean builds. It recovers the menu’s own code together with the Revolution SDK, NintendoWare (NW4R), EGG and middleware libraries linked into it, matched unit by unit against the original executable with decomp-toolkit and objdiff. The repository holds no assets or assembly; a build needs the user’s own Wii Menu WAD and yields only main.dol.","description_zh":"Wii Menu（即主机的 System Menu，IPL）的反编译重建，仍在进行中，针对 4.3 版的美、欧、日、韩四个版本。项目重建菜单自身的代码，以及链接进其中的 Revolution SDK、NintendoWare（NW4R）、EGG 和中间件库，并借助 decomp-toolkit 与 objdiff 逐个编译单元与原可执行文件比对。仓库不含任何素材或汇编；构建需要使用者自己的 Wii Menu WAD，且只生成 main.dol。","entry_url":"https://awesomerea.org/resources/wii-menu-ipl-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/wii-menu-ipl-decomp-case/","evidence_url":"https://github.com/koopthekoopa/wii-ipl/blob/f4c09f4001c5a0b9af734ad1e3f80a54c5e5723c/README.md","group":"cases","id":"wii-menu-ipl-decomp-case","json_url":"https://awesomerea.org/resources/wii-menu-ipl-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/wii-menu-ipl-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wii-menu-ipl-decomp-case/index.md","name":"wii-ipl: a decompilation of the Wii Menu (System Menu 4.3)","name_zh":"wii-ipl：Wii Menu（System Menu 4.3）的反编译重建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["The reviewed main commit has no releases or tags. decomp.dev’s report for that commit puts 4.3U at 58.5% matched code, 8,837 of 12,563 functions (70.3%) and 45.2% fully linked code, with the menu’s own code at 53.6% matched; library READMEs mark each RVL_SDK, NW4R, EGG, RevoEX and middleware component as matching, equivalent or not yet matching. The build yields main.dol, not a WAD, and the README warns that the code is not fully shiftable because no SEL file is generated.","Users supply their own Wii Menu 4.3 WAD for the selected version (4.3U by default, or 4.3E, 4.3J or 4.3K); the README states that the repository contains no assets or assembly of the executable. Each version’s configuration pins the SHA-1 of the target main.dol.","Builds need Python and Ninja on Windows, macOS or Linux. configure.py pins decomp-toolkit v1.7.5, objdiff v3.4.5, binutils 2.42-1 and the 20251118 compiler bundle for Metrowerks CodeWarrior (GC/3.0a5.2 as the linker version), and wibo runs the 32-bit Windows tools on macOS and Linux. CONTRIBUTING lists Ghidra with a shared project, IDA/Hex-Rays, m2c and decomp.me as decompiling aids and objdiff for diffing.","CI builds all four versions in a private container that supplies the original files, then uploads map files and progress reports; the percentages above come from those reports.","LICENSE is CC0 1.0. The BTE Bluetooth library notes code taken from Android’s bluedroid under Apache-2.0, and the GameSpy SDK subset is BSD-3-Clause. The decompiled third-party middleware (JustSystems ATOK, Zi eZiText, TMC JPEG, eSOL PrFILE2) and the Opera WWW headers carry no separate grants, and the Wii Menu keeps Nintendo’s rights. CONTRIBUTING forbids using AI to decompile code and asks contributors to avoid AI-only matching forks."],"requirements_zh":["所审阅的 main 提交没有发行版或标签。decomp.dev 针对该提交的报告显示，4.3U 的代码匹配率为 58.5%，12,563 个函数中有 8,837 个匹配（70.3%），完全链接的代码占 45.2%，其中菜单自身代码的匹配率为 53.6%；各库的 README 标明 RVL_SDK、NW4R、EGG、RevoEX 及中间件各组件是一致、等价还是尚未一致。构建只生成 main.dol 而非 WAD，README 还警告由于不生成 SEL 文件，代码并非完全可移位。","使用者需自备所选版本的 Wii Menu 4.3 WAD（默认 4.3U，也可选 4.3E、4.3J 或 4.3K）；README 声明仓库不含任何素材或该可执行文件的汇编。每个版本的配置都固定了目标 main.dol 的 SHA-1。","构建需要 Python 和 Ninja，可在 Windows、macOS 或 Linux 上进行。configure.py 固定 decomp-toolkit v1.7.5、objdiff v3.4.5、binutils 2.42-1 以及 Metrowerks CodeWarrior 的 20251118 编译器包（链接器版本为 GC/3.0a5.2），在 macOS 和 Linux 上由 wibo 运行 32 位 Windows 工具。CONTRIBUTING 列出 Ghidra（含共享项目）、IDA/Hex-Rays、m2c 和 decomp.me 作为反编译辅助，并用 objdiff 做差异比较。","CI 在提供原始文件的私有容器中构建全部四个版本，并上传映射文件和进度报告；上述百分比即来自这些报告。","LICENSE 为 CC0 1.0。BTE 蓝牙库注明含有取自 Android bluedroid 的代码，采用 Apache-2.0；GameSpy SDK 子集采用 BSD-3-Clause。反编译的第三方中间件（JustSystems ATOK、Zi eZiText、TMC JPEG、eSOL PrFILE2）及 Opera WWW 头文件没有单独授权，Wii Menu 本身的权利仍归 Nintendo。CONTRIBUTING 禁止用 AI 反编译代码，并要求避开仅靠 AI 追求完全一致的分叉。"],"targets":["firmware","game"],"url":"https://github.com/koopthekoopa/wii-ipl","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/Diniboy1123/usque/blob/6aa03fc97d12848dce34eedbd187fb1077b5d1ea/RESEARCH.md","https://github.com/Diniboy1123/usque/blob/6aa03fc97d12848dce34eedbd187fb1077b5d1ea/go.mod","https://github.com/Diniboy1123/usque/blob/6aa03fc97d12848dce34eedbd187fb1077b5d1ea/api/masque.go","https://github.com/Diniboy1123/usque/blob/6aa03fc97d12848dce34eedbd187fb1077b5d1ea/api/tunnel.go","https://github.com/Diniboy1123/usque/blob/6aa03fc97d12848dce34eedbd187fb1077b5d1ea/cmd/nativetun_windows.go","https://github.com/Diniboy1123/usque/blob/6aa03fc97d12848dce34eedbd187fb1077b5d1ea/.github/workflows/ci.yml","https://github.com/Diniboy1123/usque/blob/6aa03fc97d12848dce34eedbd187fb1077b5d1ea/goreleaser.yml","https://github.com/Diniboy1123/usque/blob/6aa03fc97d12848dce34eedbd187fb1077b5d1ea/Dockerfile","https://github.com/Diniboy1123/usque/blob/6aa03fc97d12848dce34eedbd187fb1077b5d1ea/LICENSE.md","https://github.com/Diniboy1123/usque/releases/tag/v4.2.1","https://datatracker.ietf.org/doc/rfc9484/"],"category":"reconstruction-cases","description_en":"Reimplements the MASQUE mode of Cloudflare’s WARP client in Go, tunnelling IP traffic over QUIC/HTTP/3 with Connect-IP (RFC 9484) and exposing it as a native TUN device, SOCKS5 or HTTP proxies, TCP-only L4 proxies or port forwarding. RESEARCH.md describes how the author worked out device enrollment, TLS client authentication and Cloudflare’s non-standard cf-connect-ip variant by analyzing the official Android client with Frida, mitmproxy, JADX, IDA Free and Wireshark. It registers with and connects to Cloudflare’s service outside the official client.","description_zh":"用 Go 重新实现 Cloudflare WARP 客户端的 MASQUE 模式：通过基于 QUIC/HTTP/3 的 Connect-IP（RFC 9484）隧道传输 IP 流量，并以原生 TUN 设备、SOCKS5 或 HTTP 代理、仅 TCP 的 L4 代理或端口转发等形式提供。RESEARCH.md 记录了作者如何借助 Frida、mitmproxy、JADX、IDA Free 和 Wireshark 分析官方 Android 客户端，弄清设备注册、TLS 客户端认证以及 Cloudflare 非标准的 cf-connect-ip 变体。它在官方客户端之外向 Cloudflare 服务注册并建立连接。","entry_url":"https://awesomerea.org/resources/usque-warp-masque-client-case/","entry_url_zh":"https://awesomerea.org/zh/resources/usque-warp-masque-client-case/","evidence_url":"https://github.com/Diniboy1123/usque/blob/6aa03fc97d12848dce34eedbd187fb1077b5d1ea/README.md","group":"cases","id":"usque-warp-masque-client-case","json_url":"https://awesomerea.org/resources/usque-warp-masque-client-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/usque-warp-masque-client-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/usque-warp-masque-client-case/index.md","name":"usque: an open reimplementation of Cloudflare WARP’s MASQUE mode","name_zh":"usque：Cloudflare WARP MASQUE 模式的开源再实现","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the 2026-07-20 main head, identical to release v4.2.1. The README calls the project early-stage, says its Go API is unstable if used as a library, and states that only the Linux amd64 release binary was tested, although builds are published for Android, Linux, Windows and macOS on several architectures. RESEARCH.md is a narrative research log; the concise protocol document the README plans has not been written.","Requires access to Cloudflare’s WARP service: the register command creates a new WARP account and enrolls a device key, and the generated config holds that registration’s keys and tokens. The tool uses Cloudflare’s service outside the official client; the README says it is not affiliated with, endorsed by or reviewed by Cloudflare, asks users not to abuse the service and notes that the tool is detectable. ZeroTrust login needs SSO the tool cannot perform.","Building needs Go 1.26.3+ with CGO disabled. The project depends on the author’s fork of connect-ip-go because, the README says, Cloudflare’s implementation is not fully RFC 9484-compliant; quic-go carries the connection, and gVisor and wireguard-go netstacks let the proxy modes run in user space without root. Native TUN mode is limited to Linux and Windows, while the README’s Known Issues list still says Linux only. A Dockerfile is provided.","CI verifies modules and runs go build, go vet, go test and golangci-lint, but the reviewed tree contains no Go test files, so correctness evidence is the author’s own use. The README reports one SOCKS5 speed test of about 834/773 Mbps on a 1 Gbps link and lists missing features such as happy eyeballs, WireGuard and DNS-over-HTTPS. These results are author-reported.","MIT (LICENSE.md). Cloudflare’s service terms and trademarks apply separately, and the README describes usque as an independent research project."],"requirements_zh":["审阅对象为 2026-07-20 的 main 最新提交，与 v4.2.1 版一致。README 称项目仍处于早期阶段，作为库使用时 Go API 不稳定，并说明只有 Linux amd64 发布版经过测试，尽管发布内容包括多种架构的 Android、Linux、Windows 和 macOS 构建。RESEARCH.md 是叙述式研究记录；README 计划撰写的简明协议文档尚未完成。","需要访问 Cloudflare WARP 服务：register 命令会新建 WARP 账号并注册设备密钥，生成的配置文件保存该注册的密钥和令牌。该工具在官方客户端之外使用 Cloudflare 的服务；README 声明它与 Cloudflare 无关，未获其认可或审查，要求用户不要滥用服务，并指出该工具可被识别。ZeroTrust 登录需要该工具无法完成的 SSO。","构建需要 Go 1.26.3+ 并关闭 CGO。README 称 Cloudflare 的实现并不完全符合 RFC 9484，因此项目依赖作者 fork 的 connect-ip-go；连接由 quic-go 承载，gVisor 和 wireguard-go 的网络栈使各代理模式无需 root 即可在用户态运行。原生 TUN 模式仅支持 Linux 和 Windows，但 README 的已知问题列表仍写着仅支持 Linux。仓库提供 Dockerfile。","CI 会校验模块并运行 go build、go vet、go test 和 golangci-lint，但所审阅的文件树中没有 Go 测试文件，因此正确性证据来自作者自己的使用。README 报告一次 SOCKS5 测速结果，在 1 Gbps 链路上约为 834/773 Mbps，并列出 happy eyeballs、WireGuard 和 DNS-over-HTTPS 等缺失功能。这些结果均为作者报告。","采用 MIT 许可（LICENSE.md）。Cloudflare 的服务条款和商标另行适用，README 将 usque 描述为独立研究项目。"],"targets":["app","protocol"],"url":"https://github.com/Diniboy1123/usque","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/Sebastrion/awesome-unofficial-pc-ports/blob/faef1ab57fa50446ca156bcbf085466dce9a9229/LICENSE"],"category":"related-lists","description_en":"A single-README guide to unofficial PC ports of console games built from decompilations or recompilations and chosen for easy installation by players. Its 76 game entries, grouped under Nintendo, PlayStation, Xbox, SEGA, Indie and J2ME, each recommend a port with short setup notes and often link the underlying decompilation and alternative ports; a Utilities section adds two recompilation launchers.","description_zh":"以单个 README 维护的非官方 PC 移植指南，收录基于反编译或重编译、且便于玩家安装的主机游戏移植。76 个游戏条目按 Nintendo、PlayStation、Xbox、SEGA、独立游戏和 J2ME 分组，每项推荐一个移植版并附简短安装说明，常同时链接所依据的反编译项目和其他移植版；“实用工具”部分另列两个重编译启动器。","entry_url":"https://awesomerea.org/resources/awesome-unofficial-pc-ports/","entry_url_zh":"https://awesomerea.org/zh/resources/awesome-unofficial-pc-ports/","evidence_url":"https://github.com/Sebastrion/awesome-unofficial-pc-ports/blob/faef1ab57fa50446ca156bcbf085466dce9a9229/README.md","group":"learn","id":"awesome-unofficial-pc-ports","json_url":"https://awesomerea.org/resources/awesome-unofficial-pc-ports/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/awesome-unofficial-pc-ports/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/awesome-unofficial-pc-ports/index.md","name":"awesome-unofficial-pc-ports","name_zh":"awesome-unofficial-pc-ports 非官方 PC 移植清单","record_type":"resource","relationship":"learning","requirements":["The reviewed README, committed 2026-10-15, has 78 collapsible entries: 43 Nintendo, 12 PlayStation, 14 Xbox, 5 SEGA, 1 indie and 1 J2ME game, plus 2 launcher utilities. Its stated criteria are console games ported to PC through decompilation or recompilation that offer an easy install path, such as a launcher or drag-and-drop; a star marks the most user-friendly option for each game.","Entries are written for players: a recommended port, a line or two of setup notes and, for some games, the underlying decompilation, alternative ports or tutorial videos. They state no matching, completion or license status, and the list also carries projects outside its stated criteria, such as Severed Chains, which it calls a reverse-engineered native recreation, and a port of the PC game Cave Story+.","Most entries tell players to supply their own ROM, disc image, ISO, game dump or XBLA package. The Ratchet & Clank: Clone Home entry also links a third-party archive.org copy of the recovered original J2ME build.","The README promotes Quiver Launcher, a separate catalog website and launcher, and says the list is kept up in spare time with updates that can take months. The repository holds only README.md and an MIT license (copyright 2023 Sebastrion); linked ports, original games and their assets keep their own rights. An independent discovery list."],"requirements_zh":["所审阅的 README 提交于 2026-10-15，共有 78 个可折叠条目：Nintendo 43 个、PlayStation 12 个、Xbox 14 个、SEGA 5 个、独立游戏和 J2ME 各 1 个，另有 2 个启动器类实用工具。其收录标准是通过反编译或重编译移植到 PC、且有简便安装方式（如启动器或拖放即用）的主机游戏；星标表示每款游戏中最易上手的版本。","条目面向玩家撰写：给出推荐的移植版和一两行安装说明，部分游戏还列出所依据的反编译项目、其他移植版或教程视频。条目未注明匹配、完成度或许可状态；清单还收录了超出其所述标准的项目，例如被其称为“逆向工程原生重制”的 Severed Chains，以及 PC 游戏 Cave Story+ 的移植。","大多数条目要求玩家自备 ROM、光盘镜像、ISO、游戏转储或 XBLA 包。Ratchet & Clank: Clone Home 条目还链接了第三方在 archive.org 上存放的已寻回的原版 J2ME 构建。","README 推广 Quiver Launcher，这是一个独立的目录网站和启动器；README 还说明清单由维护者利用业余时间维护，更新可能相隔数月。仓库只有 README.md 和 MIT 许可证（版权 2023 Sebastrion）；所链接的移植项目、原游戏及其素材各自保留权利。这是独立的发现清单。"],"targets":["game"],"url":"https://github.com/Sebastrion/awesome-unofficial-pc-ports","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/ivRodriguezCA/RE-iOS-Apps/blob/183873adea6b07f951e1b49565000e2c83448429/Prerequisites.md","https://github.com/ivRodriguezCA/RE-iOS-Apps/blob/183873adea6b07f951e1b49565000e2c83448429/Introduction.md","https://github.com/ivRodriguezCA/RE-iOS-Apps/blob/183873adea6b07f951e1b49565000e2c83448429/Module-1/README.md","https://github.com/ivRodriguezCA/RE-iOS-Apps/blob/183873adea6b07f951e1b49565000e2c83448429/Module-3/README.md","https://github.com/ivRodriguezCA/RE-iOS-Apps/blob/183873adea6b07f951e1b49565000e2c83448429/Module-4/README.md","https://github.com/ivRodriguezCA/RE-iOS-Apps/blob/183873adea6b07f951e1b49565000e2c83448429/Final-Thoughts.md","https://github.com/ivRodriguezCA/RE-iOS-Apps-Extras-Github/tree/19ec1d21019caafb7b84b03496769445d01055be/Files"],"category":"learning","description_en":"Ivan Rodriguez's free English course (version 1.1) on reverse engineering iOS applications, aimed at beginners in iOS app security. Five Markdown modules cover setting up a jailbroken test device, decrypting App Store apps for analysis, static analysis of an IPA's files, frameworks, Objective-C classes and ARM binary in Hopper or Ghidra, runtime analysis with Cycript and Frida, and binary patching in Hopper. Exercises use CoinZa, a deliberately insecure Objective-C app the author built from vulnerability classes he reports finding in production App Store apps.","description_zh":"Ivan Rodriguez 编写的免费英文课程（1.1 版），讲解 iOS 应用逆向工程，面向 iOS 应用安全初学者。五个 Markdown 模块依次介绍越狱测试设备的环境配置、为分析而解密 App Store 应用、对 IPA 中的文件、框架、Objective-C 类和 ARM 二进制进行静态分析（使用 Hopper 或 Ghidra）、用 Cycript 和 Frida 做运行时分析，以及在 Hopper 中修补二进制。练习使用 CoinZa：作者根据其所述在 App Store 正式应用中发现的漏洞类型，专门编写的一个故意不安全的 Objective-C 应用。","entry_url":"https://awesomerea.org/resources/re-ios-apps-course/","entry_url_zh":"https://awesomerea.org/zh/resources/re-ios-apps-course/","evidence_url":"https://github.com/ivRodriguezCA/RE-iOS-Apps/blob/183873adea6b07f951e1b49565000e2c83448429/README.md","group":"learn","id":"re-ios-apps-course","json_url":"https://awesomerea.org/resources/re-ios-apps-course/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/re-ios-apps-course/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/re-ios-apps-course/index.md","name":"Reverse Engineering iOS Applications","name_zh":"iOS 应用逆向工程课程","record_type":"resource","relationship":"learning","requirements":["Reviewed at commit 183873a (2024-04-17). The course was written mainly in 2019; commits since mid-2020 are a few small wording and command fixes. Device instructions cover iOS 10 through 12, and many setup tools are from that period, so they may not work on current devices. The introduction excludes jailbreaking, iOS exploitation, tweak development, backend API testing and in-depth ARM assembly.","The prerequisites page lists no mandatory knowledge but recommends a Mac (Xcode has no Windows alternative), basic Objective-C, Swift, JavaScript, HTML, SSH/SCP and man-in-the-middle concepts, and an ARM disassembler such as Ghidra, IDA or Hopper's trial. A jailbroken iPhone/iPad/iPod on iOS 10 or later is needed only for the decryption module and the Cycript and Frida exercises.","No third-party app is needed for the exercises: the author ships CoinZa as an already-decrypted IPA, plus an EPUB of the course, in the companion repository RE-iOS-Apps-Extras-Github. The README says its vulnerabilities come from production apps but are reproduced in CoinZa instead of being published against those apps, and the closing page asks readers to report vulnerabilities responsibly.","There is no separate license file; the README carries an MIT-style permission notice (Copyright 2019 Ivan Rodriguez) and an at-your-own-risk disclaimer; the closing page asks people who reuse the material to credit the author."],"requirements_zh":["审阅提交为 183873a（2024-04-17）。课程主要写于 2019 年，2020 年年中以后只有少量措辞和命令方面的小修正。设备相关说明覆盖 iOS 10 至 12，许多环境配置工具也出自那一时期，在当前设备上未必可用。导言明确不涉及越狱、iOS 系统漏洞利用、插件（tweak）开发、后端 API 测试以及深入的 ARM 汇编。","前置知识页没有列出必备条件，但建议使用 Mac（Xcode 没有 Windows 替代品），具备 Objective-C、Swift、JavaScript、HTML、SSH/SCP 和中间人攻击概念的基础，并准备 Ghidra、IDA 或 Hopper 试用版等 ARM 反汇编工具。只有解密模块以及 Cycript 和 Frida 练习需要运行 iOS 10 或更高版本的越狱 iPhone/iPad/iPod。","练习无需任何第三方应用：作者在配套仓库 RE-iOS-Apps-Extras-Github 中提供已解密的 CoinZa IPA 以及课程的 EPUB 版本。README 称这些漏洞源自正式上架的应用，但只在 CoinZa 中重现，而不针对原应用公开；结语也请读者以负责任的方式报告漏洞。","仓库没有单独的许可证文件；README 附有 MIT 式许可声明（Copyright 2019 Ivan Rodriguez）和风险自负的免责声明；结语请复用材料的人注明作者。"],"targets":["app","binary"],"url":"https://github.com/ivRodriguezCA/RE-iOS-Apps","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/captbaritone/webamp/blob/f01369fc2d7aaa9366a3ba9ab0ad1db4b6417a40/README.md#L62-L67","https://github.com/captbaritone/webamp/blob/f01369fc2d7aaa9366a3ba9ab0ad1db4b6417a40/packages/webamp-docs/docs/05_features/05_skins.md","https://github.com/captbaritone/webamp/blob/f01369fc2d7aaa9366a3ba9ab0ad1db4b6417a40/packages/webamp-docs/docs/05_features/03_equalizer.md","https://github.com/captbaritone/webamp/blob/f01369fc2d7aaa9366a3ba9ab0ad1db4b6417a40/packages/webamp-docs/docs/05_features/02_mikdrop.md","https://github.com/captbaritone/webamp/blob/f01369fc2d7aaa9366a3ba9ab0ad1db4b6417a40/packages/webamp-docs/docs/07_guides/01_cors.md","https://github.com/captbaritone/webamp/blob/f01369fc2d7aaa9366a3ba9ab0ad1db4b6417a40/packages/webamp-docs/docs/12_changelog.md","https://github.com/captbaritone/webamp/blob/f01369fc2d7aaa9366a3ba9ab0ad1db4b6417a40/packages/webamp/docs/architecture.md","https://github.com/captbaritone/webamp/blob/f01369fc2d7aaa9366a3ba9ab0ad1db4b6417a40/packages/webamp-modern/README.md","https://github.com/captbaritone/webamp/blob/f01369fc2d7aaa9366a3ba9ab0ad1db4b6417a40/packages/webamp-modern/src/maki/maki-bytecode.md","https://github.com/captbaritone/webamp/blob/f01369fc2d7aaa9366a3ba9ab0ad1db4b6417a40/packages/webamp-modern/snowpack-maki-plugin.js","https://github.com/captbaritone/webamp/tree/f01369fc2d7aaa9366a3ba9ab0ad1db4b6417a40/packages/webamp-modern/resources/maki_compiler","https://github.com/captbaritone/webamp/blob/f01369fc2d7aaa9366a3ba9ab0ad1db4b6417a40/packages/webamp-modern/resources/maki_decompiler_1.1/COPYING","https://github.com/captbaritone/webamp/blob/f01369fc2d7aaa9366a3ba9ab0ad1db4b6417a40/.github/workflows/ci.yml","https://github.com/captbaritone/webamp/blob/f01369fc2d7aaa9366a3ba9ab0ad1db4b6417a40/.nvmrc","https://github.com/captbaritone/webamp/blob/f01369fc2d7aaa9366a3ba9ab0ad1db4b6417a40/LICENSE.txt","https://registry.npmjs.org/webamp/2.3.1"],"category":"reconstruction-cases","description_en":"Reimplements Winamp 2's main, equalizer and playlist windows in HTML5 and JavaScript, with Web Audio playback, volume, balance and equalizer, and renders original classic .wsz skins, which its documentation says match Winamp 2.9 pixel for pixel; Milkdrop presets run through the Butterchurn WebGL port. It ships as the webamp npm module for embedding in web pages, and the same monorepo runs webamp.org and the skins.webamp.org skin museum. Its webamp-modern prototype targets Winamp 3/5 modern skins with an interpreter for MAKI skin scripts, whose undocumented bytecode format the author reverse engineered and documents in the repository.","description_zh":"用 HTML5 和 JavaScript 重新实现 Winamp 2 的主窗口、均衡器和播放列表窗口，借助 Web Audio 实现播放、音量、声道平衡和均衡器，并渲染原有的经典 .wsz 皮肤，其文档称渲染效果与 Winamp 2.9 逐像素一致；Milkdrop 预设通过 Butterchurn 的 WebGL 移植版运行。它以 webamp npm 模块的形式发布，可嵌入网页，同一 monorepo 还运行着 webamp.org 和 skins.webamp.org 皮肤博物馆。其中的 webamp-modern 原型面向 Winamp 3/5 的现代皮肤，内含 MAKI 皮肤脚本解释器；MAKI 字节码格式原本没有公开文档，作者对其进行了逆向分析，并在仓库中写成文档。","entry_url":"https://awesomerea.org/resources/webamp-winamp-reimplementation-case/","entry_url_zh":"https://awesomerea.org/zh/resources/webamp-winamp-reimplementation-case/","evidence_url":"https://github.com/captbaritone/webamp/blob/f01369fc2d7aaa9366a3ba9ab0ad1db4b6417a40/README.md","group":"cases","id":"webamp-winamp-reimplementation-case","json_url":"https://awesomerea.org/resources/webamp-winamp-reimplementation-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/webamp-winamp-reimplementation-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/webamp-winamp-reimplementation-case/index.md","name":"Webamp: a browser reimplementation of Winamp 2","name_zh":"Webamp：在浏览器中重新实现 Winamp 2","record_type":"resource","relationship":"independent-reconstruction","requirements":["Release at review: webamp 2.3.1 on npm, published 2026-06-16; the reviewed master commit (2026-10-17) adds unreleased accessibility and API changes listed in the changelog. The README says it works in modern Edge, Firefox, Safari and Chrome. It reimplements Winamp's behavior and skin rendering rather than recovering Winamp's code, and webamp-modern remains a prototype with an open list of unimplemented MAKI and skin features.","No original Winamp installation is needed: Webamp bundles a default skin and sample track, and users can load their own Winamp 2 .wsz skins, audio files, Milkdrop presets and .eqf equalizer presets. Skins and audio fetched from another domain must be served with CORS permission, because Webamp reads their contents.","Development uses pnpm and Turborepo; .nvmrc names Node.js 22 and CI uses Node.js 20 to build every package, lint, type-check and run the Jest tests. These test Webamp's own parsing and rendering. Compiling webamp-modern's MAKI test scripts calls the bundled Winamp 5.66 mc.exe, directly on Windows or through Wine elsewhere.","The code is MIT-licensed, and the README says the Winamp name, interface and sample audio file are Nullsoft's property. Bundled files that carry no license of their own: the Nullsoft MAKI compiler builds under packages/webamp-modern/resources/maki_compiler (five mc.exe versions from Winamp 3 alpha 8r to Winamp 5.66, nscrt.dll and the MAKI .mi library headers), the skins named after Winamp defaults (base-2.91, Winamp 3 build 499, Winamp Modern 5.66) and the third-party community skins used for demos and tests, the llama sample MP3 and the Winamp Modern Skins tutorial PDF. The bundled Perl MAKI decompiler is GPL-2.0."],"requirements_zh":["审阅时的最新版本为 npm 上的 webamp 2.3.1，于 2026-06-16 发布；所审阅的 master 分支提交（2026-10-17）另含更新日志中列出、尚未发布的无障碍和 API 改动。README 称它可在新版 Edge、Firefox、Safari 和 Chrome 中运行。它重新实现的是 Winamp 的行为和皮肤渲染，并非恢复 Winamp 的代码；webamp-modern 仍是原型，尚有一份未完成的 MAKI 与皮肤功能清单。","无需原版 Winamp：Webamp 自带默认皮肤和示例音轨，用户也可载入自己的 Winamp 2 .wsz 皮肤、音频文件、Milkdrop 预设和 .eqf 均衡器预设。从其他域名获取的皮肤和音频须允许 CORS 访问，因为 Webamp 需要读取其内容。","开发使用 pnpm 和 Turborepo；.nvmrc 指定 Node.js 22，CI 则用 Node.js 20 构建所有包、执行代码检查和类型检查并运行 Jest 测试。这些测试检验的是 Webamp 自身的解析和渲染。编译 webamp-modern 的 MAKI 测试脚本时会调用仓库自带的 Winamp 5.66 mc.exe：在 Windows 上直接运行，在其他系统上通过 Wine 运行。","代码采用 MIT 许可，README 称 Winamp 的名称、界面和示例音频文件属于 Nullsoft。以下随附文件没有自己的许可声明：packages/webamp-modern/resources/maki_compiler 下的 Nullsoft MAKI 编译器（从 Winamp 3 alpha 8r 到 Winamp 5.66 的五个 mc.exe 版本、nscrt.dll 以及 MAKI .mi 库头文件），以 Winamp 默认皮肤命名的皮肤（base-2.91、Winamp 3 build 499、Winamp Modern 5.66）和用于演示与测试的第三方社区皮肤，llama 示例 MP3，以及 Winamp Modern Skins 教程 PDF。随附的 Perl 版 MAKI 反编译器采用 GPL-2.0 许可。"],"targets":["app"],"url":"https://github.com/captbaritone/webamp","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","category":"related-lists","description_en":"A short, link-only reading list on decompiling machine code, last updated in 2023. Its 45 links cover foundational theses, compiler and program-analysis books, decompiler products and projects, pipeline topics from intermediate representations to type, control-flow and identifier recovery, early neural-decompilation papers and binary-to-source matching.","description_zh":"篇幅不长、只列链接的机器码反编译阅读清单，最近一次更新在 2023 年。45 个链接涵盖奠基性学位论文、编译器与程序分析书籍、反编译器产品和项目，从中间表示到类型、控制流和标识符恢复的反编译流程主题，早期神经网络反编译论文，以及二进制与源码匹配。","entry_url":"https://awesomerea.org/resources/nforest-awesome-decompilation/","entry_url_zh":"https://awesomerea.org/zh/resources/nforest-awesome-decompilation/","evidence_url":"https://github.com/nforest/awesome-decompilation/blob/8731870b99d1816ed6979ab5745ae42b4bf73018/README.md","group":"learn","id":"nforest-awesome-decompilation","json_url":"https://awesomerea.org/resources/nforest-awesome-decompilation/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/nforest-awesome-decompilation/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/nforest-awesome-decompilation/index.md","name":"awesome-decompilation","name_zh":"awesome-decompilation 反编译阅读清单","record_type":"resource","relationship":"learning","requirements":["Not maintained as a current index: the reviewed master commit of 2023-03-05 is the newest in the repository and added the December 2022 preprint Beyond the C (arXiv 2212.08950). The AI-based section therefore stops at six neural-decompilation papers and projects, and later work, including LLM-based decompilation, is absent.","Entries are bare links under 13 headings, with no annotations, dates, status or license notes. They point to paper and thesis PDFs, vendor product pages, GitHub repositories and online-store book pages, and some PDFs are third-party mirrors.","The scope is native-code decompilation theory and tooling. Its six projects are Hex-Rays, Ghidra’s decompiler, JEB, RetDec, rev.ng-c and jsdec, and its eight intermediate representations include LLVM IR, VEX, BAP, REIL, ESIL, Binary Ninja’s LLIL and VTIL. It is a reading list, not an index of game decompilations or reconstruction projects.","The repository holds only README.md, with no license file or contribution guide, and GitHub detects no license, so the list states no reuse terms. Linked papers, books and tools keep their own rights, and some listed decompilers are commercial products. An independent reading list."],"requirements_zh":["这并不是持续维护的索引：所审阅的 master 提交日期为 2023-03-05，是仓库最新的提交，加入了 2022 年 12 月的预印本 Beyond the C（arXiv 2212.08950）。因此“AI 反编译”部分只有六篇神经网络反编译论文和项目，之后的研究（包括基于大语言模型的反编译）均未收录。","条目只有链接，分布在 13 个标题下，没有注释、日期、状态或许可说明。链接指向论文和学位论文 PDF、厂商产品页、GitHub 仓库以及网店的图书页面，部分 PDF 是第三方镜像。","范围是本机代码反编译的理论与工具。所列六个项目是 Hex-Rays、Ghidra 反编译器、JEB、RetDec、rev.ng-c 和 jsdec，八种中间表示包括 LLVM IR、VEX、BAP、REIL、ESIL、Binary Ninja 的 LLIL 和 VTIL。这是阅读清单，不是游戏反编译或重建项目索引。","仓库只有 README.md，没有许可证文件或贡献指南，GitHub 也未识别出许可证，因此清单未声明复用条款。所链接的论文、书籍和工具各自保留权利，其中部分反编译器是商业产品。这是独立的阅读清单。"],"targets":["binary"],"url":"https://github.com/nforest/awesome-decompilation","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/ZhangZhuoSJTU/tiny-dec/blob/4f5f1e00a147ba1c1471d2e01f9dd4beb5a693d6/pyproject.toml","https://github.com/ZhangZhuoSJTU/tiny-dec/blob/4f5f1e00a147ba1c1471d2e01f9dd4beb5a693d6/LICENSE","https://github.com/ZhangZhuoSJTU/tiny-dec/blob/4f5f1e00a147ba1c1471d2e01f9dd4beb5a693d6/DEVELOPMENT_NOTES.md","https://github.com/ZhangZhuoSJTU/tiny-dec/blob/4f5f1e00a147ba1c1471d2e01f9dd4beb5a693d6/.github/workflows/ci.yml","https://github.com/ZhangZhuoSJTU/tiny-dec/blob/4f5f1e00a147ba1c1471d2e01f9dd4beb5a693d6/.claude-plugin/plugin.json","https://github.com/ZhangZhuoSJTU/tiny-dec/tree/4f5f1e00a147ba1c1471d2e01f9dd4beb5a693d6/skills/teach-decompilation","https://github.com/ZhangZhuoSJTU/tiny-dec/tree/4f5f1e00a147ba1c1471d2e01f9dd4beb5a693d6/tests/fixtures","https://tiny-dec.zzhang.xyz/"],"category":"learning","description_en":"Zhuo Zhang's small educational decompiler for 32-bit RISC-V (RV32I) ELF files, written in Python to teach how decompilation works rather than to compete with production decompilers. Its 19 deliberately separate stages run from ELF loading, decoding and p-code lifting through SSA, stack, type, variable and range recovery to control-flow structuring and C output, and the CLI can stop at any stage to print that stage's intermediate result. The README also offers a Claude Code plugin whose AI tutor walks learners through the stages with quizzes and exercises.","description_zh":"Zhuo Zhang 用 Python 编写的小型教学用反编译器，面向 32 位 RISC-V（RV32I）ELF 文件，目的是讲清反编译的工作原理，而非与生产级反编译器竞争。它把流程刻意拆成 19 个独立阶段：从 ELF 加载、指令解码和 p-code 提升，经过 SSA、栈、类型、变量和取值范围恢复，再到控制流结构化和 C 代码输出；命令行可在任一阶段停下，打印该阶段的中间结果。README 还提供一个 Claude Code 插件，其中的 AI 导师会结合小测和练习，带学习者逐个阶段学习。","entry_url":"https://awesomerea.org/resources/tiny-dec/","entry_url_zh":"https://awesomerea.org/zh/resources/tiny-dec/","evidence_url":"https://github.com/ZhangZhuoSJTU/tiny-dec/blob/4f5f1e00a147ba1c1471d2e01f9dd4beb5a693d6/README.md","group":"learn","id":"tiny-dec","json_url":"https://awesomerea.org/resources/tiny-dec/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/tiny-dec/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/tiny-dec/index.md","name":"tiny-dec","name_zh":"tiny-dec 教学用反编译器","record_type":"resource","relationship":"learning","requirements":["Reviewed at commit 4f5f1e0 (2026-05-27), the repository's only commit; the package is version 0.1.0, and the repository's test and lint workflows passed on that commit. The README calls it a teaching tool, not a production decompiler: it handles RV32I only, and unresolved expressions stay in the output as raw<...> rather than being guessed. A live demo site at tiny-dec.zzhang.xyz shows the stages.","Input is an RV32I ELF file. The repository commits 13 C test programs and 39 RV32I builds of them (-O0 and -O2, PIE and non-PIE) under tests/fixtures, so no outside binaries are needed. Rebuilding them or compiling one's own C code needs clang, lld and LLVM with RISC-V support, installed locally or through the included Docker development image.","Requires Python 3.12+ and Poetry, and the loader leaves ELF parsing to pwntools; the README lists Ubuntu/Debian system packages, and a devcontainer is included. The AI tutor needs Claude Code and installs as a plugin from the repository's marketplace manifest; its skill files hold one lesson guide per pipeline stage.","MIT license (Copyright 2026 Zhuo Zhang). The 500-test count and the example outputs are the author's. The tutor is an AI teaching aid."],"requirements_zh":["审阅提交为 4f5f1e0（2026-05-27），也是仓库唯一的提交；软件包版本为 0.1.0，仓库的测试和代码检查工作流在该提交上均已通过。README 称它是教学工具而非生产级反编译器：只支持 RV32I，无法解析的表达式以 raw<...> 形式保留在输出中，而不作猜测。在线演示站点 tiny-dec.zzhang.xyz 展示了各个阶段。","输入为 RV32I ELF 文件。仓库在 tests/fixtures 下提交了 13 个 C 测试程序及其 39 个 RV32I 构建（-O0 与 -O2，PIE 与非 PIE），因此无需任何外部二进制文件。重新构建这些程序或编译自己的 C 代码，需要支持 RISC-V 的 clang、lld 和 LLVM，可在本地安装，也可使用仓库附带的 Docker 开发镜像。","需要 Python 3.12+ 和 Poetry，加载器把 ELF 解析交给 pwntools；README 列出了 Ubuntu/Debian 系统依赖，仓库还附带 devcontainer 配置。AI 导师需要 Claude Code，通过仓库中的插件市场清单安装为插件；其技能文件为流水线的每个阶段各准备了一份课程指南。","采用 MIT 许可证（Copyright 2026 Zhuo Zhang）。500 个测试的数量和示例输出均出自作者。该导师是 AI 教学辅助。"],"targets":["binary"],"url":"https://github.com/ZhangZhuoSJTU/tiny-dec","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/open-ead/sead/blob/f4178a21e21235830357dc27c26a2c29956972ed/CMakeLists.txt","https://github.com/open-ead/sead/blob/f4178a21e21235830357dc27c26a2c29956972ed/include/seadVersion.h","https://github.com/open-ead/sead/blob/f4178a21e21235830357dc27c26a2c29956972ed/.github/workflows/lint_pr.yml","https://github.com/open-ead/sead/tree/f4178a21e21235830357dc27c26a2c29956972ed/res","https://github.com/open-ead/sead/blob/f4178a21e21235830357dc27c26a2c29956972ed/modules/src/gfx/cafe/seadPrimitiveRendererCafe.cpp","https://github.com/zeldaret/botw/blob/e78c02499d0f108ae9c00158198289764c5980fe/.gitmodules","https://github.com/aboood40091/sead"],"category":"reconstruction-cases","description_en":"Decompiles sead, the C++ standard library that Nintendo statically links into its first-party games, covering containers, heaps, strings, math, file devices, threads, the game framework and graphics. Compile-time presets target the recent versions used by Breath of the Wild, Super Mario Odyssey, Splatoon 3, Tears of the Kingdom and Super Mario Bros. Wonder, and game decompilations such as Breath of the Wild pull it in as a submodule. Names come from debugging symbols and assertions in retail titles, and the README warns that many inlined and templated names are guesses.","description_zh":"反编译 sead，即 Nintendo 静态链接进其第一方游戏的 C++ 标准库，涵盖容器、堆、字符串、数学、文件设备、线程、游戏框架和图形等模块。编译期预设针对《旷野之息》《超级马力欧 奥德赛》《斯普拉遁 3》《王国之泪》和《超级马力欧兄弟 惊奇》所用的较新版本，《旷野之息》等游戏反编译项目以子模块方式引入它。命名来自零售游戏中的调试符号和断言，README 也提醒许多内联与模板函数的名称只是猜测。","entry_url":"https://awesomerea.org/resources/sead-nintendo-library-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sead-nintendo-library-decomp-case/","evidence_url":"https://github.com/open-ead/sead/blob/f4178a21e21235830357dc27c26a2c29956972ed/README.md","group":"cases","id":"sead-nintendo-library-decomp-case","json_url":"https://awesomerea.org/resources/sead-nintendo-library-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sead-nintendo-library-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sead-nintendo-library-decomp-case/index.md","name":"sead: a decompilation of Nintendo’s first-party C++ standard library","name_zh":"sead：Nintendo 第一方 C++ 标准库的反编译重建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["The reviewed master commit (2026-10-11, no releases) derives from aboood40091/sead but targets newer sead versions. The README says several modules currently fail to build for Switch and points to a GitHub project page for progress; seadVersion.h adds a Super Mario Maker 2 preset and a custom feature set alongside the README’s list.","Building needs no game files. Checking accuracy needs the original sead, which ships only statically linked in games: the README advises legally owning a recent first-party title with debugging symbols, naming Super Mario Odyssey 1.0.0, Splatoon 2 up to 3.1.0 and the Nintendo Labo pilot build.","The README asks for a partially C++17-capable compiler such as Clang 3.9 or newer and CMake 3.10+. CMakeLists builds an object library only for the nin (nnSdk, Switch) platform and links NintendoSDK headers supplied by the host project, the old or new open-ead header repository depending on a migration option. The README also describes Wii U (cafe) sources and declares other platforms unsupported.","The README asks contributors to match non-inlined functions against the original assembly, tolerating only register-allocation or obviously harmless reordering differences marked NOT_MATCHING, and to undo inlining with help from pilot builds and assertions; MATCHING_HACK_NX_CLANG guards codegen hacks. The repository has no checker or progress data of its own, and CI only runs clang-format, so matching is checked in consumer projects.","No license file is present and GitHub detects none; the README says nobody outside Nintendo has sead’s source. res/ holds the decompiled primitive-renderer shader sources plus a 2 KB compiled Wii U shader binary that was updated alongside them. Nintendo’s games keep their own rights."],"requirements_zh":["所审阅的 master 提交（2026-10-11，无发行版）源自 aboood40091/sead，但针对更新的 sead 版本。README 称若干模块目前无法为 Switch 构建，进度请见 GitHub 项目页面；seadVersion.h 在 README 所列之外还加入了《超级马力欧创作家 2》预设和自定义特性组合。","构建本身不需要任何游戏文件。要核对准确性则需要原始 sead，而它只以静态链接的形式随游戏发布：README 建议合法拥有一款带调试符号的较新第一方游戏，并举出《超级马力欧 奥德赛》1.0.0、《斯普拉遁 2》3.1.0 及以下版本，以及 Nintendo Labo 的试点构建。","README 要求使用部分支持 C++17 的编译器（如 Clang 3.9 及以上）和 CMake 3.10 及以上版本。CMakeLists 只为 nin（nnSdk，即 Switch）平台构建对象库，并链接宿主项目提供的 NintendoSDK 头文件；根据一个迁移选项，使用 open-ead 的旧版或新版头文件仓库。README 还介绍了 Wii U（cafe）源码，并说明不支持其他平台。","README 要求贡献者将非内联函数与原始汇编比对并使其一致，仅容许寄存器分配或明显无害的指令重排差异，并须以 NOT_MATCHING 注释标明；还要借助试点构建和断言信息还原内联。MATCHING_HACK_NX_CLANG 用于包裹影响代码生成的技巧。仓库本身没有检查器或进度数据，CI 只运行 clang-format，因此一致性在使用它的项目中检查。","仓库没有许可证文件，GitHub 也未识别出许可证；README 称除 Nintendo 外无人拥有 sead 源码。res/ 目录包含反编译的图元渲染器着色器源码，以及随之一同更新的 2 KB 已编译 Wii U 着色器二进制文件。Nintendo 游戏仍受其自身权利约束。"],"targets":["game"],"url":"https://github.com/open-ead/sead","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/toniebox-reverse-engineering/teddycloud/blob/78c3b38e36f665d3a5fffe907f73a02725176377/CONTRIBUTING.md","https://github.com/toniebox-reverse-engineering/teddycloud/blob/78c3b38e36f665d3a5fffe907f73a02725176377/.gitmodules","https://github.com/toniebox-reverse-engineering/teddycloud/blob/78c3b38e36f665d3a5fffe907f73a02725176377/Makefile","https://github.com/toniebox-reverse-engineering/teddycloud/tree/78c3b38e36f665d3a5fffe907f73a02725176377/proto","https://github.com/toniebox-reverse-engineering/teddycloud/tree/78c3b38e36f665d3a5fffe907f73a02725176377/contrib/certs","https://github.com/toniebox-reverse-engineering/teddycloud/blob/78c3b38e36f665d3a5fffe907f73a02725176377/dev-sandbox/README.md","https://github.com/toniebox-reverse-engineering/teddycloud/blob/78c3b38e36f665d3a5fffe907f73a02725176377/tests/test_tonies_custom_json_api.py","https://github.com/toniebox-reverse-engineering/teddycloud/blob/78c3b38e36f665d3a5fffe907f73a02725176377/.github/workflows/build_release.yml","https://github.com/toniebox-reverse-engineering/teddycloud/blob/78c3b38e36f665d3a5fffe907f73a02725176377/.github/workflows/publish_docker_matrix_base.yml","https://github.com/toniebox-reverse-engineering/teddycloud/blob/78c3b38e36f665d3a5fffe907f73a02725176377/LICENSE","https://github.com/toniebox-reverse-engineering/teddycloud/releases/tag/tc_v0.7.0","https://tonies-wiki.revvox.de/docs/tools/teddycloud/setup/"],"category":"reconstruction-cases","description_en":"Reimplements the Boxine cloud services a Toniebox talks to as a self-hosted C server, so the box can fetch audio, settings and over-the-air content locally while the owner controls what reaches the manufacturer. It serves and caches tonie audio, converts other audio into the box’s TAF format, can pass requests through to the original cloud, and adds a web interface, MQTT and Home Assistant integration. Protobuf definitions in the repository describe the box’s freshness-check, RTNL log and TAF header messages.","description_zh":"以可自托管的 C 服务器重新实现 Toniebox 所连接的 Boxine 云服务，使盒子能在本地获取音频、设置和无线下发内容，同时由用户控制哪些数据发往厂商。它可提供并缓存 tonie 音频，把其他音频转换为盒子使用的 TAF 格式，可将请求透传到原云端，并提供网页界面、MQTT 及 Home Assistant 集成。仓库中的 protobuf 定义描述了盒子的 freshness-check、RTNL 日志和 TAF 头部报文。","entry_url":"https://awesomerea.org/resources/teddycloud-toniebox-server-case/","entry_url_zh":"https://awesomerea.org/zh/resources/teddycloud-toniebox-server-case/","evidence_url":"https://github.com/toniebox-reverse-engineering/teddycloud/blob/78c3b38e36f665d3a5fffe907f73a02725176377/README.md","group":"cases","id":"teddycloud-toniebox-server-case","json_url":"https://awesomerea.org/resources/teddycloud-toniebox-server-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/teddycloud-toniebox-server-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/teddycloud-toniebox-server-case/index.md","name":"TeddyCloud: a self-hosted replacement for the Toniebox cloud","name_zh":"TeddyCloud：可自托管的 Toniebox 云端替代服务器","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the stable master head of 2026-08-25, the v0.7.0 merge; release tc_v0.7.0 was tagged the same day, and active development continues on the develop branch. The project’s setup guide covers Toniebox 1 boxes with CC3200, CC3235 or ESP32 chips, and the README lists Toniebox 2 support as planned.","Setup is invasive and specific to each box: the project guide has owners dump their own box’s client certificates, flash a replacement CA into the box and redirect its DNS, and the server can extract or inject certificates in an ESP32 firmware dump. The repository ships no box certificates, firmware or tonie audio (those directories are empty placeholders). The dev-sandbox’s pre-generated certificates are self-signed and meant only for local testing.","Builds with a hand-written Makefile, protoc-c and a C toolchain, plus submodules for CycloneTCP/SSL/Crypto, cJSON, Opus, Ogg, the teddycloud_web frontend and emsdk; Linux debug builds enable AddressSanitizer and UBSan, and Docker is the recommended path on macOS. Release tc_v0.7.0 attaches an amd64 zip from the Windows/Linux release workflow, and Debian, Ubuntu and Alpine Docker images are published for several platforms. Stream conversion uses ffmpeg.","Python API tests for the custom-tonie JSON endpoints and a WASM TAF-encoder test run through Makefile targets; the reviewed workflows build and publish without running them. A dev-sandbox serves mock tonies, box and TAF data. Behavior with real boxes and the Boxine cloud remains project-reported.","GPL-2.0 (LICENSE); the vendored Cyclone stack, Opus, Ogg, cJSON and FatFs keep their own terms. Tonie audio, box firmware and Boxine’s services keep their own rights."],"requirements_zh":["审阅对象为 2026-08-25 的稳定版 master 最新提交，即 v0.7.0 合并提交；tc_v0.7.0 发布于同日打标签，日常开发在 develop 分支进行。项目的安装指南覆盖使用 CC3200、CC3235 或 ESP32 芯片的 Toniebox 1，README 将 Toniebox 2 支持列为计划中。","安装过程具有侵入性，且每台盒子各不相同：项目指南要求用户导出自己盒子的客户端证书、向盒子刷入替代 CA 并重定向其 DNS；服务器还可以在 ESP32 固件转储中提取或注入证书。仓库不提供任何盒子证书、固件或 tonie 音频（相应目录只是空占位）。dev-sandbox 中预先生成的证书为自签名证书，仅用于本地测试。","构建使用手写的 Makefile、protoc-c 和 C 工具链，并需要 CycloneTCP/SSL/Crypto、cJSON、Opus、Ogg、teddycloud_web 前端及 emsdk 等子模块；Linux 调试构建默认启用 AddressSanitizer 和 UBSan，在 macOS 上推荐使用 Docker 构建。tc_v0.7.0 版附带由 Windows/Linux 发布工作流生成的 amd64 压缩包，并为多个平台发布 Debian、Ubuntu 和 Alpine Docker 镜像。音频流转换使用 ffmpeg。","自定义 tonie JSON 接口的 Python API 测试和 WASM TAF 编码器测试通过 Makefile 目标运行；所审阅的工作流只构建并发布，不运行这些测试。dev-sandbox 提供模拟的 tonie、盒子和 TAF 数据。与真实盒子及 Boxine 云端配合的表现仍属项目报告。","采用 GPL-2.0（LICENSE）；内置的 Cyclone 协议栈、Opus、Ogg、cJSON 和 FatFs 保留各自条款。tonie 音频、盒子固件和 Boxine 的服务保留各自权利。"],"targets":["firmware","protocol"],"url":"https://github.com/toniebox-reverse-engineering/teddycloud","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/onethawt/reverseengineering-reading-list/blob/a1ee767b5cf8504c398763b2b6304c20507ef1e3/malwareanalysis.md"],"category":"learning","description_en":"A short reading list, compiled by One Thawt mostly in 2015–2016, of about 58 links to reverse-engineering tools, books, papers, talks and blog posts, kept in a README and a separate malware-analysis page. Sections run from disassemblers and debuggers, beginner talks and classic books through data-structure recovery papers, instruction-set references, iOS, Android and Windows material, unpacking, deobfuscation and protocol inference from network traces.","description_zh":"由 One Thawt 编写的简短阅读清单，主要成形于 2015–2016 年，在一个 README 和单独的恶意软件分析页面中收录约 58 个链接，涵盖逆向工程工具、书籍、论文、演讲和博客文章。各部分从反汇编器与调试器、入门讲座和经典书籍，到数据结构恢复论文、指令集参考资料、iOS、Android 与 Windows 相关资料、脱壳、反混淆，以及基于网络流量的协议推断。","entry_url":"https://awesomerea.org/resources/onethawt-re-reading-list/","entry_url_zh":"https://awesomerea.org/zh/resources/onethawt-re-reading-list/","evidence_url":"https://github.com/onethawt/reverseengineering-reading-list/blob/a1ee767b5cf8504c398763b2b6304c20507ef1e3/README.md","group":"learn","id":"onethawt-re-reading-list","json_url":"https://awesomerea.org/resources/onethawt-re-reading-list/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/onethawt-re-reading-list/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/onethawt-re-reading-list/index.md","name":"Reverse Engineering Reading List","name_zh":"逆向工程阅读清单（onethawt）","record_type":"resource","relationship":"learning","requirements":["Reviewed at commit a1ee767 (2023-05-02). 46 of 53 commits date from 2015–2016; the last added entries are x64dbg (2017), Binary Ninja (2018) and Ghidra (2019), and the 2023 commit merged a 2018 pull request that removed a dead link. The list therefore predates most current tools and research.","Most entries are a bare link, some followed by a quoted publisher or project description, and there are no notes on difficulty, platform or currency. Many point to 2010–2016 posts and PDFs on personal or project sites, and the README suggests archive.org for links that are down. Six of the 59 unique URLs in the two files gave no response, a 404 or a sign-in page, and the TIE and HyperV entries link to unrelated documents (an iOS 6 security talk and an IR-synthesis slide deck).","Books link to Amazon store pages, and IDA Pro, Binary Ninja and Hopper are commercial products. The Windows section also links older write-ups on kernel-protection bypasses.","GitHub detects no license and the repository has no license file, so the list states no reuse terms; linked works keep their own rights. The author offers copies of unavailable documents on request through a personal contact page."],"requirements_zh":["审阅提交为 a1ee767（2023-05-02）。53 个提交中有 46 个来自 2015–2016 年；最后新增的条目是 x64dbg（2017）、Binary Ninja（2018）和 Ghidra（2019），2023 年的提交只是合并了一个 2018 年提出、删除失效链接的拉取请求。因此该清单早于当前多数工具和研究。","多数条目只有一个链接，部分附有引自出版方或项目的介绍，没有难度、平台或时效方面的说明。许多链接指向 2010–2016 年发布在个人或项目网站上的文章和 PDF，README 建议在链接失效时使用 archive.org。两个文件中 59 个不重复 URL 里有 6 个无响应、返回 404 或跳转到登录页；TIE 和 HyperV 两个条目链接到了无关文档（一份 iOS 6 安全演讲和一份 IR 合成幻灯片）。","书籍链接指向 Amazon 商品页，IDA Pro、Binary Ninja 和 Hopper 为商业产品。Windows 部分还链接了一些较早的内核保护绕过文章。","GitHub 未检测到许可证，仓库也没有许可证文件，因此清单未声明复用条款；所链接的作品保留各自权利。作者表示可通过个人联系页面索取已无法访问的文档副本。"],"targets":["binary"],"url":"https://github.com/onethawt/reverseengineering-reading-list","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/zeldaret/af/blob/4ddba04604ee7b4c4cfc0b64f8ee4d094bb385be/Makefile","https://github.com/zeldaret/af/blob/4ddba04604ee7b4c4cfc0b64f8ee4d094bb385be/tools/Makefile","https://github.com/zeldaret/af/blob/4ddba04604ee7b4c4cfc0b64f8ee4d094bb385be/tools/decompress_baserom.py","https://github.com/zeldaret/af/blob/4ddba04604ee7b4c4cfc0b64f8ee4d094bb385be/baseroms/jp/checksum.md5","https://github.com/zeldaret/af/blob/4ddba04604ee7b4c4cfc0b64f8ee4d094bb385be/requirements.txt","https://github.com/zeldaret/af/blob/4ddba04604ee7b4c4cfc0b64f8ee4d094bb385be/CONTRIBUTING.md","https://github.com/zeldaret/af/blob/4ddba04604ee7b4c4cfc0b64f8ee4d094bb385be/.github/workflows/ci.yml","https://github.com/zeldaret/af/blob/4ddba04604ee7b4c4cfc0b64f8ee4d094bb385be/LICENSE","https://decomp.dev/zeldaret/af"],"category":"reconstruction-cases","description_en":"Rebuilds the Japanese Nintendo 64 release of Animal Forest (Dōbutsu no Mori) from C code reverse-engineered from the ROM, combined with assets and assembly extracted from a user-supplied ROM. Default builds compare the uncompressed and recompressed ROMs with stored MD5 checksums. The README rules out use as a port base or for commercial purposes, and decomp.dev reported 18.52% of code matched at the reviewed commit.","description_zh":"将从 ROM 逆向得到的 C 代码与从使用者自备 ROM 中提取的素材和汇编结合，重建日版 Nintendo 64《动物之森》（どうぶつの森）。默认构建会用仓库保存的 MD5 校验未压缩与重新压缩的 ROM。README 明确该项目不作为移植基础，也不用于商业目的；decomp.dev 报告所审提交有 18.52% 的代码已匹配。","entry_url":"https://awesomerea.org/resources/animal-forest-n64-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/animal-forest-n64-decomp-case/","evidence_url":"https://github.com/zeldaret/af/blob/4ddba04604ee7b4c4cfc0b64f8ee4d094bb385be/README.md","group":"cases","id":"animal-forest-n64-decomp-case","json_url":"https://awesomerea.org/resources/animal-forest-n64-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/animal-forest-n64-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/animal-forest-n64-decomp-case/index.md","name":"Animal Forest: an in-progress matching N64 decompilation","name_zh":"《动物之森》：进行中的 N64 一致性反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["README calls this a work-in-progress decompilation whose codebase could change drastically and warns that some parts of the ROM may not yet be shiftable. The only configured version is jp, the Japanese N64 release, in both the Makefile and CI. The output is an N64 ROM; README states that the project is not a port and that serving as a port base or any commercial use is explicitly a non-goal. The GameCube Animal Crossing decompilation it links to is a separate project.","Supply your own Japanese Animal Forest ROM as the base ROM in baseroms/jp; .z64, .n64 and .v64 files are accepted. make setup decompresses it and checks the result against baseroms/jp/checksum.md5, then make extract uses splat to derive assembly and assets locally. The reviewed tree holds no ROM, graphics or binary asset files; game-derived content is limited to tables such as the DMA file table header and small address tables under src/objects.","README documents Linux, preferably Debian or Ubuntu, with make, Git, build-essential, clang, MIPS binutils and Python 3 with pip and venv; make venv installs pinned splat64 0.24.0 plus spimdisasm and mapfile-parser. The tools Makefile downloads static recompilations of IDO 5.3 and 7.1 from decompals/ido-static-recomp v1.2 and pigment64 0.6.3, and the build compiles libultra from the bundled ultralib subrepo. NON_MATCHING builds turn the checksum comparison off.","With COMPARE at its default, make rom and make compress check both ROMs against the stored MD5 values. Functions not yet decompiled remain extracted assembly included through GLOBAL_ASM. CI builds jp in a private container that supplies the base ROM and compiler archives, compares warning counts and uploads an objdiff-format report. decomp.dev's report for the pinned commit lists 465,796 of 2,515,744 code bytes (18.52%) and 2,998 of 14,415 functions matched, with no unit complete.","README licenses src and include, as far as possible, and other files that state no other license under CC0-1.0, excluding subrepos such as asm-differ, asm-processor, fado and ultralib. Nintendo's game, ROM contents and the downloaded compilers keep their own rights."],"requirements_zh":["README 称其为进行中的反编译项目，代码库可能大幅变动，并提醒 ROM 的部分内容可能尚不能移动。Makefile 与 CI 中唯一配置的版本是 jp，即日版 N64。产物为 N64 ROM；README 声明项目不是移植，明确不以充当移植基础或任何商业用途为目标。其链接的 GameCube 版 Animal Crossing 反编译是另一个项目。","需将自己的日版《动物之森》ROM 作为基础 ROM 放入 baseroms/jp，可接受 .z64、.n64 和 .v64 文件。make setup 会将其解压并按 baseroms/jp/checksum.md5 校验，随后 make extract 借助 splat 在本地得到汇编和素材。所审代码树不含 ROM、图像或二进制素材文件；源自游戏的内容仅限于 DMA 文件表头文件、src/objects 下的小型地址表等数据表。","README 记载的环境为 Linux（推荐 Debian 或 Ubuntu），需 make、Git、build-essential、clang、MIPS binutils 以及带 pip 和 venv 的 Python 3；make venv 会安装固定版本的 splat64 0.24.0 以及 spimdisasm 和 mapfile-parser。tools 目录的 Makefile 从 decompals/ido-static-recomp v1.2 下载 IDO 5.3 与 7.1 的静态重编译版本，并下载 pigment64 0.6.3；构建还会用随附的 ultralib 子仓库编译 libultra。NON_MATCHING 构建会关闭校验比较。","COMPARE 保持默认时，make rom 和 make compress 会按仓库保存的 MD5 值检查两个 ROM。尚未反编译的函数仍以提取出的汇编通过 GLOBAL_ASM 引入。CI 在提供基础 ROM 和编译器归档的私有容器中构建 jp 版本，比较警告数量并上传 objdiff 格式的报告。decomp.dev 针对该固定提交的报告显示，2,515,744 个代码字节中有 465,796 个（18.52%）、14,415 个函数中有 2,998 个已匹配，尚无完整单元。","README 规定 src 和 include 在可能范围内、以及未声明其他许可的文件采用 CC0-1.0，asm-differ、asm-processor、fado、ultralib 等子仓库不在此列。任天堂的游戏、ROM 内容和下载的编译器各自保留权利。"],"targets":["game"],"url":"https://github.com/zeldaret/af","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/replicraft/remade/blob/ea8119f01c2fab14ef9e0c23a7d348b0a86660ff/POLICY.md","https://github.com/replicraft/remade/blob/ea8119f01c2fab14ef9e0c23a7d348b0a86660ff/CONTRIBUTING.md","https://github.com/replicraft/remade/blob/ea8119f01c2fab14ef9e0c23a7d348b0a86660ff/docs/CATALOG.md","https://github.com/replicraft/remade/blob/ea8119f01c2fab14ef9e0c23a7d348b0a86660ff/apps/frontend/remade-wiki/src/content/DISCLAIMER.md","https://github.com/replicraft/remade/tree/ea8119f01c2fab14ef9e0c23a7d348b0a86660ff/apps/frontend/remade-wiki/src/content/catalog","https://github.com/replicraft/remade/blob/ea8119f01c2fab14ef9e0c23a7d348b0a86660ff/docs/audits/2026-10-17-catalog.json","https://github.com/replicraft/remade/blob/ea8119f01c2fab14ef9e0c23a7d348b0a86660ff/LICENSE"],"category":"related-lists","description_en":"The source repository of remade.wiki, a community-curated directory of open-source reimplementations of closed-source software, mostly creative, productivity and engineering applications. Each listing is a YAML record naming the original software, languages, platforms, license and self-reported status, compatibility and limitations, and the directory also tracks requests for software nobody has reimplemented yet.","description_zh":"remade.wiki 的源码仓库。remade.wiki 是由社区整理的目录，收录闭源软件的开源重新实现，以创意、办公和工程类应用为主。每个条目是一份 YAML 记录，注明被重现的原软件、编程语言、平台、许可证，以及自报的开发状态、兼容程度和局限；目录还收集尚无人重新实现的软件请求。","entry_url":"https://awesomerea.org/resources/remade-reimplementation-directory/","entry_url_zh":"https://awesomerea.org/zh/resources/remade-reimplementation-directory/","evidence_url":"https://github.com/replicraft/remade/blob/ea8119f01c2fab14ef9e0c23a7d348b0a86660ff/README.md","group":"learn","id":"remade-reimplementation-directory","json_url":"https://awesomerea.org/resources/remade-reimplementation-directory/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/remade-reimplementation-directory/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/remade-reimplementation-directory/index.md","name":"Remade","name_zh":"Remade 软件重新实现目录","record_type":"resource","relationship":"learning","requirements":["A young directory: the repository was created on 2026-10-09, and its history reached 308 commits by the reviewed commit of 2026-10-19. Its catalog files hold 123 project records, 13 supporting tools, 2 suites and 379 Project Requests for software with no listed reimplementation yet; remade.wiki is built from these files.","Listings target closed-source originals, mostly desktop and web applications, with Adobe, Autodesk and Microsoft products frequent among them. By category there are 53 creative, 37 productivity and 22 engineering records, plus 5 operating-systems, 3 developer-tools, 2 other and 1 games record. Status and compatibility are self-reported: 78 records are experimental, 26 alpha, 13 beta, 5 stable and 1 planned, and 107 claim partial compatibility.","POLICY.md requires independently authored code without leaked or unauthorized source, binaries or assets, excludes forks, ports, launchers and mods of the original, and leaves clean-room claims to each project’s authors; Remade states it does not audit provenance or legality. Only one record mentions a clean-room process.","The repository’s MIT license covers the directory’s code and data; listed projects keep their own licenses, from MIT and Apache-2.0 to GPL and AGPL, with one recorded as Unlicensed. The project’s own 2026-10-17 documentary audit of 119 entries left unreachable repositories and license conflicts unresolved and disclaims software, legal or compatibility certification."],"requirements_zh":["这是一个很新的目录：仓库创建于 2026-10-09，截至 2026-10-19 的所审提交，历史共有 308 次提交。目录数据包含 123 条项目记录、13 个配套工具、2 个套件，以及 379 条“项目请求”，后者针对尚无已收录重新实现的软件；remade.wiki 网站由这些文件构建。","条目针对闭源原软件，以桌面和网页应用为主，Adobe、Autodesk 和 Microsoft 的产品较为常见。按类别计，创意类 53 条、办公类 37 条、工程类 22 条，另有操作系统类 5 条、开发工具类 3 条、其他 2 条和游戏类 1 条。开发状态与兼容程度均为自报：78 条为 experimental，26 条 alpha，13 条 beta，5 条 stable，1 条 planned；107 条自称部分兼容。","POLICY.md 要求代码独立编写，不得包含泄露或未经授权的源码、二进制文件或素材，不收录原软件的分支、移植、启动器和模组，并将净室开发的声明交由各项目作者负责；Remade 表示不审核代码来源或合法性。只有一条记录提到净室流程。","仓库的 MIT 许可证适用于目录本身的代码和数据；所收录项目各自保留许可证，从 MIT、Apache-2.0 到 GPL 和 AGPL 不等，其中一项记为 Unlicensed。项目自己于 2026-10-17 对 119 个条目做的文档审查，仍有无法访问的仓库和许可证冲突未解决，并声明不构成软件、法律或兼容性认证。"],"targets":["app"],"url":"https://github.com/replicraft/remade","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/danielweidman/pixmob-ir-reverse-engineering/blob/b372420e1e1ff818a8d25ba50f0c71e97e62f138/rf/README.md","https://github.com/danielweidman/pixmob-ir-reverse-engineering/blob/b372420e1e1ff818a8d25ba50f0c71e97e62f138/hardware-table.md","https://github.com/danielweidman/pixmob-ir-reverse-engineering/blob/b372420e1e1ff818a8d25ba50f0c71e97e62f138/python_tools/README.md","https://github.com/danielweidman/pixmob-ir-reverse-engineering/blob/b372420e1e1ff818a8d25ba50f0c71e97e62f138/python_tools/requirements.txt","https://github.com/danielweidman/pixmob-ir-reverse-engineering/blob/b372420e1e1ff818a8d25ba50f0c71e97e62f138/python_tools/pixmob_conversion_funcs.py","https://github.com/danielweidman/pixmob-ir-reverse-engineering/blob/b372420e1e1ff818a8d25ba50f0c71e97e62f138/python_tools/tests/test_pixmob_conversion_funcs.py","https://github.com/danielweidman/pixmob-ir-reverse-engineering/blob/b372420e1e1ff818a8d25ba50f0c71e97e62f138/arduino_sender/README.md","https://github.com/danielweidman/pixmob-ir-reverse-engineering/tree/b372420e1e1ff818a8d25ba50f0c71e97e62f138/raw_wild_ir_captures","https://github.com/danielweidman/pixmob-ir-reverse-engineering/blob/b372420e1e1ff818a8d25ba50f0c71e97e62f138/LICENSE"],"category":"reconstruction-cases","description_en":"Recovers enough of the infrared protocol used by PixMob event wristbands to light them at home, starting from Flipper Zero recordings made at concerts and games and replaying them to bracelets. Pulse-timing analysis found 38 kHz signals with bit intervals of roughly 700 µs, and targeted brute forcing from an ESP32 discovered hundreds of colour, fade, random and motion-mode commands, now sent through Arduino, Python and web tools. The README calls the result far from exhaustive and points to a later repository that decoded most of the full IR protocol through MCU dumping.","description_zh":"从在演唱会和球赛现场用 Flipper Zero 录下的信号出发，把录音重放给手环，恢复出足以在家中点亮 PixMob 活动手环的部分红外协议。脉冲时序分析发现信号载波为 38 kHz、比特间隔约 700 微秒；项目再用 ESP32 做有针对性的暴力枚举，找到数百条颜色、渐变、随机和体感模式命令，现可通过 Arduino、Python 和网页工具发送。README 称这些结果远未穷尽，并指向一个后来通过 MCU 转储基本解出完整红外协议的仓库。","entry_url":"https://awesomerea.org/resources/pixmob-ir-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/pixmob-ir-protocol-case/","evidence_url":"https://github.com/danielweidman/pixmob-ir-reverse-engineering/blob/b372420e1e1ff818a8d25ba50f0c71e97e62f138/README.md","group":"cases","id":"pixmob-ir-protocol-case","json_url":"https://awesomerea.org/resources/pixmob-ir-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/pixmob-ir-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pixmob-ir-protocol-case/index.md","name":"PixMob IR reverse engineering: controlling event wristbands at home","name_zh":"PixMob 红外逆向工程：在家控制活动手环","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the 2026-02-06 main head; there are no releases. The write-up covers IR bracelets, while the rf folder adds 915 MHz and 868 MHz OOK recordings and notes for RF wristbands, where a further encoding layer and a likely CRC remain unresolved. The project reports testing six IR bracelet versions made between 2014 and 2021, and a hardware table lists boards and MCUs where known.","Needs the user’s own PixMob bracelets with fresh batteries and an Arduino-compatible board or ESP32 with a 940 nm IR emitter, using the IRremote or IRremoteESP8266 library; a Flipper Zero can instead send codes from a separate repository. The Python tools need pyserial, PySimpleGUI and clipboard, and the web interface runs in Chrome and connects directly to the Arduino.","The evidence is recordings and observed bracelet reactions: the repository holds raw Flipper IR captures from several events, edited RF captures, the discovered effect definitions, a record of brute-force attempts and a dump of one bracelet’s 24C02 EEPROM. The README says brute forcing targeted only a few packet lengths, so the code list is far from exhaustive, and the programming and choreography signals used at events remain undiscovered.","Python unit tests cover the conversion functions and Flipper-file parsing; there is no CI. Effects are reported by the author and contributors from their own bracelets.","MIT (LICENSE). PixMob’s hardware, firmware and trademarks are outside that license, and the X-ray images are credited to Samy Kamkar."],"requirements_zh":["审阅对象为 2026-02-06 的 main 最新提交，没有发布版本。主文档针对红外手环；rf 文件夹另外提供射频手环的 915 MHz 与 868 MHz OOK 录音和笔记，其中可能存在的额外编码层和 CRC 仍未解开。项目报告测试了 2014 至 2021 年间生产的六个红外手环版本，硬件表列出了已知的电路板和 MCU。","需要用户自己的 PixMob 手环（换上新电池），以及连接 940 nm 红外发射器的 Arduino 兼容板或 ESP32，并使用 IRremote 或 IRremoteESP8266 库；也可改用 Flipper Zero，从另一个仓库发送代码。Python 工具需要 pyserial、PySimpleGUI 和 clipboard，网页界面在 Chrome 中运行并直接连接 Arduino。","证据来自录音和观察到的手环反应：仓库收录多场活动的原始 Flipper 红外录音、整理过的射频录音、已发现的效果定义、暴力枚举尝试记录，以及一只手环的 24C02 EEPROM 转储。README 说明暴力枚举只针对少数几种数据包长度，因此代码列表远未穷尽，活动中使用的编程和编排信号仍未发现。","Python 单元测试覆盖转换函数和 Flipper 文件解析；项目没有 CI。各种效果由作者和贡献者在自己的手环上报告。","采用 MIT 许可（LICENSE）。PixMob 的硬件、固件和商标不在该许可范围内，X 光图片注明来自 Samy Kamkar。"],"targets":["protocol"],"url":"https://github.com/danielweidman/pixmob-ir-reverse-engineering","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/wtsxDev/reverse-engineering/blob/b25498551c6d7110685896078afeb27097aa1e24/package.json","https://github.com/wtsxDev/reverse-engineering/blob/b25498551c6d7110685896078afeb27097aa1e24/.travis.yml"],"category":"related-lists","description_en":"A single-README awesome list, started in January 2017 and maintained under the KaliTut name, of 139 reverse-engineering links in 16 sections: books, courses, practice targets, hex editors, binary-format tools, disassemblers, binary analysis, bytecode analysis, import reconstruction, dynamic analysis, debugging, Mac decryption, document analysis, scripting, Android and YARA. Entries are mostly a tool or resource name with its link, a few with a one-line usage note, and lean towards Windows and macOS tooling and malware analysis.","description_zh":"以单个 README 维护的 awesome 清单，2017 年 1 月创建，以 KaliTut 名义维护，共收录 139 个逆向工程链接，分为 16 个部分：书籍、课程、练习目标、十六进制编辑器、二进制格式工具、反汇编器、二进制分析、字节码分析、导入表重建、动态分析、调试、Mac 解密、文档分析、脚本、Android 和 YARA。条目大多只有工具或资源名称及链接，少数附一行用法说明，内容偏重 Windows 与 macOS 工具以及恶意软件分析。","entry_url":"https://awesomerea.org/resources/wtsxdev-reverse-engineering-list/","entry_url_zh":"https://awesomerea.org/zh/resources/wtsxdev-reverse-engineering-list/","evidence_url":"https://github.com/wtsxDev/reverse-engineering/blob/b25498551c6d7110685896078afeb27097aa1e24/README.md","group":"learn","id":"wtsxdev-reverse-engineering-list","json_url":"https://awesomerea.org/resources/wtsxdev-reverse-engineering-list/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/wtsxdev-reverse-engineering-list/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wtsxdev-reverse-engineering-list/index.md","name":"Reverse Engineering resources (wtsxDev)","name_zh":"Reverse Engineering resources 逆向工程资源清单（wtsxDev）","record_type":"resource","relationship":"learning","requirements":["Reviewed at commit b254985 (2019-03-07), still the default-branch head; all 26 commits date from 2017–2019, so the list predates most current tools and any LLM-assisted workflow. 24 of its 147 unique URLs gave no response, a 404 or a 503, among them every tuts4you download link, the Apple man-page links, Crackmes.de, malwr.com and the CodePlex z3 page.","Entries state no license, platform, maturity or maintenance status, so each tool must be checked at its own source; several, such as IDA Pro, 010 Editor and Binary Ninja, are commercial. Books mostly use amzn.to short links, and the header image and five closing links point to book lists on kalitut.com.","The Practice section places crackme and CTF sites next to public malware-sample repositories with only a warning to be careful with malware, and the Mac Decrypt section names tools without describing their use.","A package.json and .travis.yml set up remark-lint checks for list order, duplicate links and dead links on Node.js 8 under Travis CI. GitHub detects no license, the repository has no license file and the package.json license field is empty, so the list states no reuse terms; linked tools and books keep their own."],"requirements_zh":["审阅提交为 b254985（2019-03-07），至今仍是默认分支的最新提交；全部 26 个提交均来自 2017–2019 年，因此清单早于当前多数工具，也不涉及任何 LLM 辅助的工作流程。147 个不重复 URL 里有 24 个无响应、返回 404 或 503，其中包括全部 tuts4you 下载链接、Apple 手册页链接、Crackmes.de、malwr.com 以及 CodePlex 上的 z3 页面。","条目未注明许可证、平台、成熟度或维护状态，每个工具都需在其自身来源中核实；IDA Pro、010 Editor 和 Binary Ninja 等为商业产品。书籍大多使用 amzn.to 短链接，页首图片和末尾五个链接指向 kalitut.com 上的书单。","“练习”部分把 crackme 和 CTF 网站与公开的恶意软件样本库并列，只附有一句注意恶意软件的提醒；“Mac 解密”部分只列出工具名称，未说明用法。","package.json 和 .travis.yml 在 Travis CI 上以 Node.js 8 配置了 remark-lint 检查，涵盖列表顺序、重复链接和失效链接。GitHub 未检测到许可证，仓库没有许可证文件，package.json 的 license 字段也为空，因此清单未声明复用条款；所链接的工具和书籍保留各自条款。"],"targets":["app","binary"],"url":"https://github.com/wtsxDev/reverse-engineering","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/JackPriceBurns/decomp-academy-fe/blob/a21f9d00dcdcb00936c3f0369f396b555e893d93/src/curriculum/01-gamecube-c/_course.md","https://github.com/JackPriceBurns/decomp-academy-fe/blob/a21f9d00dcdcb00936c3f0369f396b555e893d93/src/curriculum/02-gba/_course.md","https://github.com/JackPriceBurns/decomp-academy-fe/blob/a21f9d00dcdcb00936c3f0369f396b555e893d93/src/curriculum/03-n64-c/_course.md","https://github.com/JackPriceBurns/decomp-academy-fe/blob/a21f9d00dcdcb00936c3f0369f396b555e893d93/src/curriculum/01-gamecube-c/04-proving-ground/01-mastery/001-spellstone-setstate.md","https://github.com/JackPriceBurns/decomp-academy-fe/blob/a21f9d00dcdcb00936c3f0369f396b555e893d93/.env.example","https://github.com/JackPriceBurns/decomp-academy-fe/blob/a21f9d00dcdcb00936c3f0369f396b555e893d93/CLAUDE.md","https://github.com/JackPriceBurns/decomp-academy-fe/blob/a21f9d00dcdcb00936c3f0369f396b555e893d93/LICENSE","https://github.com/JackPriceBurns/decomp-academy-be/blob/d80447dad332e9c15ac4549d8d42a28a0a9daedd/README.md"],"category":"learning","description_en":"A free, English, in-browser course in matching decompilation maintained by Jack Price-Burns: learners read a function's target assembly, write C, and the original console compiler grades the result byte for byte. Lessons build from reading registers and arithmetic through control flow, structs, floating point, the ABI, globals, optimizer behaviour and 64-bit integers, then finish with functions adapted from open-source decompilation projects. The curriculum now spans GameCube PowerPC, Game Boy Advance Thumb and Nintendo 64 MIPS courses, and the frontend source is on GitHub.","description_zh":"由 Jack Price-Burns 维护的免费英文在线课程，在浏览器中教授一致性反编译：学习者阅读函数的目标汇编，编写 C 代码，再由原版主机编译器逐字节评判结果。课程从读寄存器和算术运算讲起，依次覆盖控制流、结构体、浮点、ABI、全局变量、优化器行为和 64 位整数，最后以改编自开源反编译项目的函数收尾。课程目前包括 GameCube PowerPC、Game Boy Advance Thumb 和 Nintendo 64 MIPS 三门，前端源码公开在 GitHub 上。","entry_url":"https://awesomerea.org/resources/decomp-academy/","entry_url_zh":"https://awesomerea.org/zh/resources/decomp-academy/","evidence_url":"https://github.com/JackPriceBurns/decomp-academy-fe/blob/a21f9d00dcdcb00936c3f0369f396b555e893d93/README.md","group":"learn","id":"decomp-academy","json_url":"https://awesomerea.org/resources/decomp-academy/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/decomp-academy/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/decomp-academy/index.md","name":"Decomp Academy","name_zh":"Decomp Academy 一致性反编译课程","record_type":"resource","relationship":"learning","requirements":["Reviewed at frontend commit a21f9d0 (2026-09-23); the repository was first published in June 2026 and has had commits most months since. The README still describes a single GameCube course of 258 lessons, but the reviewed curriculum and the live site list 755 lessons in three courses: GameCube (263), Game Boy Advance (251) and Nintendo 64 (241), each in four tiers from warm-up to real functions.","Lessons run in the browser at decomp-academy.dev and the README says no signup is needed to start; an account stores progress. Grading compiles the learner's C with the original compilers and diffs it using objdiff: Metrowerks CodeWarrior GC/2.0 for GameCube and SGI IDO 5.3 for Nintendo 64 on the hosted backend, a separate AGPL-3.0 repository that the README says runs the CodeWarrior compilers under wibo, and agbcc built to WebAssembly in the browser for Game Boy Advance.","No game files are needed: the later lessons adapt functions from open-source decompilation projects the README credits (Star Fox Adventures, Pikmin 2, Metroid Prime, Mario Party 4), and targets are generated server-side from each lesson's reference C. This repository contains no compiler, and the backend README says it commits only wibo, not MWCC; for local development the README expects Node 18+ and a sibling Star Fox Adventures decompilation checkout that supplies MWCC and binutils, while .env.example says a fresh clone uses the hosted compile API by default.","The frontend is AGPL-3.0, which also covers modified versions run as a network service. A CLAUDE.md lesson-authoring guide for Claude Code is committed."],"requirements_zh":["审阅的前端提交为 a21f9d0（2026-09-23）；仓库于 2026 年 6 月首次发布，此后大多数月份都有提交。README 仍只描述一门 258 课的 GameCube 课程，但所审阅的课程目录和在线站点列出了三门课程共 755 课：GameCube（263 课）、Game Boy Advance（251 课）和 Nintendo 64（241 课），每门分为从热身到真实函数的四个层级。","课程在浏览器中进行（decomp-academy.dev），README 称无需注册即可开始，账户用于保存进度。评分时用原版编译器编译学习者的 C 代码，再用 objdiff 比对：GameCube 使用 Metrowerks CodeWarrior GC/2.0，Nintendo 64 使用 SGI IDO 5.3，二者在托管后端运行。后端是另一个 AGPL-3.0 仓库，README 称它在 wibo 下运行 CodeWarrior 编译器；Game Boy Advance 则在浏览器中使用编译为 WebAssembly 的 agbcc。","无需任何游戏文件：后期课程改编自 README 致谢的开源反编译项目（Star Fox Adventures、Pikmin 2、Metroid Prime、Mario Party 4）中的函数，目标汇编由服务器根据每课的参考 C 代码生成。本仓库不含任何编译器，后端 README 也称其只提交了 wibo，未提交 MWCC；README 说明本地开发需要 Node 18+，以及一个同级目录下提供 MWCC 和 binutils 的 Star Fox Adventures 反编译项目检出，而 .env.example 称全新克隆默认使用托管的编译 API。","前端采用 AGPL-3.0 许可证，修改后作为网络服务运行的版本同样受其约束。仓库中提交了一份供 Claude Code 使用的课程编写指南 CLAUDE.md。"],"targets":["binary","game"],"url":"https://decomp-academy.dev/","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/zeldaret/ph/blob/f0799bd6038be6858499ec68f0d03cdbbfa53d0b/INSTALL.md","https://github.com/zeldaret/ph/blob/f0799bd6038be6858499ec68f0d03cdbbfa53d0b/extract/README.md","https://github.com/zeldaret/ph/blob/f0799bd6038be6858499ec68f0d03cdbbfa53d0b/docs/build_system.md","https://github.com/zeldaret/ph/blob/f0799bd6038be6858499ec68f0d03cdbbfa53d0b/tools/configure.py","https://github.com/zeldaret/ph/blob/f0799bd6038be6858499ec68f0d03cdbbfa53d0b/tools/download_tool.py","https://github.com/zeldaret/ph/blob/f0799bd6038be6858499ec68f0d03cdbbfa53d0b/ph_usa.sha1","https://github.com/zeldaret/ph/tree/f0799bd6038be6858499ec68f0d03cdbbfa53d0b/config","https://github.com/zeldaret/ph/blob/f0799bd6038be6858499ec68f0d03cdbbfa53d0b/.github/workflows/build.yml","https://github.com/zeldaret/ph/blob/f0799bd6038be6858499ec68f0d03cdbbfa53d0b/LICENSE","https://decomp.dev/zeldaret/ph"],"category":"reconstruction-cases","description_en":"Recreates C++ source for The Legend of Zelda: Phantom Hourglass by hand-decompiling its European and US Nintendo DS releases, using the dsd toolkit to delink code from a user-supplied ROM and rebuild the ROM. objdiff tracks matches function by function, and the default build compares the output ROM with a stored SHA-1. The work is at an early stage: decomp.dev reported 2.82% of code matched at the reviewed commit.","description_zh":"通过手工反编译，为《塞尔达传说 幻影沙漏》的欧版与美版 Nintendo DS 重建 C++ 源码：借助 dsd 工具集从使用者自备的 ROM 中拆分代码，再重新构建 ROM。objdiff 逐个函数跟踪匹配情况，默认构建会将输出 ROM 与仓库保存的 SHA-1 比对。项目仍处于早期阶段：decomp.dev 报告所审提交有 2.82% 的代码已匹配。","entry_url":"https://awesomerea.org/resources/phantom-hourglass-ds-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/phantom-hourglass-ds-decomp-case/","evidence_url":"https://github.com/zeldaret/ph/blob/f0799bd6038be6858499ec68f0d03cdbbfa53d0b/README.md","group":"cases","id":"phantom-hourglass-ds-decomp-case","json_url":"https://awesomerea.org/resources/phantom-hourglass-ds-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/phantom-hourglass-ds-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/phantom-hourglass-ds-decomp-case/index.md","name":"Phantom Hourglass: an early-stage matching Nintendo DS decompilation","name_zh":"《幻影沙漏》：早期阶段的 Nintendo DS 一致性反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["README marks the project as a work in progress that targets the European and American versions, with other versions possibly supported later; configure.py takes eur or usa. Decompilation covers the ARM9 program, its TCM modules and overlays, while docs/build_system.md says the ARM7 program is not decompiled. The output is a Nintendo DS ROM, not a PC port.","Supply your own decrypted base ROM for each version in extract/ as baserom_ph_eur.nds or baserom_ph_usa.nds, matching the SHA-1 values in extract/README.md; dsd then extracts code and assets from it locally. INSTALL.md calls a byte-matching ROM optional and requires the user’s own DS ARM7 BIOS file, matching one of two listed SHA-1 values, to produce one. README says the repository contains no assets or assembly; config/ does commit game-derived dsd delink, symbol and relocation tables for 65 modules per version.","INSTALL.md lists Windows (recommended) or Linux with Python 3.11+ and pip, GCC 9+, Ninja and pre-commit hooks; on Linux the Windows compiler runs through wibo by default, or Wine on request. configure.py downloads dsd v0.11.0, objdiff v3.4.0, sjiswrap v1.2.2 and wibo 0.6.16 from GitHub releases, and a Metrowerks mwccarm bundle (version 2.0/sp1p5 is used) from decomp.aetias.com.","The default ninja targets generate objdiff data, run dsd’s module and symbol checks and compare the built ROM with ph_eur.sha1 or ph_usa.sha1. CI builds both versions in a build container that supplies extracted files and the compiler, running the ARM9 link, objdiff report and checks but not the ROM hash. decomp.dev’s default usa report for the pinned commit lists 102,202 of 3,622,306 code bytes (2.82%) and 1,351 of 24,610 functions matched, with 28 of 190 units complete.","The repository carries CC0-1.0; that dedication does not cover Nintendo’s game, its extracted files, the BIOS or the downloaded Metrowerks compiler."],"requirements_zh":["README 标明项目仍在进行中，目标为欧版和美版，其他版本日后可能支持；configure.py 接受 eur 或 usa。反编译范围是 ARM9 程序及其 TCM 模块和覆盖层，docs/build_system.md 说明 ARM7 程序不在反编译之列。产物是 Nintendo DS ROM，不是 PC 移植。","需为每个版本将自己的已解密基础 ROM 以 baserom_ph_eur.nds 或 baserom_ph_usa.nds 放入 extract/，并与 extract/README.md 所列 SHA-1 一致；随后由 dsd 在本地从中提取代码和素材。INSTALL.md 称逐字节一致的 ROM 是可选项，要生成它还需使用者自己的 DS ARM7 BIOS 文件，且须与所列两个 SHA-1 之一相符。README 称仓库不含素材或汇编；不过 config/ 提交了源自游戏的 dsd 拆分、符号与重定位表，每个版本 65 个模块。","INSTALL.md 列出的平台为 Windows（推荐）或 Linux，需 Python 3.11+ 与 pip、GCC 9+、Ninja 以及 pre-commit 钩子；在 Linux 上默认通过 wibo 运行 Windows 编译器，也可改用 Wine。configure.py 从 GitHub 发行版下载 dsd v0.11.0、objdiff v3.4.0、sjiswrap v1.2.2 和 wibo 0.6.16，并从 decomp.aetias.com 下载 Metrowerks mwccarm 编译器包（使用其中的 2.0/sp1p5 版本）。","默认 ninja 目标会生成 objdiff 数据、运行 dsd 的模块与符号检查，并将构建出的 ROM 与 ph_eur.sha1 或 ph_usa.sha1 比对。CI 在提供提取文件和编译器的构建容器中构建两个版本，执行 ARM9 链接、objdiff 报告和各项检查，但不校验 ROM 哈希。decomp.dev 针对该固定提交的默认 usa 报告显示，3,622,306 个代码字节中有 102,202 个（2.82%）、24,610 个函数中有 1,351 个已匹配，190 个单元中有 28 个已完成。","仓库采用 CC0-1.0；该声明不涵盖任天堂的游戏及其提取文件、BIOS 或下载的 Metrowerks 编译器。"],"targets":["game"],"url":"https://github.com/zeldaret/ph","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/vabold/Kinoko/blob/550c97a299c4de4a9f7cb90bc79cf8c7c768557c/STATUS.md","https://github.com/vabold/Kinoko/blob/550c97a299c4de4a9f7cb90bc79cf8c7c768557c/docs/KRKG.md","https://github.com/vabold/Kinoko/blob/550c97a299c4de4a9f7cb90bc79cf8c7c768557c/docs/TestCase.md","https://github.com/vabold/Kinoko/blob/550c97a299c4de4a9f7cb90bc79cf8c7c768557c/source/host/KTestSystem.cc","https://github.com/vabold/Kinoko/blob/550c97a299c4de4a9f7cb90bc79cf8c7c768557c/source/game/system/ResourceManager.cc","https://github.com/vabold/Kinoko/blob/550c97a299c4de4a9f7cb90bc79cf8c7c768557c/configure.py","https://github.com/vabold/Kinoko/blob/550c97a299c4de4a9f7cb90bc79cf8c7c768557c/CMakeLists.txt","https://github.com/vabold/Kinoko/blob/550c97a299c4de4a9f7cb90bc79cf8c7c768557c/.github/workflows/build.yml","https://github.com/vabold/Kinoko/blob/550c97a299c4de4a9f7cb90bc79cf8c7c768557c/tools/status_check.py","https://github.com/vabold/Kinoko/blob/550c97a299c4de4a9f7cb90bc79cf8c7c768557c/LICENSE","https://github.com/vabold/Kinoko/releases/tag/0.6"],"category":"reconstruction-cases","description_en":"Re-implements Mario Kart Wii’s physics engine in C++ as a command-line simulator, continuing stblr/Hanachan’s goal of perfectly accurate time-trial ghost replay. Each test case replays a recorded ghost through the engine and compares kart position, rotation, velocities, speed and checkpoint state frame by frame with a trace captured from the original game. It is a behavioural reimplementation of the physics only, not a matching decompilation, and has no graphical frontend.","description_zh":"以 C++ 将 Mario Kart Wii 的物理引擎重新实现为命令行模拟器，延续 stblr/Hanachan 的目标：完全准确地回放计时赛幽灵记录。每个测试用例让引擎重放一条幽灵记录，并逐帧将赛车的位置、旋转、速度向量、速率和检查点状态与从原版游戏采集的轨迹比较。它只在行为层面重新实现物理部分，并非一致性反编译，也没有图形前端。","entry_url":"https://awesomerea.org/resources/kinoko-mkwii-physics-reimplementation-case/","entry_url_zh":"https://awesomerea.org/zh/resources/kinoko-mkwii-physics-reimplementation-case/","evidence_url":"https://github.com/vabold/Kinoko/blob/550c97a299c4de4a9f7cb90bc79cf8c7c768557c/README.md","group":"cases","id":"kinoko-mkwii-physics-reimplementation-case","json_url":"https://awesomerea.org/resources/kinoko-mkwii-physics-reimplementation-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/kinoko-mkwii-physics-reimplementation-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/kinoko-mkwii-physics-reimplementation-case/index.md","name":"Kinoko: reimplementing Mario Kart Wii’s physics engine for exact ghost replay","name_zh":"Kinoko：为精确回放幽灵记录而重新实现 Mario Kart Wii 物理引擎","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirements":["README describes a C++ reimplementation of Mario Kart Wii’s physics engine aiming at perfectly accurate ghost replay. At the reviewed commit STATUS.md lists 55 time-trial ghost test cases, each marked synchronized for every frame; the latest GitHub release, 0.6 (2025-09-04), adds x86-64 Linux, macOS and Windows binaries of the simulator. Source comments name addresses in the original game, but nothing rebuilds its executable; README points to the separate riidefi/mkw matching decompilation for that.","Running needs the Race folder (the Common and course archives) from your own Mario Kart Wii disc, placed relative to the executable; the repository ships no game files, and README requires any contributed frontend not to distribute in-game assets. The committed samples are time-trial ghost files (.rkg) with per-frame .krkg reference traces that README says come from a custom vabold/mkw-sp build running the PAL release; such traces are verification data captured from the game, as is common for reconstruction projects.","README lists g++ 13.1 with C++23, ninja 1.3 and Python 3.6; configure.py generates the ninja build and compiles testCases.json into the binary suite file. CMakeLists.txt also exposes a libkinoko library target for embedding the engine in other C++23 projects. CI builds with GCC 14 on Ubuntu; the program is a command-line host with test and replay modes, and README says no GUI is planned.","kinoko test compares position, rotation, internal and external velocity, speed, acceleration, soft speed limit, race completion and checkpoint values with every .krkg frame by exact equality and reports the first desynchronized frame; kinoko replay checks whether a ghost finishes with the time in its .rkg header. CI runs the suite with runtime files fetched from a secret-configured URL and checks that STATUS.md is current. These are project-reported results.","LICENSE applies MIT (copyright vabold, 2022–2026) to the project; Mario Kart Wii and its game data keep Nintendo’s rights, and the bundled doxygen-awesome-css theme has its own license file."],"requirements_zh":["README 介绍项目是 Mario Kart Wii 物理引擎的 C++ 重新实现，目标是完全准确地回放幽灵记录。所审提交中，STATUS.md 列出 55 个计时赛幽灵测试用例，全部标为逐帧同步；最新 GitHub 发布版 0.6（2025-09-04）附有模拟器的 x86-64 Linux、macOS 和 Windows 二进制文件。源码注释标明了原版游戏中的地址，但项目不会重新构建游戏可执行文件；README 将这一方向指向独立的 riidefi/mkw 一致性反编译项目。","运行时需要使用者自备 Mario Kart Wii 光盘中的 Race 文件夹（Common 与赛道归档），并按相对可执行文件的路径放置；仓库不附带任何游戏文件，README 也要求贡献的前端不得分发游戏内素材。仓库中的样例是计时赛幽灵文件（.rkg）及逐帧 .krkg 参照轨迹；README 称后者由运行 PAL 版游戏的定制 vabold/mkw-sp 构建生成。这类轨迹是从游戏中采集的验证数据，在重建项目中很常见。","README 列出 g++ 13.1（C++23）、ninja 1.3 和 Python 3.6；configure.py 生成 ninja 构建，并把 testCases.json 编译为二进制测试套件文件。CMakeLists.txt 还提供 libkinoko 库目标，可将引擎嵌入其他 C++23 项目。CI 在 Ubuntu 上使用 GCC 14 构建；程序是带测试与回放模式的命令行宿主，README 表示暂无 GUI 计划。","kinoko test 以精确相等的方式，将位置、旋转、内部与外部速度、速率、加速度、软速度上限、比赛完成度和检查点数值与每一帧 .krkg 数据比较，并报告第一个失去同步的帧；kinoko replay 检查幽灵记录完赛时间是否与 .rkg 文件头中的时间一致。CI 使用从机密配置 URL 获取的运行文件执行测试套件，并检查 STATUS.md 是否为最新。这些都是项目报告的结果。","LICENSE 对项目采用 MIT（版权归 vabold，2022–2026）；Mario Kart Wii 及其游戏数据仍归 Nintendo 所有，随附的 doxygen-awesome-css 主题另有许可证文件。"],"targets":["game"],"url":"https://github.com/vabold/Kinoko","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/scriptingxss/owasp-fstm/blob/ec666e8f8b9f7618a248a1c354469893abf0edb2/README.md#L1051-L1084","https://github.com/scriptingxss/owasp-fstm/blob/ec666e8f8b9f7618a248a1c354469893abf0edb2/README.md#L945-L1050","https://github.com/scriptingxss/owasp-fstm/blob/ec666e8f8b9f7618a248a1c354469893abf0edb2/License.md","https://github.com/scriptingxss/owasp-fstm/blob/e32570c52f9d224ef66dbb46dc5df4bad1e48fda/README.md"],"category":"learning","description_en":"A free English methodology, maintained by Aaron Guzman and published on GitBook, for security testing and reverse engineering embedded-device firmware. It is organized as nine stages: information gathering, obtaining firmware, analyzing the image, extracting the filesystem, static analysis of its contents, emulation, dynamic testing, runtime analysis and binary exploitation, with example commands for tools such as binwalk, unblob, FACT, EMBA, Firmwalker, QEMU and Ghidra. An October 2025 revision added C/C++ static-analysis tools, SBOM generation and a mapping to the OWASP IoT Security Verification Standard (ISVS).","description_zh":"由 Aaron Guzman 维护、发布在 GitBook 上的免费英文方法论，用于嵌入式设备固件的安全测试与逆向工程。全文分为九个阶段：信息收集、获取固件、分析固件镜像、提取文件系统、静态分析文件系统内容、仿真、动态测试、运行时分析和二进制漏洞利用，并给出 binwalk、unblob、FACT、EMBA、Firmwalker、QEMU 和 Ghidra 等工具的示例命令。2025 年 10 月的修订加入了 C/C++ 静态分析工具、SBOM 生成，以及与 OWASP IoT 安全验证标准（ISVS）的对应关系。","entry_url":"https://awesomerea.org/resources/owasp-fstm/","entry_url_zh":"https://awesomerea.org/zh/resources/owasp-fstm/","evidence_url":"https://github.com/scriptingxss/owasp-fstm/blob/ec666e8f8b9f7618a248a1c354469893abf0edb2/README.md","group":"learn","id":"owasp-fstm","json_url":"https://awesomerea.org/resources/owasp-fstm/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/owasp-fstm/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/owasp-fstm/index.md","name":"OWASP Firmware Security Testing Methodology (FSTM)","name_zh":"OWASP 固件安全测试方法论（FSTM）","record_type":"resource","relationship":"learning","requirements":["Reviewed at default-branch commit ec666e8 (2025-10-05). Most of the text dates from 2019–2020, with a 2022 EMBA/EMBArk update and an October 2025 revision that refreshed tool references, removed commercial ones and added the SAST, SBOM and ISVS sections; the published GitBook includes those additions. A feature branch adding ISVS requirement mappings by stage (June 2026) was not merged at review, and a shorter 2020 Chinese translation sits on the separate zhong-wen-fstm branch.","Its stated audience is security researchers, software developers, consultants, hobbyists and information-security professionals. It is a single long reference page of procedures and commands rather than a paced course, and it points to the OWASP IoT Security Testing Guide for hardware, wireless, network and user-interface tests outside firmware.","Following it needs the firmware image or the physical device under an authorized assessment; the methodology tells testers to choose acquisition methods by project objectives and rules of engagement and to follow local laws. Some stages assume hardware debug access and a chip programmer. Tools mostly run on Linux; the README links a preconfigured EmbedOS Ubuntu VM from 2020 and, for practice, deliberately vulnerable firmware such as OWASP IoTGoat, DVRF and DVID.","Licensed CC BY-SA 4.0 (License.md)."],"requirements_zh":["审阅的默认分支提交为 ec666e8（2025-10-05）。正文大多写于 2019–2020 年，2022 年更新过 EMBA/EMBArk 部分；2025 年 10 月的修订更新了工具引用、删除了商业工具，并加入 SAST、SBOM 和 ISVS 章节，已发布的 GitBook 也包含这些内容。另有一个按阶段补充 ISVS 要求对应关系的功能分支（2026 年 6 月），审阅时尚未合并；一份篇幅较短的 2020 年中文译本位于单独的 zhong-wen-fstm 分支。","其目标读者为安全研究人员、软件开发人员、顾问、爱好者和信息安全专业人员。全文是一篇很长的参考页面，提供流程和命令，而不是循序渐进的课程；固件以外的硬件、无线、网络和用户界面测试，则请读者参考 OWASP IoT 安全测试指南（ISTG）。","按此方法操作需要在获得授权的评估中拿到固件镜像或实体设备；方法论要求根据项目目标和约定的测试规则选择获取方式，并遵守当地法律。部分阶段需要硬件调试接口和芯片编程器。工具大多在 Linux 上运行；README 链接了一个 2020 年预配置的 EmbedOS Ubuntu 虚拟机，并推荐 OWASP IoTGoat、DVRF 和 DVID 等故意含漏洞的固件用于练习。","采用 CC BY-SA 4.0 许可证（License.md）。"],"targets":["firmware"],"url":"https://scriptingxss.gitbook.io/firmware-security-testing-methodology/","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-27","additional_evidence_urls":["https://github.com/user1342/Awesome-Android-Reverse-Engineering/blob/0ade43d6b46ff19675ca4d8b8f1cc098e1af73b8/LICENSE","https://github.com/user1342/Awesome-Android-Reverse-Engineering/commit/0ade43d6b46ff19675ca4d8b8f1cc098e1af73b8","https://github.com/user1342/Awesome-Android-Reverse-Engineering/commit/efbdc6dda259e4639b345f33c35a44be1c565d90"],"category":"related-lists","description_en":"An awesome list of Android reverse-engineering training, tools and resources started in 2023 by James Stevenson, with 92 one-line entries, 16 of them starred as great and up to date. It covers courses, videos and books; static analysis and deobfuscation, networking and Frida-based instrumentation, decompilers and malware analysis tools; documentation and case studies; CTFs and crackmes; obfuscation and anti-reversing; and a short firmware and kernel section.","description_zh":"James Stevenson 于 2023 年创建的 awesome 清单，收录 Android 逆向工程的培训、工具和资源，共 92 个单行条目，其中 16 个以星标注为优质且较新的资源。内容涵盖课程、视频和书籍，静态分析与反混淆、网络分析与基于 Frida 的插桩、反编译器和恶意软件分析工具，文档与案例研究，CTF 与 crackme，混淆与反逆向，以及一个简短的固件与内核部分。","entry_url":"https://awesomerea.org/resources/awesome-android-reverse-engineering/","entry_url_zh":"https://awesomerea.org/zh/resources/awesome-android-reverse-engineering/","evidence_url":"https://github.com/user1342/Awesome-Android-Reverse-Engineering/blob/0ade43d6b46ff19675ca4d8b8f1cc098e1af73b8/README.md","group":"learn","id":"awesome-android-reverse-engineering","json_url":"https://awesomerea.org/resources/awesome-android-reverse-engineering/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/awesome-android-reverse-engineering/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/awesome-android-reverse-engineering/index.md","name":"Awesome Android Reverse Engineering","name_zh":"Awesome Android Reverse Engineering Android 逆向工程资源清单","record_type":"resource","relationship":"learning","requirements":["Reviewed at commit 0ade43d (2025-07-08). 51 of 58 commits date from 2023; a March 2025 rewrite reorganized the list and added the obfuscation and firmware sections, and the July 2025 commit removed the Cloud API section while its contents-menu entry remains.","Entries give a link and a one-line summary with no license, version or maintenance notes, and some summaries are loose; AFLSmart, for example, is described as a firmware-image fuzzer, while its own README presents an input-structure-aware greybox fuzzer. 8 of 90 unique URLs gave no response, a 404 or a 530: five linked GitHub repositories no longer exist, four of them (the ATDF, Paranoid, libhooker and Android kernel-exploits entries) added in the March 2025 rewrite, and the Houseparty case study, the Flare-On page and AndroidXref did not load.","Six entries are the maintainer's own tools and one his blog post. Burp Suite, IDA Pro, JEB and DexGuard are commercial, the Documentation section links the APKMirror and APKPure download sites, and tools for bypassing app controls, dumping memory and kernel exploitation appear as listed.","LICENSE is the MIT License (2023, James Stevenson), although the README points to a LICENSE.md that does not exist; placeholder changelog and to-do files from the repository template remain under .github. Linked tools, books and APKs keep their own terms. An independent discovery list."],"requirements_zh":["审阅提交为 0ade43d（2025-07-08）。58 个提交中有 51 个来自 2023 年；2025 年 3 月的一次改写重新组织了清单，并新增混淆与固件部分；2025 年 7 月的提交删除了“Cloud API”部分，但目录中仍保留该条目。","每个条目只有链接和一行简介，没有许可证、版本或维护状态说明，部分简介也不够准确：例如 AFLSmart 被描述为固件镜像模糊测试工具，而其自身 README 介绍的是感知输入结构的灰盒模糊测试工具。90 个不重复 URL 里有 8 个无响应、返回 404 或 530：5 个链接的 GitHub 仓库已不存在，其中 4 个（ATDF、Paranoid、libhooker 和 Android 内核漏洞利用条目）是在 2025 年 3 月的改写中加入的；Houseparty 案例文章、Flare-On 页面和 AndroidXref 也无法打开。","其中 6 个条目是维护者自己的工具，1 个是其博客文章。Burp Suite、IDA Pro、JEB 和 DexGuard 为商业产品；“文档”部分链接了 APKMirror 和 APKPure 这两个 APK 下载站；清单中还列有用于绕过应用防护、转储内存和内核漏洞利用的工具。","LICENSE 为 MIT 许可（2023 年，James Stevenson），但 README 指向一个并不存在的 LICENSE.md；.github 目录下仍留有仓库模板自带的占位变更日志和待办文件。所链接的工具、书籍和 APK 保留各自条款。这是独立的发现清单。"],"targets":["app"],"url":"https://github.com/user1342/Awesome-Android-Reverse-Engineering","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","additional_evidence_urls":["https://github.com/doldecomp/mkdd/blob/1d2918ca577817ba431baddb78dda24831e0e0bb/configure.py","https://github.com/doldecomp/mkdd/blob/1d2918ca577817ba431baddb78dda24831e0e0bb/config/MarioClub_us/config.yml","https://github.com/doldecomp/mkdd/blob/1d2918ca577817ba431baddb78dda24831e0e0bb/config/MarioClub_us/build.sha1","https://github.com/doldecomp/mkdd/blob/1d2918ca577817ba431baddb78dda24831e0e0bb/config/Release_eu/config.yml","https://github.com/doldecomp/mkdd/blob/1d2918ca577817ba431baddb78dda24831e0e0bb/.github/workflows/build.yml","https://github.com/doldecomp/mkdd/blob/1d2918ca577817ba431baddb78dda24831e0e0bb/LICENSE","https://decomp.dev/doldecomp/mkdd"],"category":"reconstruction-cases","description_en":"A work-in-progress 1:1 decompilation of Mario Kart: Double Dash!! that rebuilds the GameCube main.dol of the US debug build (MarioClub_us) from C and C++ with the original Metrowerks compilers, checking it against a stored SHA-1. The build splits the binary from a user-supplied disc image, and objdiff compares objects during development. decomp.dev reported 47.09% of code matched at the reviewed commit; a European retail target is configured but marked as not working yet.","description_zh":"《马力欧卡丁车：双重冲刺!!》的进行中 1:1 反编译：用原版 Metrowerks 编译器从 C 与 C++ 源码重建美版调试构建（MarioClub_us）的 GameCube main.dol，并与仓库保存的 SHA-1 比对。构建从使用者自备的光盘镜像中拆分二进制，开发时用 objdiff 比对目标文件。decomp.dev 报告所审提交有 47.09% 的代码已匹配；欧版零售目标虽已配置，但标注为尚不可用。","entry_url":"https://awesomerea.org/resources/mario-kart-double-dash-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/mario-kart-double-dash-decomp-case/","evidence_url":"https://github.com/doldecomp/mkdd/blob/1d2918ca577817ba431baddb78dda24831e0e0bb/README.md","group":"cases","id":"mario-kart-double-dash-decomp-case","json_url":"https://awesomerea.org/resources/mario-kart-double-dash-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/mario-kart-double-dash-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mario-kart-double-dash-decomp-case/index.md","name":"Mario Kart: Double Dash!!: a matching GameCube decompilation of the debug build","name_zh":"《马力欧卡丁车：双重冲刺!!》：调试版 GameCube 一致性反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["README calls this a WIP 1:1 decompilation and says only the debug version is supported: the default MarioClub_us (USA) target, whose main.dol SHA-1 config/MarioClub_us/build.sha1 records. configure.py also lists Release_eu, but its config.yml is marked as not working yet, and CI builds only MarioClub_us. The output is a GameCube DOL, not a PC executable or port.","Copy your own disc image of that build to orig/MarioClub_us; ISO (GCM), RVZ, WIA, WBFS, CISO, NFS, GCZ and TGC images are accepted. README says the repository contains no game assets or assembly: decomp-toolkit splits the user’s DOL using the committed symbol and split tables, and during the build extracts a font, system.arc and build-time data from that DOL locally.","Builds need Python and ninja on Windows (native tooling recommended), macOS (with wine-crossover) or Linux (an automatically downloaded wibo on x86, Wine elsewhere). configure.py pins decomp-toolkit v1.6.2, objdiff v3.3.1, binutils 2.42-1, sjiswrap v1.2.1, wibo 0.7.0 and the 20250812 compiler bundle, using Metrowerks GC/2.6 for game, JSystem, MSL and TRK code and GC/1.2.5n for the Dolphin SDK libraries.","Objects marked Matching (518 in configure.py; 277 remain NonMatching and 13 Equivalent) are compiled from source, the rest are taken from the split DOL, and the build checks main.dol against build.sha1. CI builds MarioClub_us in a container that supplies the disc files and compilers, uploads a progress report and validates symbol order for changed C++ files. decomp.dev’s report for the pinned commit lists 1,517,644 of 3,222,748 code bytes (47.09%) and 8,695 of 15,357 functions matched, with 518 of 807 units complete.","The repository carries CC0-1.0; Nintendo’s game, disc contents and the downloaded compilers keep their own rights. README credits JSystem and SDK code reused from other decompilations, including Metroid Prime, Pikmin 2, Super Mario Galaxy, Super Mario Sunshine and Twilight Princess."],"requirements_zh":["README 称其为进行中的 1:1 反编译，目前只支持调试版，即默认的 MarioClub_us（美版）目标，其 main.dol 的 SHA-1 记录在 config/MarioClub_us/build.sha1 中。configure.py 还列出 Release_eu，但其 config.yml 标注尚不可用，CI 也只构建 MarioClub_us。产物是 GameCube DOL，不是 PC 可执行文件或移植。","需将自己的该版本光盘镜像复制到 orig/MarioClub_us，可接受 ISO（GCM）、RVZ、WIA、WBFS、CISO、NFS、GCZ 和 TGC 格式。README 称仓库不含任何游戏素材或汇编：decomp-toolkit 依据仓库提交的符号表和拆分表拆分使用者的 DOL，并在构建时于本地从该 DOL 中提取字体、system.arc 和构建时间数据。","构建需要 Python 与 ninja，可在 Windows（推荐原生工具）、macOS（需 wine-crossover）或 Linux（x86 上自动下载 wibo，其他架构用 Wine）上进行。configure.py 固定 decomp-toolkit v1.6.2、objdiff v3.3.1、binutils 2.42-1、sjiswrap v1.2.1、wibo 0.7.0 及 20250812 编译器包；游戏、JSystem、MSL 和 TRK 代码使用 Metrowerks GC/2.6，Dolphin SDK 库使用 GC/1.2.5n。","标为 Matching 的目标文件（configure.py 中有 518 个，另有 277 个仍为 NonMatching、13 个为 Equivalent）由源码编译，其余取自拆分出的 DOL，构建会按 build.sha1 校验 main.dol。CI 在提供光盘文件和编译器的容器中构建 MarioClub_us，上传进度报告，并对改动的 C++ 文件校验符号顺序。decomp.dev 针对该固定提交的报告显示，3,222,748 个代码字节中有 1,517,644 个（47.09%）、15,357 个函数中有 8,695 个已匹配，807 个单元中有 518 个已完成。","仓库采用 CC0-1.0；任天堂的游戏、光盘内容和下载的编译器各自保留权利。README 致谢从其他反编译项目复用的 JSystem 和 SDK 代码，包括 Metroid Prime、Pikmin 2、Super Mario Galaxy、Super Mario Sunshine 和 Twilight Princess。"],"targets":["game"],"url":"https://github.com/doldecomp/mkdd","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","additional_evidence_urls":["https://github.com/crowded-street/3s-decomp/blob/be9b9bc69dc19822a8eca9ce3e72ba560d5a3835/docs/builde-guide.md","https://github.com/crowded-street/3s-decomp/blob/be9b9bc69dc19822a8eca9ce3e72ba560d5a3835/docs/decompiling.md","https://github.com/crowded-street/3s-decomp/blob/be9b9bc69dc19822a8eca9ce3e72ba560d5a3835/Makefile","https://github.com/crowded-street/3s-decomp/blob/be9b9bc69dc19822a8eca9ce3e72ba560d5a3835/config/anniversary/sfiii.anniversary.yaml","https://github.com/crowded-street/3s-decomp/blob/be9b9bc69dc19822a8eca9ce3e72ba560d5a3835/tools/compare_bytes.py","https://github.com/crowded-street/3s-decomp/blob/be9b9bc69dc19822a8eca9ce3e72ba560d5a3835/cri-progress.md","https://github.com/crowded-street/3s-decomp/blob/be9b9bc69dc19822a8eca9ce3e72ba560d5a3835/src/anniversary/sf33rd/Source/Game/end_20.c#L321-L322","https://github.com/crowded-street/3s-decomp/blob/be9b9bc69dc19822a8eca9ce3e72ba560d5a3835/src/anniversary/sf33rd/Source/Game/MTRANS.c#L1145-L1146","https://github.com/crowded-street/3s-decomp/blob/be9b9bc69dc19822a8eca9ce3e72ba560d5a3835/config/cps3/sfiii3n.yaml","https://github.com/crowded-street/3s-decomp/blob/be9b9bc69dc19822a8eca9ce3e72ba560d5a3835/tools/requirements-python.txt","https://github.com/crowded-street/3s-decomp/blob/be9b9bc69dc19822a8eca9ce3e72ba560d5a3835/.gitmodules","https://github.com/crowded-street/3s-decomp/blob/be9b9bc69dc19822a8eca9ce3e72ba560d5a3835/include/cri/cri_xpts.h","https://github.com/crowded-street/3s-decomp/blob/be9b9bc69dc19822a8eca9ce3e72ba560d5a3835/LICENSE","https://github.com/crowded-street/3s-decomp/commit/be9b9bc69dc19822a8eca9ce3e72ba560d5a3835"],"category":"reconstruction-cases","description_en":"Decompiles the PlayStation 2 executable of Street Fighter III: 3rd Strike from Street Fighter Anniversary Collection into C that period Metrowerks and EE GCC compilers rebuild, then compares the rebuilt executable word by word with the user’s original. README reports the game code fully decompiled and the CRI middleware partly so. The separate 3SX native port describes itself as this project’s continuation.","description_zh":"将 Street Fighter Anniversary Collection 中《街头霸王 III：3rd Strike》的 PlayStation 2 可执行文件反编译为 C 源码，用当年的 Metrowerks 与 EE GCC 编译器重新构建，再将重建出的可执行文件与使用者自备的原文件逐字比较。README 报告游戏代码已全部反编译，CRI 中间件部分完成。另有独立的 3SX 原生移植，自称是本项目的延续。","entry_url":"https://awesomerea.org/resources/sfiii-3rd-strike-ps2-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sfiii-3rd-strike-ps2-decomp-case/","evidence_url":"https://github.com/crowded-street/3s-decomp/blob/be9b9bc69dc19822a8eca9ce3e72ba560d5a3835/README.md","group":"cases","id":"sfiii-3rd-strike-ps2-decomp-case","json_url":"https://awesomerea.org/resources/sfiii-3rd-strike-ps2-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sfiii-3rd-strike-ps2-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sfiii-3rd-strike-ps2-decomp-case/index.md","name":"3S Decomp: a byte-compared PS2 decompilation of Street Fighter III: 3rd Strike","name_zh":"3S Decomp：逐字比对的《街头霸王 III：3rd Strike》PS2 反编译重建","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["README reports the game code fully decompiled and the CRI middleware partly decompiled, with most file-system and sound functions the game uses matching; cri-progress.md checks off 497 of the 503 CRI functions it lists. At the reviewed commit, two game functions (sea_write and mlt_obj_trans_rgb_ext) and 39 of 52 CRI C files still include assembly in the PS2 build, and PS2 SDK and GCC library code is out of scope. The output is the PS2 executable, not a PC port.","Building needs THIRD_U.BIN from the user’s own copy of the game; the split configuration records its SHA-1 as cf58495054c31ad852175c66e9ca04d5094f000e, and make split derives the assembly and linker script from it. The decompiling guide also relies on the executable’s DWARF debug data, dumped with decomp-toolkit, for signatures and local variables. A separate split_cps3 target for the CPS3 arcade version needs a user-supplied arcade ROM set and has only a code-segment configuration.","The build guide covers Linux (Debian packages with i386 support, MIPS binutils, and a Python venv with splat64 0.29.0 and spimdisasm 1.35.0) and macOS through the provided Dockerfile. make setup_tools downloads Metrowerks mwccps2 3.0b38 and EE GCC 2.96 from decomp.me’s compiler releases plus the wibo loader for Windows tools; m2c, asm-differ, mwccgap and saturn-splitter are git submodules.","A successful build ends with compare_bytes.py checking the rebuilt executable against the original from offset 0x80 to 0x478A00 and printing “Files match ✅”. That check tolerates 163 listed words in about 20 game and CRI functions, attributed to register and operand swaps, assert line numbers, string encoding, a misplaced nop and a call misalignment, so equivalence is near-byte-level by the project’s own check rather than a whole-file hash. The latest commit removed the GitHub Actions workflows.","LICENSE is AGPL-3.0 for the project’s code. The original executable and game content keep their own rights; include/cri carries headers marked “CRI Middleware SDK” and “Copyright (c) … CRI-MW”, and the vendored zlib keeps its own license."],"requirements_zh":["README 报告游戏代码已全部反编译，CRI 中间件部分反编译，游戏所用的大部分文件系统和声音函数已一致；cri-progress.md 所列 503 个 CRI 函数中已勾选 497 个。在所审提交中，PS2 构建仍有两个游戏函数（sea_write 和 mlt_obj_trans_rgb_ext）及 52 个 CRI C 文件中的 39 个包含汇编；PS2 SDK 和 GCC 库代码不在范围内。产物是 PS2 可执行文件，不是 PC 移植。","构建需要使用者从自己的游戏副本中取得 THIRD_U.BIN；拆分配置记录其 SHA-1 为 cf58495054c31ad852175c66e9ca04d5094f000e，make split 据此生成汇编和链接脚本。反编译指南还借助该可执行文件中的 DWARF 调试数据（用 decomp-toolkit 导出）获取函数签名和局部变量。另有面向 CPS3 街机版的 split_cps3 目标，需要使用者自备街机 ROM，目前只有代码段配置。","构建指南涵盖 Linux（需启用 i386 支持的 Debian 软件包、MIPS binutils，以及装有 splat64 0.29.0 和 spimdisasm 1.35.0 的 Python 虚拟环境），macOS 则使用所提供的 Dockerfile。make setup_tools 从 decomp.me 的编译器发布中下载 Metrowerks mwccps2 3.0b38 和 EE GCC 2.96，并下载用于运行 Windows 工具的 wibo；m2c、asm-differ、mwccgap 和 saturn-splitter 是 git 子模块。","构建成功后，compare_bytes.py 将重建的可执行文件与原文件在偏移 0x80 至 0x478A00 范围内比对，并输出 “Files match ✅”。该检查容许约 20 个游戏与 CRI 函数中列明的 163 个字存在差异，原因注明为寄存器与操作数互换、断言行号、字符串编码、一处错位的 nop 和一处调用错位，因此按项目自身的检查，一致性接近字节级，而非整个文件的哈希一致。最新提交移除了 GitHub Actions 工作流。","LICENSE 为 AGPL-3.0，适用于项目代码。原可执行文件和游戏内容仍有各自权利约束；include/cri 中有标注 “CRI Middleware SDK” 及 “Copyright (c) … CRI-MW” 的头文件，内置的 zlib 也保留其自身许可证。"],"targets":["game"],"url":"https://github.com/crowded-street/3s-decomp","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","additional_evidence_urls":["https://github.com/halo-re/halo/blob/21bc641df6b8bdd730c23885ff643545423dcc82/kb.json","https://github.com/halo-re/halo/blob/21bc641df6b8bdd730c23885ff643545423dcc82/CMakeLists.txt","https://github.com/halo-re/halo/blob/21bc641df6b8bdd730c23885ff643545423dcc82/tools/patch.py","https://github.com/halo-re/halo/blob/21bc641df6b8bdd730c23885ff643545423dcc82/tools/knowledge.py","https://github.com/halo-re/halo/blob/21bc641df6b8bdd730c23885ff643545423dcc82/tools/gen-struct-checks.py","https://github.com/halo-re/halo/blob/21bc641df6b8bdd730c23885ff643545423dcc82/.github/workflows/main.yml","https://github.com/halo-re/halo/blob/21bc641df6b8bdd730c23885ff643545423dcc82/Dockerfile","https://github.com/halo-re/halo/blob/21bc641df6b8bdd730c23885ff643545423dcc82/requirements.txt","https://github.com/halo-re/halo/blob/21bc641df6b8bdd730c23885ff643545423dcc82/src/xboxkrnl.exe.def","https://blam.info/progress/"],"category":"reconstruction-cases","description_en":"A research project re-implementing the original Xbox Halo: Combat Evolved in C, one function at a time. Rewritten functions are compiled into a separate image and patched into the user’s original executable with redirects from the original implementations, so the hybrid game can be run and debugged in xemu or on an Xbox as work progresses. The project reports an early stage, and its sources document no byte-for-byte comparison with the original code.","description_zh":"一个以 C 语言逐个函数重新实现初代 Xbox 版 Halo: Combat Evolved 的研究项目。重写的函数编译为独立映像，再修补进使用者自备的原版可执行文件，并从原有实现重定向过去，使这一混合版本能在开发过程中于 xemu 或 Xbox 上运行和调试。项目自述仍处于早期阶段，其来源也未记录与原代码的逐字节比较。","entry_url":"https://awesomerea.org/resources/halo-ce-xbox-reimplementation-case/","entry_url_zh":"https://awesomerea.org/zh/resources/halo-ce-xbox-reimplementation-case/","evidence_url":"https://github.com/halo-re/halo/blob/21bc641df6b8bdd730c23885ff643545423dcc82/README.md","group":"cases","id":"halo-ce-xbox-reimplementation-case","json_url":"https://awesomerea.org/resources/halo-ce-xbox-reimplementation-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/halo-ce-xbox-reimplementation-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/halo-ce-xbox-reimplementation-case/index.md","name":"Halo: Combat Evolved: an incremental re-implementation patched into the original Xbox executable","name_zh":"Halo: Combat Evolved：逐步重新实现并修补进原版 Xbox 可执行文件","reconstruction_method":"decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["README describes studying and creating a free, open-source re-implementation of the Xbox launch title; its current-state list reports that the patched game runs, the main loop and several more functions are re-implemented, and there is a long way to go. The linked progress page, whose data file was last modified in November 2022, reports 0.37% of the .text section’s game code across 40 functions. The last default-branch commit is dated 2023-07-07.","Supply the retail disc’s game files and the original executable version 01.10.12.2276, identified by MD5 in README and kb.json and placed as cachebeta.xbe in a halo-patched directory; tools/patch.py checks that hash. The repository includes no game executable or assets, and README says they must come from your own copy. The build writes a patched default.xbe beside them as the user’s local modified copy; the project distributes no game build.","Builds use CMake 3.16+, Python 3 with libclang, pefile and pyxbe, and either 32-bit MSVC on Windows or Clang and LLD targeting i386-pc-win32 on Linux and macOS; a Dockerfile provides an Ubuntu 22.04 build image. The result targets the original Xbox and runs in the xemu emulator or on console hardware, and the build generates a .gdbinit for debugging with GDB through xemu’s GDB server.","kb.json declares 323 original functions and 71 data items with addresses, grouped by original object file; tools/knowledge.py generates headers, thunks and an import library from it, and gen-struct-checks.py emits static size checks for types.h. CI builds only the re-implementation image (Debug and Release on Ubuntu, Windows and macOS) without original files, so it checks compilation, not behaviour.","The repository has no license file and GitHub detects none, so reuse terms for the project’s code are not stated; src/xboxkrnl.exe.def carries a CC0-1.0 notice (2017, Stefan Schmidt). README presents the work as educational research, the progress page says it is not affiliated with Microsoft or Bungie, and the game keeps its rights holders’ terms."],"requirements_zh":["README 介绍项目旨在研究并为这款 Xbox 首发游戏打造自由、开源的重新实现；其“当前状态”列表报告修补后的游戏可以运行，主循环和另外若干函数已重新实现，但仍有很长的路要走。README 链接的进度页面（其数据文件最后修改于 2022 年 11 月）报告 .text 段游戏代码已重新实现 0.37%，共 40 个函数。默认分支最后一次提交日期为 2023-07-07。","需自备零售光盘的游戏文件，以及版本为 01.10.12.2276 的原版可执行文件（README 和 kb.json 以 MD5 标识），并以 cachebeta.xbe 为名放入 halo-patched 目录；tools/patch.py 会校验该哈希。仓库不含游戏可执行文件或素材，README 说明须来自使用者自己的副本。构建会在同一目录写出修补后的 default.xbe，作为使用者本地的修改副本；项目不分发任何游戏构建。","构建需要 CMake 3.16 及以上、带 libclang、pefile 与 pyxbe 的 Python 3，以及 Windows 上的 32 位 MSVC，或 Linux 和 macOS 上以 i386-pc-win32 为目标的 Clang 与 LLD；Dockerfile 提供 Ubuntu 22.04 构建镜像。产物面向初代 Xbox，可在 xemu 模拟器或主机硬件上运行；构建过程会生成 .gdbinit，便于通过 xemu 的 GDB 服务器用 GDB 调试。","kb.json 按原始目标文件分组，声明了 323 个原有函数和 71 个数据项及其地址；tools/knowledge.py 据此生成头文件、跳转桩和导入库，gen-struct-checks.py 为 types.h 生成静态大小检查。CI 只构建重新实现的映像（在 Ubuntu、Windows 和 macOS 上分别构建 Debug 与 Release），不使用原版文件，因此只检验能否编译，不检验行为。","仓库没有许可证文件，GitHub 也未检测到许可证，因此项目代码的再利用条款未作说明；src/xboxkrnl.exe.def 带有 CC0-1.0 声明（2017，Stefan Schmidt）。README 将该工作定位为教育研究，进度页面说明项目与 Microsoft 或 Bungie 无关，游戏本身仍受其权利人的条款约束。"],"targets":["game"],"url":"https://github.com/halo-re/halo","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","additional_evidence_urls":["https://github.com/doldecomp/ttyd/blob/62131fc31866f85a12e4817a8dc37f0c25eb5f8c/configure.py","https://github.com/doldecomp/ttyd/blob/62131fc31866f85a12e4817a8dc37f0c25eb5f8c/config/G8MJ01/config.yml","https://github.com/doldecomp/ttyd/blob/62131fc31866f85a12e4817a8dc37f0c25eb5f8c/config/G8MJ01/build.sha1","https://github.com/doldecomp/ttyd/blob/62131fc31866f85a12e4817a8dc37f0c25eb5f8c/tools/project.py","https://github.com/doldecomp/ttyd/blob/62131fc31866f85a12e4817a8dc37f0c25eb5f8c/src/pmario_sound.c","https://github.com/doldecomp/ttyd/blob/62131fc31866f85a12e4817a8dc37f0c25eb5f8c/tools/ttydasm/src/cli.rs","https://github.com/doldecomp/ttyd/blob/62131fc31866f85a12e4817a8dc37f0c25eb5f8c/.github/workflows/build.yml","https://github.com/doldecomp/ttyd/blob/62131fc31866f85a12e4817a8dc37f0c25eb5f8c/LICENSE","https://decomp.dev/doldecomp/ttyd"],"category":"reconstruction-cases","description_en":"A work-in-progress matching decompilation of Paper Mario: The Thousand-Year Door that targets the Japanese Rev 0 GameCube release (G8MJ01), rebuilding MarioSt.dol and 31 REL modules with the original Metrowerks compilers and checking each against a stored SHA-1. The build splits these binaries from a user-supplied disc image, and objdiff compares objects during development. decomp.dev reported 12.10% of code matched at the reviewed commit.","description_zh":"《纸片马力欧 RPG》（Paper Mario: The Thousand-Year Door）的进行中一致性反编译，目标为日版 Rev 0 GameCube 版本（G8MJ01）：用原版 Metrowerks 编译器重建 MarioSt.dol 和 31 个 REL 模块，并逐一与仓库保存的 SHA-1 比对。构建从使用者自备的光盘镜像中拆分这些二进制，开发时用 objdiff 比对目标文件。decomp.dev 报告所审提交有 12.10% 的代码已匹配。","entry_url":"https://awesomerea.org/resources/paper-mario-ttyd-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/paper-mario-ttyd-decomp-case/","evidence_url":"https://github.com/doldecomp/ttyd/blob/62131fc31866f85a12e4817a8dc37f0c25eb5f8c/README.md","group":"cases","id":"paper-mario-ttyd-decomp-case","json_url":"https://awesomerea.org/resources/paper-mario-ttyd-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/paper-mario-ttyd-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/paper-mario-ttyd-decomp-case/index.md","name":"Paper Mario: The Thousand-Year Door: an early matching GameCube decompilation","name_zh":"《纸片马力欧 RPG》：早期阶段的 GameCube 一致性反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["README lists one supported version, G8MJ01 (Rev 0, JP); configure.py defines no other version and CI builds only G8MJ01. README still carries template leftovers: its badges point at another project, its clone command names NWPlayer123/G8MJ01-dtk and one line calls G8MJ01 the USA version. The output is a GameCube DOL and REL set, not a PC port.","Copy your own G8MJ01 disc image to orig/G8MJ01; ISO (GCM), RVZ, WIA, WBFS, CISO, NFS, GCZ and TGC images are accepted. README says the repository contains no game assets or assembly: decomp-toolkit splits main.dol and the RELs using committed symbol and split tables, and extracts the memory-card icon and banner textures from the DOL into local headers. Decompiled sources such as src/pmario_sound.c also carry game data tables reconstructed as C.","Builds need Python and ninja on Windows (native tooling recommended), macOS (with wine-crossover) or Linux (an automatically downloaded wibo on x86, Wine elsewhere). configure.py pins decomp-toolkit v1.8.3, objdiff v3.7.1, binutils 2.42-2, sjiswrap v1.2.2, wibo 1.1.0 and the 20260305 compiler bundle, using Metrowerks GC/2.6 for game and REL code and GC/1.2.5n for the Dolphin SDK. tools/ttydasm is a Rust helper that decodes a named event script from the linked DOL or REL outputs in build/G8MJ01.","Objects marked Matching (100 of 547 in configure.py) are compiled from source and the rest come from the split originals; the default ninja target checks the DOL and all RELs against config/G8MJ01/build.sha1 before reporting progress. CI builds G8MJ01 in a container that supplies the disc files and compilers and uploads a progress report. decomp.dev’s report for the pinned commit lists 457,800 of 3,784,980 code bytes (12.10%) and 2,029 of 9,770 functions matched, with 100 of 1,239 units complete.","The repository carries the MIT License (copyright NWPlayer123), and libs/musyx has its own MIT license; neither covers Nintendo’s game, disc contents or the downloaded compilers."],"requirements_zh":["README 只列出一个支持版本 G8MJ01（Rev 0，日版）；configure.py 未定义其他版本，CI 也只构建 G8MJ01。README 仍留有模板残余：徽章指向另一个项目，克隆命令写的是 NWPlayer123/G8MJ01-dtk，另有一行把 G8MJ01 称为美版。产物是 GameCube DOL 和 REL 组，不是 PC 移植。","需将自己的 G8MJ01 光盘镜像复制到 orig/G8MJ01，可接受 ISO（GCM）、RVZ、WIA、WBFS、CISO、NFS、GCZ 和 TGC 格式。README 称仓库不含任何游戏素材或汇编：decomp-toolkit 依据仓库提交的符号表和拆分表拆分 main.dol 与各 REL，并从 DOL 中把记忆卡图标和横幅纹理提取为本地头文件。src/pmario_sound.c 等反编译源文件中也包含以 C 重建的游戏数据表。","构建需要 Python 与 ninja，可在 Windows（推荐原生工具）、macOS（需 wine-crossover）或 Linux（x86 上自动下载 wibo，其他架构用 Wine）上进行。configure.py 固定 decomp-toolkit v1.8.3、objdiff v3.7.1、binutils 2.42-2、sjiswrap v1.2.2、wibo 1.1.0 及 20260305 编译器包；游戏和 REL 代码使用 Metrowerks GC/2.6，Dolphin SDK 使用 GC/1.2.5n。tools/ttydasm 是一个 Rust 辅助工具，可从 build/G8MJ01 中链接好的 DOL 或 REL 产物里解码指定的事件脚本。","标为 Matching 的目标文件（configure.py 中 547 个里有 100 个）由源码编译，其余取自拆分出的原始文件；默认 ninja 目标会先按 config/G8MJ01/build.sha1 校验 DOL 和全部 REL，再报告进度。CI 在提供光盘文件和编译器的容器中构建 G8MJ01，并上传进度报告。decomp.dev 针对该固定提交的报告显示，3,784,980 个代码字节中有 457,800 个（12.10%）、9,770 个函数中有 2,029 个已匹配，1,239 个单元中有 100 个已完成。","仓库采用 MIT 许可证（版权归 NWPlayer123），libs/musyx 另有其 MIT 许可证；两者都不涵盖任天堂的游戏、光盘内容或下载的编译器。"],"targets":["game"],"url":"https://github.com/doldecomp/ttyd","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","additional_evidence_urls":["https://github.com/dweinstein/awesome-frida/blob/e20da3b2ae3a30cd65ab0e4a0f0345bb909ecb10/CONTRIBUTING.md","https://github.com/dweinstein/awesome-frida/blob/e20da3b2ae3a30cd65ab0e4a0f0345bb909ecb10/LICENSE"],"category":"related-lists","description_en":"An awesome list of libraries, scripts, tools, talks and articles built on or about Frida, the dynamic instrumentation toolkit, started by David Weinstein in May 2016. Its 82 entries fall into libraries (about half of them NowSecure Node.js modules), script collections and projects, talks and papers, tools powered by Frida such as r2frida, objection, friTap and Fridump, videos, blog posts and community links, most with a one-line summary.","description_zh":"David Weinstein 于 2016 年 5 月创建的 awesome 清单，收录基于或围绕动态插桩工具包 Frida 的程序库、脚本、工具、演讲和文章。全部 82 个条目分为程序库（约一半是 NowSecure 的 Node.js 模块）、脚本合集与项目、演讲与论文、基于 Frida 的工具（如 r2frida、objection、friTap 和 Fridump）、视频、博客文章以及社区链接，大多附有一行简介。","entry_url":"https://awesomerea.org/resources/awesome-frida/","entry_url_zh":"https://awesomerea.org/zh/resources/awesome-frida/","evidence_url":"https://github.com/dweinstein/awesome-frida/blob/e20da3b2ae3a30cd65ab0e4a0f0345bb909ecb10/README.md","group":"learn","id":"awesome-frida","json_url":"https://awesomerea.org/resources/awesome-frida/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/awesome-frida/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/awesome-frida/index.md","name":"Awesome Frida","name_zh":"Awesome Frida Frida 资源清单","record_type":"resource","relationship":"learning","requirements":["Reviewed at commit e20da3b (2026-04-10). 43 of 68 commits date from 2016–2017, most talks, videos and posts are from 2015–2017, and after the April 2023 addition of RoboDroid the only change is the April 2026 addition of rekit. Entries do not say which Frida version they target; frida-load is marked deprecated and the Lobotomy entries are struck through.","13 of 110 unique URLs gave no response or a 404, including the OSDC, ZeroNights and RMLL event pages and a three-part tutorial series, and three talk PDFs are linked as relative files that are not in the repository. Of the 57 GitHub repositories linked, 4 are archived, 2 no longer exist and 13 have not been pushed to since 2019. The README asks contributors to flag listings that are unmaintained or have had no commits for two to three years.","Several listed tools dump process memory, decrypt protected apps or log TLS keys, and two posts cover detecting Frida.","The LICENSE file is CC0 1.0. The contribution guide, adapted from the general awesome-list guidelines, refers to a code of conduct and a list-creation guide that are not in the repository. Linked projects keep their own licenses. An independent discovery list."],"requirements_zh":["审阅提交为 e20da3b（2026-04-10）。68 个提交中有 43 个来自 2016–2017 年，多数演讲、视频和文章发布于 2015–2017 年；继 2023 年 4 月新增 RoboDroid 之后，唯一的修改是 2026 年 4 月新增 rekit。条目未注明适用的 Frida 版本；frida-load 已标为弃用，Lobotomy 相关条目已被划掉。","110 个不重复 URL 里有 13 个无响应或返回 404，包括 OSDC、ZeroNights 和 RMLL 的活动页面以及一个三篇连载的教程；另有三份演讲 PDF 以相对路径链接，但仓库中并没有这些文件。所链接的 57 个 GitHub 仓库中，4 个已归档，2 个已不存在，13 个自 2019 年以来没有推送。README 请贡献者标出已停止维护或两三年没有提交的条目。","清单中有些工具用于转储进程内存、解密受保护的应用或记录 TLS 密钥，另有两篇文章讨论如何检测 Frida。","LICENSE 文件为 CC0 1.0。贡献指南改编自通用的 awesome 清单指南，其中提到的行为准则和清单创建指南并不在仓库中。所链接的项目保留各自许可证。这是独立的发现清单。"],"targets":["app","binary"],"url":"https://github.com/dweinstein/awesome-frida","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","additional_evidence_urls":["https://github.com/crowded-street/3sx/blob/bdc2cd351aad35d7e251a5a6d63a3368bd31cbaa/docs/building.md","https://github.com/crowded-street/3sx/blob/bdc2cd351aad35d7e251a5a6d63a3368bd31cbaa/docs/statcheck.md","https://github.com/crowded-street/3sx/blob/bdc2cd351aad35d7e251a5a6d63a3368bd31cbaa/docs/config.md","https://github.com/crowded-street/3sx/blob/bdc2cd351aad35d7e251a5a6d63a3368bd31cbaa/docs/resources.md","https://github.com/crowded-street/3sx/blob/bdc2cd351aad35d7e251a5a6d63a3368bd31cbaa/CMakeLists.txt","https://github.com/crowded-street/3sx/blob/bdc2cd351aad35d7e251a5a6d63a3368bd31cbaa/build-deps.sh","https://github.com/crowded-street/3sx/blob/bdc2cd351aad35d7e251a5a6d63a3368bd31cbaa/src/port/resources.c","https://github.com/crowded-street/3sx/blob/bdc2cd351aad35d7e251a5a6d63a3368bd31cbaa/src/arcade/rom/rom.c","https://github.com/crowded-street/3sx/tree/bdc2cd351aad35d7e251a5a6d63a3368bd31cbaa/src/port","https://github.com/crowded-street/3sx/tree/bdc2cd351aad35d7e251a5a6d63a3368bd31cbaa/src/bin2obj","https://github.com/crowded-street/3sx/blob/bdc2cd351aad35d7e251a5a6d63a3368bd31cbaa/tools/fcade-replays/README.md","https://github.com/crowded-street/3sx/blob/bdc2cd351aad35d7e251a5a6d63a3368bd31cbaa/.agents/skills/compare-cps3-code/SKILL.md","https://github.com/crowded-street/3sx/blob/bdc2cd351aad35d7e251a5a6d63a3368bd31cbaa/.agents/skills/compare-cps3-code/agents/openai.yaml","https://github.com/crowded-street/3sx/blob/bdc2cd351aad35d7e251a5a6d63a3368bd31cbaa/.github/workflows/build_linux.yml","https://github.com/crowded-street/3sx/blob/bdc2cd351aad35d7e251a5a6d63a3368bd31cbaa/.github/workflows/build_psp.yml","https://github.com/crowded-street/3sx/blob/bdc2cd351aad35d7e251a5a6d63a3368bd31cbaa/.github/workflows/release.yml","https://github.com/crowded-street/3sx/blob/bdc2cd351aad35d7e251a5a6d63a3368bd31cbaa/THIRD_PARTY_NOTICES.txt","https://github.com/crowded-street/3sx/blob/bdc2cd351aad35d7e251a5a6d63a3368bd31cbaa/LICENSE","https://github.com/crowded-street/3sx/releases/tag/rolling-pre-release","https://github.com/crowded-street/3sx/milestone/1"],"category":"reconstruction-cases","description_en":"Builds Street Fighter III: 3rd Strike as native C for Windows, macOS and Linux, continuing the 3s-decomp PS2 decompilation, with SDL3 for video, input and audio and GekkoNet for rollback netplay. README stresses that it is neither a recompilation nor emulation. The port needs the player’s own PS2 game files and works toward arcade-accurate balance, which an optional Statcheck build tests against CPS3 RAM states recorded from Fightcade replays.","description_zh":"延续 3s-decomp 的 PS2 反编译成果，将《街头霸王 III：3rd Strike》构建为可在 Windows、macOS 和 Linux 上运行的原生 C 程序，以 SDL3 处理画面、输入和声音，以 GekkoNet 实现回滚联机。README 强调它既不是重编译，也不是模拟。移植版需要玩家自备 PS2 游戏文件，并以接近街机版的平衡性为目标；可选的 Statcheck 构建会用 Fightcade 对战录像中记录的 CPS3 内存状态来检验这一点。","entry_url":"https://awesomerea.org/resources/3sx-third-strike-native-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/3sx-third-strike-native-port-case/","evidence_url":"https://github.com/crowded-street/3sx/blob/bdc2cd351aad35d7e251a5a6d63a3368bd31cbaa/README.md","group":"cases","id":"3sx-third-strike-native-port-case","json_url":"https://awesomerea.org/resources/3sx-third-strike-native-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/3sx-third-strike-native-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/3sx-third-strike-native-port-case/index.md","name":"3SX: a native Street Fighter III: 3rd Strike port continuing the PS2 decompilation","name_zh":"3SX：延续 PS2 反编译的《街头霸王 III：3rd Strike》原生移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirements":["README calls 3SX a native port and a continuation of 3s-decomp, explicitly neither a recompilation nor emulation. At the reviewed commit the game code under src/sf33rd has no remaining INCLUDE_ASM stubs, and src/port supplies SDL3 platform, input and sound layers, including its own ADX decoder. This is a modified port: its goals include fixing balance regressions the PS2 version introduced, and the arcade-balance option is marked work in progress. The only release is a rolling pre-release rebuilt from main, and goals such as stable PC play and the arcade ROM as sole dependency remain on the 1.0 milestone.","Play requires a legally obtained PS2 copy of Street Fighter III: 3rd Strike or Street Fighter Anniversary Collection: a startup wizard reads the user’s disc image, or SF33RD.AFS from it is placed in the resources folder, and release builds compare that file with a SHA-256 in resources.c. The arcade-balance option also needs the user’s sfiii3nr1.zip CPS3 ROM set. The tree ships no game archives, but src/bin2obj carries large C data tables from the decompilation.","Prebuilt rolling releases cover Windows, macOS, and x86_64 and arm64 Linux. Source builds use CMake 3.24+ with Clang, after MSYS2 MinGW64 packages on Windows, the listed Ubuntu packages or Xcode Command Line Tools on macOS; build-deps.sh fetches and builds SDL3, SDL_net, GekkoNet, libcdio, minizip-ng and TF-PSA-Crypto. CMake and CI also carry a PSP branch built with Docker tooling.","Pull-request CI only builds the Windows, macOS, Linux and PSP targets. Arcade accuracy is checked with the optional Statcheck build: tools/fcade-replays, described as a reverse-engineering helper for Fightcade’s replay stream, downloads replays; a custom FBNeo fork records per-frame CPS3 RAM dumps; and Statcheck stops at the first mismatch in health, positions, stun, super-art meter, timer or round phase. The reviewed tree publishes no Statcheck results.","The repository carries an agent skill with a Codex interface file. It directs a coding agent to compare local functions with a CPS3 program through a read-only Ghidra MCP server, mark each function’s parity and add CPS3 behaviour behind the arcade-balance flag. LICENSE is AGPL-3.0. THIRD_PARTY_NOTICES lists GPLv3+ libcdio with zlib, BSD-2-Clause, MIT and Apache-2.0 components, the game and its assets keep their own rights, and README says the project does not condone piracy."],"requirements_zh":["README 称 3SX 是原生移植、是 3s-decomp 的延续，并明确表示它既不是重编译也不是模拟。在所审提交中，src/sf33rd 下的游戏代码已没有残留的 INCLUDE_ASM 占位，src/port 提供基于 SDL3 的平台、输入和声音层，包括自行实现的 ADX 解码器。这是经过修改的移植版：其目标包括修复 PS2 版引入的平衡性退化，而街机平衡选项仍标注为进行中。唯一的发布是随 main 分支重建的滚动预发布版；稳定的 PC 体验、以街机 ROM 作为唯一依赖等目标仍列在 1.0 里程碑中。","游玩需要合法取得的 PS2 版《街头霸王 III：3rd Strike》或 Street Fighter Anniversary Collection：启动向导读取使用者的光盘镜像，或将其中的 SF33RD.AFS 放入 resources 文件夹；发布版构建会将该文件与 resources.c 中的 SHA-256 比对。街机平衡选项还需要使用者自备的 sfiii3nr1.zip CPS3 ROM。仓库不含游戏归档文件，但 src/bin2obj 中有来自反编译项目的大型 C 数据表。","滚动预发布版提供 Windows、macOS 以及 x86_64 和 arm64 Linux 的预编译程序。源码构建使用 CMake 3.24+ 与 Clang：Windows 需先安装 MSYS2 MinGW64 软件包，Linux 需列出的 Ubuntu 软件包，macOS 需 Xcode 命令行工具；build-deps.sh 会下载并构建 SDL3、SDL_net、GekkoNet、libcdio、minizip-ng 和 TF-PSA-Crypto。CMake 和 CI 还包含借助 Docker 工具构建的 PSP 分支。","拉取请求的 CI 只构建 Windows、macOS、Linux 和 PSP 目标。与街机版的一致性由可选的 Statcheck 构建检查：tools/fcade-replays（自述为分析 Fightcade 录像数据流的逆向辅助工具）下载录像，定制的 FBNeo 分支记录逐帧的 CPS3 内存转储，Statcheck 在体力、位置、晕眩值、超必杀槽、计时器或回合阶段首次不一致时停止。所审代码树未公布 Statcheck 结果。","仓库包含一个附带 Codex 界面文件的智能体技能，指示编程智能体通过只读的 Ghidra MCP 服务器，将本地函数与 CPS3 程序对比，标注每个函数的一致程度，并在街机平衡开关下加入 CPS3 行为。LICENSE 为 AGPL-3.0。THIRD_PARTY_NOTICES 列出 GPLv3+ 的 libcdio，以及 zlib、BSD-2-Clause、MIT 和 Apache-2.0 许可的组件；游戏及其素材各自保留权利，README 表示项目不纵容盗版。"],"targets":["game"],"url":"https://github.com/crowded-street/3sx","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","additional_evidence_urls":["https://github.com/adonis-singh/re4/blob/9b76ff003081d6ece8b838453fb8310743a972c7/LICENSE","https://github.com/adonis-singh/re4/blob/9b76ff003081d6ece8b838453fb8310743a972c7/CONTRIBUTING.md","https://github.com/adonis-singh/re4/blob/9b76ff003081d6ece8b838453fb8310743a972c7/configure.py","https://github.com/adonis-singh/re4/blob/9b76ff003081d6ece8b838453fb8310743a972c7/config/G4BE08/build.sha1","https://github.com/adonis-singh/re4/blob/9b76ff003081d6ece8b838453fb8310743a972c7/tools/sn-gcc/build.sh","https://github.com/adonis-singh/re4/blob/9b76ff003081d6ece8b838453fb8310743a972c7/tools/extract_orig.py","https://github.com/adonis-singh/re4/blob/9b76ff003081d6ece8b838453fb8310743a972c7/docs/naming.md","https://github.com/adonis-singh/re4/blob/9b76ff003081d6ece8b838453fb8310743a972c7/docs/research/README.md"],"category":"reconstruction-cases","description_en":"Reconstructs C and C++ source for the two-disc Resident Evil 4 GameCube debug prototype (G4BE08) and rebuilds main.dol and all 114 REL overlays with the compilers the README names, checking every output against a SHA-1 list. Function names are Capcom’s own from the debug build’s Bio4.sym files, and most struct and field names are aligned from the PS2 debug build’s debug information. The project’s research log says AI agents did the matching work; byte identity is project-reported.","description_zh":"为 Resident Evil 4 的双光盘 GameCube 调试原型版（G4BE08）重建 C 与 C++ 源码，并用 README 所列编译器重新构建 main.dol 及全部 114 个 REL 覆盖模块，逐一与 SHA-1 清单比对。函数名沿用调试版 Bio4.sym 符号文件中 Capcom 自己的命名，多数结构体与字段名则依据 PS2 调试版的调试信息对齐得出。项目的研究日志称一致性工作由 AI 智能体完成；字节一致为项目报告的结果。","entry_url":"https://awesomerea.org/resources/re4-gamecube-debug-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/re4-gamecube-debug-decomp-case/","evidence_url":"https://github.com/adonis-singh/re4/blob/9b76ff003081d6ece8b838453fb8310743a972c7/README.md","group":"cases","id":"re4-gamecube-debug-decomp-case","json_url":"https://awesomerea.org/resources/re4-gamecube-debug-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/re4-gamecube-debug-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/re4-gamecube-debug-decomp-case/index.md","name":"re4: a byte-identical decompilation of the Resident Evil 4 GameCube debug build","name_zh":"re4：Resident Evil 4 GameCube 调试版的字节一致反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the 2026-10-02 head, under four weeks after the first commit of 2026-09-07. README calls the decompilation complete: every unit compiles to the original bytes, src/ holds about 570,000 lines of C and C++ with no assembly files, and 526 `// COMPILER-DIFF:` spots coax the compiler’s register or instruction choices without emitting code. Nearly all remaining inline assembly is in routines the vendors also wrote in assembly. The output is the debug prototype’s DOL and RELs, not a retail build or PC port.","Supply your own images of both debug discs in orig/G4BE08/: disc 1 provides main.dol and most RELs, disc 2 the four island-stage RELs, and configure.py also reads the matching Bio4 symbol files from them. The game code’s compiler is built from SN Systems’ GPL source release of its ProDG 3.9.3 GCC port, which the user also supplies. The repository contains no game assets.","The documented host is Linux with Python 3 and ninja. tools/sn-gcc/build.sh builds SN’s GCC 2.95.3 (SN BUILD v1.79) natively once with the project’s Linux-host and memory-flag patches; CRI middleware builds with Metrowerks CodeWarrior 2.4.7 and the Nintendo SDK, taken from dolsdk2004, with GC/1.2.5n. The first configure run downloads pinned decomp-toolkit, objdiff, wibo and CodeWarrior compiler releases.","A successful build should end with ninja reporting 100% matched and linked, and dtk shasum against config/G4BE08/build.sha1 should print OK for all 115 binaries; tools/bytecmp.py compares single units and tools/asmcheck.py --all counts instructions emitted from asm templates, a total changes must not alter. The repository has no CI workflow or release, so these results are project-reported.","LICENSE applies CC0 only to the project’s build scripts, tools, configuration and documentation. README and LICENSE state that the reconstructed game, SDK and middleware source in src/ and include/ remains the property of Capcom, Nintendo and CRI Middleware and is published for research and preservation only. docs/research/README.md describes its matching notes as written by the AI agents that did the matching work."],"requirements_zh":["审阅的是 2026-10-02 的最新提交，距 2026-09-07 的首次提交不到四周。README 称反编译已完成：每个单元都编译为原始字节，src/ 中约有 57 万行 C 与 C++ 代码且没有汇编文件；另有 526 处 `// COMPILER-DIFF:` 标记，在不生成额外指令的前提下引导编译器选择相同的寄存器或指令顺序。其余内联汇编几乎都位于原厂同样以汇编编写的例程中。产物是调试原型版的 DOL 与 REL，不是零售版构建，也不是 PC 移植。","需将自备的两张调试版光盘镜像放入 orig/G4BE08/：光盘 1 提供 main.dol 和大部分 REL，光盘 2 提供岛屿关卡的四个 REL，configure.py 还会从中读取对应的 Bio4 符号文件。游戏代码所用编译器需从 SN Systems 公开的 ProDG 3.9.3 GCC 移植版 GPL 源码构建，该源码同样由使用者自备。仓库不含游戏素材。","文档说明的构建宿主为 Linux，需 Python 3 与 ninja。tools/sn-gcc/build.sh 会结合项目的 Linux 宿主补丁和内存标志补丁，一次性在本机构建 SN 的 GCC 2.95.3（SN BUILD v1.79）；CRI 中间件使用 Metrowerks CodeWarrior 2.4.7 构建，取自 dolsdk2004 的 Nintendo SDK 则使用 GC/1.2.5n。首次运行 configure 会下载固定版本的 decomp-toolkit、objdiff、wibo 和 CodeWarrior 编译器包。","构建成功时，ninja 应在最后报告 100% 匹配并完成链接，按 config/G4BE08/build.sha1 运行 dtk shasum 应对全部 115 个二进制文件输出 OK；tools/bytecmp.py 用于比较单个单元，tools/asmcheck.py --all 统计由 asm 模板生成的指令数，任何修改都不得改变该总数。仓库没有 CI 工作流或发布版本，因此这些结果均为项目报告。","LICENSE 仅将 CC0 用于项目自行编写的构建脚本、工具、配置与文档。README 与 LICENSE 声明，src/ 与 include/ 中重建的游戏、SDK 及中间件源码仍归 Capcom、Nintendo 与 CRI Middleware 所有，仅为研究与保存目的发布。docs/research/README.md 称其中的匹配笔记由完成匹配工作的 AI 智能体撰写。"],"targets":["game"],"url":"https://github.com/adonis-singh/re4","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","additional_evidence_urls":["https://github.com/doldecomp/brawl/blob/b96b501ff127b29e8946ee9a352a7bdc2ef5f38a/configure.py","https://github.com/doldecomp/brawl/blob/b96b501ff127b29e8946ee9a352a7bdc2ef5f38a/config/RSBE01_02/config.yml","https://github.com/doldecomp/brawl/blob/b96b501ff127b29e8946ee9a352a7bdc2ef5f38a/config/RSBE01_02/build.sha1","https://github.com/doldecomp/brawl/blob/b96b501ff127b29e8946ee9a352a7bdc2ef5f38a/tools/project.py","https://github.com/doldecomp/brawl/blob/b96b501ff127b29e8946ee9a352a7bdc2ef5f38a/.gitmodules","https://github.com/doldecomp/brawl/blob/b96b501ff127b29e8946ee9a352a7bdc2ef5f38a/.github/workflows/build.yml","https://github.com/doldecomp/brawl/blob/b96b501ff127b29e8946ee9a352a7bdc2ef5f38a/LICENSE","https://github.com/Sammi-Husky/BrawlHeaders/tree/29c4ff16ce06241ea672ffd54e6415fbd02c0743","https://decomp.dev/doldecomp/brawl"],"category":"reconstruction-cases","description_en":"A work-in-progress matching decompilation of Super Smash Bros. Brawl that targets the USA Rev 2 Wii release (RSBE01_02), splitting main.dol and 126 REL modules from a user-supplied disc image and checking the rebuilt binaries against stored SHA-1 values. objdiff compares objects during development, and six other regional revisions are listed but commented out of the supported set. decomp.dev reported 1.27% of code matched at the reviewed commit.","description_zh":"《任天堂明星大乱斗X》（Super Smash Bros. Brawl）的进行中一致性反编译，目标为美版 Rev 2 Wii 版本（RSBE01_02）：从使用者自备的光盘镜像中拆分 main.dol 和 126 个 REL 模块，并按仓库保存的 SHA-1 校验重建出的二进制。开发时用 objdiff 比对目标文件；另外六个地区修订版虽已列出，但在支持列表中被注释掉。decomp.dev 报告所审提交有 1.27% 的代码已匹配。","entry_url":"https://awesomerea.org/resources/smash-bros-brawl-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/smash-bros-brawl-decomp-case/","evidence_url":"https://github.com/doldecomp/brawl/blob/b96b501ff127b29e8946ee9a352a7bdc2ef5f38a/README.md","group":"cases","id":"smash-bros-brawl-decomp-case","json_url":"https://awesomerea.org/resources/smash-bros-brawl-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/smash-bros-brawl-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/smash-bros-brawl-decomp-case/index.md","name":"Super Smash Bros. Brawl: an early matching Wii decompilation","name_zh":"《任天堂明星大乱斗X》：早期阶段的 Wii 一致性反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["README lists one supported version, RSBE01_02 (USA Rev 2), with the Japan, USA Rev 1, PAL and Korea revisions commented out; configure.py names all seven, but only RSBE01_02 has a configuration and CI builds only it. The output is a Wii main.dol and REL set, not a PC port.","Copy your own disc image to orig/RSBE01_02; ISO (GCM), RVZ, WIA, WBFS, CISO, NFS, GCZ and TGC images are accepted. README says the repository contains no game assets or assembly: decomp-toolkit splits the DOL and RELs using committed per-module symbol and split tables, and extracts one embedded binary (HomeBtnIcon) from the DOL locally. Game headers come from the BrawlHeaders submodule (Sammi-Husky/BrawlHeaders), which README says to initialize before building.","Builds need Python and ninja on Windows (native tooling recommended), macOS (with wine-crossover) or Linux (an automatically downloaded wibo on x86, Wine elsewhere). configure.py pins decomp-toolkit v1.7.5, objdiff v3.4.4, binutils 2.42-1, sjiswrap v1.2.2, wibo 1.0.0 and the 20250812 compiler bundle, compiling and linking with Metrowerks GC/3.0a5.2.","Objects marked Matching (184 in configure.py; 20 remain NonMatching) are compiled from source and the rest come from the split originals; the default ninja target checks main.dol and the RELs against config/RSBE01_02/build.sha1 before reporting progress. CI builds RSBE01_02 in a container that supplies the disc files and compilers and uploads a progress report. decomp.dev’s report for the pinned commit lists 201,252 of 15,833,548 code bytes (1.27%) and 2,504 of 92,523 functions matched, with 516 of 4,415 units complete.","The repository carries CC0-1.0; Nintendo’s game, disc contents and the downloaded compilers fall outside that dedication, and the BrawlHeaders submodule declares no license on GitHub."],"requirements_zh":["README 只列出一个支持版本 RSBE01_02（美版 Rev 2），日版、美版 Rev 1、PAL 版和韩版修订版均被注释掉；configure.py 列出全部七个版本，但只有 RSBE01_02 有配置，CI 也只构建该版本。产物是 Wii 的 main.dol 和 REL 组，不是 PC 移植。","需将自己的光盘镜像复制到 orig/RSBE01_02，可接受 ISO（GCM）、RVZ、WIA、WBFS、CISO、NFS、GCZ 和 TGC 格式。README 称仓库不含任何游戏素材或汇编：decomp-toolkit 依据仓库提交的各模块符号表和拆分表拆分 DOL 与 REL，并在本地从 DOL 中提取一个内嵌二进制（HomeBtnIcon）。游戏头文件来自 BrawlHeaders 子模块（Sammi-Husky/BrawlHeaders），README 要求构建前先初始化子模块。","构建需要 Python 与 ninja，可在 Windows（推荐原生工具）、macOS（需 wine-crossover）或 Linux（x86 上自动下载 wibo，其他架构用 Wine）上进行。configure.py 固定 decomp-toolkit v1.7.5、objdiff v3.4.4、binutils 2.42-1、sjiswrap v1.2.2、wibo 1.0.0 及 20250812 编译器包，编译和链接均使用 Metrowerks GC/3.0a5.2。","标为 Matching 的目标文件（configure.py 中有 184 个，另有 20 个仍为 NonMatching）由源码编译，其余取自拆分出的原始文件；默认 ninja 目标会先按 config/RSBE01_02/build.sha1 校验 main.dol 和各 REL，再报告进度。CI 在提供光盘文件和编译器的容器中构建 RSBE01_02，并上传进度报告。decomp.dev 针对该固定提交的报告显示，15,833,548 个代码字节中有 201,252 个（1.27%）、92,523 个函数中有 2,504 个已匹配，4,415 个单元中有 516 个已完成。","仓库采用 CC0-1.0；任天堂的游戏、光盘内容和下载的编译器不在该声明范围内，BrawlHeaders 子模块在 GitHub 上也未声明许可证。"],"targets":["game"],"url":"https://github.com/doldecomp/brawl","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","additional_evidence_urls":["https://github.com/Patoke/re-plants-vs-zombies/blob/c4692036c5e11d227c8fb7c593b734dac96da028/CMakeLists.txt","https://github.com/Patoke/re-plants-vs-zombies/blob/c4692036c5e11d227c8fb7c593b734dac96da028/SexyAppFramework/CMakeLists.txt","https://github.com/Patoke/re-plants-vs-zombies/blob/c4692036c5e11d227c8fb7c593b734dac96da028/CMakeSettings.json","https://github.com/Patoke/re-plants-vs-zombies/blob/c4692036c5e11d227c8fb7c593b734dac96da028/toolchain.cmake","https://github.com/Patoke/re-plants-vs-zombies/blob/c4692036c5e11d227c8fb7c593b734dac96da028/LawnApp.cpp","https://github.com/Patoke/re-plants-vs-zombies/blob/c4692036c5e11d227c8fb7c593b734dac96da028/Resources.cpp","https://github.com/Patoke/re-plants-vs-zombies/blob/c4692036c5e11d227c8fb7c593b734dac96da028/SexyAppFramework/sound/BassLoader.cpp","https://github.com/Patoke/re-plants-vs-zombies/blob/c4692036c5e11d227c8fb7c593b734dac96da028/SexyAppFramework/sound/fmod.h","https://github.com/Patoke/re-plants-vs-zombies/blob/c4692036c5e11d227c8fb7c593b734dac96da028/SexyAppFramework/sound/bass.h","https://github.com/Patoke/re-plants-vs-zombies/blob/c4692036c5e11d227c8fb7c593b734dac96da028/SexyAppFramework/ogg/COPYING","https://github.com/Patoke/re-plants-vs-zombies/blob/c4692036c5e11d227c8fb7c593b734dac96da028/LICENSE"],"category":"reconstruction-cases","description_en":"Reconstructs C++ source for Plants vs. Zombies on PopCap’s open-source SexyAppFramework, starting from an earlier community decompilation of version 0.9.9 and adding functionality reversed from the Game of the Year edition, with functions annotated by GOTY addresses. The project also modernizes the engine with current C++ and is replacing the DirectDraw and Direct3D 7 renderers with GLFW. It builds a fan executable that runs from an original game folder, aiming at a modernized, extensible game rather than an identical binary.","description_zh":"以 PopCap 开源的 SexyAppFramework 为基础重建 Plants vs. Zombies 的 C++ 源码：起点是社区早先对 0.9.9 版的反编译，再补入从年度版（GOTY）逆向得到的功能，并以 GOTY 版地址标注函数。项目同时以现代 C++ 改造引擎，并正将 DirectDraw 与 Direct3D 7 渲染器替换为 GLFW。它构建出在原版游戏目录中运行的同人可执行文件，目标是现代化、可扩展的游戏，而不是完全一致的二进制。","entry_url":"https://awesomerea.org/resources/re-plants-vs-zombies-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/re-plants-vs-zombies-decomp-case/","evidence_url":"https://github.com/Patoke/re-plants-vs-zombies/blob/c4692036c5e11d227c8fb7c593b734dac96da028/README.md","group":"cases","id":"re-plants-vs-zombies-decomp-case","json_url":"https://awesomerea.org/resources/re-plants-vs-zombies-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/re-plants-vs-zombies-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/re-plants-vs-zombies-decomp-case/index.md","name":"re-plants-vs-zombies: decompiling and modernizing Plants vs. Zombies GOTY","name_zh":"re-plants-vs-zombies：反编译并现代化改造 Plants vs. Zombies 年度版","reconstruction_method":"decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["README describes decompiling the latest functionality of the first PvZ title and expanding the game and its engine, building on a since-deleted 0.9.9 decompilation by Miya (rspforhp) that it credits ruslan831 with archiving. Its roadmap marks x64 support and achievements as partial, the GLFW renderer and cross-platform replacements as in progress, and Zombatar and a modding API as not done. There are no releases; the last commit is dated 2026-07-11.","Playing needs the original game files from a purchased copy; README links the Steam Game of the Year Edition but names no exact executable version. The built executable is run from that game folder, and the audio code loads bass.dll or fmod.dll at runtime instead of linking a committed copy. README says the repository includes no PopCap IP beyond the open-source engine; Resources.cpp/.h reconstruct the game’s generated resource-ID tables, data derived from the game as is usual for such projects.","Builds use CMake 3.16+ and C++23. README documents Visual Studio Community, whose CMakeSettings.json has x86 and x64 MSVC configurations, or CMake with Ninja; toolchain.cmake cross-compiles with x86_64-w64-mingw32 Clang and windres. The reviewed build produces a Windows executable, and the repository has no CI workflow.","The sources document no tests, CI or comparison with the original executable; contributors annotate reversed functions and class members with their GOTY addresses. Fidelity to the original game is not measured.","LICENSE dedicates the repository under CC0 1.0. The SexyAppFramework code derives from the engine PopCap made public, but PopCap’s license text is not included; the ogg code keeps Xiph.org’s BSD-style notice, and the FMOD 3 (Firelight, 1999–2002) and BASS 2.4 (Un4seen, 1999–2022) API headers keep their vendors’ copyrights. The original game and its files keep their rights holders’ terms. README says the project does not condone piracy."],"requirements_zh":["README 介绍项目旨在反编译初代 PvZ 的最新功能，并扩展游戏及其引擎；它建立在 Miya（rspforhp）已删除的 0.9.9 版反编译之上，并感谢 ruslan831 将其存档。路线图将 x64 支持和成就标为部分完成，GLFW 渲染器与跨平台替换标为进行中，Zombatar 和模组 API 尚未完成。项目没有发布版；最后一次提交日期为 2026-07-11。","游玩需要购买所得副本中的原版游戏文件；README 链接 Steam 年度版，但未注明确切的可执行文件版本。构建出的可执行文件在该游戏目录中运行，音频代码在运行时加载 bass.dll 或 fmod.dll，而不是链接仓库内提交的副本。README 称仓库除开源引擎外不含 PopCap 的任何 IP；Resources.cpp/.h 重建了游戏生成的资源 ID 表，属于从游戏导出的数据，这在此类项目中很常见。","构建需要 CMake 3.16 及以上和 C++23。README 介绍了 Visual Studio Community（CMakeSettings.json 提供 x86 与 x64 的 MSVC 配置）或 CMake 搭配 Ninja 两种方式；toolchain.cmake 使用 x86_64-w64-mingw32 Clang 和 windres 交叉编译。所审构建产出 Windows 可执行文件，仓库没有 CI 工作流。","来源未记录测试、CI 或与原版可执行文件的比较；贡献者会为逆向出的函数和类成员标注其 GOTY 版地址。与原游戏的一致程度未经衡量。","LICENSE 以 CC0 1.0 释出仓库。SexyAppFramework 代码源自 PopCap 公开的引擎，但仓库未附 PopCap 的许可证文本；ogg 代码保留 Xiph.org 的 BSD 式声明，FMOD 3（Firelight，1999–2002）与 BASS 2.4（Un4seen，1999–2022）的 API 头文件仍归各自厂商所有。原版游戏及其文件仍受其权利人的条款约束。README 表示项目不纵容盗版。"],"targets":["game"],"url":"https://github.com/Patoke/re-plants-vs-zombies","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","category":"related-lists","description_en":"An awesome list of Ghidra scripts, plugins, extensions, learning materials and related services, kept by the Allsafe GitHub organization since December 2019. Its 49 entries comprise 36 scripts and extensions, from malware-analysis and crypto-constant finders to Go, JNI, EVM and EFI helpers, Python and Jupyter bridges, P-code emulation and patch-diff correlators; 10 books, talks and courses; and three related projects such as r2ghidra-dec and Ghidraaas, each with a one-line summary.","description_zh":"由 GitHub 组织 Allsafe 自 2019 年 12 月起维护的 awesome 清单，收录 Ghidra 脚本、插件、扩展、学习资料和相关服务。全部 49 个条目包括 36 个脚本与扩展，从恶意软件分析和加密常量查找工具，到 Go、JNI、EVM 和 EFI 辅助工具、Python 与 Jupyter 桥接、P-code 模拟以及补丁对比关联器；10 份书籍、演讲和课程资料；以及 r2ghidra-dec、Ghidraaas 等 3 个相关项目，每项附一行简介。","entry_url":"https://awesomerea.org/resources/awesome-ghidra/","entry_url_zh":"https://awesomerea.org/zh/resources/awesome-ghidra/","evidence_url":"https://github.com/AllsafeCyberSecurity/awesome-ghidra/blob/9265b2f730a10f6261945ac22cb295c8f6038f87/README.md","group":"learn","id":"awesome-ghidra","json_url":"https://awesomerea.org/resources/awesome-ghidra/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/awesome-ghidra/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/awesome-ghidra/index.md","name":"Awesome Ghidra","name_zh":"Awesome Ghidra Ghidra 资源清单","record_type":"resource","relationship":"learning","requirements":["Reviewed at commit 9265b2f (2026-06-18). 42 of 53 commits date from 2019–2021; after that gap the maintainers merged four contributor pull requests in June 2026, adding entries such as the printf-inliner plugin, 0xdea's scripts, IDAObjcTypes and GhidrAI. Entries name no Ghidra versions, GhidrAI is the only AI-assisted entry, and no MCP server is listed.","Entries give a link and a one-line summary with no license or maintenance information. Of the 42 GitHub repositories linked, 1 is archived and 17 have not been pushed to since 2021, so each project's Ghidra compatibility must be checked at its source; only the OOAnalyzer plugin path returned a 404.","Five entries are the maintaining organization's own scripts and tools. The Materials section includes a Japanese-language practical guide, the NSA's GhidraClass course material in the Ghidra repository, conference talks and The Ghidra Book.","GitHub detects no license and the repository has no license file or contribution guide, so the list states no reuse terms; linked projects keep their own licenses."],"requirements_zh":["审阅提交为 9265b2f（2026-06-18）。53 个提交中有 42 个来自 2019–2021 年；此后中断数年，维护者于 2026 年 6 月合并了 4 个贡献者的拉取请求，新增 printf-inliner 插件、0xdea 的脚本、IDAObjcTypes 和 GhidrAI 等条目。条目均未注明 Ghidra 版本；GhidrAI 是唯一一个 AI 辅助条目，清单中没有 MCP 服务器。","每个条目只有链接和一行简介，没有许可证或维护状态信息。所链接的 42 个 GitHub 仓库中，1 个已归档，17 个自 2021 年以来没有推送，因此各项目与 Ghidra 的兼容性需在其自身来源中核实；只有 OOAnalyzer 插件路径返回 404。","其中 5 个条目是维护组织自己的脚本和工具。“资料”部分包括一本日文实践指南、Ghidra 仓库中 NSA 提供的 GhidraClass 课程材料、会议演讲以及 The Ghidra Book。","GitHub 未检测到许可证，仓库也没有许可证文件或贡献指南，因此清单未声明复用条款；所链接的项目保留各自许可证。"],"targets":["binary"],"url":"https://github.com/AllsafeCyberSecurity/awesome-ghidra","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","additional_evidence_urls":["https://github.com/SAT-R/sa2/blob/393357f7c9d46b5c10b6c41a57b80fe3b58f3c8d/INSTALL.md","https://github.com/SAT-R/sa2/blob/393357f7c9d46b5c10b6c41a57b80fe3b58f3c8d/Makefile","https://github.com/SAT-R/sa2/blob/393357f7c9d46b5c10b6c41a57b80fe3b58f3c8d/config.mk","https://github.com/SAT-R/sa2/blob/393357f7c9d46b5c10b6c41a57b80fe3b58f3c8d/sa2.sha1","https://github.com/SAT-R/sa2/blob/393357f7c9d46b5c10b6c41a57b80fe3b58f3c8d/sa1.sha1","https://github.com/SAT-R/sa2/blob/393357f7c9d46b5c10b6c41a57b80fe3b58f3c8d/.github/workflows/build.yml","https://github.com/SAT-R/sa2/tree/393357f7c9d46b5c10b6c41a57b80fe3b58f3c8d/asm/non_matching","https://github.com/SAT-R/sa2/tree/393357f7c9d46b5c10b6c41a57b80fe3b58f3c8d/graphics","https://github.com/SAT-R/sa2/tree/393357f7c9d46b5c10b6c41a57b80fe3b58f3c8d/sound","https://github.com/SAT-R/sa2/blob/393357f7c9d46b5c10b6c41a57b80fe3b58f3c8d/chao_garden/data/data.s","https://github.com/SAT-R/sa2/blob/393357f7c9d46b5c10b6c41a57b80fe3b58f3c8d/src/data/sa2/recordings.c","https://github.com/SAT-R/sa2/tree/393357f7c9d46b5c10b6c41a57b80fe3b58f3c8d/libagbsyscall"],"category":"reconstruction-cases","description_en":"Reconstructs Sonic Advance and Sonic Advance 2 for the Game Boy Advance as C that rebuilds six hash-listed ROMs with SAT-R’s agbcc fork, and compiles the same code into widescreen SDL ports for Linux, macOS and Windows plus PSP and PS2 builds. README reports Sonic Advance 2 built entirely from C with about 60 functions still non-matching. Extracted graphics, music and data are committed, so the builds read no original ROM.","description_zh":"将 Game Boy Advance 版《索尼克 Advance》和《索尼克 Advance 2》重建为 C 源码，借助 SAT-R 的 agbcc 分支重新构建六个列有哈希值的 ROM，同一套代码还可编译为面向 Linux、macOS 和 Windows 的宽屏 SDL 移植版，以及 PSP 和 PS2 版本。README 报告《索尼克 Advance 2》已全部由 C 构建，仍有约 60 个函数不一致。提取出的图像、音乐和数据都提交在仓库中，因此构建时不读取原 ROM。","entry_url":"https://awesomerea.org/resources/sonic-advance-1-2-decomp-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sonic-advance-1-2-decomp-port-case/","evidence_url":"https://github.com/SAT-R/sa2/blob/393357f7c9d46b5c10b6c41a57b80fe3b58f3c8d/README.md","group":"cases","id":"sonic-advance-1-2-decomp-port-case","json_url":"https://awesomerea.org/resources/sonic-advance-1-2-decomp-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sonic-advance-1-2-decomp-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sonic-advance-1-2-decomp-port-case/index.md","name":"Sonic Advance 1 & 2: a matching GBA decompilation with widescreen ports","name_zh":"《索尼克 Advance》1 与 2：一致性 GBA 反编译及宽屏移植","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["README marks the project unfinished and under active development. It lists six ROM targets with SHA-1 values: Sonic Advance (Europe) and Sonic Advance 2 (USA, Europe, Japan, Japanese Virtual Console and a 2002-10-25 USA beta). README reports that SA2 builds 100% from C with about 60 non-matching functions pulled in from asm/non_matching, which at the reviewed commit holds 64 SA2, 99 SA1, 17 shared and 8 engine files, and that over 600 SA2 functions are unnamed. The Tiny Chao Garden and Collect Rings multiboot sub-games are built for matching and only partly decompiled.","The documented builds read no original ROM. The tree commits over 12,000 PNG sprite frames and tiles, 474 MIDI songs, tilemaps and other raw data, including a 191 KB data file included piecewise into the Tiny Chao Garden multiboot ROM. Port CI jobs still download a base ROM from private storage, which the Makefile does not reference.","INSTALL.md targets Linux (with WSL for Windows users) and macOS: ARM GCC and binutils, libpng, SDL2 and MinGW-w64, plus mkisofs or cdrtools for PS2. Matching GBA builds need SAT-R’s agbcc fork built and installed into the tree. Ports build with make sdl (Linux/macOS), sdl_win32 (Windows), sdl_psp (PSPDEV) and ps2 (PS2DEV) at a 426×240 widescreen resolution; README marks the Win32 OpenGL target not functional, and no GitHub release is published.","On the GBA platform, make runs a SHA-1 check of the built ROM against its listed hash. CI checks formatting, then builds and hash-checks SA2 USA, SA1 Europe and the four other SA2 variants; it also builds SDL, Win32, PSP and PS2 port targets for both games on Ubuntu and macOS, and replays a committed any% speedrun input recording through a headless SDL build. Matching applies to the GBA ROMs, not to the widescreen ports.","The repository has no license file and GitHub detects none. The extracted graphics, music and data, and the Nintendo SDK libraries rebuilt in libagbsyscall, m4a and agb_flash, keep their rights holders’ terms. README sets a strict no-LLM/no-AI policy for issues and pull requests."],"requirements_zh":["README 标明项目尚未完成、仍在积极开发。它列出六个附 SHA-1 的 ROM 目标：《索尼克 Advance》（欧版），以及《索尼克 Advance 2》的美版、欧版、日版、日本 Virtual Console 版和 2002-10-25 的美版测试版。README 报告 SA2 已 100% 由 C 构建，约 60 个不一致函数从 asm/non_matching 引入汇编；在所审提交中，该目录有 SA2 文件 64 个、SA1 文件 99 个、共享文件 17 个、引擎文件 8 个，另有 600 多个 SA2 函数尚未命名。Tiny Chao Garden 和 Collect Rings 这两个多重启动子游戏为构建一致 ROM 而一并编译，只完成了部分反编译。","文档所述的构建不读取原 ROM。仓库提交了 12,000 多个 PNG 精灵帧和图块、474 首 MIDI 乐曲、瓦片地图及其他原始数据，其中包括一个 191 KB、分段并入 Tiny Chao Garden 多重启动 ROM 的数据文件。移植版的 CI 任务仍从私有存储下载一个基础 ROM，但 Makefile 并不引用它。","INSTALL.md 面向 Linux（Windows 用户使用 WSL）和 macOS：需 ARM GCC 与 binutils、libpng、SDL2 和 MinGW-w64，构建 PS2 版另需 mkisofs 或 cdrtools。一致的 GBA 构建需将 SAT-R 的 agbcc 分支编译并安装到仓库中。移植版分别用 make sdl（Linux／macOS）、sdl_win32（Windows）、sdl_psp（PSPDEV）和 ps2（PS2DEV）构建，分辨率为 426×240 宽屏；README 标注 Win32 OpenGL 目标不可用，GitHub 上也没有发布版。","在 GBA 平台上，make 会按所列哈希值对构建出的 ROM 做 SHA-1 校验。CI 检查代码格式，构建并校验 SA2 美版、SA1 欧版及另外四个 SA2 版本；还在 Ubuntu 和 macOS 上为两款游戏构建 SDL、Win32、PSP 和 PS2 移植目标，并用无界面的 SDL 构建回放仓库中的一段 any% 速通输入录制。一致性只针对 GBA ROM，不适用于宽屏移植版。","仓库没有许可证文件，GitHub 也未识别出许可证。提取出的图像、音乐和数据，以及在 libagbsyscall、m4a 和 agb_flash 中重建的 Nintendo SDK 库，仍受其权利人条款约束。README 规定对议题和拉取请求严格禁止使用 LLM／AI。"],"targets":["game"],"url":"https://github.com/SAT-R/sa2","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","additional_evidence_urls":["https://github.com/Yharnam-Hunters/Paleblood/blob/1d418eba692745d8fc0a7d77a04d1bca56badab8/STATUS.md","https://github.com/Yharnam-Hunters/Paleblood/blob/1d418eba692745d8fc0a7d77a04d1bca56badab8/CONTRIBUTING.md","https://github.com/Yharnam-Hunters/Paleblood/blob/1d418eba692745d8fc0a7d77a04d1bca56badab8/docs/VERIFY.md","https://github.com/Yharnam-Hunters/Paleblood/blob/1d418eba692745d8fc0a7d77a04d1bca56badab8/docs/ONBOARDING.md","https://github.com/Yharnam-Hunters/Paleblood/blob/1d418eba692745d8fc0a7d77a04d1bca56badab8/docs/GHIDRA.md","https://github.com/Yharnam-Hunters/Paleblood/blob/1d418eba692745d8fc0a7d77a04d1bca56badab8/target.sha256","https://github.com/Yharnam-Hunters/Paleblood/blob/1d418eba692745d8fc0a7d77a04d1bca56badab8/third_party/README.md","https://github.com/Yharnam-Hunters/Paleblood/blob/1d418eba692745d8fc0a7d77a04d1bca56badab8/.github/workflows/ci.yml","https://github.com/Yharnam-Hunters/Paleblood/blob/1d418eba692745d8fc0a7d77a04d1bca56badab8/LICENSE","https://github.com/Yharnam-Hunters/bbport/blob/accdce33b89d45fa3c7f5066e69362a5ec215c1a/README.md"],"category":"reconstruction-cases","description_en":"Rewrites code from Bloodborne’s PS4 executable (CUSA03173 with update 1.09) as readable C++, one function at a time, aiming at a native PC source port on a clean-room runtime of its own. It is a functional rather than matching decompilation: each replacement is hooked in, compared with the original machine code on recorded and generated inputs, and independently reviewed. Work is at an early stage: README reports 21 of 157,757 functions verified, and the game does not yet run on Paleblood’s own runtime.","description_zh":"将 Bloodborne PS4 可执行文件（CUSA03173，含 1.09 更新）的代码逐个函数改写为可读的 C++，目标是在项目以净室方式自行编写的运行时上实现原生 PC 源码移植。它追求功能等价而非字节一致：每个替换函数都以钩子接入，在录制与生成的输入上与原始机器码对照比较，再经独立审核。项目仍处早期：README 报告 157,757 个函数中已验证 21 个，游戏尚不能在 Paleblood 自己的运行时上运行。","entry_url":"https://awesomerea.org/resources/paleblood-bloodborne-functional-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/paleblood-bloodborne-functional-decomp-case/","evidence_url":"https://github.com/Yharnam-Hunters/Paleblood/blob/1d418eba692745d8fc0a7d77a04d1bca56badab8/README.md","group":"cases","id":"paleblood-bloodborne-functional-decomp-case","json_url":"https://awesomerea.org/resources/paleblood-bloodborne-functional-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/paleblood-bloodborne-functional-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/paleblood-bloodborne-functional-decomp-case/index.md","name":"Paleblood: a functional decompilation of Bloodborne with its own runtime","name_zh":"Paleblood：带自有运行时的 Bloodborne 功能等价反编译","reconstruction_method":"decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the 2026-10-19 head, 12 days after the first commit. The generated status reports 31 functions replaced and 21 verified out of a 157,757-function Ghidra export; the project’s loader maps the executable, and its boot stops at the first unimplemented system call with 247 of 686 system imports implemented. Replacements cover parts of the frame loop and the event, kernel, input, AI, character, physics and render layers, and BB_TARGET_FPS reproduces three community frame-rate patches in code.","Requires Bloodborne CUSA03173 (EU) with the 1.09 update, dumped from the user’s own PS4; the executables converted from it must match target.sha256. README says the repository holds no game code, assets, binaries, decompiler output or extracted data, a check rejects game data in the pre-commit hook and CI, and the project does not provide or point to game files, pkgs, firmware, keys or decryption tools.","Development is documented on Linux with CMake 3.20+ and CTest, plus Ghidra 12.0.3 with the GhidraOrbis loader for analysis. Full game runs still use an external scaffold: third_party/bbport, the project’s fork of the GPL-2.0-or-later bloodborne_pc port, which runs the original executable natively with shadPS4-derived Vulkan rendering. CI does not fetch that submodule.","README says tools/verify.py runs the original code and a replacement side by side, comparing return values, registers, every byte written and every library call, and that deliberately wrong versions must fail; options that replace a community patch are checked against the original with that patch applied. CI builds with GCC and Clang and runs unit, harness and policy checks without game data, so verification against the game is contributor-run and project-reported.","GPL-2.0-or-later per LICENSE; the bbport scaffold has its own GPL-2.0-or-later notice, which README says grants no right in the game or its code. README calls Paleblood a fan project unaffiliated with Sony Interactive Entertainment or FromSoftware and describes the runtime as clean-room. CONTRIBUTING.md allows disclosed, verified AI-assisted work, and recent commits carry Co-Authored-By trailers naming Claude Opus 5.5 and Codex."],"requirements_zh":["审阅的是 2026-10-19 的最新提交，距首次提交 12 天。自动生成的状态显示，在 157,757 个函数的 Ghidra 导出中已替换 31 个、验证 21 个；项目自己的加载器可映射可执行文件，启动流程停在第一个尚未实现的系统调用处，686 个系统导入中已实现 247 个。替换内容涵盖帧循环的部分代码，以及事件、内核、输入、AI、角色、物理和渲染层中的函数；BB_TARGET_FPS 以代码方式重现了三个社区帧率补丁。","需要 Bloodborne CUSA03173（欧版）及 1.09 更新，并须从使用者自己的 PS4 上转储；由此转换得到的可执行文件须与 target.sha256 一致。README 称仓库不含任何游戏代码、素材、二进制文件、反编译器输出或提取数据，预提交钩子和 CI 中的检查会拒绝游戏数据，项目也不提供或指向游戏文件、pkg、固件、密钥或解密工具。","文档说明的开发环境为 Linux，需 CMake 3.20+ 与 CTest，分析时使用 Ghidra 12.0.3 及 GhidraOrbis 加载器。完整运行游戏目前仍依赖外部脚手架 third_party/bbport：这是项目对采用 GPL-2.0-or-later 的 bloodborne_pc 移植所建的分支，以原生方式运行原始可执行文件，并用源自 shadPS4 的 Vulkan 代码渲染。CI 不获取该子模块。","README 称 tools/verify.py 会并排运行原始代码与替换函数，比较返回值、寄存器、每个写入的字节和每次库调用，且故意写错的版本必须无法通过；替代社区补丁的选项则与打过该补丁的原版对照验证。CI 使用 GCC 与 Clang 构建，并在没有游戏数据的情况下运行单元、测试框架和规则检查，因此针对游戏本身的验证由贡献者运行、属项目报告。","依 LICENSE 采用 GPL-2.0-or-later；bbport 脚手架另有 GPL-2.0-or-later 声明，README 称该声明不授予游戏或其代码的任何权利。README 称 Paleblood 是与 Sony Interactive Entertainment 和 FromSoftware 无关的粉丝项目，并称运行时以净室方式编写。CONTRIBUTING.md 允许经披露并验证的 AI 辅助工作，近期提交带有署名 Claude Opus 5.5 与 Codex 的 Co-Authored-By 尾注。"],"targets":["game"],"url":"https://github.com/Yharnam-Hunters/Paleblood","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","additional_evidence_urls":["https://github.com/projectPiki/pikmin2/blob/ffbd853726427f2e90cd201aaca90dc82b34f990/configure.py","https://github.com/projectPiki/pikmin2/blob/ffbd853726427f2e90cd201aaca90dc82b34f990/config/GPVE01/config.yml","https://github.com/projectPiki/pikmin2/blob/ffbd853726427f2e90cd201aaca90dc82b34f990/config/GPVE01/build.sha1","https://github.com/projectPiki/pikmin2/blob/ffbd853726427f2e90cd201aaca90dc82b34f990/config/GPVJ01/config.yml","https://github.com/projectPiki/pikmin2/blob/ffbd853726427f2e90cd201aaca90dc82b34f990/tools/project.py","https://github.com/projectPiki/pikmin2/blob/ffbd853726427f2e90cd201aaca90dc82b34f990/.github/workflows/build.yml","https://github.com/projectPiki/pikmin2/blob/ffbd853726427f2e90cd201aaca90dc82b34f990/LICENSE.MD","https://decomp.dev/projectPiki/pikmin2"],"category":"reconstruction-cases","description_en":"A fan decompilation of Pikmin 2 that rebuilds main.dol for five GameCube releases (USA retail, two USA demos, PAL and Japan) with the original Metrowerks compilers, checking each against a stored SHA-1. The build reads main.dol from the user’s own copy of each release. decomp.dev reported all code matched and fully linked for every version at the reviewed commit, and a non-matching mode builds the US DOL entirely from C++ for modding.","description_zh":"由爱好者进行的《皮克敏2》反编译项目：用原版 Metrowerks 编译器为五个 GameCube 版本（美版零售版、两个美版体验版、PAL 版和日版）重建 main.dol，并逐一与仓库保存的 SHA-1 比对。构建读取使用者自有各版本中的 main.dol。decomp.dev 报告所审提交中各版本的代码均已全部匹配并完全链接；另有非一致性模式，可完全由 C++ 源码构建美版 DOL 以供模组制作。","entry_url":"https://awesomerea.org/resources/pikmin-2-matching-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/pikmin-2-matching-decomp-case/","evidence_url":"https://github.com/projectPiki/pikmin2/blob/ffbd853726427f2e90cd201aaca90dc82b34f990/README.MD","group":"cases","id":"pikmin-2-matching-decomp-case","json_url":"https://awesomerea.org/resources/pikmin-2-matching-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/pikmin-2-matching-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pikmin-2-matching-decomp-case/index.md","name":"Pikmin 2: a fully matched GameCube decompilation across five releases","name_zh":"《皮克敏2》：覆盖五个版本、已完全匹配的 GameCube 反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["README still calls this a work-in-progress decompilation and lists five supported versions: GPVE01 (USA retail, the default), GPVE01_D17 and GPVE01_D18 (USA demos 17 and 18), GPVP01 (PAL) and GPVJ01 (Japan). Each has its own configuration and SHA-1 file, and CI builds all five. Outputs are GameCube DOLs, not a PC executable or port.","Each version needs main.dol from the user’s own copy of that release at orig/<version>/sys/main.dol, and decomp-toolkit checks it against the hash in that version’s config.yml before splitting. The repository commits game-derived symbol and split tables for every version; config comments say the GPVE01 symbols were generated from a pikmin2UP.MAP linker map and the Japanese and PAL tables were recovered from those DOLs using the US symbols. No disc images or extracted game files are included.","Builds need Python and ninja on Windows (native tooling recommended), macOS (with wine-crossover) or Linux (an automatically downloaded wibo on x86, Wine elsewhere). configure.py pins decomp-toolkit v1.7.5, objdiff v3.4.1, binutils 2.42-1, sjiswrap v1.2.2, wibo 1.0.0-beta.5 and the 20250812 compiler bundle, using Metrowerks GC/2.6 for game, JSystem and runtime code and GC/1.2.5n for the Dolphin SDK libraries.","configure.py marks 1,154 objects Matching for every supported version and one more for Japan only; none is NonMatching. The default ninja target checks the linked DOL against config/<version>/build.sha1 before reporting progress, and CI builds all five versions in a container that supplies the original files and compilers. decomp.dev’s reports for the pinned commit list 100.00% of code matched and fully linked for each version (24,957 functions and 1,153 units for GPVE01).","With --non-matching, README says the final hash check is disabled and the US DOL builds completely from C++ source that is, to the team’s knowledge, functionally equivalent, so every file can be edited for modding. The repository carries CC0-1.0 in LICENSE.MD; Nintendo’s game, its files and the downloaded compilers fall outside that dedication."],"requirements_zh":["README 仍称其为进行中的反编译项目，并列出五个支持版本：GPVE01（美版零售版，默认）、GPVE01_D17 与 GPVE01_D18（美版体验版 17 和 18）、GPVP01（PAL 版）以及 GPVJ01（日版）。每个版本都有各自的配置和 SHA-1 文件，CI 会构建全部五个版本。产物是 GameCube DOL，不是 PC 可执行文件或移植。","每个版本都需要使用者自有该版本中的 main.dol，放在 orig/<version>/sys/main.dol；decomp-toolkit 在拆分前会按该版本 config.yml 中的哈希进行校验。仓库为每个版本提交了源自游戏的符号表和拆分表；配置注释称 GPVE01 的符号由 pikmin2UP.MAP 链接映射生成，日版和 PAL 版的表则以美版符号为基础从各自 DOL 中恢复。仓库不含光盘镜像或提取出的游戏文件。","构建需要 Python 与 ninja，可在 Windows（推荐原生工具）、macOS（需 wine-crossover）或 Linux（x86 上自动下载 wibo，其他架构用 Wine）上进行。configure.py 固定 decomp-toolkit v1.7.5、objdiff v3.4.1、binutils 2.42-1、sjiswrap v1.2.2、wibo 1.0.0-beta.5 及 20250812 编译器包；游戏、JSystem 和运行时代码使用 Metrowerks GC/2.6，Dolphin SDK 库使用 GC/1.2.5n。","configure.py 将 1,154 个目标文件标为对所有支持版本均一致，另有一个仅对日版一致；没有标为 NonMatching 的项。默认 ninja 目标会先按 config/<version>/build.sha1 校验链接出的 DOL，再报告进度；CI 在提供原始文件和编译器的容器中构建全部五个版本。decomp.dev 针对该固定提交的各版本报告均显示代码 100.00% 已匹配并完全链接（GPVE01 为 24,957 个函数、1,153 个单元）。","README 称使用 --non-matching 时会关闭最终哈希校验，美版 DOL 将完全由 C++ 源码构建，据团队所知在功能上等价，因此每个文件都可修改用于模组制作。仓库在 LICENSE.MD 中采用 CC0-1.0；任天堂的游戏及其文件、下载的编译器不在该声明范围内。"],"targets":["game"],"url":"https://github.com/projectPiki/pikmin2","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","additional_evidence_urls":["https://github.com/gustavocanepa/gt4-decomp/blob/e35ec1ddb6a5931252489ff7d8ed27520fdabe4e/orig/README.md","https://github.com/gustavocanepa/gt4-decomp/blob/e35ec1ddb6a5931252489ff7d8ed27520fdabe4e/THIRD_PARTY.md","https://github.com/gustavocanepa/gt4-decomp/blob/e35ec1ddb6a5931252489ff7d8ed27520fdabe4e/project.toml","https://github.com/gustavocanepa/gt4-decomp/blob/e35ec1ddb6a5931252489ff7d8ed27520fdabe4e/tools/setup_linux.sh","https://github.com/gustavocanepa/gt4-decomp/blob/e35ec1ddb6a5931252489ff7d8ed27520fdabe4e/.github/workflows/check.yml","https://github.com/gustavocanepa/gt4-decomp/blob/e35ec1ddb6a5931252489ff7d8ed27520fdabe4e/.github/workflows/progress.yml","https://github.com/gustavocanepa/gt4-decomp/blob/e35ec1ddb6a5931252489ff7d8ed27520fdabe4e/AGENTS.md","https://github.com/gustavocanepa/gt4-decomp/blob/e35ec1ddb6a5931252489ff7d8ed27520fdabe4e/PILOT.md","https://github.com/gustavocanepa/gt4-decomp/blob/e35ec1ddb6a5931252489ff7d8ed27520fdabe4e/LICENSE","https://github.com/gustavocanepa/gt4-decomp/blob/9bcdea300b904cc48bd81886e169ea8925f31d41/report.json","https://decomp.dev/gustavocanepa/gt4-decomp"],"category":"reconstruction-cases","description_en":"Decompiles Gran Turismo 4’s PS2 engine executable (CORE.GT4, NTSC-U v1.01) into one C or C++ source per function for Sony’s ee-gcc 2.96, matching public libraries such as newlib and Expat from their own source. The README credits AI agents (Anthropic’s Claude) driving the project’s tools with most of the matching, each function accepted only on a compiler-and-judge comparison, and reports 95.4% of functions and 83.6% of code bytes matched for an October 2026 commit. A local full build links sources at their original addresses, fills the rest from disassembly and compares SHA-1 with the user’s executable.","description_zh":"将 Gran Turismo 4（《GT 赛车 4》）的 PS2 引擎可执行文件（CORE.GT4，NTSC-U v1.01）按每个函数一个 C 或 C++ 源文件反编译，面向 Sony 的 ee-gcc 2.96，并用 newlib、Expat 等公开库自身的源码匹配其函数。README 称大部分匹配工作由驱动项目工具的 AI 智能体（Anthropic 的 Claude）完成，每个函数须通过编译器与判定器的比对才算完成，并报告 2026 年 10 月某次提交时 95.4% 的函数和 83.6% 的代码字节已匹配。本地完整构建将源码链接到原始地址，其余部分用反汇编补齐，再与使用者的可执行文件比较 SHA-1。","entry_url":"https://awesomerea.org/resources/gran-turismo-4-matching-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/gran-turismo-4-matching-decomp-case/","evidence_url":"https://github.com/gustavocanepa/gt4-decomp/blob/e35ec1ddb6a5931252489ff7d8ed27520fdabe4e/README.md","group":"cases","id":"gran-turismo-4-matching-decomp-case","json_url":"https://awesomerea.org/resources/gran-turismo-4-matching-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/gran-turismo-4-matching-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/gran-turismo-4-matching-decomp-case/index.md","name":"Gran Turismo 4: an agent-assisted PS2 engine matching decompilation","name_zh":"Gran Turismo 4：借助智能体的 PS2 引擎匹配反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["README describes a work-in-progress matching decompilation of the engine executable only: most game logic lives in Adhoc scripts, which the separate OpenAdhoc project re-creates, and the separate GT4 Native PC port is described as not playable. The progress-branch report for commit ba5d800 (2026-10-19), which decomp.dev also shows for the reviewed commit, gives 29,551 of 30,962 functions and 83.55% of code matched, 82.08% of code linked from source and 2.13% of data placed from source; 202 hand-written assembly functions are not counted.","Supply your own Gran Turismo 4 (USA) v1.01 disc image (SCUS-97328); orig/README.md lists SHA-1 values for SCUS_973.28, CORE.GT4 and the ELF converted from it. Nothing from the game is committed, so the SHA-1 build check and the progress reports run only where those files are present, not in CI.","Documented for Linux or WSL (Ubuntu) with Python 3.11+ and rabbitizer. tools/setup_linux.sh installs MIPS binutils and 32-bit libc, downloads decomp.me’s ee-gcc 2.96 build, clones decomp-permuter and installs splat in a virtual environment; project.toml names further decomp.me compilers, including ee-gcc 2.9 for about 270 Sony SDK functions.","A function counts as matched when tools/match.py (or the agents’ tools/swarm.py) prints MATCH, and tools/build.py links every function at its original address and compares SHA-1 of the loaded segments. CI runs unit tests, an assembly-in-C policy check and layout checks and compiles every source, but cannot link or compare without the game; matching figures are author-reported.","MIT for the project’s tools, documentation and source. THIRD_PARTY.md lists matched public libraries under their own terms (Expat, newlib, GNU libio and the GCC runtime under GPL with exceptions, SGI STL headers, MT19937), which build.py --without can leave out, and records proprietary SCE-RT/Medius, Logitech and Sony SDK code as identified but not copied. Gran Turismo 4 belongs to Sony Interactive Entertainment. Agent instructions are in AGENTS.md, CLAUDE.md and .claude/."],"requirements_zh":["README 称这是只针对引擎可执行文件、仍在进行中的匹配反编译：游戏逻辑大多在 Adhoc 脚本中，由独立的 OpenAdhoc 项目重建；另一个独立项目 GT4 Native PC 移植被描述为尚不可玩。progress 分支针对提交 ba5d800（2026-10-19）的报告（decomp.dev 对所审提交显示相同数字）给出 30,962 个函数中 29,551 个、代码 83.55% 已匹配，82.08% 的代码由源码链接，2.13% 的数据由源码放置；202 个原本就是手写汇编的函数不计入。","需自备 Gran Turismo 4（美版）v1.01 光盘镜像（SCUS-97328）；orig/README.md 列出 SCUS_973.28、CORE.GT4 及其转换所得 ELF 的 SHA-1。仓库未提交任何游戏内容，因此 SHA-1 构建校验和进度报告只能在具备这些文件的机器上运行，CI 中无法运行。","文档以 Linux 或 WSL（Ubuntu）为准，需要 Python 3.11 及以上和 rabbitizer。tools/setup_linux.sh 安装 MIPS binutils 和 32 位 libc，下载 decomp.me 的 ee-gcc 2.96 构建，克隆 decomp-permuter，并在虚拟环境中安装 splat；project.toml 还列出其他 decomp.me 编译器，其中 ee-gcc 2.9 用于约 270 个 Sony SDK 函数。","当 tools/match.py（或智能体使用的 tools/swarm.py）输出 MATCH，且 tools/build.py 将每个函数链接到原始地址并比较已加载段的 SHA-1 时，函数才算匹配。CI 运行单元测试、“C 中不得夹带汇编”的策略检查和布局检查，并编译每个源文件，但没有游戏文件就无法链接或比较；匹配数字为作者报告。","项目的工具、文档和源码采用 MIT 许可。THIRD_PARTY.md 列出按各自条款匹配的公开库（Expat、newlib、带例外条款的 GPL 下的 GNU libio 与 GCC 运行库、SGI STL 头文件、MT19937），可用 build.py --without 排除，并说明专有的 SCE-RT/Medius、Logitech 和 Sony SDK 代码仅作识别、未予复制。Gran Turismo 4 归 Sony Interactive Entertainment 所有。智能体说明位于 AGENTS.md、CLAUDE.md 和 .claude/。"],"targets":["game"],"url":"https://github.com/gustavocanepa/gt4-decomp","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","additional_evidence_urls":["https://github.com/snailspeed3/mkw/blob/78572c95c41dbf6cbb7dd251a567e538560ce1d8/configure.py","https://github.com/snailspeed3/mkw/blob/78572c95c41dbf6cbb7dd251a567e538560ce1d8/config/RMCP01/config.yml","https://github.com/snailspeed3/mkw/blob/78572c95c41dbf6cbb7dd251a567e538560ce1d8/config/RMCP01/build.sha1","https://github.com/snailspeed3/mkw/blob/78572c95c41dbf6cbb7dd251a567e538560ce1d8/tools/project.py","https://github.com/snailspeed3/mkw/blob/78572c95c41dbf6cbb7dd251a567e538560ce1d8/CONTRIBUTING.md","https://github.com/snailspeed3/mkw/blob/78572c95c41dbf6cbb7dd251a567e538560ce1d8/HACK.md","https://github.com/snailspeed3/mkw/blob/78572c95c41dbf6cbb7dd251a567e538560ce1d8/.github/workflows/build.yml","https://github.com/snailspeed3/mkw/blob/78572c95c41dbf6cbb7dd251a567e538560ce1d8/LICENSE","https://github.com/snailspeed3/mkw/blob/78572c95c41dbf6cbb7dd251a567e538560ce1d8/lib/gamespy/license.txt"],"category":"reconstruction-cases","description_en":"A work-in-progress matching decompilation of Mario Kart Wii that targets the PAL release (RMCP01), rebuilding main.dol and the StaticR.rel module from C and C++ with Metrowerks compilers and checking both against stored SHA-1 values. The build splits these binaries from a user-supplied disc image, and objdiff compares objects during development. The README’s progress badges point to a decomp.dev page that did not resolve at review, and the default branch was last updated in September 2025.","description_zh":"《马力欧卡丁车 Wii》的进行中一致性反编译，目标为 PAL 版（RMCP01）：用 Metrowerks 编译器从 C 与 C++ 源码重建 main.dol 和 StaticR.rel 模块，并与仓库保存的 SHA-1 比对。构建从使用者自备的光盘镜像中拆分这些二进制，开发时用 objdiff 比对目标文件。README 的进度徽章指向的 decomp.dev 页面在审阅时无法访问，默认分支最后更新于 2025 年 9 月。","entry_url":"https://awesomerea.org/resources/mario-kart-wii-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/mario-kart-wii-decomp-case/","evidence_url":"https://github.com/snailspeed3/mkw/blob/78572c95c41dbf6cbb7dd251a567e538560ce1d8/README.md","group":"cases","id":"mario-kart-wii-decomp-case","json_url":"https://awesomerea.org/resources/mario-kart-wii-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/mario-kart-wii-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mario-kart-wii-decomp-case/index.md","name":"Mario Kart Wii: an in-progress matching decompilation of the PAL release","name_zh":"《马力欧卡丁车 Wii》：进行中的 PAL 版一致性反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["README lists one supported version, RMCP01 (PAL); configure.py defines no other and CI builds only RMCP01. The repository was renamed from riidefi/mkw, which README’s badges and clone command still use, and CONTRIBUTING.md and HACK.md still describe an earlier mkwutil and ppcdis build layout that the pinned tree no longer contains. The output is a Wii main.dol and StaticR.rel, not a PC port.","Copy your own RMCP01 disc image to orig/RMCP01; ISO (GCM), RVZ, WIA, WBFS, CISO, NFS, GCZ and TGC images are accepted, and config.yml records the expected SHA-1 of both binaries. README says the repository contains no game assets or assembly; decomp-toolkit splits main.dol and StaticR.rel locally using the committed, game-derived symbol and split tables.","Builds need Python and ninja on Windows (native tooling recommended), macOS (with wine-crossover) or Linux (an automatically downloaded wibo on x86, Wine elsewhere). configure.py pins decomp-toolkit v1.3.0, objdiff v2.4.0, binutils 2.42-1, sjiswrap v1.2.0, wibo 0.6.16 and the 20240706 compiler bundle, using Metrowerks Wii/0x4201_127 for the game, NW4R, EGG, RFL and MSL code and as the linker, and GC/3.0a5.2 for the Revolution SDK, TRK, DWC and GameSpy libraries.","Objects marked Matching (106 of the 213 listed in configure.py; 105 NonMatching, 2 Equivalent) are compiled from source and the rest of each binary comes from the split originals; the default ninja target checks main.dol and StaticR.rel against config/RMCP01/build.sha1 before reporting progress. CI builds RMCP01 in a private container holding the original files and uploads a progress report. decomp.dev had no report for the repository under either name at review.","The repository carries CC0-1.0; lib/gamespy keeps the GameSpy SDK’s own BSD-style license from IGN Entertainment, and Nintendo’s game, disc contents and the downloaded compilers keep their own rights."],"requirements_zh":["README 只列出一个支持版本 RMCP01（PAL 版）；configure.py 未定义其他版本，CI 也只构建 RMCP01。仓库由 riidefi/mkw 更名而来，README 的徽章和克隆命令仍使用旧名；CONTRIBUTING.md 和 HACK.md 仍描述早先基于 mkwutil 与 ppcdis 的构建结构，而固定提交中已不含这些内容。产物是 Wii 的 main.dol 和 StaticR.rel，不是 PC 移植。","需将自己的 RMCP01 光盘镜像复制到 orig/RMCP01，可接受 ISO（GCM）、RVZ、WIA、WBFS、CISO、NFS、GCZ 和 TGC 格式，config.yml 记录了两个二进制的预期 SHA-1。README 称仓库不含任何游戏素材或汇编；decomp-toolkit 依据仓库提交的、源自游戏的符号表和拆分表，在本地拆分 main.dol 与 StaticR.rel。","构建需要 Python 与 ninja，可在 Windows（推荐原生工具）、macOS（需 wine-crossover）或 Linux（x86 上自动下载 wibo，其他架构用 Wine）上进行。configure.py 固定 decomp-toolkit v1.3.0、objdiff v2.4.0、binutils 2.42-1、sjiswrap v1.2.0、wibo 0.6.16 及 20240706 编译器包；游戏、NW4R、EGG、RFL 和 MSL 代码及链接器使用 Metrowerks Wii/0x4201_127，Revolution SDK、TRK、DWC 和 GameSpy 库使用 GC/3.0a5.2。","标为 Matching 的目标文件（configure.py 所列 213 个中有 106 个；105 个为 NonMatching，2 个为 Equivalent）由源码编译，各二进制的其余部分取自拆分出的原始文件；默认 ninja 目标会先按 config/RMCP01/build.sha1 校验 main.dol 和 StaticR.rel，再报告进度。CI 在存放原始文件的私有容器中构建 RMCP01，并上传进度报告。审阅时 decomp.dev 在新旧仓库名下均无报告。","仓库采用 CC0-1.0；lib/gamespy 沿用 IGN Entertainment 为 GameSpy SDK 提供的 BSD 式许可证，任天堂的游戏、光盘内容和下载的编译器各自保留权利。"],"targets":["game"],"url":"https://github.com/snailspeed3/mkw","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","additional_evidence_urls":["https://github.com/arcanite24/pinyon-shift/blob/9331e453e9850d0fcc1c1606dee95db834a9d317/docs/LEGAL.md","https://github.com/arcanite24/pinyon-shift/blob/9331e453e9850d0fcc1c1606dee95db834a9d317/docs/BUILDING.md","https://github.com/arcanite24/pinyon-shift/blob/9331e453e9850d0fcc1c1606dee95db834a9d317/config/supported-dumps.json","https://github.com/arcanite24/pinyon-shift/blob/9331e453e9850d0fcc1c1606dee95db834a9d317/.gitmodules","https://github.com/arcanite24/pinyon-shift/blob/9331e453e9850d0fcc1c1606dee95db834a9d317/.github/workflows/ci.yml","https://github.com/arcanite24/pinyon-shift/blob/9331e453e9850d0fcc1c1606dee95db834a9d317/docs/PERFORMANCE.md","https://github.com/arcanite24/pinyon-shift/blob/9331e453e9850d0fcc1c1606dee95db834a9d317/src/guest_native/fmod_dsp.cpp","https://github.com/arcanite24/pinyon-shift/blob/9331e453e9850d0fcc1c1606dee95db834a9d317/docs/releases/0.6.0.md","https://github.com/arcanite24/pinyon-shift/blob/9331e453e9850d0fcc1c1606dee95db834a9d317/CLAUDE.md","https://github.com/arcanite24/pinyon-shift/blob/9331e453e9850d0fcc1c1606dee95db834a9d317/LICENSE","https://github.com/arcanite24/shiftglue-sdk/tree/79d3e6fae4b79e00def48a595c80f0eaa47fd2b6","https://github.com/arcanite24/pinyon-shift/releases/tag/v0.6.0"],"category":"reconstruction-cases","description_en":"Builds a native port of the Xbox 360 release of Forza Horizon by translating its PowerPC executable ahead of time into C++ with ShiftGlue, the author’s fork of ReXGlue, and compiling it on the player’s machine from their own disc. A renderer written for this game runs its GPU commands on Vulkan, and some translated library code, such as FMOD Ex DSP units, is replaced by independently written native code checked against the translated original. README presents it as a playable preview with rendering bugs and slowdowns.","description_zh":"使用作者对 ReXGlue 的分支 ShiftGlue，将 Xbox 360 版 Forza Horizon 的 PowerPC 可执行文件提前转换为 C++，并依玩家自有光盘在其电脑上编译，构建原生移植版。专为该游戏编写的渲染器在 Vulkan 上执行其 GPU 命令；部分转换后的库代码（如 FMOD Ex 的 DSP 单元）由独立编写、并与转换后原版对照检查的原生代码替代。README 称其为可游玩的预览版，仍有渲染错误和卡顿。","entry_url":"https://awesomerea.org/resources/pinyon-shift-forza-horizon-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/pinyon-shift-forza-horizon-recomp-case/","evidence_url":"https://github.com/arcanite24/pinyon-shift/blob/9331e453e9850d0fcc1c1606dee95db834a9d317/README.md","group":"cases","id":"pinyon-shift-forza-horizon-recomp-case","json_url":"https://awesomerea.org/resources/pinyon-shift-forza-horizon-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/pinyon-shift-forza-horizon-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pinyon-shift-forza-horizon-recomp-case/index.md","name":"Pinyon Shift: a ShiftGlue static recompilation of Forza Horizon for PC","name_zh":"Pinyon Shift：以 ShiftGlue 将 Forza Horizon 静态重编译到 PC","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the 2026-10-17 head, tagged v0.6.0; the repository was created on 2026-08-25. It holds the launcher, build tools, host code and configuration, and README says it contains no game, assets, generated translations or prebuilt executable; the v0.6.0 Windows launcher archive holds only the launcher and a source archive. This is static recompilation with native replacements, not recovered authored source.","Requires an ISO dumped from the user’s own USA retail disc (serial MS-2505, title ID 4D5309C9) or an unmodified folder extracted from it; setup checks its exact size and SHA-256 against config/supported-dumps.json and rejects unknown dumps. Owned DLC packages are verified before import, and the Rally and 1000 Club add-ons need the optional title update v4 build.","Players need Windows 10/11 x64, x86-64 Linux including SteamOS, or macOS 13+ on Apple silicon, with a Vulkan 1.3 GPU; NVIDIA is tested, while AMD and Intel are not yet qualified. The launcher installs pinned build tools and builds the game locally, which takes 20–60 minutes and about 30 GB the first time; the Windows source path needs Visual Studio 2022 C++ Build Tools 17.1+. An Android 13+ arm64 build is a developer alpha cross-compiled on the PC.","CI checks the repository boundary, runs release-tooling and host tests, builds the launchers and cross-builds the Android runtime, all without the game. Scripted render-test routes, golden frame replays and README’s performance figures, such as a 119 fps median at 1x on an RTX 4080, come from the project’s local runs.","BSD-3-Clause covers only independently authored material. docs/LEGAL.md says it grants no rights to Forza Horizon, Xbox software, ReXGlue or user-supplied content, and bars committing generated translations, hand translations of disassembly or decompiler output, and data copied from the executable. README states no affiliation with Microsoft, Xbox, Turn 10 Studios or Playground Games. CLAUDE.md and AGENTS.md agent instructions bar AI attribution in commits."],"requirements_zh":["审阅的是 2026-10-17 的最新提交，即 v0.6.0 标签；仓库创建于 2026-08-25。仓库包含启动器、构建工具、宿主代码和配置，README 称其中不含游戏、素材、生成的转换代码或预构建可执行文件；v0.6.0 的 Windows 启动器压缩包也只有启动器和一份源码压缩包。这是带原生替换的静态重编译，并非恢复原作者编写的源码。","需从使用者自己的美版零售光盘（序列号 MS-2505，标题 ID 4D5309C9）转储的 ISO，或从中解出且未经修改的文件夹；安装程序会依据 config/supported-dumps.json 核对其确切大小和 SHA-256，并拒绝未知转储。自有的 DLC 包须经验证后才能导入，Rally 与 1000 Club 扩展需要可选的第 4 版游戏更新构建。","玩家需使用 Windows 10／11 x64、包括 SteamOS 在内的 x86-64 Linux，或 Apple 芯片上的 macOS 13+，并配备支持 Vulkan 1.3 的 GPU；NVIDIA 已测试，AMD 与 Intel 尚未通过验证。启动器会安装固定版本的构建工具并在本机构建游戏，首次需 20–60 分钟和约 30 GB 空间；Windows 源码构建路径需 Visual Studio 2022 C++ Build Tools 17.1+。Android 13+ arm64 版为开发者预览，在 PC 上交叉编译。","CI 检查仓库边界，运行发布工具测试与宿主测试，构建各启动器并交叉构建 Android 运行时，全程不使用游戏。脚本化渲染测试路线、黄金帧回放以及 README 中的性能数据（如在 RTX 4080 上 1x 分辨率中位数 119 fps）均来自项目的本地运行。","BSD-3-Clause 仅适用于独立编写的内容。docs/LEGAL.md 称该许可不授予对 Forza Horizon、Xbox 软件、ReXGlue 或使用者自备内容的任何权利，并禁止提交生成的转换代码、依据反汇编或反编译器输出手工翻译的代码，以及从可执行文件复制的数据。README 声明与 Microsoft、Xbox、Turn 10 Studios 或 Playground Games 均无关联。CLAUDE.md 与 AGENTS.md 中的智能体说明禁止在提交中注明 AI 署名。"],"targets":["game"],"url":"https://github.com/arcanite24/pinyon-shift","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","additional_evidence_urls":["https://github.com/some100/th07/blob/4878bf0e42a9280ef44735eb0517d4fda7cb6e04/CONTRIBUTING.md","https://github.com/some100/th07/blob/4878bf0e42a9280ef44735eb0517d4fda7cb6e04/reccmp-project.yml","https://github.com/some100/th07/blob/4878bf0e42a9280ef44735eb0517d4fda7cb6e04/resources/progress.svg","https://github.com/some100/th07/blob/4878bf0e42a9280ef44735eb0517d4fda7cb6e04/resources/custom/progress.svg","https://github.com/some100/th07/blob/4878bf0e42a9280ef44735eb0517d4fda7cb6e04/scripts/download_deps.py","https://github.com/some100/th07/blob/4878bf0e42a9280ef44735eb0517d4fda7cb6e04/scripts/build.py","https://github.com/some100/th07/tree/4878bf0e42a9280ef44735eb0517d4fda7cb6e04/resources/csv","https://github.com/some100/th07/blob/4878bf0e42a9280ef44735eb0517d4fda7cb6e04/LICENSE"],"category":"reconstruction-cases","description_en":"Reconstructs C++ source for the Windows executable of Touhou 7: Perfect Cherry Blossom 1.00b and its custom.exe configuration tool, built with the original Visual Studio .NET 2002 and DirectX 8 toolchain and compared function by function with the user’s originals through reccmp. The committed progress badges report th07.exe fully implemented at 99.78% accuracy and custom.exe fully matched. The README says the game should be fully playable, but a matching build trips the game’s integrity check, and the cross-platform ports live on separate branches.","description_zh":"为 Touhou 7：东方妖妖梦 1.00b 版的 Windows 可执行文件及其 custom.exe 设置工具重建 C++ 源码，使用原版 Visual Studio .NET 2002 与 DirectX 8 工具链构建，并通过 reccmp 与使用者自备的原程序逐函数比较。仓库内的进度徽章报告 th07.exe 已全部实现、准确率 99.78%，custom.exe 已完全匹配。README 称游戏应可完整游玩，但匹配构建会触发游戏自身的完整性检查；跨平台移植位于其他分支。","entry_url":"https://awesomerea.org/resources/th07-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/th07-decomp-case/","evidence_url":"https://github.com/some100/th07/blob/4878bf0e42a9280ef44735eb0517d4fda7cb6e04/README.md","group":"cases","id":"th07-decomp-case","json_url":"https://awesomerea.org/resources/th07-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/th07-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/th07-decomp-case/index.md","name":"Touhou 7: reconstructing Perfect Cherry Blossom 1.00b source","name_zh":"Touhou 7：重建东方妖妖梦 1.00b 版源码","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["README calls this a work-in-progress matching decompilation of th07.exe 1.00b and custom.exe; the committed, mutable badges report 694 of 694 th07.exe functions implemented at 99.78% accuracy, and custom.exe at 100% for both. Behaviour is meant to match the original but may differ. The portable and reallyportable branches (desktop, mobile and web ports) are separate. README credits the GensokyoClub th06 and th08 decompilations for shared types, names and code.","Supply your own th07.exe 1.00b (README gives its MD5, reccmp-project.yml its SHA-256), copied to resources/, for icon extraction and as reccmp’s comparison base; custom.exe is needed only for the configuration tool, and --no-icon builds without either. No game executable or game data files are committed; resources/csv holds the function, global, string and float tables reccmp uses.","This branch builds only for 32-bit Windows with the MSVC 2002 toolchain, run under Wine on Linux, and needs uv and ninja. scripts/download_deps.py fetches Visual Studio .NET 2002 and the DirectX 8 SDK from archive.org and EstexNT’s var_order compiler patch from a gist; scripts/build.py generates and runs the ninja build.","Contributors diff with reccmp, which reports per-function accuracy against the original as an HTML page or for one address. Because th07.exe is not yet byte-identical, README says a matching build fails the game’s integrity check and crashes after 3,999 Supervisor cycles; --no-matching disables that check. The repository has no CI; badge figures are project-generated.","CC0 1.0 for the repository; the game and the downloaded Microsoft toolchain and SDK keep their own terms. resources/svgicon.png, embedded in the progress badge, is the game’s cover artwork marked © 2003 Team Shanghai Alice, which the CC0 dedication does not cover."],"requirements_zh":["README 称这是 th07.exe 1.00b 与 custom.exe 的进行中匹配反编译；仓库内可变的徽章报告 th07.exe 的 694 个函数已全部实现、准确率 99.78%，custom.exe 两项均为 100%。行为力求与原版一致，但可能存在差异。portable 和 reallyportable 分支（桌面、移动端和网页移植）是独立分支。README 致谢 GensokyoClub 的 th06 与 th08 反编译项目，借用了共享的类型、命名和代码。","需自备 th07.exe 1.00b（README 给出 MD5，reccmp-project.yml 给出 SHA-256）并复制到 resources/，用于提取图标并作为 reccmp 的比较基准；custom.exe 仅在构建设置工具时需要，使用 --no-icon 可在两者都缺失时构建。仓库未提交游戏可执行文件或游戏数据文件；resources/csv 存放 reccmp 使用的函数、全局变量、字符串和浮点数表。","此分支只能以 MSVC 2002 工具链构建 32 位 Windows 程序，Linux 上通过 Wine 运行，并需要 uv 和 ninja。scripts/download_deps.py 从 archive.org 获取 Visual Studio .NET 2002 和 DirectX 8 SDK，并从 gist 获取 EstexNT 的 var_order 编译器补丁；scripts/build.py 生成并运行 ninja 构建。","贡献者使用 reccmp 比较差异，它以 HTML 页面或针对单个地址给出相对原程序的逐函数准确率。由于 th07.exe 尚未逐字节一致，README 称匹配构建无法通过游戏的完整性检查，并会在 3,999 个 Supervisor 周期后崩溃；--no-matching 会禁用该检查。仓库没有 CI；徽章数字由项目生成。","仓库以 CC0 1.0 释出；游戏及下载的 Microsoft 工具链和 SDK 各有条款。嵌入进度徽章的 resources/svgicon.png 是游戏封面图，标有 © 2003 上海爱丽丝幻乐团，CC0 声明并不涵盖它。"],"targets":["game"],"url":"https://github.com/some100/th07","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","additional_evidence_urls":["https://github.com/elliotttate/DKC1Recomp/blob/3eb9a10c49cb210df2bd63addafe2a78cf9f4e22/THIRD_PARTY_NOTICES.md","https://github.com/elliotttate/DKC1Recomp/blob/3eb9a10c49cb210df2bd63addafe2a78cf9f4e22/AGENTS.md","https://github.com/elliotttate/DKC1Recomp/blob/3eb9a10c49cb210df2bd63addafe2a78cf9f4e22/docs/DIXIE_MOD.md","https://github.com/elliotttate/DKC1Recomp/blob/3eb9a10c49cb210df2bd63addafe2a78cf9f4e22/docs/WINDOWS_RELEASE.md","https://github.com/elliotttate/DKC1Recomp/blob/3eb9a10c49cb210df2bd63addafe2a78cf9f4e22/docs/BRINGUP.md","https://github.com/elliotttate/DKC1Recomp/blob/3eb9a10c49cb210df2bd63addafe2a78cf9f4e22/docs/COVERAGE.md","https://github.com/elliotttate/DKC1Recomp/blob/3eb9a10c49cb210df2bd63addafe2a78cf9f4e22/docs/RELEASE_0.0.14.md","https://github.com/elliotttate/DKC1Recomp/blob/3eb9a10c49cb210df2bd63addafe2a78cf9f4e22/scripts/generate_snesrecomp.py","https://github.com/elliotttate/DKC1Recomp/blob/3eb9a10c49cb210df2bd63addafe2a78cf9f4e22/.gitignore","https://github.com/elliotttate/DKC1Recomp/blob/3eb9a10c49cb210df2bd63addafe2a78cf9f4e22/.gitmodules","https://github.com/elliotttate/DKC1Recomp/blob/3eb9a10c49cb210df2bd63addafe2a78cf9f4e22/LICENSE","https://github.com/elliotttate/snesrecomp/blob/de94587464524ebac8dcd62e14618bf0d3953644/README.md","https://github.com/elliotttate/snesrecomp/blob/de94587464524ebac8dcd62e14618bf0d3953644/LICENSE","https://github.com/elliotttate/DKC1Recomp/releases/tag/v0.0.17"],"category":"reconstruction-cases","description_en":"Statically recompiles the North American v1.0 SNES release of Donkey Kong Country into native Windows, macOS and iOS applications with a pinned fork of snesrecomp, which translates 65816 code to C and links it against a modelled SNES hardware runtime. Function boundaries, entry flag states and jump-table targets are ingested from a byte-identical community disassembly instead of discovered heuristically, and the game code is generated locally from the user’s verified ROM. Optional widescreen, CRT filters, MSU-1 music and a Dixie Kong Country variant are host-side additions to what the README calls a playable bring-up.","description_zh":"借助固定版本的 snesrecomp 分支，将 SNES 版《大金刚国度》北美 v1.0 静态重编译为 Windows、macOS 与 iOS 原生程序；该框架把 65816 代码转译为 C，并链接到模拟 SNES 硬件的运行时。函数边界、入口标志状态与跳转表目标均取自一份逐字节一致的社区反汇编，而非靠启发式发现；游戏代码在本地由使用者经校验的 ROM 生成。可选的宽屏、CRT 滤镜、MSU-1 音乐和 Dixie Kong Country 变体都是宿主端附加功能，README 称这一移植处于可游玩的初步运行阶段。","entry_url":"https://awesomerea.org/resources/dkc1-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/dkc1-recomp-case/","evidence_url":"https://github.com/elliotttate/DKC1Recomp/blob/3eb9a10c49cb210df2bd63addafe2a78cf9f4e22/README.md","group":"cases","id":"dkc1-recomp-case","json_url":"https://awesomerea.org/resources/dkc1-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/dkc1-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dkc1-recomp-case/index.md","name":"DKC1Recomp: static recompilation of Donkey Kong Country","name_zh":"DKC1Recomp：《大金刚国度》的静态重编译","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the main commit tagged v0.0.14 (2026-09-15); releases v0.0.15 to v0.0.17 (through 2026-09-19) are tagged on commits that are not on main. README reports a playable bring-up with fully statically generated game code, a headless validation host and Windows, macOS and iOS hosts. Widescreen, on by default in the desktop host, fails closed to stock output or black margins where a scene is unproven; the generated widescreen coverage report lists 252 of 256 level entrances as never observed, and the Dixie variant is not validated over the full game.","Supply your own headerless Donkey Kong Country (USA) v1.0 ROM of 4 MiB, checked against the SHA-256 in the README; other images are rejected unless a single audited data-only edit is pinned by its hash. The optional Baby Kong mod also verifies the user’s own North American DKC3 ROM in memory. README states that no ROM bytes, extracted assets or generated game code are committed; the Dixie variant embeds the hack author’s public IPS patch, which the project records as a deliberate exception applied only to the verified clean ROM.","A source build initializes the snesrecomp submodule and runs scripts/generate_snesrecomp.py against the ROM, writing C into the git-ignored generated/ directory; recomp/*.cfg holds only names, addresses and structural metadata from the GPL-3 Yoshifanatic1 disassembly. Windows builds need Windows 10/11 x64, Visual Studio 2022 C++ tools, Python 3, Git, CMake, Ninja and an OpenGL 3.3 GPU; the arm64 macOS app targets macOS 26 with CMake, Ninja and SDL2, and the iOS sideload IPA needs iOS/iPadOS 16 or newer and re-signing for the recipient’s device.","Verification is deterministic tooling rather than a matching build: a headless host with input playback, replayable flight-recorder bundles, save-state continuity checks, route recipes and regression contracts, plus C and Python model tests, many of which need the private ROM. The reviewed tree has no CI workflow; the bring-up log reports nine private boot replays and inspection of the live window for the v0.0.10 Windows host.","Project host and tooling code is MIT; the pinned snesrecomp fork is under the PolyForm Noncommercial License 1.0.0, the cfg metadata keeps its GPL-3 provenance, the Windows package adds SDL 2.30.9 (zlib) and miniz 3.0.2 (MIT), and Nintendo and Rare keep their game rights. AGENTS.md sets operating rules for Codex and other coding agents working in the repository."],"requirements_zh":["审阅版本为 main 上标记 v0.0.14 的提交（2026-09-15）；v0.0.15 至 v0.0.17 版（截至 2026-09-19）标记在不属于 main 的提交上。README 称移植处于可游玩的初步运行阶段，游戏代码已全部静态生成，并提供无界面验证宿主及 Windows、macOS 和 iOS 宿主。桌面宿主默认开启宽屏，在未经验证的场景中会安全回退到原始画面或黑边；自动生成的宽屏覆盖报告显示 256 个关卡入口中有 252 个从未观测过，Dixie 变体也未经全流程验证。","需自备无文件头的《大金刚国度》美版 v1.0 ROM（4 MiB），并按 README 给出的 SHA-256 校验；其他镜像会被拒绝，除非以哈希固定某一个经审查、只改动数据的修改版。可选的 Baby Kong 模组还会在内存中校验使用者自有的北美版 DKC3 ROM。README 声明仓库未提交任何 ROM 字节、提取的素材或生成的游戏代码；Dixie 变体内嵌了改版作者公开发布的 IPS 补丁，项目将其记录为刻意的例外，且只应用于经校验的原版 ROM。","从源码构建需初始化 snesrecomp 子模块，并以 ROM 运行 scripts/generate_snesrecomp.py，C 代码写入被 git 忽略的 generated/ 目录；recomp/*.cfg 只含取自 GPL-3 Yoshifanatic1 反汇编的名称、地址与结构元数据。Windows 构建需 Windows 10／11 x64、Visual Studio 2022 C++ 工具、Python 3、Git、CMake、Ninja 和支持 OpenGL 3.3 的显卡；arm64 macOS 应用面向 macOS 26，需 CMake、Ninja 与 SDL2；iOS 侧载 IPA 需 iOS／iPadOS 16 或更新版本，并须为接收者的设备重新签名。","验证依靠确定性工具而非一致性构建：带输入回放的无界面宿主、可重放的飞行记录包、存档状态连续性检查、路线脚本与回归约定，以及 C 和 Python 模型测试，其中许多需要私有 ROM。所审阅的代码树没有 CI 工作流；初步运行日志报告，v0.0.10 版 Windows 宿主通过了九次私有启动回放，并检查了实际运行窗口。","项目的宿主与工具代码采用 MIT；固定版本的 snesrecomp 分支采用 PolyForm Noncommercial License 1.0.0，cfg 元数据保留其 GPL-3 来源，Windows 安装包另含 SDL 2.30.9（zlib）和 miniz 3.0.2（MIT），Nintendo 与 Rare 仍保有游戏权利。AGENTS.md 为在仓库中工作的 Codex 及其他编程智能体规定了操作规则。"],"targets":["game"],"url":"https://github.com/elliotttate/DKC1Recomp","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","additional_evidence_urls":["https://github.com/in0finite/SanAndreasUnity/blob/f685c437f48721afc0787f27d22c85d96e8684c7/LICENSE","https://github.com/in0finite/SanAndreasUnity/blob/f685c437f48721afc0787f27d22c85d96e8684c7/.gitmodules","https://github.com/in0finite/SanAndreasUnity/blob/f685c437f48721afc0787f27d22c85d96e8684c7/ProjectSettings/ProjectVersion.txt","https://github.com/in0finite/SanAndreasUnity/blob/f685c437f48721afc0787f27d22c85d96e8684c7/Assets/Resources/config.json","https://github.com/in0finite/SanAndreasUnity/tree/f685c437f48721afc0787f27d22c85d96e8684c7/Assets/Scripts/Importing","https://github.com/in0finite/SanAndreasUnity/blob/f685c437f48721afc0787f27d22c85d96e8684c7/Docs/TODO.md","https://github.com/in0finite/SanAndreasUnity/blob/f685c437f48721afc0787f27d22c85d96e8684c7/Docs/Performance.md","https://github.com/GTA-ASM/NavMeshes/blob/5d677c959befb9789e5610451a61eea52542f142/README.md","https://github.com/in0finite/SanAndreasUnity/releases/tag/v4.0","https://github.com/in0finite/SanAndreasUnity/wiki/Running-on-Android","https://github.com/in0finite/SanAndreasUnity/wiki/Generating-navigation-mesh"],"category":"reconstruction-cases","description_en":"Reimplements the Grand Theft Auto: San Andreas engine in Unity (C#), loading the archives, RenderWare models and textures, collision, animations, audio, text and item definitions from the user’s own PC installation. README says it will not be a complete reimplementation; it focuses on gameplay features, multiplayer and a framework for extending and modding the game through C# plugins. Development has stalled: the newest commit on any branch dates from 2022-09-30.","description_zh":"在 Unity（C#）中重新实现《侠盗猎车手：圣安地列斯》的引擎，从使用者自有的 PC 版安装中读取归档、RenderWare 模型与纹理、碰撞、动画、音频、文本和物品定义。README 表示这不会是完整的重新实现，重点在于游戏玩法、多人模式，以及可通过 C# 插件扩展和改装游戏的框架。项目开发已停滞：所有分支中最新的提交日期为 2022-09-30。","entry_url":"https://awesomerea.org/resources/san-andreas-unity-engine-case/","entry_url_zh":"https://awesomerea.org/zh/resources/san-andreas-unity-engine-case/","evidence_url":"https://github.com/in0finite/SanAndreasUnity/blob/f685c437f48721afc0787f27d22c85d96e8684c7/README.md","group":"cases","id":"san-andreas-unity-engine-case","json_url":"https://awesomerea.org/resources/san-andreas-unity-engine-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/san-andreas-unity-engine-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/san-andreas-unity-engine-case/index.md","name":"San Andreas Unity: a GTA San Andreas engine reimplementation in Unity","name_zh":"San Andreas Unity：在 Unity 中重新实现的《侠盗猎车手：圣安地列斯》引擎","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the head of the default dev branch, committed 2022-09-30; no branch has a later commit, GitHub records the last push on 2023-06-16 and the latest release is v4.0 (2022-05-24), so the project appears inactive. README says it will not be a complete reimplementation and focuses on gameplay, multiplayer and a moddable framework; Docs/TODO.md still lists work such as asynchronous geometry loading and unloading distant parts of the world.","Play requires a PC installation of GTA San Andreas that the user owns: on first start the game asks for its path, and config.json points the loaders at data files such as gta.dat, the vehicle, ped and default .ide files, handling.cfg, water.dat, carcols.dat and weapon.dat. The Android build needs those PC files copied to the device, about 5 GB according to the wiki, with the audio folder optional. The repository ships no game data; the NavMeshes submodule holds a precomputed navigation mesh, which the wiki says is generated from the imported game world because the original game has none.","Development uses Unity 2020.3.26 or newer (the project file names 2020.3.26f1), a recursive clone of the MirrorLite, UnityStandardAssets, NavMeshes, NetworkDiscoveryUnity and UGameCoreUtilities submodules and the Startup scene. README reports testing on Linux, Windows, macOS and Android with both Mono and IL2CPP backends; v4.0 provides Windows and Linux archives and an Android APK. Multiplayer runs as a dedicated server, host or client, and game modes load as C# DLL plugins.","There is no CI workflow or automated test suite for the importers or gameplay, and no comparison with the original executable is published. Evidence consists of README claims that multiplayer fully works, the v4.0 release notes, screenshots and videos; Docs/Performance.md records vertex and draw-call counts for one Las Venturas view.","LICENSE is MIT with a 2015 copyright line for James King; the bundled NVorbis and Newtonsoft.Json DLLs and the submodules are separate projects under their own terms, and Rockstar’s game files keep their own rights."],"requirements_zh":["审阅版本为默认 dev 分支的最新提交，提交于 2022-09-30；没有任何分支有更晚的提交，GitHub 记录的最后一次推送为 2023-06-16，最新发布版为 v4.0（2022-05-24），项目看来已不再活跃。README 表示这不会是完整的重新实现，重点在于游戏玩法、多人模式和可改装的框架；Docs/TODO.md 仍列有异步加载几何体、卸载远处世界区域等待办工作。","游玩需要使用者自有的《侠盗猎车手：圣安地列斯》PC 版安装：首次启动时游戏会询问其路径，config.json 让加载器读取 gta.dat、载具、行人与默认 .ide 文件、handling.cfg、water.dat、carcols.dat 和 weapon.dat 等数据文件。Android 版需将这些 PC 文件复制到设备上，wiki 称约 5 GB，audio 文件夹可省略。仓库不附带游戏数据；NavMeshes 子模块提供预先计算的导航网格，wiki 说明它由导入的游戏世界生成，因为原版游戏没有导航网格。","开发使用 Unity 2020.3.26 或更新版本（项目文件注明 2020.3.26f1），需递归克隆 MirrorLite、UnityStandardAssets、NavMeshes、NetworkDiscoveryUnity 和 UGameCoreUtilities 子模块，并打开 Startup 场景。README 称已在 Linux、Windows、macOS 和 Android 上测试，支持 Mono 与 IL2CPP 两种脚本后端；v4.0 提供 Windows 和 Linux 压缩包以及 Android APK。多人模式可作为专用服务器、主机或客户端运行，游戏模式以 C# DLL 插件形式加载。","仓库没有针对加载器或游戏玩法的 CI 工作流或自动化测试，也没有发布与原版可执行文件的对比。现有证据为 README 关于多人模式完全可用的说法、v4.0 发布说明、截图和视频；Docs/Performance.md 记录了拉斯云祖华一处视角的顶点数与绘制调用数。","LICENSE 为 MIT，版权行为 2015 年 James King；随附的 NVorbis 与 Newtonsoft.Json DLL 以及各子模块是独立项目，遵循各自条款，Rockstar 的游戏文件仍保留其权利。"],"targets":["game"],"url":"https://github.com/in0finite/SanAndreasUnity","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","additional_evidence_urls":["https://github.com/GRAnimated/MinecraftLCE/blob/959e1503b7b26d6821cfa98b3b05ef9089675195/docs/BUILDING.md","https://github.com/GRAnimated/MinecraftLCE/blob/959e1503b7b26d6821cfa98b3b05ef9089675195/docs/CONTRIBUTING.md","https://github.com/GRAnimated/MinecraftLCE/blob/959e1503b7b26d6821cfa98b3b05ef9089675195/data/mcswitch_functions.csv","https://github.com/GRAnimated/MinecraftLCE/blob/959e1503b7b26d6821cfa98b3b05ef9089675195/tools/setup.py","https://github.com/GRAnimated/MinecraftLCE/blob/959e1503b7b26d6821cfa98b3b05ef9089675195/tools/config.toml","https://github.com/GRAnimated/MinecraftLCE/blob/959e1503b7b26d6821cfa98b3b05ef9089675195/.gitmodules","https://github.com/GRAnimated/MinecraftLCE/blob/959e1503b7b26d6821cfa98b3b05ef9089675195/.github/workflows/test-compile.yml","https://github.com/GRAnimated/MinecraftLCE/blob/959e1503b7b26d6821cfa98b3b05ef9089675195/.github/workflows/update-progress.yml"],"category":"reconstruction-cases","description_en":"Decompiles Minecraft: Nintendo Switch Edition v1.0.17, a Legacy Console Edition release, into C++ that is compared function by function with the original executable using a patched Clang 4.0.1 and the open-ead Switch decompilation tools. The README explains the choice of the Switch build for its matchable Clang toolchain and type information, with names ported from the symbol-bearing Wii U Edition. At the reviewed commit the function list marks about 11% of functions decompiled, most of them matching; the result cannot run the game.","description_zh":"将 Legacy Console Edition 系列中的 Minecraft: Nintendo Switch Edition v1.0.17 反编译为 C++，借助打过补丁的 Clang 4.0.1 和 open-ead 的 Switch 反编译工具，与原可执行文件逐函数比较。README 解释了选用 Switch 版的原因：其 Clang 工具链可以匹配且带有类型信息，函数名则从带符号的 Wii U Edition 移植而来。所审提交时函数列表标记约 11% 的函数已反编译，其中大多已匹配；产物无法运行游戏。","entry_url":"https://awesomerea.org/resources/minecraft-lce-switch-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/minecraft-lce-switch-decomp-case/","evidence_url":"https://github.com/GRAnimated/MinecraftLCE/blob/959e1503b7b26d6821cfa98b3b05ef9089675195/README.md","group":"cases","id":"minecraft-lce-switch-decomp-case","json_url":"https://awesomerea.org/resources/minecraft-lce-switch-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/minecraft-lce-switch-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/minecraft-lce-switch-decomp-case/index.md","name":"MinecraftLCE: an early-stage Minecraft: Nintendo Switch Edition decompilation","name_zh":"MinecraftLCE：处于早期阶段的 Minecraft: Nintendo Switch Edition 反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["README describes a work-in-progress decompilation of Minecraft: Nintendo Switch Edition v1.0.17 that cannot be used to play the game. At the reviewed commit data/mcswitch_functions.csv lists 57,972 functions: 6,279 matching, 224 non-matching and 51,469 not yet decompiled, the 11.217% that a workflow writes into the GitHub description. Matched functions are checked individually; there is no whole-executable rebuild.","Supply the main NSO executable from your own Minecraft: Nintendo Switch Edition v1.0.17 update; the Wii U Edition’s Minecraft.Client.rpx (Patch 35, v560) is recommended only for porting symbols. README says these executables will never be provided in the repository and no game assets are included.","Documented for Linux or WSL (with macOS also intended): Python 3.6+, Ninja, CMake 3.13+, ccache, llvm-objdump, libncurses5, a Rust toolchain and the listed Python modules. tools/setup.py converts the executable, downloads Clang 4.0.1 from the LLVM releases and applies the committed libc++ patches; submodules supply open-ead’s nx-decomp-tools, nnheaders and musl and the stb image library, and lib/ vendors libpng and zlib.","tools/check compares compiled functions with the original and tools/common/progress.py summarises the function list. CI lints, compiles the project without the game and publishes progress counted from the committed function list, so matching status is project-reported.","No license file is present and GitHub detects none; Minecraft belongs to Microsoft and Mojang, and vendored libraries keep their own licenses. README says Microsoft-licensed Java Edition mappings cannot be used and notes that projects whose research was not clean-room have been taken down."],"requirements_zh":["README 称这是 Minecraft: Nintendo Switch Edition v1.0.17 的进行中反编译，无法用来游玩游戏。所审提交时 data/mcswitch_functions.csv 列出 57,972 个函数：6,279 个已匹配，224 个未匹配，51,469 个尚未反编译，即工作流写入 GitHub 简介的 11.217%。已匹配的函数逐个核对，不存在整个可执行文件的重建。","需从自己的 Minecraft: Nintendo Switch Edition v1.0.17 更新中自备 main NSO 可执行文件；Wii U Edition 的 Minecraft.Client.rpx（Patch 35，v560）仅推荐用于移植符号。README 称这些可执行文件永远不会放入仓库，也不包含游戏素材。","文档以 Linux 或 WSL 为准（也面向 macOS）：需要 Python 3.6 及以上、Ninja、CMake 3.13 及以上、ccache、llvm-objdump、libncurses5、Rust 工具链和所列 Python 模块。tools/setup.py 会转换可执行文件，从 LLVM 发布页下载 Clang 4.0.1 并应用仓库中的 libc++ 补丁；子模块提供 open-ead 的 nx-decomp-tools、nnheaders、musl 以及 stb 图像库，lib/ 内置 libpng 和 zlib。","tools/check 将编译出的函数与原程序比较，tools/common/progress.py 汇总函数列表。CI 进行代码检查、在没有游戏文件的情况下编译项目，并按仓库中的函数列表统计并发布进度，因此匹配状态为项目报告。","仓库没有许可证文件，GitHub 也未检测到许可证；Minecraft 归 Microsoft 和 Mojang 所有，内置的库各有许可证。README 称不能使用 Microsoft 授权的 Java Edition 官方映射，并提到研究过程不属于净室方式的项目曾被下架。"],"targets":["game"],"url":"https://github.com/GRAnimated/MinecraftLCE","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-28","additional_evidence_urls":["https://github.com/Xeeynamo/ff7-decomp/blob/37f35a536ba80f0575e79e243a273b28702d494d/CONTRIBUTING.md","https://github.com/Xeeynamo/ff7-decomp/blob/37f35a536ba80f0575e79e243a273b28702d494d/Makefile","https://github.com/Xeeynamo/ff7-decomp/blob/37f35a536ba80f0575e79e243a273b28702d494d/config/us.yaml","https://github.com/Xeeynamo/ff7-decomp/blob/37f35a536ba80f0575e79e243a273b28702d494d/tools/ninja/gen.py","https://github.com/Xeeynamo/ff7-decomp/blob/37f35a536ba80f0575e79e243a273b28702d494d/tools/builder/builder/build.go","https://github.com/Xeeynamo/ff7-decomp/blob/37f35a536ba80f0575e79e243a273b28702d494d/.github/workflows/build.yaml","https://github.com/Xeeynamo/ff7-decomp/blob/37f35a536ba80f0575e79e243a273b28702d494d/CMakeLists.txt","https://github.com/Xeeynamo/ff7-decomp/blob/37f35a536ba80f0575e79e243a273b28702d494d/.gitmodules","https://github.com/Xeeynamo/ff7-decomp/blob/37f35a536ba80f0575e79e243a273b28702d494d/bin/cc1-psx-26.gz.sha256","https://github.com/Xeeynamo/ff7-decomp/blob/37f35a536ba80f0575e79e243a273b28702d494d/Dockerfile","https://github.com/Xeeynamo/ff7-decomp/blob/37f35a536ba80f0575e79e243a273b28702d494d/LICENSE"],"category":"reconstruction-cases","description_en":"Reconstructs C source for the US PlayStation release of Final Fantasy VII, aiming for code that compiles back to the original main executable and its game overlays. The build splits the user’s disc files with splat, compiles with period cc1-psx compilers and checks every rebuilt file against its SHA-1. A native build against the PsyZ PlayStation-library replacement is compiled in CI but is not documented as a playable port.","description_zh":"为 Final Fantasy VII 美版 PlayStation 发行版重建 C 源码，目标是让代码重新编译出原版主可执行文件及各游戏覆盖段（overlay）。构建流程用 splat 拆分使用者自备的光盘文件，以当年的 cc1-psx 编译器编译，并用 SHA-1 校验每个重建文件。基于 PsyZ（PlayStation 库替代实现）的原生构建会在 CI 中编译，但未作为可游玩的移植版加以说明。","entry_url":"https://awesomerea.org/resources/ff7-ps1-matching-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/ff7-ps1-matching-decomp-case/","evidence_url":"https://github.com/Xeeynamo/ff7-decomp/blob/37f35a536ba80f0575e79e243a273b28702d494d/README.md","group":"cases","id":"ff7-ps1-matching-decomp-case","json_url":"https://awesomerea.org/resources/ff7-ps1-matching-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/ff7-ps1-matching-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ff7-ps1-matching-decomp-case/index.md","name":"Final Fantasy VII: a matching PlayStation decompilation","name_zh":"Final Fantasy VII：PlayStation 版一致性反编译","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["The project describes itself as a matching decompilation of the PS1 game; config/us.yaml defines the single us version, covering SCUS_941.63 and battle, field, menu, world, minigame, magic and other overlays with 29 SHA-1 entries. Source tables such as the chocobo minigame’s arccosine table are data taken from the game, as is usual for such projects. README states no completion figure; CI uploads a progress report as a build artifact.","Supply disc 1 of Final Fantasy VII (USA) as BIN/CUE under disks/; README lists the USA Interactive Sampler CD as optional, though the reviewed config builds only us. CONTRIBUTING says the repository includes no original game data and is not a playable or standalone version. CI fetches its disc images from a private dependency repository through a secret token.","README documents Debian/Ubuntu and Arch Linux with Go, Python 3 (a venv with splat64, spimdisasm and others), ninja, 7zip, bchunk and mipsel-linux-gnu binutils and GCC; CI notes that Ubuntu 24.04’s binutils 2.42 linker does not match the game. Make downloads the cc1-psx-26 and cc1-psx-272 compiler builds from the project’s init release and checks them against committed SHA-256 files; maspsx, m2c, asm-differ and PsyZ come in as submodules, and a Dockerfile is provided.","make build ends with a ninja rule running sha1sum -c over the expected hashes of every overlay. CI on the upstream repository checks formatting, runs that build, lints for overlapping symbols and compiles the PsyZ build. These checks compare file identity for the US release.","LICENSE is AGPL-3.0; the game discs, extracted data and downloaded compilers keep separate rights. README says the decompiled code is written by humans and rejects LLM-accelerated decompilation, while allowing LLMs for tooling, permuting hard functions or hunting runtime bugs; CONTRIBUTING forbids autonomously generated pull requests and commit messages."],"requirements_zh":["项目自述为该 PS1 游戏的一致性反编译；config/us.yaml 只定义了 us 一个版本，涵盖 SCUS_941.63 以及战斗、野外、菜单、世界地图、小游戏、魔法及其他覆盖段，共 29 条 SHA-1 记录。源码中的数据表（例如陆行鸟小游戏的反余弦表）取自游戏，这在此类项目中很常见。README 未给出完成度数字；CI 会把进度报告上传为构建产物。","需将 Final Fantasy VII（USA）第 1 张光盘以 BIN/CUE 形式放在 disks/ 下；README 将美版 Interactive Sampler CD 列为可选，但所审配置只构建 us 版本。CONTRIBUTING 说明仓库不含原版游戏数据，也不是可游玩或独立运行的版本。CI 通过机密令牌从一个私有依赖仓库获取光盘镜像。","README 介绍了 Debian/Ubuntu 与 Arch Linux 下的环境：Go、Python 3（含 splat64、spimdisasm 等的虚拟环境）、ninja、7zip、bchunk 以及 mipsel-linux-gnu binutils 和 GCC；CI 注释指出 Ubuntu 24.04 自带的 binutils 2.42 链接器与游戏不匹配。make 会从项目的 init 发布版下载 cc1-psx-26 与 cc1-psx-272 编译器构建，并以仓库中的 SHA-256 文件校验；maspsx、m2c、asm-differ 与 PsyZ 以子模块引入，另提供 Dockerfile。","make build 的最后一步是 ninja 规则，以 sha1sum -c 校验每个覆盖段的预期哈希。上游仓库的 CI 检查代码格式、运行该构建、检查符号重叠，并编译 PsyZ 构建。这些检查比较的是美版文件是否一致。","LICENSE 为 AGPL-3.0；游戏光盘、提取出的数据和下载的编译器另有权利归属。README 表示反编译代码由人编写，拒绝借助 LLM 加速反编译，但允许将 LLM 用于工具开发、对难点函数做排列尝试或排查运行时错误；CONTRIBUTING 禁止自主生成的拉取请求和提交信息。"],"targets":["game"],"url":"https://github.com/Xeeynamo/ff7-decomp","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-29","additional_evidence_urls":["https://github.com/mstan/MegaManXSNESRecomp/blob/adc1fea7baf90614a4272a90336cfcea563c504c/symbols/README.md","https://github.com/mstan/MegaManXSNESRecomp/blob/adc1fea7baf90614a4272a90336cfcea563c504c/docs/mod-source-roms.md","https://github.com/mstan/MegaManXSNESRecomp/blob/adc1fea7baf90614a4272a90336cfcea563c504c/docs/validation/coverage-2026-09-28.md","https://github.com/mstan/MegaManXSNESRecomp/blob/adc1fea7baf90614a4272a90336cfcea563c504c/assets/saber-zero/CREDITS.md","https://github.com/mstan/MegaManXSNESRecomp/blob/adc1fea7baf90614a4272a90336cfcea563c504c/.github/workflows/build.yml","https://github.com/mstan/MegaManXSNESRecomp/blob/adc1fea7baf90614a4272a90336cfcea563c504c/.gitmodules","https://github.com/mstan/MegaManXSNESRecomp/blob/adc1fea7baf90614a4272a90336cfcea563c504c/.gitignore","https://github.com/mstan/MegaManXSNESRecomp/blob/adc1fea7baf90614a4272a90336cfcea563c504c/LICENSE","https://github.com/RetroPortingToolKit/snesrecomp/blob/0f5708d108bf4acfb21dd7ff75a0cdb2376eb238/README.md","https://github.com/RetroPortingToolKit/snesrecomp/blob/0f5708d108bf4acfb21dd7ff75a0cdb2376eb238/LICENSE","https://github.com/mstan/MegaManXSNESRecomp/releases/tag/v2.2.9-alpha"],"category":"reconstruction-cases","description_en":"Statically translates the 65816 CPU code of the SNES Mega Man X (USA Rev 1) to C with the snesrecomp framework; the PPU, audio, DMA and other hardware run in the framework’s runtime, and a LakeSnes-derived interpreter executes whatever the static pass cannot prove. The C is generated locally from the user’s ROM, with function names imported from community DiztinGUIsh annotations. Playable Zero, co-op and rollback netplay, X2/X3 boss weapons and adaptive widescreen are layered on top, using assets extracted locally from the user’s own sequel ROMs.","description_zh":"借助 snesrecomp 框架，将 SNES 版《洛克人 X》（美版 Rev 1）的 65816 CPU 代码静态转译为 C；PPU、音频、DMA 等硬件由框架运行时处理，静态分析无法证明的部分则交给源自 LakeSnes 的解释器执行。C 代码在本地由使用者的 ROM 生成，函数名取自社区的 DiztinGUIsh 注解。项目在此基础上加入可操作的 Zero、合作与回滚联机、X2／X3 的头目武器以及自适应宽屏，所用素材在本地从使用者自有的续作 ROM 中提取。","entry_url":"https://awesomerea.org/resources/megaman-x-snes-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/megaman-x-snes-recomp-case/","evidence_url":"https://github.com/mstan/MegaManXSNESRecomp/blob/adc1fea7baf90614a4272a90336cfcea563c504c/README.md","group":"cases","id":"megaman-x-snes-recomp-case","json_url":"https://awesomerea.org/resources/megaman-x-snes-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/megaman-x-snes-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/megaman-x-snes-recomp-case/index.md","name":"Mega Man X Recompiled: a snesrecomp static recompilation","name_zh":"Mega Man X Recompiled：基于 snesrecomp 的静态重编译","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the main commit of release v2.2.9-alpha (2026-10-18), which offers a Windows ZIP and a Linux AppImage. The snesrecomp README lists the game as fully playable, and this README says the adaptive widescreen renderer was playtested through the ending on Windows. Execution is interpreter-first: compiled bodies replace only code the analysis proves, the rest stays interpreted, and Rockman X (Japan v1.1) is a separate variant that keeps its original view.","Supply your own Mega Man X (USA) Rev 1 ROM as .sfc or .smc, headered or not. Zero, co-op and the X3 weapons also need the user’s Mega Man X3 USA ROM, and the X2 weapons the Mega Man X2 USA ROM; their assets are extracted on the user’s machine. README states that ROMs, extracted assets and the generated src/gen C are neither committed nor in the downloads; the Saber Zero sprites and sounds from the Zashiko Mod are included with permission for non-commercial use.","Source builds clone the snesrecomp, recomp-ui and dizProjects submodules, stage the ROM and run tools/regen.sh, which emits per-bank C from recomp/bank*.cfg. CMake with Ninja and SDL3, or SDL2 as a fallback, is the maintained build: Windows 10+ through MSYS2 mingw64 with Python 3.9+ and rustup, Linux with gcc or clang, and macOS on Apple Silicon or Intel.","CI compiles ROM-free setup hosts and runs the ROM-free CTest regressions; ROM-backed state tests and a replay suite that stops at the first WRAM, co-op, camera or VRAM mismatch need the user’s ROMs. A dated coverage checkpoint reports two 12,000-frame routes matching the control build’s CPU and WRAM traces and final snapshots, without comparing audio, and the v2.2.9 release notes report Windows and Linux checks of all 28 Boss Rush pairs.","The project and the pinned snesrecomp framework are under the PolyForm Noncommercial License 1.0.0; the interpreter is LakeSnes-derived (MIT), vendored dependencies keep their own licenses, and Capcom keeps its game rights. README presents the project as part of R.A.I.D. (Retro AI Development), a Discord community for AI-assisted retro reverse engineering."],"requirements_zh":["审阅版本为 main 上发布版 v2.2.9-alpha（2026-10-18）对应的提交，该版提供 Windows ZIP 与 Linux AppImage。snesrecomp 的 README 将本作列为可完整游玩，本项目 README 称自适应宽屏渲染器已在 Windows 上试玩至结局。执行以解释器为先：编译后的函数体只替换分析能够证明的代码，其余部分仍由解释器执行；Rockman X（日版 v1.1）是单独的变体，保留原始视野。","需自备《洛克人 X》美版 Rev 1 ROM（.sfc 或 .smc，有无文件头均可）。Zero、合作模式与 X3 武器还需使用者自有的《洛克人 X3》美版 ROM，X2 武器则需《洛克人 X2》美版 ROM；所需素材在使用者的机器上提取。README 声明 ROM、提取的素材及生成的 src/gen C 代码既未提交，也不在下载包中；Saber Zero 的精灵与音效来自 Zashiko Mod，经许可收录，仅限非商业用途。","从源码构建需克隆 snesrecomp、recomp-ui 与 dizProjects 子模块，放入 ROM 后运行 tools/regen.sh，由 recomp/bank*.cfg 按存储体生成 C 代码。官方维护的构建方式是 CMake 配合 Ninja 与 SDL3（SDL2 作为后备）：Windows 10 及以上通过 MSYS2 mingw64，并需 Python 3.9+ 与 rustup；Linux 使用 gcc 或 clang；macOS 支持 Apple Silicon 与 Intel。","CI 编译不含 ROM 衍生内容的设置宿主，并运行无需 ROM 的 CTest 回归测试；依赖 ROM 的状态测试，以及在首个 WRAM、合作、镜头或 VRAM 不一致处停止的回放测试，都需要使用者的 ROM。一份注明日期的覆盖率检查点报告称，两条 12,000 帧路线与对照构建的 CPU、WRAM 轨迹及最终快照一致，但未比较音频；v2.2.9 发布说明报告在 Windows 和 Linux 上检查了 Boss Rush 的全部 28 组头目组合。","项目及固定版本的 snesrecomp 框架均采用 PolyForm Noncommercial License 1.0.0；解释器源自 LakeSnes（MIT），随附依赖保留各自许可，Capcom 仍保有游戏权利。README 称项目属于 R.A.I.D.（Retro AI Development），这是一个面向 AI 辅助复古逆向工程的 Discord 社区。"],"targets":["game"],"url":"https://github.com/mstan/MegaManXSNESRecomp","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-29","additional_evidence_urls":["https://github.com/OpenSC4-org/OpenSC4/blob/fdc90c33e6e012b8c825f20ee10c51f55796df39/BootScreen.gd","https://github.com/OpenSC4-org/OpenSC4/blob/fdc90c33e6e012b8c825f20ee10c51f55796df39/Region.gd","https://github.com/OpenSC4-org/OpenSC4/blob/fdc90c33e6e012b8c825f20ee10c51f55796df39/CityView/CityScene/City.gd","https://github.com/OpenSC4-org/OpenSC4/blob/fdc90c33e6e012b8c825f20ee10c51f55796df39/DATExplorer/SubfilePreview.gd","https://github.com/OpenSC4-org/OpenSC4/tree/fdc90c33e6e012b8c825f20ee10c51f55796df39/addons/dbpf","https://github.com/OpenSC4-org/OpenSC4/blob/fdc90c33e6e012b8c825f20ee10c51f55796df39/project.godot","https://github.com/OpenSC4-org/OpenSC4/blob/fdc90c33e6e012b8c825f20ee10c51f55796df39/.gitignore","https://github.com/OpenSC4-org/OpenSC4/blob/fdc90c33e6e012b8c825f20ee10c51f55796df39/Core.gd","https://github.com/OpenSC4-org/OpenSC4/blob/fdc90c33e6e012b8c825f20ee10c51f55796df39/utils/logger.gd"],"category":"reconstruction-cases","description_en":"Reimplements SimCity 4 as a Godot project in GDScript that reads DBPF archives, region folders and city saves from the user’s own SimCity 4 installation. The code draws a region view with city thumbnails and interface elements built from the game’s UI definitions, opens a saved city’s terrain and water in 3D, and includes a DAT explorer for previewing archive subfiles. It is an early, inactive engine case without simulation gameplay, not a playable replacement.","description_zh":"以 Godot 项目和 GDScript 重新实现 SimCity 4，从使用者自有的 SimCity 4 安装目录读取 DBPF 归档、区域文件夹和城市存档。代码可绘制带城市缩略图的区域视图，并依据游戏的 UI 定义生成界面元素，可在 3D 中打开已存城市的地形与水面，还附带用于预览归档子文件的 DAT 浏览器。这是一个早期且已停滞的引擎案例，尚无模拟玩法，并非可替代原版的实现。","entry_url":"https://awesomerea.org/resources/opensc4-simcity-4-reimplementation-case/","entry_url_zh":"https://awesomerea.org/zh/resources/opensc4-simcity-4-reimplementation-case/","evidence_url":"https://github.com/OpenSC4-org/OpenSC4/blob/fdc90c33e6e012b8c825f20ee10c51f55796df39/README.md","group":"cases","id":"opensc4-simcity-4-reimplementation-case","json_url":"https://awesomerea.org/resources/opensc4-simcity-4-reimplementation-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/opensc4-simcity-4-reimplementation-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/opensc4-simcity-4-reimplementation-case/index.md","name":"OpenSC4: an early open-source reimplementation of SimCity 4","name_zh":"OpenSC4：SimCity 4 的早期开源重新实现","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirements":["The reviewed main snapshot (2024-03-29) only added a README and a Discord invite; the last code change dates from 2023-02-17, and the repository has no releases or tags. README describes an open source “clone” meant to use modern hardware and run on other platforms. The code covers DBPF parsing, a region view for the hard-coded Timbuktu region, a city terrain view and the DAT explorer, with no zoning, budget or growth simulation.","Needs the user’s own SimCity 4 installation: the boot screen asks for its folder and checks for SimCity 4.ini, Sound.dat, Intro.dat, SimCity_1.dat to SimCity_5.dat and EP1.dat, then reads .sc4 city saves, config.bmp and region music from that folder. .gitignore excludes SimCity 4 data, although the tree contains a “Graphics Rules.sgr.backup” text file whose header says SC4Launcher generated it.","Runs from source in the Godot editor: README’s setup is to install Godot, import the cloned project and run it, without naming a version. project.godot uses config_version 4 and the scripts call Godot 3 APIs such as yield and Directory; no export presets or packaged builds are provided.","The repository has no tests or CI workflows and publishes no comparison with SimCity 4’s behaviour or output.","GitHub detects no license and the tree has no license file; nine GDScript files carry AGPL-3.0-or-later headers for “The OpenSC4 contributors” (2023), and utils/logger.gd is MIT-licensed code from KOBUGE Games’ godot-logger. SimCity 4 and its data keep their owners’ rights."],"requirements_zh":["所审阅的 main 快照（2024-03-29）只新增了 README 和 Discord 邀请；最后一次代码改动在 2023-02-17，仓库没有发行版或标签。README 称项目是一个开源“克隆”，旨在利用现代硬件并在其他平台上运行。代码涵盖 DBPF 解析、写死为 Timbuktu 区域的区域视图、城市地形视图和 DAT 浏览器，没有分区、预算或发展模拟。","需要使用者自有的 SimCity 4 安装：启动画面会询问其目录，并检查 SimCity 4.ini、Sound.dat、Intro.dat、SimCity_1.dat 至 SimCity_5.dat 以及 EP1.dat，随后从该目录读取 .sc4 城市存档、config.bmp 和区域音乐。.gitignore 排除了 SimCity 4 数据，但仓库中仍有一个“Graphics Rules.sgr.backup”文本文件，其文件头称由 SC4Launcher 生成。","在 Godot 编辑器中从源码运行：README 的步骤是安装 Godot、导入克隆的项目并运行，未指明版本。project.godot 使用 config_version 4，脚本调用 yield、Directory 等 Godot 3 API；仓库不提供导出预设或打包版本。","仓库没有测试或 CI 工作流，也未公布与 SimCity 4 行为或输出的对比。","GitHub 未检测到许可证，仓库也没有许可证文件；九个 GDScript 文件带有署名“The OpenSC4 contributors”（2023）的 AGPL-3.0-or-later 文件头，utils/logger.gd 则是 KOBUGE Games 的 godot-logger 中采用 MIT 许可的代码。SimCity 4 及其数据的权利仍归其所有者。"],"targets":["game"],"url":"https://github.com/OpenSC4-org/OpenSC4","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-29","additional_evidence_urls":["https://github.com/relative/synchrony/blob/710e9f6c21ceea0cddf178eb863ef678f5d9d6ee/package.json","https://github.com/relative/synchrony/blob/710e9f6c21ceea0cddf178eb863ef678f5d9d6ee/src/cli.js","https://github.com/relative/synchrony/blob/710e9f6c21ceea0cddf178eb863ef678f5d9d6ee/src/deobfuscator.ts","https://github.com/relative/synchrony/blob/710e9f6c21ceea0cddf178eb863ef678f5d9d6ee/src/context.ts","https://github.com/relative/synchrony/blob/710e9f6c21ceea0cddf178eb863ef678f5d9d6ee/src/transformers/stringdecoder.ts","https://github.com/relative/synchrony/blob/710e9f6c21ceea0cddf178eb863ef678f5d9d6ee/LICENSE.md","https://github.com/relative/synchrony/releases/tag/2.4.6"],"category":"web-analysis","description_en":"JavaScript cleaner and deobfuscator aimed mainly at output from javascript-obfuscator (obfuscator.io). It parses a script with acorn and runs a fixed pipeline of AST transformers that fold expressions, clean member accesses, remove dead branches, split sequence expressions, undo switch-based control-flow flattening and decode string arrays, re-implementing their base64 and RC4 decoders in TypeScript rather than executing the input. It ships on npm as deobfuscator with a synchrony CLI and a library API, and optional renaming replaces identifiers with generated word names rather than recovering the originals.","description_zh":"主要面向 javascript-obfuscator（obfuscator.io）输出的 JavaScript 清理与反混淆工具。它用 acorn 解析脚本，再运行一组固定的 AST 转换器：折叠表达式、整理成员访问、删除死分支、拆分逗号表达式、还原基于 switch 的控制流平坦化，并解码字符串数组；其中 base64 和 RC4 解码器以 TypeScript 重新实现，而不是执行输入代码。它以 deobfuscator 之名发布在 npm 上，提供 synchrony 命令行工具和库 API；可选的重命名会把标识符换成生成的单词名，并不能恢复原名。","entry_url":"https://awesomerea.org/resources/synchrony/","entry_url_zh":"https://awesomerea.org/zh/resources/synchrony/","evidence_url":"https://github.com/relative/synchrony/blob/710e9f6c21ceea0cddf178eb863ef678f5d9d6ee/README.md","group":"tools","id":"synchrony","json_url":"https://awesomerea.org/resources/synchrony/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/synchrony/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/synchrony/index.md","name":"synchrony","name_zh":"synchrony JavaScript 反混淆工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 2.4.6, published to GitHub and to npm as deobfuscator on 2026-07-07, the same day as the reviewed master commit; the previous release, 2.4.5, dates from 2023-11-09. The README also points to a hosted web version at deobfuscate.relative.im.","Install with npm, yarn or pnpm, or from the Git repository; package.json declares no Node.js version. The CLI reads one file, writes <name>.cleaned.<ext> unless --output is given, and offers --rename, --loose parsing, --ecma-version and --sourceType. A --config file is loaded with Node's require, so it runs as code, and a custom transformer list replaces the default pipeline; two jsconfuser transformers are available only that way and are not documented in the README.","The README warns that output from old javascript-obfuscator versions will likely not deobfuscate correctly and that there is no user configuration for the automatic string decoder. The repository has no test suite, and its latest commit removed the GitHub CI configuration.","GPL-3.0-only according to package.json and LICENSE.md."],"requirements_zh":["审阅时最新版本为 2.4.6，于 2026-07-07 发布到 GitHub 并以 deobfuscator 之名发布到 npm，与所审阅的 master 提交同日；上一版本 2.4.5 发布于 2023-11-09。README 还指向 deobfuscate.relative.im 上的托管网页版。","可用 npm、yarn 或 pnpm 安装，也可直接从 Git 仓库安装；package.json 未声明 Node.js 版本。命令行工具读取单个文件，未指定 --output 时写出 <文件名>.cleaned.<扩展名>，并提供 --rename、--loose 宽松解析、--ecma-version 和 --sourceType 选项。--config 配置文件通过 Node 的 require 加载，因此会作为代码执行；自定义转换器列表会取代默认流程，两个 jsconfuser 转换器只能以这种方式启用，README 也未说明它们。","README 提醒，旧版 javascript-obfuscator 生成的代码很可能无法正确反混淆，自动字符串解码器也没有可供用户调整的配置。仓库没有测试套件，最新一次提交删除了 GitHub CI 配置。","package.json 和 LICENSE.md 声明 GPL-3.0-only。"],"targets":["website"],"url":"https://github.com/relative/synchrony","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-29","additional_evidence_urls":["https://github.com/AliveTeam/alive_reversing/blob/3be8967b71b29e6e61009d291bd64dce39abf7ac/CMakeLists.txt","https://github.com/AliveTeam/alive_reversing/blob/3be8967b71b29e6e61009d291bd64dce39abf7ac/.gitmodules","https://github.com/AliveTeam/alive_reversing/blob/3be8967b71b29e6e61009d291bd64dce39abf7ac/.github/workflows/ci.yml","https://github.com/AliveTeam/alive_reversing/blob/3be8967b71b29e6e61009d291bd64dce39abf7ac/azure-pipelines.yml","https://github.com/AliveTeam/alive_reversing/blob/3be8967b71b29e6e61009d291bd64dce39abf7ac/appveyor.yml","https://github.com/AliveTeam/alive_reversing/blob/3be8967b71b29e6e61009d291bd64dce39abf7ac/Source/AliveDllAE/dllmain.cpp","https://github.com/AliveTeam/alive_reversing/blob/3be8967b71b29e6e61009d291bd64dce39abf7ac/Source/AliveLibAE/Resources.hpp","https://github.com/AliveTeam/alive_reversing/blob/3be8967b71b29e6e61009d291bd64dce39abf7ac/Source/AliveLibCommon/BaseGameAutoPlayer.cpp","https://github.com/AliveTeam/alive_reversing/blob/3be8967b71b29e6e61009d291bd64dce39abf7ac/Source/Tools/relive_api_integration_test/relive_api_integration_test.cpp","https://github.com/AliveTeam/alive_reversing/blob/3be8967b71b29e6e61009d291bd64dce39abf7ac/assets/relive-ae","https://github.com/AliveTeam/alive_reversing/blob/3be8967b71b29e6e61009d291bd64dce39abf7ac/3rdParty/DxOld/d3dtypes.h","https://github.com/AliveTeam/aliveteam.github.io/blob/f1ff2177147135677f9c060b02135f7d5f67ef8e/faq.md","https://github.com/AliveTeam/aliveteam.github.io/blob/f1ff2177147135677f9c060b02135f7d5f67ef8e/install.html","https://github.com/AliveTeam/alive_reversing/releases/tag/github-v1.0.9"],"category":"reconstruction-cases","description_en":"Reimplements the engine of Oddworld: Abe’s Oddysee and Abe’s Exoddus as an open-source replacement executable that runs from the user’s own game folder. The team decompiled the original executables and replaced their functions incrementally, using injected DLLs that hook reimplemented code into the patched retail executable, then rewrote the result into a standalone cross-platform engine. The project site says both games are playable in their entirety, with bug fixes and windowed, high-resolution and controller play.","description_zh":"以开源的替代可执行文件重新实现 Oddworld: Abe’s Oddysee 与 Abe’s Exoddus 的引擎，在使用者自己的游戏目录中运行。团队先反编译原版可执行文件并逐步替换其中的函数，借助注入的 DLL 将重新实现的代码挂接到打过补丁的零售版程序中，之后再把成果改写为独立的跨平台引擎。项目网站称两款游戏均可完整通关，并修复了缺陷，支持窗口模式、高分辨率和手柄游玩。","entry_url":"https://awesomerea.org/resources/relive-oddworld-abe-engine-case/","entry_url_zh":"https://awesomerea.org/zh/resources/relive-oddworld-abe-engine-case/","evidence_url":"https://github.com/AliveTeam/alive_reversing/blob/3be8967b71b29e6e61009d291bd64dce39abf7ac/README.md","group":"cases","id":"relive-oddworld-abe-engine-case","json_url":"https://awesomerea.org/resources/relive-oddworld-abe-engine-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/relive-oddworld-abe-engine-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/relive-oddworld-abe-engine-case/index.md","name":"R.E.L.I.V.E.: an Oddworld Abe’s Oddysee and Abe’s Exoddus engine reimplementation","name_zh":"R.E.L.I.V.E.：Oddworld: Abe’s Oddysee 与 Abe’s Exoddus 引擎的重新实现","reconstruction_method":"decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the master commit of 2026-09-01 that merged the SDL3 port; the latest release is github-v1.0.9, labelled “relive stable v1.0.9” (2025-03-21), while CMake still declares project version 0.1. The project site’s FAQ says both games can be played through, over a hundred original bugs are fixed and there should be no noticeable gameplay difference from the retail version; PSX-quality music, deeper modding and an in-game level editor are listed as future work. The FAQ describes the method as decompiling the retail executable and then spending years rewriting the output into readable code.","Play requires the user’s own Abe’s Oddysee or Abe’s Exoddus installation; the FAQ names the Steam, GOG and early disc versions. The executable runs from the game folder that holds the .lvl files, and the Linux launcher scripts look for the default Steam folder or ask for that directory. The repository contains no game data files, though source files embed data tables used by the reimplemented code, such as fonts and video-decompression tables; the FAQ says the team will not provide game files.","Builds use CMake 3.10+, C++17 and SDL3 after a recursive clone of the Detours, googletest, magic_enum, jsonxx, stb, lodepng and nlohmann/json submodules; README documents Visual Studio 2022 on Windows and Ubuntu packages on Linux, and cpack produces a Debian package. MSVC builds also produce the AliveDllAE and AliveDllAO hooking DLLs, linked with Detours on 32-bit Windows. GitHub Actions builds Windows 32-bit, Windows 64-bit and Linux packages; its macOS job is commented out, although the FAQ says the games run on macOS.","The GitHub Actions workflow builds and packages without running tests. The tree has googletest unit and integration tests for the relive_api level-data tool, and the integration test reads .lvl files from hard-coded GOG install paths; older AppVeyor and Azure Pipelines configurations still invoke ctest. The FAQ reports automated replays that record a full play-through with a stable build and flag desyncs in development builds (the recorder saves input, RNG, ticks and sync points), but no replay results are published.","The repository has no license file and GitHub detects none; README only says contributions will be licensed under a GPL-compatible license, most likely MIT, in the future, so reuse terms are currently unstated. 3rdParty/DxOld carries three DirectX 7-era Direct3D headers, one with a Microsoft all-rights-reserved notice, and the submodules keep their own licenses. The FAQ disclaims affiliation with Oddworld Inhabitants, whose games keep their own rights."],"requirements_zh":["审阅版本为 2026-09-01 合并 SDL3 移植的 master 提交；最新发布版为 github-v1.0.9，标注为“relive stable v1.0.9”（2025-03-21），而 CMake 中的项目版本仍为 0.1。项目网站的 FAQ 称两款游戏都能完整通关，修复了一百多个原版缺陷，与零售版相比不应有明显的玩法差异；PSX 品质的音乐、更深入的改装支持和游戏内关卡编辑器列为未来工作。FAQ 将方法描述为先反编译零售版可执行文件，再用数年时间把输出改写成可读代码。","游玩需要使用者自有的 Abe’s Oddysee 或 Abe’s Exoddus 安装；FAQ 提到 Steam、GOG 和早期光盘版。可执行文件在存放 .lvl 文件的游戏目录中运行，Linux 启动脚本会查找默认的 Steam 目录，否则请使用者指定该目录。仓库不含游戏数据文件，但源码内嵌了重新实现的代码所用的数据表，例如字体和视频解压表；FAQ 表示团队不会提供游戏文件。","构建需递归克隆 Detours、googletest、magic_enum、jsonxx、stb、lodepng 和 nlohmann/json 子模块，并使用 CMake 3.10+、C++17 与 SDL3；README 介绍了 Windows 上的 Visual Studio 2022 和 Linux 上的 Ubuntu 软件包，cpack 可生成 Debian 软件包。MSVC 构建还会生成 AliveDllAE 与 AliveDllAO 挂钩 DLL，在 32 位 Windows 上链接 Detours。GitHub Actions 构建 Windows 32 位、Windows 64 位和 Linux 软件包；其 macOS 任务已被注释掉，尽管 FAQ 称游戏可在 macOS 上运行。","GitHub Actions 工作流只构建和打包，不运行测试。仓库中有针对 relive_api 关卡数据工具的 googletest 单元测试和集成测试，集成测试从硬编码的 GOG 安装路径读取 .lvl 文件；较早的 AppVeyor 和 Azure Pipelines 配置仍会调用 ctest。FAQ 介绍了自动回放：用稳定版录制完整通关过程，再在开发版中检测不同步（录制器保存输入、随机数、时钟和同步点），但没有公布回放结果。","仓库没有许可证文件，GitHub 也未检测到许可证；README 只说贡献的代码将来会以兼容 GPL 的许可证（很可能是 MIT）发布，因此目前没有明确的复用条款。3rdParty/DxOld 收录了三个 DirectX 7 时期的 Direct3D 头文件，其中一个带有 Microsoft 保留所有权利的声明，各子模块保留各自的许可证。FAQ 声明与 Oddworld Inhabitants 无关，其游戏仍保留各自权利。"],"targets":["game"],"url":"https://github.com/AliveTeam/alive_reversing","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-29","additional_evidence_urls":["https://github.com/avast/retdec/blob/9450585772e6f1c18e5f0b2ad5518a18d6bce71e/CHANGELOG.md","https://github.com/avast/retdec/blob/9450585772e6f1c18e5f0b2ad5518a18d6bce71e/CMakeLists.txt","https://github.com/avast/retdec/blob/9450585772e6f1c18e5f0b2ad5518a18d6bce71e/cmake/deps.cmake","https://github.com/avast/retdec/blob/9450585772e6f1c18e5f0b2ad5518a18d6bce71e/.github/workflows/retdec-ci.yml","https://github.com/avast/retdec/blob/9450585772e6f1c18e5f0b2ad5518a18d6bce71e/.github/workflows/common/prepare-retdec-tests.sh","https://github.com/avast/retdec/blob/9450585772e6f1c18e5f0b2ad5518a18d6bce71e/LICENSE","https://github.com/avast/retdec/blob/9450585772e6f1c18e5f0b2ad5518a18d6bce71e/LICENSE-PELIB","https://github.com/avast/retdec/blob/9450585772e6f1c18e5f0b2ad5518a18d6bce71e/LICENSE-THIRD-PARTY","https://github.com/avast/retdec/releases/tag/v5.0"],"category":"native-analysis","description_en":"Avast's retargetable machine-code decompiler built on LLVM. It takes ELF, PE, Mach-O, COFF, AR, Intel HEX or raw code for 32-bit x86, ARM, MIPS, PIC32 and PowerPC or 64-bit x86-64 and ARM64, recovers functions, types and C++ class hierarchies, and emits C or a Python-like language with call and control-flow graphs.","description_zh":"Avast 推出的基于 LLVM 的可重定向机器码反编译器。可处理 ELF、PE、Mach-O、COFF、AR、Intel HEX 或原始机器码，覆盖 32 位 x86、ARM、MIPS、PIC32、PowerPC 以及 64 位 x86-64 和 ARM64，能恢复函数、类型和 C++ 类层次结构，输出 C 或类 Python 语言代码，并生成调用图和控制流图。","entry_url":"https://awesomerea.org/resources/retdec/","entry_url_zh":"https://awesomerea.org/zh/resources/retdec/","evidence_url":"https://github.com/avast/retdec/blob/9450585772e6f1c18e5f0b2ad5518a18d6bce71e/README.md","group":"tools","id":"retdec","json_url":"https://awesomerea.org/resources/retdec/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/retdec/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/retdec/index.md","name":"RetDec","name_zh":"RetDec 可重定向机器码反编译器","record_type":"resource","relationship":"foundation","requirements":["README warns that RetDec is in limited maintenance mode: pull requests are reviewed with priority, issues get delayed reactions and are not actively solved unless they concern basic maintenance, and only very limited development continues. The latest release is v5.0 (2022-12-08); the reviewed master commit of 2026-05-26 is 81 commits ahead of it and still declares version 5.0.","Release packages cover Linux, macOS and Windows; README lists Windows 7+, Linux, macOS and experimental FreeBSD, with about 5–6 GB per installation. Source builds need a C++17 compiler (GCC 7+, Visual Studio 2017 15.7+ or full Xcode on macOS 10.15+), OpenSSL 1.1.1+, Python 3.4+ and, outside Windows, autotools; CMakeLists.txt requires CMake 3.13, not README's 3.6. The build downloads pinned Capstone, Keystone, YARA and yaramod, an Avast LLVM fork and a 2019 support package.","Input is the user's own executable, object file, archive or raw machine code. Since v5.0 the decompiler is also a set of CMake libraries for other projects, and separate retdec-idaplugin and retdec-r2plugin repositories embed it in IDA and radare2.","GitHub Actions builds Release and Debug builds on Ubuntu 22.04, Windows (MSYS2) and macOS, then runs the separate retdec-regression-tests suite. README calls nightly builds unguaranteed, with possible regressions, and Docker support community-maintained.","MIT (Avast Software). The modified PeLib keeps its zlib/libpng license, and LICENSE-THIRD-PARTY lists the other components, including Keystone used under its FOSS exception to GPLv2."],"requirements_zh":["README 警告 RetDec 处于有限维护模式：拉取请求会优先审阅，议题的回应会有延迟，且除基本维护相关问题外不会主动解决，开发工作也极为有限。最新发行版为 v5.0（2022-12-08）；所审阅的 master 提交（2026-05-26）比它多 81 个提交，版本号仍为 5.0。","发行包覆盖 Linux、macOS 和 Windows；README 列出 Windows 7+、Linux、macOS 以及实验性的 FreeBSD，每次安装约占 5–6 GB。源码构建需要支持 C++17 的编译器（GCC 7+、Visual Studio 2017 15.7+，或 macOS 10.15+ 上的完整 Xcode）、OpenSSL 1.1.1+、Python 3.4+，Windows 以外还需 autotools；CMakeLists.txt 要求 CMake 3.13，而非 README 所写的 3.6。构建时会下载固定版本的 Capstone、Keystone、YARA 和 yaramod 压缩包、Avast 维护的 LLVM 分支以及 2019 年的支持包。","输入为使用者自有的可执行文件、目标文件、归档或原始机器码。自 v5.0 起，反编译器也以一组 CMake 库的形式供其他项目调用；独立的 retdec-idaplugin 和 retdec-r2plugin 仓库将其嵌入 IDA 和 radare2。","GitHub Actions 在 Ubuntu 22.04、Windows（MSYS2）和 macOS 上构建 Release 与 Debug 配置，再运行独立的 retdec-regression-tests 测试套件。README 说明每夜构建不作保证、可能出现回归，Docker 支持则由社区维护。","采用 MIT 许可（Avast Software）。修改过的 PeLib 保留其 zlib/libpng 许可，LICENSE-THIRD-PARTY 列出其他组件，其中 Keystone 依据其针对 GPLv2 的 FOSS 例外条款使用。"],"targets":["binary"],"url":"https://github.com/avast/retdec","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-29","additional_evidence_urls":["https://github.com/FolkertVanVerseveld/aoe/blob/3234eac7098124e7fac11272697cacb3aed5e608/INSTALL","https://github.com/FolkertVanVerseveld/aoe/blob/3234eac7098124e7fac11272697cacb3aed5e608/doc/user_guide.md","https://github.com/FolkertVanVerseveld/aoe/blob/3234eac7098124e7fac11272697cacb3aed5e608/HACKING.md","https://github.com/FolkertVanVerseveld/aoe/blob/3234eac7098124e7fac11272697cacb3aed5e608/CMakeLists.txt","https://github.com/FolkertVanVerseveld/aoe/blob/3234eac7098124e7fac11272697cacb3aed5e608/.gitmodules","https://github.com/FolkertVanVerseveld/aoe/tree/3234eac7098124e7fac11272697cacb3aed5e608/doc/reverse_engineering","https://github.com/FolkertVanVerseveld/aoe/tree/3234eac7098124e7fac11272697cacb3aed5e608/tools","https://github.com/FolkertVanVerseveld/aoe/tree/3234eac7098124e7fac11272697cacb3aed5e608/game/src/legacy","https://github.com/FolkertVanVerseveld/aoe/blob/3234eac7098124e7fac11272697cacb3aed5e608/.github/workflows/unit_test.yml","https://github.com/FolkertVanVerseveld/aoe/blob/3234eac7098124e7fac11272697cacb3aed5e608/.github/workflows/test_distros.yml","https://github.com/FolkertVanVerseveld/aoe/tree/3234eac7098124e7fac11272697cacb3aed5e608/game/tests","https://github.com/FolkertVanVerseveld/aoe/blob/3234eac7098124e7fac11272697cacb3aed5e608/LICENSE"],"category":"reconstruction-cases","description_en":"Re-implements Microsoft’s Age of Empires and its Rise of Rome expansion as a cross-platform C++17 engine on SDL2 and OpenGL that loads the original game’s DRS archives and language.dll resources. README says it mimics the Windows API and the Genie engine for compatibility and reconstructs some code from the disassembly; the repository adds format notes and Python tools for inspecting the original data files. Only very basic gameplay through a multiplayer session exists so far, so it is an early engine case rather than a playable replacement.","description_zh":"以基于 SDL2 和 OpenGL 的跨平台 C++17 引擎重新实现 Microsoft 的《帝国时代》及其资料片《罗马复兴》，载入原版游戏的 DRS 归档和 language.dll 资源。README 称项目为兼容起见模仿 Windows API 和 Genie 引擎，部分代码依据反汇编重建；仓库另附格式笔记和用于检查原版数据文件的 Python 工具。目前只能通过多人会话进行非常基础的游戏，因此这是一个早期引擎案例，而非可替代原版游玩的实现。","entry_url":"https://awesomerea.org/resources/aoe-free-software-remake-case/","entry_url_zh":"https://awesomerea.org/zh/resources/aoe-free-software-remake-case/","evidence_url":"https://github.com/FolkertVanVerseveld/aoe/blob/3234eac7098124e7fac11272697cacb3aed5e608/README.md","group":"cases","id":"aoe-free-software-remake-case","json_url":"https://awesomerea.org/resources/aoe-free-software-remake-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/aoe-free-software-remake-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/aoe-free-software-remake-case/index.md","name":"Age of Empires Free Software Remake: a re-implementation on the original data","name_zh":"Age of Empires Free Software Remake：基于原版数据的重新实现","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirements":["The reviewed master snapshot (2026-09-20) sets CMake version 0.1, and the repository has no releases or tags; the user guide says no binary builds are provided. README reports only very basic gameplay and only multiplayer mode: single-player means hosting a session and adding computer players, which only gather resources until attacked. doc/reverse_engineering documents the DRS archive contents, the Windows API functions the original imports, the scenario format, civilizations and unit statistics.","Needs a legitimate copy of Age of Empires or Rise of Rome, on the CD-ROM or installed: the engine loads Border.drs, graphics.drs, Interfac.drs, sounds.drs and Terrain.drs from the data folder plus language.dll, and expects the game fonts COPRGTB.TTF and COPRGTL.TTF that the original installer adds. The repository contains no game data, and community replacement assets are not supported yet.","README lists Windows 10+, macOS Sequoia 15.7.7, Fedora 44 and Ubuntu 22+ as tested, while INSTALL still warns that Linux builds look for hard-coded legacy TTF font paths. Builds use CMake 3.11+ with C99 and C++17 against SDL2, SDL2_image, SDL2_mixer and OpenGL, plus the imgui, tracy, wepoll and miniz submodules; Windows builds use Visual Studio with vcpkg or MinGW.","GitHub Actions builds the game with Clang on Ubuntu and Fedora and runs the Google Test suite in headless mode; its tests cover networking, the protocol, the server, SDL and a UI menu rather than equivalence with the original executable. No comparison with the original game is published.","LICENSE applies Apache-2.0; the submodules and the bundled headers in game/src/external keep their own licenses. README states that all copyrighted material and trademarks belong to their respective owners and calls the work an educational non-profit project."],"requirements_zh":["所审阅的 master 快照（2026-09-20）在 CMake 中标为 0.1 版，仓库没有发行版或标签；用户指南说明不提供二进制构建。README 称目前只有非常基础的玩法，且只有多人模式：单人游戏需要先主持一个会话再加入电脑玩家，而电脑只会采集资源，直到受到攻击。doc/reverse_engineering 记录了 DRS 归档内容、原版导入的 Windows API 函数、场景格式、文明和单位数据。","需要正版《帝国时代》或《罗马复兴》，可放在 CD-ROM 上或已安装：引擎从 data 文件夹载入 Border.drs、graphics.drs、Interfac.drs、sounds.drs 和 Terrain.drs，并读取 language.dll，还需要原版安装程序添加的游戏字体 COPRGTB.TTF 和 COPRGTL.TTF。仓库不含游戏数据，目前也不支持社区制作的替代素材。","README 列出经测试的平台为 Windows 10 及以上、macOS Sequoia 15.7.7、Fedora 44 和 Ubuntu 22 及以上，而 INSTALL 仍提醒 Linux 构建会查找写死路径的旧版 TTF 字体。构建使用 CMake 3.11+、C99 与 C++17，依赖 SDL2、SDL2_image、SDL2_mixer 和 OpenGL，以及 imgui、tracy、wepoll 和 miniz 子模块；Windows 上通过 Visual Studio 配合 vcpkg 或 MinGW 构建。","GitHub Actions 在 Ubuntu 和 Fedora 上用 Clang 构建游戏，并以无界面模式运行 Google Test 测试套件；这些测试覆盖网络、协议、服务器、SDL 和一个 UI 菜单，并不检验与原版可执行文件的一致性。项目未公布与原版游戏的对比。","LICENSE 采用 Apache-2.0；子模块和 game/src/external 中附带的头文件各自保留其许可证。README 声明所有受版权保护的内容和商标归各自所有者，并称这是一个教育性质的非营利项目。"],"targets":["game"],"url":"https://github.com/FolkertVanVerseveld/aoe","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-29","additional_evidence_urls":["https://github.com/KIexster/god-of-war-recomp/blob/92ece581c673842c282a9c23819545de5ab92d3c/.recomp.json","https://github.com/KIexster/god-of-war-recomp/blob/92ece581c673842c282a9c23819545de5ab92d3c/AGENTS.md","https://github.com/KIexster/god-of-war-recomp/blob/92ece581c673842c282a9c23819545de5ab92d3c/CLAUDE.md","https://github.com/KIexster/god-of-war-recomp/blob/92ece581c673842c282a9c23819545de5ab92d3c/docs/ESTADO.md","https://github.com/KIexster/god-of-war-recomp/blob/92ece581c673842c282a9c23819545de5ab92d3c/docs/ARQUITECTURA.md","https://github.com/KIexster/god-of-war-recomp/blob/92ece581c673842c282a9c23819545de5ab92d3c/.gitignore","https://github.com/KIexster/god-of-war-recomp/blob/92ece581c673842c282a9c23819545de5ab92d3c/scripts/common.ps1","https://github.com/KIexster/god-of-war-recomp/blob/92ece581c673842c282a9c23819545de5ab92d3c/.github/workflows/pruebas.yml","https://github.com/KIexster/god-of-war-recomp/blob/92ece581c673842c282a9c23819545de5ab92d3c/LICENSE","https://github.com/ran-j/PS2Recomp/tree/c5a9d02573410a2085a4b4b831b0b68ba3515440","https://github.com/Waffle565/God-Of-War-Native-Port/blob/514f89186f1926edaf4807696a59557679c7d517/README.md"],"category":"reconstruction-cases","description_en":"Statically recompiles the MIPS R5900 code of the NTSC-U PlayStation 2 God of War executable (SCUS-97399) to C++ with PS2Recomp and builds it as a native Windows program. Since October 2026 the port builds on Waffle565’s runtime, which replaces the PS2 hardware with native code: VU1 microprograms and, optionally, the game’s IRX modules are compiled ahead of time, and an OpenGL renderer stands in for the GS. The repository holds only the game-specific function map, recompiler configuration, overrides and runtime patches; the README reports gameplay on the opening ship level, with sustained 60 fps and a full playthrough still pending.","description_zh":"使用 PS2Recomp 将 PlayStation 2 版《战神》美版（SCUS-97399）可执行文件中的 MIPS R5900 代码静态重编译为 C++，并构建为 Windows 原生程序。自 2026 年 10 月起，移植以 Waffle565 的运行时为基础，用原生代码取代 PS2 硬件：VU1 微程序以及可选的游戏 IRX 模块会预先编译，OpenGL 渲染器则代替 GS。仓库只包含本作专用的函数映射、重编译器配置、覆盖实现与运行时补丁；README 报告已能在开场的船上关卡中游玩，而稳定 60 fps 与完整通关仍待完成。","entry_url":"https://awesomerea.org/resources/god-of-war-ps2-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/god-of-war-ps2-recomp-case/","evidence_url":"https://github.com/KIexster/god-of-war-recomp/blob/92ece581c673842c282a9c23819545de5ab92d3c/README.md","group":"cases","id":"god-of-war-ps2-recomp-case","json_url":"https://awesomerea.org/resources/god-of-war-ps2-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/god-of-war-ps2-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/god-of-war-ps2-recomp-case/index.md","name":"God of War PS2 static recompilation: a native Windows port via PS2Recomp","name_zh":"《战神》PS2 静态重编译：基于 PS2Recomp 的 Windows 原生移植","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at main (2026-10-18); the project has published no release. README marks the port experimental and reports boot, menus, a new game and the ship fight with HUD, native VU1 and IOP, and exact game speed. Sustained 60 fps, saves and movies with sound (so far verified only in Waffle565’s port), a full playthrough and PAL languages remain open, and an intermittent hang of the window thread is under investigation. The .recomp.json metadata still describes an earlier, not-yet-playable state, and most technical documents are in Spanish.","Requires the user’s own NTSC-U God of War disc (SCUS-97399): the build reads its SCUS_973.99 executable, and play reads the IRX modules and PAK data from the user’s disc files kept at their original sectors. README states that the repository contains no game files, IRX modules or generated C++, and .gitignore excludes disc images, the executable, IRX and PAK files and the generated directories.","Builds only on Windows 10/11 x64 with Visual Studio 2022 Build Tools (C++ workload, including CMake and Ninja), Git and Python 3, with about 20 GB free and 16 GB of RAM recommended. scripts/2_compilar.cmd clones PS2Recomp at commit c5a9d02, applies the patches in order, generates about 6,400 C++ files from the user’s executable and builds ps2EntryRunner.exe; the first build takes 20–40 minutes.","CI validates the function map and recompiler configuration, applies every patch to PS2Recomp and runs its ps2x_tests runtime suite against a known-failures list, and runs game-independent GS, VU1, pad and camera tests, plus a Windows job that links an isolated PCSX2 GS module without a GPU. Gameplay and performance figures come from the author’s runs on one Ryzen 7 5800XT and RX 5700 XT machine, recorded in docs/ESTADO.md.","The repository is GPL-3.0, matching PS2Recomp; the applied runtime comes from Waffle565’s God-Of-War-Native-Port, whose repository root has no license file, and brings PCSX2-derived code (GPL-3.0+). Sony Interactive Entertainment and Santa Monica Studio keep their game rights. AGENTS.md says several agents work on main at once, CLAUDE.md points Claude to those conventions and the status log credits fixes to Claude."],"requirements_zh":["审阅版本为 main（2026-10-18）；项目尚未发布任何版本。README 将移植标为实验性，并报告已能启动、进入菜单、开始新游戏并完成带 HUD 的船上战斗，VU1 与 IOP 已原生化，游戏速度准确。稳定 60 fps、存档及带声音的过场影片（目前仅在 Waffle565 的移植中验证过）、完整通关和 PAL 语言版本仍未完成，窗口线程偶发卡死的问题也在调查中。.recomp.json 元数据仍描述早先尚不可游玩的状态，多数技术文档以西班牙语撰写。","需使用者自有的《战神》美版光盘（SCUS-97399）：构建时读取其中的 SCUS_973.99 可执行文件，游玩时从保持原始扇区位置的光盘文件中读取 IRX 模块与 PAK 数据。README 声明仓库不含任何游戏文件、IRX 模块或生成的 C++ 代码，.gitignore 也排除了光盘镜像、可执行文件、IRX 与 PAK 文件以及生成目录。","仅能在 Windows 10／11 x64 上构建，需 Visual Studio 2022 Build Tools（C++ 工作负载，含 CMake 与 Ninja）、Git 和 Python 3，建议预留约 20 GB 空间并配备 16 GB 内存。scripts/2_compilar.cmd 会克隆 PS2Recomp 并固定到提交 c5a9d02，按顺序应用补丁，从使用者的可执行文件生成约 6,400 个 C++ 文件，再构建 ps2EntryRunner.exe；首次构建需 20–40 分钟。","CI 校验函数映射与重编译器配置，将全部补丁应用到 PS2Recomp 并对照已知失败清单运行其 ps2x_tests 运行时测试套件，还运行与游戏无关的 GS、VU1、手柄和镜头测试，另有一项 Windows 任务在无 GPU 的情况下链接独立的 PCSX2 GS 模块。游戏流程与性能数据来自作者在一台 Ryzen 7 5800XT 加 RX 5700 XT 机器上的运行，记录于 docs/ESTADO.md。","仓库采用 GPL-3.0，与 PS2Recomp 一致；所应用的运行时来自 Waffle565 的 God-Of-War-Native-Port，该仓库根目录没有许可文件，并带入源自 PCSX2 的代码（GPL-3.0+）。Sony Interactive Entertainment 与 Santa Monica Studio 仍保有游戏权利。AGENTS.md 称多个智能体同时在 main 上工作，CLAUDE.md 让 Claude 遵循这些约定，状态日志也将部分修复归于 Claude。"],"targets":["game"],"url":"https://github.com/KIexster/god-of-war-recomp","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-29","additional_evidence_urls":["https://github.com/redasm-dev/redasm/blob/509b76548a741aac569161df666b6c13f927d6f5/README.md#L72-L128","https://github.com/redasm-dev/redasm/blob/509b76548a741aac569161df666b6c13f927d6f5/README.md#L155-L181","https://github.com/redasm-dev/redasm/blob/509b76548a741aac569161df666b6c13f927d6f5/CHANGELOG.md","https://github.com/redasm-dev/redasm/blob/509b76548a741aac569161df666b6c13f927d6f5/LICENSE","https://github.com/redasm-dev/workspace/blob/4495c56cbf580c467cd18a87268b97900760c521/README.md","https://github.com/redasm-dev/kb/blob/5452426b6bb12b41f6bcbe72451e541cbe021ec7/LICENSE","https://github.com/redasm-dev/redasm/releases/tag/v4.0.0-beta3"],"category":"native-analysis","description_en":"Cross-platform interactive disassembler whose version 4 is a plain-C rewrite: a C17 engine library, the Qt6 GUI kept in this repository, and loader, processor and analyzer plugins loaded as shared libraries. The listing supports renaming, comments and typed data, with a synchronized control-flow graph, cross-references, string detection, a hex view, patching and saved projects. Besides PE and ELF, loaders cover retro and console formats such as DOS MZ, Win16 NE, OS/2 LE/LX, PlayStation 1, original Xbox and ZX Spectrum, with x86/x86-64, MIPS32, ARM/Thumb, ARM64, Z80 and 6502 processors.","description_zh":"跨平台交互式反汇编器，第 4 版以纯 C 重写：由 C17 引擎库、保留在本仓库中的 Qt6 图形界面，以及以共享库形式加载的加载器、处理器和分析器插件组成。反汇编列表支持重命名、注释和类型化数据，并提供同步的控制流图、交叉引用、字符串检测、十六进制视图、补丁和项目保存。除 PE 和 ELF 外，加载器还支持 DOS MZ、Win16 NE、OS/2 LE/LX、PlayStation 1、初代 Xbox 和 ZX Spectrum 等复古及主机格式，处理器涵盖 x86/x86-64、MIPS32、ARM/Thumb、ARM64、Z80 和 6502。","entry_url":"https://awesomerea.org/resources/redasm/","entry_url_zh":"https://awesomerea.org/zh/resources/redasm/","evidence_url":"https://github.com/redasm-dev/redasm/blob/509b76548a741aac569161df666b6c13f927d6f5/README.md","group":"tools","id":"redasm","json_url":"https://awesomerea.org/resources/redasm/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/redasm/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/redasm/index.md","name":"REDasm","name_zh":"REDasm 反汇编器","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v4.0.0-beta3, published 2026-09-02, with a Linux x86_64 AppImage and a portable Windows x86_64 ZIP plus GPG-signed checksums; the reviewed master commit is 43 commits ahead of that tag. Nightly builds from master, which the README warns may be unstable, also include macOS DMGs. Version 4 is a complete rewrite still in beta; the README says version 3 was retired, and its last release, 3.0 beta 5, dates from 2021.","The README rates Windows 10+ with Visual Studio 2022 and Linux with GCC 12+ (Ubuntu 24.04/Debian 13 reference) as actively tested platforms with official binaries; FreeBSD and macOS only pass CI builds and tests, and Haiku only compiles. Source builds go through the separate workspace repository, which fetches the core, GUI, plugin and knowledge-base repositories and needs CMake 3.20, C17/C++17 compilers and Qt 6.8 LTS.","Executables and console program files are supplied by the user. The README's maturity tables rate PE, ELF and x86/x86-64 support production ready and Visual Basic 5/6 event recovery highly stable, but the DOS MZ, PS1 BIOS, Xbox, ZX Spectrum and NES (NROM only) loaders and the Z80 and 6502 processors only functional, and MSVC RTTI and exception-handling recovery work in progress. There is no decompiler yet, and extensions are written in C; a Python plugin API is on the roadmap.","GPL-3.0 for the GUI, the core and every bundled plugin; the separate knowledge-base repository of TOML signatures and type definitions is CC0-1.0."],"requirements_zh":["审阅时最新版本为 v4.0.0-beta3，发布于 2026-09-02，提供 Linux x86_64 AppImage 和免安装的 Windows x86_64 ZIP，并附 GPG 签名的校验和；所审阅的 master 提交比该标签多 43 个提交。基于 master 的每夜构建另含 macOS DMG，README 提醒其可能不稳定。第 4 版是仍处于测试阶段的完全重写；README 称第 3 版已停止维护，其最后一个版本 3.0 beta 5 发布于 2021 年。","README 将 Windows 10+（Visual Studio 2022）和 Linux（GCC 12+，以 Ubuntu 24.04/Debian 13 为参考）列为持续测试并提供官方二进制的平台；FreeBSD 和 macOS 仅通过 CI 编译和测试，Haiku 仅能编译。从源码构建需借助独立的 workspace 仓库，它会拉取核心、图形界面、插件和知识库各仓库，要求 CMake 3.20、C17/C++17 编译器和 Qt 6.8 LTS。","可执行文件和主机程序文件由使用者自备。README 的成熟度表将 PE、ELF 和 x86/x86-64 支持评为可用于生产，Visual Basic 5/6 事件恢复评为高度稳定，而 DOS MZ、PS1 BIOS、Xbox、ZX Spectrum 和 NES（仅 NROM）加载器以及 Z80、6502 处理器仅为可用级别，MSVC RTTI 和异常处理恢复仍在开发中。目前尚无反编译器，扩展须用 C 编写；Python 插件 API 已列入路线图。","图形界面、核心和所有内置插件均采用 GPL-3.0；独立的知识库仓库收录 TOML 格式的签名和类型定义，采用 CC0-1.0。"],"targets":["binary","game"],"url":"https://github.com/redasm-dev/redasm","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-29","additional_evidence_urls":["https://github.com/mildsunrise/protobuf-inspector/blob/3211be9c2fb1d24e788ff492571cd0ba895c519a/CONFIG.md","https://github.com/mildsunrise/protobuf-inspector/blob/3211be9c2fb1d24e788ff492571cd0ba895c519a/protobuf_inspector/__main__.py","https://github.com/mildsunrise/protobuf-inspector/blob/3211be9c2fb1d24e788ff492571cd0ba895c519a/protobuf_inspector/types.py","https://github.com/mildsunrise/protobuf-inspector/blob/3211be9c2fb1d24e788ff492571cd0ba895c519a/setup.py","https://github.com/mildsunrise/protobuf-inspector/blob/3211be9c2fb1d24e788ff492571cd0ba895c519a/LICENSE","https://pypi.org/project/protobuf-inspector/0.2/"],"category":"protocol-analysis","description_en":"Parses Protocol Buffers blobs (proto2 or proto3) without their .proto definition and prints a colored view of the fields in wire order, trying each length-delimited chunk as a nested message, then a packed array, a string and finally a hexdump. Analysts record what they work out in a protobuf_config.py file, with field types and names, message and enum types and custom native types, until the parser no longer has to guess. Field names, zig-zag encoding, signedness and integer-versus-float choices cannot be read from the wire, and the README says guesses can be wrong, especially for small chunks.","description_zh":"无需对应的 .proto 定义即可解析 Protocol Buffers 数据块（proto2 或 proto3），按线路编码顺序以彩色输出字段；对每个长度限定的数据块，依次尝试解析为嵌套消息、打包数组、字符串，最后退回十六进制转储。分析者把推断出的内容写入 protobuf_config.py，包括字段类型与名称、消息和枚举类型以及自定义原生类型，直到解析器不再需要猜测。字段名、zig-zag 编码、有无符号以及整数还是浮点数，都无法从线路数据中读出；README 也说明猜测可能出错，小数据块尤甚。","entry_url":"https://awesomerea.org/resources/protobuf-inspector/","entry_url_zh":"https://awesomerea.org/zh/resources/protobuf-inspector/","evidence_url":"https://github.com/mildsunrise/protobuf-inspector/blob/3211be9c2fb1d24e788ff492571cd0ba895c519a/README.md","group":"tools","id":"protobuf-inspector","json_url":"https://awesomerea.org/resources/protobuf-inspector/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/protobuf-inspector/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/protobuf-inspector/index.md","name":"protobuf-inspector","name_zh":"protobuf-inspector 未知定义 Protobuf 解析工具","record_type":"resource","relationship":"foundation","requirements":["Development is dormant: the only release, 0.2 on PyPI and tagged v0.2.0, and the reviewed master commit both date from 2020-11-24, with no later commits.","Install with pip (setup.py declares Python >=3.3) and pipe one raw protobuf blob to protobuf_inspector on standard input, optionally naming the root message type. The README documents no capture, gRPC or HTTP handling, so blobs must first be extracted from traffic or files the analyst is entitled to inspect.","The CLI searches the working directory and each parent up to the filesystem mount point for protobuf_config.py and runs it with runpy, so a config file executes as Python code. A dump type writes matching chunks to dump.N files in the working directory, and parse errors stop inside the affected field and make the command exit non-zero.","ISC license. The README says the Python API was not designed as a library and may change. The repository has no tests or CI configuration."],"requirements_zh":["项目已不再活跃：唯一的发布版本（PyPI 上的 0.2，标签 v0.2.0）与所审阅的 master 提交均为 2020-11-24，此后再无提交。","用 pip 安装（setup.py 声明 Python >=3.3），通过标准输入向 protobuf_inspector 传入单个原始 protobuf 数据块，并可指定根消息类型。README 未说明对抓包、gRPC 或 HTTP 的处理，因此需要先从分析者有权检查的流量或文件中提取数据块。","命令行工具会在工作目录及其各级父目录（直到文件系统挂载点）中查找 protobuf_config.py，并用 runpy 运行，因此配置文件会作为 Python 代码执行。dump 类型会把匹配的数据块写入工作目录下的 dump.N 文件；解析错误只中止出错字段的解析，并使命令以非零状态退出。","采用 ISC 许可。README 说明其 Python API 并非为库用途设计，将来可能变化。仓库没有测试或 CI 配置。"],"targets":["protocol"],"url":"https://github.com/mildsunrise/protobuf-inspector","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-29","additional_evidence_urls":["https://github.com/gaasedelen/lighthouse/blob/562595be9bd99e8a5dfef6017d608467f5706630/coverage/README.md","https://github.com/gaasedelen/lighthouse/blob/562595be9bd99e8a5dfef6017d608467f5706630/coverage/pin/README.md","https://github.com/gaasedelen/lighthouse/blob/562595be9bd99e8a5dfef6017d608467f5706630/coverage/frida/README.md","https://github.com/gaasedelen/lighthouse/blob/562595be9bd99e8a5dfef6017d608467f5706630/plugins/lighthouse/util/disassembler/ida_api.py#L12-L14","https://github.com/gaasedelen/lighthouse/blob/562595be9bd99e8a5dfef6017d608467f5706630/plugins/lighthouse/reader/parsers/tenet.py","https://github.com/gaasedelen/lighthouse/blob/562595be9bd99e8a5dfef6017d608467f5706630/plugins/lighthouse/util/update.py","https://github.com/gaasedelen/lighthouse/blob/562595be9bd99e8a5dfef6017d608467f5706630/binjastub/plugin.json","https://github.com/gaasedelen/lighthouse/blob/562595be9bd99e8a5dfef6017d608467f5706630/LICENSE","https://github.com/gaasedelen/lighthouse/blob/562595be9bd99e8a5dfef6017d608467f5706630/coverage/pin/LICENSE","https://github.com/gaasedelen/lighthouse/releases/tag/v0.9.3","https://github.com/gaasedelen/lighthouse/compare/master...develop"],"category":"dynamic-analysis","description_en":"Code-coverage explorer plugin for IDA Pro and Binary Ninja that loads execution traces of native programs and paints the executed code across the disassembler's views, without needing symbols or source. Its coverage overview lists per-function coverage, and a composing shell combines loaded coverage sets with logical operators to diff runs, filter functions and jump to addresses, while coverage cross-references show which of many batch-loaded sets executed a block. It reads DynamoRIO drcov logs, module+offset, absolute-address and Tenet traces, writes basic HTML coverage reports, and ships a prototype Intel Pin tool and a Frida script that produce drcov-compatible logs.","description_zh":"面向 IDA Pro 和 Binary Ninja 的代码覆盖率浏览插件，载入原生程序的执行轨迹，并在反汇编器的各个视图中为已执行代码着色，无需符号或源码。覆盖率总览按函数列出覆盖情况；组合命令行可用逻辑运算符组合已载入的覆盖率集合，用于比较多次运行的差异、筛选函数或跳转到指定地址；覆盖率交叉引用则显示批量载入的众多集合中哪些执行过某个基本块。它可读取 DynamoRIO drcov 日志、模块+偏移、绝对地址和 Tenet 轨迹，能生成简单的 HTML 覆盖率报告，并附带可输出 drcov 兼容日志的原型 Intel Pin 工具和 Frida 脚本。","entry_url":"https://awesomerea.org/resources/lighthouse/","entry_url_zh":"https://awesomerea.org/zh/resources/lighthouse/","evidence_url":"https://github.com/gaasedelen/lighthouse/blob/562595be9bd99e8a5dfef6017d608467f5706630/README.md","group":"tools","id":"lighthouse","json_url":"https://awesomerea.org/resources/lighthouse/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/lighthouse/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/lighthouse/index.md","name":"Lighthouse","name_zh":"Lighthouse 代码覆盖率浏览插件","record_type":"resource","relationship":"foundation","requirements":["Release at review: v0.9.3, published 2024-02-05 as a servicing release that adds full drcov v3 support and Binary Ninja/PySide6 fixes; the reviewed master commit is that tag. The develop branch is nine commits ahead with IDA 9.x, 9.2 and 9.3 compatibility fixes from 2025-2026 and a 0.9.4 development version, none of them released.","Requires IDA Pro 7 or newer (the IDA layer stops on IDA 6) or Binary Ninja, where the README says plugin-manager installation supports v3.5 and newer; for IDA the README copies the plugins folder into the user plugin directory. The README describes a cross-platform Windows, macOS and Linux Python 2/3 plugin with no third-party dependencies. In Binary Ninja, coverage is painted in linear, graph and IL views but not decompiler output.","Coverage is collected separately against the user's own target: the coverage README shows DynamoRIO drcov, the bundled CodeCoverage pintool (a prototype; the release attaches Windows builds for Pin 3.30, and macOS and Linux users build it against their own Intel Pin download) and the experimental frida-drcov.py, which its README recommends mainly for mobile applications. Absolute-address traces must match the database's address space; unmapped addresses are discarded, and other modules' hits in module+offset traces are not loaded.","MIT for Lighthouse and for the contributed pintool. Opening the coverage overview checks the GitHub releases API for a newer version."],"requirements_zh":["审阅时的版本为 v0.9.3，于 2024-02-05 发布，属于维护性版本，加入了完整的 drcov v3 支持和 Binary Ninja／PySide6 修复；所审阅的 master 分支提交即该标签。develop 分支领先九个提交，包含 2025–2026 年针对 IDA 9.x、9.2 和 9.3 的兼容性修复以及 0.9.4 开发版本号，均未发布。","需要 IDA Pro 7 或更高版本（IDA 接口层遇到 IDA 6 会停止加载），或 Binary Ninja；README 称通过插件管理器安装支持 v3.5 及以上版本，IDA 则需将 plugins 文件夹复制到用户插件目录。README 称它是跨 Windows、macOS 和 Linux 的 Python 2/3 插件，无第三方依赖。在 Binary Ninja 中只能为线性视图、图视图和 IL 视图着色，不支持反编译输出。","覆盖率需针对使用者自己的目标另行采集：覆盖率 README 介绍了 DynamoRIO drcov、仓库附带的 CodeCoverage pintool（原型；发布版附有针对 Pin 3.30 的 Windows 构建，macOS 和 Linux 用户需基于自行下载的 Intel Pin 编译），以及实验性的 frida-drcov.py，其 README 建议主要用于移动应用。绝对地址轨迹必须与数据库的地址空间一致，无法映射的地址会被丢弃；模块+偏移轨迹中其他模块的命中不会载入。","Lighthouse 及贡献的 pintool 均采用 MIT 许可。打开覆盖率总览时会查询 GitHub 发布 API 以检查新版本。"],"targets":["binary"],"url":"https://github.com/gaasedelen/lighthouse","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-29","additional_evidence_urls":["https://github.com/DomazinUS/RaceWave46/blob/5c34f3711426978107707a8f06af9c2af4ee5401/BUILDING.md","https://github.com/DomazinUS/RaceWave46/blob/5c34f3711426978107707a8f06af9c2af4ee5401/THIRD-PARTY-NOTICES.md","https://github.com/DomazinUS/RaceWave46/blob/5c34f3711426978107707a8f06af9c2af4ee5401/config/generated-code.json","https://github.com/DomazinUS/RaceWave46/blob/5c34f3711426978107707a8f06af9c2af4ee5401/BUILD-TEST.ps1","https://github.com/DomazinUS/RaceWave46/blob/5c34f3711426978107707a8f06af9c2af4ee5401/.gitignore","https://github.com/DomazinUS/RaceWave46/blob/5c34f3711426978107707a8f06af9c2af4ee5401/LICENSE","https://github.com/DomazinUS/RaceWave46/blob/5c34f3711426978107707a8f06af9c2af4ee5401/COPYING","https://github.com/DomazinUS/RaceWave46/releases/tag/v1.0.0"],"category":"reconstruction-cases","description_en":"Recompiles the USA Rev 1 Nintendo 64 release of Wave Race 64 into a native Windows application with N64Recomp and RSPRecomp, on modified copies of the N64ModernRuntime, RecompFrontend and RT64 stacks. Game and microcode C is generated locally from the user’s ROM, after an included widescreen patch is applied to a temporary copy, and checked against recorded checksums. The port adds higher resolutions, frame interpolation, ultrawide views, rasterized and ray-traced reflections and shadows, split-screen or separate-window two-player play and RetroAchievements; the maintainer calls it an AI-assisted recompilation.","description_zh":"使用 N64Recomp 与 RSPRecomp，在经修改的 N64ModernRuntime、RecompFrontend 和 RT64 之上，将 Nintendo 64 版《Wave Race 64》美版 Rev 1 重编译为 Windows 原生程序。游戏与微码的 C 代码在本地由使用者的 ROM 生成：先将随附的宽屏补丁应用到临时副本，再按记录的校验和核对生成结果。移植加入了更高分辨率、帧插值、超宽视野、光栅化与光线追踪的反射和阴影、分屏或分窗口的双人游戏以及 RetroAchievements；维护者称其为 AI 辅助的重编译。","entry_url":"https://awesomerea.org/resources/racewave46-wave-race-64-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/racewave46-wave-race-64-recomp-case/","evidence_url":"https://github.com/DomazinUS/RaceWave46/blob/5c34f3711426978107707a8f06af9c2af4ee5401/README.md","group":"cases","id":"racewave46-wave-race-64-recomp-case","json_url":"https://awesomerea.org/resources/racewave46-wave-race-64-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/racewave46-wave-race-64-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/racewave46-wave-race-64-recomp-case/index.md","name":"RaceWave46: an AI-assisted Wave Race 64 recompilation for Windows","name_zh":"RaceWave46：AI 辅助的《Wave Race 64》Windows 重编译","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the repository’s single public commit, tagged v1.0.0 (release published 2026-09-16) with a Windows x64 build and a source ZIP. README targets 64-bit Windows 10/11 with Direct3D 12 and Vulkan back ends; the added reflections, shadows and separate player windows need Direct3D 12, and ray tracing needs DXR 1.1 / Shader Model 6.5. Controller Pak save and load are not implemented, multiplayer is local only, RetroAchievements lacks hardcore mode and leaderboards, and performance requirements are still being evaluated.","Building and playing need the user’s own unmodified Wave Race 64 (USA) Rev 1 ROM, in big-endian .z64 form for the build; players import it in the frontend. Generation verifies the ROM, patches a temporary copy with the included widescreen IPS patch, and installs the verified output into git-ignored directories. README states that no ROM, saves, texture packs or account data are included.","Builds use Visual Studio 2022 C++ Build Tools with the Windows 10/11 SDK and C++ CMake tools (MSVC x64, CMake 3.20+, Ninja), Python 3.11+, and N64Recomp and RSPRecomp built from the bundled, modified source. The first configuration downloads Microsoft DXC 1.8.2502 and 1.9.2607 compilers pinned by SHA-256, and BUILDING.md warns against substituting unmodified upstream dependencies.","The tree holds 84 CMake regression suites run individually through BUILD-TEST.ps1, some needing the user’s ROM, but no CI workflow; generation checks every generated file against the hashes in config/generated-code.json. README reports repeated hands-on testing of races, menus, course introductions and the championship ending.","The project’s original contributions are GPL-3.0-only; N64ModernRuntime is GPLv3, other vendored components keep their own notices, and Nintendo keeps its game assets and trademarks. README states that AI tools were used for code implementation, debugging, research and documentation, while project direction, review and gameplay testing stay with the maintainer."],"requirements_zh":["审阅版本为仓库唯一的公开提交，标记为 v1.0.0（发布于 2026-09-16），提供 Windows x64 构建和源码 ZIP。README 面向 64 位 Windows 10／11，支持 Direct3D 12 与 Vulkan 后端；新增的反射、阴影和独立玩家窗口需要 Direct3D 12，光线追踪需要 DXR 1.1／Shader Model 6.5。原版 Controller Pak 的存取功能尚未实现，多人游戏仅限本地，RetroAchievements 不含硬核模式和排行榜，性能需求仍在评估中。","构建与游玩都需要使用者自有、未修改的《Wave Race 64》美版 Rev 1 ROM，构建时需为大端序 .z64 格式；玩家在前端中导入该 ROM。生成过程先校验 ROM，再用随附的宽屏 IPS 补丁修改临时副本，并将校验通过的输出放入被 git 忽略的目录。README 声明不含任何 ROM、存档、材质包或账户数据。","构建需 Visual Studio 2022 C++ Build Tools，含 Windows 10／11 SDK 与 C++ CMake 工具（MSVC x64、CMake 3.20+、Ninja），以及 Python 3.11+，并从随附的修改版源码构建 N64Recomp 与 RSPRecomp。首次配置会下载以 SHA-256 固定的 Microsoft DXC 1.8.2502 与 1.9.2607 编译器；BUILDING.md 提醒不要换用未经修改的上游依赖。","代码树包含 84 个 CMake 回归测试套件，可通过 BUILD-TEST.ps1 逐个运行，其中部分需要使用者的 ROM，但没有 CI 工作流；生成过程会按 config/generated-code.json 中的哈希核对每个生成文件。README 报告对比赛、菜单、赛道介绍及锦标赛结局做过反复的实机测试。","项目的原创部分采用 GPL-3.0-only；N64ModernRuntime 采用 GPLv3，其他随附组件保留各自的声明，Nintendo 仍保有游戏素材与商标权利。README 声明 AI 工具用于代码实现、调试、研究和文档编写，项目方向、审查决定与实机测试则由维护者负责。"],"targets":["game"],"url":"https://github.com/DomazinUS/RaceWave46","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-30","additional_evidence_urls":["https://github.com/seemoo-lab/opendrop/blob/11fe7ba7861093b302bc0637e8cb10adf2d29337/setup.py","https://github.com/seemoo-lab/opendrop/blob/11fe7ba7861093b302bc0637e8cb10adf2d29337/opendrop/config.py","https://github.com/seemoo-lab/opendrop/blob/11fe7ba7861093b302bc0637e8cb10adf2d29337/opendrop/client.py","https://github.com/seemoo-lab/opendrop/blob/11fe7ba7861093b302bc0637e8cb10adf2d29337/opendrop/server.py","https://github.com/seemoo-lab/opendrop/blob/11fe7ba7861093b302bc0637e8cb10adf2d29337/.github/workflows/testpackage.yml","https://github.com/seemoo-lab/opendrop/blob/11fe7ba7861093b302bc0637e8cb10adf2d29337/tests/test_server.py","https://github.com/seemoo-lab/opendrop/blob/11fe7ba7861093b302bc0637e8cb10adf2d29337/CITATION.cff","https://github.com/seemoo-lab/opendrop/blob/11fe7ba7861093b302bc0637e8cb10adf2d29337/LICENSE","https://pypi.org/project/opendrop/0.13.0/","https://www.usenix.org/conference/usenixsecurity19/presentation/stute"],"category":"reconstruction-cases","description_en":"Python command-line reimplementation of Apple's AirDrop protocol from SEEMOO Lab's reverse-engineering research. It finds receivers via _airdrop._tcp DNS-SD, sends binary-plist /Discover and /Ask requests over HTTPS and uploads gzip-compressed CPIO archives to exchange files with iOS and macOS. It is not affiliated with Apple.","description_zh":"基于 SEEMOO 实验室逆向研究、用 Python 编写的 Apple AirDrop 协议命令行重新实现。它通过 _airdrop._tcp DNS-SD 发现接收方，经 HTTPS 发送二进制 plist 格式的 /Discover 和 /Ask 请求，并上传 gzip 压缩的 CPIO 归档，与 iOS 和 macOS 设备互传文件。它与 Apple 无关联。","entry_url":"https://awesomerea.org/resources/opendrop-airdrop-reimplementation-case/","entry_url_zh":"https://awesomerea.org/zh/resources/opendrop-airdrop-reimplementation-case/","evidence_url":"https://github.com/seemoo-lab/opendrop/blob/11fe7ba7861093b302bc0637e8cb10adf2d29337/README.md","group":"cases","id":"opendrop-airdrop-reimplementation-case","json_url":"https://awesomerea.org/resources/opendrop-airdrop-reimplementation-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/opendrop-airdrop-reimplementation-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/opendrop-airdrop-reimplementation-case/index.md","name":"OpenDrop: an open reimplementation of Apple AirDrop","name_zh":"OpenDrop：Apple AirDrop 的开源重新实现","record_type":"resource","relationship":"independent-reconstruction","requirements":["README calls OpenDrop experimental output of the Open Wireless Link reverse-engineering effort that lacks some AirDrop features and may break with future AirDrop versions, and says Apple neither affiliates with nor endorses it. The latest release is 0.13.0 (PyPI, 2021-04-29); the reviewed master commit of 2026-08-17 adds only a citation file and link edits since.","AirDrop runs only over Apple Wireless Direct Link, so OpenDrop is supported on macOS or on Linux with an open AWDL implementation such as SEEMOO's OWL; the default interface is awdl0. It needs Python 3.6+ (classifiers list 3.6–3.9), a current libarchive (Homebrew's on macOS), the openssl command and the packages in setup.py, including zeroconf and libarchive-c.","By default it creates its own self-signed key and certificate. Receivers in the default contacts-only mode need AirDrop keys, a certificate and an Apple ID validation record from the user's own Mac, which README says come from a separate SEEMOO extractor; the repository ships only Apple's public root CA certificate.","README lists known gaps: no Bluetooth Low Energy trigger, so Apple receivers may stay undiscovered; no peer authentication (neither TLS certificate chains nor validation records are checked) and automatic acceptance of every incoming file; and one file per transfer, with links sent but not received. CI runs black, flake8 and pytest on Python 3.6–3.9; its two tests only start the browser and server on loopback.","GPL-3.0. README points to the authors' USENIX Security 2019 AWDL paper and 2021 PrivateDrop paper for protocol details; AirDrop and AWDL remain Apple's protocols."],"requirements_zh":["README 称 OpenDrop 是 Open Wireless Link 逆向工程工作的实验性成果，缺少部分 AirDrop 功能，也可能与未来的 AirDrop 版本不兼容，并声明其与 Apple 无关联、未获 Apple 认可。最新发行版为 0.13.0（PyPI，2021-04-29）；所审阅的 master 提交（2026-08-17）此后只增加了引用文件并修改了链接。","AirDrop 只运行在 Apple Wireless Direct Link（AWDL）上，因此 OpenDrop 支持 macOS，或运行 SEEMOO 的 OWL 等开源 AWDL 实现的 Linux；默认网络接口为 awdl0。需要 Python 3.6+（分类标签列出 3.6–3.9）、较新的 libarchive（macOS 上用 Homebrew 版本）、openssl 命令，以及 setup.py 所列软件包，包括 zeroconf 和 libarchive-c。","默认情况下，它会自行生成自签名密钥和证书。要向默认处于“仅限联系人”模式的接收方发送，需要来自使用者自己 Mac 的 AirDrop 密钥、证书和 Apple ID 验证记录，README 称这些由 SEEMOO 另一款提取工具获得；仓库只附带 Apple 公开的根 CA 证书。","README 列出已知缺口：没有蓝牙低功耗触发，因此 Apple 接收方可能无法被发现；没有对端认证（既不校验 TLS 证书链，也不校验验证记录），并会自动接受所有传入文件；每次只能发送一个文件，链接只能发送而不能接收。CI 在 Python 3.6–3.9 上运行 black、flake8 和 pytest；其两项测试只是在回环接口上启动浏览器与服务器组件。","采用 GPL-3.0 许可。README 指向作者发表于 USENIX Security 2019 的 AWDL 论文和 2021 年的 PrivateDrop 论文以了解协议细节；AirDrop 和 AWDL 仍是 Apple 的协议。"],"targets":["protocol"],"url":"https://github.com/seemoo-lab/opendrop","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-30","additional_evidence_urls":["https://github.com/chipsec/chipsec/blob/c11756375417cc859e25a98e0788849ebd6eb8cc/chipsec/WARNING.txt","https://github.com/chipsec/chipsec/blob/c11756375417cc859e25a98e0788849ebd6eb8cc/docs/sphinx/installation/InstallLinux.rst","https://github.com/chipsec/chipsec/blob/c11756375417cc859e25a98e0788849ebd6eb8cc/docs/sphinx/installation/InstallWindows.rst","https://github.com/chipsec/chipsec/blob/c11756375417cc859e25a98e0788849ebd6eb8cc/docs/sphinx/installation/USBwithUEFIShell.rst","https://github.com/chipsec/chipsec/blob/c11756375417cc859e25a98e0788849ebd6eb8cc/docs/sphinx/usage/Running-Chipsec.rst","https://github.com/chipsec/chipsec/blob/c11756375417cc859e25a98e0788849ebd6eb8cc/docs/sphinx/usage/Interpreting-Results.rst","https://github.com/chipsec/chipsec/blob/c11756375417cc859e25a98e0788849ebd6eb8cc/chipsec/utilcmd/decode_cmd.py","https://github.com/chipsec/chipsec/blob/c11756375417cc859e25a98e0788849ebd6eb8cc/chipsec/utilcmd/uefi_cmd.py","https://github.com/chipsec/chipsec/blob/c11756375417cc859e25a98e0788849ebd6eb8cc/chipsec/modules/common/bios_wp.py","https://github.com/chipsec/chipsec/blob/c11756375417cc859e25a98e0788849ebd6eb8cc/live_image/README.md","https://github.com/chipsec/chipsec/blob/c11756375417cc859e25a98e0788849ebd6eb8cc/.github/workflows/tests.yml","https://github.com/chipsec/chipsec/blob/c11756375417cc859e25a98e0788849ebd6eb8cc/LICENSE","https://github.com/chipsec/chipsec/releases/tag/2.0.9"],"category":"firmware","description_en":"Platform security assessment framework, with Intel Corporation copyright notices, for analyzing PC hardware configuration, BIOS/UEFI system firmware and platform components from Windows, Linux or the UEFI shell. chipsec_main runs check modules that report whether expected protections are in place, such as BIOS and SPI flash write protection and locks, SMM and SMRR protection, memory-map locks and Secure Boot variables, as PASSED, FAILED, WARNING or informational results with JSON, XML and Markdown output. chipsec_util gives command-line and Python access to low-level interfaces and firmware data, including dumping the SPI flash to an image, decoding flash images into firmware volumes, files and NVRAM variables, and listing UEFI variables and tables.","description_zh":"平台安全评估框架（源码带有 Intel Corporation 版权声明），可在 Windows、Linux 或 UEFI Shell 中分析 PC 硬件配置、BIOS/UEFI 系统固件及平台组件。chipsec_main 运行检查模块，报告预期的保护措施是否到位，例如 BIOS 与 SPI 闪存的写保护和锁定、SMM 与 SMRR 保护、内存映射锁定及安全启动变量，结果分为 PASSED、FAILED、WARNING 和信息类，并可输出 JSON、XML 和 Markdown。chipsec_util 通过命令行和 Python 访问底层接口和固件数据，包括将 SPI 闪存转储为镜像、把闪存镜像解析为固件卷、文件和 NVRAM 变量，以及列出 UEFI 变量和表。","entry_url":"https://awesomerea.org/resources/chipsec/","entry_url_zh":"https://awesomerea.org/zh/resources/chipsec/","evidence_url":"https://github.com/chipsec/chipsec/blob/c11756375417cc859e25a98e0788849ebd6eb8cc/README.md","group":"tools","id":"chipsec","json_url":"https://awesomerea.org/resources/chipsec/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/chipsec/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/chipsec/index.md","name":"CHIPSEC","name_zh":"CHIPSEC 平台安全评估框架","record_type":"resource","relationship":"foundation","requirements":["Release at review: 2.0.9, published 2026-09-24 with a source zip; the reviewed chipsec2 commit is five configuration and bug-fix commits ahead. The installation guide says the PyPI package is outdated. The README sends older Intel platforms (clients before 12th-generation Core, servers before 3rd-generation Xeon Scalable) to the chipsec1 branch, and almost all bundled platform configurations are Intel ones.","Runs as Administrator/root and loads a kernel driver that is distributed as source and built locally. Linux needs Python 3.8+, kernel headers, gcc and nasm; Windows 8 to 11 and Server 2012 to 2025 need Visual Studio with the WDK, and loading the self-built driver requires disabling driver signature enforcement or enabling test signing. The UEFI shell route boots a USB drive with the repository's prebuilt UEFI Python 3.6.8 package and requires Secure Boot to be off; a mkosi recipe builds a live Linux image. The --no-driver option works only for some commands and modules.","chipsec/WARNING.txt says to use it only on test systems, never production machines: the driver gives user mode access to physical memory and other hardware resources, and incorrect hardware access can hang or crash the OS. Some utility commands write or erase SPI flash or change UEFI variables and can leave a system unbootable. A WARNING result requires manual analysis, and the results guide is marked as a draft.","Flash images and platform data come from the machine under test or the user's own dumps; the repository bundles no vendor firmware images. CI builds the Linux driver across distributions and runs unit tests on recorded platform data plus a QEMU UEFI-shell test. GPL-2.0."],"requirements_zh":["审阅时的版本为 2.0.9，于 2026-09-24 发布，附源码压缩包；所审阅的 chipsec2 分支提交领先五个配置与缺陷修复提交。安装指南称 PyPI 上的软件包已过时。README 建议较旧的 Intel 平台（12 代酷睿之前的客户端、第三代至强可扩展处理器之前的服务器）使用 chipsec1 分支，内置平台配置几乎全部针对 Intel。","需以管理员／root 身份运行，并加载以源码形式发布、需在本地编译的内核驱动。Linux 需要 Python 3.8+、内核头文件、gcc 和 nasm；Windows 8 至 11 及 Server 2012 至 2025 需要 Visual Studio 和 WDK，加载自行编译的驱动需关闭驱动签名强制或启用测试签名。UEFI Shell 方式需用仓库内预编译的 UEFI Python 3.6.8 包制作 USB 启动盘，并关闭安全启动；另有 mkosi 配置可构建 Linux Live 启动镜像。--no-driver 选项只适用于部分命令和模块。","chipsec/WARNING.txt 要求只在测试系统上使用，切勿用于生产机器：驱动会让用户态访问物理内存等硬件资源，错误的硬件访问可能导致操作系统挂起或崩溃。部分实用命令会写入或擦除 SPI 闪存、修改 UEFI 变量，可能使系统无法启动。WARNING 结果需要人工分析，结果说明文档也标注为草稿。","闪存镜像和平台数据来自被测机器或使用者自己的转储；仓库未附带任何厂商固件镜像。CI 会在多个发行版上编译 Linux 驱动，并基于录制的平台数据运行单元测试，另有 QEMU UEFI Shell 测试。采用 GPL-2.0 许可。"],"targets":["firmware"],"url":"https://github.com/chipsec/chipsec","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-30","additional_evidence_urls":["https://github.com/vaibhavpandeyvpz/apkstudio/blob/c6e2724786f6e25323d20db1c1ceb2160fbc1ee9/README.md#L28-L58","https://github.com/vaibhavpandeyvpz/apkstudio/blob/c6e2724786f6e25323d20db1c1ceb2160fbc1ee9/sources/tooldownloadworker.cpp#L280-L323","https://github.com/vaibhavpandeyvpz/apkstudio/blob/c6e2724786f6e25323d20db1c1ceb2160fbc1ee9/sources/apkdecompileworker.cpp","https://github.com/vaibhavpandeyvpz/apkstudio/blob/c6e2724786f6e25323d20db1c1ceb2160fbc1ee9/sources/apksignworker.cpp","https://github.com/vaibhavpandeyvpz/apkstudio/blob/c6e2724786f6e25323d20db1c1ceb2160fbc1ee9/CMakeLists.txt","https://github.com/vaibhavpandeyvpz/apkstudio/blob/c6e2724786f6e25323d20db1c1ceb2160fbc1ee9/.github/workflows/build.yml","https://github.com/vaibhavpandeyvpz/apkstudio/blob/c6e2724786f6e25323d20db1c1ceb2160fbc1ee9/LICENSE","https://github.com/vaibhavpandeyvpz/apkstudio/releases/tag/v6.3.0"],"category":"android","description_en":"Qt6 desktop front end that drives Apktool, JADX, uber-apk-signer and ADB from an IDE-style workspace for Android packages. It decodes an APK into smali and resources, optionally adds JADX Java output, then rebuilds, signs (with optional keystore generation and zipalign) and installs the result on a selected device; manufacturer framework files and extra Apktool arguments can be supplied. Decoded projects open in a file tree with syntax-highlighted smali, Java, XML and YAML editing, an image viewer, a hex editor and search across files.","description_zh":"基于 Qt6 的桌面前端，在 IDE 式工作区中调用 Apktool、JADX、uber-apk-signer 和 ADB 处理 Android 安装包。它将 APK 解码为 smali 和资源文件，可选附加 JADX 生成的 Java 代码，随后重新打包、签名（可生成密钥库并执行 zipalign）并安装到所选设备；还可指定厂商框架文件和额外的 Apktool 参数。解码后的项目以文件树形式打开，提供 smali、Java、XML 和 YAML 的语法高亮编辑、图片查看器、十六进制编辑器和跨文件搜索。","entry_url":"https://awesomerea.org/resources/apk-studio/","entry_url_zh":"https://awesomerea.org/zh/resources/apk-studio/","evidence_url":"https://github.com/vaibhavpandeyvpz/apkstudio/blob/c6e2724786f6e25323d20db1c1ceb2160fbc1ee9/README.md","group":"tools","id":"apk-studio","json_url":"https://awesomerea.org/resources/apk-studio/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/apk-studio/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/apk-studio/index.md","name":"APK Studio","name_zh":"APK Studio Android 逆向 IDE","record_type":"resource","relationship":"foundation","requirements":["Release at review: v6.3.0, published 2026-01-05 from the reviewed master commit, with a Linux x86_64 AppImage, a Windows x64 ZIP and a macOS DMG. The 6.x series began with v6.0.0 on 2025-12-03, following 5.2.4 from 2020, and no commits have landed since 2026-01-05. Source builds need CMake 3.16+, Qt 6.10.1+ (Core, Gui, Network, Widgets), a C++17 compiler, Git and the QHexView submodule.","The decoding, decompilation, signing and installation are done by the external tools. On first launch APK Studio can download Microsoft OpenJDK 11.0.29, the latest Apktool, JADX and uber-apk-signer GitHub releases and Google's latest platform-tools, or use installations configured in Settings; only the JDK version is pinned, and on macOS the automatic JDK is the Apple-silicon package. Its console shows the commands actually run, and the README asks users to separate Apktool problems from APK Studio issues.","APKs and any manufacturer framework files are supplied by the user; installation needs a device reachable through ADB. Decoded smali and JADX Java output are reconstructions to be checked, not original source. The README reports CI builds on Windows, Linux and macOS, and its disclaimer says the tool is not intended for piracy or other non-legal uses.","LGPL-3.0."],"requirements_zh":["审阅时的版本为 v6.3.0，于 2026-01-05 基于所审阅的 master 提交发布，提供 Linux x86_64 AppImage、Windows x64 ZIP 和 macOS DMG。6.x 系列始于 2025-12-03 发布的 v6.0.0，此前的 5.2.4 发布于 2020 年；2026-01-05 之后仓库再无新提交。从源码构建需要 CMake 3.16+、Qt 6.10.1+（Core、Gui、Network、Widgets 组件）、C++17 编译器、Git 以及 QHexView 子模块。","解码、反编译、签名和安装均由外部工具完成。首次启动时，APK Studio 可自动下载 Microsoft OpenJDK 11.0.29、Apktool、JADX 和 uber-apk-signer 在 GitHub 上的最新版本以及 Google 最新的 platform-tools，也可在设置中改用已有安装；只有 JDK 版本是固定的，且在 macOS 上自动下载的是 Apple 芯片版 JDK。其控制台会显示实际执行的命令，README 请用户区分 Apktool 本身的问题与 APK Studio 的问题。","APK 及所需的厂商框架文件由使用者自备；安装到设备需要可通过 ADB 连接的设备。解码得到的 smali 和 JADX 生成的 Java 代码属于重建结果，需要核对，并非原始源码。README 称其在 Windows、Linux 和 macOS 上运行 CI 构建，免责声明表示该工具不用于盗版或其他非法用途。","采用 LGPL-3.0 许可。"],"targets":["app"],"url":"https://github.com/vaibhavpandeyvpz/apkstudio","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-30","additional_evidence_urls":["https://github.com/Hypfer/Valetudo/blob/78267517d3036258322b6760ba8a9979d197e249/docs/pages/faq.md","https://github.com/Hypfer/Valetudo/blob/78267517d3036258322b6760ba8a9979d197e249/docs/pages/general/newcomer-guide.md","https://github.com/Hypfer/Valetudo/blob/78267517d3036258322b6760ba8a9979d197e249/docs/pages/general/getting-started.md","https://github.com/Hypfer/Valetudo/blob/78267517d3036258322b6760ba8a9979d197e249/docs/pages/general/why-not-valetudo.md","https://github.com/Hypfer/Valetudo/blob/78267517d3036258322b6760ba8a9979d197e249/docs/pages/general/supported-robots.md","https://github.com/Hypfer/Valetudo/blob/78267517d3036258322b6760ba8a9979d197e249/backend/lib/miio/Dummycloud.js","https://github.com/Hypfer/Valetudo/blob/78267517d3036258322b6760ba8a9979d197e249/backend/lib/msmart/MSmartDummycloud.js","https://github.com/Hypfer/Valetudo/blob/78267517d3036258322b6760ba8a9979d197e249/assets/kaitai_structs/readme.md","https://github.com/Hypfer/Valetudo/blob/78267517d3036258322b6760ba8a9979d197e249/assets/protobuf/midea.proto","https://github.com/Hypfer/Valetudo/blob/78267517d3036258322b6760ba8a9979d197e249/package.json","https://github.com/Hypfer/Valetudo/blob/78267517d3036258322b6760ba8a9979d197e249/backend/package.json","https://github.com/Hypfer/Valetudo/blob/78267517d3036258322b6760ba8a9979d197e249/.github/workflows/nodejs.yml","https://github.com/Hypfer/Valetudo/blob/78267517d3036258322b6760ba8a9979d197e249/frontend/src/assets/raw/credits.md","https://github.com/Hypfer/Valetudo/blob/78267517d3036258322b6760ba8a9979d197e249/LICENSE","https://github.com/Hypfer/Valetudo/releases/tag/2026.10.0"],"category":"reconstruction-cases","description_en":"Replaces the vendor cloud of supported robot vacuums with a local service that runs on the rooted robot beside the vendor firmware and emulates the cloud endpoints that firmware expects, including a miio dummycloud and a counterpart for Midea's MSmart protocol. Its FAQ says each new vendor backend meant reverse engineering data formats, authentication and communication without vendor documentation; Valetudo converts the proprietary map formats into one ValetudoMap format and keeps Kaitai Struct descriptions of Dreame, Roborock and Viomi map files and a Midea protobuf schema as references. It adds a web interface, a REST API with Swagger UI and MQTT/Home Assistant integration, while feature parity with the vendor apps is an explicit non-goal.","description_zh":"用运行在已 root 机器人上、与厂商固件并存的本地服务取代受支持扫地机器人的厂商云，并模拟固件所期待的云端接口，包括 miio 模拟云（dummycloud）以及对应 Midea MSmart 协议的实现。其 FAQ 说明，每支持一个新厂商，都需要在没有厂商文档的情况下逆向分析数据格式、认证和通信；Valetudo 将各家专有地图格式转换为统一的 ValetudoMap 格式，并保留 Dreame、Roborock、Viomi 地图文件的 Kaitai Struct 描述和一份 Midea protobuf 模式作为参考。它提供网页界面、带 Swagger UI 的 REST API 以及 MQTT／Home Assistant 集成，但明确不以与厂商应用功能对等为目标。","entry_url":"https://awesomerea.org/resources/valetudo-robot-cloud-replacement-case/","entry_url_zh":"https://awesomerea.org/zh/resources/valetudo-robot-cloud-replacement-case/","evidence_url":"https://github.com/Hypfer/Valetudo/blob/78267517d3036258322b6760ba8a9979d197e249/README.md","group":"cases","id":"valetudo-robot-cloud-replacement-case","json_url":"https://awesomerea.org/resources/valetudo-robot-cloud-replacement-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/valetudo-robot-cloud-replacement-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/valetudo-robot-cloud-replacement-case/index.md","name":"Valetudo: local replacement for robot-vacuum vendor clouds","name_zh":"Valetudo：扫地机器人厂商云的本地替代","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the 2026.10.0 release commit of 2026-10-18. The README says Valetudo is not a custom firmware but a 'brain parasite' for the vendor firmware, whose own functions it relies on. The backend has Dreame, Roborock, Viomi, 3irobotix and Midea implementations, and the supported-robots page lists 50 model entries under 10 brand headings and calls the list exhaustive.","Requires a supported robot that its owner has already rooted. The docs describe rooting as model-specific and permanent ('Reverting to stock is impossible'), and say the vendor app stops working because cloud connectivity is cut. The repository and its releases ship no vendor firmware: release assets are Valetudo's own armv7, armv7-lowmem and aarch64 binaries with UPX-compressed variants, an OpenAPI schema and a release manifest, while the repository also commits pkg Node.js base binaries for packaging and small captured map files as test fixtures.","Valetudo runs on the robot's Linux system as a static Node.js 22 binary built with pkg; development needs Node.js >=20 according to the root package.json. The docs require Linux and computer skills, and sometimes hardware work, for installation, and offer peer support only.","CI on Node.js 22 runs type checks, lint, the frontend and backend builds and the backend node:test suite, including Dreame, Roborock and 3irobotix map-parser tests on captured maps and miio and MSmart packet tests. The supported-robots page says each listed robot was tested by the author personally unless noted. These are project-reported checks.","Apache-2.0, although the README describes its governance as 'Freeware with source available'. The Kaitai structs declare CC-BY-SA-4.0, and a bundled robot model and tracker song are credited under CC-BY-NC-SA. Vendor firmware, apps and clouds keep their own terms."],"requirements_zh":["审阅基于 2026-10-18 的 2026.10.0 发布提交。README 称 Valetudo 不是定制固件，而是厂商固件的“脑寄生虫”，依赖固件自身的功能运行。后端实现了 Dreame、Roborock、Viomi、3irobotix 和 Midea 的支持；受支持机器人页面在 10 个品牌标题下列出 50 个型号条目，并声明该列表是完整的。","需要一台机主已自行 root 的受支持机器人。文档说明 root 因型号而异且不可逆（“无法恢复原厂状态”），并指出由于与厂商云的连接被切断，厂商应用将无法使用。仓库及其发布版本均不包含厂商固件：发布资源是 Valetudo 自己的 armv7、armv7-lowmem 和 aarch64 程序及其 UPX 压缩版本、OpenAPI 模式文件和发布清单；仓库另外提交了用于打包的 pkg Node.js 基础二进制，以及作为测试样本的小型地图采集文件。","Valetudo 以 pkg 构建的静态 Node.js 22 程序运行在机器人的 Linux 系统上；根目录 package.json 规定开发需要 Node.js >=20。文档指出，安装需要 Linux 和计算机知识，有时还需要硬件操作，且只提供同伴式互助支持。","CI 在 Node.js 22 上运行类型检查、代码风格检查、前后端构建以及后端 node:test 测试套件，包括基于采集地图的 Dreame、Roborock、3irobotix 地图解析测试，以及 miio 和 MSmart 报文测试。受支持机器人页面称，除另有说明外，所列机器人均由作者亲自测试。这些都是项目报告的检查。","采用 Apache-2.0 许可，但 README 将其治理方式描述为“源码可见的免费软件”。Kaitai 结构描述声明 CC-BY-SA-4.0，内置的机器人模型和 tracker 音乐注明采用 CC-BY-NC-SA。厂商固件、应用和云服务各自保留其条款。"],"targets":["firmware","protocol"],"url":"https://github.com/Hypfer/Valetudo","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-30","additional_evidence_urls":["https://github.com/denandz/sourcemapper/blob/f739bd5dd266b0d0e2cfa17c0a132f79bd9a5ba9/README.md#L124","https://github.com/denandz/sourcemapper/blob/f739bd5dd266b0d0e2cfa17c0a132f79bd9a5ba9/main.go#L22-L28","https://github.com/denandz/sourcemapper/blob/f739bd5dd266b0d0e2cfa17c0a132f79bd9a5ba9/main.go#L290-L327","https://github.com/denandz/sourcemapper/blob/f739bd5dd266b0d0e2cfa17c0a132f79bd9a5ba9/go.mod","https://github.com/denandz/sourcemapper/blob/f739bd5dd266b0d0e2cfa17c0a132f79bd9a5ba9/LICENSE","https://pulsesecurity.co.nz/articles/javascript-from-sourcemaps"],"category":"web-analysis","description_en":"Go command-line tool that recreates a web front end's original JavaScript source tree from a source map generated by webpack or a similar bundler, writing each embedded source file under the path the map records. It takes a .map file by URL or local path, walks a directory of .map files, or fetches a JavaScript file and follows its sourceMappingURL comment or SourceMap response header, including inline data: maps.","description_zh":"Go 编写的命令行工具，可根据 webpack 等打包工具生成的源映射（source map）重建网站前端原有的 JavaScript 源码目录树，并把映射中内嵌的每个源文件写到其记录的路径下。它可通过 URL 或本地路径读取 .map 文件，递归处理整个目录中的 .map 文件，也可抓取 JavaScript 文件并跟随其中的 sourceMappingURL 注释或 SourceMap 响应头，内联的 data: 映射同样支持。","entry_url":"https://awesomerea.org/resources/sourcemapper/","entry_url_zh":"https://awesomerea.org/zh/resources/sourcemapper/","evidence_url":"https://github.com/denandz/sourcemapper/blob/f739bd5dd266b0d0e2cfa17c0a132f79bd9a5ba9/README.md","group":"tools","id":"sourcemapper","json_url":"https://awesomerea.org/resources/sourcemapper/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/sourcemapper/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sourcemapper/index.md","name":"sourcemapper","name_zh":"sourcemapper 源映射源码还原工具","record_type":"resource","relationship":"foundation","requirements":["The project publishes no releases or tags. The README installs it with go install, a clone-and-build, or the BlackArch package; go.mod declares Go 1.16 and lists no third-party modules. The reviewed master commit, dated 2026-07-24, also adds the -dir batch mode and refuses to read a local path named by a remote sourceMappingURL.","Only one of -url, -jsurl or -dir is accepted per run, and -output is required. Remote fetches can carry extra request headers, go through a proxy or skip TLS verification. The README warns that a JavaScript file parsed with -jsurl can make sourcemapper send a GET request to any URL it names as its source map.","The input is a source map the user may inspect. The tool reads only the map's version, sources and sourcesContent fields, so maps without embedded sourcesContent are rejected and minified bundles without a map are out of scope; the mappings are not used, and output is the bundler's captured source text, not code verified against the deployed bundle.","BSD-3-Clause. Recovered front-end code remains subject to the site owner's rights. The README links a 2018 Pulse Security article describing its use for front-end source review in a penetration test."],"requirements_zh":["该项目不发布任何版本或标签。README 给出的安装方式为 go install、克隆后自行构建或使用 BlackArch 软件包；go.mod 声明 Go 1.16，且不依赖任何第三方模块。所审阅的 master 提交日期为 2026-07-24，该版本还加入了 -dir 批量模式，并拒绝读取远程 sourceMappingURL 所指向的本地路径。","每次运行只能指定 -url、-jsurl 或 -dir 之一，且必须给出 -output。远程抓取时可附加请求头、经由代理或跳过 TLS 证书校验。README 提醒，使用 -jsurl 解析的 JavaScript 文件可让 sourcemapper 向其声明为源映射的任意 URL 发出 GET 请求。","输入应为使用者有权查看的源映射。工具只读取映射中的 version、sources 和 sourcesContent 字段，因此未内嵌 sourcesContent 的映射会被拒绝，没有映射的压缩代码也不在其处理范围内；它不使用 mappings 字段，输出的是打包工具当时记录的源码文本，并未与线上部署的打包产物核对。","采用 BSD-3-Clause 许可。还原出的前端代码仍受网站所有者的权利约束。README 链接了 Pulse Security 2018 年的一篇文章，介绍在渗透测试中借助它审查前端源码的用法。"],"targets":["website"],"url":"https://github.com/denandz/sourcemapper","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-30","additional_evidence_urls":["https://github.com/deathkiller/jazz2-native/blob/c18381c246271d76c70af723a8ab5615028e3c6c/LICENSE","https://github.com/deathkiller/jazz2-native/blob/c18381c246271d76c70af723a8ab5615028e3c6c/CMakeLists.txt","https://github.com/deathkiller/jazz2-native/blob/c18381c246271d76c70af723a8ab5615028e3c6c/Docs/ThirdParty.dox","https://github.com/deathkiller/jazz2-native/blob/c18381c246271d76c70af723a8ab5615028e3c6c/Docs/AssetPacker.dox","https://github.com/deathkiller/jazz2-native/blob/c18381c246271d76c70af723a8ab5615028e3c6c/Docs/Consoles.dox","https://github.com/deathkiller/jazz2-native/blob/c18381c246271d76c70af723a8ab5615028e3c6c/Docs/MovementAccuracyReference.dox","https://github.com/deathkiller/jazz2-native/blob/c18381c246271d76c70af723a8ab5615028e3c6c/Sources/Jazz2/Tests/README.md","https://github.com/deathkiller/jazz2-native/blob/c18381c246271d76c70af723a8ab5615028e3c6c/Sources/Jazz2/Tests/Results/README.md","https://github.com/deathkiller/jazz2-native/tree/c18381c246271d76c70af723a8ab5615028e3c6c/Content","https://github.com/deathkiller/jazz2-native/blob/c18381c246271d76c70af723a8ab5615028e3c6c/.github/workflows/linux.yml","https://github.com/deathkiller/jazz2-native/blob/c18381c246271d76c70af723a8ab5615028e3c6c/.github/workflows/windows.yml","https://github.com/deathkiller/jazz2/releases/tag/3.9.0"],"category":"reconstruction-cases","description_en":"Reimplements Jazz Jackrabbit 2 (1998) as a native C++ game on an extensively modified nCine engine, converting the user’s original game files into its own cache on first start. It runs on desktop, mobile, web and many homebrew console targets, with multiplayer, an enhanced Reforged mode and partial JJ2+ and MLLE support. A two-sided trajectory probe checks its non-Reforged movement against the original game, and the project reports 376 of 406 scenarios within 25 px/s.","description_zh":"以原生 C++ 在深度修改的 nCine 引擎上重新实现《爵士兔 2》（Jazz Jackrabbit 2，1998），首次启动时把使用者的原版游戏文件转换为自己的缓存。它可在桌面、移动设备、网页和众多自制软件主机平台上运行，支持多人游戏、增强的 Reforged 模式，并部分支持 JJ2+ 与 MLLE。项目用一个双向轨迹探针把非 Reforged 模式的移动与原版游戏对照，报告 406 个场景中有 376 个误差在 25 px/s 以内。","entry_url":"https://awesomerea.org/resources/jazz2-resurrection-engine-case/","entry_url_zh":"https://awesomerea.org/zh/resources/jazz2-resurrection-engine-case/","evidence_url":"https://github.com/deathkiller/jazz2-native/blob/c18381c246271d76c70af723a8ab5615028e3c6c/README.md","group":"cases","id":"jazz2-resurrection-engine-case","json_url":"https://awesomerea.org/resources/jazz2-resurrection-engine-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/jazz2-resurrection-engine-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/jazz2-resurrection-engine-case/index.md","name":"Jazz² Resurrection: a native C++ reimplementation of Jazz Jackrabbit 2","name_zh":"Jazz² Resurrection：《爵士兔 2》的原生 C++ 重新实现","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the master commit of 2026-10-17, just after release 3.9.0 of the same day, which reworked physics; release packages are published in the older deathkiller/jazz2 repository. README lists the Shareware Demo, Holiday Hare ’98, The Secret Files and Christmas Chronicles as supported, with partial JJ2+ and MLLE features, and marks the Nintendo 64, Dreamcast, Wii, GameCube and PlayStation 3 ports as not yet tested on real hardware. README calls the game fully rewritten in C++ and does not describe decompiling the original executable; the non-Reforged movement constants come from measurements of the original game.","Every build needs the contents of the user’s original Jazz Jackrabbit 2 directory, a retail version or the Shareware Demo, placed in a Source folder and converted into a cache on first start. On Nintendo 64, Dreamcast, PlayStation 2, GameCube and 3DS the content must first be converted with the project’s AssetPacker, and README says the resulting images can’t be distributed. The repository’s Content directory holds the game’s own fonts, extra animations, metadata and translations; the Windows 3.9.0 package contains it with an empty Source placeholder, and README says the Docker server image never contains original files.","README documents Windows, Linux, macOS, iOS, Android, Nintendo Switch, Web (Emscripten), a libretro core, Xbox (UWP), AmigaOS 3.x, AmigaOS 4.1 and MorphOS, Nintendo 64, Dreamcast, Wii, GameCube, 3DS, PSP, PS2, PS3 and Vita, plus a Docker dedicated server; desktop builds need an OpenGL 3.3 or OpenGL ES 3.0 GPU. Builds use CMake 3.15+, which downloads the prebuilt dependency set by default unless system libraries are used. Console builds use their own homebrew SDKs and toolchain files, and several console targets need custom firmware.","The Linux and Windows workflows build and package without running a test suite. An optional physics probe (WITH_PHYSICS_PROBE) drives the same scripted scenarios in this engine and in the original game with JJ2+ and logs every tick; the committed traces and comparison scripts let changes be checked without the original. For the 144 FPS engine capture, Results/README.md reports a median speed-distribution error of 0.1 px/s, 376 of 406 scenarios within 25 px/s and 70 of 397 scenarios whose animation-segment counts differ by over 25%. These are project-reported figures.","LICENSE is GPL-3.0; Docs/ThirdParty.dox lists the third-party components, including parts of nCine (MIT), with their own licenses. Jazz Jackrabbit 2 and its data keep their owners’ rights."],"requirements_zh":["审阅版本为 2026-10-17 的 master 提交，紧随同日发布、重做了物理系统的 3.9.0 版；发布包放在较早的 deathkiller/jazz2 仓库中。README 列出支持的版本为 Shareware Demo、Holiday Hare ’98、The Secret Files 和 Christmas Chronicles，并部分支持 JJ2+ 与 MLLE 功能；Nintendo 64、Dreamcast、Wii、GameCube 和 PlayStation 3 移植版标注为尚未在实机上测试。README 称游戏以 C++ 完全重写，没有提到反编译原版可执行文件；非 Reforged 模式的移动常量来自对原版游戏的测量。","所有版本都需要把使用者原版 Jazz Jackrabbit 2 目录的内容（零售版或 Shareware Demo）放入 Source 文件夹，首次启动时转换为缓存。在 Nintendo 64、Dreamcast、PlayStation 2、GameCube 和 3DS 上，内容必须先用项目的 AssetPacker 转换，README 说明由此生成的镜像不能分发。仓库的 Content 目录存放游戏自有的字体、额外动画、元数据和翻译；Windows 3.9.0 发布包包含该目录和一个空的 Source 占位文件夹，README 称 Docker 服务器镜像从不包含原版文件。","README 介绍了 Windows、Linux、macOS、iOS、Android、Nintendo Switch、网页（Emscripten）、libretro 核心、Xbox（UWP）、AmigaOS 3.x、AmigaOS 4.1 与 MorphOS，以及 Nintendo 64、Dreamcast、Wii、GameCube、3DS、PSP、PS2、PS3 和 Vita 版本，另有 Docker 专用服务器；桌面版需要支持 OpenGL 3.3 或 OpenGL ES 3.0 的显卡。构建使用 CMake 3.15+，默认下载预编译的依赖库，也可改用系统库。主机版使用各自的自制软件 SDK 与工具链文件，其中几个主机平台需要自定义固件。","Linux 和 Windows 工作流只构建和打包，不运行测试套件。可选的物理探针（WITH_PHYSICS_PROBE）在本引擎和装有 JJ2+ 的原版游戏中执行相同的脚本化场景，并按 tick 逐一记录位置与速度；仓库提交的轨迹和对比脚本可在没有原版游戏的情况下检查改动。对于 144 FPS 的引擎采集，Results/README.md 报告速度分布误差中位数为 0.1 px/s，406 个场景中有 376 个在 25 px/s 以内，397 个场景中有 70 个的动画片段数相差超过 25%。这些是项目报告的数据。","LICENSE 为 GPL-3.0；Docs/ThirdParty.dox 列出了各第三方组件及其许可证，其中包括部分 nCine 代码（MIT）。Jazz Jackrabbit 2 及其数据仍归权利人所有。"],"targets":["game"],"url":"https://github.com/deathkiller/jazz2-native","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-30","additional_evidence_urls":["https://github.com/KeenSecurityLab/BinAbsInspector/blob/658b41389b2fc16c2fcd4bfc5610f6c26d31ca6f/README.md#L5-L23","https://github.com/KeenSecurityLab/BinAbsInspector/blob/658b41389b2fc16c2fcd4bfc5610f6c26d31ca6f/README.md#L25-L81","https://github.com/KeenSecurityLab/BinAbsInspector/blob/658b41389b2fc16c2fcd4bfc5610f6c26d31ca6f/Dockerfile","https://github.com/KeenSecurityLab/BinAbsInspector/blob/658b41389b2fc16c2fcd4bfc5610f6c26d31ca6f/.github/workflows/integration_test.yml","https://github.com/KeenSecurityLab/BinAbsInspector/blob/658b41389b2fc16c2fcd4bfc5610f6c26d31ca6f/LICENSE","https://github.com/KeenSecurityLab/BinAbsInspector/releases/tag/v0.1","https://keenlab.tencent.com/zh/2022/04/20/2022-BinAbsInspector-public-release/"],"category":"native-analysis","description_en":"Static vulnerability scanner from Tencent Keen Lab that runs as a Ghidra extension or headless script and applies abstract interpretation to Ghidra's P-code rather than to assembly, covering x86, x64, ARMv7 and AArch64 binaries. Its flow- and context-sensitive interprocedural analysis, with configurable value-set size and call-string depth, optional Z3 constraint solving and models of external functions, feeds checkers for 13 CWE classes, including command injection, buffer overflows and out-of-bounds access, format strings, integer overflow, double free, use-after-free and NULL dereference. Warnings list the instruction address and its call context, in the Ghidra console or as JSON.","description_zh":"腾讯科恩实验室开发的二进制静态漏洞扫描工具，以 Ghidra 扩展或无界面脚本方式运行，在 Ghidra 的 P-code 而非汇编上进行抽象解释，支持 x86、x64、ARMv7 和 AArch64 二进制。它执行流敏感、上下文敏感的过程间分析，可配置值集合大小和调用串深度，可选用 Z3 约束求解，并对外部函数建模，在此基础上运行 13 类 CWE 检查，涵盖命令注入、缓冲区溢出与越界访问、格式化字符串、整数溢出、重复释放、释放后使用和空指针解引用等。告警会列出指令地址及其调用上下文，显示在 Ghidra 控制台中或以 JSON 输出。","entry_url":"https://awesomerea.org/resources/binabsinspector/","entry_url_zh":"https://awesomerea.org/zh/resources/binabsinspector/","evidence_url":"https://github.com/KeenSecurityLab/BinAbsInspector/blob/658b41389b2fc16c2fcd4bfc5610f6c26d31ca6f/README.md","group":"tools","id":"binabsinspector","json_url":"https://awesomerea.org/resources/binabsinspector/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/binabsinspector/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binabsinspector/index.md","name":"BinAbsInspector","name_zh":"BinAbsInspector 二进制漏洞静态扫描工具","record_type":"resource","relationship":"foundation","requirements":["The only release, v0.1 from 2022-04-20, is an extension ZIP built for Ghidra 10.1.2. The reviewed main commit is 20 commits ahead; its Dockerfile and CI workflows use Ghidra 10.4 with JDK 17, and the last commit dates from 2024-05-14, so compatibility with current Ghidra releases is not documented. Source builds use Gradle 7.x (tested with 7.4) against a local Ghidra installation.","Z3 is required (tested version 4.8.15): the README suggests replacing the Java bindings bundled in lib/ with a matching package and installing the native library separately, not from Linux distribution packages. Runs use Ghidra's headless analyzer, the Script Manager after default auto-analysis in the GUI, or the provided Dockerfile, which builds Z3 from source and defaults to an Ubuntu mirror in China that the UBUNTU_MIRROR argument overrides.","Binaries are supplied by the user. Warnings are leads for manual review, not confirmed vulnerabilities; Keen Lab's release article reports its own Juliet test-suite comparison with cwe_checker on x86, x64 and ARMv7 for four CWE classes, scored by true and false positives and negatives.","GPL-3.0."],"requirements_zh":["唯一的发布版本 v0.1 发布于 2022-04-20，是针对 Ghidra 10.1.2 构建的扩展 ZIP。所审阅的 main 提交比它多 20 个提交；其中的 Dockerfile 和 CI 工作流使用 Ghidra 10.4 和 JDK 17，最后一次提交在 2024-05-14，因此与当前 Ghidra 版本的兼容性没有文档说明。从源码构建需使用 Gradle 7.x（测试版本 7.4），并依赖本地安装的 Ghidra。","需要 Z3（测试版本 4.8.15）：README 建议用版本匹配的软件包替换 lib/ 中自带的 Java 绑定，并另行安装原生库，Linux 上不要使用发行版软件包。可通过 Ghidra 无界面分析器运行，也可在图形界面完成默认自动分析后从 Script Manager 启动，或使用项目提供的 Dockerfile；该 Dockerfile 从源码编译 Z3，默认使用国内 Ubuntu 镜像源，可通过 UBUNTU_MIRROR 参数更改。","待分析的二进制由使用者自备。告警只是需要人工复核的线索，并非已确认的漏洞；科恩实验室的发布文章给出了项目自行完成的 Juliet 测试集评测，在 x86、x64 和 ARMv7 上就四类 CWE 与 cwe_checker 对比，按真／假阳性和真／假阴性计分。","采用 GPL-3.0 许可。"],"targets":["binary"],"url":"https://github.com/KeenSecurityLab/BinAbsInspector","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-30","additional_evidence_urls":["https://github.com/libimobiledevice/libimobiledevice/blob/fa0f79190142bc309307967c058f89c1b36eb6b8/NEWS","https://github.com/libimobiledevice/libimobiledevice/blob/fa0f79190142bc309307967c058f89c1b36eb6b8/configure.ac","https://github.com/libimobiledevice/libimobiledevice/blob/fa0f79190142bc309307967c058f89c1b36eb6b8/.github/workflows/build.yml","https://github.com/libimobiledevice/libimobiledevice/tree/fa0f79190142bc309307967c058f89c1b36eb6b8/src","https://github.com/libimobiledevice/libimobiledevice/blob/fa0f79190142bc309307967c058f89c1b36eb6b8/3rd_party/README.md","https://github.com/libimobiledevice/libimobiledevice/blob/fa0f79190142bc309307967c058f89c1b36eb6b8/COPYING","https://github.com/libimobiledevice/libimobiledevice/releases/tag/1.4.0"],"category":"protocol-analysis","description_en":"C library and command-line tools that speak iOS devices' native service protocols without Apple's proprietary libraries or a jailbreak. Over usbmuxd or Wi-Fi sync it implements lockdownd pairing and services such as AFC file access, backup, app installation, crash reports, syslog, debugserver and WebKit inspection, plus Cython bindings.","description_zh":"用 C 编写的库及命令行工具，无需 Apple 的专有库或越狱即可使用 iOS 设备的原生服务协议通信。它经 usbmuxd 或 Wi-Fi 同步连接，实现 lockdownd 配对，以及 AFC 文件访问、备份、应用安装、崩溃报告、系统日志、debugserver 和 WebKit 检查等服务，并提供 Cython 绑定。","entry_url":"https://awesomerea.org/resources/libimobiledevice/","entry_url_zh":"https://awesomerea.org/zh/resources/libimobiledevice/","evidence_url":"https://github.com/libimobiledevice/libimobiledevice/blob/fa0f79190142bc309307967c058f89c1b36eb6b8/README.md","group":"tools","id":"libimobiledevice","json_url":"https://awesomerea.org/resources/libimobiledevice/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/libimobiledevice/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/libimobiledevice/index.md","name":"libimobiledevice","name_zh":"libimobiledevice iOS 设备协议库","record_type":"resource","relationship":"foundation","requirements":["Latest release: 1.4.0 (2025-10-10), which NEWS calls a development release; it added MbedTLS support, Apple TV wireless pairing and iOS 17+ personalized developer disk image mounting, among other changes. The reviewed master commit of 2026-06-10 is nine commits ahead, mostly AFC and afcclient fixes.","Source builds use autotools and pkg-config with libplist 2.3.0+, libusbmuxd 2.0.2+, libimobiledevice-glue 1.3.0+ and libtatsu 1.0.3+ from the same organization (README says libtatsu must be built from source), plus OpenSSL by default, GnuTLS or MbedTLS; Doxygen and Cython are optional. The README dependency list includes the usbmuxd daemon and says the library is tested on Linux, macOS, Windows and Android.","Work starts from an iOS device the user controls and pairs with the host (idevicepair); the repository contains no Apple software. Screenshots and location simulation need a mounted Apple developer disk image, which is not included. README says library documentation is not yet available and points to the bundled utilities' source; each utility has a manual page.","GitHub Actions builds and installs the library on Ubuntu, macOS and Windows (MSYS2 MINGW64 and MINGW32) against the latest builds of its sibling libraries, on pushes, pull requests and a monthly schedule. The repository has no test suite, and no workflow exercises a device.","LGPL-2.1 for the library and utilities. The bundled ed25519 (zlib-style license) and Stanford SRP-based libsrp6a-sha512 (BSD-style) keep their own licenses. README states that the project is independent and not authorized, sponsored or approved by Apple."],"requirements_zh":["最新发行版为 1.4.0（2025-10-10），NEWS 称其为开发版；该版本新增了 MbedTLS 支持、Apple TV 无线配对以及 iOS 17+ 个性化开发者磁盘映像挂载等改动。所审阅的 master 提交（2026-06-10）比它多 9 个提交，主要是 AFC 与 afcclient 的修复。","源码构建使用 autotools 和 pkg-config，依赖同一组织维护的 libplist 2.3.0+、libusbmuxd 2.0.2+、libimobiledevice-glue 1.3.0+ 和 libtatsu 1.0.3+（README 称 libtatsu 需从源码构建），TLS 默认用 OpenSSL，也可选 GnuTLS 或 MbedTLS；Doxygen 与 Cython 为可选项。README 的依赖列表包含 usbmuxd 守护进程，并称该库已在 Linux、macOS、Windows 和 Android 上测试。","使用前提是一台由使用者掌控、并与主机完成配对（idevicepair）的 iOS 设备；仓库不含任何 Apple 软件。截屏和模拟定位需要挂载 Apple 开发者磁盘映像，仓库不提供该映像。README 称库的使用文档尚未提供，建议参考随附实用工具的源码；每个实用工具都有手册页。","GitHub Actions 在推送、拉取请求及每月定时任务中，针对其同系列库的最新构建，在 Ubuntu、macOS 和 Windows（MSYS2 MINGW64 与 MINGW32）上构建并安装该库。仓库没有测试套件，也没有工作流连接实际设备运行。","库与实用工具采用 LGPL-2.1 许可。随附的 ed25519（zlib 风格许可）和基于 Stanford SRP 的 libsrp6a-sha512（BSD 风格许可）保留各自许可。README 声明本项目为独立软件，未经 Apple 授权、赞助或认可。"],"targets":["app","protocol"],"url":"https://github.com/libimobiledevice/libimobiledevice","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-30","additional_evidence_urls":["https://github.com/mgechev/ngrev/blob/edd1ee316a7f2a0d9ddbf94ae91bb0b624997edb/README.md#L37-L48","https://github.com/mgechev/ngrev/blob/edd1ee316a7f2a0d9ddbf94ae91bb0b624997edb/package.json","https://github.com/mgechev/ngrev/blob/edd1ee316a7f2a0d9ddbf94ae91bb0b624997edb/src/electron/model/project.ts","https://github.com/mgechev/ngrev/blob/edd1ee316a7f2a0d9ddbf94ae91bb0b624997edb/.github/workflows/build.yml","https://github.com/mgechev/ngrev/blob/edd1ee316a7f2a0d9ddbf94ae91bb0b624997edb/e2e/main.e2e.ts","https://github.com/mgechev/ngrev/blob/edd1ee316a7f2a0d9ddbf94ae91bb0b624997edb/LICENSE.md","https://github.com/mgechev/ngrev/releases/tag/v0.0.35"],"category":"web-analysis","description_en":"Electron desktop application that statically analyzes an Angular project's TypeScript sources and draws interactive graphs of its NgModules, components, directives, pipes and providers and how they depend on each other, without running the application. A project is loaded through its tsconfig file; views move from the module tree to individual modules, templates and providers, with fuzzy symbol search and PNG export of the current graph.","description_zh":"一款 Electron 桌面应用，对 Angular 项目的 TypeScript 源码做静态分析，以交互式图形展示其中的 NgModule、组件、指令、管道和服务提供者及其依赖关系，无需运行该应用。通过项目的 tsconfig 文件载入后，可从模块树逐层查看单个模块、模板和提供者，支持符号模糊搜索，并可将当前图形导出为 PNG。","entry_url":"https://awesomerea.org/resources/ngrev/","entry_url_zh":"https://awesomerea.org/zh/resources/ngrev/","evidence_url":"https://github.com/mgechev/ngrev/blob/edd1ee316a7f2a0d9ddbf94ae91bb0b624997edb/README.md","group":"tools","id":"ngrev","json_url":"https://awesomerea.org/resources/ngrev/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ngrev/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ngrev/index.md","name":"ngrev","name_zh":"ngrev Angular 应用结构分析工具","record_type":"resource","relationship":"foundation","requirements":["Dormant: the latest release is v0.0.35 of 2021-01-18, with an unsigned macOS .dmg, a Linux AppImage and a Windows .exe. The reviewed master commit dates from 2021-07-26 and package.json already names an unreleased 0.0.36. The README calls it a community side project that the Angular team does not maintain.","Input is an Angular project's own source tree with its dependencies installed; for Angular CLI apps the README selects src/tsconfig.app.json. Applications must be compatible with the Ivy compiler, and versions older than Angular 11 are untested. The analyzer pins @angular/compiler-cli 11.0.3, ngast 0.6.2 and TypeScript 4.0.5, and support for later Angular releases is not documented. Deployed or minified bundles are not analyzed.","Source builds use Node.js and yarn (CI uses Node 12), Angular CLI 11 and Electron 11.1.0 packaged by electron-builder. The CI workflow runs a Spectron end-to-end test on macOS, Ubuntu and Windows that opens the app and parses a small Angular 11 fixture project; it does not check graph accuracy on real applications.","The README states MIT; LICENSE.md is the MIT text carried over from the angular-electron template, with its author's 2020 copyright line. Graphs show what ngast resolves from the sources, not runtime behaviour."],"requirements_zh":["项目已基本停滞：最新版本为 2021-01-18 发布的 v0.0.35，提供未签名的 macOS .dmg、Linux AppImage 和 Windows .exe。所审阅的 master 提交日期为 2021-07-26，package.json 中已写有尚未发布的 0.0.36。README 说明它是社区业余项目，并非由 Angular 团队维护。","输入为 Angular 项目自身的源码树，且需已安装依赖；对于 Angular CLI 应用，README 指定选择 src/tsconfig.app.json。应用须兼容 Ivy 编译器，低于 Angular 11 的版本未经测试。分析器固定使用 @angular/compiler-cli 11.0.3、ngast 0.6.2 和 TypeScript 4.0.5，文档未说明是否支持更新的 Angular 版本。它不分析已部署或压缩后的打包产物。","从源码构建需要 Node.js 和 yarn（CI 使用 Node 12）、Angular CLI 11，以及由 electron-builder 打包的 Electron 11.1.0。CI 工作流在 macOS、Ubuntu 和 Windows 上运行一项 Spectron 端到端测试，打开应用并解析一个小型 Angular 11 示例项目；该测试并不检验真实应用中图形的准确性。","README 声明采用 MIT 许可；LICENSE.md 是沿用自 angular-electron 模板的 MIT 文本，保留了模板作者 2020 年的版权行。图形展示的是 ngast 从源码中解析出的结构，而非运行时行为。"],"targets":["website"],"url":"https://github.com/mgechev/ngrev","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-30","additional_evidence_urls":["https://github.com/rednaga/APKiD/blob/5cb6b2572a2fe1580d7dd2fd807ada5fb6377a12/apkid/main.py","https://github.com/rednaga/APKiD/blob/5cb6b2572a2fe1580d7dd2fd807ada5fb6377a12/apkid/apkid.py","https://github.com/rednaga/APKiD/blob/5cb6b2572a2fe1580d7dd2fd807ada5fb6377a12/apkid/rules.py","https://github.com/rednaga/APKiD/blob/5cb6b2572a2fe1580d7dd2fd807ada5fb6377a12/apkid/rules/apk/trackers.yara","https://github.com/rednaga/APKiD/blob/5cb6b2572a2fe1580d7dd2fd807ada5fb6377a12/setup.py","https://github.com/rednaga/APKiD/blob/5cb6b2572a2fe1580d7dd2fd807ada5fb6377a12/apkid/__init__.py","https://github.com/rednaga/APKiD/blob/5cb6b2572a2fe1580d7dd2fd807ada5fb6377a12/Dockerfile","https://github.com/rednaga/APKiD/blob/5cb6b2572a2fe1580d7dd2fd807ada5fb6377a12/.travis.yml","https://github.com/rednaga/APKiD/blob/5cb6b2572a2fe1580d7dd2fd807ada5fb6377a12/tests/test_scanner.py","https://github.com/rednaga/APKiD/blob/5cb6b2572a2fe1580d7dd2fd807ada5fb6377a12/LICENSE.GPL","https://github.com/rednaga/APKiD/blob/5cb6b2572a2fe1580d7dd2fd807ada5fb6377a12/LICENSE.COMMERCIAL","https://github.com/rednaga/APKiD/releases/tag/v3.1.0","https://pypi.org/project/apkid/3.1.0/"],"category":"android","description_en":"PEiD-style identifier for Android packages from RedNaga. It scans APK and DEX files, nested ZIP entries and the native ELF libraries, PE DLLs and resources inside them with YARA rules, using the yara-python-dex DEX module, and reports the compilers, packers, protectors, obfuscators and anti-VM or anti-disassembly tricks it recognizes, per file or as JSON. Optional tracker rules attributed to the Exodus API flag embedded tracking SDKs; APKiD only identifies, and does not unpack or deobfuscate anything.","description_zh":"RedNaga 推出的 Android 安装包识别工具，类似 PEiD。它借助 yara-python-dex 的 DEX 模块，用 YARA 规则扫描 APK、DEX 文件、嵌套的 ZIP 条目及其中的原生 ELF 库、PE 格式 DLL 和资源，报告识别出的编译器、加壳工具、保护工具、混淆工具以及反虚拟机或反反汇编手法，可按文件输出或输出 JSON。可选的追踪器规则注明来自 Exodus API，用于标出内嵌的追踪 SDK；APKiD 只做识别，不会脱壳或反混淆。","entry_url":"https://awesomerea.org/resources/apkid/","entry_url_zh":"https://awesomerea.org/zh/resources/apkid/","evidence_url":"https://github.com/rednaga/APKiD/blob/5cb6b2572a2fe1580d7dd2fd807ada5fb6377a12/README.md","group":"tools","id":"apkid","json_url":"https://awesomerea.org/resources/apkid/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/apkid/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/apkid/index.md","name":"APKiD","name_zh":"APKiD Android 加壳与混淆识别工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 3.1.0, tagged and uploaded to PyPI on 2026-04-09; the reviewed master commit of 2026-10-07 adds later rules. pip install apkid pulls in yara-python-dex>=1.0.1. setup.py declares no python_requires and its classifiers name Python 3.6 and 3.7, while Travis CI uses 3.9 and the Dockerfile uses Python 3.11; on Windows the README pins Yara 3.11.0 and a separately built yara-python-dex wheel.","Provide APK, DEX or directory inputs you are entitled to examine. By default the CLI picks entries by file magic, searches nested ZIPs two levels deep, scans entries up to 100 MB and stops each YARA scan after 30 seconds; tracker rules are compiled separately and apply only with --scan-trackers. The README's usage block still shows v2.1.2 and omits --scan-trackers and --include-types.","Detection is signature-based, so unrecognized or modified packers and protectors go unreported; the README asks for unknown samples by file hash to write new rules. Tests compile and lint the rules and scan generated ZIP files; the repository has no sample corpus.","Dual-licensed: GPL-3.0, or a perpetual commercial license that allows distributing APKiD binaries and rules in commercial products but no source redistribution, which is why GitHub reports NOASSERTION."],"requirements_zh":["审阅时最新版本为 3.1.0，于 2026-04-09 打标签并上传到 PyPI；所审阅的 master 提交（2026-10-07）还加入了此后的新规则。pip install apkid 会安装 yara-python-dex>=1.0.1。setup.py 未声明 python_requires，分类信息只列出 Python 3.6 和 3.7，而 Travis CI 使用 3.9，Dockerfile 使用 Python 3.11；在 Windows 上，README 要求固定 Yara 3.11.0 并另行构建 yara-python-dex wheel。","输入为分析者有权检查的 APK、DEX 文件或目录。命令行工具默认按文件魔数选择要扫描的条目，嵌套 ZIP 最多深入两层，只扫描不超过 100 MB 的条目，每次 YARA 扫描 30 秒超时；追踪器规则单独编译，仅在使用 --scan-trackers 时启用。README 中的用法说明仍是 v2.1.2 的版本，没有列出 --scan-trackers 和 --include-types。","检测基于特征规则，未收录或经过修改的加壳与保护工具不会被报告；README 请用户提交未知样本的文件哈希，以便编写新规则。测试会编译并检查规则，并扫描临时生成的 ZIP 文件；仓库不含样本集。","采用双重许可：GPL-3.0，或永久商业许可；后者允许在商业产品中分发 APKiD 二进制及规则，但禁止再分发源码，因此 GitHub 显示为 NOASSERTION。"],"targets":["app"],"url":"https://github.com/rednaga/APKiD","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-30","additional_evidence_urls":["https://github.com/BishopFox/jsluice/blob/0ddfab153e060a9eeaded4d8669233f7c071e7e4/cmd/jsluice/README.mkd","https://github.com/BishopFox/jsluice/blob/0ddfab153e060a9eeaded4d8669233f7c071e7e4/go.mod","https://github.com/BishopFox/jsluice/blob/0ddfab153e060a9eeaded4d8669233f7c071e7e4/analyzer.go#L23-L43","https://github.com/BishopFox/jsluice/blob/0ddfab153e060a9eeaded4d8669233f7c071e7e4/secret-matchers.go#L91-L98","https://github.com/BishopFox/jsluice/blob/0ddfab153e060a9eeaded4d8669233f7c071e7e4/cmd/jsluice/main.go","https://github.com/BishopFox/jsluice/blob/0ddfab153e060a9eeaded4d8669233f7c071e7e4/LICENSE"],"category":"web-analysis","description_en":"Bishop Fox's Go library and command-line tool that parses JavaScript with tree-sitter to recover the endpoints a script calls, judging values by how the code uses them rather than by regular expressions alone. URL extraction follows location assignments, window.open, fetch, XMLHttpRequest and jQuery request calls, keeps the HTTP method, headers and query or body parameters, and stands in a placeholder for values only known at run time. Other modes flag credential-shaped values, print syntax trees, run tree-sitter queries and reformat minified code.","description_zh":"Bishop Fox 推出的 Go 库与命令行工具，借助 tree-sitter 解析 JavaScript，还原脚本所调用的接口地址；它依据代码如何使用某个值来判断，而不仅仅依靠正则表达式。URL 提取会跟踪 location 赋值、window.open、fetch、XMLHttpRequest 和 jQuery 请求调用，保留 HTTP 方法、请求头以及查询或请求体参数，并以占位符代替只有运行时才能确定的值。其他模式可标记形似凭据的值、打印语法树、运行 tree-sitter 查询以及格式化压缩代码。","entry_url":"https://awesomerea.org/resources/jsluice/","entry_url_zh":"https://awesomerea.org/zh/resources/jsluice/","evidence_url":"https://github.com/BishopFox/jsluice/blob/0ddfab153e060a9eeaded4d8669233f7c071e7e4/README.mkd","group":"tools","id":"jsluice","json_url":"https://awesomerea.org/resources/jsluice/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/jsluice/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/jsluice/index.md","name":"jsluice","name_zh":"jsluice JavaScript 静态提取工具","record_type":"resource","relationship":"foundation","requirements":["The project publishes no releases or tags: the README installs the CLI with go install and the package with go get. go.mod declares Go 1.18 and pins go-tree-sitter, goquery, jsbeautifier-go and a WARC reader. The reviewed main commit dates from 2024-01-10; the repository has Go unit tests and JavaScript fixtures but no CI workflow.","Inputs are JavaScript files, HTML pages whose inline scripts it extracts, WARC archives, raw source on stdin, or http(s) URLs fetched with optional cookies and headers; output is JSONL. The analysis is static: concatenated runtime values appear as EXPR or a chosen placeholder, and the README calls the approach not foolproof, so extracted endpoints are leads to check against the application.","secrets mode ships active matchers only for AWS, GCP and GitHub key formats and Firebase configuration objects, plus user-supplied JSON pattern files; the README shows that unanchored custom patterns match unintended values. Matches are pattern hits, not confirmed credentials.","MIT, copyright 2023 Bishop Fox."],"requirements_zh":["该项目不发布任何版本或标签：README 通过 go install 安装命令行工具，通过 go get 引入软件包。go.mod 声明 Go 1.18，并固定 go-tree-sitter、goquery、jsbeautifier-go 和一个 WARC 读取库的版本。所审阅的 main 提交日期为 2024-01-10；仓库包含 Go 单元测试和 JavaScript 测试样例，但没有 CI 工作流。","输入可以是 JavaScript 文件、会从中提取内联脚本的 HTML 页面、WARC 归档、通过标准输入传入的原始源码，或可附带 Cookie 和请求头抓取的 http(s) URL；输出为 JSONL。分析是静态的：拼接进来的运行时值显示为 EXPR 或自定义占位符，README 也承认这种方法并非万无一失，因此提取出的接口只是需要对照应用核实的线索。","secrets 模式内置的有效匹配器只覆盖 AWS、GCP 和 GitHub 密钥格式以及 Firebase 配置对象，另可加载用户提供的 JSON 模式文件；README 示例表明，未加锚点的自定义模式会匹配到意料之外的值。匹配结果只是模式命中，并非已确认的凭据。","采用 MIT 许可，版权归 Bishop Fox（2023）。"],"targets":["website"],"url":"https://github.com/BishopFox/jsluice","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-30","additional_evidence_urls":["https://github.com/LBALab/lba2remake/blob/db54f5de071354939a8b02e71e47c53343ab6ee5/doc/FAQ.md","https://github.com/LBALab/lba2remake/blob/db54f5de071354939a8b02e71e47c53343ab6ee5/doc/getting_started.md","https://github.com/LBALab/lba2remake/blob/db54f5de071354939a8b02e71e47c53343ab6ee5/doc/architecture.md","https://github.com/LBALab/lba2remake/blob/db54f5de071354939a8b02e71e47c53343ab6ee5/doc/art_workflow.md","https://github.com/LBALab/lba2remake/blob/db54f5de071354939a8b02e71e47c53343ab6ee5/CHANGELOG.md","https://github.com/LBALab/lba2remake/blob/db54f5de071354939a8b02e71e47c53343ab6ee5/package.json","https://github.com/LBALab/lba2remake/blob/db54f5de071354939a8b02e71e47c53343ab6ee5/utils/convert/import.sh","https://github.com/LBALab/lba2remake/blob/db54f5de071354939a8b02e71e47c53343ab6ee5/netlify.toml","https://github.com/LBALab/lba2remake/blob/db54f5de071354939a8b02e71e47c53343ab6ee5/.circleci/config.yml","https://github.com/LBALab/lba2remake/blob/db54f5de071354939a8b02e71e47c53343ab6ee5/.gitignore","https://github.com/LBALab/lba2remake/blob/db54f5de071354939a8b02e71e47c53343ab6ee5/LICENSE","https://github.com/LBALab/lba2remake/tree/db54f5de071354939a8b02e71e47c53343ab6ee5/www/models"],"category":"reconstruction-cases","description_en":"Reimplements the engine of Little Big Adventure 2, and now also Little Big Adventure 1, in TypeScript, Three.js and React so that it runs in a browser on resources imported from the user’s copy of the game. README calls it a full re-engineering rather than a disassembly-based approach: every island and building can be explored and most graphics and part of the gameplay work, but the game cannot yet be completed. It adds an editor with an actor-script debugger, VR support and fan-made 3D replacement models for the isometric scenes.","description_zh":"用 TypeScript、Three.js 和 React 重新实现 Little Big Adventure 2 的引擎，现在也涵盖 Little Big Adventure 1，在浏览器中运行，资源从使用者自有的游戏中导入。README 称这是完全重新设计实现，而非基于反汇编的方法：所有岛屿和建筑都可以探索，大部分图形和部分玩法已经可用，但游戏目前还无法通关。项目另外提供带角色脚本调试器的编辑器、VR 支持，以及由爱好者为等距场景制作的 3D 替换模型。","entry_url":"https://awesomerea.org/resources/lba2remake-little-big-adventure-case/","entry_url_zh":"https://awesomerea.org/zh/resources/lba2remake-little-big-adventure-case/","evidence_url":"https://github.com/LBALab/lba2remake/blob/db54f5de071354939a8b02e71e47c53343ab6ee5/README.md","group":"cases","id":"lba2remake-little-big-adventure-case","json_url":"https://awesomerea.org/resources/lba2remake-little-big-adventure-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/lba2remake-little-big-adventure-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/lba2remake-little-big-adventure-case/index.md","name":"LBA2 Remake: a Little Big Adventure 1 and 2 reimplementation in TypeScript and Three.js","name_zh":"LBA2 Remake：以 TypeScript 和 Three.js 重新实现 Little Big Adventure 1 与 2","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the master commit of 2026-04-17, the day after tag v0.6.8; recent changelog entries are mostly bug fixes, VR controller mappings and added replacement 3D models. README says every island and building of the original can be visited and most graphics and part of the gameplay are implemented, but the game is not completable. It describes the method only as full re-engineering instead of disassembly.","Local play requires the user’s own Little Big Adventure 2 from GOG, Steam or itch.io: npm run import (import:win on Windows) unpacks the installation and converts its music, samples, voices and video into the git-ignored www/data folder, and other versions or Linux need the manual import route. The repository holds no original game files; its www/models and assetsSource trees contain replacement 3D models, textures and generated scene meshes, which the art workflow describes as newly made. The FAQ says the hosted live demo is shared publicly with Frederick Raynal’s agreement while the game is a work in progress and will require a legal copy once it is fully playable; its Netlify build downloads game assets from a location outside the repository.","It runs in a browser with WebGL. Development uses Node.js (README asks for 9 or newer and the Netlify build sets 18), npm, webpack and TypeScript, served by npm run dev on localhost:8080. The apps folder holds Android, iOS and Windows 10 app prototypes, and VR controllers work through WebXR.","CircleCI runs lint, type-checking and a production bundle build, and a CodeQL workflow scans the code; there are no engine or gameplay tests and no comparison with the original executable. The live demo, editor and gameplay videos are the project’s own demonstrations.","LICENSE is MIT for the project’s code (copyright 2018 Adrien Grandemange and Alexandre Fontoura). README states that the original game executable, assets and intellectual property belong to [2.21] and asks users to buy the original games."],"requirements_zh":["审阅版本为 2026-04-17 的 master 提交，即 v0.6.8 标签的次日；最近的更新日志主要是缺陷修复、VR 手柄映射和新增的 3D 替换模型。README 称原版的所有岛屿和建筑都可以进入，大部分图形和部分玩法已经实现，但游戏无法通关。它对方法的描述仅限于完全重新设计实现而非反汇编。","本地游玩需要使用者自有的 Little Big Adventure 2（GOG、Steam 或 itch.io 版）：npm run import（Windows 上为 import:win）会解包安装目录，并把其中的音乐、音效、语音和视频转换到被 git 忽略的 www/data 文件夹；其他版本或 Linux 需走手动导入流程。仓库不含原版游戏文件；www/models 和 assetsSource 目录存放的是替换用的 3D 模型、纹理和生成的场景网格，美术工作流程文档称这些都是新制作的。FAQ 表示，在线演示经 Frederick Raynal 同意在游戏开发期间公开分享，游戏完全可玩后将要求使用正版；其 Netlify 构建从仓库之外的位置下载游戏素材。","项目在支持 WebGL 的浏览器中运行。开发需要 Node.js（README 要求 9 或更高版本，Netlify 构建使用 18）、npm、webpack 和 TypeScript，通过 npm run dev 在 localhost:8080 提供服务。apps 文件夹中有 Android、iOS 和 Windows 10 应用原型，VR 手柄通过 WebXR 支持。","CircleCI 运行代码检查、类型检查和生产包构建，另有 CodeQL 工作流扫描代码；没有引擎或玩法测试，也没有与原版可执行文件的对比。在线演示、编辑器和游玩视频都是项目自己的展示。","LICENSE 规定项目代码采用 MIT 许可（版权归 Adrien Grandemange 与 Alexandre Fontoura，2018）。README 声明原版游戏的可执行文件、素材和知识产权归 [2.21] 所有，并请使用者购买原版游戏。"],"targets":["game"],"url":"https://github.com/LBALab/lba2remake","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-30","additional_evidence_urls":["https://github.com/vulhunt-re/vulhunt/blob/b2fa617923f47d84a57899137107380391700b64/README.md#L115-L159","https://github.com/vulhunt-re/vulhunt/blob/b2fa617923f47d84a57899137107380391700b64/Cargo.toml","https://github.com/vulhunt-re/vulhunt/blob/b2fa617923f47d84a57899137107380391700b64/bias-vulhunt/Cargo.toml","https://github.com/vulhunt-re/vulhunt/blob/b2fa617923f47d84a57899137107380391700b64/bias-vulhunt-mcp/src/tools.rs","https://github.com/vulhunt-re/vulhunt/blob/b2fa617923f47d84a57899137107380391700b64/bias-loader-bndb/Cargo.toml","https://github.com/vulhunt-re/vulhunt/blob/b2fa617923f47d84a57899137107380391700b64/README.BIAS.md","https://github.com/vulhunt-re/vulhunt/blob/b2fa617923f47d84a57899137107380391700b64/LICENSE","https://github.com/vulhunt-re/vulhunt/releases/tag/v1.0.0","https://github.com/vulhunt-re/data/blob/7015639969be34151c790b3ba8e8e74e0911aa3d/README.md","https://github.com/vulhunt-re/rules/tree/9da95ac19b0e2a4d9c1b816b9e7dd0b40fe07c7f","https://vulhunt.re/","https://vulhunt.re/docs/user-guide/vulhunt-cli/installation/"],"category":"native-analysis","description_en":"Open-source Community Edition of Binarly REsearch's VulHunt engine for hunting vulnerabilities in POSIX binaries and UEFI firmware on x86 and ARM. Lua rules run on the Rust BIAS framework, which lifts code to Ghidra's P-code and bundles Ghidra's C++ decompiler, and combine taint and dataflow tracking, Weggli-based queries over decompiled code, byte patterns, FLIRT signatures and type libraries; findings are written as JSON with annotated decompiled code. The CLI scans single binaries, Binarly BA2 archives or Binary Ninja databases, and can also run as an MCP server that lets AI assistants open a project, query it with Lua, rename functions and keep notes.","description_zh":"Binarly REsearch 团队 VulHunt 引擎的开源社区版，用于在 x86 和 ARM 架构的 POSIX 二进制和 UEFI 固件中挖掘漏洞。Lua 规则运行在 Rust 编写的 BIAS 框架之上（该框架将代码提升为 Ghidra P-code，并内置 Ghidra 的 C++ 反编译器），可结合污点与数据流追踪、基于 Weggli 的反编译代码查询、字节模式、FLIRT 签名和类型库进行检测；结果以 JSON 输出，并附带标注后的反编译代码。命令行可扫描单个二进制、Binarly BA2 归档或 Binary Ninja 数据库，也可作为 MCP 服务器运行，让 AI 助手打开项目、用 Lua 查询、重命名函数并记录注释。","entry_url":"https://awesomerea.org/resources/vulhunt/","entry_url_zh":"https://awesomerea.org/zh/resources/vulhunt/","evidence_url":"https://github.com/vulhunt-re/vulhunt/blob/b2fa617923f47d84a57899137107380391700b64/README.md","group":"tools","id":"vulhunt","json_url":"https://awesomerea.org/resources/vulhunt/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/vulhunt/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/vulhunt/index.md","name":"VulHunt Community Edition","name_zh":"VulHunt 社区版漏洞挖掘框架","record_type":"resource","relationship":"foundation","requirements":["Release at review: v1.0.0, published 2026-03-07, with Linux x86_64/aarch64, macOS arm64 and Windows x86_64 ZIPs; the reviewed dev commit is 7 commits ahead and its CLI crate declares 1.0.1. The documentation recommends its install scripts or a Docker image built from the repository; source builds need Rust, cargo-make, a recent CMake, Clang 20+ and a patched static LuaJIT 2.1, which cargo-make builds.","Scans need auxiliary data from the separate vulhunt-re/data repository (processor specifications and type libraries, fetched with git-lfs and, for source installs, built with bias-lutil and bias-tutil) and a rules directory, such as the community rules repository with POSIX and UEFI rules; the rules, data and agent-skills repositories had no license file at review. The Binary Ninja loader needs a build with the bndb feature, which links against the Binary Ninja 5.2 stable API, and the btp commands need a Binarly Transparency Platform account.","Binaries and BA2 archives are supplied by the user. The component loader takes one binary at a time; this repository has no loader for whole UEFI firmware images, since the UEFITool-based loader is published separately and is not part of the reviewed workspace. Binarly describes a commercial Enterprise Edition with further features. Rule findings are analysis aids for manual review, and the reviewed sources report no accuracy evaluation.","GPL-3.0 for VulHunt; the BIAS framework crates are dual-licensed MIT OR Apache-2.0 according to README.BIAS.md."],"requirements_zh":["审阅时的版本为 v1.0.0，发布于 2026-03-07，提供 Linux x86_64/aarch64、macOS arm64 和 Windows x86_64 的 ZIP 包；所审阅的 dev 提交比它多 7 个提交，命令行 crate 已标为 1.0.1。文档推荐使用官方安装脚本，或从仓库构建 Docker 镜像；从源码构建需要 Rust、cargo-make、较新的 CMake、Clang 20+ 以及打过补丁的静态 LuaJIT 2.1（由 cargo-make 自动构建）。","扫描需要独立的 vulhunt-re/data 仓库提供辅助数据（处理器规范和类型库，需用 git-lfs 获取；源码安装时还要用 bias-lutil 和 bias-tutil 构建），以及一个规则目录，例如收录 POSIX 和 UEFI 规则的社区规则仓库；审阅时规则、数据和智能体技能仓库均没有许可证文件。Binary Ninja 加载器需启用 bndb 特性构建，并链接 Binary Ninja 5.2 稳定版 API；btp 系列命令需要 Binarly Transparency Platform 账户。","二进制和 BA2 归档由使用者自备。component 加载器每次处理一个二进制；本仓库没有针对完整 UEFI 固件镜像的加载器，基于 UEFITool 的加载器另行发布，不在所审阅的工作区内。Binarly 称另有功能更多的商业企业版。规则命中结果只是辅助分析的线索，需要人工复核；所审阅的资料未给出准确率评估。","VulHunt 采用 GPL-3.0；据 README.BIAS.md，BIAS 框架各 crate 采用 MIT 或 Apache-2.0 双重许可。"],"targets":["binary","firmware"],"url":"https://github.com/vulhunt-re/vulhunt","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-30","additional_evidence_urls":["https://github.com/nccgroup/Sniffle/blob/3a53f5ab21df7599ad0c46475d322603c1a54bb7/README.md#L22-L45","https://github.com/nccgroup/Sniffle/blob/3a53f5ab21df7599ad0c46475d322603c1a54bb7/README.md#L494-L537","https://github.com/nccgroup/Sniffle/blob/3a53f5ab21df7599ad0c46475d322603c1a54bb7/fw/makefile","https://github.com/nccgroup/Sniffle/blob/3a53f5ab21df7599ad0c46475d322603c1a54bb7/python_cli/sniffle/pcap.py","https://github.com/nccgroup/Sniffle/blob/3a53f5ab21df7599ad0c46475d322603c1a54bb7/python_cli/pcap_decoder.py","https://github.com/nccgroup/Sniffle/blob/3a53f5ab21df7599ad0c46475d322603c1a54bb7/LICENSE","https://github.com/nccgroup/Sniffle/releases/tag/v1.11.0"],"category":"protocol-analysis","description_en":"NCC Group's sniffer for Bluetooth 5 and 4.x Low Energy, made of firmware for TI CC1352/CC26x2 radio boards and Python host tools. It captures advertising and connection traffic on the 1M, 2M and coded PHYs, follows connections through channel-map, connection-parameter and PHY changes, captures BT5 extended advertising, and filters by MAC address, IRK, RSSI or advertisement content; for a filtered target it hops all three primary advertising channels, which the README says makes connection detection nearly three times more reliable than single-channel sniffers. Captures are saved as Ubertooth-compatible PCAP, a Wireshark extcap plugin starts captures from the Wireshark GUI, and command-line decoders print advertising data, including Apple and Microsoft manufacturer-specific fields.","description_zh":"NCC Group 推出的蓝牙 5 与 4.x 低功耗（BLE）嗅探器，由运行在 TI CC1352/CC26x2 射频板上的固件和 Python 主机工具组成。它可在 1M、2M 和编码 PHY 上捕获广播与连接流量，跟随连接经历的信道映射、连接参数和 PHY 变更，捕获 BT5 扩展广播，并按 MAC 地址、IRK、RSSI 或广播内容过滤；对已过滤的目标会在全部三个主广播信道间跳频，README 称这使连接检测的可靠性比只监听单一信道的嗅探器高出近三倍。捕获结果保存为与 Ubertooth 兼容的 PCAP；Wireshark extcap 插件可直接从 Wireshark 界面启动捕获，命令行解码器可打印广播数据，包括 Apple 和 Microsoft 的厂商自定义字段。","entry_url":"https://awesomerea.org/resources/sniffle/","entry_url_zh":"https://awesomerea.org/zh/resources/sniffle/","evidence_url":"https://github.com/nccgroup/Sniffle/blob/3a53f5ab21df7599ad0c46475d322603c1a54bb7/README.md","group":"tools","id":"sniffle","json_url":"https://awesomerea.org/resources/sniffle/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/sniffle/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sniffle/index.md","name":"Sniffle","name_zh":"Sniffle 蓝牙低功耗嗅探器","record_type":"resource","relationship":"foundation","requirements":["Release at review: v1.11.0, published 2025-07-12 with prebuilt firmware hex files for each supported board; the reviewed master commit adds two relay-script fixes. The README asks users of prebuilt firmware to run the Python code from the matching release tag rather than master. The release notes describe SDR-based sniffing as an incomplete work in progress.","Needs one of the listed TI Launchpad boards (CC26x2R, CC2652RB, CC1352R, CC1352P, CC2652R7, CC1352P7, CC2651P3 or CC1354P10), a SONOFF CC2652P USB Dongle Plus or a CatSniffer V3. Firmware is flashed with TI UniFlash/DSLite, the cc2538-bsl bootloader utility for the SONOFF dongle or Electronic Cats' uploader; the README warns that flashing the wrong SONOFF build variant can brick the dongle. Building firmware needs the ARM GNU toolchain and TI SimpleLink Low Power F2 SDK 8.30.01.01, which the README patches for recent GCC. Host tools need Python 3.9+ with PySerial.","Encrypted connections are not decrypted: Sniffle follows their timing and detects parameter updates without the key, and reliable connection following needs a MAC or IRK filter on the peripheral. Later firmware can also transmit for active scanning, advertising, initiating connections and link-layer relaying.","GPL-3.0; source headers name NCC Group plc as the copyright holder, jointly with Jay Logue for the Wireshark extcap plugin."],"requirements_zh":["审阅时的版本为 v1.11.0，于 2025-07-12 发布，附有各受支持板卡的预编译固件 hex 文件；所审阅的 master 分支提交另含两个中继脚本修复。README 要求使用预编译固件时运行对应发布标签中的 Python 代码，而不是 master 分支。发布说明称基于 SDR 的嗅探仍是未完成的开发中功能。","需要所列 TI Launchpad 开发板之一（CC26x2R、CC2652RB、CC1352R、CC1352P、CC2652R7、CC1352P7、CC2651P3 或 CC1354P10）、SONOFF CC2652P USB Dongle Plus 或 CatSniffer V3。固件通过 TI UniFlash／DSLite 烧录，SONOFF 加密狗使用 cc2538-bsl 引导加载工具，CatSniffer 使用 Electronic Cats 的上传工具；README 警告，为 SONOFF 加密狗烧录错误的构建变体可能使其变砖。自行编译固件需要 ARM GNU 工具链和 TI SimpleLink Low Power F2 SDK 8.30.01.01，README 给出了为适配新版 GCC 而修改该 SDK 的补丁。主机工具需要 Python 3.9+ 和 PySerial。","加密连接不会被解密：Sniffle 在没有密钥的情况下跟随其时序并检测参数更新，而要可靠地跟随连接，需要对外设设置 MAC 或 IRK 过滤。后续版本的固件还能主动发送，用于主动扫描、广播、发起连接和链路层中继。","采用 GPL-3.0 许可；源码头部注明版权归 NCC Group plc 所有，其中 Wireshark extcap 插件由 Jay Logue 与 NCC Group plc 共同持有版权。"],"targets":["protocol"],"url":"https://github.com/nccgroup/Sniffle","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-30","additional_evidence_urls":["https://github.com/pxb1988/dex2jar/blob/b5bda4fb4935ae8b3869b422454ae3b3896c7bc1/build.gradle","https://github.com/pxb1988/dex2jar/blob/b5bda4fb4935ae8b3869b422454ae3b3896c7bc1/d2j-smali/build.gradle","https://github.com/pxb1988/dex2jar/blob/b5bda4fb4935ae8b3869b422454ae3b3896c7bc1/dex-tools/src/main/bin_gen/class.cfg","https://github.com/pxb1988/dex2jar/blob/b5bda4fb4935ae8b3869b422454ae3b3896c7bc1/dex-reader/src/main/java/com/googlecode/d2j/reader/DexFileReader.java","https://github.com/pxb1988/dex2jar/blob/b5bda4fb4935ae8b3869b422454ae3b3896c7bc1/.github/workflows/gradle.yml","https://github.com/pxb1988/dex2jar/blob/b5bda4fb4935ae8b3869b422454ae3b3896c7bc1/gradle/wrapper/gradle-wrapper.properties","https://github.com/pxb1988/dex2jar/blob/b5bda4fb4935ae8b3869b422454ae3b3896c7bc1/LICENSE.txt","https://github.com/pxb1988/dex2jar/blob/b5bda4fb4935ae8b3869b422454ae3b3896c7bc1/NOTICE.txt","https://github.com/pxb1988/dex2jar/releases/tag/v2.4"],"category":"android","description_en":"Java toolkit that converts Android DEX bytecode, including DEX inside APKs, into JVM .class files packed as a jar for Java decompilers and bytecode tools. It also reads and writes DEX through an ASM-like API, disassembles and assembles smali with its own implementation, converts jars back to DEX and ships helpers such as d2j-decrypt-string.","description_zh":"用 Java 编写的工具集，可将 Android DEX 字节码（包括 APK 内的 DEX 文件）转换为打包成 jar 的 JVM .class 文件，供 Java 反编译器和字节码工具使用。它还通过类似 ASM 的 API 读写 DEX，以自有实现进行 smali 反汇编与汇编，可将 jar 转回 DEX，并附带 d2j-decrypt-string 等辅助工具。","entry_url":"https://awesomerea.org/resources/dex2jar/","entry_url_zh":"https://awesomerea.org/zh/resources/dex2jar/","evidence_url":"https://github.com/pxb1988/dex2jar/blob/b5bda4fb4935ae8b3869b422454ae3b3896c7bc1/README.md","group":"tools","id":"dex2jar","json_url":"https://awesomerea.org/resources/dex2jar/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dex2jar/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dex2jar/index.md","name":"dex2jar","name_zh":"dex2jar Android DEX 转换工具集","record_type":"resource","relationship":"foundation","requirements":["The latest release, v2.4 of 2023-10-03 with the note “bugfix”, is the reviewed 2.x head, and no commits have followed it. Its download is dex-tools-v2.4.zip, while the README build steps still name a 2.1-SNAPSHOT archive. The README lists GitHub as the project's home after earlier Google Code, Bitbucket and SourceForge hosting.","Everything runs on Java: the build targets Java 8 with the Gradle 6.9.1 wrapper, ASM 9.5 and ANTLR 4.9.3, which d2j-smali keeps because newer ANTLR versions need Java 11+. The d2j-* commands are generated as shell and batch launchers. The CI workflow runs gradle check and distZip on JDK 8 for pushes, pull requests and release tags.","Input is a .dex or .odex file, or an APK or zip containing DEX, from the user's own app; the reader accepts DEX versions 035 to 040 and tries others with a warning. Output is a jar of class files rather than Java source, so reading code still needs a separate Java decompiler. Test resources hold small DEX and zip samples, and dex-translator/libs carries an Android dx 30.0.2 jar.","Apache-2.0, with copyright notices in LICENSE.txt and NOTICE.txt."],"requirements_zh":["最新发行版 v2.4（2023-10-03，说明为“bugfix”）即所审阅的 2.x 分支最新提交，此后没有新提交。其下载包为 dex-tools-v2.4.zip，而 README 中的构建步骤仍写着 2.1-SNAPSHOT 压缩包。README 将 GitHub 列为项目主页，此前曾托管于 Google Code、Bitbucket 和 SourceForge。","全部运行在 Java 上：构建以 Java 8 为目标，使用 Gradle 6.9.1 包装器、ASM 9.5 和 ANTLR 4.9.3；d2j-smali 保留该 ANTLR 版本，是因为更新的版本需要 Java 11+。d2j-* 命令以生成的 shell 与批处理启动脚本提供。CI 工作流在推送、拉取请求和发行标签时于 JDK 8 上运行 gradle check 和 distZip。","输入为来自使用者自有应用的 .dex 或 .odex 文件，或包含 DEX 的 APK、zip 文件；读取器接受 035 至 040 版本的 DEX，其他版本会在警告后尝试处理。输出是由 class 文件组成的 jar，而非 Java 源码，阅读代码仍需另行使用 Java 反编译器。测试资源中有小型 DEX 和 zip 样本，dex-translator/libs 中还附有 Android dx 30.0.2 的 jar。","采用 Apache-2.0 许可，版权声明见 LICENSE.txt 和 NOTICE.txt。"],"targets":["app"],"url":"https://github.com/pxb1988/dex2jar","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-30","additional_evidence_urls":["https://github.com/binsync/binsync/blob/07a2ce87638b25728564cbc5198e1bd945d4d70c/README.md#L31-L51","https://github.com/binsync/binsync/blob/07a2ce87638b25728564cbc5198e1bd945d4d70c/README.md#L101-L112","https://github.com/binsync/binsync/blob/07a2ce87638b25728564cbc5198e1bd945d4d70c/pyproject.toml","https://github.com/binsync/binsync/blob/07a2ce87638b25728564cbc5198e1bd945d4d70c/binsync/__main__.py#L60-L80","https://github.com/binsync/binsync/blob/07a2ce87638b25728564cbc5198e1bd945d4d70c/binsync/core/client.py#L26-L27","https://github.com/binsync/binsync/blob/07a2ce87638b25728564cbc5198e1bd945d4d70c/LICENSE","https://github.com/binsync/binsync/releases/tag/v5.15.4","https://pypi.org/project/binsync/5.15.4/"],"category":"native-analysis","description_en":"Decompiler plugin for collaborative reverse engineering that records each analyst's work in a shared Git repository, one branch per user, so teammates can pull, push or auto-push changes across IDA Pro, Binary Ninja, Ghidra and angr-management. Synced artifacts are function headers (names, arguments and types), stack and global variables, structs, enums and comments, including user-defined types. It is built by mahaloz, the angr team and the SEFCOM research lab and is used by the Shellphish hacking team; scripting goes through the separate DecLib library.","description_zh":"用于协同逆向工程的反编译器插件，把每位分析者的工作记录在共享 Git 仓库中（每位用户一个分支），队友可在 IDA Pro、Binary Ninja、Ghidra 和 angr-management 之间拉取、推送或自动推送更改。可同步的内容包括函数头（名称、参数和类型）、栈变量和全局变量、结构体、枚举和注释，并支持用户自定义类型。它由 mahaloz、angr 团队和 SEFCOM 研究实验室开发，并被 Shellphish 黑客团队使用；脚本操作需借助独立的 DecLib 库。","entry_url":"https://awesomerea.org/resources/binsync/","entry_url_zh":"https://awesomerea.org/zh/resources/binsync/","evidence_url":"https://github.com/binsync/binsync/blob/07a2ce87638b25728564cbc5198e1bd945d4d70c/README.md","group":"tools","id":"binsync","json_url":"https://awesomerea.org/resources/binsync/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/binsync/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binsync/index.md","name":"BinSync","name_zh":"BinSync 协同逆向插件","record_type":"resource","relationship":"foundation","requirements":["Release at review: 5.15.4, published 2026-08-21 on PyPI and GitHub (with an IDA plugin ZIP); the reviewed main commit is one commit ahead, adding Ghidra comment sync and auto-push without a version bump. Install with pip and then binsync --install, which places the plugin in each decompiler; Binary Ninja also offers it in its plugin manager. Every setup needs Python 3.10+ and Git.","Supported hosts per the README: IDA Pro 8.4+ (older IDA versions need BinSync 4.10.1), Binary Ninja 2.4+, angr-management 9.0+ and Ghidra 12.0+ launched in PyGhidra mode. Support differs by decompiler: angr-management does not sync global variables, structs or enums, and although the Ghidra table marks every artifact as supported, the README text still calls Ghidra support early-stage and says to expect only minimal features such as name and comment syncing.","Collaborators share a Git repository and analyze the same binary, which each of them supplies. The optional extras add an auxiliary server and an AI user that applies DAILA prompt results to a project and requires an OpenAI API key; its changes are model output to be reviewed.","BSD-2-Clause. The README's term REAs means reverse-engineering artifacts."],"requirements_zh":["审阅时的版本为 5.15.4，于 2026-08-21 发布在 PyPI 和 GitHub 上（附 IDA 插件 ZIP）；所审阅的 main 提交比它多一个提交，新增 Ghidra 注释同步和自动推送，但未提升版本号。先用 pip 安装，再运行 binsync --install 将插件装入各反编译器；Binary Ninja 的插件管理器中也可直接获取。所有安装方式都需要 Python 3.10+ 和 Git。","README 列出的宿主版本为：IDA Pro 8.4+（更早的 IDA 需使用 BinSync 4.10.1）、Binary Ninja 2.4+、angr-management 9.0+，以及以 PyGhidra 模式启动的 Ghidra 12.0+。各反编译器的支持程度不同：angr-management 不同步全局变量、结构体和枚举；Ghidra 的表格虽标注所有内容均已支持，README 正文仍称其处于早期阶段，只能期待名称和注释同步等最基本的功能。","协作者共享一个 Git 仓库，并分析同一个由各自提供的二进制。可选的 extras 组件增加辅助服务器和一个 AI 用户，后者把 DAILA 提示的结果写入项目，需要 OpenAI API 密钥；其改动属于模型输出，需要人工复核。","采用 BSD-2-Clause 许可。README 中的 REAs 指逆向工程产物（reverse-engineering artifacts）。"],"targets":["binary"],"url":"https://github.com/binsync/binsync","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-30","additional_evidence_urls":["https://github.com/nygard/class-dump/blob/2c82b4ff12b2ea5d1ac23e49281d496997370841/CHANGELOG.md#L1-L15","https://github.com/nygard/class-dump/blob/2c82b4ff12b2ea5d1ac23e49281d496997370841/class-dump.xcodeproj/project.pbxproj","https://github.com/nygard/class-dump/blob/2c82b4ff12b2ea5d1ac23e49281d496997370841/Source/CDClassDumpVisitor.m#L104-L112","https://github.com/nygard/class-dump/blob/2c82b4ff12b2ea5d1ac23e49281d496997370841/Tests/doTests.py","https://github.com/nygard/class-dump/blob/2c82b4ff12b2ea5d1ac23e49281d496997370841/ThirdParty/blowfish.c","https://github.com/nygard/class-dump/releases/tag/3.4"],"category":"native-analysis","description_en":"Command-line utility that reads the Objective-C runtime metadata in Mach-O executables, frameworks and bundles and prints it as ordinary Objective-C declarations for the classes, categories and protocols it finds, the same information otool -ov shows in a more compact form. It can write one header file per class, recurse into the frameworks a binary uses, choose one architecture from a universal binary, filter or sort the output, and annotate it with instance-variable offsets and implementation addresses.","description_zh":"一款命令行工具，读取 Mach-O 可执行文件、框架和 bundle 中的 Objective-C 运行时元数据，并将其中的类、类别和协议输出为常规的 Objective-C 声明；信息与 otool -ov 所显示的相同，但形式更紧凑。它可以为每个类生成一个头文件，递归展开二进制所用的框架，从通用二进制中选择单一架构，对输出进行筛选或排序，并标注实例变量偏移和方法实现地址。","entry_url":"https://awesomerea.org/resources/class-dump/","entry_url_zh":"https://awesomerea.org/zh/resources/class-dump/","evidence_url":"https://github.com/nygard/class-dump/blob/2c82b4ff12b2ea5d1ac23e49281d496997370841/README.md","group":"tools","id":"class-dump","json_url":"https://awesomerea.org/resources/class-dump/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/class-dump/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/class-dump/index.md","name":"class-dump","name_zh":"class-dump Objective-C 头文件生成工具","record_type":"resource","relationship":"foundation","requirements":["Dormant: the newest tag, 3.5, is dated 2013-11-16, GitHub release entries stop at 3.4, and the README points to the author's website for the latest version. The reviewed master commit, from 2019-03-15, is 75 commits past 3.5 and carries unreleased changes such as building with the macOS 10.14 SDK.","Builds use Xcode on macOS with the bundled class-dump.xcodeproj, whose targets set macOS 10.8 and 10.9 deployment targets. The README's usage text lists ppc, ppc64, i386 and x86_64, and the 3.5 changelog adds arm64; support for later Apple architectures or metadata formats is not documented.","Input is a Mach-O file, framework or bundle the user already has, and only Objective-C metadata is decoded; files with an encryption load command are flagged in the output header. The unreleased changelog says Swift types have a blank encoding and are now written as MISSING_TYPE, so Swift types are not recovered. Output is declarations without method bodies.","Tests/doTests.py is a Python 2 script that diffs an older and a newer build's output over the installed system frameworks; the repository has no CI. The README notice applies GPL-2.0-or-later, copyright 1997-2019 Steve Nygard, and there is no separate license file; ThirdParty/blowfish.c is LGPL-2.1-or-later. Headers generated from closed-source binaries remain subject to their owners' rights."],"requirements_zh":["项目已基本停滞：最新标签 3.5 的日期为 2013-11-16，GitHub 上的发布条目止于 3.4，README 让用户到作者网站获取最新版本。所审阅的 master 提交日期为 2019-03-15，比 3.5 多出 75 个提交，其中包含尚未发布的改动，例如改用 macOS 10.14 SDK 构建。","需在 macOS 上用 Xcode 打开仓库自带的 class-dump.xcodeproj 构建，各目标的部署目标为 macOS 10.8 和 10.9。README 的用法说明列出 ppc、ppc64、i386 和 x86_64，3.5 版更新日志又加入 arm64；文档未说明是否支持更新的 Apple 架构或元数据格式。","输入为使用者已有的 Mach-O 文件、框架或 bundle，且只解析 Objective-C 元数据；带有加密加载命令的文件会在输出头部被标出。未发布部分的更新日志称 Swift 类型的类型编码为空，现以 MISSING_TYPE 写出，因此无法还原 Swift 类型。输出只有声明，不含方法实现。","Tests/doTests.py 是一个 Python 2 脚本，用于在已安装的系统框架上比较新旧两个构建的输出差异；仓库没有 CI。README 中的声明采用 GPL-2.0-or-later 许可，版权归 Steve Nygard（1997–2019），仓库中没有单独的许可证文件；ThirdParty/blowfish.c 采用 LGPL-2.1-or-later。根据闭源二进制生成的头文件仍受其权利人的权利约束。"],"targets":["app","binary"],"url":"https://github.com/nygard/class-dump","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-31","additional_evidence_urls":["https://github.com/OpenAWE-Project/OpenAWE/blob/cce15d3bc289df31522d778fb8e99180e6752b58/LICENSE","https://github.com/OpenAWE-Project/OpenAWE/blob/cce15d3bc289df31522d778fb8e99180e6752b58/CMakeLists.txt","https://github.com/OpenAWE-Project/OpenAWE/blob/cce15d3bc289df31522d778fb8e99180e6752b58/.gitmodules","https://github.com/OpenAWE-Project/OpenAWE/blob/cce15d3bc289df31522d778fb8e99180e6752b58/.github/workflows/main.yml","https://github.com/OpenAWE-Project/OpenAWE/blob/cce15d3bc289df31522d778fb8e99180e6752b58/src/game.cpp","https://github.com/OpenAWE-Project/OpenAWE/blob/cce15d3bc289df31522d778fb8e99180e6752b58/src/engines/awan/functions_table.cpp","https://github.com/OpenAWE-Project/OpenAWE/tree/cce15d3bc289df31522d778fb8e99180e6752b58/test","https://github.com/OpenAWE-Project/OpenAWE/tree/cce15d3bc289df31522d778fb8e99180e6752b58/tools","https://github.com/OpenAWE-Project/OpenAWE/blob/cce15d3bc289df31522d778fb8e99180e6752b58/data/male_player_class.xml"],"category":"reconstruction-cases","description_en":"Reimplements Remedy Entertainment’s Alan Wake engine, later known as Northlight, in C++ and OpenGL, aiming to run Alan Wake and Alan Wake’s American Nightmare portably from the user’s game data, with Quantum Break and possibly Control as later goals. README documents only a free camera for moving through loaded game data, and the American Nightmare script table implements 16 of its 278 native functions. The repository also includes command-line tools for the games’ archive, texture, Havok and sound formats.","description_zh":"以 C++ 和 OpenGL 重新实现 Remedy Entertainment 的 Alan Wake 引擎（后来称为 Northlight），目标是借助使用者自己的游戏数据，以可移植方式运行《心灵杀手》和《心灵杀手：美国梦魇》，并把《量子破碎》乃至《控制》列为后续目标。README 只介绍了一个用于在已加载游戏数据中移动的自由视角相机，《美国梦魇》的脚本函数表在 278 个原生函数中实现了 16 个。仓库还附带处理这些游戏的归档、纹理、Havok 和音频格式的命令行工具。","entry_url":"https://awesomerea.org/resources/openawe-alan-wake-engine-case/","entry_url_zh":"https://awesomerea.org/zh/resources/openawe-alan-wake-engine-case/","evidence_url":"https://github.com/OpenAWE-Project/OpenAWE/blob/cce15d3bc289df31522d778fb8e99180e6752b58/README.md","group":"cases","id":"openawe-alan-wake-engine-case","json_url":"https://awesomerea.org/resources/openawe-alan-wake-engine-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/openawe-alan-wake-engine-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/openawe-alan-wake-engine-case/index.md","name":"OpenAWE: an open reimplementation of Remedy’s Alan Wake engine","name_zh":"OpenAWE：Remedy 的 Alan Wake 引擎的开源重新实现","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the master commit of 2026-10-11; there are no releases or tags, and CMake declares version 0.0.1. README states the goals but gives no gameplay status beyond a keyboard-and-mouse free camera, and the game selector rejects Quantum Break and Alan Wake Remastered as not yet supported. In the reviewed American Nightmare native-function table, 16 of 278 script functions are implemented and the rest are placeholders.","OpenAWE runs from the data directory of the user’s own Alan Wake or Alan Wake’s American Nightmare installation, passed with -p, together with the shaders compiled during the build, passed with -s. The repository contains no game data: the archive tests use small synthetic byte arrays, and data/ holds a single XML file that carries the project’s GPL header.","Builds use CMake 3.21+ and C++20 with development packages for zlib, GLFW 3.4+, GLM, TinyXML2, OpenAL, Bullet, fmt 9+, Ogg, Theora, Vorbis and spdlog, GTest for the optional tests, the EnTT and CLI11 submodules or system copies, and the glslc shader compiler. CI builds with GCC and Clang on Linux, MSVC on Windows and Clang on Intel macOS.","Each CI job runs ctest with GoogleTest unit tests for the archive readers, streams, compression, XML and TOML parsing and geometry utilities, then packages the build with cpack. No test reads the games’ data or compares behaviour with the original executables; the README screenshot shows an American Nightmare scene.","README places the code under GPL-3.0-or-later except the libraries in 3rdparty, which keep their own licenses. Alan Wake and its data keep their owners’ rights."],"requirements_zh":["审阅版本为 2026-10-11 的 master 提交；仓库没有发布版或标签，CMake 中的版本为 0.0.1。README 说明了项目目标，但除键盘鼠标操作的自由视角相机外，没有介绍任何游戏玩法进度；游戏识别逻辑会以“尚不支持”拒绝《量子破碎》和《心灵杀手：重制版》。在所审的《美国梦魇》原生函数表中，278 个脚本函数只实现了 16 个，其余均为占位。","OpenAWE 需用 -p 指定使用者自有的《心灵杀手》或《心灵杀手：美国梦魇》安装中的数据目录，并用 -s 指定构建时编译出的着色器。仓库不含游戏数据：归档测试使用的是小型合成字节数组，data/ 中只有一个带有项目 GPL 许可头的 XML 文件。","构建使用 CMake 3.21+ 和 C++20，需要 zlib、GLFW 3.4+、GLM、TinyXML2、OpenAL、Bullet、fmt 9+、Ogg、Theora、Vorbis 和 spdlog 的开发包，可选测试需要 GTest，EnTT 和 CLI11 可用子模块或系统版本，此外还需要 glslc 着色器编译器。CI 在 Linux 上用 GCC 和 Clang、在 Windows 上用 MSVC、在 Intel macOS 上用 Clang 构建。","每个 CI 任务都会用 ctest 运行 GoogleTest 单元测试，覆盖归档读取器、数据流、压缩、XML 与 TOML 解析以及几何工具，然后用 cpack 打包。没有测试读取游戏数据或与原版可执行文件对比行为；README 中的截图展示的是《美国梦魇》的一个场景。","README 规定代码采用 GPL-3.0-or-later，3rdparty 中的库除外，这些库保留各自的许可证。Alan Wake 系列及其数据仍归权利人所有。"],"targets":["game"],"url":"https://github.com/OpenAWE-Project/OpenAWE","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-31","additional_evidence_urls":["https://github.com/tmcleroy/cps2recomp/blob/74e26fb10e166fbfacfb1e6520fbc05e400642b1/THIRD_PARTY_NOTICES.md","https://github.com/tmcleroy/cps2recomp/blob/74e26fb10e166fbfacfb1e6520fbc05e400642b1/docs/RELEASING.md","https://github.com/tmcleroy/cps2recomp/blob/74e26fb10e166fbfacfb1e6520fbc05e400642b1/docs/BUILDING.md","https://github.com/tmcleroy/cps2recomp/blob/74e26fb10e166fbfacfb1e6520fbc05e400642b1/docs/VERIFYING.md","https://github.com/tmcleroy/cps2recomp/blob/74e26fb10e166fbfacfb1e6520fbc05e400642b1/docs/TIMING.md","https://github.com/tmcleroy/cps2recomp/blob/74e26fb10e166fbfacfb1e6520fbc05e400642b1/games/sfa2/game.cfg","https://github.com/tmcleroy/cps2recomp/blob/74e26fb10e166fbfacfb1e6520fbc05e400642b1/tools/audit.sh","https://github.com/tmcleroy/cps2recomp/blob/74e26fb10e166fbfacfb1e6520fbc05e400642b1/.github/workflows/ci.yml","https://github.com/tmcleroy/cps2recomp/blob/74e26fb10e166fbfacfb1e6520fbc05e400642b1/.gitignore","https://github.com/tmcleroy/cps2recomp/blob/74e26fb10e166fbfacfb1e6520fbc05e400642b1/LICENSE","https://github.com/tmcleroy/cps2recomp/releases/tag/v0.4.0-beta.3"],"category":"reconstruction-cases","description_en":"Translates the 68000 game programs and Z80 sound programs of Capcom arcade boards ahead of time into C++ and runs them on a machine model written for the project, with an interpreter for code that has not been translated. One launcher covers Street Fighter Alpha and Alpha 2, Super Puzzle Fighter II Turbo, Vampire Savior and its variants, Vampire Hunter 2, Alien vs. Predator and the CPS-1 Cadillacs and Dinosaurs, adding training modes, widescreen and three-player options. Translated code is generated from the user’s own ROM sets, and a check build compares it block by block with the interpreter.","description_zh":"将 Capcom 街机基板上的 68000 游戏程序与 Z80 声音程序预先转译为 C++，并在为本项目编写的机器模型上运行，尚未转译的代码则交给解释器执行。一个启动器涵盖《街头霸王 Alpha》及《Alpha 2》、《超级益智战士 II Turbo》、《恶魔战士：救世主》及其变体、《恶魔猎人 2》、《异形大战铁血战士》以及 CPS-1 平台的《恐龙新世纪》，并加入训练模式、宽屏和三人游戏选项。转译代码由使用者自有的 ROM 套装生成，专门的检查构建会逐个代码块将其与解释器对比。","entry_url":"https://awesomerea.org/resources/cps2recomp-arcade-static-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/cps2recomp-arcade-static-recomp-case/","evidence_url":"https://github.com/tmcleroy/cps2recomp/blob/74e26fb10e166fbfacfb1e6520fbc05e400642b1/README.md","group":"cases","id":"cps2recomp-arcade-static-recomp-case","json_url":"https://awesomerea.org/resources/cps2recomp-arcade-static-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/cps2recomp-arcade-static-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cps2recomp-arcade-static-recomp-case/index.md","name":"CPS-2 Recomp: static recompilation of Capcom CPS-2 and CPS-1 arcade games","name_zh":"CPS-2 Recomp：Capcom CPS-2 与 CPS-1 街机游戏的静态重编译","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at main (2026-10-19), eight commits after release v0.4.0-beta.3, published the same day for macOS 13+, Linux x86_64 including Steam Deck, and 64-bit Windows 10/11. README labels the collection beta: the fighting games play from start to ending, the beat-’em-ups have been run through their first stages under automated play, and few machines and controllers have been tried; Street Fighter Alpha has no training mode or widescreen yet.","Each game needs the user’s own copy of one specific MAME-style ROM set, such as sfa2u (USA 960430) or vsavj (Japan 970519), with its key file for CPS-2 titles; each game.cfg lists the expected files and checksums. THIRD_PARTY_NOTICES states that nothing from any game or board is in the repository and that translated code is made on the machine of someone who has the ROM set; RELEASING.md adds that each released game program contains that game’s translated and compiled 68000 and Z80 code, a risk the maintainer accepted on 2026-10-12.","Source builds use make with CMake, Ninja, Python 3 and SDL 3.4.16 or later: Apple clang on macOS, GCC 13+ or Clang 16+ with CMake 3.28+ on Linux, and MinGW-w64 cross-compilation or an MSYS2 UCRT64 shell for Windows. The first build writes the deciphered program, and an explore step of about ten minutes finds code through automated play before translating it; code it does not find keeps running on the interpreter.","docs/VERIFYING.md documents a check build that runs each translated block beside the interpreter and stops at the first difference in registers, flags, cycles, control flow or memory writes, plus per-frame state-hash comparisons between run modes; the optional arcade timing was compared with a simulated jtcps2 model of the board. CI runs an audit for committed game files, keys and unlisted third-party code, and builds and starts each platform’s package with a stand-in game and no game code.","The project is GPL-3.0; machine/cps2crypt.cpp is MAME’s BSD-3-Clause CPS-2 cipher code, the launcher descends from wiiparty-recomp (GPL-3.0-or-later) through the author’s recomp-common, and sound/driver.cpp is a hand rewrite of Capcom’s QSound sound program that reads its tables and samples from the user’s ROMs. Capcom and the other rights holders keep their game rights."],"requirements_zh":["审阅版本为 main（2026-10-19），比同日发布的 v0.4.0-beta.3 多八个提交；该版面向 macOS 13+、含 Steam Deck 在内的 Linux x86_64 以及 64 位 Windows 10／11。README 将合集标为测试版：格斗游戏可从开场打到结局，清版动作游戏在自动游玩下运行过前几关，测试过的机器和手柄仍很少；《街头霸王 Alpha》尚无训练模式和宽屏。","每款游戏都需要使用者自有的一套指定 MAME 式 ROM 套装，例如 sfa2u（美版 960430）或 vsavj（日版 970519），CPS-2 游戏还需相应的密钥文件；各游戏的 game.cfg 列出了预期文件及校验和。THIRD_PARTY_NOTICES 声明仓库中不含任何来自游戏或基板的内容，转译代码只在持有 ROM 套装者的机器上生成；RELEASING.md 另说明，每个发布的游戏程序都包含该游戏经转译并编译的 68000 与 Z80 代码，维护者已于 2026-10-12 接受这一风险。","从源码构建使用 make，并需 CMake、Ninja、Python 3 和 SDL 3.4.16 或更新版本：macOS 上用 Apple clang，Linux 上用 GCC 13+ 或 Clang 16+ 及 CMake 3.28+，Windows 则通过 MinGW-w64 交叉编译或 MSYS2 UCRT64 环境构建。首次构建会写出解密后的程序，随后约十分钟的探索步骤通过自动游玩找出代码再进行转译；未找到的代码仍由解释器执行。","docs/VERIFYING.md 记录了一种检查构建：每个转译代码块都与解释器并行执行，一旦寄存器、标志位、周期数、控制流或内存写入出现差异即停止；此外还在不同运行模式之间逐帧比较状态哈希。可选的街机时序曾与模拟的 jtcps2 基板模型对比。CI 会审计仓库中是否提交了游戏文件、密钥或未列明的第三方代码，并以不含游戏代码的替身游戏构建和启动各平台安装包。","项目采用 GPL-3.0；machine/cps2crypt.cpp 是 MAME 中采用 BSD-3-Clause 的 CPS-2 加密算法代码，启动器经由作者的 recomp-common 源自 wiiparty-recomp（GPL-3.0-or-later），sound/driver.cpp 则是对 Capcom QSound 声音程序的手工重写，其数据表与采样均从使用者的 ROM 中读取。Capcom 及其他权利人仍保有游戏权利。"],"targets":["game"],"url":"https://github.com/tmcleroy/cps2recomp","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-31","additional_evidence_urls":["https://github.com/quarkslab/binbloom/blob/95cfaacf2dfcbeba51c7d09132f188331449ec24/man/binbloom.1","https://github.com/quarkslab/binbloom/blob/95cfaacf2dfcbeba51c7d09132f188331449ec24/configure.ac","https://github.com/quarkslab/binbloom/blob/95cfaacf2dfcbeba51c7d09132f188331449ec24/src/binbloom.c#L1197-L1259","https://github.com/quarkslab/binbloom/blob/95cfaacf2dfcbeba51c7d09132f188331449ec24/src/binbloom.c#L1422-L1443","https://github.com/quarkslab/binbloom/blob/95cfaacf2dfcbeba51c7d09132f188331449ec24/LICENSE","https://github.com/quarkslab/binbloom/releases/tag/v2.1"],"category":"firmware","description_en":"Quarkslab command-line tool that infers basic properties of a headerless raw firmware image from simple statistics on its content, which is why the README says it works with any architecture. It guesses endianness from how the high bytes of pointer-sized values cluster under each byte order, and ranks candidate loading (base) addresses by how many values would then point at indexed text strings and pointer arrays. Given a base address, it also searches automotive ECU firmware for a table of Unified Diagnostic Services (UDS) command IDs and prints the inferred structure layout for use in a disassembler.","description_zh":"Quarkslab 开发的命令行工具，通过对内容做简单统计来推断无文件头原始固件镜像的基本属性，因此 README 称其适用于所有架构。它根据指针宽度数值的高位字节在两种字节序下的聚集程度推测端序，并按候选加载地址（基址）下有多少数值会指向已索引的文本字符串和指针数组，对候选地址排序。给定基址后，它还能在汽车 ECU 固件中查找统一诊断服务（UDS）命令 ID 表，并输出推断出的结构体布局，供反汇编器使用。","entry_url":"https://awesomerea.org/resources/binbloom/","entry_url_zh":"https://awesomerea.org/zh/resources/binbloom/","evidence_url":"https://github.com/quarkslab/binbloom/blob/95cfaacf2dfcbeba51c7d09132f188331449ec24/README.md","group":"tools","id":"binbloom","json_url":"https://awesomerea.org/resources/binbloom/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/binbloom/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binbloom/index.md","name":"binbloom","name_zh":"binbloom 原始固件端序与基址分析工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v2.1, published 2024-06-06 and tagged at the master head, commit 95cfaac from 2022-11-07, whose source reports version 2.1.0. The release adds a -m option for base-address alignment and fixes a crash on very small files and null-pointer and floating-point errors; configure.ac and the man page still say 2.0, and master has no later commits.","The README documents a Linux-only source build with autoreconf, configure, make and make install; configure.ac needs a C compiler, libm and pthreads. The release attaches no prebuilt binaries.","Each run takes one raw firmware dump supplied by the user and assumes a 32-bit target unless -a 64 is given. The README warns that endianness detection may be unreliable below about 10 KB and offers -e to force it; -t adds threads, -f takes a file of known function addresses, and the experimental -d deep search is slower. Output is a ranked list of candidate base addresses, sometimes marked not sure, and the UDS search runs only when -b supplies the base address.","The README calls the UDS search heuristic and prone to false positives, so each candidate table has to be checked by hand. The repository contains no tests or sample firmware and publishes no accuracy results.","Apache-2.0."],"requirements_zh":["审阅时最新版本为 v2.1，发布于 2024-06-06，标签指向 master 最新提交 95cfaac（2022-11-07），其源码报告的版本号为 2.1.0。该版本新增用于设置基址对齐的 -m 选项，并修复了处理极小文件时的崩溃以及空指针和浮点异常错误；configure.ac 和 man 手册仍写作 2.0，master 分支此后没有新的提交。","README 只说明了在 Linux 上从源码构建，步骤为 autoreconf、configure、make 和 make install；configure.ac 需要 C 编译器、libm 和 pthreads。该版本未附带预编译程序。","每次运行处理一个由使用者自备的原始固件转储，未指定 -a 64 时默认按 32 位目标处理。README 提醒，文件小于约 10 KB 时端序检测可能不可靠，此时可用 -e 强制指定；-t 可启用多线程，-f 可提供已知函数地址文件，实验性的 -d 深度搜索速度较慢。输出为按得分排序的候选基址列表，有时会标注不确定；只有用 -b 提供基址时才会执行 UDS 搜索。","README 称 UDS 搜索基于启发式方法，可能出现误报，因此每个候选表都需要人工核实。仓库不含测试或样例固件，也未公布准确率结果。","采用 Apache-2.0 许可。"],"targets":["firmware"],"url":"https://github.com/quarkslab/binbloom","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-31","additional_evidence_urls":["https://github.com/greatscottgadgets/packetry/blob/5a7f98b77aa00519ecf7e811c9f26c6534966d05/docs/source/what_is_packetry.rst","https://github.com/greatscottgadgets/packetry/blob/5a7f98b77aa00519ecf7e811c9f26c6534966d05/docs/source/quick_start.rst","https://github.com/greatscottgadgets/packetry/blob/5a7f98b77aa00519ecf7e811c9f26c6534966d05/docs/source/user_interface.rst","https://github.com/greatscottgadgets/packetry/blob/5a7f98b77aa00519ecf7e811c9f26c6534966d05/CHANGELOG.md","https://github.com/greatscottgadgets/packetry/blob/5a7f98b77aa00519ecf7e811c9f26c6534966d05/Cargo.toml","https://github.com/greatscottgadgets/packetry/blob/5a7f98b77aa00519ecf7e811c9f26c6534966d05/src/backend/mod.rs#L32-L40","https://github.com/greatscottgadgets/packetry/blob/5a7f98b77aa00519ecf7e811c9f26c6534966d05/LICENSE","https://github.com/greatscottgadgets/packetry/releases/tag/v0.5.0"],"category":"protocol-analysis","description_en":"Great Scott Gadgets' USB 2.0 protocol analysis application for live capture with the Cynthion analyzer or for exploring previously captured traffic, working from physical-layer packet data at High, Full and Low Speed. Its GTK 4 interface offers a hierarchical view that expands high-level events into their transactions and packets, plus chronological transaction and packet views, while a device pane summarizes each observed device from its decoded descriptors, including HID report descriptors. Captures are opened and saved as pcap files with the LINKTYPE_USB_2_0 link type, and v0.5.0 added pcapng with custom blocks for non-packet events.","description_zh":"Great Scott Gadgets 推出的 USB 2.0 协议分析应用，可配合 Cynthion 分析仪实时捕获，也可浏览已捕获的流量，处理高速、全速和低速 USB 的物理层数据包。其 GTK 4 界面提供分层视图，可将高层事件逐级展开为事务和数据包，另有按时间顺序排列的事务视图和数据包视图；设备面板则根据解码后的描述符（包括 HID 报告描述符）汇总每个观察到的设备。捕获以 LINKTYPE_USB_2_0 链路类型的 pcap 文件打开和保存，v0.5.0 还加入了带有非数据包事件自定义块的 pcapng 格式。","entry_url":"https://awesomerea.org/resources/packetry/","entry_url_zh":"https://awesomerea.org/zh/resources/packetry/","evidence_url":"https://github.com/greatscottgadgets/packetry/blob/5a7f98b77aa00519ecf7e811c9f26c6534966d05/README.md","group":"tools","id":"packetry","json_url":"https://awesomerea.org/resources/packetry/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/packetry/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/packetry/index.md","name":"Packetry","name_zh":"Packetry USB 2.0 协议分析工具","record_type":"resource","relationship":"foundation","requirements":["Release at review: v0.5.0, published 2025-09-30 with a Windows installer and a Linux x86_64 AppImage; the quick-start guide installs it on macOS with Homebrew. The reviewed main commit is 47 commits ahead with interface, dependency and minimum-Rust changes, while Cargo.toml still reports 0.5.0.","Live capture needs a Cynthion analyzer whose host software is installed and updated with cynthion update; the code also probes iCE40-usbtrace devices, which the documentation does not cover. Viewing existing capture files needs no hardware.","Source builds need Rust 1.93+ according to the README and Cargo.toml (the quick-start guide still says 1.85.1) and GTK 4 headers discoverable through pkg-config. The documentation warns not to build with --all-features, whose optional features are for debugging and testing and degrade normal use.","Captures come from the user's own USB devices and buses. The documentation notes that the hierarchical view can show packets out of chronological order. BSD-3-Clause."],"requirements_zh":["审阅时的版本为 v0.5.0，于 2025-09-30 发布，提供 Windows 安装程序和 Linux x86_64 AppImage；快速入门指南介绍在 macOS 上通过 Homebrew 安装。所审阅的 main 分支提交领先 47 个提交，包含界面、依赖和最低 Rust 版本等改动，而 Cargo.toml 仍标为 0.5.0。","实时捕获需要 Cynthion 分析仪，并安装其主机软件、用 cynthion update 更新；代码还会探测 iCE40-usbtrace 设备，但文档未涉及。查看已有的捕获文件无需硬件。","从源码构建需要 Rust 1.93+（依据 README 和 Cargo.toml；快速入门指南仍写 1.85.1），以及可通过 pkg-config 找到的 GTK 4 头文件。文档警告不要使用 --all-features 构建，其中的可选功能用于调试和测试，会影响正常使用。","捕获数据来自使用者自己的 USB 设备和总线。文档指出分层视图中的数据包可能不按时间顺序显示。采用 BSD-3-Clause 许可。"],"targets":["protocol"],"url":"https://github.com/greatscottgadgets/packetry","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-31","additional_evidence_urls":["https://github.com/gaasedelen/lucid/blob/9f2480dc8e6bbb9421b5711533b0a98d2e9fb5af/README.md#L19-L33","https://github.com/gaasedelen/lucid/blob/9f2480dc8e6bbb9421b5711533b0a98d2e9fb5af/README.md#L71-L98","https://github.com/gaasedelen/lucid/blob/9f2480dc8e6bbb9421b5711533b0a98d2e9fb5af/plugins/lucid/ui/explorer.py#L1-L10","https://github.com/gaasedelen/lucid/blob/9f2480dc8e6bbb9421b5711533b0a98d2e9fb5af/LICENSE","https://github.com/gaasedelen/lucid/releases/tag/v0.1.1","https://github.com/gaasedelen/lucid/pull/5"],"category":"native-analysis","description_en":"IDA Pro plugin by Markus Gaasedelen for studying how the Hex-Rays decompiler transforms its microcode intermediate language. Opened from a Pseudocode window with View microcode, its explorer stays synchronized with the pseudocode and lets the user scroll a selected microinstruction through each microcode maturity level, tracing sub-operands back to their origins and changing the cursor color when the traced code has been optimized away. Nested sub-instructions can be shown as tree graphs; the author labels it a developer-oriented prototype and code resource, not a general-purpose reverse-engineering tool.","description_zh":"Markus Gaasedelen 开发的 IDA Pro 插件，用于研究 Hex-Rays 反编译器如何逐步变换其微码（microcode）中间语言。在伪代码窗口中选择 View microcode 即可打开浏览器，它与伪代码保持同步，用户可让选中的微指令依次滚动经过各个微码成熟度层级，把子操作数追溯到来源；若追踪的代码已被优化掉，光标会变色提示。嵌套的子指令可显示为树状图；作者将其定位为面向开发者的原型和代码参考，而不是通用逆向工程工具。","entry_url":"https://awesomerea.org/resources/lucid-microcode-explorer/","entry_url_zh":"https://awesomerea.org/zh/resources/lucid-microcode-explorer/","evidence_url":"https://github.com/gaasedelen/lucid/blob/9f2480dc8e6bbb9421b5711533b0a98d2e9fb5af/README.md","group":"tools","id":"lucid-microcode-explorer","json_url":"https://awesomerea.org/resources/lucid-microcode-explorer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/lucid-microcode-explorer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/lucid-microcode-explorer/index.md","name":"Lucid","name_zh":"Lucid Hex-Rays 微码浏览器","record_type":"resource","relationship":"foundation","requirements":["Unmaintained since its initial release: v0.1.1, tagged 2020-09-15, is the last release and the reviewed master commit, with no commits since, and a community pull request adding further features has been open and unmerged since 2024. The README's list of known bugs from that release, including a possible IDA crash when double-clicking some address comments and little testing on macOS and Linux, has not been revised.","Needs IDA Pro 7.5 or newer with a Hex-Rays decompiler for the analyzed architecture. It is a Python 2/3 plugin without third-party dependencies, installed by copying the plugins folder into IDA's user plugin directory; its UI imports IDA's bundled PyQt5, and compatibility with current IDA releases is not documented.","Works on binaries the user has opened and decompiled in IDA. It is a viewer for decompiler internals; the README lists microcode-optimizer workflows only as possible future work.","MIT license."],"requirements_zh":["自首次发布后已无人维护：2020-09-15 打标签的 v0.1.1 是最后一个版本，也就是所审阅的 master 提交，此后再无新提交；一个增加更多功能的社区拉取请求自 2024 年起一直未合并。README 中首次发布时列出的已知问题（包括双击某些地址注释可能导致 IDA 崩溃，以及在 macOS 和 Linux 上测试较少）至今未更新。","需要 IDA Pro 7.5 或更高版本，并具备所分析架构对应的 Hex-Rays 反编译器。它是没有第三方依赖的 Python 2/3 插件，将 plugins 文件夹复制到 IDA 用户插件目录即可安装；界面代码导入 IDA 自带的 PyQt5，与当前 IDA 版本的兼容性没有文档说明。","作用于使用者已在 IDA 中打开并反编译的二进制。它只是查看反编译器内部状态的工具；README 仅把微码优化器相关工作流列为未来可能的工作。","采用 MIT 许可。"],"targets":["binary"],"url":"https://github.com/gaasedelen/lucid","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-31","additional_evidence_urls":["https://github.com/Jeija/bluefluff/blob/9e865c47326167c2d4e6f47d96321e8e5cfc0e32/doc/bluetooth.md","https://github.com/Jeija/bluefluff/blob/9e865c47326167c2d4e6f47d96321e8e5cfc0e32/doc/generalplus.md","https://github.com/Jeija/bluefluff/blob/9e865c47326167c2d4e6f47d96321e8e5cfc0e32/doc/nordic.md","https://github.com/Jeija/bluefluff/blob/9e865c47326167c2d4e6f47d96321e8e5cfc0e32/doc/actions.md","https://github.com/Jeija/bluefluff/blob/9e865c47326167c2d4e6f47d96321e8e5cfc0e32/fluffd/fluffd.js","https://github.com/Jeija/bluefluff/blob/9e865c47326167c2d4e6f47d96321e8e5cfc0e32/fluffd/package.json","https://github.com/Jeija/bluefluff/blob/9e865c47326167c2d4e6f47d96321e8e5cfc0e32/Dockerfile","https://github.com/Jeija/bluefluff/blob/9e865c47326167c2d4e6f47d96321e8e5cfc0e32/doc/docker.md","https://github.com/Jeija/bluefluff/blob/9e865c47326167c2d4e6f47d96321e8e5cfc0e32/LICENSE.md"],"category":"reconstruction-cases","description_en":"Documents the Bluetooth Low Energy interface of Hasbro's Furby Connect toy, worked out, according to its notes, from the companion app's native library, sniffed BLE traffic and trial and error. It maps the GATT services and the command and response bytes of the toy's Nordic radio and GeneralPlus controller, covering action sequences, antenna colour, mood values, sensor reports and a hidden debug screen. fluffd, a Node.js daemon built on the noble BLE library, exposes these commands through an HTTP API and a browser control page.","description_zh":"记录 Hasbro 玩具 Furby Connect 的蓝牙低功耗（BLE）接口；据其说明，这些内容来自对配套应用原生库的分析、BLE 流量嗅探和反复试验。文档梳理了 GATT 服务，以及玩具中 Nordic 无线芯片和 GeneralPlus 控制器的命令与响应字节，涵盖动作序列、天线颜色、情绪数值、传感器报告和一个隐藏的调试界面。fluffd 是基于 noble BLE 库的 Node.js 守护进程，通过 HTTP API 和浏览器控制页面提供这些命令。","entry_url":"https://awesomerea.org/resources/bluefluff-furby-connect-ble-case/","entry_url_zh":"https://awesomerea.org/zh/resources/bluefluff-furby-connect-ble-case/","evidence_url":"https://github.com/Jeija/bluefluff/blob/9e865c47326167c2d4e6f47d96321e8e5cfc0e32/README.md","group":"cases","id":"bluefluff-furby-connect-ble-case","json_url":"https://awesomerea.org/resources/bluefluff-furby-connect-ble-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/bluefluff-furby-connect-ble-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bluefluff-furby-connect-ble-case/index.md","name":"bluefluff: reverse engineering Furby Connect's Bluetooth LE protocol","name_zh":"bluefluff：逆向分析 Furby Connect 的蓝牙低功耗协议","record_type":"resource","relationship":"independent-reconstruction","requirements":["Most research commits date from 2017 and 2018, with a few later fixes and a Docker setup added in March 2026. The README reports that large parts of the BLE protocol are understood, while the action list is incomplete, the update (DLC) format is only partly explored, and code execution, custom LCD animations and the sleep-mask connector remain untried.","Requires a Furby Connect and a host with Bluetooth LE, built in or through a USB Bluetooth 4.0+ adapter. The repository contains no Hasbro update files or app code. The README warns that interfacing in unwarranted ways can brick the toy and will almost certainly void its warranty.","fluffd needs Node.js 7.0 or later according to the README and pins @abandonware/noble 1.9.2-23. The README covers Linux, which needs libudev development files and a running BlueZ, and macOS, which needs xpc-connection, and also names FreeBSD and Windows. The Docker image uses node:16-bullseye, needs host networking for raw HCI access and supports Linux hosts only.","The findings are the author's documented observations, made without opening the toy. The repository has no tests or CI.","MIT (2017, Florian Euchner); the README's disclaimer says the information is for educational purposes only. Furby Connect, its companion app and Hasbro's content keep their own rights."],"requirements_zh":["大部分研究提交集中在 2017 和 2018 年，此后只有少量修复，并于 2026 年 3 月加入了 Docker 配置。README 报告已弄清 BLE 协议的大部分内容，但动作列表尚不完整，更新包（DLC）格式只做了部分探索，代码执行、自定义 LCD 动画和睡眠面罩接口均未尝试。","需要一台 Furby Connect，以及内置蓝牙低功耗或配有 USB 蓝牙 4.0+ 适配器的主机。仓库不含 Hasbro 的更新文件或应用代码。README 警告，以不当方式操作可能使玩具变砖，而且几乎必然导致失去保修。","README 指出 fluffd 需要 Node.js 7.0 或更高版本，并固定使用 @abandonware/noble 1.9.2-23。README 说明了 Linux（需要 libudev 开发文件和运行中的 BlueZ）和 macOS（需要 xpc-connection）的安装方法，也提到 FreeBSD 和 Windows。Docker 镜像基于 node:16-bullseye，需要使用主机网络以访问原始 HCI，仅支持 Linux 主机。","这些发现是作者在未拆开玩具的情况下所记录的观察结果。仓库没有测试或 CI。","采用 MIT 许可（2017 年，Florian Euchner）；README 的免责声明称这些信息仅供教育用途。Furby Connect、其配套应用以及 Hasbro 的内容各自保留其权利。"],"targets":["protocol"],"url":"https://github.com/Jeija/bluefluff","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-31","additional_evidence_urls":["https://github.com/ax/apk.sh/blob/2a1ed25e861dacfb4fec1aef7b099813abff24ed/README.md#L121-L130","https://github.com/ax/apk.sh/blob/2a1ed25e861dacfb4fec1aef7b099813abff24ed/apk.sh","https://github.com/ax/apk.sh/blob/2a1ed25e861dacfb4fec1aef7b099813abff24ed/LICENSE","https://github.com/ax/apk.sh/releases/tag/v1.1.3"],"category":"android","description_en":"Bash script that automates repetitive Android app analysis chores around apktool: pulling an installed package from a device or emulator, decoding resources and disassembling dex code, and rebuilding the decoded directory into an APK. Split APKs from app bundles are combined into a single APK when pulled, and the script can also prepare a copy for Frida instrumentation.","description_zh":"一个 Bash 脚本，围绕 apktool 自动完成 Android 应用分析中的重复性工作：从设备或模拟器拉取已安装的应用包、解码资源并反汇编 dex 代码，以及将解码后的目录重新构建为 APK。拉取 app bundle 的拆分 APK 时会将其合并为单个 APK，脚本还可以准备一份用于 Frida 插桩的副本。","entry_url":"https://awesomerea.org/resources/apk-sh/","entry_url_zh":"https://awesomerea.org/zh/resources/apk-sh/","evidence_url":"https://github.com/ax/apk.sh/blob/2a1ed25e861dacfb4fec1aef7b099813abff24ed/README.md","group":"tools","id":"apk-sh","json_url":"https://awesomerea.org/resources/apk-sh/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/apk-sh/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/apk-sh/index.md","name":"apk.sh","name_zh":"apk.sh Android 应用分析脚本","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v1.1.3, published 2026-01-26, which matches the reviewed main commit. It is a single Bash script; the README lists apktool, apksigner, unxz, zipalign, aapt and adb as requirements.","On first use the script creates a hidden apk.sh folder in the home directory and downloads the tools it needs there, including the latest apktool release and Android build tools, so a network connection and a Java runtime are needed.","Input is an APK or an installed package the user is authorized to analyze; pulling requires adb access to the device or emulator. Rebuilt APKs are modified copies, not the original package.","GPL-3.0."],"requirements_zh":["审阅时的最新版本为 v1.1.3，发布于 2026-01-26，与所审阅的 main 提交一致。它是单个 Bash 脚本；README 列出的依赖为 apktool、apksigner、unxz、zipalign、aapt 和 adb。","首次使用时，脚本会在用户主目录下创建隐藏的 apk.sh 文件夹，并将所需工具下载到其中，包括最新的 apktool 版本和 Android 构建工具，因此需要网络连接和 Java 运行环境。","输入应为使用者有权分析的 APK 或已安装的应用包；拉取应用需要能通过 adb 访问设备或模拟器。重新构建出的 APK 是修改后的副本，并非原始安装包。","采用 GPL-3.0 许可。"],"targets":["app"],"url":"https://github.com/ax/apk.sh","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-31","additional_evidence_urls":["https://github.com/wargio/r2dec-js/blob/32ada0dc8bffd1e3ec55d6134531eaae244502ed/README.md#L37-L114","https://github.com/wargio/r2dec-js/blob/32ada0dc8bffd1e3ec55d6134531eaae244502ed/meson.build","https://github.com/wargio/r2dec-js/blob/32ada0dc8bffd1e3ec55d6134531eaae244502ed/subprojects/libquickjs.wrap","https://github.com/wargio/r2dec-js/blob/32ada0dc8bffd1e3ec55d6134531eaae244502ed/.github/workflows/ci.yml","https://github.com/wargio/r2dec-js/blob/32ada0dc8bffd1e3ec55d6134531eaae244502ed/.ci-scripts/ci-tests.sh","https://github.com/wargio/r2dec-js/tree/32ada0dc8bffd1e3ec55d6134531eaae244502ed/LICENSES","https://github.com/wargio/r2dec-js/releases/tag/6.2.0","https://github.com/rizinorg/jsdec/blob/9fc60988ddfe4231971f2cbf5f1064460072c2b3/README.md"],"category":"native-analysis","description_en":"Decompiler plugin for radare2 that turns the disassembly of an analyzed function into pseudo-C through the pdd command. Its decompiler is written in JavaScript, with one module per architecture, compiled to QuickJS bytecode and embedded in a native radare2 core plugin; output can sit beside the assembly or offsets, show only scope blocks, casts or cross-references, render as HTML, or be written back into radare2 as comments. The README lists x86/x64, 16/32/64-bit ARM, MIPS, PowerPC (including VLE), SPARC, AVR, V850 and Dalvik, plus experimental 6502, 8051, BPF, m68k, SuperH, WebAssembly and RISC-V support.","description_zh":"radare2 的反编译插件，通过 pdd 命令把已分析函数的反汇编转换为伪 C 代码。反编译器用 JavaScript 编写，每种架构对应一个模块，编译为 QuickJS 字节码后嵌入原生的 radare2 核心插件；输出可与汇编或偏移并排显示，可只显示作用域块，可显示类型转换或交叉引用，也可输出 HTML 或作为注释写回 radare2。README 列出的架构包括 x86/x64、16/32/64 位 ARM、MIPS、PowerPC（含 VLE）、SPARC、AVR、V850 和 Dalvik，另有实验性的 6502、8051、BPF、m68k、SuperH、WebAssembly 和 RISC-V 支持。","entry_url":"https://awesomerea.org/resources/r2dec/","entry_url_zh":"https://awesomerea.org/zh/resources/r2dec/","evidence_url":"https://github.com/wargio/r2dec-js/blob/32ada0dc8bffd1e3ec55d6134531eaae244502ed/README.md","group":"tools","id":"r2dec","json_url":"https://awesomerea.org/resources/r2dec/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/r2dec/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/r2dec/index.md","name":"r2dec","name_zh":"r2dec radare2 反编译插件","record_type":"resource","relationship":"foundation","requirements":["Release at review: 6.2.0, published 2026-08-16 from the reviewed master commit, with a Linux amd64 plugin, Windows 32- and 64-bit builds and a source archive that includes dependencies. Release numbers follow radare2's: CI builds against radare2 6.2.0 on Linux and Windows, and the macOS job is commented out. Install through r2pm, or build with meson 0.55.0+ and ninja against the radare2 development files; QuickJS is fetched as a meson subproject.","Binaries are supplied by the user and the target function must first be analyzed in radare2 (af). Output is readable pseudo-C rather than recovered source; as the README example shows, it can keep register assignments such as eax and generic local names. Regression tests live in the separate r2dec-regression repository, and issue reports use the JSON produced by pddi.","This repository builds only a radare2 plugin; Rizin's jsdec decompiler is a separate project. Source files carry SPDX headers: BSD-3-Clause for most of the code and MIT for the bundled base64 helper, so GitHub detects no single license."],"requirements_zh":["审阅时的版本为 6.2.0，于 2026-08-16 基于所审阅的 master 提交发布，提供 Linux amd64 插件、Windows 32 位和 64 位构建，以及包含依赖的源码包。版本号与 radare2 保持一致：CI 在 Linux 和 Windows 上针对 radare2 6.2.0 构建，macOS 任务已被注释停用。可通过 r2pm 安装，也可用 meson 0.55.0+ 和 ninja 结合 radare2 开发文件构建；QuickJS 作为 meson 子项目自动获取。","二进制由使用者自备，且须先在 radare2 中分析目标函数（af）。输出是可读的伪 C 代码，并非恢复出的源码；从 README 示例可见，结果可能保留 eax 等寄存器赋值和通用的局部变量名。回归测试位于独立的 r2dec-regression 仓库，提交问题时需附上 pddi 生成的 JSON。","本仓库只构建 radare2 插件；Rizin 使用的 jsdec 反编译器是另一个独立项目。源文件带有 SPDX 标注：大部分代码为 BSD-3-Clause，随附的 base64 辅助代码为 MIT，因此 GitHub 无法识别出单一许可证。"],"targets":["binary"],"url":"https://github.com/wargio/r2dec-js","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-31","additional_evidence_urls":["https://github.com/AsahiLinux/docs/blob/0d1f8917fa88745d62a4c05d802c4a7298c8616b/docs/sw/m1n1-user-guide.md","https://github.com/AsahiLinux/m1n1/blob/7cde7d1a784d851ebfee5579fa363c38b14150c0/proxyclient/tools/run_guest.py","https://github.com/AsahiLinux/m1n1/tree/7cde7d1a784d851ebfee5579fa363c38b14150c0/proxyclient/hv","https://github.com/AsahiLinux/m1n1/blob/7cde7d1a784d851ebfee5579fa363c38b14150c0/requirements.txt","https://github.com/AsahiLinux/m1n1/blob/7cde7d1a784d851ebfee5579fa363c38b14150c0/.github/workflows/test.yml","https://github.com/AsahiLinux/m1n1/blob/7cde7d1a784d851ebfee5579fa363c38b14150c0/.github/workflows/build.yml","https://github.com/AsahiLinux/m1n1/blob/7cde7d1a784d851ebfee5579fa363c38b14150c0/LICENSE","https://github.com/AsahiLinux/m1n1/blob/7cde7d1a784d851ebfee5579fa363c38b14150c0/LICENSE.MIT","https://github.com/AsahiLinux/m1n1/blob/7cde7d1a784d851ebfee5579fa363c38b14150c0/AGENTS.md","https://asahilinux.org/llm-policy/","https://github.com/AsahiLinux/m1n1/releases/tag/v1.9.9","https://github.com/AsahiLinux/m1n1/releases/tag/v2.0.0"],"category":"firmware","description_en":"Asahi Linux's bootloader and hardware-research environment for Apple Silicon Macs. It bridges Apple's boot chain to Linux by loading appended device trees, initramfs and kernels; in proxy mode a USB link lets a Python client probe hardware live and run macOS or Linux under m1n1's hypervisor while tracing its hardware accesses.","description_zh":"Asahi Linux 面向 Apple Silicon Mac 的引导程序与硬件研究环境。它将 Apple 的启动链衔接到 Linux，加载附加在其后的设备树、initramfs 和内核；在代理模式下，Python 客户端可通过 USB 连接实时探查硬件，并在 m1n1 的虚拟机监控器中运行 macOS 或 Linux，同时追踪其硬件访问。","entry_url":"https://awesomerea.org/resources/m1n1/","entry_url_zh":"https://awesomerea.org/zh/resources/m1n1/","evidence_url":"https://github.com/AsahiLinux/m1n1/blob/7cde7d1a784d851ebfee5579fa363c38b14150c0/README.md","group":"tools","id":"m1n1","json_url":"https://awesomerea.org/resources/m1n1/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/m1n1/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/m1n1/index.md","name":"m1n1","name_zh":"m1n1 Apple Silicon 引导与硬件研究工具","record_type":"resource","relationship":"foundation","requirements":["Under active development: the reviewed main commit (2026-10-19) is 53 commits past the v2.0.0 tag (2026-10-02), whose message calls it the first GPL release, otherwise identical to v1.9.9. The latest GitHub release, v1.9.9, ships a stage-2 m1n1.bin and a UEFI-only package holding just an m1n1 boot.bin.","Runs only on Apple Silicon Macs. Builds need an aarch64-linux-gnu-gcc cross toolchain (or a native ARM64 one), LLVM and lld on macOS, or the bundled compose setup, plus Rust's aarch64-unknown-none-softfloat target for chainloading builds. The Python proxy client (pyserial, construct, asn1) talks to m1n1 over USB from another host.","Apple's kmutil installs m1n1 as a custom boot object from macOS recovery, normally via the Asahi Linux installer. run_guest.py takes a Mach-O guest such as an XNU kernelcache from the user's own macOS install; the repository ships no Apple firmware, kernels or macOS components. proxyclient/hv holds 27 tracers for blocks such as AGX, DCP, NVMe and SMC.","CI builds main, checks C and Rust formatting and runs the proxy client's pytest suite on Ubuntu and macOS 14 and 15; those tests cover its assembler, object loading and toolchain handling, not behavior on Mac hardware.","Code through v1.9.9 stays MIT; from v2.0.0 m1n1 is GPL-2.0-or-later, and embedded third-party code such as libfdt, Arm Trusted Firmware portions and dlmalloc, and vendored Rust crates keep their own licenses. Asahi Linux's LLM policy broadly forbids generative AI for material contributions, citing its clean-room reverse-engineering rules; AGENTS.md, CLAUDE.md and GEMINI.md say the maintainers forbid any AI or LLM use for legal reasons."],"requirements_zh":["处于活跃开发中：所审阅的 main 提交（2026-10-19）比 v2.0.0 标签（2026-10-02）多 53 个提交；该标签说明称其为首个 GPL 版本，其余与 v1.9.9 相同。GitHub 上最新的发行版 v1.9.9 提供第二阶段 m1n1.bin，以及只含 m1n1 boot.bin 的纯 UEFI 软件包。","只能在 Apple Silicon Mac 上运行。构建需要 aarch64-linux-gnu-gcc 交叉工具链（或 ARM64 原生工具链）、macOS 上的 LLVM 与 lld，或仓库附带的 compose 环境；支持链式加载的构建还需 Rust 的 aarch64-unknown-none-softfloat 目标。Python 代理客户端（依赖 pyserial、construct、asn1）在另一台主机上通过 USB 与 m1n1 通信。","m1n1 由 Apple 的 kmutil 在 macOS 恢复环境中安装为自定义启动对象，通常由 Asahi Linux 安装器完成。run_guest.py 接受 Mach-O 格式的客体，例如来自使用者自有 macOS 安装的 XNU kernelcache；仓库不附带任何 Apple 固件、内核或 macOS 组件。proxyclient/hv 收有 27 个追踪脚本，覆盖 AGX、DCP、NVMe 和 SMC 等硬件模块。","CI 会构建 main 分支、检查 C 与 Rust 代码格式，并在 Ubuntu 及 macOS 14、15 上运行代理客户端的 pytest 测试套件；这些测试覆盖其汇编器、目标文件加载和工具链处理，不涉及在 Mac 硬件上的行为。","v1.9.9 及以前的代码仍采用 MIT 许可；自 v2.0.0 起 m1n1 采用 GPL-2.0-or-later，内嵌的 libfdt、部分 Arm Trusted Firmware 代码、dlmalloc 等第三方代码及随附的 Rust crate 保留各自许可。Asahi Linux 的 LLM 政策以其净室逆向工程规则为由，广泛禁止在实质性贡献中使用生成式 AI；AGENTS.md、CLAUDE.md 和 GEMINI.md 则称维护者出于法律原因禁止任何 AI 或 LLM 的使用。"],"targets":["firmware"],"url":"https://github.com/AsahiLinux/m1n1","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-31","additional_evidence_urls":["https://github.com/leveldown-security/SVD-Loader-Ghidra/blob/4b21fa54a1f516e25e959939f6e1251263c74725/SVD-Loader.py","https://github.com/leveldown-security/SVD-Loader-Ghidra/blob/4b21fa54a1f516e25e959939f6e1251263c74725/SVD-Loader.py#L84-L105","https://github.com/leveldown-security/SVD-Loader-Ghidra/blob/4b21fa54a1f516e25e959939f6e1251263c74725/SVD-Loader.py#L131-L201","https://github.com/leveldown-security/SVD-Loader-Ghidra/blob/4b21fa54a1f516e25e959939f6e1251263c74725/cmsis_svd/__init__.py","https://github.com/leveldown-security/SVD-Loader-Ghidra/blob/4b21fa54a1f516e25e959939f6e1251263c74725/LICENSE"],"category":"firmware","description_en":"Ghidra script from leveldown security that reads a CMSIS-SVD file, the XML format describing a microcontroller's memory-mapped peripherals and their registers, and applies it to firmware already loaded in Ghidra. It creates memory blocks for the peripheral address ranges, a structure type for each peripheral with its registers as fields, and a label at each peripheral base address, so register accesses can be read by peripheral and register name. It targets little-endian Arm Cortex-M devices and bundles a fork of the cmsis-svd parser ported to Ghidra's Jython.","description_zh":"leveldown security 发布的 Ghidra 脚本，读取 CMSIS-SVD 文件（描述微控制器内存映射外设及其寄存器的 XML 格式），并将其应用到已载入 Ghidra 的固件上。它为外设地址范围创建内存块，为每个外设生成以寄存器为字段的结构体类型，并在各外设基址处添加标签，从而可按外设和寄存器名称阅读寄存器访问。它面向小端 Arm Cortex-M 设备，并附带一份移植到 Ghidra Jython 环境的 cmsis-svd 解析器分支。","entry_url":"https://awesomerea.org/resources/svd-loader-ghidra/","entry_url_zh":"https://awesomerea.org/zh/resources/svd-loader-ghidra/","evidence_url":"https://github.com/leveldown-security/SVD-Loader-Ghidra/blob/4b21fa54a1f516e25e959939f6e1251263c74725/README.md","group":"tools","id":"svd-loader-ghidra","json_url":"https://awesomerea.org/resources/svd-loader-ghidra/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/svd-loader-ghidra/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/svd-loader-ghidra/index.md","name":"SVD-Loader for Ghidra","name_zh":"SVD-Loader：Ghidra CMSIS-SVD 外设映射脚本","record_type":"resource","relationship":"foundation","requirements":["The repository has no releases or tags. The reviewed master head is a 2024-02-01 merge that expanded the installation instructions; the last code changes, merged on 2023-03-04, added error handling to the script and fixed derivedFrom handling for peripherals in the bundled parser. The README names no supported Ghidra release, a 2019 commit fixed compatibility with Ghidra 9.1, and the repository has no tests.","It runs inside Ghidra's CodeBrowser: add the cloned repository as a script directory in the Script Manager, then run SVD-Loader.py on the open program. The script is written for Ghidra's Jython environment, and it imports the bundled cmsis_svd package (version 0.4) from the same directory.","Supply the CMSIS-SVD file for the target chip, which the README suggests taking from the cmsis-svd collection or a Keil software pack, and the firmware image already imported into Ghidra. The script stops on an SVD that declares a big-endian CPU and warns but continues when the CPU is not a Cortex-M. Peripheral ranges that conflict with existing memory blocks are reported and skipped.","Only peripherals and registers are applied: the generated memory blocks are uninitialized, volatile and read/write, and register bit fields, enumerated values and interrupts from the SVD are not added. Results depend on the supplied SVD file; when a block or structure cannot be created, the script prints the failure and moves on.","SVD-Loader.py is GPL-3.0; the forked cmsis_svd/ code keeps upstream cmsis-svd's Apache-2.0 license. The blog post the README links for usage details returned HTTP 404 at review."],"requirements_zh":["仓库没有发布版本或标签。所审阅的 master 最新提交是 2024-02-01 的一次合并，扩充了安装说明；最近的代码改动于 2023-03-04 合并，为脚本加入了错误处理，并修复了内置解析器对外设 derivedFrom 的处理。README 未说明支持的 Ghidra 版本，2019 年的一次提交修复了与 Ghidra 9.1 的兼容性，仓库也没有测试。","脚本在 Ghidra 的 CodeBrowser 中运行：在脚本管理器中把克隆下来的仓库添加为脚本目录，再对当前打开的程序运行 SVD-Loader.py。脚本面向 Ghidra 的 Jython 环境编写，并从同一目录导入内置的 cmsis_svd 包（版本 0.4）。","需要提供目标芯片的 CMSIS-SVD 文件（README 建议从 cmsis-svd 合集或 Keil 软件包获取），并已把固件镜像导入 Ghidra。若 SVD 声明为大端 CPU，脚本会停止运行；若 CPU 不是 Cortex-M，脚本会提示警告但继续执行。与已有内存块冲突的外设地址范围会被报告并跳过。","脚本只应用外设和寄存器：生成的内存块为未初始化、易失、可读写，不会添加 SVD 中的寄存器位字段、枚举值和中断。结果取决于所提供的 SVD 文件；无法创建内存块或结构体时，脚本只打印失败信息并继续执行。","SVD-Loader.py 采用 GPL-3.0；分支而来的 cmsis_svd/ 代码沿用上游 cmsis-svd 的 Apache-2.0 许可。README 中提供使用说明的博客链接在审阅时返回 HTTP 404。"],"targets":["firmware"],"url":"https://github.com/leveldown-security/SVD-Loader-Ghidra","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-31","additional_evidence_urls":["https://github.com/CommitteeOfZero/impacto/blob/b30493852424d32c7806307486fd33edfa0bc54a/doc/getting_started.md","https://github.com/CommitteeOfZero/impacto/blob/b30493852424d32c7806307486fd33edfa0bc54a/doc/font-lb/font-lb.md","https://github.com/CommitteeOfZero/impacto/blob/b30493852424d32c7806307486fd33edfa0bc54a/profiles/mo6tw/vfs.lua","https://github.com/CommitteeOfZero/impacto/tree/b30493852424d32c7806307486fd33edfa0bc54a/resources","https://github.com/CommitteeOfZero/impacto/blob/b30493852424d32c7806307486fd33edfa0bc54a/resources/cclcc/icondata/icon.png","https://github.com/CommitteeOfZero/impacto/blob/b30493852424d32c7806307486fd33edfa0bc54a/.github/workflows/impacto.yml","https://github.com/CommitteeOfZero/impacto/blob/b30493852424d32c7806307486fd33edfa0bc54a/CMakeLists.txt","https://github.com/CommitteeOfZero/impacto/blob/b30493852424d32c7806307486fd33edfa0bc54a/vcpkg.json","https://github.com/CommitteeOfZero/impacto/blob/b30493852424d32c7806307486fd33edfa0bc54a/THIRDPARTY.md","https://github.com/CommitteeOfZero/impacto/blob/b30493852424d32c7806307486fd33edfa0bc54a/LICENSE","https://github.com/CommitteeOfZero/impacto/issues/1","https://github.com/CommitteeOfZero/impacto/releases/tag/0.10.8.887"],"category":"reconstruction-cases","description_en":"Reimplements the MAGES. visual-novel engine, used by the Science Adventure and Memories Off series, in C++ with OpenGL, running supported titles from the user’s original data files through per-game Lua profiles in one binary. README says all endings can be reached in at least one game, Memories Off 6 T-Wave, but no game is fully complete. The project’s tracking issue lists partial support for titles including Chaos;Head Love Chu Chu, Chaos;Child Love Chu Chu, Steins;Gate and Robotics;Notes Elite.","description_zh":"以 C++ 和 OpenGL 重新实现《科学冒险》系列和《告别回忆》系列所用的 MAGES. 视觉小说引擎，通过按游戏划分的 Lua 配置，在同一个程序中运行使用者原版数据文件里的受支持作品。README 称至少有一款游戏（Memories Off 6 T-Wave）可以达成全部结局，但还没有任何游戏完全实现。项目的跟踪议题列出了对 Chaos;Head Love Chu Chu、Chaos;Child Love Chu Chu、Steins;Gate、Robotics;Notes Elite 等作品的部分支持。","entry_url":"https://awesomerea.org/resources/impacto-mages-engine-case/","entry_url_zh":"https://awesomerea.org/zh/resources/impacto-mages-engine-case/","evidence_url":"https://github.com/CommitteeOfZero/impacto/blob/b30493852424d32c7806307486fd33edfa0bc54a/README.md","group":"cases","id":"impacto-mages-engine-case","json_url":"https://awesomerea.org/resources/impacto-mages-engine-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/impacto-mages-engine-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/impacto-mages-engine-case/index.md","name":"impacto: a reimplementation of the MAGES. visual-novel engine","name_zh":"impacto：MAGES. 视觉小说引擎的重新实现","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the master commit of 2026-10-17, which CI published as prerelease 0.10.8.887; all published releases are automatic prereleases. README says impacto is in active development: all endings are reachable in at least Memories Off 6 T-Wave, but some functionality and architecture are missing and no game is fully complete. The support-tracking issue (#1, last updated 2026-02-20) lists per-title progress, from story progression and saving in the Love Chu Chu titles to only graphics and sound in others, and names missing features such as some 2D special effects.","Each game needs the resource files of a supported version, mostly console releases such as the PS3 Memories Off 6 T-Wave, the PS4 Chaos;Child Love Chu Chu or the Japanese Switch Robotics;Notes DaSH, placed under gamedata/<profile> as listed in that profile’s vfs.lua. The repository holds no game resource files; its resources include font atlases generated with the project’s font tool, Noto CJK fonts, and per-game application icons and cursors, with the icons showing official character artwork. The reviewed Windows prerelease package contains the executable, libraries, profiles, shaders and those resources, but no game data.","README targets 64-bit Windows 10 and desktop Linux, with experimental runs on macOS, Android, Switch (homebrew and Linux) and WebAssembly; OpenGL is the main renderer, with experimental Vulkan and DirectX 9 options. Builds use CMake 3.28+ presets, C++20 and a vcpkg manifest, with Visual Studio 2019 or newer on Windows and documented Ubuntu and devkitPro Switch builds. CI produces Windows, Linux, macOS (arm64 and x64), Android and Switch packages.","CI runs clang-format linting and builds the packages; the reviewed workflow has no automated test suite, and no comparison with the original engine is published. README invites both black-box observation of the original’s behaviour and white-box inspection of its internals, without documenting specific methods or tools.","LICENSE is ISC for the source as a whole; THIRDPARTY.md lists code based on vgmstream, Ryujinx, OpenImageIO, FFplay and others, plus external libraries, and warns that binary distributions may fall under more restrictive terms. The games, their data and the official artwork used in the icons belong to their rights holders."],"requirements_zh":["审阅版本为 2026-10-17 的 master 提交，CI 已将其发布为预发布版 0.10.8.887；所有已发布版本都是自动生成的预发布版。README 称 impacto 仍在积极开发：至少在 Memories Off 6 T-Wave 中可以达成全部结局，但仍缺少部分功能和架构设计，还没有任何游戏完全实现。支持情况跟踪议题（#1，最后更新于 2026-02-20）列出了各作品的进度，从 Love Chu Chu 系列作品已能推进剧情和存档，到其他作品仅能显示图形和播放声音，并列出部分 2D 特效等缺失功能。","每款游戏都需要受支持版本的资源文件，主要是主机版本，例如 PS3 版 Memories Off 6 T-Wave、PS4 版 Chaos;Child Love Chu Chu 或日版 Switch 的 Robotics;Notes DaSH，并按该配置的 vfs.lua 所列放入 gamedata/<profile> 目录。仓库不含游戏资源文件；其 resources 目录包括用项目字体工具生成的字体图集、Noto CJK 字体，以及各游戏的应用图标和光标，其中图标使用了官方角色插画。所审的 Windows 预发布包含有可执行文件、库、配置、着色器和上述资源，但不含游戏数据。","README 以 64 位 Windows 10 和桌面 Linux 为目标平台，并在 macOS、Android、Switch（自制软件和 Linux）及 WebAssembly 上做过试验性运行；OpenGL 为主要渲染器，另有实验性的 Vulkan 和 DirectX 9 选项。构建使用 CMake 3.28+ 预设、C++20 和 vcpkg 清单，Windows 上使用 Visual Studio 2019 或更新版本，另有 Ubuntu 和 devkitPro Switch 构建文档。CI 生成 Windows、Linux、macOS（arm64 和 x64）、Android 和 Switch 软件包。","CI 运行 clang-format 代码检查并构建软件包；所审工作流没有自动化测试套件，也没有发布与原版引擎的对比。README 欢迎贡献者通过黑盒观察原版行为和白盒检查其内部实现来进行逆向工程，但没有说明具体方法或工具。","LICENSE 规定源码整体采用 ISC 许可；THIRDPARTY.md 列出了基于 vgmstream、Ryujinx、OpenImageIO、FFplay 等项目的代码以及外部库，并提醒二进制发行版可能适用更严格的条款。各游戏、其数据以及图标中使用的官方插画均归权利人所有。"],"targets":["game"],"url":"https://github.com/CommitteeOfZero/impacto","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-31","additional_evidence_urls":["https://github.com/CaringCaribou/caringcaribou/blob/092eff3c2c95bb7952a2a92ac12b6c1c29035b70/documentation/howtoinstall.md","https://github.com/CaringCaribou/caringcaribou/blob/092eff3c2c95bb7952a2a92ac12b6c1c29035b70/documentation/howtouse.md","https://github.com/CaringCaribou/caringcaribou/blob/092eff3c2c95bb7952a2a92ac12b6c1c29035b70/documentation/dump.md","https://github.com/CaringCaribou/caringcaribou/blob/092eff3c2c95bb7952a2a92ac12b6c1c29035b70/documentation/listener.md","https://github.com/CaringCaribou/caringcaribou/blob/092eff3c2c95bb7952a2a92ac12b6c1c29035b70/documentation/uds.md","https://github.com/CaringCaribou/caringcaribou/blob/092eff3c2c95bb7952a2a92ac12b6c1c29035b70/documentation/doip.md","https://github.com/CaringCaribou/caringcaribou/blob/092eff3c2c95bb7952a2a92ac12b6c1c29035b70/documentation/xcp.md","https://github.com/CaringCaribou/caringcaribou/blob/092eff3c2c95bb7952a2a92ac12b6c1c29035b70/pyproject.toml","https://github.com/CaringCaribou/caringcaribou/blob/092eff3c2c95bb7952a2a92ac12b6c1c29035b70/caringcaribou/tests/mock/mock_ecu.py","https://github.com/CaringCaribou/caringcaribou/blob/092eff3c2c95bb7952a2a92ac12b6c1c29035b70/LICENSE","https://github.com/CaringCaribou/caringcaribou/releases/tag/0.6"],"category":"protocol-analysis","description_en":"Python automotive security exploration tool, begun in the HEAVENS research project, that the README describes as a zero-knowledge tool to drop onto a CAN network and collect information about the services present. Passive modules dump CAN traffic to the terminal or a candump-format file and list every arbitration ID seen on the bus, while the UDS (ISO 14229-1), DoIP (ISO 13400-2) and XCP modules discover ECUs that answer diagnostic requests, enumerate their supported services and subservices, read data identifiers and query XCP capabilities. Its utilities provide reusable ISO-TP (ISO 15765-2) and UDS implementations, and new modules plug into a drop-in module architecture.","description_zh":"Python 编写的汽车安全探索工具，起源于 HEAVENS 研究项目；README 称它是一种无需预先了解目标的工具，可接入任意 CAN 网络并收集其中存在哪些服务的信息。被动模块可将 CAN 流量输出到终端或 candump 格式文件，并列出总线上出现的所有仲裁 ID；UDS（ISO 14229-1）、DoIP（ISO 13400-2）和 XCP 模块则可发现响应诊断请求的 ECU，枚举其支持的服务和子服务，读取数据标识符并查询 XCP 能力。其工具库提供可复用的 ISO-TP（ISO 15765-2）和 UDS 实现，新模块可通过即插即用的模块架构加入。","entry_url":"https://awesomerea.org/resources/caringcaribou/","entry_url_zh":"https://awesomerea.org/zh/resources/caringcaribou/","evidence_url":"https://github.com/CaringCaribou/caringcaribou/blob/092eff3c2c95bb7952a2a92ac12b6c1c29035b70/README.md","group":"tools","id":"caringcaribou","json_url":"https://awesomerea.org/resources/caringcaribou/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/caringcaribou/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/caringcaribou/index.md","name":"Caring Caribou","name_zh":"Caring Caribou 汽车 CAN 总线安全探索工具","record_type":"resource","relationship":"foundation","requirements":["Latest GitHub release at review: 0.6, published 2024-03-28; the reviewed master commit is 45 commits ahead and its packaging already reports 0.7. The README installs it from the source tree; PyPI had no caringcaribou project at review.","Needs a CAN interface supported by python-can and configured in python-can's .canrc file. The install guide uses a PEAK PCAN-USB adapter with SocketCAN on Linux (kernel 3.4 or newer there, while the README asks for a pretty modern kernel) and suggests a Linux VM on Windows. The README requires Python 3.7+; the DoIP module also needs the doipclient and udsoncan packages.","Discovery and service scans transmit diagnostic requests on the connected bus or network. Other modules send, replay or fuzz frames and perform intrusive diagnostic operations.","GPL-3.0. The bundled unit tests run against mock ECUs on a virtual CAN bus."],"requirements_zh":["审阅时 GitHub 上的最新版本为 0.6，发布于 2024-03-28；所审阅的 master 分支提交领先 45 个提交，其打包元数据已标为 0.7。README 介绍从源码目录安装；审阅时 PyPI 上没有 caringcaribou 项目。","需要 python-can 支持的 CAN 接口，并在 python-can 的 .canrc 配置文件中设置。安装指南在 Linux 上使用 PEAK PCAN-USB 适配器和 SocketCAN（指南要求内核 3.4 或更高，README 则只说需要较新的内核），在 Windows 上建议使用 Linux 虚拟机。README 要求 Python 3.7+；DoIP 模块还需要 doipclient 和 udsoncan 软件包。","发现和服务扫描会在所连接的总线或网络上发送诊断请求。其他模块会发送、重放或模糊测试帧，并执行侵入性诊断操作。","采用 GPL-3.0 许可。附带的单元测试在虚拟 CAN 总线上针对模拟 ECU 运行。"],"targets":["protocol"],"url":"https://github.com/CaringCaribou/caringcaribou","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-31","additional_evidence_urls":["https://github.com/m0bilesecurity/RMS-Runtime-Mobile-Security/blob/d07212e7edec20b14e3108860bebb4f0e8fffe40/README.md#L36-L60","https://github.com/m0bilesecurity/RMS-Runtime-Mobile-Security/blob/d07212e7edec20b14e3108860bebb4f0e8fffe40/README.md#L99-L118","https://github.com/m0bilesecurity/RMS-Runtime-Mobile-Security/blob/d07212e7edec20b14e3108860bebb4f0e8fffe40/package.json","https://github.com/m0bilesecurity/RMS-Runtime-Mobile-Security/blob/d07212e7edec20b14e3108860bebb4f0e8fffe40/rms.js#L101-L112","https://github.com/m0bilesecurity/RMS-Runtime-Mobile-Security/blob/d07212e7edec20b14e3108860bebb4f0e8fffe40/LICENSE","https://github.com/m0bilesecurity/RMS-Runtime-Mobile-Security/releases/tag/1.5.25"],"category":"dynamic-analysis","description_en":"Frida-based web interface for observing Android and iOS apps at run time on a test device. It lists the classes and methods loaded in memory, traces method arguments and return values, generates hook templates for a selected class, finds class instances on the heap, and on Android monitors categorized framework APIs and a few libc file functions; a beta file browser covers the app's private folders.","description_zh":"基于 Frida 的 Web 界面，用于在测试设备上观察运行中的 Android 与 iOS 应用。它可列出内存中已加载的类和方法，跟踪方法参数与返回值，为选定的类生成 Hook 模板，在堆上查找类实例；在 Android 上还能按类别监控框架 API 以及少数 libc 文件函数。另有处于测试阶段的文件浏览器，可查看应用的私有目录。","entry_url":"https://awesomerea.org/resources/rms-runtime-mobile-security/","entry_url_zh":"https://awesomerea.org/zh/resources/rms-runtime-mobile-security/","evidence_url":"https://github.com/m0bilesecurity/RMS-Runtime-Mobile-Security/blob/d07212e7edec20b14e3108860bebb4f0e8fffe40/README.md","group":"tools","id":"rms-runtime-mobile-security","json_url":"https://awesomerea.org/resources/rms-runtime-mobile-security/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/rms-runtime-mobile-security/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rms-runtime-mobile-security/index.md","name":"Runtime Mobile Security (RMS)","name_zh":"Runtime Mobile Security（RMS）移动应用运行时分析界面","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 1.5.25, published 2026-07-01, matching the reviewed master commit; it installs from npm as rms-runtime-mobile-security and its package.json depends on Frida 17 node bindings. The README says it was tested on macOS with Android emulators, an Amazon Fire Stick 4K, an iPhone 7 and Chrome, and may need minor adjustments on Windows and Linux.","Requires Node.js, Frida's CLI tools and a frida-server already running on a single connected test device; RMS cannot handle several devices at once. It also attaches to a default system process to list preloaded classes. Use it only on apps and devices the user is authorized to analyze.","The web interface defaults to port 5491; rms.js passes only a port to server.listen, so Node's default all-interface binding applies, and the reviewed code adds no login. The README notes that complex methods sometimes fail to load and that Safari is unsupported.","GPL-3.0."],"requirements_zh":["审阅时的最新版本为 1.5.25，发布于 2026-07-01，与所审阅的 master 提交一致；可通过 npm 安装（包名 rms-runtime-mobile-security），package.json 依赖 Frida 17 的 Node 绑定。README 称它在 macOS 上配合 Android 模拟器、Amazon Fire Stick 4K、iPhone 7 和 Chrome 测试过，在 Windows 和 Linux 上可能需要少量调整。","需要 Node.js、Frida 命令行工具，并在唯一连接的测试设备上预先运行 frida-server；RMS 无法同时处理多台设备。它还会附加到一个默认系统进程，以列出预先加载的类。仅应在使用者有权分析的应用和设备上使用。","Web 界面默认使用 5491 端口；rms.js 调用 server.listen 时只传入端口，因此适用 Node 默认的全接口绑定，所审阅的代码也没有登录验证。README 提到复杂方法有时无法加载，且不支持 Safari。","采用 GPL-3.0 许可。"],"targets":["app"],"url":"https://github.com/m0bilesecurity/RMS-Runtime-Mobile-Security","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-31","additional_evidence_urls":["https://github.com/cmu-sei/pharos/blob/782492fe3b854c02f3b6257e9be3b6de87be1960/INSTALL.md","https://github.com/cmu-sei/pharos/blob/782492fe3b854c02f3b6257e9be3b6de87be1960/Dockerfile","https://github.com/cmu-sei/pharos/blob/782492fe3b854c02f3b6257e9be3b6de87be1960/.github/workflows/docker.yml","https://github.com/cmu-sei/pharos/blob/782492fe3b854c02f3b6257e9be3b6de87be1960/scripts/build_prereqs.bash","https://github.com/cmu-sei/pharos/blob/782492fe3b854c02f3b6257e9be3b6de87be1960/CMakeLists.txt","https://github.com/cmu-sei/pharos/blob/782492fe3b854c02f3b6257e9be3b6de87be1960/tools/ooanalyzer/ooanalyzer.pod","https://github.com/cmu-sei/pharos/blob/782492fe3b854c02f3b6257e9be3b6de87be1960/tools/ooanalyzer/ida/README.md","https://github.com/cmu-sei/pharos/blob/782492fe3b854c02f3b6257e9be3b6de87be1960/share/prolog/oorules/README.md","https://github.com/cmu-sei/pharos/blob/782492fe3b854c02f3b6257e9be3b6de87be1960/tools/apianalyzer/apianalyzer.pod","https://github.com/cmu-sei/pharos/blob/782492fe3b854c02f3b6257e9be3b6de87be1960/tools/pathanalyzer/pathanalyzer.pod","https://github.com/cmu-sei/pharos/blob/782492fe3b854c02f3b6257e9be3b6de87be1960/LICENSE.md","https://edmcman.github.io/papers/ccs18.pdf","https://github.com/cmu-sei/pharos/pkgs/container/pharos"],"category":"native-analysis","description_en":"Carnegie Mellon SEI's framework of automated static analysis tools for binary programs, built on LLNL's ROSE compiler infrastructure for disassembly, control-flow analysis and instruction semantics. Its best-known tool, OOAnalyzer, recovers C++ classes, methods and other object-oriented constructs from 32-bit x86 executables built with Microsoft Visual C++ by applying Prolog rules to facts about how object pointers move between functions, as described in a CCS 2018 paper, and exports JSON for an included IDA plugin or the separate Kaiju Ghidra plugin. Other tools find API call sequences (ApiAnalyzer), report static API-call parameters (CallAnalyzer), produce function hashes and YARA signatures for similarity analysis (FN2Hash, FN2Yara) and work out the conditions for reaching one address from another (PathAnalyzer).","description_zh":"卡内基梅隆大学软件工程研究所（SEI）推出的二进制程序自动化静态分析工具框架，基于劳伦斯利弗莫尔国家实验室的 ROSE 编译器基础设施完成反汇编、控制流分析和指令语义建模。其中最知名的 OOAnalyzer 跟踪对象指针在函数之间的传递，再用 Prolog 规则从这些事实中恢复 C++ 类、方法等面向对象结构，适用于 Microsoft Visual C++ 编译的 32 位 x86 可执行文件，方法见 CCS 2018 论文；结果以 JSON 导出，可供仓库自带的 IDA 插件或独立的 Kaiju Ghidra 插件使用。其他工具可查找 API 调用序列（ApiAnalyzer）、报告 API 调用的静态参数（CallAnalyzer）、生成用于相似性分析的函数哈希和 YARA 签名（FN2Hash、FN2Yara），以及求出从一个地址到达另一地址所需的条件（PathAnalyzer）。","entry_url":"https://awesomerea.org/resources/pharos/","entry_url_zh":"https://awesomerea.org/zh/resources/pharos/","evidence_url":"https://github.com/cmu-sei/pharos/blob/782492fe3b854c02f3b6257e9be3b6de87be1960/README.md","group":"tools","id":"pharos","json_url":"https://awesomerea.org/resources/pharos/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pharos/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pharos/index.md","name":"Pharos","name_zh":"Pharos 二进制静态分析框架","record_type":"resource","relationship":"foundation","requirements":["There are no tagged releases; the reviewed master commit is from 2026-08-03. The README calls Pharos a research project under active development whose documentation is incomplete and whose portability has not been actively tested, and it says DumpMASM is no longer maintained, recommending ROSE's own tools instead.","The easiest route is the prebuilt ghcr.io/cmu-sei/pharos Docker image, which the GitHub workflow builds for amd64 and arm64 on each push and weekly. Building from source is heavy: C++14 with CMake, Boost, yaml-cpp, SQLite, Z3, SWI-Prolog and ROSE, with the build script pinning ROSE v2.6.0, Z3 4.8.7 and SWI-Prolog 8.5.12. INSTALL.md suggests about 4 GiB of RAM per build CPU for small CPU counts, supports its build script only on the latest Ubuntu, and lists older manually tested configurations on RHEL 7, Ubuntu 19.04 and openSUSE 15.1.","Provide the executables to analyze yourself. OOAnalyzer is limited to 32-bit MSVC binaries and has been tested little on 64-bit executables or other compilers; its JSON output feeds the IDA plugin in the repository or the separate Kaiju Ghidra plugin, and very large executables need the extra steps in the oorules notes.","The Dockerfile has a test stage that runs ctest against test executables compiled from the sources in tests/, but the GitHub workflow builds only the release image.","LICENSE.md is an SEI BSD-style license (Copyright 2021 Carnegie Mellon University) that also restricts use of the CMU and SEI names, which is why GitHub reports NOASSERTION. ROSE, SWI-Prolog, Z3, Boost, yaml-cpp and SQLite keep their own licenses."],"requirements_zh":["项目没有打标签的发布版本；所审阅的 master 提交日期为 2026-08-03。README 称 Pharos 是仍在积极开发的研究项目，文档尚不完整，可移植性也未经主动测试；README 还说明 DumpMASM 已不再维护，建议改用 ROSE 自带的工具。","最简便的方式是使用预构建的 ghcr.io/cmu-sei/pharos Docker 镜像，GitHub 工作流会在每次推送时及每周为 amd64 和 arm64 构建该镜像。从源码构建负担较重：需要 C++14、CMake、Boost、yaml-cpp、SQLite、Z3、SWI-Prolog 和 ROSE，构建脚本固定使用 ROSE v2.6.0、Z3 4.8.7 和 SWI-Prolog 8.5.12。INSTALL.md 建议在 CPU 数量较少时每个构建 CPU 配约 4 GiB 内存，构建脚本仅支持最新版 Ubuntu，列出的手动测试配置则较旧，包括 RHEL 7、Ubuntu 19.04 和 openSUSE 15.1。","待分析的可执行文件需自行提供。OOAnalyzer 仅支持 32 位 MSVC 二进制，对 64 位可执行文件或其他编译器的测试很少；其 JSON 输出可供仓库中的 IDA 插件或独立的 Kaiju Ghidra 插件使用，分析非常大的可执行文件需要按 oorules 说明执行额外步骤。","Dockerfile 包含一个测试阶段，会针对由 tests/ 中源码编译的测试程序运行 ctest，但 GitHub 工作流只构建发布镜像。","LICENSE.md 是 SEI 的 BSD 风格许可（版权归卡内基梅隆大学所有，2021 年），并限制使用 CMU 和 SEI 名称，因此 GitHub 显示为 NOASSERTION。ROSE、SWI-Prolog、Z3、Boost、yaml-cpp 和 SQLite 各自适用其许可证。"],"targets":["binary"],"url":"https://github.com/cmu-sei/pharos","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-31","additional_evidence_urls":["https://github.com/Jon-Becker/heimdall-rs/blob/9de15de029ac1128c7c7566672d472f104a9747a/README.md#L9-L45","https://github.com/Jon-Becker/heimdall-rs/blob/9de15de029ac1128c7c7566672d472f104a9747a/README.md#L67-L95","https://github.com/Jon-Becker/heimdall-rs/blob/9de15de029ac1128c7c7566672d472f104a9747a/crates/cli/src/args.rs#L31-L62","https://github.com/Jon-Becker/heimdall-rs/blob/9de15de029ac1128c7c7566672d472f104a9747a/crates/decompile/src/interfaces/args.rs#L15-L82","https://github.com/Jon-Becker/heimdall-rs/blob/9de15de029ac1128c7c7566672d472f104a9747a/crates/common/src/resources/openrouter.rs","https://github.com/Jon-Becker/heimdall-rs/blob/9de15de029ac1128c7c7566672d472f104a9747a/crates/common/src/ether/signatures.rs","https://github.com/Jon-Becker/heimdall-rs/blob/9de15de029ac1128c7c7566672d472f104a9747a/bifrost/bifrost","https://github.com/Jon-Becker/heimdall-rs/blob/9de15de029ac1128c7c7566672d472f104a9747a/Cargo.toml","https://github.com/Jon-Becker/heimdall-rs/blob/9de15de029ac1128c7c7566672d472f104a9747a/rust-toolchain.toml","https://github.com/Jon-Becker/heimdall-rs/blob/9de15de029ac1128c7c7566672d472f104a9747a/LICENSE","https://github.com/Jon-Becker/heimdall-rs/releases/tag/0.9.3"],"category":"native-analysis","description_en":"Rust toolkit by Jonathan Becker for analyzing EVM smart-contract bytecode, particularly of contracts without verified source. Its CLI disassembles bytecode, builds control-flow graphs, decompiles it through per-function symbolic execution and heuristic post-processing passes into an ABI plus beta Solidity or Yul source, decodes raw calldata, dumps the storage slots a contract accesses over a block range, and inspects transactions by decoding their calldata, traces and logs. Targets can be raw bytecode, files, contract addresses or ENS names; function selectors are resolved against the OpenChain signature database unless that step is skipped.","description_zh":"Jonathan Becker 用 Rust 编写的 EVM 智能合约字节码分析工具包，尤其适用于未公开验证源码的合约。其命令行可反汇编字节码、生成控制流图，借助逐函数的符号执行和启发式后处理把字节码反编译为 ABI 以及测试阶段的 Solidity 或 Yul 源码，还能解码原始 calldata、导出合约在某一区块范围内访问的存储槽，并通过解码 calldata、调用跟踪和日志来检查交易。分析目标可以是原始字节码、文件、合约地址或 ENS 名称；函数选择器默认通过 OpenChain 签名数据库解析，也可跳过这一步。","entry_url":"https://awesomerea.org/resources/heimdall-rs/","entry_url_zh":"https://awesomerea.org/zh/resources/heimdall-rs/","evidence_url":"https://github.com/Jon-Becker/heimdall-rs/blob/9de15de029ac1128c7c7566672d472f104a9747a/README.md","group":"tools","id":"heimdall-rs","json_url":"https://awesomerea.org/resources/heimdall-rs/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/heimdall-rs/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/heimdall-rs/index.md","name":"heimdall-rs","name_zh":"heimdall-rs EVM 字节码分析工具包","record_type":"resource","relationship":"foundation","requirements":["Release at review: 0.9.3, published 2026-04-30, with Linux and macOS binaries for amd64 and arm64 and no Windows build; the reviewed main commit is 38 commits ahead, and both that tag and main still declare workspace version 0.9.2. Install through the bifrost installer, which builds from source with Cargo or, with -B, fetches a precompiled binary; the repository pins Rust 1.91.0.","Contract addresses, ENS names, storage dumps and transaction inspection need an Ethereum JSON-RPC endpoint, given as a URL or a MESC reference; an optional Etherscan API key lets decompilation recover creation bytecode of self-destructed contracts. Optional LLM post-processing sends the decompiled Solidity to OpenRouter (default model openai/gpt-4o-mini) and needs an OpenRouter API key.","Decompiled Solidity and Yul output is marked beta and is a heuristic reconstruction to be checked, not original source. The README lists more than 20 papers and theses that cite Heimdall.","MIT license."],"requirements_zh":["审阅时的版本为 0.9.3，发布于 2026-04-30，提供 amd64 和 arm64 的 Linux 与 macOS 二进制，没有 Windows 版本；所审阅的 main 提交比它多 38 个提交，而该标签和 main 的工作区版本号仍为 0.9.2。可通过 bifrost 安装器安装：默认用 Cargo 从源码构建，加 -B 参数则下载预编译二进制；仓库固定使用 Rust 1.91.0。","分析合约地址或 ENS 名称、导出存储槽和检查交易时，需要以 URL 或 MESC 引用形式提供以太坊 JSON-RPC 端点；可选的 Etherscan API 密钥用于在反编译时取回已自毁合约的创建字节码。可选的 LLM 后处理会把反编译得到的 Solidity 代码发送到 OpenRouter（默认模型为 openai/gpt-4o-mini），需要 OpenRouter API 密钥。","反编译出的 Solidity 和 Yul 代码标为测试阶段，属于需要核对的启发式重建结果，并非原始源码。README 列出了 20 余篇引用 Heimdall 的论文和学位论文。","采用 MIT 许可。"],"targets":["binary"],"url":"https://github.com/Jon-Becker/heimdall-rs","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-31","additional_evidence_urls":["https://github.com/theopolis/uefi-firmware-parser/blob/c4b8c64e7a1ca647b68db99db80ef0410d9afe79/setup.py","https://github.com/theopolis/uefi-firmware-parser/blob/c4b8c64e7a1ca647b68db99db80ef0410d9afe79/uefi_firmware/__init__.py","https://github.com/theopolis/uefi-firmware-parser/blob/c4b8c64e7a1ca647b68db99db80ef0410d9afe79/bin/uefi-firmware-parser","https://github.com/theopolis/uefi-firmware-parser/blob/c4b8c64e7a1ca647b68db99db80ef0410d9afe79/scripts/fv_injector.py","https://github.com/theopolis/uefi-firmware-parser/blob/c4b8c64e7a1ca647b68db99db80ef0410d9afe79/.github/workflows/ci.yml","https://github.com/theopolis/uefi-firmware-parser/blob/c4b8c64e7a1ca647b68db99db80ef0410d9afe79/LICENSE","https://github.com/theopolis/uefi-firmware-parser/blob/c4b8c64e7a1ca647b68db99db80ef0410d9afe79/uefi_firmware/compression/Tiano/Decompress.c","https://github.com/theopolis/uefi-firmware-parser/releases/tag/v1.16","https://pypi.org/project/uefi_firmware/1.16/"],"category":"firmware","description_en":"Python library and uefi-firmware-parser command for identifying, parsing and extracting PC firmware images: UEFI firmware volumes, capsules, firmware file systems, files and sections, Intel PCH flash descriptors, Intel ME modules and Dell PFS update packages. An AutoParser picks the format, or a brute-force scan looks for volumes and other known objects inside an unidentified blob; results print as an object hierarchy or dump to files, with Tiano/EFI and LZMA sections decompressed by a bundled C extension. Helper scripts replace a section or file by GUID inside a volume, generate an FDF flash description from parsed volumes and output GUID labels for IDA scripts.","description_zh":"Python 库及 uefi-firmware-parser 命令行工具，用于识别、解析和提取 PC 固件镜像：UEFI 固件卷、胶囊（capsule）、固件文件系统、文件与节（section），以及 Intel PCH Flash Descriptor、Intel ME 模块和 Dell PFS 更新包。AutoParser 可自动判断格式，暴力扫描模式则在未识别的数据块中查找固件卷及其他已知对象；结果可打印为对象层级或导出为文件，Tiano/EFI 与 LZMA 压缩的节由内置 C 扩展解压。附带的脚本可按 GUID 替换固件卷中的节或文件，根据解析出的固件卷生成 FDF 闪存描述文件，并输出供 IDA 脚本使用的 GUID 标签。","entry_url":"https://awesomerea.org/resources/uefi-firmware-parser/","entry_url_zh":"https://awesomerea.org/zh/resources/uefi-firmware-parser/","evidence_url":"https://github.com/theopolis/uefi-firmware-parser/blob/c4b8c64e7a1ca647b68db99db80ef0410d9afe79/README.rst","group":"tools","id":"uefi-firmware-parser","json_url":"https://awesomerea.org/resources/uefi-firmware-parser/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/uefi-firmware-parser/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/uefi-firmware-parser/index.md","name":"UEFI Firmware Parser","name_zh":"UEFI Firmware Parser 固件结构解析工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v1.16, published 2026-06-04 on GitHub and PyPI with abi3 wheels for Linux, Windows and macOS. The reviewed master commit, from 2026-10-12, is three commits ahead: it adds AMI capsule support and a safe-path utility for dumped files and drops the future dependency, so those changes are not yet released.","Python 3.10+. A source install compiles the bundled efi_compressor C extension, which the README says needs the Python development headers and gcc; the package declares no other runtime dependencies. CI runs the unit tests on Python 3.12 on Ubuntu.","Input is a firmware file the user supplies, such as a vendor BIOS/UEFI update or a flash dump. The README warns that not every vendor update parses and that some must first be decompressed or unpacked from the update mechanism, typically a PE executable; --test reports the detected type, -b searches a blob for volume headers and --superbrute checks every byte offset for any known object. It lists ASRock, Dell, Gigabyte, Intel, Lenovo, HP, MSI, VMware, Apple and Qualcomm updates as tested, without per-version results.","GUID injection with fv_injector.py only replaces existing sections or files, with no addition or removal, and asks interactively which section to replace inside a firmware file. It parses containers and extracts their contents; analyzing the extracted modules needs a separate disassembler or decompiler. CI also parses a separately hosted samples repository.","LICENSE carries MIT-style permission text and points to inline licenses in contributed work, while setup.py and the PyPI metadata declare BSD-3-Clause. The bundled Intel Tiano compression sources are BSD-2-Clause-Patent and the LZMA SDK files are public domain."],"requirements_zh":["审阅时最新版本为 v1.16，于 2026-06-04 在 GitHub 和 PyPI 发布，提供适用于 Linux、Windows 和 macOS 的 abi3 wheel。所审阅的 master 提交日期为 2026-10-12，领先该版本三个提交：新增 AMI 胶囊支持和用于导出文件路径的安全路径工具，并移除了 future 依赖，这些改动尚未发布。","需要 Python 3.10+。从源码安装时会编译内置的 efi_compressor C 扩展，README 称这需要 Python 开发头文件和 gcc；该软件包未声明其他运行时依赖。CI 在 Ubuntu 上用 Python 3.12 运行单元测试。","输入为使用者自备的固件文件，例如厂商 BIOS/UEFI 更新包或闪存转储。README 提醒，并非每个厂商更新包都能解析，有些需要先从更新机制（通常是 PE 可执行文件）中解压或解包；--test 会报告识别出的类型，-b 在数据块中搜索固件卷头，--superbrute 则逐字节检查任何已知对象。README 列出 ASRock、Dell、Gigabyte、Intel、Lenovo、HP、MSI、VMware、Apple 和 Qualcomm 的更新包为已测试来源，但没有按版本给出结果。","fv_injector.py 的 GUID 注入只能替换已有的节或文件，不能增删；向固件文件注入时会交互式询问要替换哪个节。它负责解析容器结构并提取内容，分析提取出的模块仍需另用反汇编器或反编译器。CI 还会解析一个另行托管的样本仓库。","LICENSE 文件为 MIT 式授权文本，并提示贡献代码另附内联许可证；而 setup.py 和 PyPI 元数据声明的是 BSD-3-Clause。内置的 Intel Tiano 压缩源码采用 BSD-2-Clause-Patent，LZMA SDK 文件属于公有领域。"],"targets":["firmware"],"url":"https://github.com/theopolis/uefi-firmware-parser","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-31","additional_evidence_urls":["https://github.com/ryanbr/noop/blob/8e4b0c16e7640607600fa6bde5424095eba6034e/docs/PROTOCOL.md","https://github.com/ryanbr/noop/blob/8e4b0c16e7640607600fa6bde5424095eba6034e/docs/BLE_REVERSE_ENGINEERING.md","https://github.com/ryanbr/noop/blob/8e4b0c16e7640607600fa6bde5424095eba6034e/ATTRIBUTION.md","https://github.com/ryanbr/noop/blob/8e4b0c16e7640607600fa6bde5424095eba6034e/docs/BUILD.md","https://github.com/ryanbr/noop/blob/8e4b0c16e7640607600fa6bde5424095eba6034e/docs/VALIDATION_PROTOCOL.md","https://github.com/ryanbr/noop/blob/8e4b0c16e7640607600fa6bde5424095eba6034e/.github/workflows/swift-packages.yml","https://github.com/ryanbr/noop/blob/8e4b0c16e7640607600fa6bde5424095eba6034e/.github/workflows/android.yml","https://github.com/ryanbr/noop/blob/8e4b0c16e7640607600fa6bde5424095eba6034e/AGENTS.md","https://github.com/ryanbr/noop/blob/8e4b0c16e7640607600fa6bde5424095eba6034e/LICENSE","https://github.com/ryanbr/noop/releases/tag/v12.0.0"],"category":"reconstruction-cases","description_en":"Replaces the WHOOP companion app with offline macOS, Android and iOS clients that pair with WHOOP 4.0 and 5.0/MG straps over Bluetooth, decode their vendor GATT frames, offload the strap’s history into local SQLite and compute recovery, strain, HRV and sleep on the device. A versioned protocol reference documents framing, checksums, commands and sensor records per strap family, building on the community my-whoop and goose projects. WHOOP 4.0 is the supported path; deeper WHOOP 5.0/MG metrics and Oura ring support remain experimental.","description_zh":"以离线的 macOS、Android 和 iOS 客户端取代 WHOOP 官方配套应用：通过蓝牙与 WHOOP 4.0 及 5.0/MG 手环配对，解析其厂商自定义 GATT 帧，将手环中的历史数据转存到本地 SQLite，并在设备上计算恢复度、负荷、HRV 和睡眠。按手环型号分版本编写的协议参考记录了帧格式、校验、命令和传感器记录，建立在社区项目 my-whoop 与 goose 的成果之上。WHOOP 4.0 是受支持的路径；WHOOP 5.0/MG 的深层指标和 Oura 戒指支持仍属实验性。","entry_url":"https://awesomerea.org/resources/noop-whoop-ble-client-case/","entry_url_zh":"https://awesomerea.org/zh/resources/noop-whoop-ble-client-case/","evidence_url":"https://github.com/ryanbr/noop/blob/8e4b0c16e7640607600fa6bde5424095eba6034e/README.md","group":"cases","id":"noop-whoop-ble-client-case","json_url":"https://awesomerea.org/resources/noop-whoop-ble-client-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/noop-whoop-ble-client-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/noop-whoop-ble-client-case/index.md","name":"NOOP: an offline WHOOP strap client built from Bluetooth protocol research","name_zh":"NOOP：基于蓝牙协议研究构建的离线 WHOOP 手环客户端","record_type":"resource","relationship":"independent-reconstruction","requirements":["README calls NOOP an independent, experimental interoperability project; the reviewed main snapshot follows release v12.0.0 (2026-10-04). WHOOP 4.0 is the tested path; on WHOOP 5.0/MG live heart rate is confirmed while recovery, strain and sleep inputs are still being mapped, and README lists SpO₂ and several overnight inputs as unavailable or incomplete. Scores come from published methods and are approximations, not reproductions of WHOOP’s models; the project says it is not a medical device.","Live use needs the user’s own WHOOP strap; a 5.0/MG strap holds one encrypted bond at a time, so pairing can take it from the official app. Without a strap, the app can import a WHOOP CSV export or an Apple Health export.xml. README states that NOOP contains no WHOOP proprietary code, firmware, logos or assets; ATTRIBUTION.md says some protocol facts were re-derived from decompiles or static analysis of the vendor’s apps and ship as unvalidated candidates, while implementation and strings are not copied.","docs/BUILD.md lists macOS 13+, Xcode 26.x (Swift 6.3) and XcodeGen 2.45+ for the macOS reference app; the Swift packages build with swift build alone, and BUILD.md documents Linux test runs for four of them outside CI. The Android app (Jetpack Compose, Android 8+) builds with Gradle and JDK 17 in CI, and iOS builds from source or installs as a sideloaded, unsigned .ipa. The release check is on by default and sends no health data; optional AI Coach and export features send data only when the user configures them.","CI builds and tests each Swift package, including the WhoopProtocol framing and decoder tests, and builds the Android debug APK with its unit tests. Protocol contracts name the firmware they were observed on (WHOOP 4 41.17.6.0, WHOOP 5/MG baseline 50.42.1.0). docs/VALIDATION_PROTOCOL.md sets rules for claiming scoring improvements.","LICENSE applies PolyForm Noncommercial 1.0.0 to NOOP’s own code and documentation, which GitHub reports as NOASSERTION; bundled GRDB.swift and ZIPFoundation are MIT. README names github.com/ryanbr/noop as the canonical home, although GitHub lists it as a fork of muftiarfan/noop. NOOP states it is unaffiliated with WHOOP or Oura; AGENTS.md addresses human and AI-agent contributors and the optional coach uses a user-supplied model."],"requirements_zh":["README 称 NOOP 是独立的实验性互操作项目；所审 main 快照晚于 2026-10-04 发布的 v12.0.0。WHOOP 4.0 是经过测试的路径；在 WHOOP 5.0/MG 上，实时心率已确认可用，恢复度、负荷和睡眠所需的输入仍在解析中，README 还列出 SpO₂ 及多项夜间输入尚不可用或不完整。各项评分依据已发表的方法计算，属于近似值，并非复现 WHOOP 的模型；项目说明自己不是医疗设备。","实时使用需要使用者自己的 WHOOP 手环；5.0/MG 手环同一时间只与一台设备保持加密绑定，因此配对可能使其脱离官方应用。没有手环时，也可导入 WHOOP 的 CSV 导出或 Apple 健康的 export.xml。README 声明 NOOP 不含 WHOOP 的专有代码、固件、标志或素材；ATTRIBUTION.md 说明部分协议事实是从对厂商应用的反编译或静态分析中重新推导的，并作为未经验证的候选值提供，实现代码和字符串均未复制。","docs/BUILD.md 列出 macOS 参考应用所需的 macOS 13+、Xcode 26.x（Swift 6.3）和 XcodeGen 2.45+；各 Swift 包仅用 swift build 即可构建，BUILD.md 还说明了其中四个包在 CI 之外于 Linux 上运行测试的方法。Android 应用（Jetpack Compose，Android 8+）在 CI 中以 Gradle 和 JDK 17 构建；iOS 版可从源码构建，或以未签名 .ipa 侧载安装。更新检查默认开启，不发送健康数据；可选的 AI 教练和导出功能只有在使用者配置后才会发送数据。","CI 构建并测试每个 Swift 包，其中包括 WhoopProtocol 的帧格式和解码器测试，并构建 Android 调试版 APK、运行其单元测试。协议约定注明了观察所依据的固件版本（WHOOP 4 为 41.17.6.0，WHOOP 5/MG 以 50.42.1.0 为基准）。docs/VALIDATION_PROTOCOL.md 规定了声称评分改进时须遵守的规则。","LICENSE 对 NOOP 自身的代码和文档适用 PolyForm Noncommercial 1.0.0，GitHub 将其识别为 NOASSERTION；随附的 GRDB.swift 和 ZIPFoundation 采用 MIT。README 称 github.com/ryanbr/noop 是正式主页，但 GitHub 将其列为 muftiarfan/noop 的分叉。NOOP 声明与 WHOOP 或 Oura 无关联；AGENTS.md 面向人类与 AI 智能体贡献者，可选的教练功能使用使用者自备的模型。"],"targets":["app","protocol"],"url":"https://github.com/ryanbr/noop","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-31","additional_evidence_urls":["https://github.com/hasherezade/pe-bear/blob/b90f1d7d96635e7a029f424a0d1d11a104821685/CMakeLists.txt","https://github.com/hasherezade/pe-bear/blob/b90f1d7d96635e7a029f424a0d1d11a104821685/.gitmodules","https://github.com/hasherezade/pe-bear/blob/b90f1d7d96635e7a029f424a0d1d11a104821685/pe-bear/updater/README.md","https://github.com/hasherezade/pe-bear/blob/b90f1d7d96635e7a029f424a0d1d11a104821685/.appveyor.yml","https://github.com/hasherezade/pe-bear/blob/b90f1d7d96635e7a029f424a0d1d11a104821685/LICENSE","https://github.com/hasherezade/pe-bear/wiki/Home/54c92bf64d101f3f51a8388f0d83455ce12055bf","https://github.com/hasherezade/pe-bear/wiki/PE-Unmapping/88701f9546cb03b2e5666958e0e889feaea99ba9","https://github.com/hasherezade/pe-bear/wiki/Searching-patterns/fd89b1add6e3af972d64b455a6316b74491d9284","https://hshrzd.wordpress.com/pe-bear/","https://github.com/hasherezade/pe-bear/releases/tag/v0.7.2"],"category":"native-analysis","description_en":"Qt GUI to view and edit Windows Portable Executable files, meant as a fast first look for malware analysts and robust against malformed PE32 and PE64 files. It shows headers and section layout, follows raw, RVA and VA addresses, disassembles from any offset with Capstone, matches packer signatures, compares two files and unmaps dumped images.","description_zh":"用于查看和编辑 Windows 可移植可执行（PE）文件的 Qt 图形工具，旨在为恶意软件分析人员提供快速的初步查看，并能稳定处理畸形的 PE32 与 PE64 文件。它可显示文件头和节区布局，跟随原始偏移、RVA 和 VA 地址，借助 Capstone 从任意偏移开始反汇编，按签名识别加壳工具，对比两个文件，并能还原从内存转储的映像。","entry_url":"https://awesomerea.org/resources/pe-bear/","entry_url_zh":"https://awesomerea.org/zh/resources/pe-bear/","evidence_url":"https://github.com/hasherezade/pe-bear/blob/b90f1d7d96635e7a029f424a0d1d11a104821685/README.md","group":"tools","id":"pe-bear","json_url":"https://awesomerea.org/resources/pe-bear/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pe-bear/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pe-bear/index.md","name":"PE-bear","name_zh":"PE-bear PE 文件分析工具","record_type":"resource","relationship":"foundation","requirements":["Latest release: v0.7.2 (2026-06-05), with Windows Qt6 and Qt5 builds, a legacy Qt4 x86 build for old Windows such as XP, Linux tar.xz and AppImage builds and a macOS Qt6 app; Chocolatey, Scoop and WinGet also package it. The reviewed main commit of 2026-10-14 is 16 commits ahead, with a Capstone update and an unreleased update check that, per its README, queries GitHub's releases API at most once a day and sends only a PE-bear User-Agent.","Linux builds need a matching Qt installation, and Windows builds made with Visual Studio 2017 or later need the Visual C++ 2015–2022 redistributable. Source builds need Git, CMake 3.12+, Qt6 (or Qt5/Qt4) and the bearparser, Capstone and sig_finder submodules, with build scripts for Linux and macOS. AppVeyor builds test packages from each main commit, which README warns may be unstable.","Input is a PE file chosen by the analyst, including images dumped from a process, which PE-bear offers to unmap. Wiki pages cover adding imports, removing overlays, filling content and searching strings or masked byte signatures. Packer detection uses SIG.txt, converted from PEiD's UserDB by a third-party script and last updated on 2022-10-17.","GPL-2.0; the author's page says PE-bear has been open source since 2022-09-18, after development was discontinued in 2014 and later reopened. The bearparser and sig_finder submodules are BSD-2-Clause, and Capstone keeps its own license."],"requirements_zh":["最新发行版为 v0.7.2（2026-06-05），提供 Windows 的 Qt6 与 Qt5 版本、面向 XP 等旧版 Windows 的 Qt4 x86 旧版构建、Linux 的 tar.xz 与 AppImage 版本以及 macOS 的 Qt6 应用；Chocolatey、Scoop 和 WinGet 也提供安装包。所审阅的 main 提交（2026-10-14）比它多 16 个提交，包括 Capstone 更新和尚未发布的更新检查功能；据其 README，该功能每天最多查询一次 GitHub 发行版 API，且只发送 PE-bear 的 User-Agent。","Linux 版本需要安装对应版本的 Qt；用 Visual Studio 2017 或更高版本构建的 Windows 版本需要 Visual C++ 2015–2022 运行库。源码构建需要 Git、CMake 3.12+、Qt6（或 Qt5/Qt4）以及 bearparser、Capstone 和 sig_finder 子模块，并提供 Linux 与 macOS 的构建脚本。AppVeyor 会为 main 分支的每个提交构建测试包，README 提醒这些构建可能不稳定。","输入为分析者选定的 PE 文件，也包括从进程中转储的映像，PE-bear 会提示将其还原为原始格式。Wiki 页面介绍了添加导入项、移除附加数据、填充内容以及搜索字符串或带掩码的字节签名。加壳识别使用 SIG.txt，它由第三方脚本从 PEiD 的 UserDB 转换而来，最后更新于 2022-10-17。","采用 GPL-2.0 许可；作者页面称 PE-bear 自 2022-09-18 起开源，此前其开发曾于 2014 年停止，后又重新启动。bearparser 和 sig_finder 子模块采用 BSD-2-Clause 许可，Capstone 保留其自身许可。"],"targets":["binary"],"url":"https://github.com/hasherezade/pe-bear","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-10-31","additional_evidence_urls":["https://github.com/arkadiyt/protodump/blob/d398fada3452b87e6f0879d9cdf3dad31bb74d6e/pkg/protodump/scan.go","https://github.com/arkadiyt/protodump/blob/d398fada3452b87e6f0879d9cdf3dad31bb74d6e/pkg/protodump/proto.go","https://github.com/arkadiyt/protodump/blob/d398fada3452b87e6f0879d9cdf3dad31bb74d6e/cmd/protodump/main.go","https://github.com/arkadiyt/protodump/blob/d398fada3452b87e6f0879d9cdf3dad31bb74d6e/cmd/protodump/output.go","https://github.com/arkadiyt/protodump/blob/d398fada3452b87e6f0879d9cdf3dad31bb74d6e/go.mod","https://github.com/arkadiyt/protodump/blob/d398fada3452b87e6f0879d9cdf3dad31bb74d6e/.github/workflows/build.yml","https://github.com/arkadiyt/protodump/tree/d398fada3452b87e6f0879d9cdf3dad31bb74d6e"],"category":"protocol-analysis","description_en":"Go command-line utility that recovers Protocol Buffers schemas from a compiled binary or any other file: it scans the raw bytes for serialized FileDescriptorProto records embedded by generated code, locating them through their .proto file names, and writes each one back out as a .proto source file under its original descriptor path. The regenerated files use proto2, proto3 or editions syntax and include the package, imports, common file options, messages with reserved ranges, nested enums, oneofs, maps and default values, and services with their RPC methods, giving analysts message and API definitions to work with when decoding Protobuf traffic.","description_zh":"Go 编写的命令行工具，可从已编译的二进制或其他任意文件中恢复 Protocol Buffers 模式：它在原始字节中搜索生成代码嵌入的序列化 FileDescriptorProto 记录（借助其中的 .proto 文件名定位），并按原描述符路径将每条记录重新写成 .proto 源文件。重新生成的文件采用 proto2、proto3 或 editions 语法，包含包名、导入、常用文件选项，带保留范围的消息、嵌套枚举、oneof、map 与默认值，以及服务及其 RPC 方法，为分析者解码 Protobuf 流量提供消息和接口定义。","entry_url":"https://awesomerea.org/resources/protodump/","entry_url_zh":"https://awesomerea.org/zh/resources/protodump/","evidence_url":"https://github.com/arkadiyt/protodump/blob/d398fada3452b87e6f0879d9cdf3dad31bb74d6e/README.md","group":"tools","id":"protodump","json_url":"https://awesomerea.org/resources/protodump/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/protodump/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/protodump/index.md","name":"protodump","name_zh":"protodump Protobuf 定义恢复工具","record_type":"resource","relationship":"foundation","requirements":["No tagged releases at review; the README installs it with go install from the latest module version, and go.mod declares Go 1.26.8. The reviewed main commit of 2026-09-27 confines output writes to the chosen directory and refuses to overwrite existing files. CI tests and builds it on Linux, macOS and Windows.","Input is a user-supplied binary or other file that embeds complete descriptors. The scan is a byte search rather than executable-format parsing, so descriptors that are absent or not stored as plain serialized records are not found, and records that fail to parse are skipped silently unless -v is given.","Field, message, enum, oneof, service and method options are not emitted yet (TODOs in the generator), and extension definitions are not written, so regenerated files can differ from the originals and need analyst review.","No license file or license statement was found at the reviewed commit, and GitHub detects no license, so the project states no reuse terms."],"requirements_zh":["审阅时没有任何带标签的发布版；README 使用 go install 安装最新模块版本，go.mod 声明 Go 1.26.8。所审阅的 2026-09-27 main 分支提交将输出写入限制在指定目录内，并拒绝覆盖已有文件。CI 在 Linux、macOS 和 Windows 上进行测试和构建。","输入为使用者提供的、嵌入了完整描述符的二进制或其他文件。扫描是字节搜索而非可执行格式解析，因此缺失或未以普通序列化记录形式存储的描述符无法找到；解析失败的记录除非使用 -v，否则会被静默跳过。","字段、消息、枚举、oneof、服务和方法的选项尚未输出（生成器中标为 TODO），扩展定义也不会写出，因此重新生成的文件可能与原文件不同，需要分析者复核。","所审阅的提交中没有许可证文件或许可声明，GitHub 也未检测到许可证，因此项目未声明任何再使用条款。"],"targets":["binary","protocol"],"url":"https://github.com/arkadiyt/protodump","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/techge/PRE-list/blob/9c18f7c8f00978ec70ba285a5f13b461ede12e93/README.md#L263-L275","https://github.com/techge/PRE-list/blob/9c18f7c8f00978ec70ba285a5f13b461ede12e93/tools.csv","https://github.com/techge/PRE-list/blob/9c18f7c8f00978ec70ba285a5f13b461ede12e93/CSVtoREADME.py","https://github.com/techge/PRE-list/blob/9c18f7c8f00978ec70ba285a5f13b461ede12e93/LICENSE"],"category":"related-lists","description_en":"A table-based reading list of 71 research papers on automatic protocol reverse engineering for network protocols, from the Protocol Informatics project (2004) to NetPlier (2021). Built from three surveys and extended since, it compares each method by approach, by input (network traces or execution traces) and output (message formats, state machines or other artifacts), and by the text, binary or hybrid protocols it was evaluated on, with full references and a short table of the few papers that released code.","description_zh":"以表格形式整理的网络协议自动化逆向工程研究清单，收录 71 篇论文，从 2004 年的 Protocol Informatics 项目到 2021 年的 NetPlier。清单以三篇综述为基础并持续扩充，按所用方法、输入（网络流量记录或执行轨迹）与输出（报文格式、状态机或其他产物），以及评估所用的文本、二进制或混合协议对各方法进行比较，附完整参考文献，另有一张列出少数公开代码论文的简表。","entry_url":"https://awesomerea.org/resources/pre-list/","entry_url_zh":"https://awesomerea.org/zh/resources/pre-list/","evidence_url":"https://github.com/techge/PRE-list/blob/9c18f7c8f00978ec70ba285a5f13b461ede12e93/README.md","group":"learn","id":"pre-list","json_url":"https://awesomerea.org/resources/pre-list/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/pre-list/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pre-list/index.md","name":"PRE-list","name_zh":"PRE-list 网络协议逆向工程论文清单","record_type":"resource","relationship":"learning","requirements":["The reviewed README was last updated on 2024-05-22, when NetPlier and NEMETYL were added; the other changes date from November 2020 to May 2021. Its 71 papers span 2004–2021, so later protocol reverse-engineering work is not covered.","40 of the 71 overview rows still read “Please review” instead of describing the approach, several input/output rows are empty, and 29 rows of the tested-protocols table name no protocol. The tables summarize what each paper reports.","The README states that most papers do not provide their code; its source-code table lists eight projects, one only through a Web Archive copy of the Protocol Informatics page. The remaining entries are papers, with PDF links where the maintainer found one.","CSVtoREADME.py generates the README tables from tools.csv, contributions are requested as additions to tools.ods, and two further spreadsheets keep categorisations from the Duchêne et al. and Sija et al. surveys.","LICENSE is CC0-1.0, while CSVtoREADME.py carries a GPL-3.0-or-later header; the linked papers keep their publishers' terms. An independent reading list."],"requirements_zh":["所审阅的 README 最近一次更新于 2024-05-22，当时加入了 NetPlier 和 NEMETYL；其余改动集中在 2020 年 11 月至 2021 年 5 月。所收 71 篇论文发表于 2004–2021 年，此后的协议逆向工程研究未被收录。","概览表 71 行中有 40 行仍写着“Please review”，未描述所用方法；输入／输出表有若干行为空，“已测试协议”表中有 29 行未列出任何协议。这些表格汇总的是各论文自述的内容。","README 说明大多数论文未公开代码；其源码表列出八个项目，其中一个只能通过 Web Archive 存档的 Protocol Informatics 页面获取。其余条目只有论文，维护者找到 PDF 时附有链接。","README 中的表格由 CSVtoREADME.py 根据 tools.csv 生成；维护者请贡献者在 tools.ods 中补充论文，另有两份表格保存依据 Duchêne 等人和 Sija 等人综述所做的分类。","LICENSE 为 CC0-1.0，而 CSVtoREADME.py 文件头声明 GPL-3.0-or-later；所链接的论文仍遵循各出版方的条款。这是独立的阅读清单。"],"targets":["protocol"],"url":"https://github.com/techge/PRE-list","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/HumanSecurity/restringer/blob/d9eae6907e14581b7934940ee0407f505b7a212b/package.json","https://github.com/HumanSecurity/restringer/blob/d9eae6907e14581b7934940ee0407f505b7a212b/src/processors/README.md","https://github.com/HumanSecurity/restringer/blob/d9eae6907e14581b7934940ee0407f505b7a212b/.github/workflows/node.js.yml","https://github.com/HumanSecurity/restringer/blob/d9eae6907e14581b7934940ee0407f505b7a212b/tests/samples.test.js","https://github.com/HumanSecurity/restringer/tree/d9eae6907e14581b7934940ee0407f505b7a212b/tests/resources","https://github.com/HumanSecurity/restringer/blob/d9eae6907e14581b7934940ee0407f505b7a212b/LICENSE","https://github.com/HumanSecurity/restringer/releases/tag/v2.1.0","https://github.com/ctrl-escp/restringer/blob/5fe8ac8d23723810fba170972c12b4433ffba111/README.md","https://github.com/ctrl-escp/restringer/blob/5fe8ac8d23723810fba170972c12b4433ffba111/package.json","https://registry.npmjs.org/restringer/2.2.0","https://registry.npmjs.org/restringer/2.3.0"],"category":"web-analysis","description_en":"HUMAN Security's Node.js JavaScript deobfuscator. It identifies the obfuscation type, runs matching processors for obfuscator.io, Caesar Plus and array-based patterns, then iterates 40+ AST modules that rebuild strings, resolve expressions and calls and simplify control flow; unsafe modules evaluate code in a sandbox. It works as a CLI or library.","description_zh":"HUMAN Security 推出的 Node.js JavaScript 反混淆工具。它先识别混淆类型，针对 obfuscator.io、Caesar Plus 和基于数组的混淆模式运行相应处理器，再迭代执行 40 多个 AST 模块，重建字符串、求解表达式和函数调用并简化控制流；其中不安全模块会在沙箱中求值代码。可作为命令行工具或库使用。","entry_url":"https://awesomerea.org/resources/restringer/","entry_url_zh":"https://awesomerea.org/zh/resources/restringer/","evidence_url":"https://github.com/HumanSecurity/restringer/blob/d9eae6907e14581b7934940ee0407f505b7a212b/README.md","group":"tools","id":"restringer","json_url":"https://awesomerea.org/resources/restringer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/restringer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/restringer/index.md","name":"REstringer","name_zh":"REstringer JavaScript 反混淆工具","record_type":"resource","relationship":"foundation","requirements":["The reviewed HumanSecurity main commit (2025-12-07) is v2.1.0 plus one README edit removing the retired REstringer.tech web tool. The author now continues the project in his fork ctrl-escp/restringer, which the npm package lists as its repository: npm 2.2.0 (2026-05-09) and 2.3.0 (2026-08-30) come from it, and at 2.3.0 its README requires Node.js 22+, makes isolated-vm optional and adds Node, Deno and Bun subprocess sandboxes, so npm installs code newer than the reviewed source.","The reviewed source needs Node.js 20+ (22+ recommended) and installs as a global CLI or a module. It depends on flast, obfuscation-detector, commander and isolated-vm 5.0.4, a native module that CI builds with Python and g++. Output goes to stdout or <input>-deob.js; -m caps iterations, and -c removes dead nodes, which README marks unsafe.","Input is an obfuscated JavaScript file or string. Safe modules transform the AST without evaluating code; unsafe modules evaluate parts of the input with eval() inside an isolated-vm sandbox to resolve expressions and calls.","GitHub Actions runs npm test on Node.js 20 and 22. Besides module and processor unit tests, the full suite deobfuscates 11 bundled obfuscated samples, among them obfuscator.io, JSFuck and Caesar Plus scripts, and compares each result with a stored expected output.","MIT, copyright 2025 HUMAN Security; the fork adds a 2026 copyright line for Ben Baryo. The repository was formerly PerimeterX/restringer, which now redirects to HumanSecurity/restringer."],"requirements_zh":["所审阅的 HumanSecurity main 提交（2025-12-07）即 v2.1.0 加上一处 README 修改，删去了已停用的 REstringer.tech 网页工具。作者现在其个人分支 ctrl-escp/restringer 中继续开发，npm 包也已将该分支列为其仓库：npm 2.2.0（2026-05-09）和 2.3.0（2026-08-30）均出自该分支；在 2.3.0 时，其 README 要求 Node.js 22+，将 isolated-vm 改为可选，并新增 Node、Deno 和 Bun 子进程沙箱，因此通过 npm 安装的代码比所审阅的源码更新。","所审阅的源码需要 Node.js 20+（推荐 22+），可作为全局命令行工具或模块安装。依赖 flast、obfuscation-detector、commander 以及 isolated-vm 5.0.4；后者是原生模块，CI 借助 Python 和 g++ 构建。结果输出到标准输出或 <input>-deob.js；-m 限制迭代次数，-c 删除无用节点，README 将其标为不安全。","输入为经过混淆的 JavaScript 文件或字符串。安全模块只变换 AST、不求值代码；不安全模块则在 isolated-vm 沙箱中用 eval() 求值部分输入，以求解表达式和函数调用。","GitHub Actions 在 Node.js 20 和 22 上运行 npm test。除模块和处理器单元测试外，完整测试套件还会对 11 个随附的混淆样本（包括 obfuscator.io、JSFuck 和 Caesar Plus 脚本）进行反混淆，并与保存的预期输出逐一比对。","采用 MIT 许可，版权归 HUMAN Security（2025）；该分支另加了 Ben Baryo 的 2026 年版权行。仓库原为 PerimeterX/restringer，现已重定向到 HumanSecurity/restringer。"],"targets":["website"],"url":"https://github.com/HumanSecurity/restringer","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/emproof-com/workshop_firmware_reverse_engineering/blob/10dc72a199f2a70c2274b08ff5773412df6d035b/tasks/hello_world/task.md","https://github.com/emproof-com/workshop_firmware_reverse_engineering/blob/10dc72a199f2a70c2274b08ff5773412df6d035b/tasks/embedded_linux_2/task.md","https://github.com/emproof-com/workshop_firmware_reverse_engineering/blob/10dc72a199f2a70c2274b08ff5773412df6d035b/tasks/car_demo/task.md","https://github.com/emproof-com/workshop_firmware_reverse_engineering/blob/10dc72a199f2a70c2274b08ff5773412df6d035b/tasks/iot_diag/task.md","https://github.com/emproof-com/workshop_firmware_reverse_engineering/blob/10dc72a199f2a70c2274b08ff5773412df6d035b/tasks/crypto_detection/task.md","https://github.com/emproof-com/workshop_firmware_reverse_engineering/blob/10dc72a199f2a70c2274b08ff5773412df6d035b/Dockerfile","https://github.com/emproof-com/workshop_firmware_reverse_engineering/blob/10dc72a199f2a70c2274b08ff5773412df6d035b/docker_run.sh","https://github.com/emproof-com/workshop_firmware_reverse_engineering/blob/10dc72a199f2a70c2274b08ff5773412df6d035b/LICENSE"],"category":"learning","description_en":"Slides and 14 self-contained exercises from Emproof's firmware reverse-engineering workshop at ScapyCon Automotive 2025, designed by Tim Blazytko for a technical audience with little security experience. The firmware and binary tasks move from reading ELF metadata with binutils and first steps in Ghidra or Binary Ninja, through unpacking two embedded-Linux CTF images with binwalk, to bare-metal analysis: identifying the microcontroller, toolchain and memory map of a model car's firmware ELF, and rebasing a raw STM32F103 flash dump with segments taken from the datasheet. Other tasks decrypt strings statically in a Mirai sample and trace a hardcoded AES key back to its data section.","description_zh":"Emproof 在 ScapyCon Automotive 2025 上举办的固件逆向工程研讨会的幻灯片和 14 个独立练习，由 Tim Blazytko 设计，面向安全经验不多的技术人员。固件与二进制相关练习由浅入深：先用 binutils 读取 ELF 元数据并初步上手 Ghidra 或 Binary Ninja，再用 binwalk 解包两个嵌入式 Linux CTF 镜像，最后进行裸机分析，包括识别一辆模型车固件 ELF 的微控制器、工具链和内存映射，以及依据数据手册定义内存段，为一份原始 STM32F103 闪存转储重设基址。另有练习在 Mirai 样本中静态解密字符串，并把硬编码的 AES 密钥回溯到其所在数据段。","entry_url":"https://awesomerea.org/resources/emproof-firmware-re-workshop/","entry_url_zh":"https://awesomerea.org/zh/resources/emproof-firmware-re-workshop/","evidence_url":"https://github.com/emproof-com/workshop_firmware_reverse_engineering/blob/10dc72a199f2a70c2274b08ff5773412df6d035b/README.md","group":"learn","id":"emproof-firmware-re-workshop","json_url":"https://awesomerea.org/resources/emproof-firmware-re-workshop/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/emproof-firmware-re-workshop/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/emproof-firmware-re-workshop/index.md","name":"Emproof workshop: Firmware Reverse Engineering","name_zh":"Emproof 固件逆向工程研讨会","record_type":"resource","relationship":"learning","requirements":["The reviewed main commit, from 2025-09-25, ends a 14-commit history that began on 2025-09-21. It holds slides.pdf and 14 tasks, each a task.md with step-by-step questions next to a samples folder; no model solutions are included, and the two embedded-Linux tasks link an external write-up.","The README says most samples target ARMv7 (Thumb/ARM32) or AArch64, and many come with C source. A Kali Linux-based Docker image fixed to linux/arm64, emulated on x86_64 hosts, supplies binutils, binwalk, John the Ripper and armhf runtime libraries; on first use docker_run.sh installs QEMU binfmt handlers on the host through a privileged container. Ghidra and Binary Ninja Free are installed on the host, and because Binary Ninja Free lacks AArch64 support, many tasks also ship an .armv7 build.","Bare-metal tasks expect the analyst to consult the microcontroller's datasheet or reference manual; the STM32F103 task names the flash, SRAM, peripheral and system-control-space ranges to define before re-analysis. Several further tasks are crackme-style license, keygen and anti-patching exercises on the workshop's own binaries.","The workshop materials are GPL-2.0, but the README excludes three sample folders from that license and provides them for analysis and education only, without redistribution: the two embedded-Linux images, which the tasks attribute to WORMCON CTF 2021, and a Mirai botnet binary that its task describes as active malware not to be executed, stored in a password-protected archive."],"requirements_zh":["所审阅的 main 提交日期为 2025-09-25，是自 2025-09-21 起共 14 个提交中的最后一个。仓库包含 slides.pdf 和 14 个练习，每个练习由附带分步问题的 task.md 和一个 samples 文件夹组成；未提供参考答案，两个嵌入式 Linux 练习链接了外部解题文章。","README 称大多数样本面向 ARMv7（Thumb/ARM32）或 AArch64，其中不少附有 C 源码。基于 Kali Linux 的 Docker 镜像固定为 linux/arm64，在 x86_64 主机上以模拟方式运行，内含 binutils、binwalk、John the Ripper 和 armhf 运行库；首次使用时，docker_run.sh 会通过特权容器在主机上安装 QEMU binfmt 处理程序。Ghidra 和 Binary Ninja Free 需安装在主机上；由于 Binary Ninja Free 不支持 AArch64，许多练习另附 .armv7 构建。","裸机练习要求分析者查阅微控制器的数据手册或参考手册；STM32F103 练习给出了重新分析前需定义的闪存、SRAM、外设和系统控制空间地址范围。另有若干练习是针对研讨会自带程序的 crackme 式许可证、注册机和反补丁练习。","研讨会材料采用 GPL-2.0，但 README 将三个样本文件夹排除在该许可之外，仅供分析和教学使用，不得再分发：其中两个嵌入式 Linux 镜像据练习说明来自 WORMCON CTF 2021，另一个是 Mirai 僵尸网络程序，其练习说明称其为活跃恶意软件、不得执行，并存放在带密码的压缩包中。"],"targets":["binary","firmware"],"url":"https://github.com/emproof-com/workshop_firmware_reverse_engineering","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/postlund/pyatv/blob/b277a4c8222ecdcbaab8a24e3e713ca44765adb4/README.md","https://github.com/postlund/pyatv/blob/b277a4c8222ecdcbaab8a24e3e713ca44765adb4/docs/documentation/protocols.md#L13-L18","https://github.com/postlund/pyatv/blob/b277a4c8222ecdcbaab8a24e3e713ca44765adb4/docs/documentation/protocols.md#L363-L375","https://github.com/postlund/pyatv/blob/b277a4c8222ecdcbaab8a24e3e713ca44765adb4/docs/documentation/atvproxy.md","https://github.com/postlund/pyatv/blob/b277a4c8222ecdcbaab8a24e3e713ca44765adb4/docs/documentation/supported_features.md","https://github.com/postlund/pyatv/blob/b277a4c8222ecdcbaab8a24e3e713ca44765adb4/docs/documentation/documentation.md","https://github.com/postlund/pyatv/blob/b277a4c8222ecdcbaab8a24e3e713ca44765adb4/docs/internals/testing.md","https://github.com/postlund/pyatv/blob/b277a4c8222ecdcbaab8a24e3e713ca44765adb4/docs/support/acknowledgements.md","https://github.com/postlund/pyatv/blob/b277a4c8222ecdcbaab8a24e3e713ca44765adb4/.github/workflows/tests.yml","https://github.com/postlund/pyatv/blob/b277a4c8222ecdcbaab8a24e3e713ca44765adb4/pyproject.toml","https://github.com/postlund/pyatv/blob/b277a4c8222ecdcbaab8a24e3e713ca44765adb4/CHANGES.md","https://github.com/postlund/pyatv/blob/b277a4c8222ecdcbaab8a24e3e713ca44765adb4/LICENSE.md","https://github.com/postlund/pyatv/releases/tag/v0.18.0","https://pypi.org/project/pyatv/0.18.0/"],"category":"reconstruction-cases","description_en":"Asyncio Python library and command-line tools that act as an independent client for Apple TV and AirPlay devices by reimplementing the DMAP/DACP, Media Remote Protocol, Companion Link, AirPlay and RAOP protocols, which its protocol documentation describes as reverse engineered. That page records the recovered binary formats, Zeroconf properties, the OPACK encoding, pair-setup and pair-verify exchanges and Companion commands, with some request headers taken from Wireshark captures of the iPhone Remote app, and the bundled atvproxy relays MRP, Companion and AirPlay sessions to print decrypted messages for further analysis. On this basis pyatv provides remote control, metadata with push updates, app and account switching, audio-output management and AirPlay streaming to Apple TVs, HomePods and third-party receivers.","description_zh":"基于 asyncio 的 Python 库和命令行工具，通过重新实现 DMAP/DACP、Media Remote Protocol、Companion Link、AirPlay 和 RAOP 协议，充当 Apple TV 与 AirPlay 设备的独立客户端；其协议文档称这些协议均经逆向工程得出。该文档记录了恢复出的二进制格式、Zeroconf 属性、OPACK 编码、pair-setup 与 pair-verify 交互以及 Companion 命令，其中部分请求头取自 iPhone Remote 应用的 Wireshark 抓包；附带的 atvproxy 可中继 MRP、Companion 和 AirPlay 会话并打印解密后的消息，供进一步分析。在此基础上，pyatv 提供遥控、带推送更新的元数据、应用与账户切换、音频输出管理，以及向 Apple TV、HomePod 和第三方接收器的 AirPlay 推流。","entry_url":"https://awesomerea.org/resources/pyatv-apple-tv-airplay-protocols-case/","entry_url_zh":"https://awesomerea.org/zh/resources/pyatv-apple-tv-airplay-protocols-case/","evidence_url":"https://github.com/postlund/pyatv/blob/b277a4c8222ecdcbaab8a24e3e713ca44765adb4/docs/documentation/protocols.md","group":"cases","id":"pyatv-apple-tv-airplay-protocols-case","json_url":"https://awesomerea.org/resources/pyatv-apple-tv-airplay-protocols-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/pyatv-apple-tv-airplay-protocols-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pyatv-apple-tv-airplay-protocols-case/index.md","name":"pyatv: a reverse-engineered client for Apple TV and AirPlay protocols","name_zh":"pyatv：逆向工程实现的 Apple TV 与 AirPlay 协议客户端","record_type":"resource","relationship":"independent-reconstruction","requirements":["Release at review: 0.18.0, published to GitHub and PyPI on 2026-06-19 as a tvOS-compatibility release; the reviewed master commit is the release commit, while the v0.18.0 tag points to a parallel commit that differs only in CHANGES.md and pyatv/const.py. The protocol page limits itself to what has been reverse engineered: its Companion Link section is called mostly speculation and guesses, the OPACK description is incomplete and unverified, and the MRP implementation section is still marked TBD. The acknowledgements say MRP support builds on Jean Regisser's mediaremotetv-protocol findings.","No Apple software, firmware or keys are bundled. pyatv connects to the user's own Apple TV, HomePod, AirPort Express or other AirPlay receiver on the local network; most protocols require pairing with a PIN shown on the device, and credentials and settings are kept in pyatv's storage. On tvOS 15 and later AirPlay must be set up because MRP moved into an AirPlay 2 stream, and RAOP supports only legacy pairing.","Requires Python 3.9+ and installs from PyPI or the project's container images; the installation guide lists build-essential, libssl-dev, libffi-dev and Python headers for building dependencies on Debian-style systems, and RAOP audio streaming relies on miniaudio. CI runs on Ubuntu, macOS and Windows with Python 3.9 to 3.14.","Tests are mostly unit tests, plus functional tests for DMAP, MRP, Companion, RAOP, mDNS and scanning that run against a fake device which, according to the testing guide, implements limited functionality and is only meant to be compatible with pyatv. atvproxy is described as an incubating script that depends on internal APIs.","MIT (LICENSE.md). Apple's protocols, devices and software keep their own rights; pyatv is an independent implementation."],"requirements_zh":["审阅时的版本为 0.18.0，于 2026-06-19 同时发布到 GitHub 和 PyPI，主要为兼容新版 tvOS；所审阅的 master 分支提交即发布提交，而 v0.18.0 标签指向另一个并行提交，两者仅在 CHANGES.md 和 pyatv/const.py 上有差异。协议文档只涵盖已逆向得出的内容：Companion Link 一节自称大多是推测和猜想，OPACK 的描述并不完整且未经验证，MRP 的实现一节仍标为待定。致谢页称 MRP 支持建立在 Jean Regisser 的 mediaremotetv-protocol 研究成果之上。","仓库未附带任何 Apple 软件、固件或密钥。pyatv 连接使用者自己在局域网中的 Apple TV、HomePod、AirPort Express 或其他 AirPlay 接收器；多数协议需要用设备上显示的 PIN 配对，凭据和设置保存在 pyatv 的存储中。tvOS 15 及更高版本因 MRP 已移入 AirPlay 2 数据流，必须先设置好 AirPlay；RAOP 仅支持旧式配对。","需要 Python 3.9+，可从 PyPI 或项目的容器镜像安装；安装指南列出在 Debian 类系统上构建依赖所需的 build-essential、libssl-dev、libffi-dev 和 Python 头文件，RAOP 音频推流依赖 miniaudio。CI 在 Ubuntu、macOS 和 Windows 上以 Python 3.9 至 3.14 运行。","测试以单元测试为主，另有针对 DMAP、MRP、Companion、RAOP、mDNS 和扫描的功能测试；据测试指南，这些测试连接的模拟设备只实现有限功能，且仅求与 pyatv 兼容。atvproxy 也被描述为处于孵化阶段、依赖内部 API 的脚本。","采用 MIT 许可（LICENSE.md）。Apple 的协议、设备和软件保留其各自权利；pyatv 是独立实现。"],"targets":["protocol"],"url":"https://github.com/postlund/pyatv","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/ant4g0nist/lisa.py/blob/9dd61e9dfc52668616634a024bf46ee2dc056852/lldb_mcp.py","https://github.com/ant4g0nist/lisa.py/blob/9dd61e9dfc52668616634a024bf46ee2dc056852/lisa.py#L5380-L6322","https://github.com/ant4g0nist/lisa.py/blob/9dd61e9dfc52668616634a024bf46ee2dc056852/lisa.py#L6408-L6534","https://github.com/ant4g0nist/lisa.py/blob/9dd61e9dfc52668616634a024bf46ee2dc056852/pyproject.toml","https://github.com/ant4g0nist/lisa.py/blob/9dd61e9dfc52668616634a024bf46ee2dc056852/requirements.txt","https://github.com/ant4g0nist/lisa.py/blob/9dd61e9dfc52668616634a024bf46ee2dc056852/Makefile","https://github.com/ant4g0nist/lisa.py/blob/9dd61e9dfc52668616634a024bf46ee2dc056852/LICENSE"],"category":"agent-mcp","description_en":"LLDB extension that adds an MCP bridge to a debugging session, adapted from ida-pro-mcp: the plugin's mcp start command serves 18 debugger functions over local JSON-RPC, and a FastMCP stdio server generated from those functions exposes them to MCP clients such as Claude Desktop. The tools create, launch or attach to targets, step, manage breakpoints, read backtraces, variables, disassembly and memory, evaluate expressions and run arbitrary LLDB commands. The same script keeps lisa.py's earlier exploit-development helpers, including checksec, a register and stack context view, Mach-O header and load-command display, Capstone disassembly and an exploitable crash-triage command.","description_zh":"为 LLDB 调试会话加入 MCP 桥接的扩展，改编自 ida-pro-mcp：插件的 mcp start 命令通过本地 JSON-RPC 提供 18 个调试器函数，再由依据这些函数生成的 FastMCP stdio 服务器把它们开放给 Claude Desktop 等 MCP 客户端。这些工具可创建、启动或附加调试目标，单步执行，管理断点，读取调用栈、变量、反汇编和内存，计算表达式，并可执行任意 LLDB 命令。同一脚本还保留了 lisa.py 早先的漏洞利用开发辅助命令，包括 checksec、寄存器与栈上下文视图、Mach-O 文件头与加载命令显示、Capstone 反汇编，以及用于崩溃分级的 exploitable 命令。","entry_url":"https://awesomerea.org/resources/lisa-lldb-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/lisa-lldb-mcp/","evidence_url":"https://github.com/ant4g0nist/lisa.py/blob/9dd61e9dfc52668616634a024bf46ee2dc056852/README.md","group":"agents","id":"lisa-lldb-mcp","json_url":"https://awesomerea.org/resources/lisa-lldb-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/lisa-lldb-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/lisa-lldb-mcp/index.md","name":"lisa.py","name_zh":"lisa.py：LLDB 的 MCP 集成与调试辅助命令","record_type":"resource","relationship":"independent-agent-integration","requirements":["The default dev branch was reviewed at commit 9dd61e9 from 2025-03-29, the last of three commits that day adding the MCP integration to a 2021 rewrite of lisa.py. There are no releases or tags, the master branch still holds the 2017 version without MCP support, and the README's TODO list asks for updated manuals and more test cases.","Python 3.10+ and LLDB with Python bindings; the LLDB Python environment must also import capstone, pinned to 4.0.2 in requirements.txt, and the MCP server needs fastmcp and httpx. The README is partly out of step with the code: it names server.py, lldb_plugin.py and an lldb-mcp clone path, while the repository ships lisa.py and lldb_mcp.py, and the pyproject lldb-mcp entry point names a module that does not exist.","Load lisa.py into LLDB with command script import, run mcp start, and point the MCP client at lldb_mcp.py; the README shows a Claude Desktop configuration that runs it through uv. The plugin listens on localhost port 13338 without authentication, and the MCP server always connects to that port even if mcp start was given another. run_lldb_command passes any LLDB command through, so a connected client has full control of the debugger and the debugged process.","The helper commands parse Mach-O headers and load commands and handle x86_64 and arm64/arm64e registers; the README states no supported operating system or LLDB version. The tests directory holds small crash programs, including Objective-C and libdispatch cases, that make rtests runs through LLDB; no CI is configured.","LICENSE is Apache-2.0, but pyproject.toml declares MIT and lldb_mcp.py carries ida-pro-mcp's MIT notice."],"requirements_zh":["所审阅的是默认 dev 分支上 2025-03-29 的提交 9dd61e9，即当天为 2021 年重写版 lisa.py 加入 MCP 集成的三个提交中的最后一个。仓库没有发布版本或标签，master 分支仍是不含 MCP 支持的 2017 年版本，README 的待办事项还列出更新使用手册和补充测试用例。","需要 Python 3.10+ 和带 Python 绑定的 LLDB；LLDB 的 Python 环境还需能导入 capstone（requirements.txt 固定为 4.0.2），MCP 服务器则需要 fastmcp 和 httpx。README 与代码部分脱节：README 提到 server.py、lldb_plugin.py 和 lldb-mcp 克隆路径，而仓库实际提供的是 lisa.py 和 lldb_mcp.py；pyproject 中 lldb-mcp 入口指向的模块并不存在。","用 command script import 把 lisa.py 载入 LLDB，执行 mcp start，再让 MCP 客户端运行 lldb_mcp.py；README 给出了通过 uv 启动它的 Claude Desktop 配置。插件在 localhost 的 13338 端口监听且没有认证，即使 mcp start 指定了其他端口，MCP 服务器也总是连接 13338。run_lldb_command 会原样执行任意 LLDB 命令，因此已连接的客户端可完全控制调试器及被调试进程。","辅助命令可解析 Mach-O 文件头和加载命令，并支持 x86_64 与 arm64/arm64e 寄存器；README 未说明支持的操作系统或 LLDB 版本。tests 目录收录了若干小型崩溃程序（包括 Objective-C 和 libdispatch 用例），可通过 make rtests 在 LLDB 中运行；仓库未配置 CI。","LICENSE 为 Apache-2.0，但 pyproject.toml 声明 MIT，lldb_mcp.py 也保留了 ida-pro-mcp 的 MIT 声明。"],"targets":["binary"],"url":"https://github.com/ant4g0nist/lisa.py","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/0xKoda/WireMCP/blob/7f45f8b2b4adeb76be8c6227eefb38533fdd6b1e/index.js","https://github.com/0xKoda/WireMCP/blob/7f45f8b2b4adeb76be8c6227eefb38533fdd6b1e/index.js#L48-L180","https://github.com/0xKoda/WireMCP/blob/7f45f8b2b4adeb76be8c6227eefb38533fdd6b1e/index.js#L182-L300","https://github.com/0xKoda/WireMCP/blob/7f45f8b2b4adeb76be8c6227eefb38533fdd6b1e/index.js#L301-L364","https://github.com/0xKoda/WireMCP/blob/7f45f8b2b4adeb76be8c6227eefb38533fdd6b1e/package.json","https://github.com/0xKoda/WireMCP/blob/7f45f8b2b4adeb76be8c6227eefb38533fdd6b1e/LICENSE"],"category":"agent-mcp","description_en":"Node.js MCP server that runs Wireshark's tshark for LLM clients, aimed in its README at threat hunting, network diagnostics and anomaly detection. Three tools capture a few seconds of live traffic and return either a fixed set of IP, port, TCP-flag and HTTP fields, tshark's protocol-hierarchy statistics or TCP conversation statistics; analyze_pcap returns IPs, ports, HTTP URLs and protocol stacks from a saved capture. The remaining tools match captured IPs against the URLhaus blocklist and scan a capture for HTTP Basic, FTP, Telnet and Kerberos credentials, beside the dissection output.","description_zh":"基于 Node.js 的 MCP 服务器，为 LLM 客户端调用 Wireshark 的 tshark；其 README 将用途定位于威胁狩猎、网络诊断和异常检测。三个工具会实时抓取数秒流量，分别返回一组固定的 IP、端口、TCP 标志和 HTTP 字段，tshark 的协议层级统计，或 TCP 会话统计；analyze_pcap 则从已保存的抓包文件中返回 IP、端口、HTTP URL 和协议栈。解析输出之外，其余工具会把抓到的 IP 与 URLhaus 黑名单比对，或在抓包文件中扫描 HTTP Basic、FTP、Telnet 和 Kerberos 凭据。","entry_url":"https://awesomerea.org/resources/wiremcp/","entry_url_zh":"https://awesomerea.org/zh/resources/wiremcp/","evidence_url":"https://github.com/0xKoda/WireMCP/blob/7f45f8b2b4adeb76be8c6227eefb38533fdd6b1e/README.md","group":"agents","id":"wiremcp","json_url":"https://awesomerea.org/resources/wiremcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/wiremcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wiremcp/index.md","name":"WireMCP","name_zh":"WireMCP 基于 tshark 的流量分析 MCP 服务器","record_type":"resource","relationship":"independent-agent-integration","requirements":["Reviewed at main commit 7f45f8b from 2025-07-09, the last of nine commits since 2025-03-28; there are no releases or tags, package.json says 1.0.0 and its test script is a placeholder. It runs with Node.js (the README recommends v16+) after npm install, finds tshark on PATH or in common install locations, and is started by the MCP client as node index.js over stdio; the README lists macOS, Windows and Linux. Each tool also has a matching prompt template.","The live-capture tools default to interface en0 for 5 seconds and need capture permissions on the host; they write temp_capture.pcap in the working directory and delete it afterwards, and packet JSON is trimmed to about 720,000 characters. The server builds tshark shell commands by inserting the interface and file-path arguments without escaping, so it should be exposed only to trusted clients.","Field sets are fixed in the code: there is no arbitrary field extraction, display filter, decode-as or protocol-preference control, and the server does not infer unknown message formats.","check_threats and check_ip_threats download the URLhaus text blocklist from abuse.ch and match IPs locally; although the README mentions multiple threat feeds, the reviewed code queries only URLhaus. The credential scan and threat checks are security heuristics, and their findings need analyst review.","MIT; Wireshark and tshark keep their own GPL terms."],"requirements_zh":["审阅对象为 main 分支 2025-07-09 的提交 7f45f8b，是自 2025-03-28 以来九个提交中的最后一个；仓库没有发布版本或标签，package.json 标注为 1.0.0，其测试脚本只是占位。执行 npm install 后用 Node.js 运行（README 建议 v16+），程序会在 PATH 或常见安装位置查找 tshark，并由 MCP 客户端通过 stdio 以 node index.js 启动；README 列出 macOS、Windows 和 Linux。每个工具另有对应的提示词模板。","实时抓包工具默认在 en0 接口上抓取 5 秒，需要主机上的抓包权限；它们会在工作目录写入 temp_capture.pcap，用后删除，数据包 JSON 会被截断到约 720,000 个字符。服务器在构造 tshark shell 命令时直接插入接口名和文件路径参数而不做转义，因此只应向可信客户端开放。","字段集合在代码中固定：不支持任意字段提取、显示过滤器、decode-as 或协议首选项设置，服务器也不会推断未知报文格式。","check_threats 和 check_ip_threats 会从 abuse.ch 下载 URLhaus 文本黑名单，并在本地比对 IP；尽管 README 提到多个威胁情报源，所审阅的代码只查询 URLhaus。凭据扫描和威胁检查属于安全启发式检测，其结果需要分析者复核。","采用 MIT 许可；Wireshark 与 tshark 保留各自的 GPL 条款。"],"targets":["protocol"],"url":"https://github.com/0xKoda/WireMCP","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/ZeldaWWHDDecomp/wwhd/blob/b2811a3ce838d1f875bc8e68536c1950af5d7ffc/tools/verify/README.md","https://github.com/ZeldaWWHDDecomp/wwhd/blob/b2811a3ce838d1f875bc8e68536c1950af5d7ffc/docs/review-notes.md","https://github.com/ZeldaWWHDDecomp/wwhd/blob/b2811a3ce838d1f875bc8e68536c1950af5d7ffc/docs/hd-vs-gc-summary.md","https://github.com/ZeldaWWHDDecomp/wwhd/blob/b2811a3ce838d1f875bc8e68536c1950af5d7ffc/docs/decomp-notes.md","https://github.com/ZeldaWWHDDecomp/wwhd/blob/b2811a3ce838d1f875bc8e68536c1950af5d7ffc/tools/verify/assets.py","https://github.com/ZeldaWWHDDecomp/wwhd/blob/b2811a3ce838d1f875bc8e68536c1950af5d7ffc/LICENSE","https://github.com/ZeldaWWHDRecomp/ZeldaWWHDRecomp/tree/df2cf51bd6d02e0b310d46a5da062693bac7314f"],"category":"reconstruction-cases","description_en":"Decompiles the USA Wii U release of The Wind Waker HD function by function into readable C++ in zeldaret/tww’s style, and verifies each function by running it beside the original, statically recompiled from the user’s own copy, comparing return values, memory writes and calls on generated and recorded inputs, with coverage and mutation checks. README reports 28,244 of the game’s 39,713 functions verified, including 22,068 of 22,215 GameCube-derived functions. The code calls undecompiled functions by address, so it runs only inside the ZeldaWWHDRecomp port, not as a standalone game build.","description_zh":"将 Wii U 美版《塞尔达传说 风之杖 HD》逐个函数反编译为 zeldaret/tww 风格的可读 C++，并让每个函数与由使用者自有副本静态重编译得到的原版函数并排运行，在生成输入和录制输入上比较返回值、内存写入和函数调用，同时检查覆盖率并进行变异测试。README 报告游戏 39,713 个函数中已有 28,244 个通过验证，其中来自 GameCube 版的 22,215 个函数里有 22,068 个。代码通过地址调用尚未反编译的函数，因此只能在 ZeldaWWHDRecomp 移植中运行，不能单独构建成游戏。","entry_url":"https://awesomerea.org/resources/wind-waker-hd-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/wind-waker-hd-decomp-case/","evidence_url":"https://github.com/ZeldaWWHDDecomp/wwhd/blob/b2811a3ce838d1f875bc8e68536c1950af5d7ffc/README.md","group":"cases","id":"wind-waker-hd-decomp-case","json_url":"https://awesomerea.org/resources/wind-waker-hd-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/wind-waker-hd-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wind-waker-hd-decomp-case/index.md","name":"Wind Waker HD decompilation: functions verified against the recompiled Wii U game","name_zh":"《风之杖 HD》反编译：与重编译的 Wii U 版逐函数比对验证","reconstruction_method":"decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["README describes a hybrid decompilation of cking.rpx (USA, version 0): decompiled functions call others through their original addresses, so the tree builds no game on its own and runs only with the port’s recompiled code. It reports the HD UI decompiled, while about 11,400 generic-library functions (sead, agl, NW4F, most of JSystem, the Cafe SDK and the C runtime) are not planned. zeldaret/tww is the reference for names and structure, and the docs record HD differences for 838 units compared with the GameCube version.","Building or verifying needs the user’s own legally obtained game, extracted with the port’s tool from a disc image with its disc key and the Wii U common key. README states that the repository contains no machine code, recompiled code, game assets or keys; small data tables used by the code are included, while model data, the RPX image, recompiled output, game-derived names and recorded inputs are generated locally and git-ignored. The recommended GameCube signature checks also use zeldaret/tww built from the user’s own GameCube disc.","The harness runs inside a ZeldaWWHDRecomp checkout at the tested commit df2cf51b (v0.2.3), replacing the port’s older tools/verify. It needs Python 3, clang/clang++ with C++20 and the port’s game-extraction requirements; building the port itself is needed only for recording inputs. A full verify_all.py run is long, and some units need tens of GB of memory.","Each function runs on 10,000 generated inputs on each of two seeds, must reach nearly all basic blocks of the original and is mutation-tested; README reports the whole tree re-verified after the October 2026 readability rewrite. tools/verify/README.md says equivalence is to the recompiled code’s model of the Espresso CPU, not the console, and that timing, threading and the exact stack layout are not checked. The in-game swap-test build is not part of the release, and the repository has no CI workflow.","CC0 1.0 covers the decompiled source, tools and documentation; the game, Nintendo data and the port runtime keep their own terms. README calls it an unofficial, non-commercial fan project with no donations or paid builds. tools/verify/README.md reports pilot timings for an agent using the tools and two functions written by parallel agents."],"requirements_zh":["README 称这是针对 cking.rpx（美版，版本 0）的混合式反编译：已反编译的函数通过原始地址调用其他函数，因此该源码树本身构建不出游戏，只能与移植项目的重编译代码一起运行。据其报告，HD 界面已完成反编译，而约 11,400 个通用库函数（sead、agl、NW4F、JSystem 的大部分、Cafe SDK 及 C 运行时）暂不计划处理。名称与结构以 zeldaret/tww 为参照，文档还记录了与 GameCube 版比较的 838 个单元中 HD 版的差异。","构建或验证都需要使用者自己合法取得的游戏，用移植项目的工具从附有光盘密钥和 Wii U 通用密钥的光盘镜像中提取。README 声明仓库不含机器码、重编译代码、游戏素材或密钥；代码本身使用的小型数据表包含在内，而模型数据、RPX 镜像、重编译输出、源自游戏的函数名和录制输入均在本地生成，并被 git 忽略。推荐启用的 GameCube 签名检查还需使用以使用者自己的 GameCube 光盘构建的 zeldaret/tww。","验证工具须在 ZeldaWWHDRecomp 的指定测试提交 df2cf51b（v0.2.3）的检出中运行，并替换该移植中较旧的 tools/verify。需要 Python 3、支持 C++20 的 clang/clang++，以及移植项目提取游戏所需的条件；只有录制输入时才需要构建移植本身。完整运行 verify_all.py 耗时很长，部分单元需要数十 GB 内存。","每个函数在两个随机种子上各运行 10,000 组生成输入，须覆盖原函数几乎所有基本块，并经过变异测试；README 报告 2026 年 10 月可读性重写后已对整个源码树重新验证。tools/verify/README.md 说明，等价性是相对于重编译代码对 Espresso CPU 的模拟，而非主机本身，且不检查时序、线程和精确的栈帧布局。游戏内替换测试所用的构建不在发布内容中，仓库没有 CI 工作流。","CC0 1.0 适用于反编译源码、工具和文档；游戏本身、任天堂的数据及移植运行时保留各自条款。README 称其为非官方、非商业的粉丝项目，不接受捐助，也没有付费构建。tools/verify/README.md 报告了一个智能体使用这些工具时的试点耗时，以及由并行智能体编写的两个函数。"],"targets":["game"],"url":"https://github.com/ZeldaWWHDDecomp/wwhd","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/codingncaffeine/SiegeFX/releases/tag/v0.5.0"],"category":"reconstruction-cases","description_en":"A C#/.NET 10 engine loads Dungeon Siege's original archives, scripts and models, with published alpha builds and an audit/parity ledger. The project also provides SiegeSmith modding tools, while describing remaining fidelity and playthrough risks.","description_zh":"C#/.NET 10 引擎加载 Dungeon Siege 原始归档、脚本与模型，提供 alpha 构建和审计/一致性清单，并附带 SiegeSmith 模组工具；项目仍记录保真度和通关行为风险。","entry_url":"https://awesomerea.org/resources/siegefx-dungeon-siege-engine-case/","entry_url_zh":"https://awesomerea.org/zh/resources/siegefx-dungeon-siege-engine-case/","evidence_url":"https://github.com/codingncaffeine/SiegeFX/blob/6a1a4ade725a860651a06a0d7ddb50d5a3a688d1/README.md","group":"cases","id":"siegefx-dungeon-siege-engine-case","json_url":"https://awesomerea.org/resources/siegefx-dungeon-siege-engine-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/siegefx-dungeon-siege-engine-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/siegefx-dungeon-siege-engine-case/index.md","name":"SiegeFX: a Dungeon Siege engine reimplementation in alpha","name_zh":"SiegeFX：处于 alpha 阶段的 Dungeon Siege 引擎重实现","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","testing","license"],"requirements":["Requires an owned Dungeon Siege installation; Windows and Linux builds are linked. Source builds need .NET 10; Linux needs OpenGL 3.3 and internet multiplayer additionally needs OpenSSL 3.","The README calls this alpha software. It reports campaign progression to the final boss since v0.4.0, with Bink movies, interior lighting fidelity and combat balance still open.","Code is GPL-3.0-only; original game assets are not bundled. Multiplayer uses Epic Online Services under separate SDK terms."],"requirements_zh":["需要自有 Dungeon Siege 安装；提供 Windows 与 Linux 构建。源码构建需要 .NET 10；Linux 需要 OpenGL 3.3，互联网联机另需 OpenSSL 3。","README 明确称其为 alpha；作者报告自 v0.4.0 可推进至最终首领，但 Bink 影片、室内光照保真度和战斗平衡仍待完善。","代码采用 GPL-3.0-only，不附带原始游戏素材；联机使用 Epic Online Services，另受 SDK 条款约束。"],"targets":["game"],"url":"https://github.com/codingncaffeine/SiegeFX","verification":"source-reviewed","verified_at":"2026-11-01T16:36:25Z"},{"added_at":"2026-11-01","additional_evidence_urls":["https://andrewaltimit.github.io/legend-of-legaia-re/"],"category":"reconstruction-cases","description_en":"A from-scratch Rust port of the North American PlayStation Legend of Legaia includes native/browser play, asset extraction and disc patching. The author documents Ghidra/emulator research and a full-game ladder; this is a fresh implementation, not a matching decompilation or static recompilation.","description_zh":"从零编写的 Rust 移植面向北美 PlayStation 版 Legend of Legaia，附带原生/浏览器游玩、素材提取及光盘补丁工具；作者记录 Ghidra/模拟器研究与全流程测试阶梯，项目不是匹配反编译或静态重编译。","entry_url":"https://awesomerea.org/resources/legend-of-legaia-rust-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/legend-of-legaia-rust-port-case/","evidence_url":"https://github.com/AndrewAltimit/legend-of-legaia-re/blob/f801d3c319386f7686d7fde45e114e1e2ba6aff5/README.md","group":"cases","id":"legend-of-legaia-rust-port-case","json_url":"https://awesomerea.org/resources/legend-of-legaia-rust-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/legend-of-legaia-rust-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/legend-of-legaia-rust-port-case/index.md","name":"Legend of Legaia: a Rust port with disc-local browser tooling","name_zh":"Legend of Legaia：Rust 移植与本地读盘的浏览器工具","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","testing","limits","license"],"requirements":["Supply an owned North American SCUS-94254 disc image; browser tooling reads the image locally. Source builds require a Rust toolchain supporting edition 2024.","The README reports New Game-to-credits coverage and parity oracles, but disc-dependent tests skip and pass without LEGAIA_DISC_BIN.","Enhancements can differ from retail behavior; the README describes a retail-faithful mode. No Sony game executable, ROM or asset data is distributed.","Project code and documentation offer Unlicense or MIT; these licenses do not grant rights to the original game."],"requirements_zh":["自行提供北美 SCUS-94254 版光盘镜像；浏览器工具在本地读取镜像。源码构建需要支持 edition 2024 的 Rust 工具链。","README 报告覆盖新游戏至片尾并提供一致性测试，但未设置 LEGAIA_DISC_BIN 时依赖光盘的测试会跳过并通过。","增强功能可与零售版行为不同；README 另述忠实模式，不分发 Sony 游戏可执行文件、ROM 或素材。","项目代码与文档可选 Unlicense 或 MIT；这些许可不授予原始游戏的权利。"],"targets":["game"],"url":"https://github.com/AndrewAltimit/legend-of-legaia-re","verification":"source-reviewed","verified_at":"2026-11-01T16:36:25Z"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/Rob--W/crxviewer/blob/c1a0a7f63983600a960e3d02d8a36c4142c7cca4/src/manifest.json","https://github.com/Rob--W/crxviewer/blob/c1a0a7f63983600a960e3d02d8a36c4142c7cca4/src/manifest_firefox.json","https://github.com/Rob--W/crxviewer/blob/c1a0a7f63983600a960e3d02d8a36c4142c7cca4/src/lib/crx-to-zip.js","https://github.com/Rob--W/crxviewer/blob/c1a0a7f63983600a960e3d02d8a36c4142c7cca4/src/crxviewer.js#L997-L1056","https://github.com/Rob--W/crxviewer/blob/c1a0a7f63983600a960e3d02d8a36c4142c7cca4/src/domain-fronter.js","https://github.com/Rob--W/crxviewer/blob/c1a0a7f63983600a960e3d02d8a36c4142c7cca4/make.js","https://github.com/Rob--W/crxviewer/blob/c1a0a7f63983600a960e3d02d8a36c4142c7cca4/LICENSE"],"category":"web-analysis","description_en":"Browser extension and web page by Rob Wu for inspecting packaged browser extensions without installing them. On Chrome Web Store, Opera, Firefox, Thunderbird and Microsoft Edge add-on pages it adds a button that downloads the package as a zip or opens it in a viewer, and links to extension packages hosted elsewhere can be opened as well. The viewer reads CRX, NEX, XPI and ZIP files: it lists and filters files, searches content by string or regular expression, beautifies and syntax-highlights code, previews images, opens nested zips, shows per-file hashes and derives the extension ID from the package key, signature or manifest.","description_zh":"Rob Wu 开发的浏览器扩展及网页版工具，无需安装即可查看已打包的浏览器扩展。在 Chrome 网上应用店、Opera、Firefox、Thunderbird 和 Microsoft Edge 的扩展页面上，它会添加一个按钮，可将扩展包下载为 zip 或在查看器中打开；托管在其他位置的扩展包链接也能打开。查看器支持 CRX、NEX、XPI 和 ZIP 文件：可列出并筛选文件，按字符串或正则表达式搜索内容，格式化代码并高亮语法，预览图片，打开嵌套的 zip，显示各文件的哈希值，还能根据扩展包的公钥、签名或 manifest 推算扩展 ID。","entry_url":"https://awesomerea.org/resources/crxviewer/","entry_url_zh":"https://awesomerea.org/zh/resources/crxviewer/","evidence_url":"https://github.com/Rob--W/crxviewer/blob/c1a0a7f63983600a960e3d02d8a36c4142c7cca4/README.md","group":"tools","id":"crxviewer","json_url":"https://awesomerea.org/resources/crxviewer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/crxviewer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/crxviewer/index.md","name":"Chrome extension source viewer (CRX Viewer)","name_zh":"CRX Viewer 浏览器扩展源码查看器","record_type":"resource","relationship":"foundation","requirements":["Version 1.7.1, committed on 2026-09-01 as the reviewed master head, is the version in all three manifests: Manifest V3 builds for Chrome 88+ and Opera 74+, and a Manifest V2 build for Firefox 115+. The repository has no tags or releases; the README links the Chrome Web Store, Opera and addons.mozilla.org listings and an online demo page that opens local files or URLs.","Store listings are the documented install route; the README gives no build instructions. make.js builds the Chrome, Opera, Firefox and web packages with shelljs and the less compiler from npm and zips them with 7z.","The extension requests tabs, storage, context-menu, downloads and declarativeContent permissions and access to Google's CRX download endpoints, and asks for optional access to all sites before fetching packages hosted elsewhere. Its Firefox build routes addons.mozilla.org requests through services.addons.mozilla.org, a workaround the source documents for Firefox's restrictions on add-ons reading some Mozilla domains and still uses for non-public XPI files such as developer submissions.","The viewer shows package contents as published: beautification only reformats code and does not reverse obfuscation. Downloaded extensions keep their authors' rights and store terms.","MPL-2.0; bundled libraries such as zip.js, Prism, js-beautify and SparkMD5 keep their own licenses."],"requirements_zh":["版本 1.7.1 于 2026-09-01 提交，即所审阅的 master 最新提交，三份 manifest 均为此版本：面向 Chrome 88+ 和 Opera 74+ 的 Manifest V3 构建，以及面向 Firefox 115+ 的 Manifest V2 构建。仓库没有标签或发布版本；README 链接了 Chrome 网上应用店、Opera 和 addons.mozilla.org 的商店页面，以及一个可打开本地文件或 URL 的在线演示页面。","README 说明的安装方式是各扩展商店，未给出构建说明。make.js 使用 npm 中的 shelljs 和 less 编译器构建 Chrome、Opera、Firefox 及网页版软件包，并用 7z 打包。","该扩展申请 tabs、storage、右键菜单、downloads 和 declarativeContent 权限，以及访问 Google CRX 下载端点的权限；获取托管在其他位置的扩展包前，会请求可选的全部网站访问权限。其 Firefox 构建会把对 addons.mozilla.org 的请求改经 services.addons.mozilla.org 发送，源码说明这是应对 Firefox 限制扩展读取部分 Mozilla 域名的变通做法，目前仍用于开发者提交的版本等非公开 XPI 文件。","查看器按原样展示扩展包内容：格式化只重新排版代码，不会还原混淆。下载的扩展仍受其作者权利及商店条款约束。","采用 MPL-2.0 许可；内置的 zip.js、Prism、js-beautify 和 SparkMD5 等库保留各自的许可证。"],"targets":["website"],"url":"https://github.com/Rob--W/crxviewer","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-01","additional_evidence_urls":["https://github.com/jonluca/har-to-openapi/blob/432e096aa1d7814a39dcf772f40dc93cdd9c1620/package.json","https://github.com/jonluca/har-to-openapi/blob/432e096aa1d7814a39dcf772f40dc93cdd9c1620/src/config.ts","https://github.com/jonluca/har-to-openapi/blob/432e096aa1d7814a39dcf772f40dc93cdd9c1620/.github/workflows/test.yml","https://github.com/jonluca/har-to-openapi/blob/432e096aa1d7814a39dcf772f40dc93cdd9c1620/LICENSE","https://github.com/jonluca/har-to-openapi/releases/tag/v3.0.1","https://github.com/jonluca/har-to-openapi/releases/tag/v3.0.0","https://www.npmjs.com/package/har-to-openapi/v/3.0.1"],"category":"web-analysis","description_en":"TypeScript library and CLI that infers OpenAPI 3.0 or 3.1 documents from HAR captures of HTTP traffic, loosely based on har2openapi. Requests are grouped into one document per domain, with options to turn IDs in paths into parameters, infer query, form and JSON body schemas from observed values, and merge several captures into the same operations. Optional settings extract reusable component schemas, keep multiple redacted examples, mark fields required only when every sample contains them, attach per-field observation counts as evidence and apply an OpenAPI Overlay so hand-written names and corrections survive regeneration.","description_zh":"TypeScript 库及命令行工具，可根据 HTTP 流量的 HAR 抓包记录推断 OpenAPI 3.0 或 3.1 文档，大致基于 har2openapi 改写。请求按域名分别生成文档，可选择把路径中的 ID 转为参数，根据观测值推断查询参数、表单和 JSON 请求体的结构，并把多份抓包合并到相同的操作中。可选设置还能提取可复用的组件模式、保留多个经脱敏的示例、仅在所有样本都包含某字段时才将其标为必填、附加逐字段的观测计数作为依据，并应用 OpenAPI Overlay，使手工补充的名称和修正在重新生成后得以保留。","entry_url":"https://awesomerea.org/resources/har-to-openapi/","entry_url_zh":"https://awesomerea.org/zh/resources/har-to-openapi/","evidence_url":"https://github.com/jonluca/har-to-openapi/blob/432e096aa1d7814a39dcf772f40dc93cdd9c1620/README.md","group":"tools","id":"har-to-openapi","json_url":"https://awesomerea.org/resources/har-to-openapi/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/har-to-openapi/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/har-to-openapi/index.md","name":"har-to-openapi","name_zh":"har-to-openapi：从 HAR 抓包推断 OpenAPI 文档","record_type":"resource","relationship":"foundation","requirements":["Reviewed at main commit 432e096 from 2026-09-07, tagged v3.0.1 and published to npm the same day; v3.0.0, released a day earlier, added capture merging, reusable schemas, overlays, redaction, reports and requiredness evidence. Node.js 22.19.0+ is required; it installs from npm as a library or runs as the har-to-openapi command. CI tests Node 24 and the latest Node on Linux, macOS and Windows.","Input is one or more HAR files the user records, plus optional JSON or YAML configuration and overlay files. Without --multi-spec the CLI returns only the first domain's document. --validate and --strict check the result locally, and a conversion report lists counts and diagnostics for filtered entries, parse failures and schema fallbacks.","The README states that observations describe finite captures and that a field present in every capture does not establish an API contract, so requirements should be confirmed with the API owner and recorded in an overlay. Endpoints, parameters and responses absent from the captures do not appear, and the default requiredness setting keeps the earlier legacy behavior.","Generated documents copy captured values as examples unless examples are turned off or a redact list masks them; the README presents redaction as a step before sharing, and the reviewed commit closed further redaction gaps. Convert only traffic you are authorized to capture and analyze.","MIT."],"requirements_zh":["审阅对象为 main 分支 2026-09-07 的提交 432e096，已标记为 v3.0.1，并于同日发布到 npm；早一天发布的 v3.0.0 新增了抓包合并、可复用模式、Overlay、脱敏、转换报告及必填性依据等功能。需要 Node.js 22.19.0+；可从 npm 作为库安装，或以 har-to-openapi 命令运行。CI 在 Linux、macOS 和 Windows 上使用 Node 24 及最新版 Node 进行测试。","输入为使用者自行录制的一个或多个 HAR 文件，以及可选的 JSON 或 YAML 配置文件和 Overlay 文件。未使用 --multi-spec 时，命令行只返回第一个域名的文档。--validate 和 --strict 会在本地检查结果，转换报告会列出计数，以及被过滤条目、解析失败和模式回退等诊断信息。","README 指出，观测结果只反映有限的抓包；某字段在每份抓包中都出现，并不代表 API 契约要求它，因此应向 API 所有者确认必填要求，并把修正记录在 Overlay 中。抓包中未出现的端点、参数和响应不会出现在文档里，默认的必填性设置沿用早先的 legacy 行为。","除非关闭示例或用脱敏列表加以遮盖，生成的文档会把抓到的值复制为示例；README 把脱敏视为分享前的步骤，所审阅的提交还修补了更多脱敏遗漏。只应转换有权抓取和分析的流量。","采用 MIT 许可。"],"targets":["website"],"url":"https://github.com/jonluca/har-to-openapi","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/RSDKModding/RSDKv3-Decompilation/blob/c01fc0c360e8e35e791630407ea5c7a426718e54/LICENSE.md","https://github.com/RSDKModding/RSDKv3-Decompilation/blob/c01fc0c360e8e35e791630407ea5c7a426718e54/FAQ.md","https://github.com/RSDKModding/RSDKv3-Decompilation/blob/c01fc0c360e8e35e791630407ea5c7a426718e54/CMakeLists.txt#L7-L17","https://github.com/RSDKModding/RSDKv3-Decompilation/blob/c01fc0c360e8e35e791630407ea5c7a426718e54/.gitmodules","https://github.com/RSDKModding/RSDKv3-Decompilation/blob/c01fc0c360e8e35e791630407ea5c7a426718e54/.github/workflows/build.yml","https://github.com/RSDKModding/RSDKv3-Decompilation/tree/c01fc0c360e8e35e791630407ea5c7a426718e54/RSDKv3","https://github.com/RSDKModding/RSDKv3-Decompilation/releases/tag/1.3.3"],"category":"reconstruction-cases","description_en":"Reconstructs Retro Engine v3, the engine behind the 2011 Sonic CD remaster, as a native C++ source port for Windows, Linux, macOS and Android. The engine runs the game's own scripts and assets from an official release, which the repository does not ship, and adds a mod loader, a settings file with remappable controls, support for the mobile versions' updated scripts and extra developer-menu debug keys. Its license describes the code as mostly functionally the same as the original rather than byte-matching; the same team's RSDKv5 decompilation is listed as a separate case.","description_zh":"重建 Retro Engine v3，即 2011 年 Sonic CD 重制版所用的引擎，作为可在 Windows、Linux、macOS 和 Android 上运行的原生 C++ 源码移植。引擎运行官方发行版中的游戏脚本和素材，仓库本身不附带这些内容；项目还加入了模组加载器、可重映射按键的设置文件、对移动版更新脚本的支持，以及更多开发者菜单调试快捷键。其许可证称代码大多在功能上与原作相同，而不是逐字节一致；同一团队的 RSDKv5 反编译另作独立案例收录。","entry_url":"https://awesomerea.org/resources/rsdkv3-sonic-cd-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rsdkv3-sonic-cd-decomp-case/","evidence_url":"https://github.com/RSDKModding/RSDKv3-Decompilation/blob/c01fc0c360e8e35e791630407ea5c7a426718e54/README.md","group":"cases","id":"rsdkv3-sonic-cd-decomp-case","json_url":"https://awesomerea.org/resources/rsdkv3-sonic-cd-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rsdkv3-sonic-cd-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rsdkv3-sonic-cd-decomp-case/index.md","name":"RSDKv3 Decompilation: Sonic CD (2011) on a reconstructed Retro Engine v3","name_zh":"RSDKv3 Decompilation：在重建的 Retro Engine v3 上运行 Sonic CD（2011）","reconstruction_method":"decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["The README calls it a complete decompilation of Retro Engine v3; its license says the repository also contains original code and that most code is meant to be functionally the same as the specified RSDK version. The RETRO_ORIGINAL_CODE option strips the custom code but, per the README and CMake file, cannot build a playable game. The reviewed commit is 19 commits after release 1.3.3 (2025-11-02), which attaches prebuilt Windows x86 and x64, Linux, macOS and Android builds of the engine.","It does not run without assets from an official Sonic CD release: the original Steam release, Sonic Origins on Steam, Epic or Switch, or the delisted iOS and Android versions. The engine loads the game's Data.rsdk datapack, and full-motion video works only with the original Steam release's video files. The FAQ notes that the Sonic Origins datafile uses the RSDKv5 datapack format and contains no music or sound effects, and that the Origins-only playable characters are blocked in release builds. The repository commits no game data or game scripts; the separate script decompilation is its own repository.","Clone recursively, because GitHub's source ZIPs omit the tinyxml2 and flatpak shared-modules submodules. CMake builds use Visual Studio with vcpkg (GLEW, SDL2, libogg, libtheora, libvorbis) on Windows, distribution packages on Linux and separate guides for macOS and Android; the tree also carries iOS, UWP and PS Vita project files that the README does not document, and the Switch and New 3DS ports are unofficial forks the project does not support.","CI builds Windows x86 and x64, Linux, macOS and Android binaries with RETRO_DISABLE_PLUS on. The project publishes no comparison with the original engine binaries; the FAQ says bugs present in official releases will mostly not be fixed and that menu buttons such as leaderboards and achievements stay unimplemented.","The custom RSDKv3/v4 Decompilation Source Code License v2 requires every prebuilt executable given to anyone to have DLC disabled by default, forbids commercial use and distributing game assets other than unique modded ones, requires crediting the original and decompilation developers, and binds forks to the same terms. It names Christian Whitehead as the original RSDK author and Rubberduckycooly and st×tic as the decompilation authors. Sega's game and assets keep their own rights."],"requirements_zh":["README 称其为 Retro Engine v3 的完整反编译；其许可证说明仓库中也有原创代码，且大部分代码旨在与所指定 RSDK 版本在功能上相同。RETRO_ORIGINAL_CODE 选项会移除自定义代码，但据 README 和 CMake 文件，这样无法构建出可玩的游戏。所审阅提交位于 1.3.3 版（2025-11-02）之后 19 个提交，该版本附带引擎的 Windows x86、x64、Linux、macOS 和 Android 预构建程序。","缺少官方发行版 Sonic CD 的素材便无法运行，素材可来自原版 Steam 版、Steam、Epic 或 Switch 上的 Sonic Origins，或已下架的 iOS 和 Android 版本。引擎读取游戏的 Data.rsdk 数据包，全动态影像只支持原版 Steam 版的视频文件。常见问题指出，Sonic Origins 的数据文件采用 RSDKv5 数据包格式，且不含音乐和音效；Origins 新增的可玩角色在发布版构建中会被屏蔽。仓库不含任何游戏数据或游戏脚本；脚本反编译另有独立仓库。","须递归克隆仓库，因为 GitHub 的源码 ZIP 不含 tinyxml2 和 flatpak shared-modules 子模块。CMake 构建在 Windows 上使用 Visual Studio 与 vcpkg（GLEW、SDL2、libogg、libtheora、libvorbis），在 Linux 上使用发行版软件包，macOS 和 Android 另有构建指南；源码树中还有 README 未说明的 iOS、UWP 和 PS Vita 工程文件，Switch 和 New 3DS 移植则是项目不提供支持的非官方分支。","CI 在开启 RETRO_DISABLE_PLUS 的情况下构建 Windows x86、x64、Linux、macOS 和 Android 版本。项目未公开与原版引擎二进制文件的对照结果；常见问题说明官方版本中已有的缺陷大多不会修复，排行榜和成就等菜单按钮也仍未实现。","自定义的《RSDKv3/v4 反编译源码许可证 v2》要求提供给任何人的预构建可执行文件都必须默认关闭 DLC，禁止商业用途及分发独特模组素材以外的游戏素材，要求注明原作与反编译的开发者，并要求所有派生版本遵守同一许可。许可证注明原 RSDK 作者为 Christian Whitehead，反编译作者为 Rubberduckycooly 和 st×tic。Sega 的游戏和素材保留各自权利。"],"targets":["game"],"url":"https://github.com/RSDKModding/RSDKv3-Decompilation","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/nathanialf/ico/blob/73f7365df143bc1ff48771af479fd68c66550d19/docs/LEGAL.md","https://github.com/nathanialf/ico/blob/73f7365df143bc1ff48771af479fd68c66550d19/docs/BUILDING.md","https://github.com/nathanialf/ico/blob/73f7365df143bc1ff48771af479fd68c66550d19/docs/TARGETS.md","https://github.com/nathanialf/ico/blob/73f7365df143bc1ff48771af479fd68c66550d19/docs/PORT.md","https://github.com/nathanialf/ico/blob/73f7365df143bc1ff48771af479fd68c66550d19/docs/pal/PROGRESS.md","https://github.com/nathanialf/ico/blob/73f7365df143bc1ff48771af479fd68c66550d19/config/sha1sums.pal.txt","https://github.com/nathanialf/ico/blob/73f7365df143bc1ff48771af479fd68c66550d19/.github/workflows/pages.yml","https://github.com/nathanialf/ico/blob/73f7365df143bc1ff48771af479fd68c66550d19/LICENSE","https://nathanialf.github.io/ico/"],"category":"reconstruction-cases","description_en":"Rebuilds the boot ELFs of ICO’s PAL (SCES-50760) and Japanese (SCPS-11003) PlayStation 2 discs from one source tree with the game’s original compiler versions, and checks that every loaded byte and the whole ELF file match the disc’s SHA-1. The 73 data-only archive members are generated at build time from the user’s own ELF, so most read-only data still comes from the disc rather than from source. Separate branches target the USA, Korean and August 2001 prototype builds, and the catalog’s ICO PC port is a fork of this tree.","description_zh":"以同一套源码和游戏原用的编译器版本，重建《ICO》PAL 版（SCES-50760）与日版（SCPS-11003）PlayStation 2 光盘的启动 ELF，并检查载入的每个字节以及整个 ELF 文件都与光盘的 SHA-1 一致。73 个只含数据的归档成员在构建时由使用者自己的 ELF 生成，因此大部分只读数据仍取自光盘而非源码。另有独立分支面向美版、韩版和 2001 年 8 月原型版，本目录收录的 ICO PC 移植即是这套源码的分叉。","entry_url":"https://awesomerea.org/resources/ico-matching-decomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/ico-matching-decomp-case/","evidence_url":"https://github.com/nathanialf/ico/blob/73f7365df143bc1ff48771af479fd68c66550d19/README.md","group":"cases","id":"ico-matching-decomp-case","json_url":"https://awesomerea.org/resources/ico-matching-decomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/ico-matching-decomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ico-matching-decomp-case/index.md","name":"ICO decompilation: byte-identical PAL and Japanese PlayStation 2 boot ELFs","name_zh":"《ICO》反编译：逐字节一致的 PAL 与日版 PlayStation 2 启动 ELF","reconstruction_method":"matching-decompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["README reports every section of both targets identical to its base ELF; .rodata is about 9.5% from source and 90.5% generated from the disc, and .data about 73% from source. The Japanese build is an earlier link of the same program, kept as VERSION_JPN blocks in the shared PAL-based tree, while kor, ntsc and aug6 are separate single-target branches not yet merged into main. The output is a PS2 boot ELF and ROM image, not a PC port.","Each target needs the user’s own disc image, the PAL .iso or the Japanese .bin/.cue, from which the build extracts the boot ELF and checks it against config/sha1sums. docs/LEGAL.md excludes disc images, boot ELFs, assets, data tables and bulk symbol or map tables from the repository, and forbids leaked SDKs and leaked source as inputs. It says the Sony runtime libraries reconstructed under sce/ were written from the shipped instructions using the SDK’s public naming, and the newlib and libgcc members follow their published source.","Builds on 64-bit Linux with 32-bit libraries and multilib gcc, Python 3, mips-linux-gnu-objcopy and network access on the first run. tools/setup.sh fetches ee-gcc 2.9-991111-01 and the SCE ee-as from decomp.me’s compiler releases, builds GNU ld 2.10 with two patches and builds a patched ps2dev dvp-as for the five VU1 microprograms; README says nothing comes from a Sony SDK.","./build.sh ends with tools/check_elf.py --gate, which compares every allocated section with the base ELF by address and requires the whole-file SHA-1 to match; progress badges and the dashboard are regenerated from the built ELF and link map. The only CI workflow publishes that dashboard, and building needs a disc that CI does not have.","MIT covers the project’s own code, scripts and documentation and grants no rights in the game, its data or Sony and Team Ico property; the toolchain components keep their GPL licences. README states the project is unaffiliated with Sony Interactive Entertainment or Team Ico."],"requirements_zh":["README 报告两个目标的每个段都与其基准 ELF 一致；其中 .rodata 约 9.5% 来自源码、90.5% 由光盘生成，.data 约 73% 来自源码。日版是同一程序较早的一次链接，以 VERSION_JPN 代码块保存在共享的、以 PAL 版为基础的源码树中；kor、ntsc 和 aug6 则是尚未并入 main 的独立单目标分支。产物是 PS2 启动 ELF 和 ROM 镜像，而非 PC 移植。","每个目标都需要使用者自己的光盘镜像，即 PAL 版 .iso 或日版 .bin/.cue；构建会从中提取启动 ELF，并对照 config/sha1sums 校验。docs/LEGAL.md 规定仓库不得包含光盘镜像、启动 ELF、素材、数据表以及成批的符号表或映射表，并禁止以泄露的 SDK 或源码作为输入。该文档称 sce/ 下重建的索尼运行库是依据发售版中的指令编写的，命名沿用 SDK 的公开名称，newlib 与 libgcc 成员则依照其公开源码。","在 64 位 Linux 上构建，需要 32 位库和 multilib gcc、Python 3、mips-linux-gnu-objcopy，首次运行还需联网。tools/setup.sh 从 decomp.me 的编译器发布中获取 ee-gcc 2.9-991111-01 和 SCE ee-as，构建打了两个补丁的 GNU ld 2.10，并为五个 VU1 微程序构建打过补丁的 ps2dev dvp-as；README 称这些工具均不来自索尼 SDK。","./build.sh 最后运行 tools/check_elf.py --gate，按地址比较每个已分配的段与基准 ELF，并要求整个文件的 SHA-1 一致；进度徽章和进度面板依据构建出的 ELF 与链接映射重新生成。唯一的 CI 工作流只发布该面板，构建所需的光盘 CI 并不具备。","MIT 适用于项目自身的代码、脚本和文档，不授予对游戏、其数据或索尼与 Team Ico 财产的任何权利；工具链组件保留各自的 GPL 许可。README 声明项目与索尼互动娱乐或 Team Ico 无关。"],"targets":["game"],"url":"https://github.com/nathanialf/ico","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/geo-tp/ESP32-Bit-Pirate/blob/8a91778e25b699c59f34542d8ea8d405fa7e4020/README.md#L16-L54","https://github.com/geo-tp/ESP32-Bit-Pirate/blob/8a91778e25b699c59f34542d8ea8d405fa7e4020/README.md#L56-L105","https://github.com/geo-tp/ESP32-Bit-Pirate/blob/8a91778e25b699c59f34542d8ea8d405fa7e4020/README.md#L183-L191","https://github.com/geo-tp/ESP32-Bit-Pirate/blob/8a91778e25b699c59f34542d8ea8d405fa7e4020/platformio.ini","https://github.com/geo-tp/ESP32-Bit-Pirate/blob/8a91778e25b699c59f34542d8ea8d405fa7e4020/.github/workflows/native-tests.yml","https://github.com/geo-tp/ESP32-Bit-Pirate/blob/8a91778e25b699c59f34542d8ea8d405fa7e4020/LICENSE","https://github.com/geo-tp/ESP32-Bit-Pirate/blob/8a91778e25b699c59f34542d8ea8d405fa7e4020/lib/RF24/LICENSE","https://github.com/geo-tp/ESP32-Bit-Pirate/tree/8a91778e25b699c59f34542d8ea8d405fa7e4020/src/Adapters","https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/15-JTAG/0b54b00dc6272cbb125d5293c30178cf2255371d","https://github.com/geo-tp/ESP32-Bit-Pirate/wiki/99-Adapters/08c0046c1c84da6d301c9c4bb330f71d744526f2","https://github.com/geo-tp/ESP32-Bit-Pirate/releases/tag/v1.8"],"category":"firmware","description_en":"Open-source firmware that turns ESP32-S3 boards into a Bus Pirate-inspired multi-protocol hardware tool, operated from a USB serial terminal, a Wi-Fi web CLI or the M5 Cardputer's own keyboard and screen. Its modes talk to, sniff and script I2C, SPI, UART, 1-Wire, CAN and other buses, read EEPROM and flash chips, and scan for JTAG and SWD pinouts. USB adapter modes let host tools such as flashrom, OpenOCD and sigrok/PulseView use the board as an SPI programmer, debug adapter or logic analyzer.","description_zh":"开源固件，可把 ESP32-S3 开发板变成受 Bus Pirate 启发的多协议硬件工具，通过 USB 串口终端、Wi-Fi 网页命令行，或直接用 M5 Cardputer 自带的键盘和屏幕操作。各模式可与 I2C、SPI、UART、1-Wire、CAN 等总线通信、嗅探并编写脚本，读取 EEPROM 和闪存芯片，还能扫描 JTAG 与 SWD 引脚。USB 适配器模式让 flashrom、OpenOCD、sigrok/PulseView 等主机工具把开发板当作 SPI 编程器、调试适配器或逻辑分析仪使用。","entry_url":"https://awesomerea.org/resources/esp32-bit-pirate/","entry_url_zh":"https://awesomerea.org/zh/resources/esp32-bit-pirate/","evidence_url":"https://github.com/geo-tp/ESP32-Bit-Pirate/blob/8a91778e25b699c59f34542d8ea8d405fa7e4020/README.md","group":"tools","id":"esp32-bit-pirate","json_url":"https://awesomerea.org/resources/esp32-bit-pirate/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/esp32-bit-pirate/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/esp32-bit-pirate/index.md","name":"ESP32 Bit Pirate","name_zh":"ESP32 Bit Pirate 多协议硬件工具固件","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v1.8, published 2026-10-11, with prebuilt images for 17 board builds that the README installs through the project's web flasher or, for M5Stack devices, M5Burner; the reviewed pioarduino branch commit is identical to that tag. Source builds use PlatformIO with the Arduino framework on a pinned pioarduino ESP32 platform, and CI runs the native unit tests.","Needs an ESP32-S3 board with at least 4 MB of flash. The README lists ESP32-S3 dev kits and M5Stack, LILYGO, Heltec, Seeed Studio, Waveshare and Unexpected Maker boards with the same feature set, warns that the default pin mapping may not match other boards, and notes that some features need additional hardware. Connected devices must run at 3.3 V or 5 V.","Analysis needs physical access and wiring to the target's buses, memory chips or debug pins; the firmware talks to and captures what it is connected to and does not interpret recovered firmware. The README also lists Wi-Fi, Bluetooth, sub-GHz, RFID and cellular modes, some of which transmit, and limits use to educational, diagnostic and interoperability testing on authorized devices.","MIT-licensed; the lib directory vendors third-party drivers under their own licenses, including GPL-2.0 for RF24. The repository holds firmware sources, board profiles, tests and images, with no target firmware."],"requirements_zh":["审阅时最新版本为 v1.8，发布于 2026-10-11，提供 17 种开发板构建的预编译镜像；README 介绍通过项目的网页刷写工具安装，M5Stack 设备也可用 M5Burner 刷写。所审阅的 pioarduino 分支提交与该标签完全一致。从源码构建使用 PlatformIO、Arduino 框架和固定版本的 pioarduino ESP32 平台，CI 会运行原生单元测试。","需要闪存至少 4 MB 的 ESP32-S3 开发板。README 列出的 ESP32-S3 开发套件以及 M5Stack、LILYGO、Heltec、Seeed Studio、Waveshare 和 Unexpected Maker 开发板功能完全相同；它提醒默认引脚映射可能与其他开发板不符，部分功能还需要额外硬件。所连接的设备只能工作在 3.3 V 或 5 V。","分析需要能物理接触目标设备，并将其总线、存储芯片或调试引脚接好线；固件只与所连接的对象通信并采集数据，不会解析读出的固件。README 还列有 Wi-Fi、蓝牙、Sub-GHz、RFID 和蜂窝网络模式，其中部分会发射信号，并要求仅在获得授权的设备上用于教学、诊断和互操作测试。","采用 MIT 许可；lib 目录内置的第三方驱动沿用各自的许可证，其中 RF24 为 GPL-2.0。仓库包含固件源码、开发板配置、测试和图片，不含任何目标设备固件。"],"targets":["firmware","protocol"],"url":"https://github.com/geo-tp/ESP32-Bit-Pirate","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/echo094/decode-js/blob/ca4690abacd3dc3666363769a7e846758e7311e9/package.json","https://github.com/echo094/decode-js/blob/ca4690abacd3dc3666363769a7e846758e7311e9/docs/jsconfuser.md","https://github.com/echo094/decode-js/blob/ca4690abacd3dc3666363769a7e846758e7311e9/src/main.js","https://github.com/echo094/decode-js/blob/ca4690abacd3dc3666363769a7e846758e7311e9/src/plugin/eval.js","https://github.com/echo094/decode-js/blob/ca4690abacd3dc3666363769a7e846758e7311e9/src/plugin/obfuscator.js","https://github.com/echo094/decode-js/blob/ca4690abacd3dc3666363769a7e846758e7311e9/src/visitor/obfuscator/string-array.js","https://github.com/echo094/decode-js/tree/ca4690abacd3dc3666363769a7e846758e7311e9/test","https://github.com/echo094/decode-js/blob/ca4690abacd3dc3666363769a7e846758e7311e9/.github/workflows/test.yml","https://github.com/echo094/decode-js/blob/ca4690abacd3dc3666363769a7e846758e7311e9/LICENSE"],"category":"web-analysis","description_en":"Babel-based AST processor that turns obfuscated JavaScript back into readable source, with one target selected per run: javascript-obfuscator (obfuscator.io), JS-Confuser 2.x up to its high preset, sojson and its v7 variant for jsjiami.com.v7, sojson's jjencode variant, and a generic pass for unreachable code, nested blocks and constant expressions. A second, version-aware obfuscator.io target reports the encoder era it detects and returns nothing, with a reason, rather than a half-decoded program when a string-array layer cannot be read. The JS-Confuser notes list each transform it reverses and those, such as variable renaming, that destroy information and cannot be recovered.","description_zh":"基于 Babel AST 的处理工具，可把混淆过的 JavaScript 还原为可读源码，每次运行选择一个目标：javascript-obfuscator（obfuscator.io）、JS-Confuser 2.x（直至 high 预设）、sojson 及其面向 jsjiami.com.v7 的 v7 变体、sojson 风格的 jjencode，以及处理不可达代码、嵌套代码块和常量表达式的通用目标。另一个按版本区分的 obfuscator.io 目标会报告检测到的编码器版本区间；遇到无法读取的字符串数组层时，它不输出结果并说明原因，而不是给出解了一半的程序。JS-Confuser 文档逐项列出可还原的变换，以及变量重命名等会丢失信息、无法恢复的变换。","entry_url":"https://awesomerea.org/resources/decode-js/","entry_url_zh":"https://awesomerea.org/zh/resources/decode-js/","evidence_url":"https://github.com/echo094/decode-js/blob/ca4690abacd3dc3666363769a7e846758e7311e9/README.md","group":"tools","id":"decode-js","json_url":"https://awesomerea.org/resources/decode-js/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/decode-js/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/decode-js/index.md","name":"decode-js","name_zh":"decode-js JavaScript 反混淆 AST 工具","record_type":"resource","relationship":"foundation","requirements":["No releases or tags are published; the reviewed main commit of 2026-10-17 runs from source. package.json requires Node.js 26.x to match its native isolated-vm 7 dependency, whose build requirements the README asks users to check first. After npm i, the CLI runs as npm run decode -- -t <target> with optional input and output paths, or through shortcuts such as deob, deobx, dejsc, deso and desov7.","Input is a single obfuscated script, input.js by default, and the README says the file must not contain other, non-obfuscated code. Coverage depends on the obfuscator and its version: the version-aware target covers the javascript-obfuscator 2.x eras and 5.5.0, leaves 3.0.0–4.2.2 unverified and reports samples in that range as unknown, and the JS-Confuser target cannot restore RenameVariables, RenameLabels or ObjectExtraction.","Decoding evaluates parts of the input: string-array decoders and JS-Confuser runtime helpers run inside isolated-vm sandboxes, but the obfuscator, sojson and sojsonv7 targets unpack an outer eval wrapper with Node.js eval in the decoder's own process. Treat inputs as untrusted code, and check recovered strings and control flow against the original script.","CI runs the Vitest suite on Node.js 26; its fixtures pair obfuscated samples, mostly generated from included source files, with expected decodes for the JS-Confuser, obfuscator.io and sojson v7 targets. GPL-3.0-or-later per the README, LICENSE and package.json."],"requirements_zh":["仓库未发布 Release 或标签；所审阅的 main 分支提交日期为 2026-10-17，需从源码运行。package.json 要求 Node.js 26.x，以配合原生依赖 isolated-vm 7；README 提醒先查看 isolated-vm 的构建要求。执行 npm i 后，可通过 npm run decode -- -t <目标> 运行命令行工具，并可指定输入和输出路径，也可使用 deob、deobx、dejsc、deso、desov7 等快捷命令。","输入为单个混淆脚本，默认是 input.js；README 说明该文件中不能夹杂其他未混淆的代码。适用范围取决于混淆器及其版本：按版本区分的目标覆盖 javascript-obfuscator 2.x 各阶段和 5.5.0，3.0.0–4.2.2 尚未验证，落在该区间的样本会报告为未知；JS-Confuser 目标无法还原 RenameVariables、RenameLabels 和 ObjectExtraction。","解码时会执行输入中的部分代码：字符串数组解码函数和 JS-Confuser 运行时辅助函数在 isolated-vm 沙箱中运行，但 obfuscator、sojson 和 sojsonv7 目标会在解码器自身进程中用 Node.js 的 eval 解开最外层的 eval 包装。应把输入视为不受信任的代码，还原出的字符串和控制流也需对照原始脚本核实。","CI 在 Node.js 26 上运行 Vitest 测试套件；测试样例针对 JS-Confuser、obfuscator.io 和 sojson v7 目标，把混淆样本（大多由仓库内附的源文件生成）与预期解码结果配对。README、LICENSE 和 package.json 均声明 GPL-3.0-or-later。"],"targets":["website"],"url":"https://github.com/echo094/decode-js","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/MultiMote/niimblue/blob/82c5605780818299422a6acdf3180d87c569578d/package.json","https://github.com/MultiMote/niimblue/blob/82c5605780818299422a6acdf3180d87c569578d/CHANGELOG.md","https://github.com/MultiMote/niimblue/blob/82c5605780818299422a6acdf3180d87c569578d/CONTRIBUTING.md","https://github.com/MultiMote/niimblue/blob/82c5605780818299422a6acdf3180d87c569578d/Dockerfile","https://github.com/MultiMote/niimblue/blob/82c5605780818299422a6acdf3180d87c569578d/LICENSE","https://github.com/MultiMote/niimblue/blob/82c5605780818299422a6acdf3180d87c569578d/src/components/basic/FirmwareUpdater.svelte","https://github.com/MultiMote/niimblue/blob/82c5605780818299422a6acdf3180d87c569578d/.gitea/workflows/deploy-to-server.yml","https://github.com/MultiMote/niimblue/blob/82c5605780818299422a6acdf3180d87c569578d/.gitea/workflows/build-android-app.yml","https://github.com/MultiMote/niimblue/blob/82c5605780818299422a6acdf3180d87c569578d/.gitea/workflows/build-tauri-app.yml","https://github.com/MultiMote/niimblue/releases/tag/v2026.9.0","https://github.com/MultiMote/niimbluelib/blob/a9bc3f5c20c95e3a31ea3f5f2302ce7b27c34abe/README.md","https://printers.niim.blue/interfacing/proto/"],"category":"reconstruction-cases","description_en":"Replaces NIIMBOT's own label app with a browser client that designs labels and prints them over Web Bluetooth or Web Serial, with Android (Capacitor) and Windows (Tauri) builds of the same interface. Printer communication comes from the same author's NiimBlueLib, which the README calls the most complete implementation of the NIIMBOT protocol; the protocol is documented on the NIIMBOT Community Wiki, and owners of models that do not print are asked for a packet capture of a print made with the official app. The README says the client runs entirely in the browser and keeps label data there.","description_zh":"以浏览器客户端替代 NIIMBOT 官方标签应用，可设计标签并通过 Web Bluetooth 或 Web Serial 打印，同一界面另有 Android（Capacitor）和 Windows（Tauri）版本。与打印机的通信由同一作者的 NiimBlueLib 实现，README 称其为最完整的 NIIMBOT 协议实现；协议记录在 NIIMBOT Community Wiki 上，打印失败机型的用户会被请求提供用官方应用打印时的数据包抓包。README 称客户端完全在浏览器中运行，标签数据也保存在浏览器里。","entry_url":"https://awesomerea.org/resources/niimblue-niimbot-printer-client-case/","entry_url_zh":"https://awesomerea.org/zh/resources/niimblue-niimbot-printer-client-case/","evidence_url":"https://github.com/MultiMote/niimblue/blob/82c5605780818299422a6acdf3180d87c569578d/README.md","group":"cases","id":"niimblue-niimbot-printer-client-case","json_url":"https://awesomerea.org/resources/niimblue-niimbot-printer-client-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/niimblue-niimbot-printer-client-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/niimblue-niimbot-printer-client-case/index.md","name":"NiimBlue: an independent web client for NIIMBOT label printers","name_zh":"NiimBlue：NIIMBOT 标签打印机的独立网页客户端","record_type":"resource","relationship":"independent-reconstruction","requirements":["The reviewed main commit is the v2026.9.0 release of 2026-09-27; newer work lands on the dev branch, which CONTRIBUTING names as the base for pull requests. The README keeps no list of supported models and points to a NiimBlueLib issue that collects tested models; it suggests trying a different print-task version in the preview dialog when printing fails.","Needs the user's own NIIMBOT printer over Bluetooth or USB serial and a browser with the Web Bluetooth or Web Serial API, usually Chrome-based; some systems need Chrome flags enabled, Safari needs a third-party extension, and deployments other than localhost need HTTPS. No vendor app or firmware is needed to print. The optional firmware updater only flashes a .bin file the user selects.","Built with Node.js and npm from Svelte 5, Vite and Fabric.js, with @mmote/niimbluelib pinned at 0.47.0; npm run build writes static files, and the Dockerfile serves them with nginx. Releases attach the static site as niimblue-dist.zip plus an Android APK and a Windows executable, built by the repository's Gitea workflows.","The repository has no automated test suite: the Dockerfile and deployment workflow run svelte-check before building, and the Gitea workflows build and publish the site and apps. The protocol code and its tests live in the separate NiimBlueLib repository. Model support rests on user reports.","MIT (LICENSE, 2024 MultiMote); NiimBlueLib is also MIT, and its README says the work is for informational and educational purposes, is not affiliated with or endorsed by the vendor and is not meant for commercial use without the vendor's consent. CONTRIBUTING says AI-generated code is not appreciated and must be reviewed if used."],"requirements_zh":["所审阅的 main 提交即 2026-09-27 发布的 v2026.9.0；更新的开发在 dev 分支进行，CONTRIBUTING 要求以该分支作为拉取请求的基础。README 不维护支持机型列表，而是指向 NiimBlueLib 中汇总已测试机型的 issue；打印失败时，建议在预览对话框中尝试其他打印任务版本。","需要使用者自己的 NIIMBOT 打印机（蓝牙或 USB 串口连接），以及支持 Web Bluetooth 或 Web Serial API 的浏览器，通常为 Chrome 系浏览器；部分系统需开启 Chrome 实验选项，Safari 需要第三方扩展，localhost 以外的部署需要 HTTPS。打印不需要厂商应用或固件。可选的固件更新功能只会刷写使用者自选的 .bin 文件。","使用 Node.js 和 npm 构建，基于 Svelte 5、Vite 和 Fabric.js，并固定 @mmote/niimbluelib 0.47.0；npm run build 生成静态文件，Dockerfile 用 nginx 提供这些文件。发布版本附带静态站点包 niimblue-dist.zip、Android APK 和 Windows 可执行文件，均由仓库中的 Gitea 工作流构建。","仓库没有自动化测试：Dockerfile 和部署工作流在构建前运行 svelte-check，Gitea 工作流负责构建和发布站点与应用。协议代码及其测试位于独立的 NiimBlueLib 仓库。机型支持依据用户报告。","采用 MIT 许可证（LICENSE，2024 MultiMote）；NiimBlueLib 同样采用 MIT，其 README 称项目仅供信息和教育用途，与厂商无关联、未获厂商认可，未经厂商同意不应用于商业用途。CONTRIBUTING 表示不欢迎 AI 生成的代码，如有使用须经审查。"],"targets":["app","protocol"],"url":"https://github.com/MultiMote/niimblue","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/firerpa/lamda/blob/a980a38130ba00711311e509e3009301e8ff705a/README.md#L58-L63","https://github.com/firerpa/lamda/blob/a980a38130ba00711311e509e3009301e8ff705a/setup.py","https://github.com/firerpa/lamda/blob/a980a38130ba00711311e509e3009301e8ff705a/LICENSE","https://github.com/firerpa/lamda/blob/a980a38130ba00711311e509e3009301e8ff705a/DISCLAIMER.TXT","https://github.com/firerpa/lamda/tree/a980a38130ba00711311e509e3009301e8ff705a/lamda/rpc","https://github.com/firerpa/lamda/releases/tag/v10.9"],"category":"android","description_en":"Client/server Android automation and dynamic-analysis platform for devices the analyst is authorized to test. An on-device server exposes UI automation, a browser-based remote desktop, HTTPS traffic capture (MITM), and bundled Frida instrumentation through one service, driven from a Python client library of 160+ APIs. The README reports it works on Android 6.0+ with or without root, maps Frida RPC to Python and JSON-RPC calls, and includes an MCP server and a natural-language agent command.","description_zh":"采用客户端／服务器架构的 Android 自动化与动态分析平台，用于分析者有权测试的设备。设备端服务通过单一服务对外提供 UI 自动化、基于浏览器的远程桌面、HTTPS 流量抓取（MITM）和内置的 Frida 插桩，由包含 160 多个 API 的 Python 客户端库驱动。README 称其支持 Android 6.0+，可在有无 root 的情况下运行，将 Frida RPC 映射为 Python 与 JSON-RPC 调用，并内置 MCP 服务器和自然语言 agent 命令。","entry_url":"https://awesomerea.org/resources/firerpa-lamda/","entry_url_zh":"https://awesomerea.org/zh/resources/firerpa-lamda/","evidence_url":"https://github.com/firerpa/lamda/blob/a980a38130ba00711311e509e3009301e8ff705a/README.md","group":"tools","id":"firerpa-lamda","json_url":"https://awesomerea.org/resources/firerpa-lamda/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/firerpa-lamda/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/firerpa-lamda/index.md","name":"FIRERPA (lamda)","name_zh":"FIRERPA（lamda）Android 自动化与动态分析平台","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v10.9, published 2026-09-27 from the default branch 10; the reviewed commit a980a38 is that release's auto-commit. The Python client requires Python 3.6+ (setup.py pins >=3.6,<3.15); the README lists Android 6.0+ targets on arm64-v8a, armeabi-v7a, x86 and x86_64, including emulators and cloud phones.","This repository holds the Python client library, the gRPC/protobuf service definitions and helper scripts; the on-device server and its Debian environment are distributed as prebuilt per-architecture release tarballs and a Magisk module, not committed to the tree. Deployment uses a one-click app (root or Shizuku), a Magisk module, manual extraction or ROM integration.","Operates only on a device the server is installed on, over a single service port with TLS and certificate-based access control; the README positions it for security testing and compliance analysis. The committed tools directory includes the project's own default MITM CA and SSH material, described in the repository as open defaults.","MIT-licensed. A DISCLAIMER.TXT requires use only for lawful study, research or authorized application analysis on a virtual or dedicated device, and states the software itself provides no capability to intrude on other applications."],"requirements_zh":["审阅时最新版本为 v10.9，发布于 2026-09-27，来自默认分支 10；所审阅的提交 a980a38 即该版本的自动提交。Python 客户端要求 Python 3.6+（setup.py 固定为 >=3.6,<3.15）；README 列出的目标为 Android 6.0+，支持 arm64-v8a、armeabi-v7a、x86 和 x86_64，包括模拟器和云手机。","本仓库包含 Python 客户端库、gRPC/protobuf 服务定义和辅助脚本；设备端服务及其 Debian 环境以按架构预编译的发行包和 Magisk 模块分发，并未提交到代码树。部署方式包括一键 App（root 或 Shizuku）、Magisk 模块、手动解压或 ROM 集成。","仅在已安装该服务的设备上运行，通过单一服务端口使用 TLS 和基于证书的访问控制；README 将其定位于安全测试与合规分析。仓库 tools 目录内含项目自带的默认 MITM CA 和 SSH 材料，仓库说明称其为公开的默认值。","采用 MIT 许可。DISCLAIMER.TXT 要求仅在虚拟或专用设备上用于合法学习、研究或经授权的应用分析，并声明软件本身不提供侵入其他应用的能力。"],"targets":["app"],"url":"https://github.com/firerpa/lamda","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/Th0rgal/open_oura/blob/e57c43ce5fe0cf9a646afa790bda3731be767507/crates/README.md","https://github.com/Th0rgal/open_oura/blob/e57c43ce5fe0cf9a646afa790bda3731be767507/docs/architecture.md","https://github.com/Th0rgal/open_oura/blob/e57c43ce5fe0cf9a646afa790bda3731be767507/docs/horizon-ring3-protocol-cheatsheet.md","https://github.com/Th0rgal/open_oura/blob/e57c43ce5fe0cf9a646afa790bda3731be767507/docs/native-decoder.md","https://github.com/Th0rgal/open_oura/blob/e57c43ce5fe0cf9a646afa790bda3731be767507/docs/algorithms/README.md","https://github.com/Th0rgal/open_oura/blob/e57c43ce5fe0cf9a646afa790bda3731be767507/docs/data-recovery-map.md","https://github.com/Th0rgal/open_oura/blob/e57c43ce5fe0cf9a646afa790bda3731be767507/docs/security-observations.md","https://github.com/Th0rgal/open_oura/blob/e57c43ce5fe0cf9a646afa790bda3731be767507/crates/oura-protocol/src/events.rs","https://github.com/Th0rgal/open_oura/blob/e57c43ce5fe0cf9a646afa790bda3731be767507/crates/oura-protocol/src/auth.rs","https://github.com/Th0rgal/open_oura/blob/e57c43ce5fe0cf9a646afa790bda3731be767507/crates/oura-link/Cargo.toml","https://github.com/Th0rgal/open_oura/blob/e57c43ce5fe0cf9a646afa790bda3731be767507/Cargo.toml","https://github.com/Th0rgal/open_oura/blob/e57c43ce5fe0cf9a646afa790bda3731be767507/CLAUDE.md","https://github.com/Th0rgal/open_oura/blob/e57c43ce5fe0cf9a646afa790bda3731be767507/LICENSE"],"category":"reconstruction-cases","description_en":"Reimplements the Bluetooth Low Energy protocol of the Oura Ring Gen 3/4/5 in Rust crates and an oura command-line client that pairs with, authenticates to and syncs a ring directly, with no Oura account or cloud service. The author reports recovering the GATT layout, packet framing and AES app-auth flow from the decompiled Android app, and porting history-event decoders and several on-device metrics, such as HRV, sleep debt and nightly temperature baselines, from Ghidra decompilations of the app's native libraries. Event bodies are stored raw in SQLite so they can be re-decoded as decoders improve.","description_zh":"用一组 Rust crate 和 oura 命令行客户端重新实现 Oura Ring 第 3/4/5 代的低功耗蓝牙协议，可直接与戒指配对、认证并同步数据，无需 Oura 账户或云服务。作者称从反编译的 Android 应用中恢复了 GATT 布局、数据包帧格式和基于 AES 的应用认证流程，并依据 Ghidra 对应用原生库的反编译结果，移植了历史事件解码器以及 HRV、睡眠负债、夜间体温基线等若干设备端指标算法。事件内容以原始形式存入 SQLite，解码器改进后可重新解码。","entry_url":"https://awesomerea.org/resources/open-oura-ring-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/open-oura-ring-protocol-case/","evidence_url":"https://github.com/Th0rgal/open_oura/blob/e57c43ce5fe0cf9a646afa790bda3731be767507/README.md","group":"cases","id":"open-oura-ring-protocol-case","json_url":"https://awesomerea.org/resources/open-oura-ring-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/open-oura-ring-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/open-oura-ring-protocol-case/index.md","name":"open_oura: a cloud-free Oura Ring client built on its reverse-engineered BLE protocol","name_zh":"open_oura：基于逆向 BLE 协议、无需云端的 Oura Ring 客户端","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the 2026-10-07 main head; there are no releases or tags, and the workspace version is 0.1.0. The README reports live pairing, authentication and event sync on a Ring 3 Horizon and a Ring 5, and says the client is designed for Ring 3/4/5, which share one GATT layout, packet framing and auth flow. Several event layouts are marked inferred or partly unresolved, and the algorithm status table lists the sleep, readiness and activity scores as only partly recovered. The iOS app and web dashboard built on these crates live in the separate open_health repository.","Requires the user's own ring and a host Bluetooth adapter. Auth-gated reads need the ring's 16-byte app-auth key in a key file: the pair command installs a new key on a factory-reset ring, while an app-onboarded ring's key sits in the official app's local database, and the bundled helper for exporting it needs a rooted Android phone. Sleep staging and some scores depend on Oura's proprietary on-device models, which the README says are not included and must be supplied by the user; factory-reset and other state-changing commands sit behind explicit flags.","Builds with Cargo as a Rust 2021 workspace. The oura-link crate uses btleplug for BLE by default and can be built without it so that an iOS host supplies its own CoreBluetooth transport; on macOS the terminal needs Bluetooth permission. A separate Python research bench in tools/ uses bleak and pycryptodome.","cargo test runs 88 Rust unit tests at review, covering captured-packet decoding, an AES auth known-answer vector, mock-transport authentication and sync and the ported metric functions; no CI workflow is committed. Physiological figures in the documentation, such as overnight heart rate, RMSSD and SpO2 ratios, come from the author's own rings.","MIT (LICENSE and Cargo metadata). Oura's apps, native libraries, models, firmware, decompiled output, captures and keys are kept out of the repository. A CLAUDE.md guide for coding agents is committed."],"requirements_zh":["审阅的是 main 分支 2026-10-07 的最新提交；仓库没有发布版本或标签，工作区版本为 0.1.0。README 称已在 Ring 3 Horizon 和 Ring 5 上实测配对、认证和事件同步，并说明客户端面向共用同一 GATT 布局、数据包帧格式和认证流程的 Ring 3/4/5 设计。若干事件布局标注为推断或部分未解析；算法状态表显示睡眠、准备度和活动评分仅部分恢复。基于这些 crate 的 iOS 应用和网页仪表盘位于独立的 open_health 仓库。","需要使用者自己的戒指和主机蓝牙适配器。需认证的读取要求把戒指的 16 字节应用认证密钥写入密钥文件：pair 命令会在恢复出厂设置的戒指上安装新密钥；已由官方应用完成初始化的戒指，其密钥保存在官方应用的本地数据库中，仓库附带的导出辅助脚本需要已 root 的 Android 手机。睡眠分期和部分评分依赖 Oura 专有的设备端模型，README 说明这些模型不包含在仓库中，需由使用者自行提供；恢复出厂设置等会改变状态的命令须显式加参数才能执行。","使用 Cargo 构建，为 Rust 2021 工作区。oura-link crate 默认使用 btleplug 实现 BLE，也可去掉该依赖构建，由 iOS 宿主提供自己的 CoreBluetooth 传输层；在 macOS 上需为终端授予蓝牙权限。tools/ 下另有使用 bleak 和 pycryptodome 的 Python 研究工具集。","审阅时 cargo test 包含 88 个 Rust 单元测试，涵盖已捕获数据包的解码、AES 认证已知答案向量、基于模拟传输层的认证与同步以及移植的指标函数；仓库未提交 CI 工作流。文档中的夜间心率、RMSSD 和 SpO2 比值等生理数据来自作者自己的戒指。","采用 MIT 许可（见 LICENSE 和 Cargo 元数据）。Oura 的应用、原生库、模型、固件、反编译输出、抓包数据和密钥均未纳入仓库。仓库提交了面向编程智能体的 CLAUDE.md 指南。"],"targets":["app","protocol"],"url":"https://github.com/Th0rgal/open_oura","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/hasherezade/pe-sieve/blob/98788a6ef98cd3c1a0ee481dc5a6847cb4f92432/params.h","https://github.com/hasherezade/pe-sieve/blob/98788a6ef98cd3c1a0ee481dc5a6847cb4f92432/CMakeLists.txt","https://github.com/hasherezade/pe-sieve/blob/98788a6ef98cd3c1a0ee481dc5a6847cb4f92432/pe_sieve_ver_short.h","https://github.com/hasherezade/pe-sieve/blob/98788a6ef98cd3c1a0ee481dc5a6847cb4f92432/.gitmodules","https://github.com/hasherezade/pe-sieve/blob/98788a6ef98cd3c1a0ee481dc5a6847cb4f92432/bindings/README.md","https://github.com/hasherezade/pe-sieve/blob/98788a6ef98cd3c1a0ee481dc5a6847cb4f92432/.appveyor.yml","https://github.com/hasherezade/pe-sieve/blob/98788a6ef98cd3c1a0ee481dc5a6847cb4f92432/.github/workflows/main.yml","https://github.com/hasherezade/pe-sieve/blob/98788a6ef98cd3c1a0ee481dc5a6847cb4f92432/LICENSE","https://github.com/hasherezade/pe-sieve/releases/tag/v0.4.1.1"],"category":"dynamic-analysis","description_en":"Windows process scanner by hasherezade that finds and dumps implants in one running process: replaced or injected PE modules, shellcode, inline and IAT hooks and other in-memory patches, with the README naming Process Hollowing, Process Doppelgänging and reflective DLL injection among the techniques it detects. Options add shellcode detection by patterns or statistics, scans of thread call stacks, non-executable pages and encrypted or obfuscated content, a choice of dump mode with import-table recovery for dumped PEs, minidumps and JSON reports. It builds as an EXE, as a DLL with a small API that Python, Go and Rust bindings use, or as a static library, and is the engine behind HollowsHunter and MalUnpack.","description_zh":"hasherezade 开发的 Windows 进程扫描工具，可在单个运行中的进程里发现并转储植入内容：被替换或注入的 PE 模块、shellcode、内联钩子与 IAT 钩子以及其他内存补丁；README 列出的可检测技术包括 Process Hollowing、Process Doppelgänging 和反射式 DLL 注入。可选功能包括按特征模式或统计方法检测 shellcode，扫描线程调用栈、不可执行内存页以及加密或混淆内容，选择转储模式并为转储的 PE 恢复导入表，生成 minidump 和 JSON 报告。它可构建为 EXE、提供简单 API 的 DLL（Python、Go 和 Rust 绑定均基于该 API）或静态库，也是 HollowsHunter 和 MalUnpack 的扫描引擎。","entry_url":"https://awesomerea.org/resources/pe-sieve/","entry_url_zh":"https://awesomerea.org/zh/resources/pe-sieve/","evidence_url":"https://github.com/hasherezade/pe-sieve/blob/98788a6ef98cd3c1a0ee481dc5a6847cb4f92432/README.md","group":"tools","id":"pe-sieve","json_url":"https://awesomerea.org/resources/pe-sieve/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pe-sieve/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pe-sieve/index.md","name":"PE-sieve","name_zh":"PE-sieve 进程内存植入扫描工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.4.1.1, published 2025-09-13, with 32- and 64-bit EXEs and DLLs; the README also lists Chocolatey and Scoop packages. The reviewed master commit (2026-06-06) reports version 0.4.1.5, so the pinned sources may describe unreleased changes. PE-sieve runs on Windows and scans one process per run, selected by PID; the separate HollowsHunter scans many processes or the whole system.","Source builds use CMake 3.12+ (or the MinGW build script) and a recursive clone for the libpeconv, paramkit and sig_finder submodules, with an option to build an EXE, a DLL or a static library. The Python bindings in the repository and the separate Go and Rust bindings load pe-sieve32.dll or pe-sieve64.dll from PESIEVE_DIR or the current directory. Optional symbol download fetches symbols for the scanned modules.","Inputs are running processes on a machine the analyst controls, and the README describes the results as potentially malicious material collected for further analysis, so detections and dumps need review. AppVeyor builds x86 and x64 Release and Debug configurations, and its only CTest check runs pe-sieve -? and expects a version string; the GitHub workflow publishes Doxygen documentation.","BSD-2-Clause (LICENSE, 2017-2026 @hasherezade); the submodules keep their own licenses."],"requirements_zh":["审阅时最新版本为 v0.4.1.1，发布于 2025-09-13，提供 32 位和 64 位 EXE 与 DLL；README 还列出 Chocolatey 和 Scoop 软件包。所审阅的 master 提交（2026-06-06）标注版本 0.4.1.5，因此固定的源码可能包含尚未发布的改动。PE-sieve 在 Windows 上运行，每次按 PID 扫描一个进程；扫描多个进程或整个系统需使用独立的 HollowsHunter。","从源码构建使用 CMake 3.12+（或 MinGW 构建脚本），需递归克隆 libpeconv、paramkit 和 sig_finder 子模块，并可选择构建 EXE、DLL 或静态库。仓库中的 Python 绑定以及独立的 Go 和 Rust 绑定会从 PESIEVE_DIR 或当前目录加载 pe-sieve32.dll 或 pe-sieve64.dll。可选的符号下载功能会为被扫描模块获取符号。","输入是分析者所掌控机器上正在运行的进程；README 将结果描述为供进一步分析而收集的可能恶意的内容，因此检测结果和转储文件都需要人工复核。AppVeyor 构建 x86 与 x64 的 Release 和 Debug 配置，其唯一的 CTest 检查是运行 pe-sieve -? 并确认输出版本字符串；GitHub 工作流只发布 Doxygen 文档。","采用 BSD-2-Clause 许可证（LICENSE，2017-2026 @hasherezade）；各子模块保留其自身许可证。"],"targets":["binary"],"url":"https://github.com/hasherezade/pe-sieve","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/decalage2/oletools/blob/ec10260989dbc48b9109e3d05d22beee19cf2333/setup.py","https://github.com/decalage2/oletools/blob/ec10260989dbc48b9109e3d05d22beee19cf2333/requirements.txt","https://github.com/decalage2/oletools/blob/ec10260989dbc48b9109e3d05d22beee19cf2333/SECURITY.md","https://github.com/decalage2/oletools/blob/ec10260989dbc48b9109e3d05d22beee19cf2333/.github/workflows/unittests.yml","https://github.com/decalage2/oletools/blob/ec10260989dbc48b9109e3d05d22beee19cf2333/.travis.yml","https://github.com/decalage2/oletools/tree/ec10260989dbc48b9109e3d05d22beee19cf2333/tests/test-data","https://github.com/decalage2/oletools/blob/ec10260989dbc48b9109e3d05d22beee19cf2333/LICENSE.md","https://github.com/decalage2/oletools/blob/ec10260989dbc48b9109e3d05d22beee19cf2333/oletools/thirdparty/xxxswf/LICENSE.txt","https://github.com/decalage2/oletools/releases/tag/v0.60.2","https://pypi.org/project/oletools/0.60.2/"],"category":"native-analysis","description_en":"Python package by Philippe Lagadec for analyzing Microsoft OLE2 (Compound File Binary) files such as Office 97–2003 documents, MSI files and Outlook messages, as well as RTF and OpenXML documents, mainly for malware analysis, forensics and debugging. Its command-line tools detect and extract VBA and Excel 4 (XLM) macros, embedded OLE and Flash objects and DDE links (olevba, MacroRaptor, oleobj, rtfobj, pyxswf, msodde), flag characteristics common in malicious files with oleid and ftguess, and show directory entries, metadata, timestamps and sector maps with oledir, olemeta, oletimes and olemap. It is built on the same author's olefile parser.","description_zh":"Philippe Lagadec 开发的 Python 工具包，用于分析 Microsoft OLE2（复合文件二进制格式）文件，如 Office 97–2003 文档、MSI 文件和 Outlook 邮件，也支持 RTF 与 OpenXML 文档，主要面向恶意软件分析、取证和调试。其命令行工具可检测并提取 VBA 与 Excel 4（XLM）宏、嵌入的 OLE 和 Flash 对象以及 DDE 链接（olevba、MacroRaptor、oleobj、rtfobj、pyxswf、msodde），用 oleid 和 ftguess 标记恶意文件中常见的特征，并通过 oledir、olemeta、oletimes 和 olemap 查看目录项、元数据、时间戳和扇区布局。它基于同一作者的 olefile 解析器。","entry_url":"https://awesomerea.org/resources/oletools/","entry_url_zh":"https://awesomerea.org/zh/resources/oletools/","evidence_url":"https://github.com/decalage2/oletools/blob/ec10260989dbc48b9109e3d05d22beee19cf2333/README.md","group":"tools","id":"oletools","json_url":"https://awesomerea.org/resources/oletools/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/oletools/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/oletools/index.md","name":"oletools","name_zh":"oletools Office 文档与 OLE 文件分析工具集","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.60.2, published 2024-07-02 on GitHub and PyPI. The reviewed master commit (2026-01-26) already sets version 0.60.3, and its README news lists 0.60.3 under 2025-05-22 with an olevba fix for a security issue with ANSI escape codes in CLI output, but no 0.60.3 tag or PyPI upload existed at review. SECURITY.md lists 0.60.x and later as supported.","Install with pip as oletools, or oletools[full] to add the optional XLMMacroDeobfuscator. Dependencies are pyparsing, olefile, easygui, colorclass and pcodedmp, plus msoffcrypto-tool for encrypted documents except on PyPy under Windows, macOS or Python 2. setup.py classifiers list Python 2.7 and 3.4 to 3.12; the GitHub workflow runs pylint -E and the unit tests on Linux, Windows and macOS with current CPython 3 and PyPy 3.9, while the older Travis configuration targets Python 2.7 to 3.8 and PyPy.","Inputs are user-supplied documents, which in malware analysis may be malicious; the unit tests use sample documents committed under tests/test-data. The README describes oleid as detecting characteristics usually found in malicious files and MacroRaptor as detecting malicious VBA macros, so results are indicators that need analyst review.","LICENSE.md applies a two-clause BSD license (copyright 2012–2025 Philippe Lagadec) to the package; olevba contains MIT-licensed code from officeparser, and the thirdparty folder keeps its own terms, including GPL-3.0 for xxxswf and public-domain oledump plugin code. The README notes that python-oletools is unrelated to BeCubed Software's OLETools."],"requirements_zh":["审阅时最新版本为 v0.60.2，于 2024-07-02 在 GitHub 和 PyPI 发布。所审阅的 master 提交（2026-01-26）已将版本设为 0.60.3，README 的更新记录也在 2025-05-22 下列出 0.60.3，其中包括修复 olevba 命令行输出中 ANSI 转义码导致的安全问题；但审阅时并不存在 0.60.3 标签或 PyPI 上传。SECURITY.md 将 0.60.x 及之后版本列为受支持版本。","通过 pip 安装 oletools，或安装 oletools[full] 以加入可选的 XLMMacroDeobfuscator。依赖 pyparsing、olefile、easygui、colorclass 和 pcodedmp，并依赖 msoffcrypto-tool 处理加密文档（在 Windows、macOS 或 Python 2 上使用 PyPy 时除外）。setup.py 的分类标签列出 Python 2.7 及 3.4 至 3.12；GitHub 工作流在 Linux、Windows 和 macOS 上用当前 CPython 3 与 PyPy 3.9 运行 pylint -E 和单元测试，较旧的 Travis 配置则针对 Python 2.7 至 3.8 及 PyPy。","输入为使用者提供的文档，在恶意软件分析中可能是恶意文件；单元测试使用 tests/test-data 下提交的示例文档。README 称 oleid 用于检测恶意文件中常见的特征、MacroRaptor 用于检测恶意 VBA 宏，因此结果只是需要分析者复核的迹象。","LICENSE.md 对该工具包采用两条款 BSD 许可证（版权 2012–2025 Philippe Lagadec）；olevba 包含来自 officeparser 的 MIT 许可代码，thirdparty 目录保留各自条款，其中 xxxswf 为 GPL-3.0，oledump 插件代码为公有领域。README 说明 python-oletools 与 BeCubed Software 的 OLETools 无关。"],"targets":["binary"],"url":"https://github.com/decalage2/oletools","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/foundryzero/binder-trace/blob/a8a9a06fbf85dbf2241f9232c3776a515b05f8eb/STRUCTURES.md","https://github.com/foundryzero/binder-trace/blob/a8a9a06fbf85dbf2241f9232c3776a515b05f8eb/binder_trace/binder_trace/__main__.py","https://github.com/foundryzero/binder-trace/blob/a8a9a06fbf85dbf2241f9232c3776a515b05f8eb/binder_trace/binder_trace/js/interceptbinder.js","https://github.com/foundryzero/binder-trace/tree/a8a9a06fbf85dbf2241f9232c3776a515b05f8eb/binder_trace/binder_trace/structs","https://github.com/foundryzero/binder-trace/blob/a8a9a06fbf85dbf2241f9232c3776a515b05f8eb/binder_trace/requirements.txt","https://github.com/foundryzero/binder-trace/blob/a8a9a06fbf85dbf2241f9232c3776a515b05f8eb/binder_trace/setup.py","https://github.com/foundryzero/binder-trace/blob/a8a9a06fbf85dbf2241f9232c3776a515b05f8eb/tox.ini","https://github.com/foundryzero/binder-trace/blob/a8a9a06fbf85dbf2241f9232c3776a515b05f8eb/.github/workflows/style.yml","https://github.com/foundryzero/binder-trace/blob/a8a9a06fbf85dbf2241f9232c3776a515b05f8eb/LICENSE","https://pypi.org/project/binder-trace/1.4.1/"],"category":"android","description_en":"Frida-based terminal tool, described by its authors as \"Wireshark for Binder\", that intercepts the Binder IPC transactions an Android process sends and parses each message and its reply. Bundled structure files for specific Android releases map transaction codes back to AIDL interface and method names and decode parcel arguments into typed fields beside a hex dump. A frequency pane and a JSON filter file narrow the stream by interface, method or type, showing which system services an app calls and with what data.","description_zh":"基于 Frida 的终端工具，作者称其为“Binder 版 Wireshark”，用于拦截 Android 进程发出的 Binder IPC 事务，并解析每条消息及其回复。随附针对特定 Android 版本的结构文件，可把事务编号映射回 AIDL 接口和方法名，并把 parcel 参数解码为带类型的字段，与十六进制视图并列显示。频率面板和 JSON 过滤配置可按接口、方法或类型筛选消息流，从而看出应用调用了哪些系统服务、传递了什么数据。","entry_url":"https://awesomerea.org/resources/binder-trace/","entry_url_zh":"https://awesomerea.org/zh/resources/binder-trace/","evidence_url":"https://github.com/foundryzero/binder-trace/blob/a8a9a06fbf85dbf2241f9232c3776a515b05f8eb/README.md","group":"tools","id":"binder-trace","json_url":"https://awesomerea.org/resources/binder-trace/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/binder-trace/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binder-trace/index.md","name":"Binder Trace","name_zh":"Binder Trace Android Binder 消息拦截与解析工具","record_type":"resource","relationship":"foundation","requirements":["PyPI release at review: binder-trace 1.4.1, published 2024-08-01, requiring Python 3.9+. The reviewed main commit of 2025-09-11 is one README-only commit later, correcting the frida-server steps and the listed Android versions, and is the latest activity.","Needs a rooted Android device or emulator, adb running as root and a frida-server matching the installed Frida Python package, which requirements.txt leaves unpinned. It attaches to a process by PID or name, or spawns it, and should be used on devices and apps the analyst may analyse. Clipboard copy on Linux needs xclip or xsel.","Default structure sets cover Android 9 to 14, with extra sets for 8.1 and some point releases. STRUCTURES.md explains that AIDL method numbering and parcel layouts change between builds, so results on a device whose build differs from the bundled AOSP tags can be wrong and the files may need hand-editing. Only transactions the attached process issues through libbinder's IPCThreadState::transact are captured, together with their replies.","CI runs tox with isort, black, flake8, pydocstyle and pytest across several Python versions; the tests cover argument parsing, parcel parsing and the terminal interface, not live devices. MIT licensed."],"requirements_zh":["审阅时 PyPI 版本为 binder-trace 1.4.1，发布于 2024-08-01，要求 Python 3.9+。所审阅的 main 分支提交日期为 2025-09-11，比该版本多一个只修改 README 的提交，修正了 frida-server 步骤和所列 Android 版本，也是仓库最近一次活动。","需要已 root 的 Android 设备或模拟器、以 root 身份运行的 adb，以及与已安装的 Frida Python 包版本一致的 frida-server；requirements.txt 未固定 Frida 版本。工具可按 PID 或进程名附加到进程，也可先启动再附加，应仅用于分析者有权分析的设备和应用。在 Linux 上使用剪贴板复制需安装 xclip 或 xsel。","默认结构文件覆盖 Android 9 至 14，另有 8.1 及部分小版本的结构集。STRUCTURES.md 说明 AIDL 方法编号和 parcel 布局会随构建版本变化，因此设备构建与随附的 AOSP 标签不一致时，解析结果可能有误，结构文件可能需要手动修改。只捕获被附加进程经由 libbinder 的 IPCThreadState::transact 发出的事务及其回复。","CI 通过 tox 在多个 Python 版本上运行 isort、black、flake8、pydocstyle 和 pytest；测试覆盖参数解析、parcel 解析和终端界面，不涉及真实设备。采用 MIT 许可。"],"targets":["app","protocol"],"url":"https://github.com/foundryzero/binder-trace","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/AloneMonkey/MonkeyDev/blob/f906af1d90adc03bc6a6e4c1f39098a32371faae/change.log","https://github.com/AloneMonkey/MonkeyDev/blob/f906af1d90adc03bc6a6e4c1f39098a32371faae/LICENSE","https://github.com/AloneMonkey/MonkeyDev/blob/f906af1d90adc03bc6a6e4c1f39098a32371faae/Librarys/roothide/LICENSE"],"category":"dynamic-analysis","description_en":"Based on iOSOpenDev, MonkeyDev adds a MonkeyApp project template to Xcode for instrumenting iOS apps the developer is authorized to analyze. From Xcode it injects a developer-written dylib into a supplied decrypted app, builds Objective-C or Logos (CaptainHook) hooks, and re-signs, installs and debugs the result with source-level breakpoints; optional build settings restore Objective-C symbols, export the target's Objective-C headers and enable Reveal view inspection. The current version also builds jailbreak Logos/CaptainHook tweaks and command-line tools for rootless, rootful or roothide environments.","description_zh":"MonkeyDev 基于 iOSOpenDev，为 Xcode 增加 MonkeyApp 工程模板，用于对开发者有权分析的 iOS 应用进行插桩。它在 Xcode 中将开发者编写的 dylib 注入到提供的已解密应用，编写 Objective-C 或 Logos（CaptainHook）Hook，并完成重签名、安装与带源码级断点的调试；可选的构建设置支持还原 Objective-C 符号、导出目标应用的 Objective-C 头文件以及启用 Reveal 视图检查。当前版本还可为 rootless、rootful 或 roothide 环境构建越狱 Logos/CaptainHook Tweak 和命令行工具。","entry_url":"https://awesomerea.org/resources/monkeydev/","entry_url_zh":"https://awesomerea.org/zh/resources/monkeydev/","evidence_url":"https://github.com/AloneMonkey/MonkeyDev/blob/f906af1d90adc03bc6a6e4c1f39098a32371faae/README.md","group":"tools","id":"monkeydev","json_url":"https://awesomerea.org/resources/monkeydev/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/monkeydev/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/monkeydev/index.md","name":"MonkeyDev","name_zh":"MonkeyDev iOS 应用插桩开发工具包","record_type":"resource","relationship":"foundation","requirements":["The reviewed master commit f906af1 (last pushed 2026-10-20) documents version 4.10; the repository has no tagged release. The README reports the non-jailbreak flow verified on Apple Silicon Macs with Xcode 27.0 and an iPhone 14 Pro on iOS 18.6.2, covering build, repeat install, hooking, symbol breakpoints, header export and Reveal, and separately reports rootless tweak and command-line builds verified on device with rootful only build- and package-checked.","Installation needs a full Xcode, a native arm64 shell and Theos installed separately under the current user's home directory; it installs to /opt/MonkeyDev and registers the templates in the user's Xcode template directory without modifying Xcode.app. The repository commits prebuilt native helper binaries (its own monkeyparser and a build of class-dump) and the libsubstitute.dylib library, plus a demo app under Resource/TargetApp.app used as the built-in validation input.","Each MonkeyApp needs one target input the developer supplies: a decrypted .app or already-dumped IPA placed in the project's TargetApp folder, or the built-in demo when none is provided. The README states MonkeyDev does not decrypt apps on non-jailbroken devices. Signing requires a certificate available to the current team, a matching provisioning profile and device authorization, and the keep-bundle-ID toggle does not bypass signing entitlements.","GPL-3.0 licensed; the bundled roothide SDK under Librarys/roothide is MIT. The repository ships the Xcode templates, install/packaging scripts, the helper binaries and the demo app, and contains no third-party target application."],"requirements_zh":["所审阅的 master 提交 f906af1（最后推送于 2026-10-20）对应版本 4.10；仓库未发布带标签的版本。README 称非越狱流程在搭载 Xcode 27.0 的 Apple Silicon Mac 与 iOS 18.6.2 的 iPhone 14 Pro 上完成验证，覆盖构建、重复安装、Hook、符号断点、头文件导出和 Reveal；越狱场景下 rootless 的 Tweak 与命令行工具已在真机验证，rootful 仅完成构建和打包检查。","安装需要完整 Xcode、原生 arm64 shell，以及用户自行安装在其主目录下的 Theos；它安装到 /opt/MonkeyDev，并在用户的 Xcode 模板目录注册模板，不修改 Xcode.app。仓库提交了预编译的原生辅助二进制（项目自带的 monkeyparser 和一份 class-dump 构建）以及 libsubstitute.dylib 库，另有 Resource/TargetApp.app 下的演示应用作为内置验证输入。","每个 MonkeyApp 需要开发者提供一个目标输入：放入工程 TargetApp 目录的已解密 .app 或已砸壳 IPA，未提供时则使用内置 Demo。README 说明 MonkeyDev 不在非越狱设备上对应用砸壳。签名需要当前团队可用的证书、匹配的描述文件和设备授权，保留 Bundle ID 的开关不会绕过签名权限。","采用 GPL-3.0 许可；Librarys/roothide 下捆绑的 roothide SDK 为 MIT。仓库提供 Xcode 模板、安装与打包脚本、辅助二进制和演示应用，不含任何第三方目标应用。"],"targets":["app"],"url":"https://github.com/AloneMonkey/MonkeyDev","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/INSTALL.md","https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/CHANGELOG.md","https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/docs/epistemics.md","https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/docs/bmc-emulation.md","https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/tests/fixtures/mcu/init-table/Makefile","https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/scripts/fat-init-trampoline-mipsel.S","https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/DEVELOPMENT.md","https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/LICENSE","https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/LICENSING.md","https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/THIRD_PARTY_NOTICES.md","https://github.com/attify/firmware-analysis-toolkit/releases/tag/v2.0.1"],"category":"firmware","description_en":"Attify's firmware security toolkit, rewritten for version 2 as a Rust command-line tool built around per-image projects. It classifies unknown blobs and firmware images, extracts filesystems, inventories startup scripts, credential strings and crypto material, triages ELF binaries with radare2-based decompilation and source-to-sink taint, and inspects bare-metal MCU images, BMC flash, Edge AI model files and Android APKs. Projects can then go through preflight checks and QEMU emulation on native, FirmAE, Firmadyne or EMUX backends.","description_zh":"Attify 的固件安全研究工具包，第 2 版改写为以单个镜像项目为中心的 Rust 命令行工具。它可识别未知数据块和固件镜像、提取文件系统，梳理启动脚本、凭据字符串和密码学材料，借助基于 radare2 的反编译与源到汇的污点分析初筛 ELF 二进制，还能检查裸机 MCU 镜像、BMC 闪存、边缘 AI 模型文件和 Android APK。之后可对项目做运行前检查，并通过原生、FirmAE、Firmadyne 或 EMUX 后端进行 QEMU 仿真。","entry_url":"https://awesomerea.org/resources/attify-firmware-analysis-toolkit/","entry_url_zh":"https://awesomerea.org/zh/resources/attify-firmware-analysis-toolkit/","evidence_url":"https://github.com/attify/firmware-analysis-toolkit/blob/54dd1a2a4705f2cafc14924497df6791813aab55/README.md","group":"tools","id":"attify-firmware-analysis-toolkit","json_url":"https://awesomerea.org/resources/attify-firmware-analysis-toolkit/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/attify-firmware-analysis-toolkit/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/attify-firmware-analysis-toolkit/index.md","name":"Firmware Analysis Toolkit (FAT)","name_zh":"FAT 固件分析工具包","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v2.0.1, published 2026-09-26, with archives for macOS (Apple Silicon and Intel), Linux x86-64 (glibc 2.35+) and ARM64 (glibc 2.39+) and Windows x86-64, plus a separate runtime-data bundle. The reviewed master commit adds unreleased BMC inspection, native JFFS2 recovery, hash-pinned BMC emulation profiles and Redfish session and process debugging. Version 2 is a rewrite; the FAT 1.x setup.sh and fat.py workflow belongs to the older release.","Source builds need Rust 1.91+ and Python 3; the installer can add system packages and builds pinned binwalk-ng 4.0.0 and Sasquatch. The Windows build covers native analysis commands only, and workflows that need Linux filesystem semantics or Unix tools run under WSL. Optional workflows need radare2 with r2ghidra, Ghidra, Joern, angr, QEMU, GDB, tmux or Docker, and FirmAE, Firmadyne and EMUX backends are configured separately; fat doctor reports what is missing.","Users supply the firmware images, extracted filesystems, binaries or APKs to analyze. The third-party notices state that the source tree and release bundles contain no firmware images, kernel or U-Boot binaries, proprietary model files or extracted device filesystems. BMC emulation profiles require an exact input SHA-256 for a named OpenBMC or ASUS BMC image, and the README warns that emulation executes untrusted vendor code.","docs/epistemics.md treats results as bounded observations: startup intent does not prove reachability, Edge AI hits do not show that a model executes, shell taint is deliberately unsound and reports weak candidates, and an emulation validator proves only what it checked in that run. Test fixtures are synthetic, including Cortex-M images built from in-repo C sources with arm-none-eabi-gcc; a prebuilt MIPS PID-1 trampoline ships with its assembly source. DEVELOPMENT.md documents local cargo tests, while the GitHub workflows build and smoke-test release archives.","FAT 2.0 is source available under FSL-1.1-ALv2, which GitHub reports as NOASSERTION: use, modification and redistribution are permitted except a commercial Competing Use, and each version also becomes available under Apache-2.0 two years after Attify first makes it available. FAT 1.x history stays MIT, the optional QEMU hook plugin source is GPL-2.0-or-later, and third-party dependencies and external assets keep their own terms. Users must be authorized to analyze their targets."],"requirements_zh":["审阅时最新版本为 v2.0.1，发布于 2026-09-26，提供 macOS（Apple Silicon 与 Intel）、Linux x86-64（需 glibc 2.35+）与 ARM64（需 glibc 2.39+）以及 Windows x86-64 压缩包，另有单独的运行时数据包。所审阅的 master 提交加入了尚未发布的 BMC 检查、原生 JFFS2 恢复、以哈希固定的 BMC 仿真配置，以及 Redfish 会话和进程调试。第 2 版是重写版本；FAT 1.x 的 setup.sh 和 fat.py 流程仅适用于旧版。","从源码构建需要 Rust 1.91+ 和 Python 3；安装脚本可安装系统软件包，并构建固定版本的 binwalk-ng 4.0.0 和 Sasquatch。Windows 版只支持原生分析命令，依赖 Linux 文件系统语义或 Unix 工具的流程需在 WSL 中运行。可选流程需要 radare2 与 r2ghidra、Ghidra、Joern、angr、QEMU、GDB、tmux 或 Docker；FirmAE、Firmadyne 和 EMUX 后端需另行配置，fat doctor 会报告缺少的组件。","待分析的固件镜像、已提取文件系统、二进制或 APK 由使用者自备。第三方声明称，源码树和发布包均不含固件镜像、内核或 U-Boot 二进制、专有模型文件或已提取的设备文件系统。BMC 仿真配置要求输入与指定 OpenBMC 或 ASUS BMC 镜像的 SHA-256 完全一致；README 提醒，仿真会执行不可信的厂商代码。","docs/epistemics.md 将结果视为有边界的观察：启动意图不能证明可达性，边缘 AI 命中不能说明模型会实际执行，shell 污点分析有意不追求可靠性、只报告弱候选，仿真验证器也只证明它在该次运行中检查过的内容。测试夹具为合成数据，包括用 arm-none-eabi-gcc 从仓库内 C 源码构建的 Cortex-M 镜像；仓库还附带一个预构建的 MIPS PID-1 跳板程序及其汇编源码。DEVELOPMENT.md 说明了本地运行的 cargo 测试，GitHub 工作流则用于构建发布包并做冒烟测试。","FAT 2.0 以 FSL-1.1-ALv2 源码可得方式发布，GitHub 将其识别为 NOASSERTION：除商业性的竞争用途外，允许使用、修改和再分发，且每个版本在 Attify 首次提供两年后也可按 Apache-2.0 使用。FAT 1.x 历史仍为 MIT，可选的 QEMU hook 插件源码采用 GPL-2.0-or-later，第三方依赖和外部资源保留各自条款。使用者需获得分析目标的授权。"],"targets":["binary","firmware"],"url":"https://github.com/attify/firmware-analysis-toolkit","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/ev-flow/quark-engine/blob/7accc95f104c6f30b8f64908ca022c30059121fd/docs/source/index.rst","https://github.com/ev-flow/quark-engine/blob/7accc95f104c6f30b8f64908ca022c30059121fd/docs/source/install.rst","https://github.com/ev-flow/quark-engine/blob/7accc95f104c6f30b8f64908ca022c30059121fd/docs/source/integration.rst","https://github.com/ev-flow/quark-engine/blob/7accc95f104c6f30b8f64908ca022c30059121fd/quark/core/quark.py","https://github.com/ev-flow/quark-engine/blob/7accc95f104c6f30b8f64908ca022c30059121fd/quark/rules/sendLocation_SMS.json","https://github.com/ev-flow/quark-engine/blob/7accc95f104c6f30b8f64908ca022c30059121fd/quark/freshquark.py","https://github.com/ev-flow/quark-engine/blob/7accc95f104c6f30b8f64908ca022c30059121fd/setup.py","https://github.com/ev-flow/quark-engine/blob/7accc95f104c6f30b8f64908ca022c30059121fd/quark-ai-plugin/README.md","https://github.com/ev-flow/quark-engine/blob/7accc95f104c6f30b8f64908ca022c30059121fd/quark/agent/quarkAgent.py","https://github.com/ev-flow/quark-engine/blob/7accc95f104c6f30b8f64908ca022c30059121fd/.github/workflows/pytest.yml","https://github.com/ev-flow/quark-engine/blob/7accc95f104c6f30b8f64908ca022c30059121fd/LICENSE","https://github.com/ev-flow/quark-engine/releases/tag/v26.10.1","https://pypi.org/project/quark-engine/26.10.1/"],"category":"android","description_en":"Rule-based engine for analysing suspicious Android apps: it loads an APK's Dalvik bytecode and checks JSON behaviour rules, each naming permissions and a pair of framework API calls, through five confidence stages, from the permission being requested and either API being called up to both calls appearing in order in one method and passing the same register. Weighted rule matches produce a threat score, with summary, detail, JSON, web, call-graph and label reports, and Quark Script exposes the analysis as a Python API that the project presents for finding vulnerabilities. The repository also ships two Claude Code skills, for running an analysis and generating a rule, and an optional LangChain agent that uses the OpenAI API.","description_zh":"基于规则分析可疑 Android 应用的引擎：载入 APK 的 Dalvik 字节码，用 JSON 行为规则逐条检查；每条规则列出若干权限和一对框架 API 调用，并按五个置信阶段判定，从申请了该权限、调用了其中一个 API，到两个调用在同一方法中按顺序出现并传递同一寄存器。加权后的规则命中结果给出威胁分数，并可输出摘要、详情、JSON、网页、调用图和标签报告；Quark Script 把这套分析以 Python API 形式提供，项目将其用于挖掘漏洞。仓库还附带两个 Claude Code 技能（分别用于运行分析和生成规则），以及一个可选的、调用 OpenAI API 的 LangChain 智能体。","entry_url":"https://awesomerea.org/resources/quark-engine/","entry_url_zh":"https://awesomerea.org/zh/resources/quark-engine/","evidence_url":"https://github.com/ev-flow/quark-engine/blob/7accc95f104c6f30b8f64908ca022c30059121fd/README.md","group":"tools","id":"quark-engine","json_url":"https://awesomerea.org/resources/quark-engine/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/quark-engine/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/quark-engine/index.md","name":"Quark-Engine","name_zh":"Quark-Engine Android 恶意软件分析引擎","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v26.10.1, published on GitHub and PyPI on 2026-10-10 and requiring Python 3.10+. The reviewed master commit of 2026-10-17 differs from it only by an added malware-family report in the documentation.","Install from PyPI, or from source with Pipenv, then run freshquark, which git-clones the separate quark-rules repository into a .quark-engine folder in the user's home directory. dextrace is the default core library, with Androguard 4.1.4 pinned, rizin and radare2 backends through optional extras plus the native tools, and a Shuriken backend; call graphs need Graphviz. The Quark Agent needs an OpenAI API key, and the Claude Code skills need Claude Code with Quark installed.","Input is one APK per run; the documentation scans directories with a shell loop or the Python API. Reports are static rule matches whose confidence counts the stages a rule passes, so coverage depends on the rule set; setup.py calls Quark an obfuscation-neglect scoring system. Suspicious samples belong in an isolated analysis environment, and the test suite downloads live malware and deliberately vulnerable APKs from a separate sample repository.","CI builds rizin 0.7.3 and radare2 5.9.0 and runs pytest with coverage on Python 3.10. The malware-family reports in the documentation are project analyses. GPL-3.0 per LICENSE and the setup.py classifier."],"requirements_zh":["审阅时最新版本为 v26.10.1，于 2026-10-10 发布到 GitHub 和 PyPI，要求 Python 3.10+。所审阅的 master 分支提交日期为 2026-10-17，与该版本相比只在文档中新增了一份恶意软件家族报告。","可从 PyPI 安装，或用 Pipenv 从源码安装，之后运行 freshquark，它会把独立的 quark-rules 仓库 git clone 到用户主目录下的 .quark-engine 文件夹。默认核心库为 dextrace，Androguard 固定为 4.1.4；rizin 和 radare2 后端需安装可选依赖及对应原生工具，另有 Shuriken 后端；生成调用图需要 Graphviz。Quark Agent 需要 OpenAI API 密钥，Claude Code 技能需要已安装 Quark 的 Claude Code 环境。","每次运行输入一个 APK；文档用 shell 循环或 Python API 扫描整个目录。报告是静态规则匹配的结果，置信度取决于规则通过的阶段数，因此覆盖范围取决于规则集；setup.py 称 Quark 是不受混淆影响的评分系统。可疑样本应在隔离的分析环境中处理；测试套件会从独立的样本仓库下载真实恶意软件和刻意留有漏洞的 APK。","CI 会构建 rizin 0.7.3 和 radare2 5.9.0，并在 Python 3.10 上运行带覆盖率统计的 pytest。文档中的恶意软件家族报告是项目自行完成的分析。LICENSE 和 setup.py 的分类信息均为 GPL-3.0。"],"targets":["app"],"url":"https://github.com/ev-flow/quark-engine","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/hasherezade/hollows_hunter/wiki/Home/33d85ea58ca60980d911348a867488b957f13639","https://github.com/hasherezade/hollows_hunter/blob/831561cd0c63d0d9c257ad3bc963327bd828b491/CMakeLists.txt","https://github.com/hasherezade/hollows_hunter/blob/831561cd0c63d0d9c257ad3bc963327bd828b491/.appveyor.yml","https://github.com/hasherezade/hollows_hunter/blob/831561cd0c63d0d9c257ad3bc963327bd828b491/.gitmodules","https://github.com/hasherezade/hollows_hunter/blob/831561cd0c63d0d9c257ad3bc963327bd828b491/mingw_build.sh","https://github.com/hasherezade/hollows_hunter/blob/831561cd0c63d0d9c257ad3bc963327bd828b491/hh_ver_short.h","https://github.com/hasherezade/hollows_hunter/blob/831561cd0c63d0d9c257ad3bc963327bd828b491/LICENSE","https://github.com/hasherezade/hollows_hunter/releases/tag/v0.4.1.1","https://github.com/hasherezade/pe-sieve/blob/98788a6ef98cd3c1a0ee481dc5a6847cb4f92432/README.md","https://github.com/microsoft/krabsetw/blob/6900de05d8ad7a38867719974f0406d5fd57af02/LICENSE"],"category":"dynamic-analysis","description_en":"Windows command-line memory scanner by hasherezade that runs the PE-sieve engine across many processes, or the whole system, instead of a single PID. It recognizes and dumps replaced or implanted PE modules, shellcode, hooks and other in-memory patches for further analysis, selecting processes by PID list, name list or creation time relative to the scan. Scans can repeat in a loop or, in the 64-bit build, run as an ETW listener whose INI profile chooses the triggering events.","description_zh":"hasherezade 开发的 Windows 命令行内存扫描器，把 PE-sieve 引擎从单个 PID 扩展到多个进程乃至整个系统。它识别并转储被替换或植入的 PE 模块、shellcode、钩子及其他内存补丁，供进一步分析，可按 PID 列表、进程名列表或相对于扫描开始时间的进程创建时间选择目标。扫描可以循环执行；64 位版本还能作为 ETW 监听器运行，由 INI 配置文件选择触发扫描的事件。","entry_url":"https://awesomerea.org/resources/hollows-hunter/","entry_url_zh":"https://awesomerea.org/zh/resources/hollows-hunter/","evidence_url":"https://github.com/hasherezade/hollows_hunter/blob/831561cd0c63d0d9c257ad3bc963327bd828b491/README.md","group":"tools","id":"hollows-hunter","json_url":"https://awesomerea.org/resources/hollows-hunter/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/hollows-hunter/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hollows-hunter/index.md","name":"Hollows Hunter","name_zh":"Hollows Hunter 进程内存植入扫描器","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.4.1.1, published 2025-09-13, with 32- and 64-bit executables, ZIP archives and DLL-build archives; the README also points to a Chocolatey package, and the wiki to unstable AppVeyor test builds. The reviewed master commit identifies itself as the unreleased 0.4.1.3, 37 commits later and mostly PE-sieve submodule updates.","Windows only. Source builds need a recursive clone with the pinned PE-sieve, paramkit and Microsoft krabsetw submodules, plus CMake 3.12+; AppVeyor builds x86 and x64 with Visual Studio 2019, and mingw_build.sh shows a MinGW-w64 cross-build. ETW mode works only in the 64-bit build, must run as Administrator and writes HH_ETWProfile.ini to the current directory.","It scans processes running on the analyst's own system or VM, and the repository holds no samples. Hook and patch scanning is off by default and enabled with /hooks, dumps go to the current directory unless /dir is given, and the wiki calls looped full-system scans processor-intensive. The wiki warns that detected processes are not necessarily malicious and links PE-sieve's false-positive FAQ, so reports and dumps need review; the optional /suspend and /kill responses act on live processes.","AppVeyor runs ctest after each build: the tests check that the executable starts and that scans of the clean build machine report zero suspicious processes, then run IAT, hook, thread and shellcode-pattern scans that only check the report format. The only GitHub workflow publishes Doxygen code documentation.","BSD-2-Clause, like PE-sieve; krabsetw is MIT, and the pinned paramkit commit has no license file."],"requirements_zh":["审阅时最新版本为 v0.4.1.1，发布于 2025-09-13，提供 32 位和 64 位可执行文件、ZIP 压缩包以及 DLL 构建压缩包；README 还指向 Chocolatey 软件包，wiki 则提到不稳定的 AppVeyor 测试构建。所审阅的 master 提交标为尚未发布的 0.4.1.3，比该版本多 37 个提交，主要是 PE-sieve 子模块更新。","仅支持 Windows。从源码构建需递归克隆固定版本的 PE-sieve、paramkit 和 Microsoft krabsetw 子模块，并需要 CMake 3.12+；AppVeyor 使用 Visual Studio 2019 构建 x86 和 x64 版本，mingw_build.sh 展示了 MinGW-w64 交叉编译。ETW 模式仅适用于 64 位版本，需以管理员身份运行，并在当前目录写入 HH_ETWProfile.ini。","它扫描的是分析者自己系统或虚拟机中正在运行的进程，仓库中不含任何样本。钩子与补丁扫描默认关闭，需用 /hooks 启用；未指定 /dir 时转储写入当前目录；wiki 指出循环扫描全系统会占用大量处理器资源。wiki 提醒检测到的进程不一定是恶意的，并链接 PE-sieve 关于误报的 FAQ，因此报告和转储需人工复核；可选的 /suspend 与 /kill 会直接作用于正在运行的进程。","AppVeyor 在每次构建后运行 ctest：测试检查可执行文件能否启动，以及在干净的构建机上扫描时可疑进程数是否为零，随后执行 IAT、钩子、线程和 shellcode 模式扫描，但只检查报告格式。唯一的 GitHub 工作流用于发布 Doxygen 代码文档。","与 PE-sieve 一样采用 BSD-2-Clause；krabsetw 采用 MIT，固定版本的 paramkit 提交没有许可证文件。"],"targets":["binary"],"url":"https://github.com/hasherezade/hollows_hunter","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/alphaSeclab/awesome-reverse-engineering/blob/1a7445d2c7e3e42350a2556c70b469fb3429d49a/Readme_full_en.md","https://github.com/alphaSeclab/awesome-reverse-engineering/blob/1a7445d2c7e3e42350a2556c70b469fb3429d49a/Readme.md","https://github.com/alphaSeclab/awesome-reverse-engineering/blob/1a7445d2c7e3e42350a2556c70b469fb3429d49a/Readme_full.md","https://github.com/alphaSeclab/awesome-reverse-engineering/commit/1a7445d2c7e3e42350a2556c70b469fb3429d49a"],"category":"related-lists","description_en":"Large reverse-engineering link list, auto-exported in 2019 in English and Chinese, with abridged and full README versions. The full English README lists about 3,600 open-source tools and 2,300 posts and videos, grouped under Windows, Linux, Apple platforms and Android, and under tool sections for IDA, Ghidra, x64dbg, OllyDbg, WinDbg, radare2, Cuckoo, Binary Ninja and dynamic binary instrumentation. Tool rows carry a star count, language and upstream description captured at export time.","description_zh":"规模很大的逆向工程链接清单，2019 年以中英文自动导出，分精简版和完整版 README。完整英文版列出约 3600 个开源工具和 2300 篇文章及视频，按 Windows、Linux、Apple 平台和 Android 分组，并为 IDA、Ghidra、x64dbg、OllyDbg、WinDbg、radare2、Cuckoo、Binary Ninja 及动态二进制插桩设有工具专区。工具条目附有导出时记录的 Star 数、编程语言和上游简介。","entry_url":"https://awesomerea.org/resources/alphaseclab-awesome-reverse-engineering/","entry_url_zh":"https://awesomerea.org/zh/resources/alphaseclab-awesome-reverse-engineering/","evidence_url":"https://github.com/alphaSeclab/awesome-reverse-engineering/blob/1a7445d2c7e3e42350a2556c70b469fb3429d49a/Readme_en.md","group":"learn","id":"alphaseclab-awesome-reverse-engineering","json_url":"https://awesomerea.org/resources/alphaseclab-awesome-reverse-engineering/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/alphaseclab-awesome-reverse-engineering/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/alphaseclab-awesome-reverse-engineering/index.md","name":"awesome-reverse-engineering (alphaSeclab)","name_zh":"awesome-reverse-engineering 全平台逆向资源清单（alphaSeclab）","record_type":"resource","relationship":"learning","requirements":["The latest master commit dates from 2019-12-31; GitHub reports a later push in 2021, but master holds no newer commit and the list has not been updated since. Its star counts, update ages and links reflect that export, so many may be out of date.","Readme_en.md and the Chinese Readme.md are abridged pages; the English one has 675 tool rows and 684 post rows. Readme_full_en.md and Readme_full.md hold the complete list, with 3,619 tool rows and 2,310 dated post rows in English. Post rows give a month, a source site and a title, and many point to Chinese forums such as Kanxue and Anquanke.","The README says the contents are auto-exported by the maintainers' system. Rows are list entries: they state no license, maintenance status or verification.","No license file is present and GitHub detects none, so the list states no reuse terms; linked projects and posts keep their own rights. An independent discovery list."],"requirements_zh":["master 分支最新提交日期为 2019-12-31；GitHub 记录到 2021 年的一次推送，但 master 上没有更新的提交，清单此后未再更新。其中的 Star 数、更新时间和链接均反映当时的导出结果，许多可能已经过时。","Readme_en.md 和中文的 Readme.md 是精简版，英文精简版有 675 条工具和 684 条文章条目。Readme_full_en.md 和 Readme_full.md 收录完整清单，英文完整版有 3619 条工具条目和 2310 条注明日期的文章条目。文章条目给出月份、来源网站和标题，其中许多指向看雪、安全客等中文论坛。","README 称内容由维护者的系统自动导出。这些只是清单条目：条目未注明许可证、维护状态或验证情况。","仓库没有许可证文件，GitHub 也未识别出许可证，因此清单未声明复用条款；所链接的项目和文章保留各自权利。这是独立的发现清单。"],"targets":["app","binary"],"url":"https://github.com/alphaSeclab/awesome-reverse-engineering","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/tobefuturer/restore-symbol/blob/83ccb9085339750fd777b0707641b68c7661a388/source/restore-symbol.m","https://github.com/tobefuturer/restore-symbol/blob/83ccb9085339750fd777b0707641b68c7661a388/makefile","https://github.com/tobefuturer/restore-symbol/blob/83ccb9085339750fd777b0707641b68c7661a388/.gitmodules","https://github.com/tobefuturer/restore-symbol/blob/83ccb9085339750fd777b0707641b68c7661a388/restore-symbol.xcodeproj/project.pbxproj","https://github.com/tobefuturer/restore-symbol/blob/83ccb9085339750fd777b0707641b68c7661a388/search_oc_block/ida_search_block.py","https://github.com/0xced/class-dump/blob/a8877b6695f317816322134944a410de09da4911/README.md"],"category":"native-analysis","description_en":"macOS command-line tool that writes a stripped iOS app's Mach-O executable back out with a rebuilt symbol table, so a debugger such as lldb can break on and display Objective-C method names. It recovers method names and addresses from the binary's Objective-C metadata through class-dump, and can merge extra name and address pairs from a JSON file, such as the block symbols found by the bundled IDA script.","description_zh":"运行于 macOS 的命令行工具，为已剥离符号的 iOS 应用 Mach-O 可执行文件重建符号表并输出新文件，使 lldb 等调试器能按 Objective-C 方法名设置断点并显示名称。它借助 class-dump 从二进制的 Objective-C 元数据中恢复方法名和地址，也可以从 JSON 文件合并额外的名称与地址，例如随附 IDA 脚本找到的 block 符号。","entry_url":"https://awesomerea.org/resources/restore-symbol/","entry_url_zh":"https://awesomerea.org/zh/resources/restore-symbol/","evidence_url":"https://github.com/tobefuturer/restore-symbol/blob/83ccb9085339750fd777b0707641b68c7661a388/README.md","group":"tools","id":"restore-symbol","json_url":"https://awesomerea.org/resources/restore-symbol/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/restore-symbol/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/restore-symbol/index.md","name":"restore-symbol","name_zh":"restore-symbol iOS 符号表恢复工具","record_type":"resource","relationship":"foundation","requirements":["There are no releases or tags; the reviewed master commit of 2019-04-27 is the latest, and the repository has no tests or CI. The README covers Objective-C methods and blocks only and does not mention Swift symbols.","Builds on macOS with Xcode: make initializes the pinned class-dump submodule (0xced's fork) and runs xcodebuild on a project targeting macOS 10.11. The block-symbol script search_oc_block/ida_search_block.py runs inside IDA, uses Python 2 print statements and the legacy idaapi.get_inf_structure call, and writes block_symbol.json.","Input is a thin armv7 or arm64 Mach-O executable from an app the user is authorized to analyze; the tool rejects fat files with a request to thin them using lipo, and writes a new output file instead of changing the input. The README then re-signs the bundle with the user's own developer certificate and debugs it on a device with lldb. The repository contains source and a README screenshot, no app binaries.","There is no license file and GitHub detects none, so reuse terms for restore-symbol's own code are not stated; the build links the MachObjC library from the class-dump submodule, which is GPL-2.0-or-later."],"requirements_zh":["项目没有发布版本或标签；所审阅的 2019-04-27 master 提交即最新提交，仓库也没有测试或 CI。README 只涉及 Objective-C 方法和 block，没有提到 Swift 符号。","需在 macOS 上用 Xcode 构建：make 会初始化固定版本的 class-dump 子模块（0xced 的分支），并用 xcodebuild 构建面向 macOS 10.11 的工程。block 符号脚本 search_oc_block/ida_search_block.py 在 IDA 中运行，使用 Python 2 的 print 语句和旧版 idaapi.get_inf_structure 调用，并输出 block_symbol.json。","输入是使用者有权分析的应用中的单架构 armv7 或 arm64 Mach-O 可执行文件；遇到 fat 文件时工具会拒绝处理并提示先用 lipo 拆分，处理结果写入新的输出文件而不改动输入文件。README 随后用使用者自己的开发者证书重新签名应用包，并在设备上用 lldb 调试。仓库只有源码和 README 截图，不含任何应用二进制。","仓库没有许可证文件，GitHub 也未识别出许可证，因此 restore-symbol 自身代码的复用条款未说明；构建会链接 class-dump 子模块中的 MachObjC 库，该库采用 GPL-2.0-or-later。"],"targets":["app","binary"],"url":"https://github.com/tobefuturer/restore-symbol","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-02","category":"related-lists","description_en":"A single-README list of Android and iOS application security resources, about 245 links in all, divided by platform into blogs, papers and how-tos, books, courses, tools, deliberately vulnerable lab apps, talks and miscellany. Android tools are further split into static analysis, dynamic analysis and online APK analyzers, and reverse-engineering entries such as smali/baksmali, radare2, Cutter, Bytecode Viewer, Frida and Objection sit alongside pentesting guides and vulnerability write-ups.","description_zh":"以单个 README 维护的 Android 与 iOS 应用安全资源清单，共约 245 个链接，按平台分为博客、论文与教程、书籍、课程、工具、故意留有漏洞的练习应用、演讲及杂项。Android 工具又细分为静态分析、动态分析和在线 APK 分析服务；smali/baksmali、radare2、Cutter、Bytecode Viewer、Frida、Objection 等逆向工程条目与渗透测试指南和漏洞分析文章并列。","entry_url":"https://awesomerea.org/resources/awesome-mobile-security/","entry_url_zh":"https://awesomerea.org/zh/resources/awesome-mobile-security/","evidence_url":"https://github.com/vaib25vicky/awesome-mobile-security/blob/490ed366b448d4635a8263be62c51a92a619d060/README.md","group":"learn","id":"awesome-mobile-security","json_url":"https://awesomerea.org/resources/awesome-mobile-security/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/awesome-mobile-security/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/awesome-mobile-security/index.md","name":"awesome-mobile-security","name_zh":"awesome-mobile-security 移动应用安全资源清单","record_type":"resource","relationship":"learning","requirements":["The reviewed README, last changed 2021-01-20, has 168 Android and 78 iOS list entries, a few of them repeated. It has not changed since, so listed versions and services date from that time; for example, it names Magisk v20.2.","Entries give a name and link, sometimes with a short note, and state no license, maintenance status, platform requirement or test result. The list mixes open-source projects, commercial and online scanning services, books, courses and conference talks, and includes rooting and jailbreak tools, so check each resource's own terms and use it only on devices and apps you are authorized to test.","The repository holds only README.md and has no license file, so the list states no reuse terms; its GitHub description says the references and tools belong to their respective owners."],"requirements_zh":["所审阅的 README 最后修改于 2021-01-20，含 168 个 Android 条目和 78 个 iOS 条目，其中少数重复。此后再未更新，因此所列版本和服务都停留在当时，例如仍写作 Magisk v20.2。","条目只有名称和链接，有时附简短说明，未注明许可证、维护状态、平台要求或测试结果。清单混合了开源项目、商业及在线扫描服务、书籍、课程和会议演讲，也收录 root 与越狱工具，因此需查看各资源自身的条款，并只在有权测试的设备和应用上使用。","仓库只有 README.md，没有许可证文件，因此清单本身未声明复用条款；其 GitHub 简介称所列参考资料和工具归各自所有者所有。"],"targets":["app"],"url":"https://github.com/vaib25vicky/awesome-mobile-security","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/reversenseorg/dexcalibur/blob/2408f791ba869e7dba8f901332e44a5fee96a973/package.json","https://github.com/reversenseorg/dexcalibur/blob/2408f791ba869e7dba8f901332e44a5fee96a973/.nvmrc","https://github.com/reversenseorg/dexcalibur/blob/2408f791ba869e7dba8f901332e44a5fee96a973/TESTED.md","https://github.com/reversenseorg/dexcalibur/blob/2408f791ba869e7dba8f901332e44a5fee96a973/LICENSE","https://github.com/reversenseorg/dexcalibur/blob/2408f791ba869e7dba8f901332e44a5fee96a973/3TH_LICENSES.md","https://github.com/reversenseorg/dexcalibur/blob/2408f791ba869e7dba8f901332e44a5fee96a973/scripts/prepare_thirdparty.sh","https://github.com/reversenseorg/dexcalibur/blob/2408f791ba869e7dba8f901332e44a5fee96a973/docker/Docker-compose.yml","https://github.com/reversenseorg/dexcalibur/blob/2408f791ba869e7dba8f901332e44a5fee96a973/.github/workflows/CI.yml","https://github.com/reversenseorg/dexcalibur/tree/2408f791ba869e7dba8f901332e44a5fee96a973/inspectors","https://github.com/reversenseorg/dexcalibur/tree/2408f791ba869e7dba8f901332e44a5fee96a973/test/ws","https://github.com/reversenseorg/dexcalibur/commit/2408f791ba869e7dba8f901332e44a5fee96a973","https://github.com/reversenseorg/dexcalibur/releases/tag/v0.7.10","https://github.com/reversenseorg/rs-doc/blob/e33b0d15e84ed49aa43d9733b94a9df1b884e42e/docs/getting-started/installation.md"],"category":"android","description_en":"Android reverse-engineering platform that combines static analysis with Frida-based dynamic instrumentation; the master branch is Reversense (Dexcalibur 2.0), a rewrite that runs as a Node.js web server for collaborative projects. Its README describes modeling an app's files, Smali and native code into one searchable representation with Radare2 integration, generating hooks for Java methods, Objective-C and native functions, and building dynamic cross-references from traces collected on attached devices. Inspector plugins in the repository observe areas such as permissions, cryptography, file-system, network and UI activity.","description_zh":"结合静态分析与基于 Frida 的动态插桩的 Android 逆向分析平台；master 分支是重写后的 Reversense（Dexcalibur 2.0），以 Node.js Web 服务形式运行，支持多人协作项目。README 介绍了如何把应用的文件、Smali 和原生代码建模为统一的可搜索表示（集成 Radare2），为 Java 方法、Objective-C 和原生函数生成钩子，并依据在已连接设备上采集的跟踪构建动态交叉引用。仓库中的 Inspector 插件分别观察权限、加密、文件系统、网络和界面等方面的活动。","entry_url":"https://awesomerea.org/resources/dexcalibur/","entry_url_zh":"https://awesomerea.org/zh/resources/dexcalibur/","evidence_url":"https://github.com/reversenseorg/dexcalibur/blob/2408f791ba869e7dba8f901332e44a5fee96a973/README.md","group":"tools","id":"dexcalibur","json_url":"https://awesomerea.org/resources/dexcalibur/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dexcalibur/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dexcalibur/index.md","name":"Dexcalibur (Reversense)","name_zh":"Dexcalibur（Reversense）Android 逆向分析平台","record_type":"resource","relationship":"foundation","requirements":["The latest GitHub release and npm package are still the original Dexcalibur v0.7.10 (2021-09-27, Apache-2.0 in its package metadata); the reviewed master commit (2026-10-02) declares the unreleased 2.0.0 rewrite. Its README getting-started, prerequisite and installation sections, and the installation page of the linked documentation site, are unfinished placeholders, and TESTED.md lists only a short set of basic engine, web-server, platform, device, project and ADB-bridge checks.","package.json targets Node.js on macOS, Linux and Windows (.nvmrc pins 22.14.0), and the reviewed commit adds Deno as a second runner; the documentation site says Windows is not officially supported. The README asks for a .dexcalibur settings folder in the user's home directory and names Frida 16.1.4, while package.json depends on frida ^17.6.2. MongoDB backs the project database (the Docker Compose file uses MongoDB 6.0.9), OpenID Connect with KeyCloak provides SSO, and the web UIs and device agent are built from separate reversenseorg repositories.","Analysis starts from the user's own app package and, for dynamic work, an Android device or emulator reachable over ADB with Frida. The third-party setup script downloads Android platform-tools, apktool 2.7.0, baksmali 2.5.2 and binwalk from their upstream hosts. The repository's test workspace bundles apktool.jar, OWASP's UnCrackable Level 1 training APK with its apktool-decoded files, and small ELF, Mach-O, plist and nib parser fixtures.","The 2.0 source is AGPL-3.0-only; the third-party notice covers EFF's apkeep (MIT). README features such as automated SAST/DAST scanning, device-farm management and the built-in MCP server are project-reported, and Reversense offers professional support and modules separately. Intended for apps the analyst is authorized to inspect."],"requirements_zh":["GitHub 最新发布版和 npm 包仍是初代 Dexcalibur v0.7.10（2021-09-27，其包元数据标注 Apache-2.0）；所审阅的 master 提交（2026-10-02）声明为尚未发布的 2.0.0 重写版。README 中的入门、前置条件和安装章节，以及所链接文档站的安装页面，都还是未完成的占位内容；TESTED.md 只列出少量引擎、Web 服务、平台、设备、项目和 ADB 桥接方面的基本检查项。","package.json 面向 macOS、Linux 和 Windows 上的 Node.js（.nvmrc 固定为 22.14.0），所审阅的提交还把 Deno 加为第二种运行时；文档站称 Windows 不受官方支持。README 要求先在用户主目录下创建 .dexcalibur 设置目录，并写明 Frida 16.1.4，而 package.json 依赖 frida ^17.6.2。项目数据库使用 MongoDB（Docker Compose 文件采用 MongoDB 6.0.9），SSO 通过 OpenID Connect 与 KeyCloak 实现，Web 界面和设备端代理则由 reversenseorg 下的其他仓库构建。","分析从使用者自备的应用包开始；动态分析还需要一台可通过 ADB 连接并运行 Frida 的 Android 设备或模拟器。第三方组件准备脚本会从各自的上游地址下载 Android platform-tools、apktool 2.7.0、baksmali 2.5.2 和 binwalk。仓库的测试工作区附带 apktool.jar、OWASP 的 UnCrackable Level 1 训练 APK 及其经 apktool 解码的文件，以及用于解析器测试的小型 ELF、Mach-O、plist 和 nib 样本。","2.0 源码采用 AGPL-3.0-only 许可；第三方声明涉及 EFF 的 apkeep（MIT）。自动化 SAST/DAST 扫描、设备农场管理和内置 MCP 服务器等 README 功能均为项目自述，Reversense 另行提供专业支持和付费模块。仅用于分析者有权检查的应用。"],"targets":["app"],"url":"https://github.com/reversenseorg/dexcalibur","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/mandiant/flare-fakenet-ng/blob/7c8e006198b9df6e7b511140288fc5113c25d729/fakenet/configs/default.ini","https://github.com/mandiant/flare-fakenet-ng/blob/7c8e006198b9df6e7b511140288fc5113c25d729/CHANGELOG.txt","https://github.com/mandiant/flare-fakenet-ng/blob/7c8e006198b9df6e7b511140288fc5113c25d729/docs/testing.md","https://github.com/mandiant/flare-fakenet-ng/blob/7c8e006198b9df6e7b511140288fc5113c25d729/docs/CustomResponse.md","https://github.com/mandiant/flare-fakenet-ng/blob/7c8e006198b9df6e7b511140288fc5113c25d729/.github/workflows/build.yaml","https://github.com/mandiant/flare-fakenet-ng/tree/7c8e006198b9df6e7b511140288fc5113c25d729/windivert","https://github.com/mandiant/flare-fakenet-ng/tree/7c8e006198b9df6e7b511140288fc5113c25d729/fakenet/defaultFiles","https://github.com/mandiant/flare-fakenet-ng/blob/7c8e006198b9df6e7b511140288fc5113c25d729/setup.py","https://github.com/mandiant/flare-fakenet-ng/blob/7c8e006198b9df6e7b511140288fc5113c25d729/LICENSE.txt","https://github.com/mandiant/flare-fakenet-ng/releases/tag/v3.5"],"category":"dynamic-analysis","description_en":"Mandiant FLARE's dynamic network analysis tool for malware analysts, a successor to the original Fakenet. Its Diverter redirects traffic from local processes on Windows, or from other hosts in Linux MultiHost mode, to configurable listeners that simulate DNS, HTTP and HTTPS, SMTP, FTP, TFTP, IRC, POP and raw TCP or UDP services, with process and host filters, custom responses and an option to launch a command such as a debugger on a connection. Sessions can be saved as PCAP and end with an interactive HTML report of network-based indicators grouped by process and protocol.","description_zh":"Mandiant FLARE 团队面向恶意软件分析人员的动态网络分析工具，是原版 Fakenet 的后继。其 Diverter 将 Windows 本机进程的流量，或在 Linux MultiHost 模式下将其他主机的流量，重定向到可配置的监听器；这些监听器模拟 DNS、HTTP 与 HTTPS、SMTP、FTP、TFTP、IRC、POP 以及原始 TCP 或 UDP 服务，并支持进程和主机过滤、自定义响应，以及在连接到来时启动调试器等命令。会话可保存为 PCAP，结束时生成交互式 HTML 报告，按进程和协议归类展示网络行为指标。","entry_url":"https://awesomerea.org/resources/fakenet-ng/","entry_url_zh":"https://awesomerea.org/zh/resources/fakenet-ng/","evidence_url":"https://github.com/mandiant/flare-fakenet-ng/blob/7c8e006198b9df6e7b511140288fc5113c25d729/README.md","group":"tools","id":"fakenet-ng","json_url":"https://awesomerea.org/resources/fakenet-ng/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/fakenet-ng/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fakenet-ng/index.md","name":"FakeNet-NG","name_zh":"FakeNet-NG 动态网络分析工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v3.5, published 2025-04-09, as fakenet3.5.zip with a PyInstaller fakenet.exe for Windows. The reviewed master commit, 11 commits later and still versioned 3.5, adds a Windows release-build workflow, CRL generation for TLS revocation checks and SingleHost as the default NetworkMode, although the README still recommends Auto.","Module installs use Python 3.10.11 and administrator rights; Windows needs the Visual C++ build tools, and Linux needs build tools, Python and libnetfilter-queue development packages and port 53 freed from systemd-resolved, with the README's Linux steps tested on Ubuntu 24.04.2. SingleHost mode needs Windows Vista or later and is experimental on Linux, without process and host filtering; MultiHost is Linux-only, only TCP, UDP and ICMP are intercepted, and the Linux Diverter mishandles packets over 4,016 bytes.","The README recommends a controlled, isolated VM, because the tool changes the system's network settings, and says antivirus and EDR products may flag it. The repository bundles runtime helpers: WinDivert 32- and 64-bit DLLs and drivers, a small FakeNetMini.exe and other placeholder files served from defaultFiles, and TLS listener keys plus a static CA certificate and private key. The repository states no separate license for the WinDivert files, and the README notes that some dynamically loaded libraries may be LGPL; since the CA private key is public, trust that CA only inside the analysis VM.","docs/testing.md describes an interactive test/test.py suite and manual tests on Windows and Linux VMs on a host-only network; the GitHub workflow only builds the Windows PyInstaller release. FakeNet-NG itself is Apache-2.0."],"requirements_zh":["审阅时最新版本为 v3.5，发布于 2025-04-09，以 fakenet3.5.zip 提供基于 PyInstaller 的 Windows 版 fakenet.exe。所审阅的 master 提交比该版本多 11 个提交，版本号仍为 3.5，新增了 Windows 发布构建工作流、用于 TLS 吊销检查的 CRL 生成，并把默认 NetworkMode 改为 SingleHost，而 README 仍建议使用 Auto。","以 Python 模块安装时使用 Python 3.10.11 并需要管理员权限；Windows 需安装 Visual C++ 构建工具，Linux 需安装编译工具、Python 与 libnetfilter-queue 开发包，并让 systemd-resolved 释放 53 端口，README 的 Linux 步骤在 Ubuntu 24.04.2 上测试过。SingleHost 模式需要 Windows Vista 或更高版本，在 Linux 上仍属实验性且不支持进程与主机过滤；MultiHost 仅支持 Linux，只拦截 TCP、UDP 和 ICMP 流量，Linux Diverter 无法正确处理超过 4,016 字节的数据包。","README 建议在受控、隔离的虚拟机中使用，因为该工具会修改系统网络设置，并提到杀毒软件和 EDR 产品可能将其标记为恶意。仓库附带运行时所需的辅助文件：WinDivert 32 位与 64 位 DLL 和驱动、defaultFiles 中用于响应请求的小型 FakeNetMini.exe 及其他占位文件，以及 TLS 监听器密钥和一套静态 CA 证书与私钥。仓库未说明 WinDivert 文件的单独许可证，README 提到部分动态加载的库可能采用 LGPL；由于该 CA 私钥是公开的，只应在分析虚拟机内信任此 CA。","docs/testing.md 介绍了交互式 test/test.py 测试套件，以及在仅主机网络中的 Windows 与 Linux 虚拟机上进行的手动测试；GitHub 工作流只构建 Windows 的 PyInstaller 发布包。FakeNet-NG 本身采用 Apache-2.0。"],"targets":["binary","protocol"],"url":"https://github.com/mandiant/flare-fakenet-ng","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-02","additional_evidence_urls":["https://docs.joern.io/","https://github.com/joernio/joern/blob/7f886b32b02ec770668dbc79176273cb8c62e319/joern-cli/frontends/ghidra2cpg/README.md","https://github.com/joernio/joern/blob/7f886b32b02ec770668dbc79176273cb8c62e319/joern-cli/frontends/ghidra2cpg/src/main/scala/io/joern/ghidra2cpg/Ghidra2Cpg.scala#L135-L146","https://github.com/joernio/joern/blob/7f886b32b02ec770668dbc79176273cb8c62e319/joern-cli/frontends/jimple2cpg/src/main/scala/io/joern/jimple2cpg/Jimple2Cpg.scala#L102-L104","https://github.com/joernio/joern/blob/7f886b32b02ec770668dbc79176273cb8c62e319/joern-cli/build.sbt#L44-L57","https://github.com/joernio/joern/blob/7f886b32b02ec770668dbc79176273cb8c62e319/project/Versions.scala#L20","https://github.com/joernio/joern/blob/7f886b32b02ec770668dbc79176273cb8c62e319/joern-cli/src/main/scala/io/joern/joerncli/JoernExport.scala#L34-L50","https://github.com/joernio/joern/blob/7f886b32b02ec770668dbc79176273cb8c62e319/CITATION.cff","https://github.com/joernio/joern/blob/7f886b32b02ec770668dbc79176273cb8c62e319/LICENSE","https://github.com/joernio/joern/releases/tag/v4.0.660"],"category":"native-analysis","description_en":"Static code analysis platform that parses source code, JVM bytecode and executables into code property graphs held in a graph database and queried with a Scala-based language from an interactive shell or server mode. Frontends cover C/C++, Java, JavaScript, Python, Kotlin, PHP, Go, Ruby, Swift, C#, Rust and ABAP source, JVM bytecode and APK/DEX files through Soot, and binaries loaded through an embedded Ghidra, which the documentation lists as x86/x64 support. It adds a static taint-tracking engine, the joern-scan query database of vulnerability patterns, and export of AST, CFG, PDG or whole-graph views to DOT, GraphML, GraphSON or Neo4j CSV.","description_zh":"静态代码分析平台，将源代码、JVM 字节码和可执行文件解析为代码属性图并存入图数据库，可在交互式 shell 或服务器模式下用基于 Scala 的查询语言检索。前端覆盖 C/C++、Java、JavaScript、Python、Kotlin、PHP、Go、Ruby、Swift、C#、Rust 和 ABAP 源码，借助 Soot 处理 JVM 字节码及 APK/DEX 文件，并通过内置的 Ghidra 加载二进制文件，文档将这部分列为 x86/x64 支持。它还提供静态污点追踪引擎、收录漏洞模式的 joern-scan 查询库，并可将 AST、CFG、PDG 或整图导出为 DOT、GraphML、GraphSON 或 Neo4j CSV。","entry_url":"https://awesomerea.org/resources/joern/","entry_url_zh":"https://awesomerea.org/zh/resources/joern/","evidence_url":"https://github.com/joernio/joern/blob/7f886b32b02ec770668dbc79176273cb8c62e319/README.md","group":"tools","id":"joern","json_url":"https://awesomerea.org/resources/joern/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/joern/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/joern/index.md","name":"Joern","name_zh":"Joern 代码属性图分析平台","record_type":"resource","relationship":"foundation","requirements":["Release at review: v4.0.660, published 2026-10-19; the README says releases are created automatically once a day, and the reviewed master commit is three commits ahead of that tag. Each release ships joern-cli zips for Linux, macOS and Windows on x86_64 and arm64 plus joern-install.sh, and the README also documents ghcr.io/joernio/joern Docker images, with an AlmaLinux 8 variant for CPUs without SSE4.2.","The README requires JDK 21 and says other versions have not been properly tested; gcc and g++ are optional, for discovering C/C++ system headers. Source builds use sbt, with an experimental partial Bazel setup. Inputs are the user's own source trees, class, JAR, APK or DEX files, or executables.","Binary support is the ghidra2cpg frontend, built on a bundled Ghidra 12.2 package. It has specific passes for MIPS and ARM/AArch64 and routes every other processor through its x86 pass; its README notes that varargs are not handled properly. The documentation's maturity table rates C/C++ and Java very high, JavaScript, Python and x86/x64 via Ghidra high, JVM bytecode, Kotlin, PHP, Go and Swift medium, and Ruby and C# medium-low; the Rust and ABAP frontends in the reviewed tree are not rated there.","Apache-2.0; CITATION.cff still names version 2.0, released 2024-01-18. The project describes itself as a tool for vulnerability discovery and static program analysis research; query and taint results describe the generated graph, not observed runtime behavior."],"requirements_zh":["审阅时的版本为 v4.0.660，发布于 2026-10-19；README 称每天自动生成一次发布，所审阅的 master 提交比该标签多三个提交。每个版本都提供适用于 Linux、macOS 和 Windows（x86_64 与 arm64）的 joern-cli 压缩包及 joern-install.sh；README 还介绍了 ghcr.io/joernio/joern Docker 镜像，并为不支持 SSE4.2 的 CPU 提供 AlmaLinux 8 版本。","README 要求 JDK 21，并称其他版本未经充分测试；gcc 和 g++ 为可选项，用于查找 C/C++ 系统头文件。从源码构建使用 sbt，另有实验性的部分 Bazel 构建配置。输入为使用者自己的源码目录、class、JAR、APK 或 DEX 文件，或可执行文件。","二进制支持由 ghidra2cpg 前端提供，基于随附的 Ghidra 12.2 软件包。它为 MIPS 和 ARM/AArch64 设有专门的处理流程，其他处理器一律走 x86 流程；其 README 指出可变参数尚未正确处理。文档中的成熟度表将 C/C++ 和 Java 评为很高，JavaScript、Python 以及基于 Ghidra 的 x86/x64 评为高，JVM 字节码、Kotlin、PHP、Go 和 Swift 评为中等，Ruby 和 C# 评为中低；所审源码中的 Rust 和 ABAP 前端未在表中评级。","采用 Apache-2.0 许可；CITATION.cff 仍写着 2024-01-18 发布的 2.0 版。项目自称用于漏洞挖掘和静态程序分析研究；查询与污点分析结果反映的是生成的代码图，而非实际运行行为。"],"targets":["app","binary"],"url":"https://github.com/joernio/joern","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/plugin.json","https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/setup.py","https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/requirements.txt","https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/__init__.py","https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/reverser_ai/binary_ninja/__init__.py","https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/reverser_ai/binary_ninja/function_name_gpt_wrapper.py","https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/reverser_ai/gpt/function_name_gpt.py","https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/reverser_ai/gpt/models.py","https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/examples/README.md","https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/.github/workflows/ci.yml","https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/LICENSE","https://github.com/mrphrazer/reverser_ai/releases/tag/v1.2"],"category":"agent-workflows","description_en":"Binary Ninja plugin that suggests function names from HLIL decompiler output with a language model run locally through llama.cpp; the README says it operates entirely offline once the model is downloaded. It can rename the current function, every function still carrying a default sub_ name in call-graph post-order, or only those referencing strings and imported or library symbols. The author presents it as a research proof of concept whose only implemented task is function naming.","description_zh":"Binary Ninja 插件，借助 llama.cpp 在本机运行语言模型，依据 HLIL 反编译输出建议函数名；README 称下载模型后即可完全离线运行。它可以重命名当前函数，按调用图后序遍历重命名所有仍沿用默认 sub_ 名称的函数，或只处理其中引用字符串、导入符号或库符号的函数。作者把它定位为研究性概念验证，目前唯一实现的任务是函数命名。","entry_url":"https://awesomerea.org/resources/reverser-ai/","entry_url_zh":"https://awesomerea.org/zh/resources/reverser-ai/","evidence_url":"https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/README.md","group":"agents","id":"reverser-ai","json_url":"https://awesomerea.org/resources/reverser-ai/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/reverser-ai/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/reverser-ai/index.md","name":"ReverserAI","name_zh":"ReverserAI：本地大模型函数命名 Binary Ninja 插件","record_type":"resource","relationship":"independent-agent-integration","requirements":["The reviewed main commit is the v1.2 release of 2026-05-20, and plugin.json and setup.py both declare version 1.2. It installs through Binary Ninja’s plugin manager, or by cloning into Binary Ninja’s plugins folder and installing requirements.txt (huggingface-hub, llama-cpp-python, networkx, toml, typer) and the package; setup.py asks for Python 3.10+, and plugin.json lists macOS, Windows and Linux with minimum Binary Ninja build 2487.","On first use the plugin downloads the selected GGUF model from Hugging Face: by default mistral-7b-instruct-v0.2.Q4_K_M.gguf, about 5 GB and needing about 5 GB of RAM, or a Mixtral-8x7B-Instruct quantization needing about 25 GB. Inference then runs on the local CPU or GPU, which the README describes as entirely offline. It advises at least 16 GB of RAM and 12 CPU threads and reports 20 to 30 seconds per query on CPU, or 2 to 5 seconds with GPU offload such as on Apple silicon. Model, memory mapping, CPU threads, GPU layers and seed are Binary Ninja settings that take effect after a restart.","Three Plugins → ReverserAI commands cover the naming modes: Rename Current Function, Rename All Functions, and Enhance Function Naming with Context, which limits renaming to default-named functions referencing strings or import, library or external symbols. Each request puts one function’s HLIL text into a fixed prompt asking for a name of up to 20 characters, keeps the first line of the reply and writes it to the database as the function name without a confirmation step, logging the old and new names. Functions whose decompiler output exceeds the 4,000-token context fail with a logged warning.","The README calls ReverserAI a proof of concept, notes that local models do not match cloud models, and plans code explanation, other decompilers and server-hosted inference only as future work. The examples folder ships a password-protected samples.zip of test samples, including the PowerPC stub triton_inject.bin from the Triton malware, and its README describes their results qualitatively. CI runs only ruff formatting and lint checks, a setup.py metadata check and a Python syntax parse; there are no tests.","GPL-2.0 per LICENSE; plugin.json and setup.py state version 2 or later. Binary Ninja and the downloaded model weights keep their own licences and terms."],"requirements_zh":["所审阅的 main 提交即 2026-05-20 发布的 v1.2，plugin.json 与 setup.py 均标注 1.2 版。可通过 Binary Ninja 插件管理器安装，或克隆到 Binary Ninja 的 plugins 目录后安装 requirements.txt（huggingface-hub、llama-cpp-python、networkx、toml、typer）及本软件包；setup.py 要求 Python 3.10+，plugin.json 列出 macOS、Windows 和 Linux，最低 Binary Ninja 构建号为 2487。","首次使用时插件会从 Hugging Face 下载所选 GGUF 模型：默认是 mistral-7b-instruct-v0.2.Q4_K_M.gguf，约 5 GB，需要约 5 GB 内存；也可选用需要约 25 GB 内存的 Mixtral-8x7B-Instruct 量化模型。此后推理在本机 CPU 或 GPU 上运行，README 称完全离线。README 建议至少 16 GB 内存和 12 个 CPU 线程，并称纯 CPU 每次查询需 20 至 30 秒，借助 GPU（如 Apple 芯片）可缩短到 2 至 5 秒。模型、内存映射、CPU 线程数、GPU 层数和随机种子均在 Binary Ninja 设置中配置，重启后生效。","Plugins → ReverserAI 下的三个命令对应三种命名方式：Rename Current Function、Rename All Functions，以及 Enhance Function Naming with Context，后者只重命名引用字符串或导入、库、外部符号的默认名称函数。每次请求把单个函数的 HLIL 文本放进固定提示词，要求给出不超过 20 个字符的名称，取回复的第一行直接写入数据库作为函数名，不经确认，并在日志中记录新旧名称。反编译输出超出 4,000 token 上下文的函数会失败并记录警告。","README 称 ReverserAI 是概念验证，指出本地模型不及云端模型，代码解释、支持其他反编译器和服务器端推理仅列为未来工作。examples 目录附带一个加密的 samples.zip 测试样本包，其中包括 Triton 恶意软件的 PowerPC 存根 triton_inject.bin，其 README 只定性描述了这些样本上的结果。CI 只运行 ruff 格式与代码检查、setup.py 元数据检查和 Python 语法解析，没有测试。","LICENSE 为 GPL-2.0；plugin.json 与 setup.py 声明可适用第 2 版或更高版本。Binary Ninja 及下载的模型权重各有其许可与条款。"],"targets":["binary"],"url":"https://github.com/mrphrazer/reverser_ai","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/mandiant/speakeasy/blob/aa9f22643f4519e0555141cd16ee25eb971b5518/doc/install.md","https://github.com/mandiant/speakeasy/blob/aa9f22643f4519e0555141cd16ee25eb971b5518/doc/limitations.md","https://github.com/mandiant/speakeasy/blob/aa9f22643f4519e0555141cd16ee25eb971b5518/doc/cli-reference.md","https://github.com/mandiant/speakeasy/blob/aa9f22643f4519e0555141cd16ee25eb971b5518/doc/reporting.md","https://github.com/mandiant/speakeasy/blob/aa9f22643f4519e0555141cd16ee25eb971b5518/doc/gdb.md","https://github.com/mandiant/speakeasy/blob/aa9f22643f4519e0555141cd16ee25eb971b5518/pyproject.toml","https://github.com/mandiant/speakeasy/blob/aa9f22643f4519e0555141cd16ee25eb971b5518/speakeasy/version.py","https://github.com/mandiant/speakeasy/blob/aa9f22643f4519e0555141cd16ee25eb971b5518/.gitmodules","https://github.com/mandiant/speakeasy/blob/aa9f22643f4519e0555141cd16ee25eb971b5518/Dockerfile","https://github.com/mandiant/speakeasy/blob/aa9f22643f4519e0555141cd16ee25eb971b5518/LICENSE.txt","https://github.com/mandiant/speakeasy/tree/aa9f22643f4519e0555141cd16ee25eb971b5518/tests/bins","https://github.com/mandiant/speakeasy/blob/aa9f22643f4519e0555141cd16ee25eb971b5518/tests/pma_cases.py","https://github.com/mandiant/speakeasy/releases/tag/v2.0.0b9","https://pypi.org/project/speakeasy-emulator/1.5.11/"],"category":"dynamic-analysis","description_en":"Mandiant's Windows malware emulation framework, which runs PE executables, DLLs, kernel drivers and raw x86/amd64 shellcode on the Unicorn CPU emulator inside a modeled Windows runtime instead of a full VM. Hand-written handlers and a signature database built from win32metadata and phnt emulate Windows API calls, process and thread behavior, the filesystem, registry and network, and each run is recorded as a structured JSON report of API events with named arguments, dropped files and optional memory snapshots. It runs from the speakeasy CLI or as a Python library, and a built-in GDB stub lets an analyst step through an emulated sample.","description_zh":"Mandiant 的 Windows 恶意软件仿真框架，借助 Unicorn CPU 仿真器，在模拟的 Windows 运行环境（而非完整虚拟机）中运行 PE 可执行文件、DLL、内核驱动和原始 x86/amd64 shellcode。手写的处理程序加上由 win32metadata 和 phnt 生成的签名库，负责模拟 Windows API 调用、进程与线程行为、文件系统、注册表和网络，每次运行都记录为结构化 JSON 报告，其中包含带参数名的 API 事件、释放的文件以及可选的内存快照。它可通过 speakeasy 命令行或作为 Python 库使用，内置的 GDB 桩可让分析者单步调试仿真中的样本。","entry_url":"https://awesomerea.org/resources/speakeasy/","entry_url_zh":"https://awesomerea.org/zh/resources/speakeasy/","evidence_url":"https://github.com/mandiant/speakeasy/blob/aa9f22643f4519e0555141cd16ee25eb971b5518/README.md","group":"tools","id":"speakeasy","json_url":"https://awesomerea.org/resources/speakeasy/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/speakeasy/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/speakeasy/index.md","name":"Speakeasy","name_zh":"Speakeasy Windows 恶意软件仿真框架","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v2.0.0b9, a GitHub pre-release published 2026-10-11 that tags the reviewed master commit and moves the report format to version 5.0.0. The newest stable speakeasy-emulator on PyPI is still 1.5.11 from 2022, and pip skips pre-releases by default, so the README's plain pip install resolves to 1.5.11 unless a 2.0 beta is requested.","Requires Python 3.10+; dependencies include Unicorn 2.1.4+, pefile, Capstone and pycryptodome, and the package is marked OS independent. Source installs need a recursive clone for the win32json and phnt submodules plus two scripts that generate the API signature databases; the Dockerfile builds a Python 3.13 image that mounts samples at /sandbox. GDB sessions connect gdb-multiarch or another GDB to the stub, which the documentation warns has no authentication.","Samples come from the user. The tests use small test executables, DLLs, WDM drivers and a shellcode blob under tests/bins, and the capa-testfiles submodule of Mandiant's capa test data, which supplies Practical Malware Analysis lab samples; handle both as malware-analysis material.","The limitations page says only a curated subset of APIs has handlers: APIs emulated from signatures alone return success values without real side effects, unknown imports stop a run, and a missing file, registry key or network response can look like anti-analysis behavior, so reports need analyst interpretation. MIT licensed; the win32json, phnt and capa-testfiles submodules keep their own terms."],"requirements_zh":["审阅时最新版本为 v2.0.0b9，是 2026-10-11 发布的 GitHub 预发布版，指向所审阅的 master 提交，并将报告格式升级为 5.0.0 版。PyPI 上 speakeasy-emulator 的最新稳定版仍是 2022 年的 1.5.11，而 pip 默认跳过预发布版本，因此除非明确指定 2.0 测试版，README 中直接 pip install 的命令会装到 1.5.11。","需要 Python 3.10+；依赖包括 Unicorn 2.1.4+、pefile、Capstone 和 pycryptodome，包元数据标注为与操作系统无关。从源码安装需递归克隆 win32json 和 phnt 子模块，并运行两个生成 API 签名库的脚本；Dockerfile 构建 Python 3.13 镜像，样本挂载在 /sandbox。GDB 调试需用 gdb-multiarch 或其他 GDB 连接调试桩，文档提醒该调试桩没有任何身份验证。","样本由使用者自行提供。测试使用 tests/bins 下的小型测试可执行文件、DLL、WDM 驱动和一个 shellcode 样本，以及 capa-testfiles 子模块中 Mandiant 的 capa 测试数据，后者提供《Practical Malware Analysis》实验样本；两者都应按恶意软件分析材料处理。","局限说明页指出，只有精选的一部分 API 有手写处理程序：仅凭签名仿真的 API 只返回成功值而没有真实副作用，未知导入会终止运行，缺失的文件、注册表项或网络响应可能看起来像反分析行为，因此报告需要分析者自行解读。采用 MIT 许可；win32json、phnt 和 capa-testfiles 子模块适用各自条款。"],"targets":["binary"],"url":"https://github.com/mandiant/speakeasy","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/iosre/iOSAppReverseEngineering/blob/a09c2cff202e1b1640c7f7ff8069693b709244a8/iOSAppReverseEngineering.pdf","https://github.com/iosre/iOSAppReverseEngineering/blob/a09c2cff202e1b1640c7f7ff8069693b709244a8/LICENSE"],"category":"learning","description_en":"Freely published 2015 book by snakeninny and hangcom on reverse engineering iOS apps, distributed in its repository as a 442-page English PDF. Its four parts cover the iOS filesystem and file types; OS X and on-device tools such as class-dump, Theos, Reveal, IDA, Cycript and LLDB with debugserver; an Objective-C and ARM assembly methodology for locating the code behind a feature; and four worked practices that locate the relevant code in Notes, Mail, WeChat and Messages and then extend those apps with tweaks.","description_zh":"snakeninny 与 hangcom 于 2015 年免费公开的 iOS 应用逆向工程图书，仓库中以 442 页英文 PDF 形式发布。全书分为四部分：iOS 文件系统与文件类型；class-dump、Theos、Reveal、IDA、Cycript 以及 LLDB 与 debugserver 等 OS X 端和设备端工具；基于 Objective-C 与 ARM 汇编、定位功能背后代码的方法论；以及四个实践案例，先在备忘录、邮件、微信和信息应用中定位相关代码，再编写插件（tweak）为这些应用增加功能。","entry_url":"https://awesomerea.org/resources/ios-app-reverse-engineering-book/","entry_url_zh":"https://awesomerea.org/zh/resources/ios-app-reverse-engineering-book/","evidence_url":"https://github.com/iosre/iOSAppReverseEngineering/blob/a09c2cff202e1b1640c7f7ff8069693b709244a8/README.md","group":"learn","id":"ios-app-reverse-engineering-book","json_url":"https://awesomerea.org/resources/ios-app-reverse-engineering-book/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/ios-app-reverse-engineering-book/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ios-app-reverse-engineering-book/index.md","name":"iOS App Reverse Engineering","name_zh":"《iOS 应用逆向工程》英文版","record_type":"resource","relationship":"learning","requirements":["A historical resource: the repository has not changed since 2015-09-17 and holds only the README, an MIT LICENSE and the PDF. The book states that its examples were done on an iPhone 5 with iOS 8.1, and its tooling chapters date from the Xcode 6 and Cydia Substrate era, so tools, file locations and app internals described there may no longer match current iOS releases.","Reading needs only a PDF reader. The practices assume an OS X host with the tools the book names and a jailbroken test device, and they examine Apple's bundled apps and WeChat as installed on that device.","The cover credits the English translation to Ziqi Wu, 0xBBC, tianqing and Fei Cheng, and the preface warns that the book may contain errors and inaccuracies. The README invites readers who find it useful to buy the paid ebook edition.","MIT license, copyright 2015 snakeninny; the apps examined in the practices keep their owners' rights."],"requirements_zh":["这是一份历史资料：仓库自 2015-09-17 起未再更新，只包含 README、MIT 许可证文件和 PDF。书中说明示例均在运行 iOS 8.1 的 iPhone 5 上完成，工具章节基于 Xcode 6 和 Cydia Substrate 时代的工具链，因此书中描述的工具、文件位置和应用内部实现可能已与当前 iOS 版本不符。","阅读只需 PDF 阅读器。实践部分假定使用装有书中所列工具的 OS X 主机和一台已越狱的测试设备，并分析该设备上安装的苹果自带应用和微信。","封面注明英文版由 Ziqi Wu、0xBBC、tianqing 和 Fei Cheng 翻译，前言提醒书中可能存在错误和不准确之处。README 建议觉得有用的读者购买付费电子书版本。","采用 MIT 许可，版权归 snakeninny（2015）；实践中分析的应用仍归其所有者所有。"],"targets":["app"],"url":"https://github.com/iosre/iOSAppReverseEngineering","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/L4ys/LazyIDA/blob/0ecdf8d62554405fecdd000c750644499f4eccc0/LazyIDA.py","https://github.com/L4ys/LazyIDA/blob/0ecdf8d62554405fecdd000c750644499f4eccc0/ida-plugin.json","https://github.com/L4ys/LazyIDA/blob/0ecdf8d62554405fecdd000c750644499f4eccc0/CHANGELOG.md","https://github.com/L4ys/LazyIDA/blob/0ecdf8d62554405fecdd000c750644499f4eccc0/LICENSE","https://github.com/L4ys/LazyIDA/releases/tag/v1.1.0"],"category":"native-analysis","description_en":"Single-file IDA plugin of convenience actions first written for CTF work. In the disassembly and hex views it dumps a selection as a string, hex string, C/C++ array or Python list of bytes, words, dwords or qwords and copies the result to the clipboard, shows a selection XORed with one byte, fills it with NOPs, and copies or jumps to addresses and file offsets by hotkey. With Hex-Rays it toggles a function’s return type to void, copies item names and jumps to the member function behind an obj->func call on double-click, while a heuristic scan lists printf-family calls whose format argument is not a read-only constant.","description_zh":"最初为 CTF 解题编写的单文件 IDA 便捷操作插件。在反汇编和十六进制视图中，它可把选区导出为字符串、十六进制字符串，或按字节、字、双字、四字导出为 C/C++ 数组或 Python 列表，并复制到剪贴板；还能显示选区与单个字节异或后的结果、用 NOP 填充选区，并通过快捷键复制或跳转到地址和文件偏移。配合 Hex-Rays 时，它可把函数返回类型切换为 void、复制条目名称，双击 obj->func 形式的调用时跳转到对应成员函数；另有启发式扫描，列出格式参数并非只读常量的 printf 系列调用。","entry_url":"https://awesomerea.org/resources/lazyida/","entry_url_zh":"https://awesomerea.org/zh/resources/lazyida/","evidence_url":"https://github.com/L4ys/LazyIDA/blob/0ecdf8d62554405fecdd000c750644499f4eccc0/README.md","group":"tools","id":"lazyida","json_url":"https://awesomerea.org/resources/lazyida/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/lazyida/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/lazyida/index.md","name":"LazyIDA","name_zh":"LazyIDA：IDA 便捷操作插件","record_type":"resource","relationship":"foundation","requirements":["The reviewed master commit is three commits after the v1.1.0 release of 2026-01-25; LazyIDA.py now declares 1.1.1 while ida-plugin.json still says 1.1.0. The plugin is the single LazyIDA.py file, installed with Hex-Rays’ hcli plugin command or copied into the IDA plugins directory. ida-plugin.json asks for IDA 7.4 or later on Windows x86-64, Linux x86-64 and macOS x86-64 or arm64; the changelog adds IDA 9.0 and 9.2 support, and clipboard access uses PySide6 on IDA 9.2+ and PyQt5 on earlier GUI builds.","It works on whatever database the user opens in IDA and bundles no sample binaries. The Hex-Rays actions load only when a Hex-Rays decompiler initialises. The format-string scan is offered in the disassembly view only for 32- and 64-bit x86 and 32-bit ARM databases; it walks back from each call to printf-family functions in .text, .plt, .idata or .plt.got using fixed register and stack-slot conventions, so its hits are leads to check by hand, not confirmed vulnerabilities.","The README says the project was written casually about ten years ago and that several features are now outdated: return-type removal is built into IDA 7.5+, IDA’s Shift-E export can replace the dump actions, and the format-string scan should be reimplemented with the Hex-Rays API; it points users to HappyIDA instead. Multi-byte dumps decode little-endian values, and Fill with NOPs writes x86 0x90 bytes into the database whatever the architecture.","The repository has no tests or CI. MIT per LICENSE and ida-plugin.json; IDA Pro and the Hex-Rays decompiler keep their own licences."],"requirements_zh":["所审阅的 master 提交位于 2026-01-25 发布的 v1.1.0 之后三个提交；LazyIDA.py 已标注 1.1.1，ida-plugin.json 仍为 1.1.0。插件只有 LazyIDA.py 一个文件，可用 Hex-Rays 的 hcli 插件命令安装，或复制到 IDA 插件目录。ida-plugin.json 要求 IDA 7.4 或更高版本，平台为 Windows x86-64、Linux x86-64 以及 macOS x86-64 或 arm64；更新日志记载了对 IDA 9.0 和 9.2 的支持，剪贴板功能在 IDA 9.2+ 使用 PySide6，在更早的图形界面版本中使用 PyQt5。","插件作用于使用者在 IDA 中打开的任意数据库，不附带样本二进制。Hex-Rays 相关操作仅在 Hex-Rays 反编译器成功初始化时加载。格式化字符串扫描只在 32 位和 64 位 x86 以及 32 位 ARM 数据库的反汇编视图中提供；它从 .text、.plt、.idata 或 .plt.got 中 printf 系列函数的每个调用处向前回溯，依据固定的寄存器与栈槽约定判断格式参数，因此结果只是需要人工核实的线索，并非已确认的漏洞。","README 称该项目约十年前随手写成，部分功能已经过时：IDA 7.5+ 已内置移除返回类型功能，IDA 的 Shift-E 导出可替代导出操作，格式化字符串扫描应改用 Hex-Rays API 重新实现；README 建议改用 HappyIDA。多字节导出按小端序解码，“Fill with NOPs”无论架构如何都向数据库写入 x86 的 0x90 字节。","仓库没有测试或 CI。LICENSE 与 ida-plugin.json 标明采用 MIT 许可；IDA Pro 与 Hex-Rays 反编译器各有其许可。"],"targets":["binary"],"url":"https://github.com/L4ys/LazyIDA","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/hasherezade/tiny_tracer/wiki/Installation/bfcee7fad835f06437b3a6c2410cc38d276b855b","https://github.com/hasherezade/tiny_tracer/wiki/The-INI-file/e48e12d46454008e8d2a1b55a247329c554cc4b7","https://github.com/hasherezade/tiny_tracer/wiki/Using-the-TAGs-with-disassemblers-and-debuggers/215f7cae78a12ffdc1f646000e216fdb517658cd","https://github.com/hasherezade/tiny_tracer/wiki/Tracing-shellcodes/4f8169a1a84f11f773b148f65913fdc486e5c1b9","https://github.com/hasherezade/tiny_tracer/blob/99618fc0569a4a06b7955e507e1707792ad1bef5/install32_64/README.md","https://github.com/hasherezade/tiny_tracer/tree/99618fc0569a4a06b7955e507e1707792ad1bef5/install32_64","https://github.com/hasherezade/tiny_tracer/blob/99618fc0569a4a06b7955e507e1707792ad1bef5/LICENSE.txt","https://github.com/hasherezade/tiny_tracer/releases/tag/4.0"],"category":"dynamic-analysis","description_en":"Intel Pin tool by hasherezade that traces a 32- or 64-bit program while it runs on Windows or Linux, logging API calls (with arguments and return values for watched functions), chosen local and statically linked functions, inline system calls, RDTSC, CPUID and INT instructions, and transitions between sections of the traced module, which helps find the original entry point of a packed module. It can follow code the module unpacks into new memory, disassemble selected ranges and, on Windows, flag the anti-debug and anti-VM checks a sample performs. Each run writes a .tag file of RVA;event lines that PE-bear reads natively and that the wiki shows loading into IDA Pro, Binary Ninja, x64dbg, Ghidra and Cutter to annotate code.","description_zh":"hasherezade 开发的 Intel Pin 插桩工具，在 Windows 或 Linux 上跟踪运行中的 32 位或 64 位程序，记录 API 调用（对监视的函数还会记录参数和返回值）、指定的本地函数和静态链接库函数、内联系统调用、RDTSC、CPUID 和 INT 指令，以及被跟踪模块各节区之间的跳转，有助于找到加壳模块的原始入口点。它可以继续跟踪模块解包到新内存中的代码，对选定范围进行反汇编，并可在 Windows 上标记样本执行的反调试和反虚拟机检查。每次运行都会生成由“RVA;事件”行组成的 .tag 文件，PE-bear 可直接读取，Wiki 还演示了将其导入 IDA Pro、Binary Ninja、x64dbg、Ghidra 和 Cutter 以标注代码。","entry_url":"https://awesomerea.org/resources/tiny-tracer/","entry_url_zh":"https://awesomerea.org/zh/resources/tiny-tracer/","evidence_url":"https://github.com/hasherezade/tiny_tracer/blob/99618fc0569a4a06b7955e507e1707792ad1bef5/README.md","group":"tools","id":"tiny-tracer","json_url":"https://awesomerea.org/resources/tiny-tracer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/tiny-tracer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/tiny-tracer/index.md","name":"Tiny Tracer","name_zh":"Tiny Tracer API 调用跟踪工具","record_type":"resource","relationship":"foundation","requirements":["Release at review: 4.0, published 2026-05-28 and refactored for Intel Pin 4.x; the reviewed master commit is two commits ahead of it. Releases contain source only, because, as the release notes and installation guide explain, Pin's license does not allow distributing compiled Pin tools. Users download Pin themselves and build the tool inside Pin's source/tools tree; the README names Pin 4.2 as the version tested, Pin before 4.0 needs a pre-4.0 release with the legacy build, and Windows versions older than 8 also need the legacy build.","Windows builds use MSYS2 make with clang-cl, with Visual Studio 2019 or later optional as an editor; Linux builds use g++ and make. Both scripts produce 32- and 64-bit builds in install32_64, which holds run_me.bat with context-menu .reg files, pin_attach.bat for attaching to a running process, tiny_runner.sh for Linux, and the TinyTracer.ini, params.txt and excluded.txt settings. The README says kernel debugging must be disabled for Pin to work.","install32_64 also commits the author's prebuilt Windows helpers dll_load32.exe, dll_load64.exe, kdb_check.exe, pe_check.exe and syscall_extract.exe, whose sources are in the separate hasherezade/pe_utils repository; the README notes that Windows Defender sometimes flags kdb_check.exe, a known false positive. The anti-debug and anti-VM modes are Windows-only, and the deep anti-debug mode is documented as prone to false positives. The analyst supplies the program to trace, which executes natively under Pin.","GPL-2.0 in LICENSE.txt; Intel Pin keeps its own license. Traces cover only code that executes during the run."],"requirements_zh":["审阅时的版本为 4.0，发布于 2026-05-28，已针对 Intel Pin 4.x 重构；所审阅的 master 提交比该版本多两个提交。发布版本只提供源码，因为发布说明和安装指南指出，Pin 的许可不允许分发编译好的 Pin 工具。使用者需自行下载 Pin，并在 Pin 的 source/tools 目录下构建本工具；README 称已测试的版本为 Pin 4.2，Pin 4.0 以前的版本需使用 4.0 之前的发布版本及其旧版构建方式，Windows 8 以前的系统同样需要旧版构建。","Windows 构建使用 MSYS2 的 make 和 clang-cl，Visual Studio 2019 及以上版本可选用作编辑器；Linux 构建使用 g++ 和 make。两种构建脚本都会在 install32_64 中生成 32 位和 64 位版本，该目录还包含配合右键菜单 .reg 文件使用的 run_me.bat、用于附加到运行中进程的 pin_attach.bat、Linux 上使用的 tiny_runner.sh，以及 TinyTracer.ini、params.txt 和 excluded.txt 配置文件。README 指出必须禁用内核调试，Pin 才能正常工作。","install32_64 中还提交了作者预编译的 Windows 辅助程序 dll_load32.exe、dll_load64.exe、kdb_check.exe、pe_check.exe 和 syscall_extract.exe，其源码位于独立的 hasherezade/pe_utils 仓库；README 提到 Windows Defender 有时会将 kdb_check.exe 误报为恶意软件，这是已知的误报。反调试与反虚拟机模式仅支持 Windows，文档称深度反调试模式可能产生误报。被跟踪的程序由分析人员自行提供，并在 Pin 下原生执行。","LICENSE.txt 采用 GPL-2.0；Intel Pin 沿用其自身许可。跟踪结果只覆盖本次运行中实际执行的代码。"],"targets":["binary"],"url":"https://github.com/hasherezade/tiny_tracer","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/anestisb/vdexExtractor/blob/78f283b60ab6991fa27eeaff7d7be16409401c08/README.md#L239-L349","https://github.com/anestisb/vdexExtractor/blob/78f283b60ab6991fa27eeaff7d7be16409401c08/README.md#L350-L422","https://github.com/anestisb/vdexExtractor/blob/78f283b60ab6991fa27eeaff7d7be16409401c08/make.sh","https://github.com/anestisb/vdexExtractor/tree/78f283b60ab6991fa27eeaff7d7be16409401c08/src/vdex","https://github.com/anestisb/vdexExtractor/blob/78f283b60ab6991fa27eeaff7d7be16409401c08/scripts/extract-apps-from-device.sh","https://github.com/anestisb/vdexExtractor/blob/78f283b60ab6991fa27eeaff7d7be16409401c08/tools/deodex/run.sh","https://github.com/anestisb/vdexExtractor/blob/78f283b60ab6991fa27eeaff7d7be16409401c08/tools/deodex/constants.sh","https://github.com/anestisb/vdexExtractor/blob/78f283b60ab6991fa27eeaff7d7be16409401c08/LICENSE","https://github.com/anestisb/vdexExtractor/commit/5f36debb03fccbb245af60129b1f94d369d7544c"],"category":"android","description_en":"Command-line C tool that extracts the Dex bytecode held in the Vdex containers that ART's dex2oat compiler writes beside Oat files since Android 8.0 (API 26), and by default reverts ART's dex-to-dex quickening so the output is ordinary Dex again. It can also dump the verified-dependency records stored in a Vdex file, disassemble the bytecode in a dexdump-like format and report the Android API level of a Vdex version. Android 9 and 10 Vdex files hold CompactDex, which the bundled deodex helper converts back to standard Dex through a separately built compact_dex_converter.","description_zh":"C 语言命令行工具，用于从 ART 的 dex2oat 编译器自 Android 8.0（API 26）起在 Oat 文件旁生成的 Vdex 容器中提取 Dex 字节码，并默认撤销 ART 的 dex-to-dex quickening 优化，使输出重新成为普通 Dex。它还能转储 Vdex 文件中保存的验证依赖记录，以类似 dexdump 的格式反汇编字节码，并报告某个 Vdex 版本对应的 Android API 级别。Android 9 和 10 的 Vdex 文件存放的是 CompactDex，随附的 deodex 辅助脚本会借助单独构建的 compact_dex_converter 将其转换回标准 Dex。","entry_url":"https://awesomerea.org/resources/vdexextractor/","entry_url_zh":"https://awesomerea.org/zh/resources/vdexextractor/","evidence_url":"https://github.com/anestisb/vdexExtractor/blob/78f283b60ab6991fa27eeaff7d7be16409401c08/README.md","group":"tools","id":"vdexextractor","json_url":"https://awesomerea.org/resources/vdexextractor/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/vdexextractor/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/vdexextractor/index.md","name":"vdexExtractor","name_zh":"vdexExtractor Vdex 字节码提取工具","record_type":"resource","relationship":"foundation","requirements":["Inactive: the last tag is 0.6.0 (2019-12-30), there are no GitHub releases, and the reviewed master commit (2020-05-13) is seven commits past that tag. Backends exist for Vdex versions 006, 010, 019 and 021, which the README and changelog place between Android 8 (Oreo) and Android 10 (Q); there is no backend for later Vdex versions.","Build with make.sh using gcc (default) or clang on Linux or macOS, or under Cygwin on Windows; zlib development files are required, and the cross-android target uses the Android NDK's ndk-build to produce armeabi-v7a, arm64-v8a, x86 and x86_64 executables. Binaries are written under bin/; the repository commits no prebuilt executables.","Inputs are Vdex files, or directories of them, that the user takes from their own device or system image; scripts/extract-apps-from-device.sh pulls the oat, art and vdex outputs, and optionally the APKs, of installed packages over ADB, and some system app data needs root. tools/deodex/run.sh needs wget, shasum and unzip and downloads the author's prebuilt compact_dex_converter archives from OneDrive with SHA-256 checks; the API 29 converter is Linux-only, and the converter's own source builds only as an AOSP module.","Apache-2.0 (copyright CENSUS S.A.). The README notes that equivalent unquickening was contributed to AOSP's oatdump. Recovered Dex code remains subject to the rights of the app or system-image owner."],"requirements_zh":["项目已不再活跃：最后一个标签是 0.6.0（2019-12-30），没有 GitHub 发布版，所审阅的 master 提交（2020-05-13）比该标签多七个提交。后端支持 Vdex 006、010、019 和 021 版本，README 和更新日志将其对应到 Android 8（Oreo）至 Android 10（Q）；更新的 Vdex 版本没有对应后端。","使用 make.sh 构建，可在 Linux 或 macOS 上选用 gcc（默认）或 clang，Windows 上可在 Cygwin 下构建；需要 zlib 开发文件，cross-android 目标借助 Android NDK 的 ndk-build 生成 armeabi-v7a、arm64-v8a、x86 和 x86_64 可执行文件。二进制输出到 bin/ 目录；仓库未提交任何预编译的可执行文件。","输入为使用者从自己的设备或系统镜像中取得的 Vdex 文件或其所在目录；scripts/extract-apps-from-device.sh 可通过 ADB 拉取已安装应用的 oat、art 和 vdex 产物，并可选拉取 APK，部分系统应用数据需要 root 权限。tools/deodex/run.sh 需要 wget、shasum 和 unzip，会从 OneDrive 下载作者预编译的 compact_dex_converter 压缩包并校验 SHA-256；API 29 版转换器仅有 Linux 版本，转换器源码本身只能作为 AOSP 模块构建。","采用 Apache-2.0 许可（版权归 CENSUS S.A.）。README 提到，等效的 unquickening 功能已贡献给 AOSP 的 oatdump。恢复出的 Dex 代码仍受应用或系统镜像权利人的权利约束。"],"targets":["app"],"url":"https://github.com/anestisb/vdexExtractor","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/illera88/Ponce/blob/68586760feaf86f719d85fe08fd55cd22f29f9a3/docs/usage/symbolic-and-taint-engines.md","https://github.com/illera88/Ponce/blob/68586760feaf86f719d85fe08fd55cd22f29f9a3/docs/usage/enable-disable.md","https://github.com/illera88/Ponce/blob/68586760feaf86f719d85fe08fd55cd22f29f9a3/docs/usage/blacklist.md","https://github.com/illera88/Ponce/blob/68586760feaf86f719d85fe08fd55cd22f29f9a3/docs/misc/ponce-limitations.md","https://github.com/illera88/Ponce/blob/68586760feaf86f719d85fe08fd55cd22f29f9a3/docs/misc/building.md","https://github.com/illera88/Ponce/blob/68586760feaf86f719d85fe08fd55cd22f29f9a3/CMakeLists.txt","https://github.com/illera88/Ponce/blob/68586760feaf86f719d85fe08fd55cd22f29f9a3/.github/workflows/ci-windows.yml","https://github.com/illera88/Ponce/blob/68586760feaf86f719d85fe08fd55cd22f29f9a3/LICENSE","https://github.com/illera88/Ponce/releases/tag/v0.3.7"],"category":"dynamic-analysis","description_en":"IDA Pro plugin, described by its repository as the winner of the 2016 IDA plugin contest, that brings the Triton framework's taint analysis and symbolic execution into IDA's debugger for x86 and x64 programs. After the analyst taints or symbolizes registers, memory or inputs such as argv or a buffer read with fread, Ponce single-steps the debugged program, analyzes each instruction with Triton and renames the functions that the input influences. Its symbolic engine can solve a branch condition, or negate it and inject a satisfying input into memory, while execution snapshots restore earlier state to try that input; builds with Hex-Rays support also show the results in decompiler pseudocode.","description_zh":"IDA Pro 插件，仓库简介称其获得 2016 年 IDA 插件大赛冠军，它把 Triton 框架的污点分析和符号执行引入 IDA 调试器，适用于 x86 和 x64 程序。分析人员对寄存器、内存或 argv、fread 读入的缓冲区等输入进行污点标记或符号化后，Ponce 会单步执行被调试程序，用 Triton 分析每条指令，并重命名受该输入影响的函数。其符号引擎可以求解分支条件，或将条件取反后把满足条件的输入注入内存，再借助执行快照恢复先前状态来尝试该输入；启用 Hex-Rays 支持的构建还会在反编译伪代码中显示分析结果。","entry_url":"https://awesomerea.org/resources/ponce/","entry_url_zh":"https://awesomerea.org/zh/resources/ponce/","evidence_url":"https://github.com/illera88/Ponce/blob/68586760feaf86f719d85fe08fd55cd22f29f9a3/README.md","group":"tools","id":"ponce","json_url":"https://awesomerea.org/resources/ponce/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ponce/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ponce/index.md","name":"Ponce","name_zh":"Ponce IDA 符号执行与污点分析插件","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.3.7, published 2023-06-01, with prebuilt Windows, Linux and macOS zips; the Windows zip holds Ponce.dll and Ponce64.dll builds for IDA 7.0 through 8.1, with none for later IDA releases. The README says Ponce works with any IDA version from 7.0 and that the binary built for the installed IDA version must be used. The reviewed master commit of 2025-06-06 adds only a work-in-progress CI fix after that release.","Installation copies the matching build into IDA's plugins folder; the README lists native Windows, Linux and OS X support. Source builds use CMake 3.15+, the IDA SDK for the target version (IDASDK_ROOT_DIR) and Triton, which the CI installs through vcpkg; pseudocode feedback also needs hexrays.hpp from an IDA installation that includes the Hex-Rays decompiler, otherwise -DBUILD_HEXRAYS_SUPPORT=OFF. The repository contains no SDK files, and its CI clones the SDK archives from a separate repository that is not public, so source builds rely on the user's own SDK.","Ponce analyzes a program the analyst runs under IDA's debugger, stepping one instruction at a time; the README cites about 3,000 instructions per second in the authors' tests, and common library functions such as printf are blacklisted from analysis by default. The limitations page says symbolic memory indexes can lose track of the input, Triton handles floating-point instructions poorly, and concolic execution only analyzes instructions that actually execute.","Ponce's own terms are a BSD-style license, and LICENSE also reproduces Triton's BSD and Z3's MIT licenses; GitHub does not classify the file."],"requirements_zh":["审阅时的最新版本为 v0.3.7，发布于 2023-06-01，提供 Windows、Linux 和 macOS 的预编译压缩包；Windows 压缩包包含适用于 IDA 7.0 至 8.1 的 Ponce.dll 和 Ponce64.dll，没有更新 IDA 版本的构建。README 称 Ponce 适用于 IDA 7.0 及以上任意版本，但必须使用为所装 IDA 版本编译的二进制。所审阅的 master 提交（2025-06-06）在该版本之后只增加了一项尚未完成的 CI 修复。","安装时将对应构建复制到 IDA 的 plugins 目录；README 称原生支持 Windows、Linux 和 OS X。从源码构建需要 CMake 3.15+、目标版本的 IDA SDK（IDASDK_ROOT_DIR）以及 Triton，CI 通过 vcpkg 安装 Triton；伪代码反馈功能还需要来自附带 Hex-Rays 反编译器的 IDA 安装中的 hexrays.hpp，否则需使用 -DBUILD_HEXRAYS_SUPPORT=OFF。仓库中不含任何 SDK 文件，其 CI 从另一个非公开仓库克隆 SDK 压缩包，因此从源码构建需使用者自备 SDK。","Ponce 分析的是分析人员在 IDA 调试器中运行的程序，并逐条指令单步执行；README 称在作者测试中每秒约可处理 3000 条指令，printf 等常见库函数默认被列入黑名单、不参与分析。局限性文档指出，符号化的内存索引可能导致丢失对输入的跟踪，Triton 对浮点指令支持不佳，且混合执行只分析实际执行过的指令。","Ponce 本身采用 BSD 风格许可，LICENSE 中还收录了 Triton 的 BSD 许可和 Z3 的 MIT 许可；GitHub 未能识别该文件的许可类型。"],"targets":["binary"],"url":"https://github.com/illera88/Ponce","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/MatthewKuKanich/CAN_Commander/blob/6079fe05d5a340b445317e89998d78b390e90a62/README.md#L554-L615","https://github.com/MatthewKuKanich/CAN_Commander/blob/6079fe05d5a340b445317e89998d78b390e90a62/CAN_Commander_FlipperZero/can_commander/application.fam","https://github.com/MatthewKuKanich/CAN_Commander/blob/6079fe05d5a340b445317e89998d78b390e90a62/CAN_Commander_FlipperZero/can_commander/can_commander.h","https://github.com/MatthewKuKanich/CAN_Commander/blob/6079fe05d5a340b445317e89998d78b390e90a62/Legacy/README.md","https://github.com/MatthewKuKanich/CAN_Commander/tree/6079fe05d5a340b445317e89998d78b390e90a62/Legacy/CAN_Resources/DBC_Files","https://github.com/MatthewKuKanich/CAN_Commander/blob/6079fe05d5a340b445317e89998d78b390e90a62/Legacy/ArduinoEnvironment/libraries/mcp2515/LICENSE.md"],"category":"protocol-analysis","description_en":"A Flipper Zero app and earlier Arduino sketches for reverse engineering CAN bus traffic, chiefly in vehicles. The current app is a UART front end for a CAN Commander ESP32 board: it streams all or filtered frames, lists unique IDs, measures message rates, tracks per-bit and per-byte changes, and runs a two-phase Auto Reverse Engineer that first calibrates out background traffic and then shows which IDs change during an action. It also decodes live signals from DBC-based profiles and reads OBD-II PIDs, the VIN and trouble codes.","description_zh":"用于逆向 CAN 总线流量（主要是车辆总线）的 Flipper Zero 应用及早期 Arduino 程序。当前应用通过 UART 为 CAN Commander ESP32 板提供操作界面：可显示全部或过滤后的帧、列出唯一 ID、测量报文速率、跟踪逐位和逐字节变化，并提供两阶段的自动逆向功能，先校准排除背景流量，再显示执行某个操作时哪些 ID 发生变化。它还能依据基于 DBC 的配置解码实时信号，并读取 OBD-II PID、VIN 和故障码。","entry_url":"https://awesomerea.org/resources/can-commander/","entry_url_zh":"https://awesomerea.org/zh/resources/can-commander/","evidence_url":"https://github.com/MatthewKuKanich/CAN_Commander/blob/6079fe05d5a340b445317e89998d78b390e90a62/README.md","group":"tools","id":"can-commander","json_url":"https://awesomerea.org/resources/can-commander/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/can-commander/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/can-commander/index.md","name":"CAN Commander","name_zh":"CAN Commander CAN 总线逆向工具","record_type":"resource","relationship":"foundation","requirements":["The reviewed main commit of 2026-04-25 sets app version v2.3.1 (fap_version 2.3), and there are no GitHub releases. The app needs a CAN Commander board connected to the Flipper's GPIO and running ESP32 firmware v2.2 or newer. That firmware, and the converter from .dbc files to the app's .dbcprof and .injprof profiles, are offered at cancommander.com rather than in this repository.","The README lists limits such as 16 cached DBC signals, 10 tracked changed IDs on the reverse-engineering dashboard and 384 frames per replay recording, and warns that heavy traffic needs filtering and that streaming the Flipper screen during DBC decoding can exhaust RAM. A Wi-Fi TCP command line mirrors the USB command set; dedicated companion clients are described as planned.","Legacy/ keeps the earlier Arduino sketches for Arduino, ESP8266, ESP32 or RP2040 boards with an MCP2515 controller, a bundled MCP2515 library copy with an MIT notice, a JavaScript BLE companion app, OBD-II PID tables and about 80 vehicle DBC files without a stated source or license. The repository has no tests or CI.","The write, Smart Injection, Replay and Clear DTCs tools transmit on the bus and can change vehicle state; use them only on vehicles and networks you own or are authorized to test. There is no license file and GitHub detects none, so reuse terms for the project's own code are not stated."],"requirements_zh":["所审阅的 main 提交日期为 2026-04-25，将应用版本设为 v2.3.1（fap_version 2.3），GitHub 上没有发布版本。应用需要通过 Flipper 的 GPIO 连接一块 CAN Commander 板，且板上运行 v2.2 或更新的 ESP32 固件。该固件以及把 .dbc 文件转换为应用所用 .dbcprof 和 .injprof 配置的工具都在 cancommander.com 提供，而不在本仓库中。","README 列出若干限制，例如最多缓存 16 个 DBC 信号、逆向面板最多跟踪 10 个变化的 ID、每次回放录制最多 384 帧，并提醒流量过大时需要过滤，在 DBC 解码时串流 Flipper 屏幕可能耗尽内存。Wi-Fi TCP 命令行与 USB 命令集相同；专用配套客户端仍处于计划阶段。","Legacy/ 保留了早期的 Arduino 程序，适用于搭配 MCP2515 控制器的 Arduino、ESP8266、ESP32 或 RP2040 板，另有一份带 MIT 声明的 MCP2515 库副本、一个 JavaScript 编写的 BLE 配套应用、OBD-II PID 表，以及约 80 个未注明来源或许可证的车辆 DBC 文件。仓库没有测试或 CI。","写帧、Smart Injection、回放和清除故障码等工具会向总线发送数据，可能改变车辆状态，只应在自有或获授权测试的车辆和网络上使用。仓库没有许可证文件，GitHub 也未识别出许可证，因此项目自身代码的复用条款未说明。"],"targets":["protocol"],"url":"https://github.com/MatthewKuKanich/CAN_Commander","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/iddoeldor/frida-snippets/tree/773f89ce8fcd32b0c2e843d148436d6556e064e9/scripts","https://github.com/iddoeldor/frida-snippets/blob/773f89ce8fcd32b0c2e843d148436d6556e064e9/scripts/install_frida_server.sh","https://github.com/iddoeldor/frida-snippets/blob/773f89ce8fcd32b0c2e843d148436d6556e064e9/scripts/FridaCodeGenerator.py","https://github.com/iddoeldor/frida-snippets/commit/773f89ce8fcd32b0c2e843d148436d6556e064e9"],"category":"learning","description_en":"A single large README that collects hand-written Frida instrumentation examples, grouped into Native, Android and iOS sections, for observing how a running app behaves. The examples show patterns such as attaching interceptors, enumerating loaded modules and classes, describing class members, tracing method arguments and return values, printing backtraces, logging SQLite queries and I/O, and scanning or dumping process memory. A scripts directory adds helper code, including Python generators that emit hook stubs from a decompiler and a frida-server install script, plus editor snippets for Sublime and Vim.","description_zh":"一个较大的 README，汇集手写的 Frida 动态插桩示例，按 Native、Android 和 iOS 分组，用于观察运行中应用的行为。示例展示了诸如挂接 Interceptor、枚举已加载模块与类、描述类成员、跟踪方法参数与返回值、打印调用栈、记录 SQLite 查询与 I/O，以及扫描或转储进程内存等模式。scripts 目录附带辅助代码，包括从反编译器生成钩子代码片段的 Python 脚本和 frida-server 安装脚本，以及用于 Sublime 和 Vim 的编辑器片段。","entry_url":"https://awesomerea.org/resources/frida-snippets/","entry_url_zh":"https://awesomerea.org/zh/resources/frida-snippets/","evidence_url":"https://github.com/iddoeldor/frida-snippets/blob/773f89ce8fcd32b0c2e843d148436d6556e064e9/README.md","group":"learn","id":"frida-snippets","json_url":"https://awesomerea.org/resources/frida-snippets/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/frida-snippets/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/frida-snippets/index.md","name":"Frida Snippets","name_zh":"Frida Snippets Frida 插桩示例集","record_type":"resource","relationship":"learning","requirements":["A reference collection, not an installable package: the content is the README and the scripts directory at the reviewed commit (last pushed 2024-11-29). The snippets assume a current Frida and are written for its JavaScript API with some ObjC and Java bridge calls; running any of them needs a separate, matching Frida install, which the repository does not pin.","Examples run against an app the analyst controls: Android snippets expect a device or emulator with a frida-server (the bundled install_frida_server.sh pushes one over ADB), and the iOS notes assume a jailbroken device. Scripts are standalone and uneven in quality, with several explicitly marked work-in-progress (WIP) files, and one JEB plugin that copies a generated hook to the clipboard needs JEB and xclip.","The target app comes from the user; the repository ships only example code and one demonstration GIF, no app binaries. It is intended for instrumenting software the analyst is authorized to analyze.","No license file is present and GitHub detects no license, so the examples carry no granted reuse terms and default to all rights reserved by the author."],"requirements_zh":["这是一个参考示例集，而非可安装的软件包：其内容即所审阅提交（最后推送于 2024-11-29）处的 README 和 scripts 目录。示例默认使用较新版本的 Frida，基于其 JavaScript API 编写，并夹杂一些 ObjC 与 Java 桥接调用；运行任何示例都需要另行安装版本匹配的 Frida，而仓库并未固定该版本。","示例针对分析者自己掌控的应用运行：Android 示例要求设备或模拟器上运行 frida-server（随附的 install_frida_server.sh 会通过 ADB 推送），iOS 相关说明假定设备已越狱。scripts 为独立脚本，质量参差，有若干明确标注为进行中（WIP）的文件，还有一个 JEB 插件会把生成的钩子代码复制到剪贴板，需要 JEB 和 xclip。","目标应用由使用者自行提供；仓库仅包含示例代码和一张演示 GIF，不含任何应用二进制。它用于对分析者有权分析的软件进行插桩。","仓库没有许可证文件，GitHub 也未识别出许可证，因此这些示例未授予任何复用条款，默认由作者保留一切权利。"],"targets":["app"],"url":"https://github.com/iddoeldor/frida-snippets","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/Client/Constants.h","https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/Client/CommandSerializer.cpp","https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/Client/BluetoothWrapper.cpp","https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/Client/Headphones.cpp","https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/Client/CMakeLists.txt","https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/.gitmodules","https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/.github/workflows/cmake.yml","https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/.github/workflows/xcodebuild.yml","https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/Client/Fonts/FontLicense.txt","https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/LICENSE","https://github.com/Plutoberth/SonyHeadphonesClient/releases/tag/v1.3.2"],"category":"reconstruction-cases","description_en":"Recreates part of Sony’s mobile-only Headphones app as a Windows, Linux and macOS desktop client that changes noise-cancelling, ambient-sound and virtual-sound settings over a Bluetooth RFCOMM connection to a paired headset. The author reports reverse engineering the phone app to define its control protocol, and the code rebuilds its message framing, with start and end markers, byte escaping, sequence numbers, a sum checksum and acknowledgements, together with the two set-parameter commands the client sends. Full support is reported for few models, mainly the WH-1000XM3, and the project is archived.","description_zh":"把 Sony 仅限手机的 Headphones 应用的部分功能重建为 Windows、Linux 和 macOS 桌面客户端，通过蓝牙 RFCOMM 连接已配对的耳机，调整降噪、环境声和虚拟音效设置。作者称通过逆向手机应用定义了其控制协议；代码重建了报文封装，包括起止标记、字节转义、序列号、求和校验和确认应答，以及客户端发送的两条参数设置命令。据报告只有少数型号完全可用，主要是 WH-1000XM3，项目现已归档。","entry_url":"https://awesomerea.org/resources/sony-headphones-client-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sony-headphones-client-case/","evidence_url":"https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/README.md","group":"cases","id":"sony-headphones-client-case","json_url":"https://awesomerea.org/resources/sony-headphones-client-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sony-headphones-client-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sony-headphones-client-case/index.md","name":"Sony Headphones Client: a desktop client for Sony’s headset control protocol","name_zh":"Sony Headphones Client：Sony 耳机控制协议的桌面客户端","record_type":"resource","relationship":"independent-reconstruction","requirements":["The reviewed master commit of 2025-07-19 is ten commits after the v1.3.2 release of 2023-04-26, adding build notes, a GCC include fix and the archival notice; CMakeLists.txt still embeds version 1.3.1. The repository is archived: the README says the app keeps working for the devices it supports and points to untested forks for others. Implemented controls are ambient sound with focus on voice, disabling noise cancelling, and the Virtual Sound VPT and sound-position presets; reading battery or current settings from the headset and the equalizer were never done, so the client only sends settings.","No Sony software or files are needed or included; the client connects over RFCOMM to the headset’s control service UUID. The README reports the WH-1000XM3 and MDR-XB950BT as fully working and the WH-1000XM4 as partial, with other models in a user report issue, and the serializer caps ambient-sound levels at the WH-1000XM3’s 19 steps. The README says the app was reverse engineered for interoperability and that only some enums and data are in the code, the rest to be obtained statically or dynamically, linking a comment on sniffing messages; no decompiled app code, captures or method notes are in the repository.","Releases provide prebuilt Windows x64, Linux x64 and macOS builds, and the Windows build needs the Microsoft VC++ Redistributable. Windows and Linux builds use CMake, a C++20 compiler and the Dear ImGui submodule, with Visual Studio 2022 and the Windows SDK on Windows and BlueZ, GLEW, GLFW, D-Bus and OpenGL development packages on Linux; macOS builds use the bundled Xcode project.","CI only builds the Linux and Windows clients with CMake and the macOS app with xcodebuild and uploads them; there are no protocol tests, and headset compatibility is user-reported.","MIT per LICENSE; the bundled Cascadia Code font is under the SIL Open Font License, and Dear ImGui keeps its own license. The README states the program is not affiliated with Sony, which keeps its rights in the app and headsets."],"requirements_zh":["所审阅的 master 提交日期为 2025-07-19，位于 2023-04-26 发布的 v1.3.2 之后十个提交，增加了构建说明、一处 GCC 头文件修复和归档声明；CMakeLists.txt 仍内嵌 1.3.1 版本号。仓库已归档：README 称应用对已支持的设备仍可继续使用，其他设备可尝试未经测试的分支。已实现的控制包括环境声（含人声聚焦）、关闭降噪，以及 Virtual Sound 的 VPT 和声音定位预设；从耳机读取电量或当前设置以及均衡器从未实现，因此客户端只发送设置。","无需也不包含任何 Sony 软件或文件；客户端通过 RFCOMM 连接耳机的控制服务 UUID。README 报告 WH-1000XM3 和 MDR-XB950BT 完全可用、WH-1000XM4 部分可用，其他型号见用户报告议题；序列化代码把环境声级别上限设为 WH-1000XM3 的 19 档。README 称出于互操作目的逆向了该应用，代码中只包含部分枚举和数据，其余需通过静态或动态方式获取，并链接了一条关于抓取报文的评论；仓库中没有反编译的应用代码、抓包记录或方法说明。","发布页提供预编译的 Windows x64、Linux x64 和 macOS 版本，Windows 版需要 Microsoft VC++ 运行库。Windows 与 Linux 构建使用 CMake、C++20 编译器和 Dear ImGui 子模块，Windows 上需要 Visual Studio 2022 和 Windows SDK，Linux 上需要 BlueZ、GLEW、GLFW、D-Bus 和 OpenGL 开发包；macOS 使用随附的 Xcode 项目构建。","CI 只用 CMake 构建 Linux 和 Windows 客户端、用 xcodebuild 构建 macOS 应用并上传产物；没有协议测试，耳机兼容性来自用户报告。","LICENSE 为 MIT；随附的 Cascadia Code 字体采用 SIL Open Font License，Dear ImGui 有其自身许可。README 声明本程序与 Sony 无关，应用和耳机的相关权利仍归 Sony 所有。"],"targets":["app","protocol"],"url":"https://github.com/Plutoberth/SonyHeadphonesClient","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/neocanable/garlic/blob/700a7f4ea650f5ba5162604987f5a414a2e27026/MCP-SERVER.md","https://github.com/neocanable/garlic/blob/700a7f4ea650f5ba5162604987f5a414a2e27026/src/garlic.c#L133-L144","https://github.com/neocanable/garlic/blob/700a7f4ea650f5ba5162604987f5a414a2e27026/src/garlic.c#L320-L343","https://github.com/neocanable/garlic/blob/700a7f4ea650f5ba5162604987f5a414a2e27026/CMakeLists.txt#L135-L196","https://github.com/neocanable/garlic/tree/700a7f4ea650f5ba5162604987f5a414a2e27026/libs","https://github.com/neocanable/garlic/blob/700a7f4ea650f5ba5162604987f5a414a2e27026/docs/garlic-on-windows.md","https://github.com/neocanable/garlic/blob/700a7f4ea650f5ba5162604987f5a414a2e27026/LICENSE","https://github.com/neocanable/garlic/releases/tag/v1.8-release","https://github.com/neocanable/garlic/releases/tag/v1.8-release-thyme"],"category":"android","description_en":"Java and Android decompiler written in C that recovers Java source from class, JAR, WAR, DEX and APK files on multiple threads; it also prints javap- or dexdump-style class listings, converts APK and DEX files to smali, searches their strings with regular expressions and generates call graphs for DEX and APK files. Running garlic -m starts a stdio MCP server whose seven tools decompile files, dump class information, build call graphs, load them into DuckDB for SQL queries and read the extracted AndroidManifest.xml. The README reports decompiling an APK of more than 200 MB with about 190,000 classes in 12 seconds.","description_zh":"用 C 语言编写的 Java 与 Android 反编译器，可多线程地从 class、JAR、WAR、DEX 和 APK 文件还原 Java 源码；还能输出类似 javap 或 dexdump 的类信息，将 APK 和 DEX 转换为 smali，用正则表达式搜索其中的字符串，并为 DEX 和 APK 生成调用图。运行 garlic -m 会启动基于 stdio 的 MCP 服务器，提供七个工具，可反编译文件、输出类信息、构建调用图、将调用图导入 DuckDB 以便用 SQL 查询，以及读取提取出的 AndroidManifest.xml。README 称反编译一个超过 200 MB、约 19 万个类的 APK 只需 12 秒。","entry_url":"https://awesomerea.org/resources/garlic-decompiler/","entry_url_zh":"https://awesomerea.org/zh/resources/garlic-decompiler/","evidence_url":"https://github.com/neocanable/garlic/blob/700a7f4ea650f5ba5162604987f5a414a2e27026/README.md","group":"tools","id":"garlic-decompiler","json_url":"https://awesomerea.org/resources/garlic-decompiler/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/garlic-decompiler/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/garlic-decompiler/index.md","name":"Garlic","name_zh":"Garlic APK/Java 反编译器","record_type":"resource","relationship":"foundation","requirements":["Latest garlic release at review: v1.8-release, published 2026-08-17, with standalone binaries for Linux x64, i686 and aarch64, macOS x64 and aarch64, and Windows win32 and win64; the reviewed main commit is 34 commits ahead of it. The later v1.8-release-thyme tag instead carries installers for Thyme, a separate paid reverse-engineering IDE presented on the repository's homepage.","Source builds use CMake 3.26+ on Linux and macOS, Zig 0.16.0+ for host and cross-compiled builds, MinGW-w64 for Windows, or the Android NDK (r21 or later, verified on r28) for an arm64-v8a binary. The MCP server needs the DuckDB CLI on PATH for its analyze, cg_import and cg_query tools. Inputs are the user's own class, JAR, WAR, DEX or APK files.","The -n native-library analysis, which the README lists as control flow, IR, imports, exports, strings and call graphs for AArch64 ELF files, comes from librosemarylib: a closed-source library committed in prebuilt form as librosemarylib.so, .dylib and .dll files under libs/ for each desktop platform and embedded into the garlic binary at build time. Without it, and on Android, -n is disabled. garlic's -l option installs a purchased license key for that library.","The repository's LICENSE is Apache-2.0; no separate terms or source are published for librosemarylib. The README reports no correctness evaluation of decompiled output, and release notes list fixes for decompilation errors and crashes on specific apps."],"requirements_zh":["审阅时 garlic 的最新版本为 v1.8-release，发布于 2026-08-17，提供适用于 Linux（x64、i686、aarch64）、macOS（x64、aarch64）和 Windows（win32、win64）的独立二进制；所审阅的 main 提交比该版本多 34 个提交。之后的 v1.8-release-thyme 标签提供的则是 Thyme 的安装包，这是仓库主页介绍的另一款付费逆向工程 IDE。","从源码构建时，Linux 和 macOS 使用 CMake 3.26+，主机构建和交叉编译可使用 Zig 0.16.0+，Windows 使用 MinGW-w64，arm64-v8a 版本使用 Android NDK（r21 及以上，已在 r28 上验证）。MCP 服务器的 analyze、cg_import 和 cg_query 工具需要 PATH 中有 DuckDB 命令行工具。输入为使用者自己的 class、JAR、WAR、DEX 或 APK 文件。","-n 原生库分析功能（README 列出的内容为 AArch64 ELF 文件的控制流、IR、导入、导出、字符串和调用图）来自 librosemarylib：这是一个闭源库，以预编译的 librosemarylib.so、.dylib 和 .dll 文件形式按各桌面平台提交在 libs/ 下，并在构建时嵌入 garlic 二进制。缺少该库时以及在 Android 上，-n 功能被禁用。garlic 的 -l 选项用于为该库安装购买的许可证密钥。","仓库的 LICENSE 为 Apache-2.0；librosemarylib 没有单独公布条款或源码。README 未报告对反编译结果正确性的评估，发布说明列出了针对特定应用的反编译错误和崩溃修复。"],"targets":["app"],"url":"https://github.com/neocanable/garlic","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/CERT-Polska/drakvuf-sandbox/blob/7c328ab48bfe07b99c896c8695b7e51edf431ceb/docs/usage/getting_started.rst","https://github.com/CERT-Polska/drakvuf-sandbox/blob/7c328ab48bfe07b99c896c8695b7e51edf431ceb/docs/usage/basic_usage.rst","https://github.com/CERT-Polska/drakvuf-sandbox/blob/7c328ab48bfe07b99c896c8695b7e51edf431ceb/docs/usage/optional_features.rst","https://github.com/CERT-Polska/drakvuf-sandbox/blob/7c328ab48bfe07b99c896c8695b7e51edf431ceb/docs/ipt.rst","https://github.com/CERT-Polska/drakvuf-sandbox/blob/7c328ab48bfe07b99c896c8695b7e51edf431ceb/setup.py","https://github.com/CERT-Polska/drakvuf-sandbox/blob/7c328ab48bfe07b99c896c8695b7e51edf431ceb/requirements.txt","https://github.com/CERT-Polska/drakvuf-sandbox/blob/7c328ab48bfe07b99c896c8695b7e51edf431ceb/.gitmodules","https://github.com/CERT-Polska/drakvuf-sandbox/blob/7c328ab48bfe07b99c896c8695b7e51edf431ceb/test/test_sanity.py","https://github.com/CERT-Polska/drakvuf-sandbox/blob/7c328ab48bfe07b99c896c8695b7e51edf431ceb/test/conftest.py","https://github.com/CERT-Polska/drakvuf-sandbox/blob/7c328ab48bfe07b99c896c8695b7e51edf431ceb/.github/workflows/build.yml","https://github.com/CERT-Polska/drakvuf-sandbox/blob/7c328ab48bfe07b99c896c8695b7e51edf431ceb/LICENSE","https://github.com/CERT-Polska/drakvuf-sandbox/releases/tag/v0.21.0"],"category":"dynamic-analysis","description_en":"CERT Polska’s automated black-box malware analysis system built on the DRAKVUF engine, which observes a Windows guest from the Xen hypervisor through virtual machine introspection rather than an agent installed in the guest. Samples submitted through the web interface or the CLI run in a restored snapshot, and the report covers the process tree, WinAPI, file and network activity, a PCAP, intercepted TLS keys, memory dumps, screenshots and capa-based TTP indicators. A drakrun installer builds the Windows guest, its snapshot and the VMI profile.","description_zh":"CERT Polska 基于 DRAKVUF 引擎构建的自动化黑盒恶意软件分析系统，借助虚拟机自省从 Xen 虚拟机监控器一侧观察 Windows 客户机，无需在客户机中安装代理。通过 Web 界面或命令行提交的样本在恢复的快照中运行，报告涵盖进程树、WinAPI、文件与网络活动、PCAP、截获的 TLS 密钥、内存转储、截图以及基于 capa 的 TTP 指标。drakrun 安装命令负责构建 Windows 客户机、快照及 VMI 配置文件。","entry_url":"https://awesomerea.org/resources/drakvuf-sandbox/","entry_url_zh":"https://awesomerea.org/zh/resources/drakvuf-sandbox/","evidence_url":"https://github.com/CERT-Polska/drakvuf-sandbox/blob/7c328ab48bfe07b99c896c8695b7e51edf431ceb/README.md","group":"tools","id":"drakvuf-sandbox","json_url":"https://awesomerea.org/resources/drakvuf-sandbox/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/drakvuf-sandbox/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/drakvuf-sandbox/index.md","name":"DRAKVUF Sandbox","name_zh":"DRAKVUF Sandbox 虚拟机监控器级恶意软件分析沙箱","record_type":"resource","relationship":"foundation","requirements":["The reviewed master commit is the v0.21.0 release of 2026-08-19, which GitHub ships as a Python wheel; the drakvuf-sandbox package provides the drakrun CLI, web application and workers, needs Python 3.9+ and pins its dependencies, including flare-capa 7.4.0. The host needs an Intel CPU with VT-x and EPT and Debian 12 or Ubuntu 22.04 booted through GRUB into Xen 4.17+ (4.19 recommended); the getting-started guide asks for at least two cores and 8 GB of RAM, while the README says 5 GB. Xen, LibVMI and the DRAKVUF engine come from prebuilt .deb packages or source builds, Redis, dnsmasq, tcpdump and other host packages are added, and the documented installation runs as root.","Guests are Windows 10 x64 (build 2004 or later, 22H2 recommended) or Windows 7 x64, installed by drakrun install from a Windows installation ISO the user supplies and completed over VNC, then snapshotted and profiled by drakrun postinstall. The guide suggests turning off UAC and Windows Defender in the reference snapshot and adding Visual C++ and .NET runtimes, and each analysis can cut the guest’s internet access. Nested virtualization works under Xen, under KVM as experimental, and under VMware Workstation with virtualized EPT; cloud hosts, Hyper-V and VMware Fusion are unsupported.","Observations come from DRAKVUF plugins: apimon, filetracer, memdump, procmon, socketmon and tlsmon by default, with regmon, syscalls, exmon and others optional and Intel Processor Trace plugins documented as experimental. The docs warn that many plugins slow execution, that monitoring begins only after the sample process starts, and that summary observations derive from DRAKVUF output, so exact network data should be checked in the PCAP. S3 storage, a ZFS storage backend and Karton integration are optional.","Profiling injects a small drakshell shellcode agent into explorer.exe for preparation commands. The repository carries source for drakshell and other guest helpers, a 15 KB test/test.exe sample used by its sanity test, and pinned DRAKVUF and Mandiant capa-rules submodules. That test suite installs the sandbox on a VM-runner service needing project credentials, while the public workflow only builds the docs, tools, web bundle and wheel and lints the Python code. The README warns that maintaining a sandbox is difficult and bugs may reproduce only on one configuration.","LICENSE applies GPL-2.0 with the authors’ added clarifications and exceptions, including a broad reading of derivative works and a bar on combining it with plain-GPL software, so GitHub reports no standard license; DRAKVUF and the capa rules keep their own licenses, and Windows guests remain under Microsoft’s terms. It is a defensive platform for running untrusted samples in isolated guests."],"requirements_zh":["所审阅的 master 提交即 2026-08-19 发布的 v0.21.0，GitHub 发布页以 Python wheel 形式提供；drakvuf-sandbox 软件包包含 drakrun 命令行、Web 应用和工作进程，要求 Python 3.9+ 并固定依赖版本，其中包括 flare-capa 7.4.0。主机需要支持 VT-x 和 EPT 的 Intel 处理器，运行 Debian 12 或 Ubuntu 22.04 并通过 GRUB 引导进入 Xen 4.17+（推荐 4.19）；入门指南要求至少两个核心和 8 GB 内存，README 则写 5 GB。Xen、LibVMI 和 DRAKVUF 引擎可使用预编译 .deb 软件包或从源码构建，另需安装 Redis、dnsmasq、tcpdump 等主机软件包，文档中的安装步骤均以 root 身份执行。","客户机为 Windows 10 x64（2004 或更高版本，推荐 22H2）或 Windows 7 x64，由 drakrun install 使用使用者自备的 Windows 安装 ISO 安装，经 VNC 完成设置，再由 drakrun postinstall 创建快照并生成配置文件。指南建议在参考快照中关闭 UAC 和 Windows Defender，并安装 Visual C++ 与 .NET 运行库；每次分析都可以切断客户机的互联网访问。嵌套虚拟化可在 Xen、KVM（实验性）以及启用虚拟化 EPT 的 VMware Workstation 下运行；不支持云主机、Hyper-V 和 VMware Fusion。","观测数据来自 DRAKVUF 插件：默认启用 apimon、filetracer、memdump、procmon、socketmon 和 tlsmon，regmon、syscalls、exmon 等为可选，Intel Processor Trace 相关插件在文档中标为实验性。文档提醒，插件过多会拖慢执行；监控在样本进程启动之后才开始；摘要中的观测基于 DRAKVUF 输出，确切的网络数据应查看 PCAP。S3 存储、ZFS 存储后端和 Karton 集成均为可选功能。","生成配置文件时，系统会把名为 drakshell 的小型 shellcode 代理注入 explorer.exe，用于执行准备命令。仓库包含 drakshell 及其他客户机辅助工具的源码、供完整性测试使用的 15 KB 样本 test/test.exe，以及固定版本的 DRAKVUF 和 Mandiant capa-rules 子模块。该测试套件需在需要项目凭据的 VM-runner 服务上安装沙箱，公开工作流只构建文档、工具、Web 包和 wheel，并检查 Python 代码规范。README 提醒维护沙箱并不容易，某些问题可能只在特定配置下复现。","LICENSE 采用附加了作者澄清与例外条款的 GPL-2.0，其中包括对衍生作品的宽泛解释，并禁止与普通 GPL 软件组合，因此 GitHub 未识别出标准许可证；DRAKVUF 和 capa 规则各有其许可，Windows 客户机仍受 Microsoft 条款约束。这是在隔离客户机中运行不可信样本的防御性分析平台。"],"targets":["binary"],"url":"https://github.com/CERT-Polska/drakvuf-sandbox","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/igogo-x86/HexRaysPyTools/blob/b8ebf757a92fda934c35c418fc55bfdd6fc8e67c/HexRaysPyTools/settings.py#L11","https://github.com/igogo-x86/HexRaysPyTools/tree/b8ebf757a92fda934c35c418fc55bfdd6fc8e67c/HexRaysPyTools","https://github.com/igogo-x86/HexRaysPyTools/wiki/History/a83ae2746d63e55aa215ffb595642163101d5003"],"category":"native-analysis","description_en":"IDAPython plugin for IDA Pro's Hex-Rays decompiler that helps rebuild structures and classes from pseudocode. Its structure builder collects the fields a variable accesses within one function or, with deep scan, across the functions it is passed to, marks virtual tables, resolves conflicting fields and finalizes a C declaration applied to every scanned variable; a Classes view edits classes and their virtual functions, and a graph shows how local types relate. Pseudocode helpers recast and rename across assignments and calls, propagate names, rewrite out-of-bounds pointers as CONTAINING_RECORD for a containing structure, edit function signatures, rename functions from assert strings and untangle if statements.","description_zh":"面向 IDA Pro Hex-Rays 反编译器的 IDAPython 插件，帮助根据伪代码重建结构体和类。其结构体构建器可在单个函数内，或通过深度扫描在变量被传入的各个函数中，收集该变量访问的字段，识别虚表，解决字段冲突，并生成 C 声明应用到所有已扫描的变量；Classes 视图可编辑类及其虚函数，结构图则展示本地类型之间的关系。伪代码辅助功能可沿赋值和调用两侧统一类型与名称、传播名称、将越界指针改写为包含结构体的 CONTAINING_RECORD、修改函数签名、根据 assert 字符串批量重命名函数，以及整理 if 语句。","entry_url":"https://awesomerea.org/resources/hexrayspytools/","entry_url_zh":"https://awesomerea.org/zh/resources/hexrayspytools/","evidence_url":"https://github.com/igogo-x86/HexRaysPyTools/blob/b8ebf757a92fda934c35c418fc55bfdd6fc8e67c/readme.md","group":"tools","id":"hexrayspytools","json_url":"https://awesomerea.org/resources/hexrayspytools/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/hexrayspytools/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hexrayspytools/index.md","name":"HexRaysPyTools","name_zh":"HexRaysPyTools 结构体重建插件","record_type":"resource","relationship":"foundation","requirements":["No commits since 2020-02-15 and no releases; the tags ida_6_8 and ida_7_2 mark older code. The README states support for IDA Pro 7.x with Python 2 or 3 and says nothing about later IDA releases; it notes that IDA 7.4 added an official implementation of its structure cross-references (Shift+X), describes Guessing Allocation as a very raw feature and marks its API as under construction.","Needs IDA Pro with the Hex-Rays decompiler. Installation copies HexRaysPyTools.py and the HexRaysPyTools directory into IDA's plugins folder; settings live in IDADIR\\cfg\\HexRaysPyTools.cfg, and by default the cross-references collected during decompilation are stored in the database (store_xrefs). It works on the analyst's own IDA databases and type libraries.","The repository has no license file and GitHub detects no license, so it grants no explicit reuse terms."],"requirements_zh":["自 2020-02-15 以来没有新的提交，也没有发布版本；ida_6_8 和 ida_7_2 标签对应较早的代码。README 称支持使用 Python 2 或 3 的 IDA Pro 7.x，未提及之后的 IDA 版本；README 还指出 IDA 7.4 已官方实现其结构体交叉引用功能（Shift+X），称 Guessing Allocation 是非常初步的功能，并将 API 标为尚在建设中。","需要带 Hex-Rays 反编译器的 IDA Pro。安装时将 HexRaysPyTools.py 和 HexRaysPyTools 目录复制到 IDA 的 plugins 目录；配置位于 IDADIR\\cfg\\HexRaysPyTools.cfg，默认会把反编译时收集的交叉引用保存到数据库中（store_xrefs）。插件作用于分析人员自己的 IDA 数据库和类型库。","仓库没有许可证文件，GitHub 也未识别出许可证，因此未明确授予任何复用条款。"],"targets":["binary"],"url":"https://github.com/igogo-x86/HexRaysPyTools","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/brent-stone/CAN_Reverse_Engineering/blob/096dfe828a54964a10d2967fc65bf7c6537761a0/requirements.txt","https://github.com/brent-stone/CAN_Reverse_Engineering/tree/096dfe828a54964a10d2967fc65bf7c6537761a0/Pipeline","https://github.com/brent-stone/CAN_Reverse_Engineering/tree/096dfe828a54964a10d2967fc65bf7c6537761a0/Pipeline_multi-file","https://github.com/brent-stone/CAN_Reverse_Engineering/tree/096dfe828a54964a10d2967fc65bf7c6537761a0/R","https://github.com/brent-stone/CAN_Reverse_Engineering/blob/096dfe828a54964a10d2967fc65bf7c6537761a0/LICENSE"],"category":"protocol-analysis","description_en":"Research Python and R scripts that automate reverse engineering of Controller Area Network (CAN) payloads recorded from passenger vehicles, implementing the pipeline from Brent Stone's AFIT dissertation. The Python pipeline pre-processes a CAN log into per-arbitration-ID data frames, pulls out public SAE J1979 diagnostic data, runs a lexical analysis that guesses individual signal time-series boundaries, then a semantic analysis that builds a correlation matrix and hierarchically clusters related signals, with plots and a dendrogram as output. A separate R script set applies the rEDM empirical dynamic modeling package to engine-RPM, brake-pressure and vehicle-speed time series to study causal relationships.","description_zh":"一组研究用途的 Python 和 R 脚本，用于自动逆向分析从乘用车采集的控制器局域网（CAN）报文负载，实现了 Brent Stone 在 AFIT 的博士论文所述的流水线。Python 流水线先把 CAN 日志预处理为按仲裁 ID 组织的数据框，提取公开的 SAE J1979 诊断数据，再通过词法分析推测各信号时间序列的边界，随后通过语义分析构建相关性矩阵并对相关信号做层次聚类，输出图表和树状聚类图。另一组 R 脚本调用 rEDM 经验动力学建模包，对发动机转速、刹车压力和车速时间序列分析因果关系。","entry_url":"https://awesomerea.org/resources/can-reverse-engineering/","entry_url_zh":"https://awesomerea.org/zh/resources/can-reverse-engineering/","evidence_url":"https://github.com/brent-stone/CAN_Reverse_Engineering/blob/096dfe828a54964a10d2967fc65bf7c6537761a0/README.md","group":"tools","id":"can-reverse-engineering","json_url":"https://awesomerea.org/resources/can-reverse-engineering/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/can-reverse-engineering/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/can-reverse-engineering/index.md","name":"Automated CAN Payload Reverse Engineering","name_zh":"CAN 负载自动逆向分析流水线","record_type":"resource","relationship":"foundation","requirements":["Dissertation research code with no releases or tags; the reviewed commit dates to 2022-02-01. The README says the scripts were developed and tested on Python 3.6 and need NumPy, Pandas, scikit-learn and (for plotting) matplotlib listed in requirements.txt; the R scripts need R with the rEDM package. There is no packaging or install step, and the README says the scripts will not run immediately after cloning.","Two Python folders implement the same concept: Pipeline is the basic single-file version driven from Main.py, and Pipeline_multi-file is the more complete batch version that the README says contains bug fixes not back-ported to Pipeline. Input is a CAN capture in the bundled loggerProgram0.log delta-time/ID/DLC/hex format; an April 2020 addition also reads the can-utils log format via a -c/--can-utils argument, and other formats require editing PreProcessor.py.","The user supplies their own CAN capture. The repository bundles the author's own example data: the loggerProgram0.log vehicle capture, example pipeline output, an OBD2 PID table, and R-folder CSV time series of engine RPM, brake pressure and vehicle speed for different driving conditions, plus the author's dissertation PDF. The results are signal-boundary and clustering estimates that need analyst validation, not confirmed signal definitions.","The repository includes a GPL-3.0 LICENSE file, while the README states the code is a work of the U.S. Government not subject to copyright protection in the United States, cleared for public release (case 88ABW-2019-0910). The scripts read passive logs and perform analysis only; no device interaction or frame transmission is described."],"requirements_zh":["这是论文研究代码，没有发布版或标签；所审阅的提交日期为 2022-02-01。README 称脚本在 Python 3.6 上开发和测试，需要 requirements.txt 中列出的 NumPy、Pandas、scikit-learn 和（用于绘图的）matplotlib；R 脚本需要安装了 rEDM 包的 R 环境。没有打包或安装步骤，README 也说明克隆后脚本无法立即运行。","两个 Python 文件夹实现同一套思路：Pipeline 是由 Main.py 驱动的基础单文件版本，Pipeline_multi-file 是更完整的批处理版本，README 称其中包含未回移到 Pipeline 的缺陷修复。输入为随附 loggerProgram0.log 所示的 delta 时间/ID/DLC/十六进制格式 CAN 采集；2020 年 4 月新增可通过 -c/--can-utils 参数读取 can-utils 日志格式，其他格式需修改 PreProcessor.py。","使用者需自备 CAN 采集数据。仓库附带作者自有的示例数据：loggerProgram0.log 车辆采集、示例流水线输出、一份 OBD2 PID 表，以及 R 文件夹中不同驾驶条件下发动机转速、刹车压力和车速的 CSV 时间序列，另含作者的博士论文 PDF。其结果是信号边界和聚类的估计值，需要分析者验证，而非已确认的信号定义。","仓库包含 GPL-3.0 许可证文件，而 README 声明该代码属于美国政府作品，在美国不受版权保护，并已获准公开发布（案号 88ABW-2019-0910）。脚本读取被动日志、仅做分析，未描述任何设备交互或帧发送。"],"targets":["protocol"],"url":"https://github.com/brent-stone/CAN_Reverse_Engineering","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/kevoreilly/CAPEv2/blob/38c34af1aaeda512ea21ee834d19818a08a85d08/LICENSE","https://github.com/kevoreilly/CAPEv2/tree/38c34af1aaeda512ea21ee834d19818a08a85d08/analyzer/windows/bin","https://github.com/kevoreilly/CAPEv2/tree/38c34af1aaeda512ea21ee834d19818a08a85d08/analyzer/windows/dll","https://github.com/kevoreilly/CAPEv2/blob/38c34af1aaeda512ea21ee834d19818a08a85d08/.gitmodules","https://github.com/kevoreilly/CAPEv2/blob/38c34af1aaeda512ea21ee834d19818a08a85d08/pyproject.toml","https://github.com/kevoreilly/CAPEv2/blob/38c34af1aaeda512ea21ee834d19818a08a85d08/changelog.md","https://github.com/kevoreilly/CAPEv2/blob/38c34af1aaeda512ea21ee834d19818a08a85d08/.github/workflows/python-package.yml","https://github.com/kevoreilly/CAPEv2/blob/38c34af1aaeda512ea21ee834d19818a08a85d08/.github/workflows/python-package-windows.yml","https://github.com/kevoreilly/capemon/blob/b22d3d6d84bccd3c3d5eb933c5f5ea7fa60f1240/README.md"],"category":"dynamic-analysis","description_en":"Malware sandbox derived from Cuckoo v1 that runs samples in isolated Windows guests and records API-hook behavior, created and modified files, network traffic as PCAP, screenshots and memory dumps. Its capemon monitor adds automated unpacking, capturing injected, extracted or decompressed payloads and dumping process images, plus a debugger that YARA signatures or submission options can program with breakpoints and short instruction traces. Results are classified with YARA, Suricata and behavioral signatures, and malware configurations are extracted by parsers maintained in the separate CAPE-parsers package.","description_zh":"源自 Cuckoo v1 的恶意软件沙箱，在隔离的 Windows 客户机中运行样本，记录 API 挂钩行为、创建和修改的文件、PCAP 网络流量、屏幕截图和内存转储。其 capemon 监控组件增加了自动脱壳功能，可捕获被注入、解出或解压的载荷并转储进程映像；内置调试器可由 YARA 签名或提交选项设置断点并输出简短的指令跟踪。结果通过 YARA、Suricata 和行为签名分类，恶意软件配置则由独立的 CAPE-parsers 包中的解析器提取。","entry_url":"https://awesomerea.org/resources/capev2/","entry_url_zh":"https://awesomerea.org/zh/resources/capev2/","evidence_url":"https://github.com/kevoreilly/CAPEv2/blob/38c34af1aaeda512ea21ee834d19818a08a85d08/README.md","group":"tools","id":"capev2","json_url":"https://awesomerea.org/resources/capev2/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/capev2/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/capev2/index.md","name":"CAPE Sandbox (CAPEv2)","name_zh":"CAPEv2 恶意软件沙箱","record_type":"resource","relationship":"foundation","requirements":["There are no releases or tags: the reviewed master commit of 2026-10-18 is a rolling snapshot, with changes recorded in changelog.md, and pyproject.toml carries the placeholder version 0.1.0. The README recommends an Ubuntu 24.04 LTS host with KVM and Python 3.10 or 3.12, and Windows 10 or Windows 11 23H2 guests running agent.py under 32-bit Python 3.7.2 or 3.8. The kvm-qemu.sh and cape2.sh installers must be edited before use, only the rooter component runs as root, and the README asks users to read every file in conf/.","Users supply the samples and their own Windows guest VMs; the repository ships no guest operating system. The Windows analyzer bundles helper binaries: the capemon.dll and capemon_x64.dll monitors and the loader.exe and loader_x64.exe loaders, built from the separate GPL-3.0 capemon repository; PPLinject and version.dll helpers whose source the reviewed files do not identify; and third-party tools under their publishers' own terms, namely Sysinternals PsExec, signtool.exe from the Windows SDK and the AutoIt3 interpreter.","CI runs ruff, the pytest suites for the core, web interface and Linux analyzer, and mypy on Ubuntu 22.04 with Python 3.10 after a recursive checkout, plus pytest for the Windows analyzer on Windows. These check the framework's code, not detection or unpacking quality, and the README warns that configuration parsers can break as malware families change. A recursive clone also fetches the CAPE-TestFiles unit-test submodule, which includes a malware folder.","LICENSE applies GPL-3.0 under a Cuckoo Foundation notice, which GitHub reports as NOASSERTION; the bundled Microsoft and AutoIt executables are not covered by it. Analysis executes malicious files, which the README places in an isolated environment."],"requirements_zh":["项目没有发布版本或标签：所审阅的 2026-10-18 master 提交是滚动快照，变更记录在 changelog.md 中，pyproject.toml 中的版本号 0.1.0 只是占位。README 建议使用 Ubuntu 24.04 LTS 宿主机、KVM 以及 Python 3.10 或 3.12，客户机为 Windows 10 或 Windows 11 23H2，并在其中用 32 位 Python 3.7.2 或 3.8 运行 agent.py。kvm-qemu.sh 与 cape2.sh 安装脚本需先修改再使用，只有 rooter 组件以 root 运行，README 还要求用户通读 conf/ 中的所有文件。","样本和 Windows 客户虚拟机由使用者自备；仓库不提供客户机操作系统。Windows 分析组件附带若干辅助二进制：capemon.dll 与 capemon_x64.dll 监控组件以及 loader.exe 与 loader_x64.exe 加载器，由独立的 GPL-3.0 capemon 仓库构建；PPLinject 和 version.dll 辅助程序，所审文件未说明其源码出处；以及受各自发行方条款约束的第三方工具，即 Sysinternals PsExec、Windows SDK 中的 signtool.exe 和 AutoIt3 解释器。","CI 在递归检出后于 Ubuntu 22.04 和 Python 3.10 上运行 ruff、核心、Web 界面与 Linux 分析组件的 pytest 测试套件以及 mypy，并在 Windows 上运行 Windows 分析组件的 pytest 测试。这些测试检查框架代码，并不衡量检测或脱壳效果；README 也提醒，配置解析器可能因恶意软件家族变化而失效。递归克隆还会拉取 CAPE-TestFiles 单元测试子模块，其中包含一个恶意软件目录。","LICENSE 在 Cuckoo Foundation 声明下采用 GPL-3.0，GitHub 将其识别为 NOASSERTION；随附的 Microsoft 与 AutoIt 可执行文件不受该许可证覆盖。分析过程会执行恶意文件，README 说明应在隔离环境中进行。"],"targets":["binary"],"url":"https://github.com/kevoreilly/CAPEv2","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/viruscamp/luadec/blob/895d92313fabaee260121c758c8320d1b21dd741/.gitmodules","https://github.com/viruscamp/luadec/blob/895d92313fabaee260121c758c8320d1b21dd741/luadec/Makefile","https://github.com/viruscamp/luadec/blob/895d92313fabaee260121c758c8320d1b21dd741/luadec/luadec.c","https://github.com/viruscamp/luadec/blob/895d92313fabaee260121c758c8320d1b21dd741/luadec/luaopswap.c","https://github.com/viruscamp/luadec/blob/895d92313fabaee260121c758c8320d1b21dd741/luadec/luareplace.c","https://github.com/viruscamp/luadec/blob/895d92313fabaee260121c758c8320d1b21dd741/.travis.yml","https://github.com/viruscamp/luadec/tree/895d92313fabaee260121c758c8320d1b21dd741/test"],"category":"native-analysis","description_en":"Lua bytecode decompiler that turns compiled chunks back into Lua source, with a disassembly mode, selection of single nested functions by number and a guesser for local variable declarations that can be overridden by hand. Its -fc option recompiles each decompiled function and compares it instruction by instruction with the original. It targets Lua 5.1, marks Lua 5.2 and 5.3 support as experimental, and continues Hisham Muhammad’s LuaDec for Lua 5.0 and Zsolt Sztupak’s LuaDec51.","description_zh":"Lua 字节码反编译器，可把编译后的代码块还原为 Lua 源码，提供反汇编模式，可按编号只处理某个嵌套函数，并能推测局部变量声明，推测结果也可手动指定。其 -fc 选项会重新编译每个反编译出的函数，并与原函数逐条指令比较。它以 Lua 5.1 为主要目标，Lua 5.2 和 5.3 的支持标为实验性，延续了 Hisham Muhammad 面向 Lua 5.0 的 LuaDec 和 Zsolt Sztupak 的 LuaDec51。","entry_url":"https://awesomerea.org/resources/luadec/","entry_url_zh":"https://awesomerea.org/zh/resources/luadec/","evidence_url":"https://github.com/viruscamp/luadec/blob/895d92313fabaee260121c758c8320d1b21dd741/ReadMe.md","group":"tools","id":"luadec","json_url":"https://awesomerea.org/resources/luadec/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/luadec/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/luadec/index.md","name":"LuaDec","name_zh":"LuaDec：Lua 字节码反编译器","record_type":"resource","relationship":"foundation","requirements":["The reviewed master commit, the latest on the default branch, dates from 2017-01-06, and the repository has no releases or tags. A build initialises one Lua submodule from the author’s lua5 fork (branch 5.1, 5.2 or 5.3), builds that Lua, then runs make LUAVER=5.x in luadec/, which also builds the luareplace and luaopswap helpers; Visual C++ 2008 project files are included, which the README says were tested with VC 2008 and 2013. A Travis CI configuration builds each Lua version with gcc and clang but runs no tests.","Input is a chunk compiled by the matching standard Lua version, or a Lua source file compiled on the fly for testing. For bytecode from a virtual machine with a reordered opcode table, luaopswap compares that VM’s compilation of a bundled script using every opcode with a standard compilation, derives an opcode map and rewrites files to standard opcodes; luareplace swaps a nested function between two files. The -fc check reports per function whether the decompiled code recompiles to the same instructions, and the README’s own example shows failures, so output must be checked function by function.","test/ holds small Lua source cases for control-flow constructs, and test-compiled/lua-5.1 bundles compiled Lua 5.1 chunks as decompiler inputs, including files named for the Xunlei downloader, JX3 add-ons and the Defense Witches game; the repository does not state their origin or rights. ChunkSpy listers for each Lua version and Ruby comparison scripts are also included.","The README says LuaDec is free software under the same license as the original LuaDec but does not name it, the repository has no license file and GitHub detects none, so reuse terms are unclear; the Lua, LuaAssemblyTools, ilua and memwatch submodules and the bundled ChunkSpy scripts keep their own terms."],"requirements_zh":["所审阅的 master 提交是默认分支上的最新提交，日期为 2017-01-06，仓库没有发布版本或标签。构建时先初始化作者 lua5 分支仓库中对应的 Lua 子模块（5.1、5.2 或 5.3 分支）并构建该 Lua，再在 luadec/ 中运行 make LUAVER=5.x，同时生成 luareplace 和 luaopswap 辅助工具；仓库附带 Visual C++ 2008 项目文件，README 称已在 VC 2008 和 2013 上测试。Travis CI 配置用 gcc 和 clang 分别构建各 Lua 版本，但不运行测试。","输入为对应标准 Lua 版本编译的代码块，也可以是为测试而即时编译的 Lua 源文件。对于使用重排操作码表的虚拟机所生成的字节码，luaopswap 会把该虚拟机编译随附的全操作码脚本所得结果与标准编译结果比较，推导操作码映射，并把文件改写为标准操作码；luareplace 可在两个文件之间替换嵌套函数。-fc 检查逐个函数报告反编译代码重新编译后是否得到相同指令，README 自己的示例中就有失败项，因此需要逐个函数核对输出。","test/ 中是针对各种控制流结构的小型 Lua 源码用例，test-compiled/lua-5.1 则附带编译后的 Lua 5.1 代码块作为反编译输入，其中包括以迅雷下载器、JX3 插件和 Defense Witches 游戏命名的文件；仓库未说明这些文件的来源或权利。仓库还包含各 Lua 版本的 ChunkSpy 列表工具和 Ruby 比较脚本。","README 称 LuaDec 是自由软件，采用与原版 LuaDec 相同的许可，但未写明具体许可；仓库中没有许可证文件，GitHub 也未识别出许可证，因此再使用条款并不明确。Lua、LuaAssemblyTools、ilua 和 memwatch 子模块以及随附的 ChunkSpy 脚本各有其条款。"],"targets":["binary","game"],"url":"https://github.com/viruscamp/luadec","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/ab-rizk/xpcspy/blob/07c5a5b323d85c578d7892dbeffdd88d0700b174/setup.py","https://github.com/ab-rizk/xpcspy/blob/07c5a5b323d85c578d7892dbeffdd88d0700b174/requirements.txt","https://github.com/ab-rizk/xpcspy/blob/07c5a5b323d85c578d7892dbeffdd88d0700b174/Makefile","https://github.com/ab-rizk/xpcspy/blob/07c5a5b323d85c578d7892dbeffdd88d0700b174/agent/package.json","https://github.com/ab-rizk/xpcspy/blob/07c5a5b323d85c578d7892dbeffdd88d0700b174/xpcspy/__init__.py","https://github.com/ab-rizk/xpcspy/blob/07c5a5b323d85c578d7892dbeffdd88d0700b174/LICENSE","https://github.com/ab-rizk/xpcspy/releases/tag/v0.9.0","https://pypi.org/project/xpcspy/0.9.0/"],"category":"dynamic-analysis","description_en":"Frida-powered command-line tool that observes XPC messages exchanged between processes on iOS and macOS in both directions, for understanding how Apple-platform apps and services talk over XPC. It can spawn or attach to a target over a USB or remote Frida connection, filter the trace by direction (incoming or outgoing) and by service name with wildcards, and optionally parse the binary-plist payloads carried in XPC dictionaries, with bplist00 and bplist16 described as officially supported and bplist15 and bplist17 as experimental. A Python CLI drives a TypeScript Frida agent that is compiled to JavaScript.","description_zh":"基于 Frida 的命令行工具，可双向观察 iOS 和 macOS 上进程之间交换的 XPC 消息，用于理解 Apple 平台的应用与服务如何通过 XPC 通信。它可通过 USB 或远程 Frida 连接启动或附加到目标，按方向（传入或传出）和带通配符的服务名过滤跟踪，并可选解析 XPC 字典中携带的二进制 plist 负载，其中 bplist00 和 bplist16 被列为正式支持，bplist15 和 bplist17 为实验性。工具由 Python 命令行驱动一个编译为 JavaScript 的 TypeScript Frida 代理。","entry_url":"https://awesomerea.org/resources/xpcspy/","entry_url_zh":"https://awesomerea.org/zh/resources/xpcspy/","evidence_url":"https://github.com/ab-rizk/xpcspy/blob/07c5a5b323d85c578d7892dbeffdd88d0700b174/README.md","group":"tools","id":"xpcspy","json_url":"https://awesomerea.org/resources/xpcspy/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/xpcspy/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/xpcspy/index.md","name":"xpcspy","name_zh":"xpcspy XPC 消息拦截工具","record_type":"resource","relationship":"foundation","requirements":["Reviewed at tag v0.9.0 (the reviewed commit, last pushed 2026-05-11); the matching xpcspy 0.9.0 release was uploaded to PyPI the same day. requirements.txt pins frida ~=17.9.7 and frida-tools ~=14.8.2, so a compatible Frida must be present, and interception works only where that Frida can instrument the target: a local macOS process, or an iOS device reachable by a frida-server over USB (-U) or remotely (-R/-H).","Install with pip3 install xpcspy for the CLI. Building from source uses the Makefile: the Frida agent under agent/ is a TypeScript project compiled with frida-compile (needs Node.js and npm), then python3 setup.py sdist packages the Python tool. The package metadata credits author hot3eed and points its homepage at github.com/hot3eed/xpcspy.","The analyst chooses the process to inspect by name, PID, frontmost application or a spawned file; no sample files ship with the tool. It reads the XPC traffic of a running target for analysis and does not modify or inject messages. bplist parsing is partly experimental, and the README's TODO list notes recursive bplist deserialization and other unfinished work.","Apache-2.0."],"requirements_zh":["审阅版本为标签 v0.9.0（即所审阅的提交，最后推送于 2026-05-11）；对应的 xpcspy 0.9.0 版当天上传至 PyPI。requirements.txt 固定 frida ~=17.9.7 和 frida-tools ~=14.8.2，因此需要存在兼容的 Frida，且拦截只能在该 Frida 能够插桩目标的场景下进行：本地 macOS 进程，或可通过 USB（-U）或远程（-R/-H）由 frida-server 访问的 iOS 设备。","通过 pip3 install xpcspy 安装命令行工具。从源码构建使用 Makefile：agent/ 下的 Frida 代理是用 frida-compile 编译的 TypeScript 项目（需要 Node.js 和 npm），随后用 python3 setup.py sdist 打包 Python 工具。包元数据标注作者为 hot3eed，并将主页指向 github.com/hot3eed/xpcspy。","分析者通过名称、PID、前台应用或启动的文件来选择要检查的进程；工具不附带任何样本文件。它读取运行中目标的 XPC 流量用于分析，不会修改或注入消息。bplist 解析部分仍属实验性，README 的 TODO 列表也提到递归 bplist 反序列化等尚未完成的工作。","采用 Apache-2.0 许可。"],"targets":["app","protocol"],"url":"https://github.com/ab-rizk/xpcspy","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/Fadi002/de4py/blob/0f66191b514e8c5a4de82aef7b01704385066629/pyproject.toml","https://github.com/Fadi002/de4py/blob/0f66191b514e8c5a4de82aef7b01704385066629/requirements.txt","https://github.com/Fadi002/de4py/tree/0f66191b514e8c5a4de82aef7b01704385066629/samples","https://github.com/Fadi002/de4py/blob/0f66191b514e8c5a4de82aef7b01704385066629/INFO/version","https://github.com/Fadi002/de4py/blob/0f66191b514e8c5a4de82aef7b01704385066629/LICENSE","https://github.com/Fadi002/de4py/releases/tag/v3.3.2-stable"],"category":"native-analysis","description_en":"Python deobfuscation and analysis toolkit with a PySide6 GUI and a CLI mode, aimed at analysts examining obfuscated or packed Python programs. It bundles deobfuscators for named Python obfuscators such as Jawbreaker, BlankOBF, PlusOBF, Wodx, Hyperion and pyobfuscate, and an AI-assisted \"Onyx\" engine that pairs a local Ollama LLM (default qwen2.5-coder:1.5b) with AST cleaning and pattern matching. A file analyzer detects packers such as PyInstaller, computes hashes, looks up suspicious strings and extracts metadata, while a behavior monitor and a Python-code execution shell support dynamic inspection of a target process. It has a plugin API and can be used as a library.","description_zh":"带 PySide6 图形界面和命令行模式的 Python 反混淆与分析工具包，面向分析被混淆或打包的 Python 程序的人员。它内置针对多种 Python 混淆器（如 Jawbreaker、BlankOBF、PlusOBF、Wodx、Hyperion 和 pyobfuscate）的反混淆器，以及一个 AI 辅助的 \"Onyx\" 引擎，将本地 Ollama 大模型（默认 qwen2.5-coder:1.5b）与 AST 清理和模式匹配结合。文件分析器可检测 PyInstaller 等打包器、计算哈希、查找可疑字符串并提取元数据；行为监视器和一个执行 Python 代码的交互壳则用于对目标进程做动态检查。它提供插件 API，也可作为库使用。","entry_url":"https://awesomerea.org/resources/de4py/","entry_url_zh":"https://awesomerea.org/zh/resources/de4py/","evidence_url":"https://github.com/Fadi002/de4py/blob/0f66191b514e8c5a4de82aef7b01704385066629/README.md","group":"tools","id":"de4py","json_url":"https://awesomerea.org/resources/de4py/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/de4py/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/de4py/index.md","name":"de4py","name_zh":"de4py Python 反混淆与分析工具包","record_type":"resource","relationship":"foundation","requirements":["The reviewed main commit (2026-08-17) is 18 commits past the v3.3.2-stable release (2026-08-12) and carries the same 3.3.2 version. The README asks for Python 3.10+ and recommends Windows for full feature support, while pyproject.toml declares requires-python >=3.8. There is no PyPI package: install from source with git clone then pip install . (entry point de4py, or python -m de4py / python main.py).","Dependencies include PySide6 for the GUI, xdis, pefile and pyinstaller for the analyzers, plus requests, psutil, pycryptodome, colorama, pypresence and sentry-sdk; the project also ships a remote API client and Sentry telemetry. The optional Onyx AI engine needs a separately installed Ollama with the configured model pulled; the model and thresholds are set in the UI.","Inputs are the user's own obfuscated Python scripts or packed executables. The repository's samples directory bundles the project's own test fixtures: obfuscated Python files for each supported obfuscator and small packer-built sample executables (PyInstaller, Nuitka and py2exe outputs). No third-party application files are required.","Licensed CC BY-NC 4.0 (non-commercial); the README states the tool is free and open source and that any paid copies are misrepresentations, and GitHub does not classify this license. The disclaimer says the tool is for educational purposes and that software should not be deobfuscated without permission."],"requirements_zh":["所审阅的 main 提交（2026-08-17）比 v3.3.2-stable 发布版（2026-08-12）多 18 个提交，版本号同为 3.3.2。README 要求 Python 3.10+ 并建议使用 Windows 以获得完整功能，而 pyproject.toml 声明 requires-python >=3.8。没有 PyPI 包：需从源码安装，先 git clone 再 pip install .（入口命令 de4py，或 python -m de4py / python main.py）。","依赖包括用于图形界面的 PySide6，用于分析的 xdis、pefile 和 pyinstaller，以及 requests、psutil、pycryptodome、colorama、pypresence 和 sentry-sdk；项目还附带远程 API 客户端和 Sentry 遥测。可选的 Onyx AI 引擎需要另行安装 Ollama 并拉取所配置的模型；模型和阈值在界面中设置。","输入为使用者自己的被混淆 Python 脚本或打包的可执行文件。仓库的 samples 目录附带项目自有的测试样本：针对各受支持混淆器的混淆 Python 文件，以及由 PyInstaller、Nuitka 和 py2exe 构建的小型示例可执行文件。无需任何第三方应用文件。","采用 CC BY-NC 4.0（非商业）许可；README 声明本工具免费开源，任何付费版本都属误导，GitHub 未能识别该许可证。免责声明称本工具仅供教育用途，未经许可不应对软件进行反混淆。"],"targets":["app","binary"],"url":"https://github.com/Fadi002/de4py","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/fujihack/fujihack/blob/754acff9aa0322df19446cf7eca699b221c3330d/Makefile","https://github.com/fujihack/fujihack/blob/754acff9aa0322df19446cf7eca699b221c3330d/src/Makefile","https://github.com/fujihack/fujihack/blob/754acff9aa0322df19446cf7eca699b221c3330d/usb/Makefile","https://github.com/fujihack/fujihack/blob/754acff9aa0322df19446cf7eca699b221c3330d/usb/main.c","https://github.com/fujihack/fujihack/blob/754acff9aa0322df19446cf7eca699b221c3330d/src/patch/debug.S","https://github.com/fujihack/fujihack/tree/754acff9aa0322df19446cf7eca699b221c3330d/model","https://github.com/fujihack/fujihack/blob/754acff9aa0322df19446cf7eca699b221c3330d/model/xf1_101.h","https://github.com/fujihack/fujihack/blob/754acff9aa0322df19446cf7eca699b221c3330d/etc/NOTES.md","https://github.com/fujihack/fujihack/blob/754acff9aa0322df19446cf7eca699b221c3330d/etc/unicorn/main.py","https://github.com/fujihack/fujihack/blob/754acff9aa0322df19446cf7eca699b221c3330d/.github/workflows_/makefile.yml","https://github.com/fujihack/fujihack/blob/754acff9aa0322df19446cf7eca699b221c3330d/.gitmodules","https://github.com/fujihack/fujihack/blob/754acff9aa0322df19446cf7eca699b221c3330d/LICENSE","https://github.com/fujihack/fujihack/releases/tag/0.2.0","https://github.com/fujihack/fujihack/releases/tag/0.1.0"],"category":"firmware","description_en":"Research codebase for reverse engineering Fujifilm cameras so that custom code can run on them under a patched firmware. It holds ARM firmware patches, chiefly a PTP/USB debugger that adds memory read, write and execute commands, a host CLI that uploads code and dumps memory over USB, and C headers documenting Fujifilm’s RTOS API with per-model firmware addresses and function stubs. On-camera code adds POSIX, graphics and I/O wrappers over that RTOS, a video record-limit mod, button remapping and the Frontier UI and module system.","description_zh":"以逆向 Fujifilm 相机为目标的研究代码库，使自定义代码能够在打过补丁的固件下于相机上运行。其中包括 ARM 固件补丁，最主要的是为 PTP/USB 增加内存读、写和执行命令的调试器补丁；一个通过 USB 上传代码并转储内存的主机命令行工具；以及记录 Fujifilm RTOS API 的 C 头文件，附各机型的固件地址和函数桩。相机端代码在该 RTOS 之上提供 POSIX、图形和 I/O 封装，并包含解除录像时长限制的修改、按键重映射，以及名为 Frontier 的界面与模块系统。","entry_url":"https://awesomerea.org/resources/fujihack/","entry_url_zh":"https://awesomerea.org/zh/resources/fujihack/","evidence_url":"https://github.com/fujihack/fujihack/blob/754acff9aa0322df19446cf7eca699b221c3330d/README.md","group":"tools","id":"fujihack","json_url":"https://awesomerea.org/resources/fujihack/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/fujihack/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fujihack/index.md","name":"FujiHack","name_zh":"FujiHack：Fujifilm 相机固件逆向研究项目","record_type":"resource","relationship":"foundation","requirements":["The reviewed master commit dates from 2024-08-17. Its two GitHub releases carry no files: 0.1.0, the debugger release of 2022-10-27, is marked deprecated in favour of a separate fffw project, and 0.2.0, a 2023 DOOM-port demo for the X-A2, is marked no longer supported. The README says FujiHack runs only under a patched firmware, that custom firmware is always dangerous and can damage the camera, and that recovery of bricked devices through the SoC boot ROM has not been reverse engineered. It reports the debugger patch ported to the XF1 and X-A2; model headers with firmware addresses cover ten cameras, from the Z3 and HS20EXR to the X-T4.","The repository contains no Fujifilm firmware, dumps or keys: model headers reference the vendor’s own firmware download URLs, and patching happens in the separate browser-based patcher, which the README says unpacks, injects, patches, repacks and downgrades a firmware DAT file the user selects. Helper programs in etc/, including a Unicorn emulation script, read firmware or RAM dumps the user makes from their own camera.","On-camera code is built per model with arm-none-eabi-gcc, plus rustc for a few Rust files, through make hack.bin model=<model>. The host fuji CLI needs libusb-1.0 and the camlib PTP library submodule, and its Windows build downloads the author’s libwpd DLL. A workflow that compiled the X-A2 target sits in a disabled .github/workflows_ directory, so no CI runs, and there are no tests.","GPL-3.0 per LICENSE and the README, copyright 2021–2024 Daniel C and contributors; usb/dbg.c carries another contributor’s copyright notice, and the camlib submodule keeps its own license. The README frames the work as interoperability research; Fujifilm’s firmware and trademarks remain the vendor’s."],"requirements_zh":["所审阅的 master 提交日期为 2024-08-17。仓库的两个 GitHub 发布版本都不含文件：2022-10-27 的调试器版本 0.1.0 已标为弃用，改推独立的 fffw 项目；2023 年面向 X-A2 的 DOOM 移植演示版本 0.2.0 已标为不再支持。README 称 FujiHack 只能在打过补丁的固件下运行，自定义固件始终存在风险并可能损坏相机，而借助 SoC 启动 ROM 恢复变砖设备的方法尚未逆向出来。README 报告调试器补丁已移植到 XF1 和 X-A2；附固件地址的机型头文件涵盖十款相机，从 Z3、HS20EXR 到 X-T4。","仓库不包含任何 Fujifilm 固件、转储或密钥：机型头文件引用的是厂商自己的固件下载地址，打补丁则在独立的浏览器端补丁工具中完成，README 称它可对使用者选择的固件 DAT 文件进行解包、注入、打补丁、重新打包和降级。etc/ 中的辅助程序（包括一个 Unicorn 仿真脚本）读取使用者从自己相机中获取的固件或内存转储。","相机端代码按机型使用 arm-none-eabi-gcc 构建，少量 Rust 文件另需 rustc，命令为 make hack.bin model=<model>。主机端 fuji 命令行工具需要 libusb-1.0 和 camlib PTP 库子模块，其 Windows 构建会下载作者的 libwpd DLL。曾编译 X-A2 目标的工作流位于已停用的 .github/workflows_ 目录中，因此没有运行中的 CI，也没有测试。","LICENSE 与 README 标明采用 GPL-3.0，版权归 Daniel C 及贡献者（2021–2024）；usb/dbg.c 带有另一位贡献者的版权声明，camlib 子模块有其自身许可。README 将这项工作定位为互操作性研究；Fujifilm 的固件和商标仍归厂商所有。"],"targets":["firmware"],"url":"https://github.com/fujihack/fujihack","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/DSecurity/efiSeek/blob/573f4b9b5ba2731cdecafc6594d0fd0570e28fff/src/main/java/efiSeek/EfiSeekAnalyzer.java","https://github.com/DSecurity/efiSeek/blob/573f4b9b5ba2731cdecafc6594d0fd0570e28fff/src/main/java/efiSeek/EfiSeek.java","https://github.com/DSecurity/efiSeek/blob/573f4b9b5ba2731cdecafc6594d0fd0570e28fff/ghidra_scripts/TransferEfiFilesToProject.java","https://github.com/DSecurity/efiSeek/blob/573f4b9b5ba2731cdecafc6594d0fd0570e28fff/build.gradle","https://github.com/DSecurity/efiSeek/blob/573f4b9b5ba2731cdecafc6594d0fd0570e28fff/gradle/wrapper/gradle-wrapper.properties","https://github.com/DSecurity/efiSeek/blob/573f4b9b5ba2731cdecafc6594d0fd0570e28fff/LICENSE","https://github.com/DSecurity/efiSeek/commit/573f4b9b5ba2731cdecafc6594d0fd0570e28fff","https://github.com/DSecurity/efiSeek/issues/15","https://github.com/DSecurity/efiSeek/pull/18"],"category":"firmware","description_en":"Ghidra analyzer extension from Digital Security for individual UEFI modules, enabled by default during auto-analysis of x86 and x64 PE images with an EFI subsystem. It labels known GUIDs from a bundled database, applies UEFI types from bundled data-type archives, passes the image handle and system table from the entry point into called functions, and marks protocols located with LocateProtocol or installed with InstallProtocolInterface, protocol-notify callbacks and SMI handlers registered for software, hardware and child interrupts. Findings are also kept as JSON in the program, which a headless-mode script uses to sort SMM modules into project folders by handler type.","description_zh":"Digital Security 开发的 Ghidra 分析器扩展，面向单个 UEFI 模块，在自动分析带 EFI 子系统的 x86 和 x64 PE 映像时默认启用。它依据自带的数据库标注已知 GUID，从自带的数据类型归档应用 UEFI 类型，把入口点的映像句柄和系统表参数传递到被调用的函数中，并标记通过 LocateProtocol 定位或通过 InstallProtocolInterface 安装的协议、协议通知回调，以及为软件、硬件和子中断注册的 SMI 处理函数。分析结果还以 JSON 形式保存在程序中，无界面模式脚本据此按处理函数类型把 SMM 模块分到不同的项目文件夹。","entry_url":"https://awesomerea.org/resources/efiseek/","entry_url_zh":"https://awesomerea.org/zh/resources/efiseek/","evidence_url":"https://github.com/DSecurity/efiSeek/blob/573f4b9b5ba2731cdecafc6594d0fd0570e28fff/README.md","group":"tools","id":"efiseek","json_url":"https://awesomerea.org/resources/efiseek/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/efiseek/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/efiseek/index.md","name":"efiSeek","name_zh":"efiSeek UEFI 模块 Ghidra 分析器","record_type":"resource","relationship":"foundation","requirements":["The repository has no releases or tags; the latest master commit, from 2022-04-26, adds compatibility with a Ghidra 10.2 development build. Open issues report that the pinned Gradle 7.4.2 wrapper does not work with Ghidra 11.2 and newer and that a PE header API change in Ghidra 12.0 causes errors; the pull requests proposing fixes were unmerged at review, so building for current Ghidra releases may need those or similar changes.","Built from source with the bundled Gradle wrapper against a Ghidra installation named by GHIDRA_INSTALL_DIR; the build fetches the org.json library from Maven Central. The README then has the zip from dist copied into Ghidra's Extensions/Ghidra folder and the extension enabled, after which the analyzer is preselected when an EFI file is opened.","Input is a single UEFI module the analyst already has: the analyzer accepts only PE images with an EFI subsystem and only the x86 and x64 machine types, so modules must first be taken out of a full firmware image. It rebases the program to 0x80000000 and makes every memory block readable, writable and executable.","Apache-2.0, per LICENSE and the source headers. The repository bundles the Behemotx32.gdt and Behemotx64.gdt data-type archives and the guids-db.ini GUID database that the analyzer loads, plus the Gradle wrapper JAR. Labels and handler classifications are heuristic annotations for analyst review."],"requirements_zh":["仓库没有发布版本或标签；master 分支的最新提交日期为 2022-04-26，用于兼容 Ghidra 10.2 开发版。未关闭的 issue 报告称，固定的 Gradle 7.4.2 包装器无法用于 Ghidra 11.2 及更新版本，且 Ghidra 12.0 中 PE 头部 API 的变化会导致错误；提出修复的拉取请求在审阅时均未合并，因此为当前 Ghidra 版本构建时可能需要这些或类似的修改。","需借助自带的 Gradle 包装器，针对由 GHIDRA_INSTALL_DIR 指定的 Ghidra 安装从源码构建；构建过程会从 Maven Central 获取 org.json 库。README 随后要求把 dist 中的 zip 复制到 Ghidra 的 Extensions/Ghidra 文件夹并启用该扩展，此后打开 EFI 文件时会自动勾选该分析器。","输入为分析者已有的单个 UEFI 模块：分析器只接受带 EFI 子系统的 PE 映像，且仅支持 x86 和 x64 机器类型，因此需先从完整固件镜像中取出各个模块。它会把程序基址重设为 0x80000000，并将所有内存块设为可读、可写、可执行。","依据 LICENSE 和源文件头部声明采用 Apache-2.0。仓库自带分析器加载的 Behemotx32.gdt、Behemotx64.gdt 数据类型归档和 guids-db.ini GUID 数据库，以及 Gradle 包装器 JAR。生成的标注和处理函数分类均为启发式结果，需分析者复核。"],"targets":["firmware"],"url":"https://github.com/DSecurity/efiSeek","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/iGio90/Dwarf/blob/fd859aeeb9fd14d97db1d95a194eb632ae109a46/setup.py","https://github.com/iGio90/Dwarf/blob/fd859aeeb9fd14d97db1d95a194eb632ae109a46/requirements.txt","https://github.com/iGio90/Dwarf/blob/fd859aeeb9fd14d97db1d95a194eb632ae109a46/dwarf_debugger/dwarf.py","https://github.com/iGio90/Dwarf/blob/fd859aeeb9fd14d97db1d95a194eb632ae109a46/dwarf_debugger/ui/app.py","https://github.com/iGio90/Dwarf/blob/fd859aeeb9fd14d97db1d95a194eb632ae109a46/dwarf_debugger/ui/widgets/device_bar.py","https://github.com/iGio90/Dwarf/blob/fd859aeeb9fd14d97db1d95a194eb632ae109a46/dwarf_debugger/lib/disassembler.py","https://github.com/iGio90/Dwarf/blob/fd859aeeb9fd14d97db1d95a194eb632ae109a46/dwarf_debugger/strace.py","https://github.com/iGio90/Dwarf/blob/fd859aeeb9fd14d97db1d95a194eb632ae109a46/PLUGINS.md","https://github.com/iGio90/Dwarf/blob/fd859aeeb9fd14d97db1d95a194eb632ae109a46/LICENSE","https://pypi.org/project/dwarf-debugger/1.1.3/"],"category":"dynamic-analysis","description_en":"PyQt5 debugger built on Frida that attaches to or spawns processes on Android and iOS devices, the local machine or a remote Frida server. A session offers breakpoints, watchpoints, register context, backtraces and threads, a Capstone disassembly view for x86, x64, ARM and ARM64, a hex editor and panels for modules, memory ranges and memory search, while Java explorer, inspector and trace panels and an Objective-C inspector cover mobile app runtimes. User Frida scripts and Python plugins extend a session, and companion commands trace Java methods or native addresses (dwarf-trace), log syscalls from one module on arm64 (dwarf-strace) and scaffold scripting projects with Dwarf API typings (dwarf-creator).","description_zh":"基于 Frida 构建的 PyQt5 调试器，可附加或启动 Android、iOS 设备、本机或远程 Frida 服务器上的进程。调试会话提供断点、观察点、寄存器上下文、调用栈和线程视图，支持 x86、x64、ARM 与 ARM64 的 Capstone 反汇编视图、十六进制编辑器，以及模块、内存区域和内存搜索面板；Java 浏览、检查与跟踪面板和 Objective-C 检查器则面向移动应用运行时。用户编写的 Frida 脚本和 Python 插件可扩展会话，配套命令可跟踪 Java 方法或原生地址（dwarf-trace）、在 arm64 上记录单个模块发起的系统调用（dwarf-strace），并生成带 Dwarf API 类型声明的脚本项目（dwarf-creator）。","entry_url":"https://awesomerea.org/resources/dwarf-debugger/","entry_url_zh":"https://awesomerea.org/zh/resources/dwarf-debugger/","evidence_url":"https://github.com/iGio90/Dwarf/blob/fd859aeeb9fd14d97db1d95a194eb632ae109a46/README.md","group":"tools","id":"dwarf-debugger","json_url":"https://awesomerea.org/resources/dwarf-debugger/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dwarf-debugger/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dwarf-debugger/index.md","name":"Dwarf","name_zh":"Dwarf 基于 Frida 的多平台调试器","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: dwarf-debugger 1.1.3 on PyPI, uploaded 2022-04-09; the repository has no GitHub releases or tags. The reviewed master commit, from 2024-05-16 and the most recent at review, merges a small type fix after that release. The README still says a Dwarf 2.0 release is being worked on, and none has been published.","Installed with pip from PyPI or a master archive. setup.py accepts any Python 3 and declares Linux, Windows and macOS, depending on frida 12.8+, PyQt5 5.11.3+ (requirements.txt pins 5.13.*), Capstone 4.0.1+, requests and pyperclip. The bundled core.js agent is built from the core1 branch of the separate DwarfCore repository; the reviewed sources do not state which current Frida releases it works with.","The user supplies the apps, processes and devices to debug; the repository holds only Dwarf's own code, agent, icons and examples. Android sessions use adb and a device running frida-server: the device bar can download the latest frida-server from Frida's GitHub releases and install it with su on a rooted device, and flags devices where it finds no root access. iOS sessions use a USB-connected Frida device, local sessions spawn a given path or attach to a PID, and remote sessions use Frida's remote device.","GPL-3.0 (setup.py: GPLv3+). The README lists two known JavaTraceView display problems, and dwarf-strace handles only arm64 processes. The README pitches the tool to reverse engineers, crackers and security analysts."],"requirements_zh":["审阅时的最新版本为 PyPI 上的 dwarf-debugger 1.1.3，于 2022-04-09 上传；仓库没有 GitHub 发布版本或标签。所审阅的 master 提交日期为 2024-05-16，也是审阅时的最新提交，它在该版本之后合并了一处小的类型修正。README 仍称正在开发 Dwarf 2.0，但至今没有发布。","通过 pip 从 PyPI 或 master 分支压缩包安装。setup.py 接受任意 Python 3 版本，声明支持 Linux、Windows 和 macOS，依赖 frida 12.8+、PyQt5 5.11.3+（requirements.txt 固定为 5.13.*）、Capstone 4.0.1+、requests 和 pyperclip。随附的 core.js 代理由独立的 DwarfCore 仓库的 core1 分支构建；所审来源未说明它能与哪些当前的 Frida 版本配合使用。","要调试的应用、进程和设备由使用者自备；仓库只包含 Dwarf 自身的代码、代理、图标和示例。Android 会话依赖 adb 和运行 frida-server 的设备：设备栏可从 Frida 的 GitHub 发布页下载最新的 frida-server，并在已 root 的设备上通过 su 安装，对未检测到 root 权限的设备则加以标注。iOS 会话使用通过 USB 连接的 Frida 设备，本机会话可启动指定路径的程序或附加到 PID，远程会话使用 Frida 的远程设备。","采用 GPL-3.0 许可（setup.py 标注为 GPLv3+）。README 列出 JavaTraceView 的两个已知显示问题，dwarf-strace 只支持 arm64 进程。README 称该工具面向逆向工程师、破解者和安全分析人员。"],"targets":["app","binary"],"url":"https://github.com/iGio90/Dwarf","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/cruise-automation/fwanalyzer/blob/a0db45054642f89a5f855b0dcc0730ebd01c8c9e/Building.md","https://github.com/cruise-automation/fwanalyzer/blob/a0db45054642f89a5f855b0dcc0730ebd01c8c9e/Changelog.md","https://github.com/cruise-automation/fwanalyzer/blob/a0db45054642f89a5f855b0dcc0730ebd01c8c9e/Checksec.md","https://github.com/cruise-automation/fwanalyzer/blob/a0db45054642f89a5f855b0dcc0730ebd01c8c9e/Dockerfile","https://github.com/cruise-automation/fwanalyzer/blob/a0db45054642f89a5f855b0dcc0730ebd01c8c9e/Makefile","https://github.com/cruise-automation/fwanalyzer/blob/a0db45054642f89a5f855b0dcc0730ebd01c8c9e/go.mod","https://github.com/cruise-automation/fwanalyzer/blob/a0db45054642f89a5f855b0dcc0730ebd01c8c9e/devices/Readme.md","https://github.com/cruise-automation/fwanalyzer/blob/a0db45054642f89a5f855b0dcc0730ebd01c8c9e/devices/android/Readme.md","https://github.com/cruise-automation/fwanalyzer/blob/a0db45054642f89a5f855b0dcc0730ebd01c8c9e/pkg/extparser/extparser.go#L40-L43","https://github.com/cruise-automation/fwanalyzer/tree/a0db45054642f89a5f855b0dcc0730ebd01c8c9e/test","https://github.com/cruise-automation/fwanalyzer/blob/a0db45054642f89a5f855b0dcc0730ebd01c8c9e/.circleci/config.yml","https://github.com/cruise-automation/fwanalyzer/blob/a0db45054642f89a5f855b0dcc0730ebd01c8c9e/LICENSE","https://github.com/cruise-automation/fwanalyzer/releases/tag/1.4.4"],"category":"firmware","description_en":"Rule-based checker for filesystem images taken from firmware: it reads ext2/3/4, FAT/VFAT, SquashFS and UBIFS images, cpio archives or a directory, and writes a JSON report of every file that breaks the rules in a TOML configuration. Rules cover SUID and world-writable files, allowed owners, SELinux labels and Linux capabilities, per-file metadata, content regexes, SHA-256 digests, JSON fields and external scripts such as the bundled checksec wrapper; it can also extract values such as version strings and compare the file tree or selected files with a previous run. Cruise describes it as part of a firmware security check suite, and check.py with an Android OTA unpacker runs it over each image in a firmware package.","description_zh":"针对固件中文件系统镜像的规则检查工具：读取 ext2/3/4、FAT/VFAT、SquashFS 和 UBIFS 镜像、cpio 归档或目录，并以 JSON 报告列出所有违反 TOML 配置规则的文件。规则涵盖 SUID 与全局可写文件、允许的属主、SELinux 标签与 Linux capabilities、单个文件的元数据、内容正则、SHA-256 摘要、JSON 字段，以及外部脚本（例如附带的 checksec 包装脚本）；还能提取版本字符串等数值，并把文件树或指定文件与上一次运行的结果比较。Cruise 将其定位为固件安全检查流程的一环，check.py 搭配 Android OTA 解包脚本可对固件包中的每个镜像逐一运行检查。","entry_url":"https://awesomerea.org/resources/fwanalyzer/","entry_url_zh":"https://awesomerea.org/zh/resources/fwanalyzer/","evidence_url":"https://github.com/cruise-automation/fwanalyzer/blob/a0db45054642f89a5f855b0dcc0730ebd01c8c9e/Readme.md","group":"tools","id":"fwanalyzer","json_url":"https://awesomerea.org/resources/fwanalyzer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/fwanalyzer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fwanalyzer/index.md","name":"FwAnalyzer","name_zh":"FwAnalyzer 固件文件系统规则检查工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 1.4.4, published 2022-10-24 without an attached binary; releases 1.4.1 to 1.4.3 attach a prebuilt Linux fwanalyzer. The reviewed master commit, from 2023-10-08, only fixes typos after that release and is the latest commit; the repository is not archived, and the Makefile still sets VERSION=1.4.1.","Built from source with Go (go.mod declares Go 1.13; the Makefile defaults GOOS to linux) through make deps and make, giving build/fwanalyzer. Each filesystem backend calls external programs: e2ls and e2cp from e2tools for ext images, mdir and mcopy from mtools for FAT, unsquashfs, ubireader_list_files from ubi_reader, and cpio. SELinux and capability data need the author's patched e2tools and squashfs-tools forks, and ext symlink handling needs e2tools' link_support branch; the Dockerfile lists the full dependency set on a golang:1.13 image.","Input is a filesystem image or unpacked directory the user already has; FwAnalyzer itself does not unpack firmware packages. check.py needs an unpacker script that maps configurations to images, and the bundled Android OTA unpacker relies on the separate extract_android_ota_payload and mkbootimg_tools projects. Findings depend entirely on the user's configuration: the devices folder supplies sample Android user-build, Android property and generic Linux root-filesystem rules, and the report lists rule offenders rather than assessed vulnerabilities.","make test runs Go unit tests, and the integration target runs test/test.py, written for Python 2, against bundled fixtures in test/: small ext2, SquashFS, UBIFS, VFAT and cpio images, hello-world ELF builds for ARM32, ARM64 and x86-64, and prebuilt e2cp and unsquashfs helper executables; make testsetup uses sudo setcap. CircleCI builds and tests inside the Docker image, while the GitHub workflow only lints with golangci-lint v1.29.","Apache-2.0, copyright Cruise LLC; the external filesystem tools keep their own licenses."],"requirements_zh":["审阅时最新版本为 1.4.4，发布于 2022-10-24，未附带二进制文件；1.4.1 至 1.4.3 版附有预编译的 Linux 版 fwanalyzer。所审阅的 master 提交日期为 2023-10-08，仅在该版本之后修正拼写错误，也是最新提交；仓库未归档，Makefile 中的 VERSION 仍为 1.4.1。","需用 Go 从源码构建（go.mod 声明 Go 1.13，Makefile 默认 GOOS 为 linux），执行 make deps 和 make 后得到 build/fwanalyzer。各文件系统后端都调用外部程序：ext 镜像用 e2tools 的 e2ls 和 e2cp，FAT 用 mtools 的 mdir 和 mcopy，另需 unsquashfs、ubi_reader 的 ubireader_list_files 以及 cpio。读取 SELinux 与 capability 信息需要作者打过补丁的 e2tools 和 squashfs-tools 分支，处理 ext 中的符号链接需要 e2tools 的 link_support 分支；Dockerfile 在 golang:1.13 镜像上列出了完整依赖。","输入为使用者已有的文件系统镜像或已解包目录；FwAnalyzer 本身不解包固件包。check.py 需要一个把配置映射到镜像的解包脚本，附带的 Android OTA 解包脚本依赖独立的 extract_android_ota_payload 与 mkbootimg_tools 项目。检查结果完全取决于使用者的配置：devices 目录提供 Android user 构建、Android 属性和通用 Linux 根文件系统的示例规则，报告列出的是违反规则的文件，而非经过评估的漏洞。","make test 运行 Go 单元测试，集成测试目标运行为 Python 2 编写的 test/test.py，所用夹具均位于 test/ 中：小型 ext2、SquashFS、UBIFS、VFAT 和 cpio 镜像，ARM32、ARM64 与 x86-64 的 hello-world ELF 构建，以及预编译的 e2cp 和 unsquashfs 辅助程序；make testsetup 会用到 sudo setcap。CircleCI 在 Docker 镜像中构建并测试，GitHub 工作流仅用 golangci-lint v1.29 做代码检查。","采用 Apache-2.0 许可，版权属 Cruise LLC；外部文件系统工具各自适用其许可。"],"targets":["firmware"],"url":"https://github.com/cruise-automation/fwanalyzer","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/WPeace-HcH/WPeGPT/blob/8a7802aef9ba980dcb5d2a6a24c6ef19b06ae641/README.ZH_CN.md","https://github.com/WPeace-HcH/WPeGPT/blob/8a7802aef9ba980dcb5d2a6a24c6ef19b06ae641/requirements.txt","https://github.com/WPeace-HcH/WPeGPT/blob/8a7802aef9ba980dcb5d2a6a24c6ef19b06ae641/WPeGPT_Config/config.py","https://github.com/WPeace-HcH/WPeGPT/blob/8a7802aef9ba980dcb5d2a6a24c6ef19b06ae641/WPeGPT.py#L443-L460","https://github.com/WPeace-HcH/WPeGPT/releases/tag/v3.0"],"category":"agent-workflows","description_en":"IDA plugin, formerly WPeChatGPT and inspired by Gepetto, that sends the Hex-Rays pseudocode of a function to an OpenAI-compatible model (OpenAI, DeepSeek or another compatible endpoint) and writes the model's analysis back into IDA as comments. Interactive actions explain a function's purpose and behavior, suggest variable names, re-express small routines such as XOR decoding in Python and flag potential vulnerabilities. Version 3.0 adds WPeServer, a TCP command server inside IDA through which an external controller or the separate wpegpt-analyzer skill runs headless light, full or vulnerability-focused passes, with string classification, network-indicator extraction, function suspiciousness scoring and JSON plus Markdown reports.","description_zh":"IDA 插件，前身为 WPeChatGPT，受 Gepetto 启发：把函数的 Hex-Rays 伪代码发送给兼容 OpenAI 接口的模型（OpenAI、DeepSeek 或其他兼容端点），再将模型的分析结果以注释形式写回 IDA。交互功能可说明函数的用途与行为、建议变量名、用 Python 重写 XOR 解码等小型例程，并标记潜在漏洞。3.0 版新增 WPeServer，即运行在 IDA 内的 TCP 命令服务器，外部控制器或独立的 wpegpt-analyzer 技能可借此以无界面方式执行 light、full 或侧重漏洞的分析流程，提供字符串分类、网络指标提取、函数可疑度评分，并输出 JSON 与 Markdown 报告。","entry_url":"https://awesomerea.org/resources/wpegpt/","entry_url_zh":"https://awesomerea.org/zh/resources/wpegpt/","evidence_url":"https://github.com/WPeace-HcH/WPeGPT/blob/8a7802aef9ba980dcb5d2a6a24c6ef19b06ae641/README.md","group":"agents","id":"wpegpt","json_url":"https://awesomerea.org/resources/wpegpt/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/wpegpt/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wpegpt/index.md","name":"WPeGPT","name_zh":"WPeGPT IDA AI 分析插件","record_type":"resource","relationship":"independent-agent-integration","requirements":["Reviewed at tag v3.0 (2026-05-27), which is the reviewed main commit; the GitHub release has no attached files. Install by copying WPeGPT.py and the WPeGPT_Config folder (config.py and wpe_ai_controller.py) into IDA's plugins directory. IDA must run Python 3, and the plugin imports ida_hexrays, so a Hex-Rays decompiler for the target architecture is needed. Python dependencies are openai >= 0.27.0 and httpx.","config.py ships with empty API_KEY, API_BASE_URL and MODEL values that must be set for an OpenAI-compatible provider, plus an optional forward proxy, worker count and default analysis mode (light); the interface defaults to Chinese (ZH_CN = True). The README estimates light, full and vuln runs at roughly 2–5, 10–30 and 5–20 minutes. WPeServer binds to 127.0.0.1 on an OS-assigned port, and headless runs start from the IDA menu or the separately maintained wpegpt-analyzer skill.","Works on a binary the user opens in IDA; the repository bundles only the plugin, its configuration and screenshots. Each request sends decompiled pseudocode to the configured model provider, and automated runs send many functions, so weigh confidentiality and API cost before analyzing sensitive samples. The README calls AI results for reference only; comments and reports are model suggestions that need analyst checking.","No license file is present and GitHub detects no license, so no reuse terms are granted. IDA, the Hex-Rays decompiler and model APIs are licensed separately."],"requirements_zh":["审阅版本为标签 v3.0（2026-05-27），即所审阅的 main 提交；该 GitHub 发布版未附带文件。安装方法是把 WPeGPT.py 和 WPeGPT_Config 文件夹（含 config.py 与 wpe_ai_controller.py）复制到 IDA 的 plugins 目录。IDA 必须使用 Python 3；插件导入 ida_hexrays，因此需要适用于目标架构的 Hex-Rays 反编译器。Python 依赖为 openai >= 0.27.0 和 httpx。","config.py 中的 API_KEY、API_BASE_URL 和 MODEL 默认为空，需按兼容 OpenAI 接口的服务商填写；另可配置正向代理、并发数和默认分析模式（light），界面默认使用中文（ZH_CN = True）。README 估计 light、full 和 vuln 模式分别约需 2–5、10–30 和 5–20 分钟。WPeServer 绑定在 127.0.0.1 上由系统分配的端口，无界面分析可从 IDA 菜单启动，或通过另行维护的 wpegpt-analyzer 技能发起。","分析对象是使用者在 IDA 中打开的二进制文件；仓库只包含插件、配置和截图。每次请求都会把反编译伪代码发送给所配置的模型服务商，自动分析会发送大量函数，因此分析敏感样本前应考虑保密性和 API 费用。README 称 AI 结果仅供参考；生成的注释和报告属于模型建议，需要分析者核实。","仓库没有许可证文件，GitHub 也未识别出许可证，因此未授予任何复用条款。IDA、Hex-Rays 反编译器和模型 API 各自另行授权。"],"targets":["binary"],"url":"https://github.com/WPeace-HcH/WPeGPT","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/kpwn/iOSRE/blob/20aff7761b249cb2f76477ef39f8885bfcb404cf/wiki/README.md","https://github.com/kpwn/iOSRE/blob/20aff7761b249cb2f76477ef39f8885bfcb404cf/wiki/Mach-O.md","https://github.com/kpwn/iOSRE/blob/20aff7761b249cb2f76477ef39f8885bfcb404cf/wiki/IOKit-RE.md","https://github.com/kpwn/iOSRE/blob/20aff7761b249cb2f76477ef39f8885bfcb404cf/resources/papers/README.md","https://github.com/kpwn/iOSRE/tree/20aff7761b249cb2f76477ef39f8885bfcb404cf/resources/scripts","https://github.com/kpwn/iOSRE/blob/20aff7761b249cb2f76477ef39f8885bfcb404cf/LICENSE.txt","https://github.com/kpwn/iOSRE/tree/20aff7761b249cb2f76477ef39f8885bfcb404cf"],"category":"learning","description_en":"A community-maintained reference on iOS reverse engineering started by kpwn, built from a wiki, a curated index of public technical papers and talks, and a few environment-setup scripts. The wiki pages introduce iOS internals such as the Mach-O executable format, the XNU kernel and IOKit, the boot chain and a history of platform mitigations, while the README states the project is an early, ongoing effort and several pages remain stubs. The repository hosts notes and external links rather than any Apple firmware, device images or app binaries.","description_zh":"由 kpwn 发起、社区维护的 iOS 逆向工程参考资料，由一个 wiki、一份公开技术论文与演讲的整理索引，以及几个环境配置脚本组成。wiki 页面介绍 iOS 的底层机制，如 Mach-O 可执行文件格式、XNU 内核与 IOKit、启动链，以及平台缓解措施的历史；README 说明项目尚处早期、仍在持续完善，多个页面仍是占位草稿。仓库只收录笔记和外部链接，并不包含任何 Apple 固件、设备镜像或应用二进制文件。","entry_url":"https://awesomerea.org/resources/kpwn-iosre/","entry_url_zh":"https://awesomerea.org/zh/resources/kpwn-iosre/","evidence_url":"https://github.com/kpwn/iOSRE/blob/20aff7761b249cb2f76477ef39f8885bfcb404cf/README.md","group":"learn","id":"kpwn-iosre","json_url":"https://awesomerea.org/resources/kpwn-iosre/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/kpwn-iosre/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/kpwn-iosre/index.md","name":"iOSRE: iOS Reverse Engineering reference","name_zh":"iOSRE：iOS 逆向工程参考资料","record_type":"resource","relationship":"learning","requirements":["Reviewed at commit 20aff77 on the master branch; the repository was last pushed on 2018-06-30 and has not been updated since, so its iOS 8/9-era material is historical and does not track current iOS versions. The README calls the effort new and ongoing, and several wiki pages on topics such as auditing the XNU kernel, the boot ROM, the sandbox and userland subjects are still marked TODO.","The repository ships documentation and links, not target files: resources/papers/README.md is an index that links to publicly published papers and talks rather than hosting the PDFs, and no Apple firmware images, device keys or app binaries are committed. Working through the material assumes the reader supplies their own research device and Apple or third-party tooling, which the repository does not provide.","The setup scripts under resources/scripts target macOS with Xcode command-line tools and download third-party software at runtime, including Homebrew, ldid, Theos, Reveal, Hopper and class-dump, while a separate Install XPwn script builds tools on Linux through apt; each stays under its own license.","The README warns that files in the resources folder are mostly user-contributed and may be malicious and advises checking them before running; the project reports no testing or verified results.","LICENSE.txt is the author's Modified Anyone But Richard M Stallman (MABRMS) license, which GitHub cannot classify (NOASSERTION) and which permits broad reuse with the warranty disclaimer in that file; individual files may state otherwise, and the linked papers and tools keep their own terms."],"requirements_zh":["审阅基于 master 分支提交 20aff77；仓库最后一次推送为 2018-06-30，此后未再更新，其 iOS 8/9 时代的内容属于历史资料，并不跟进当前 iOS 版本。README 称该项目尚新、仍在持续推进，关于审计 XNU 内核、BootROM、沙箱及用户态等主题的多个 wiki 页面仍标注为 TODO。","仓库提供的是文档与链接，而非目标文件：resources/papers/README.md 是一份索引，链接到公开发表的论文和演讲，而非托管 PDF；仓库未提交任何 Apple 固件镜像、设备密钥或应用二进制。按材料实践需要读者自备研究设备以及 Apple 或第三方工具链，仓库本身并不提供。","resources/scripts 下的配置脚本面向装有 Xcode 命令行工具的 macOS，并在运行时下载第三方软件，包括 Homebrew、ldid、Theos、Reveal、Hopper 和 class-dump；另有一个 Install XPwn 脚本在 Linux 上通过 apt 构建工具。各工具均保留自身许可证。","README 提醒 resources 目录中的文件大多由用户贡献，可能带有恶意，建议运行前自行检查；项目未报告任何测试或验证结果。","LICENSE.txt 为作者自拟的 Modified Anyone But Richard M Stallman（MABRMS）许可证，GitHub 无法识别（NOASSERTION），其条款允许在附带免责声明的前提下广泛复用；个别文件可能另有声明，所链接的论文和工具亦各自保留其条款。"],"targets":["app","binary","firmware"],"url":"https://github.com/kpwn/iOSRE","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/yhs0602/Android-Disassembler/blob/dde36d9b9ae4a62380607ae8eaba8d1ff5ea2888/app/build.gradle","https://github.com/yhs0602/Android-Disassembler/blob/dde36d9b9ae4a62380607ae8eaba8d1ff5ea2888/.github/workflows/ci.yml","https://github.com/yhs0602/Android-Disassembler/blob/dde36d9b9ae4a62380607ae8eaba8d1ff5ea2888/.github/workflows/preview.yml","https://github.com/yhs0602/Android-Disassembler/blob/dde36d9b9ae4a62380607ae8eaba8d1ff5ea2888/docs/maintenance/roadmap.md","https://github.com/yhs0602/Android-Disassembler/blob/dde36d9b9ae4a62380607ae8eaba8d1ff5ea2888/LICENSE","https://github.com/yhs0602/Android-Disassembler/tree/dde36d9b9ae4a62380607ae8eaba8d1ff5ea2888/Test%20subject%20files","https://github.com/yhs0602/Android-Disassembler/tree/dde36d9b9ae4a62380607ae8eaba8d1ff5ea2888/app/src/main/assets","https://github.com/yhs0602/Android-Disassembler/releases/tag/v2.1.5","https://github.com/yhs0602/Android-Disassembler/releases/tag/preview-latest"],"category":"android","description_en":"On-device disassembler and binary viewer for Android, built on Capstone, that opens ELF shared libraries and executables, object files, Windows PE files, .NET assemblies, dex files and APKs chosen from storage or from installed apps. It shows ELF details and symbol tables, PE import and export tables, disassembly with jump following and navigation by symbol or address, a hex view, ASCII string search and byte statistics such as entropy and chi-square tests to help tell whether data is encrypted. Analyses are kept as projects and can be exported as raw, text, JSON or database files.","description_zh":"基于 Capstone 的 Android 设备端反汇编器与二进制查看器，可打开从存储中选取或从已安装应用中选择的 ELF 共享库与可执行文件、目标文件、Windows PE 文件、.NET 程序集、dex 文件和 APK。它可显示 ELF 详细信息和符号表、PE 导入与导出表，提供支持跳转跟随及按符号或地址定位的反汇编视图、十六进制视图、ASCII 字符串搜索，以及熵和卡方检验等字节统计，帮助判断数据是否经过加密。分析结果以项目形式保存，并可导出为原始文件、文本、JSON 或数据库文件。","entry_url":"https://awesomerea.org/resources/android-disassembler/","entry_url_zh":"https://awesomerea.org/zh/resources/android-disassembler/","evidence_url":"https://github.com/yhs0602/Android-Disassembler/blob/dde36d9b9ae4a62380607ae8eaba8d1ff5ea2888/README.md","group":"tools","id":"android-disassembler","json_url":"https://awesomerea.org/resources/android-disassembler/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/android-disassembler/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/android-disassembler/index.md","name":"Android-Disassembler","name_zh":"Android-Disassembler 安卓端反汇编应用","record_type":"resource","relationship":"foundation","requirements":["Latest formal release at review: v2.1.5, published 2021-08-06 with a debug APK. A rolling Preview latest prerelease, last published 2026-03-20, carries a debug-signed APK built from the newest branch, and CI uploads a debug APK on every run. The README says maintenance has resumed but the project is still in a recovery and modernization phase; the reviewed master commit of 2026-03-22 is part of that work.","The app supports Android 5.0 (API 21) and newer, with target and compile SDK 35. Files open through the Storage Access Framework picker by default; a separate Advanced import path for raw-filesystem, root and installed-app browsing is meant for power users, and system files that need root permission can be read only on rooted phones.","Building needs initialized git submodules and Android Studio or Gradle with an Android SDK and NDK; build.gradle pins NDK 23.1.7779620 and builds the native code with CMake, and CI uses JDK 17 to run unit tests, a debug build and instrumentation UI tests on API 30 and 35 emulators. The app applies Firebase Analytics and Crashlytics, and the README's privacy note says crash reports of types such as FileCorruptedException may attach the file being analyzed to the bug-report email and upload it to the GitHub repository.","MIT license, copyright 2018 Hyeonseo Yang. The repository commits prebuilt Capstone libraries, library JARs including pecoff4j, facile, RootTools and jep, small ls helper executables for ARM and x86 in the app assets, and a Test subject files folder of sample ELF libraries and an arm-linux-androideabi-ar binary; bundled components keep their own licenses. Users supply the files they analyze."],"requirements_zh":["审阅时最新的正式版本为 v2.1.5，发布于 2021-08-06，附带调试版 APK。滚动更新的 Preview latest 预发布版最近一次发布于 2026-03-20，提供由最新分支构建、使用调试签名的 APK，CI 每次运行也会上传调试版 APK。README 称维护已经恢复，但项目仍处于恢复与现代化阶段；所审阅的 2026-03-22 master 提交属于这项工作。","应用支持 Android 5.0（API 21）及以上版本，targetSdk 与 compileSdk 均为 35。默认通过存储访问框架（SAF）选择器打开文件；另有面向高级用户的 Advanced import 入口，用于浏览原始文件系统、root 路径和已安装应用，需要 root 权限的系统文件只能在已 root 的手机上读取。","构建前需初始化 git 子模块，并使用配置了 Android SDK 和 NDK 的 Android Studio 或 Gradle；build.gradle 固定 NDK 23.1.7779620，原生代码用 CMake 构建，CI 使用 JDK 17 运行单元测试、调试构建，并在 API 30 与 35 模拟器上运行插桩 UI 测试。应用启用了 Firebase Analytics 和 Crashlytics；README 的隐私说明称，发送 FileCorruptedException 等类型的崩溃报告时，正在分析的文件可能附在错误报告邮件中，并被上传到 GitHub 仓库。","采用 MIT 许可，版权归 Hyeonseo Yang（2018）。仓库提交了预编译的 Capstone 库、pecoff4j、facile、RootTools 和 jep 等库 JAR、应用资源中供 ARM 和 x86 使用的小型 ls 辅助可执行文件，以及 Test subject files 文件夹中的示例 ELF 库和 arm-linux-androideabi-ar 程序；这些捆绑组件各自适用其许可证。待分析的文件由使用者提供。"],"targets":["app","binary"],"url":"https://github.com/yhs0602/Android-Disassembler","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/README.md#L22-L176","https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/CHANGELOG.md","https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/CMakeLists.txt","https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/inc/bdshemu.h","https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/disasmtool/disasmtool.c","https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/tests/README.md","https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/.github/workflows/ci.yml","https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/bindings/pybddisasm/README.md","https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/docs/source/index.rst","https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/LICENSE","https://github.com/bitdefender/bddisasm/releases/tag/v3.1.0"],"category":"binary-libraries","description_en":"Bitdefender’s dependency-free C decoder for x86/x64 instructions, reporting explicit and implicit operands with their access modes, CPUID feature flags, flag accesses and valid modes, and printing Intel/MASM-style text. A minimal API with a 64-byte instruction structure trades detail for speed, and the companion bdshemu library emulates basic x86/x64 code in a raw buffer to flag shellcode-like behaviour such as NOP sleds, reading the instruction pointer, self-modification, TEB/PEB access and system calls. The disasmtool command-line example decodes or emulates files and hex strings.","description_zh":"Bitdefender 开发的 x86/x64 指令解码库，以 C 编写且无外部依赖，可报告显式与隐式操作数及其访问方式、CPUID 特性标志、标志位访问和有效模式，并输出 Intel／MASM 风格的反汇编文本。精简 API 使用 64 字节的指令结构，以较少的信息换取速度；配套的 bdshemu 库在原始缓冲区中模拟基本的 x86/x64 代码，用于标记类似 shellcode 的行为，例如 NOP 滑板、读取指令指针、自修改、访问 TEB/PEB 和系统调用。命令行示例 disasmtool 可对文件或十六进制字符串进行解码或模拟。","entry_url":"https://awesomerea.org/resources/bddisasm/","entry_url_zh":"https://awesomerea.org/zh/resources/bddisasm/","evidence_url":"https://github.com/bitdefender/bddisasm/blob/f0c0e90497d8905d81b7ed650646ea4dbf40bf65/README.md","group":"tools","id":"bddisasm","json_url":"https://awesomerea.org/resources/bddisasm/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/bddisasm/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bddisasm/index.md","name":"bddisasm","name_zh":"bddisasm x86/x64 指令解码库","record_type":"resource","relationship":"foundation","requirements":["The reviewed master commit is the v3.1.0 release of 2026-10-14, which attaches a Linux .deb package and x86 and x64 Windows zip bundles; the README says releases newer than 2.1.4 can be checked with GitHub artifact attestations. v3.1.0 removed the Python and Rust bindings, whose directories now hold only notices that they are unsupported and must not be used in production, and the README warns that the vcpkg package may lag behind.","Builds use CMake 3.16+ with optional Ninja, tested with GCC and Clang on Linux and MSVC on Windows; a Makefile builds only the static libraries, and the Visual Studio 2019 solution with Windows SDK 10.0.18362.0 adds Windows kernel configurations that need WDK 1903. Python 3 is needed only to regenerate the instruction tables with isagenerator, and Make or MSBuild builds leave nd_vsnprintf_s and nd_memset for the integrator to supply.","The caller supplies code bytes and a 16-, 32- or 64-bit mode, optionally with vendor and feature preferences, and only Intel/MASM-style syntax is printed. No executable-format loader is documented, so code in PE, ELF or firmware images must be located with another tool. The README says bdshemu handles only basic instructions, emulates no API calls and supports memory accesses only inside the shellcode and its emulated stack, so its flags describe shellcode-like behaviour rather than a full program run.","CI builds on Linux, Windows and macOS, runs cppcheck and runs the repository’s decoder and emulator regression suites, which compare disasmtool output for bundled test byte files, many with their .asm sources, against expected results. The README also reports internal fuzzing, testing with mishegos and per-instruction speed figures.","Apache-2.0 license. The documentation says Bitdefender uses the library in Windows and Linux user mode, Windows kernel mode and its Napoca hypervisor."],"requirements_zh":["所审阅的 master 提交即 2026-10-14 发布的 v3.1.0，该版本附带 Linux .deb 软件包以及 x86 和 x64 Windows 压缩包；README 说明 2.1.4 之后的版本可用 GitHub 制品证明进行校验。v3.1.0 移除了 Python 和 Rust 绑定，其目录中只剩说明，称绑定已不再支持、不得用于生产环境；README 还提醒 vcpkg 上的版本可能滞后。","可使用 CMake 3.16+ 构建，Ninja 为可选项，已在 Linux 上用 GCC 和 Clang、在 Windows 上用 MSVC 测试；Makefile 只构建静态库，Visual Studio 2019 解决方案配合 Windows SDK 10.0.18362.0 另提供 Windows 内核配置，需安装 WDK 1903。只有用 isagenerator 重新生成指令表时才需要 Python 3；使用 Make 或 MSBuild 构建时，nd_vsnprintf_s 和 nd_memset 需由集成方自行提供。","调用方需提供代码字节并选择 16、32 或 64 位模式，可另设厂商与特性偏好；反汇编文本只支持 Intel／MASM 风格语法。文档未描述可执行文件格式加载器，因此要在 PE、ELF 或固件镜像中定位代码需借助其他工具。README 说明 bdshemu 只支持基本指令，不模拟任何 API 调用，内存访问也仅限于 shellcode 本身及模拟栈，因此其标志反映的是类似 shellcode 的行为，而非完整的程序运行。","CI 在 Linux、Windows 和 macOS 上构建，运行 cppcheck，并运行仓库自带的解码器与模拟器回归测试，将 disasmtool 对随附测试字节文件（多数附有 .asm 源文件）的输出与预期结果比较。README 还报告了内部模糊测试、mishegos 测试以及每条指令的速度数据。","采用 Apache-2.0 许可证。文档称 Bitdefender 在 Windows 和 Linux 用户态、Windows 内核态及其 Napoca 虚拟机监控器中使用该库。"],"targets":["binary"],"url":"https://github.com/bitdefender/bddisasm","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/rocky/python-decompile3/blob/0b97289634ffed8b785be5463ebab7cdf1743a15/NEWS.md","https://github.com/rocky/python-decompile3/blob/0b97289634ffed8b785be5463ebab7cdf1743a15/pyproject.toml","https://github.com/rocky/python-decompile3/blob/0b97289634ffed8b785be5463ebab7cdf1743a15/decompyle3/version.py","https://github.com/rocky/python-decompile3/blob/0b97289634ffed8b785be5463ebab7cdf1743a15/decompyle3/bin/decompile.py","https://github.com/rocky/python-decompile3/blob/0b97289634ffed8b785be5463ebab7cdf1743a15/decompyle3/bin/decompile_code_type.py","https://github.com/rocky/python-decompile3/blob/0b97289634ffed8b785be5463ebab7cdf1743a15/.github/workflows/ubuntu.yml","https://github.com/rocky/python-decompile3/tree/0b97289634ffed8b785be5463ebab7cdf1743a15/test","https://github.com/rocky/python-decompile3/blob/0b97289634ffed8b785be5463ebab7cdf1743a15/COPYING","https://github.com/rocky/python-decompile3/releases/tag/3.9.3","https://pypi.org/project/decompyle3/3.9.3/"],"category":"native-analysis","description_en":"Reworking of uncompyle6 by the same author that translates Python 3.7 and 3.8 bytecode, including some PyPy 3.7 and 3.8 bytecode, back into equivalent Python source; older bytecode stays with uncompyle6. It disassembles code objects with the companion xdis library, then tokenizes and parses the instruction stream with a refactored grammar into a tree from which source is printed, and it can decompile between given start and stop offsets or, through decompyle3-code, only a file's lambdas, generators and comprehensions. The README says the grammar rewrite does not by itself fix uncompyle6's control-flow problem, which the author is addressing with dominator-based analysis in a separate, non-public project.","description_zh":"uncompyle6 作者对该项目的重构版本，可把 Python 3.7 和 3.8 的字节码（包括部分 PyPy 3.7 和 3.8 字节码）还原为等价的 Python 源码；更早版本的字节码仍由 uncompyle6 处理。它借助配套的 xdis 库反汇编代码对象，再用重构后的语法对指令流进行词法处理和解析，生成语法树并据此输出源码；它还能只反编译给定起止偏移之间的代码，或通过 decompyle3-code 只反编译文件中的 lambda、生成器和各类推导式。README 指出，仅靠语法重写并不能解决 uncompyle6 在控制流上的根本问题，作者正在另一个未公开的项目中用基于支配关系的分析来解决。","entry_url":"https://awesomerea.org/resources/decompyle3/","entry_url_zh":"https://awesomerea.org/zh/resources/decompyle3/","evidence_url":"https://github.com/rocky/python-decompile3/blob/0b97289634ffed8b785be5463ebab7cdf1743a15/README.rst","group":"tools","id":"decompyle3","json_url":"https://awesomerea.org/resources/decompyle3/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/decompyle3/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/decompyle3/index.md","name":"decompyle3","name_zh":"decompyle3 Python 3.7–3.8 字节码反编译器","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 3.9.3, published 2025-10-01 on GitHub and PyPI; the reviewed master commit, from 2026-07-21, is 18 commits later and reports 3.9.4.dev0. The README says the code runs on Python 3.7 or 3.8, whereas pyproject.toml requires Python 3.7+ with classifiers through 3.13, master CI tests under Python 3.13, and a separate python-3.7-to-3.10 branch is tested under 3.8; the 3.9.3 release also ships wheels and eggs for 3.7, 3.8 and 3.9. It depends on xdis newer than 6.2, spark-parser 1.8.9 up to but not including 1.9.2, and click; master CI installs xdis from its git repository until the next xdis release.","The README reports testing on bytecode from Python 3.7 and 3.8, and the regression suite keeps compiled 3.7 and 3.8 samples plus a few PyPy ones; the release notes state that bytecode newer than 3.8 is not decompiled. The author warns of numerous decompilation bugs and does not intend serious work on 3.8 or 3.9 until the project is better funded. Candidate-release magic numbers, PJOrion or otherwise obfuscated code, Cython and MicroPython are not handled, and pathologically long expression or statement lists are slow.","Input .pyc or .pyo files come from the user; it cannot decompile Py2EXE executables directly, and bytecode bundled by such packagers has to be extracted first. The README's --syntax-verify option appears in the reviewed CLI as --verify syntax, next to --verify run; a syntax check is meaningful only when the checking interpreter matches the bytecode version, so the README suggests cross-checking with another decompiler such as unpyc37 and with programs that test themselves, including Python's standard-library tests. Recovered source remains subject to the rights of the original program’s owner.","GPL-3.0-or-later per pyproject.toml, with the GPL-3.0 text in COPYING."],"requirements_zh":["审阅时最新版本为 3.9.3，于 2025-10-01 在 GitHub 和 PyPI 发布；所审阅的 master 提交日期为 2026-07-21，比该版本晚 18 个提交，版本号为 3.9.4.dev0。README 称代码可在 Python 3.7 或 3.8 上运行，而 pyproject.toml 要求 Python 3.7+，分类信息列到 3.13；master 分支的 CI 在 Python 3.13 下测试，另有独立的 python-3.7-to-3.10 分支在 3.8 下测试；3.9.3 版本还另行提供面向 3.7、3.8 和 3.9 的 wheel 与 egg 包。依赖高于 6.2 的 xdis、1.8.9 及以上但低于 1.9.2 的 spark-parser，以及 click；在 xdis 发布下一个版本之前，master 分支的 CI 从其 git 仓库安装 xdis。","README 称已用 Python 3.7 和 3.8 的字节码测试过，回归测试保留了 3.7 和 3.8 的编译样本以及少量 PyPy 样本；发布说明指出，高于 3.8 的字节码不会被反编译。作者提醒反编译仍有大量缺陷，并表示在项目获得更多资助之前不打算认真投入 3.8 或 3.9 的支持。候选发布版本的魔数、PJOrion 或其他混淆代码以及 Cython 和 MicroPython 均不受支持，处理超长的表达式或语句列表也很慢。","输入的 .pyc 或 .pyo 文件由使用者提供；它不能直接反编译 Py2EXE 生成的可执行文件，这类打包程序中的字节码需先行提取。README 所述的 --syntax-verify 选项在所审阅的命令行中为 --verify syntax，另有 --verify run；只有当检查用的解释器与字节码版本一致时，语法检查才有意义，因此 README 建议用 unpyc37 等其他反编译器交叉核对，并借助能自我测试的程序（包括 Python 标准库的测试）进行检验。恢复出的源码仍受原程序权利人的权利约束。","pyproject.toml 声明采用 GPL-3.0-or-later，COPYING 收录 GPL-3.0 全文。"],"targets":["app","binary"],"url":"https://github.com/rocky/python-decompile3","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/binarly-io/fwhunt-scan/blob/6fc7115959e4825199882f5b397a0d7c34cbbfd1/fwhunt_scan_analyzer.py","https://github.com/binarly-io/fwhunt-scan/blob/6fc7115959e4825199882f5b397a0d7c34cbbfd1/fwhunt_scan/uefi_analyzer.py#L781-L820","https://github.com/binarly-io/fwhunt-scan/blob/6fc7115959e4825199882f5b397a0d7c34cbbfd1/fwhunt_scan/uefi_scanner.py","https://github.com/binarly-io/fwhunt-scan/blob/6fc7115959e4825199882f5b397a0d7c34cbbfd1/requirements.txt","https://github.com/binarly-io/fwhunt-scan/blob/6fc7115959e4825199882f5b397a0d7c34cbbfd1/setup.py","https://github.com/binarly-io/fwhunt-scan/blob/6fc7115959e4825199882f5b397a0d7c34cbbfd1/Dockerfile","https://github.com/binarly-io/fwhunt-scan/blob/6fc7115959e4825199882f5b397a0d7c34cbbfd1/.github/workflows/ci.yml","https://github.com/binarly-io/fwhunt-scan/blob/6fc7115959e4825199882f5b397a0d7c34cbbfd1/fwhunt_scan/test_internal.py","https://github.com/binarly-io/fwhunt-scan/blob/6fc7115959e4825199882f5b397a0d7c34cbbfd1/LICENSE","https://pypi.org/project/fwhunt-scan/2.3.8/","https://github.com/binarly-io/fwhunt/blob/a2e3be630e407a49c8076178c712bcf6cccda1bf/README.md"],"category":"firmware","description_en":"Binarly's Python scanner that checks UEFI firmware modules against FwHunt rules, the YAML detection format for known UEFI firmware vulnerabilities whose rules are kept in the separate fwhunt repository. Its rizin-based analyzer reports a PE or TE module's Boot, Runtime and PEI service calls, protocols, PPIs, GUIDs, NVRAM variables and SMI handlers, which rules combine with code patterns, strings and hex strings. The CLI analyzes or scans one module, or extracts the modules of a whole firmware image and scans them, and the same classes work as a Python library.","description_zh":"Binarly 推出的 Python 扫描器，用 FwHunt 规则检查 UEFI 固件模块；FwHunt 是针对已知 UEFI 固件漏洞的 YAML 检测规则格式，规则本身存放在独立的 fwhunt 仓库中。其基于 rizin 的分析器可报告 PE 或 TE 模块的 Boot、Runtime 与 PEI 服务调用、协议、PPI、GUID、NVRAM 变量和 SMI 处理程序，规则将这些信息与代码模式、字符串和十六进制串组合匹配。命令行工具可分析或扫描单个模块，也可从整个固件镜像中提取模块后逐一扫描，相同的类也能作为 Python 库调用。","entry_url":"https://awesomerea.org/resources/fwhunt-scan/","entry_url_zh":"https://awesomerea.org/zh/resources/fwhunt-scan/","evidence_url":"https://github.com/binarly-io/fwhunt-scan/blob/6fc7115959e4825199882f5b397a0d7c34cbbfd1/README.md","group":"tools","id":"fwhunt-scan","json_url":"https://awesomerea.org/resources/fwhunt-scan/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/fwhunt-scan/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fwhunt-scan/index.md","name":"FwHunt Community Scanner (fwhunt-scan)","name_zh":"FwHunt 社区版 UEFI 固件规则扫描器","record_type":"resource","relationship":"foundation","requirements":["The repository has no GitHub releases or tags. The reviewed master commit, from 2025-05-02 and the latest at review, follows the setup.py bump to 2.3.8, the version uploaded to PyPI that day; a separate release branch publishes Docker images to GHCR tagged by commit.","Needs Python 3 (README: tested on 3.6 and above; CI runs on 3.9 to 3.13) with click, rzpipe 0.4.0, PyYAML and uefi_firmware, plus an installed rizin. The README names rizin v0.6.2, and the Dockerfile builds that release from source on a python:3.11 image. Passing an in-memory blob instead of a file path works only on Linux.","Input is a UEFI module or firmware image the user already has, plus FwHunt rule files; no rules are bundled, and the README's rules/ and test/fw.bin example paths are not in this repository. scan-firmware applies firmware-target rules to the whole image and module rules only to modules from the volumes their volume_guids name, unless --force applies them to every module; extract writes all found modules to a directory.","The only test checks GUID table lookups, and CI runs it after a flake8 syntax check. A scan reports, per rule and variant, whether a known pattern matched, printed as threat detected or not; no match does not show that a module is free of other vulnerabilities.","GPL-3.0: setup.py declares GPL-3.0 and source headers GPL-3.0+; the separate fwhunt rule repository is CC0-1.0."],"requirements_zh":["仓库没有 GitHub 发布版本或标签。所审阅的 master 提交日期为 2025-05-02，也是审阅时的最新提交，位于 setup.py 升至 2.3.8 之后，该版本于同日上传至 PyPI；另有一个 release 分支向 GHCR 发布以提交号为标签的 Docker 镜像。","需要 Python 3（README 称在 3.6 及以上版本测试，CI 在 3.9 至 3.13 上运行），以及 click、rzpipe 0.4.0、PyYAML 和 uefi_firmware，并需安装 rizin。README 指定 rizin v0.6.2，Dockerfile 在 python:3.11 镜像上从源码构建该版本。以内存数据块代替文件路径传入的方式仅支持 Linux。","输入为使用者已有的 UEFI 模块或固件镜像，以及 FwHunt 规则文件；仓库不附带任何规则，README 示例中的 rules/ 和 test/fw.bin 路径也不在本仓库中。scan-firmware 将目标为 firmware 的规则用于整个镜像，模块规则则只用于其 volume_guids 所指固件卷中的模块，除非使用 --force 将其用于所有模块；extract 命令把找到的全部模块写入一个目录。","唯一的测试只检查 GUID 表查找，CI 在 flake8 语法检查后运行它。扫描结果按规则及其变体报告已知模式是否命中，输出为检测到或未检测到威胁；未命中并不说明模块不存在其他漏洞。","采用 GPL-3.0：setup.py 声明 GPL-3.0，源码文件头为 GPL-3.0+；独立的 fwhunt 规则仓库采用 CC0-1.0。"],"targets":["firmware"],"url":"https://github.com/binarly-io/fwhunt-scan","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/tklengyel/drakvuf/blob/b2f64d8d73d456840e5fc276c13f0df0b2b79231/LICENSE","https://github.com/tklengyel/drakvuf/blob/b2f64d8d73d456840e5fc276c13f0df0b2b79231/.gitmodules","https://github.com/tklengyel/drakvuf/blob/b2f64d8d73d456840e5fc276c13f0df0b2b79231/meson.build","https://github.com/tklengyel/drakvuf/tree/b2f64d8d73d456840e5fc276c13f0df0b2b79231/src/plugins","https://github.com/tklengyel/drakvuf/blob/b2f64d8d73d456840e5fc276c13f0df0b2b79231/.github/workflows/ci.yml","https://drakvuf.com/","https://github.com/tklengyel/drakvuf/releases/tag/1.0","https://github.com/tklengyel/drakvuf-builds/releases/tag/build-b2f64d8d73d456840e5fc276c13f0df0b2b79231"],"category":"dynamic-analysis","description_en":"Tamas K Lengyel's virtualization-based, agentless black-box binary analysis system: running on the Xen hypervisor through LibVMI, it traces execution in Windows and Linux guests, from kernel functions to user-mode code, without installing software inside the analyzed virtual machine. Plugins log system calls, API calls and file, registry, process, socket and memory activity, extract files from memory before they are deleted and dump process memory, while an injector starts programs in the guest without an in-guest helper. CERT Polska's separate DRAKVUF Sandbox builds an automated sandbox with a GUI on top of it.","description_zh":"由 Tamas K Lengyel 开发的基于虚拟化、无需代理的黑盒二进制分析系统：它运行在 Xen 虚拟机监控器上并借助 LibVMI，跟踪 Windows 和 Linux 客户机中从内核函数到用户态代码的执行过程，且无需在被分析的虚拟机内安装任何软件。各插件可记录系统调用、API 调用以及文件、注册表、进程、套接字和内存活动，在文件被删除前从内存中提取文件并转储进程内存；注入器无需客户机内辅助程序即可在客户机中启动程序。CERT Polska 另行开发的 DRAKVUF Sandbox 在其基础上构建了带图形界面的自动化沙箱。","entry_url":"https://awesomerea.org/resources/drakvuf/","entry_url_zh":"https://awesomerea.org/zh/resources/drakvuf/","evidence_url":"https://github.com/tklengyel/drakvuf/blob/b2f64d8d73d456840e5fc276c13f0df0b2b79231/README.md","group":"tools","id":"drakvuf","json_url":"https://awesomerea.org/resources/drakvuf/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/drakvuf/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/drakvuf/index.md","name":"DRAKVUF","name_zh":"DRAKVUF 虚拟化黑盒二进制分析系统","record_type":"resource","relationship":"foundation","requirements":["Latest tagged release: 1.0, published 2022-12-29 with Debian and Ubuntu packages. meson.build at the reviewed main commit of 2026-09-30 declares version 1.1, and the separate drakvuf-builds repository publishes per-commit drakvuf-bundle 1.1 packages for Debian bookworm and Ubuntu 22.04 and 24.04 with matching Xen 4.20.1 hypervisor packages, including a build of the reviewed commit.","Needs an Intel CPU with VT-x and Extended Page Tables; the README says DRAKVUF will not work on AMD or on Intel CPUs without them. DRAKVUF runs in Xen's dom0. The project website's installation guide, last updated 2022-12-29 for Xen 4.17 and mainly tested on Ubuntu 22.04, builds Xen from the bundled submodule, sets Xen boot options, asks for a dom0 kernel of 5.11 or newer and stores guest disks on LVM; DRAKVUF itself builds with meson and ninja.","The README lists Windows 7 and 8 (32- and 64-bit), Windows 10 64-bit and Linux 2.6.x to 6.x guests; the older website guide says Linux up to 5.x. The analyst installs the guest from their own operating-system media and generates a JSON kernel profile for LibVMI, from the Windows kernel's PDB with the bundled Volatility 3 pdbconv script or from Linux kernel debug symbols with dwarf2json; extra per-module profiles, such as one for tcpip.sys, enable plugins like socketmon.","Custom license: GPL version 2 only with the author's clarifications and exceptions, which read derivative works broadly, bar combining DRAKVUF with plain-GPL software and offer alternative licenses for proprietary use; GitHub does not classify it. Xen, LibVMI, Volatility 3 and dwarf2json are git submodules under their own licenses. The README presents it mainly for malware analysis."],"requirements_zh":["最新的带标签版本为 1.0，发布于 2022-12-29，附带 Debian 和 Ubuntu 软件包。所审阅的 2026-09-30 main 提交中，meson.build 声明版本为 1.1；独立的 drakvuf-builds 仓库按提交发布面向 Debian bookworm 以及 Ubuntu 22.04 和 24.04 的 drakvuf-bundle 1.1 软件包，并附配套的 Xen 4.20.1 虚拟机监控器软件包，其中包括所审阅提交的构建。","需要支持 VT-x 和扩展页表（EPT）的 Intel 处理器；README 称 DRAKVUF 无法在 AMD 处理器或缺少这些扩展的 Intel 处理器上运行。DRAKVUF 运行于 Xen 的 dom0 中。项目网站的安装指南最后更新于 2022-12-29，针对 Xen 4.17，主要在 Ubuntu 22.04 上测试：它从自带的子模块构建 Xen、设置 Xen 启动参数、要求 dom0 内核为 5.11 或更新版本，并把客户机磁盘放在 LVM 上；DRAKVUF 本身用 meson 和 ninja 构建。","README 列出的客户机包括 Windows 7 和 8（32 位与 64 位）、64 位 Windows 10 以及 Linux 2.6.x 至 6.x；较早的网站指南则称 Linux 支持到 5.x。分析者需用自己的操作系统安装介质安装客户机，并为 LibVMI 生成 JSON 内核配置文件：Windows 从内核 PDB 用自带的 Volatility 3 pdbconv 脚本生成，Linux 则用 dwarf2json 从内核调试符号生成；针对单个模块的额外配置文件（如 tcpip.sys 的配置）可启用 socketmon 等插件。","采用自定义许可：仅限 GPL 第 2 版，并附作者的澄清与例外条款，这些条款对衍生作品作宽泛解释，禁止将 DRAKVUF 与普通 GPL 软件结合，并为专有用途提供替代许可；GitHub 无法识别该许可。Xen、LibVMI、Volatility 3 和 dwarf2json 作为 git 子模块引入，各自适用其许可证。README 主要将其定位于恶意软件分析。"],"targets":["binary"],"url":"https://github.com/tklengyel/drakvuf","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/decalage2/ViperMonkey/blob/73547cef7f82dbcb10e22e36b84b558a07f7d21d/setup.py","https://github.com/decalage2/ViperMonkey/blob/73547cef7f82dbcb10e22e36b84b558a07f7d21d/requirements.txt","https://github.com/decalage2/ViperMonkey/blob/73547cef7f82dbcb10e22e36b84b558a07f7d21d/vipermonkey/vmonkey.py","https://github.com/decalage2/ViperMonkey/blob/73547cef7f82dbcb10e22e36b84b558a07f7d21d/vipermonkey/vbashell.py","https://github.com/decalage2/ViperMonkey/blob/73547cef7f82dbcb10e22e36b84b558a07f7d21d/docker/dockermonkey.sh","https://github.com/decalage2/ViperMonkey/blob/73547cef7f82dbcb10e22e36b84b558a07f7d21d/docs/APITutorial.md","https://github.com/decalage2/ViperMonkey/tree/73547cef7f82dbcb10e22e36b84b558a07f7d21d/tests","https://github.com/kirk-sayre-work/ViperMonkey/tree/29078c1042645855a856fabc8db0a8e7780faa22"],"category":"dynamic-analysis","description_en":"VBA parser and emulation engine, created by Philippe Lagadec and developed since 2017 mainly by Kirk Sayre and other contributors, for analyzing and deobfuscating malicious macros in Microsoft Office files such as Word, Excel, PowerPoint and Publisher documents, as well as VBScript files and HTA files carrying VBScript. The vmonkey command reads the macros through oletools' olevba, emulates them from their auto-run entry points or from functions the analyst names, and reports the recorded actions, such as process creation, along with optional intermediate IOCs and the files the code would write; vbashell is an interactive VBA shell. A Python API evaluates VBA snippets, walks and emulates individual code blocks, replaces functions and deobfuscates code.","description_zh":"VBA 解析与仿真引擎，由 Philippe Lagadec 创建，自 2017 年起主要由 Kirk Sayre 及其他贡献者开发，用于分析和去混淆 Microsoft Office 文件（如 Word、Excel、PowerPoint 和 Publisher 文档）中的恶意宏，也可处理 VBScript 文件和内含 VBScript 的 HTA 文件。vmonkey 命令通过 oletools 的 olevba 读取宏，从自动运行入口或分析人员指定的函数开始仿真，报告记录到的行为（例如创建进程），并可列出中间 IOC 和代码将写出的文件；vbashell 则是交互式 VBA shell。其 Python API 可求值 VBA 代码片段、遍历并仿真单个代码块、替换函数以及对代码去混淆。","entry_url":"https://awesomerea.org/resources/vipermonkey/","entry_url_zh":"https://awesomerea.org/zh/resources/vipermonkey/","evidence_url":"https://github.com/decalage2/ViperMonkey/blob/73547cef7f82dbcb10e22e36b84b558a07f7d21d/README.md","group":"tools","id":"vipermonkey","json_url":"https://awesomerea.org/resources/vipermonkey/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/vipermonkey/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/vipermonkey/index.md","name":"ViperMonkey","name_zh":"ViperMonkey VBA 恶意宏仿真分析引擎","record_type":"resource","relationship":"foundation","requirements":["Version 1.0.3, set in setup.py and vmonkey.py in 2021; there are no GitHub releases, tags or PyPI package, so it is installed from a master archive. The reviewed master commit, from 2024-04-25 and the latest at review, caps oletools at 0.60.1. The README says most development since November 2017 happens in Kirk Sayre's fork and is synchronised here regularly; at review that fork's master branch was 162 commits ahead of and 8 behind this one, with its latest commit from 2021-08-04.","Runs on Python 2.7: the README installs it under PyPy 2.7, recommended as about five times faster, or CPython 2.7, and the API tutorial uses Python 2 print statements. Dependencies are pinned for that interpreter, including pyparsing 2.2.0 because newer versions mis-parse or run out of memory on some samples, unidecode 1.2.0 and oletools 0.56.1–0.60.1, plus olefile, xlrd, xlrd2, prettytable, colorlog and colorama. Alternatively, docker/dockermonkey.sh pulls the third-party haroldogden/vipermonkey image, updates the checkouts inside it with git pull, starts headless LibreOffice, disconnects the container from the network and runs vmonkey with -s, --iocs and --jit.","The user supplies the suspicious documents or VBScript files; the repository includes no samples, and its tests are four Python modules. The README calls ViperMonkey experimental, working on some but not all maldocs, and extremely slow, recommending -s to strip useless statements. --jit converts VB loops to Python and runs them with eval, which the README flags as a security risk and suggests the Docker sandbox for; dropped files, including PE files found embedded in Office files, are written to a <file>_artifacts directory with their SHA-256 hashes reported. Results depend on how far the engine emulates VBA, Office objects and called DLLs or ActiveX objects, which the README describes as hard and incomplete.","BSD two-clause terms stated in the README and source headers, copyright 2015–2020 Philippe Lagadec; there is no license file, so GitHub detects none, and the README's exception for a thirdparty folder refers to a folder absent from the reviewed commit."],"requirements_zh":["版本号为 1.0.3，于 2021 年写入 setup.py 和 vmonkey.py；项目没有 GitHub 发布版本、标签或 PyPI 包，需从 master 分支压缩包安装。所审阅的 master 提交日期为 2024-04-25，也是审阅时的最新提交，它将 oletools 版本上限设为 0.60.1。README 称自 2017 年 11 月起大部分开发在 Kirk Sayre 的分支中进行，并定期同步到本仓库；审阅时该分支的 master 比本仓库多 162 个提交、少 8 个提交，其最新提交日期为 2021-08-04。","运行于 Python 2.7：README 介绍了在 PyPy 2.7（推荐，速度约快五倍）或 CPython 2.7 下的安装方法，API 教程也使用 Python 2 的 print 语句。依赖版本按该解释器固定，包括 pyparsing 2.2.0（更新的版本会在部分样本上解析出错或耗尽内存）、unidecode 1.2.0 和 oletools 0.56.1–0.60.1，另需 olefile、xlrd、xlrd2、prettytable、colorlog 和 colorama。也可以使用 docker/dockermonkey.sh：它拉取第三方的 haroldogden/vipermonkey 镜像，用 git pull 更新镜像内的代码，启动无界面的 LibreOffice，断开容器网络，再以 -s、--iocs 和 --jit 选项运行 vmonkey。","可疑文档或 VBScript 文件由使用者提供；仓库不含任何样本，测试只有四个 Python 模块。README 称 ViperMonkey 仍属实验性质，只对部分恶意文档有效，且速度极慢，并建议使用 -s 去除无用语句。--jit 会把 VB 循环转换为 Python 并通过 eval 执行，README 指出这存在安全风险，建议使用 Docker 沙箱；释放的文件（包括在 Office 文件中发现的内嵌 PE 文件）会写入 <文件名>_artifacts 目录，并报告其 SHA-256 哈希。分析结果取决于引擎对 VBA、Office 对象以及所调用 DLL 或 ActiveX 对象的仿真程度，README 也说明这类仿真既困难又不完整。","README 和源码头部声明 BSD 两条款许可，版权归 Philippe Lagadec（2015–2020）；仓库没有许可证文件，因此 GitHub 未识别出许可证，README 中针对 thirdparty 文件夹的例外说明所指的文件夹在所审提交中并不存在。"],"targets":["binary"],"url":"https://github.com/decalage2/ViperMonkey","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","category":"learning","description_en":"Michal Malik’s single-README reading list for Linux reverse engineering, with about 230 links and book titles that run from quick references on system calls, ELF and processor ABIs through 101 and 201 tiers on program start-up, linking and relocations. Later sections gather material on packers and obfuscation, anti-debugging, ELF infection, kernel modules and rootkits, exploitation, crackmes, radare2 walkthroughs, detection tools and books. It is a lightly annotated link list last changed in January 2022, useful as a background syllabus rather than a maintained course.","description_zh":"Michal Malik 以单个 README 维护的 Linux 逆向工程阅读清单，收录约 230 条链接与书目：从系统调用、ELF 和各处理器 ABI 的速查资料，到讲解程序启动、链接与重定位的 101、201 两级阅读。后续部分汇集加壳与混淆、反调试、ELF 感染、内核模块与 rootkit、漏洞利用、crackme、radare2 实战、检测工具及书籍等资料。这是一份注释很少、最后改动于 2022 年 1 月的链接清单，适合作为背景阅读提纲，而不是持续维护的课程。","entry_url":"https://awesomerea.org/resources/linux-re-101/","entry_url_zh":"https://awesomerea.org/zh/resources/linux-re-101/","evidence_url":"https://github.com/michalmalik/linux-re-101/blob/f858da0f325aa4eb77008ba63d1bddfaf8d53d80/README.md","group":"learn","id":"linux-re-101","json_url":"https://awesomerea.org/resources/linux-re-101/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/linux-re-101/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/linux-re-101/index.md","name":"linux-re-101","name_zh":"linux-re-101 Linux 逆向工程阅读清单","record_type":"resource","relationship":"learning","requirements":["The reviewed master commit f858da0, dated 2022-01-16, contains a single file, README.md, which calls the list a work in progress. It holds 231 bullet entries under 15 headings; the largest are Linux kernel, rootkits and LKM development (40), 101 (22) and viruses and infection techniques (20), and several articles appear in more than one section.","Entries give a title and a link, sometimes marked Optional or followed by a short remark; beyond the 101 and 201 headings they state no level, prerequisites or exercises. 148 of the 229 URLs use plain HTTP, and most dated links point to posts from 2008–2017.","The material centres on Linux ELF binaries on x86, x86-64, ARM, ARM64 and MIPS, and the hands-on section mostly uses radare2, with GDB, IDA and LIEF references elsewhere. The repository supplies no labs, sample binaries or setup; crackme and challenge links lead to external archives, and readers need a Linux system plus whatever tools each linked article names.","The packer, anti-debugging, infection, rootkit and exploitation sections link offensive write-ups, rootkit source repositories and external virus collections alongside detection material; linked code and samples are third-party material with their own risks and terms.","GitHub detects no license and the repository has no license file, so the list states no reuse terms; linked articles, books and code keep their own rights. An independent learning list."],"requirements_zh":["所审阅的 master 分支提交 f858da0 日期为 2022-01-16，仓库只有 README.md 一个文件，并自称仍在整理中。清单在 15 个标题下共有 231 个条目，最多的是「Linux 内核、rootkit 与 LKM 开发」（40 条）、「101」（22 条）和「病毒与感染技术」（20 条），部分文章在多个部分重复出现。","条目只给出标题和链接，偶尔标注 Optional 或附简短评语；除 101、201 两级标题外，没有说明难度、前置知识或练习。229 个 URL 中有 148 个使用明文 HTTP，可辨日期的链接大多指向 2008–2017 年的文章。","内容以 x86、x86-64、ARM、ARM64 和 MIPS 上的 Linux ELF 二进制为中心，实战部分主要使用 radare2，其他部分也提到 GDB、IDA 和 LIEF。仓库不提供实验环境、样本二进制或配置说明；crackme 与挑战题链接指向外部压缩包，读者需要自备 Linux 系统及各篇文章所用的工具。","加壳、反调试、感染、rootkit 与漏洞利用等部分在检测资料之外，也链接了攻击性文章、rootkit 源码仓库和外部病毒合集；所链接的代码和样本属于第三方材料，各有风险与使用条款。","GitHub 未检测到许可证，仓库也没有许可证文件，因此清单未说明复用条款；所链接的文章、书籍和代码保留各自权利。这是独立的学习清单。"],"targets":["binary"],"url":"https://github.com/michalmalik/linux-re-101","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/horsicq/XAPKDetector/blob/09ce272fd312325678c864e9dd05f22070fe8b36/docs/BUILD.md","https://github.com/horsicq/XAPKDetector/blob/09ce272fd312325678c864e9dd05f22070fe8b36/docs/RUN.md","https://github.com/horsicq/XAPKDetector/blob/09ce272fd312325678c864e9dd05f22070fe8b36/changelog.txt","https://github.com/horsicq/XAPKDetector/blob/09ce272fd312325678c864e9dd05f22070fe8b36/.gitmodules","https://github.com/horsicq/XAPKDetector/blob/09ce272fd312325678c864e9dd05f22070fe8b36/console_source/main_console.cpp","https://github.com/horsicq/XAPKDetector/blob/09ce272fd312325678c864e9dd05f22070fe8b36/gui_source/guimainwindow.ui","https://github.com/horsicq/XAPKDetector/blob/09ce272fd312325678c864e9dd05f22070fe8b36/LICENSE","https://github.com/horsicq/XAPKDetector/releases/tag/0.03"],"category":"android","description_en":"APK and DEX detector from hors, the author of Detect-It-Easy, that reports the build tools, libraries and protections it identifies in Android packages, using scan engines and signature databases from the Detect-It-Easy family. The Qt GUI also shows AndroidManifest.xml, MANIFEST.MF, DEX and ELF contents, strings, hex, entropy, hashes and the APK signature, and can scan whole directories. A console build runs recursive, deep, heuristic or all-types scans and writes XML, JSON, CSV or TSV results.","description_zh":"由 Detect-It-Easy 作者 hors 开发的 APK 与 DEX 检测工具，借助 Detect-It-Easy 系列的扫描引擎和签名库，报告在 Android 软件包中识别出的构建工具、库和保护措施。其 Qt 图形界面还可查看 AndroidManifest.xml、MANIFEST.MF、DEX 和 ELF 内容，以及字符串、十六进制、熵、哈希和 APK 签名，并能扫描整个目录。命令行版本支持递归、深度、启发式或全类型扫描，并以 XML、JSON、CSV 或 TSV 格式输出结果。","entry_url":"https://awesomerea.org/resources/xapkdetector/","entry_url_zh":"https://awesomerea.org/zh/resources/xapkdetector/","evidence_url":"https://github.com/horsicq/XAPKDetector/blob/09ce272fd312325678c864e9dd05f22070fe8b36/README.md","group":"tools","id":"xapkdetector","json_url":"https://awesomerea.org/resources/xapkdetector/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/xapkdetector/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/xapkdetector/index.md","name":"XAPKDetector","name_zh":"XAPKDetector APK/DEX 检测工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 0.03, published 2022-03-14, with Windows portable zips (including a Windows XP build), macOS packages including a Qt 6 build, a Linux AppImage and Debian and Ubuntu packages; release_version.txt still reads 0.03. The master branch was still receiving submodule updates at review, such as new Detect-It-Easy signatures on 2026-10-19, so the source is ahead of the released binaries.","Building needs a recursive clone of 55 git submodules from the author's other repositories, including Formats, XDEX, SpecAbstract, the signatures database and Detect-It-Easy, plus Qt. docs/BUILD.md covers Docker, a Debian package build tested on Ubuntu 14.04 to 20.04, autotools and CMake, macOS with Qt 5.15.2, and Windows with Visual Studio 2019 and Qt 5.15.2 or, for Windows XP, Visual Studio 2013 and Qt 5.6.3.","Input is APK, APKS or DEX files the analyst already has; the changelog adds APKS support in 0.03. Detections are signature and heuristic identifications for analyst confirmation. The repository itself contains no tests or CI workflows.","MIT license, copyright 2020-2026 hors; the submodules are separate repositories."],"requirements_zh":["审阅时最新版本为 0.03，发布于 2022-03-14，提供 Windows 便携版 zip（含 Windows XP 版本）、包括 Qt 6 版本在内的 macOS 安装包、Linux AppImage 以及 Debian 和 Ubuntu 软件包；release_version.txt 仍为 0.03。审阅时 master 分支仍在持续更新子模块，例如 2026-10-19 加入了新的 Detect-It-Easy 签名，因此源码比已发布的二进制版本更新。","构建需要递归克隆来自作者其他仓库的 55 个 git 子模块（包括 Formats、XDEX、SpecAbstract、签名库和 Detect-It-Easy），并需要 Qt。docs/BUILD.md 介绍了 Docker 构建、在 Ubuntu 14.04 至 20.04 上测试过的 Debian 软件包构建、autotools 和 CMake 构建、使用 Qt 5.15.2 的 macOS 构建，以及使用 Visual Studio 2019 和 Qt 5.15.2 的 Windows 构建；Windows XP 版本则使用 Visual Studio 2013 和 Qt 5.6.3。","输入为分析者已有的 APK、APKS 或 DEX 文件；更新日志显示 0.03 版加入了 APKS 支持。检测结果基于签名和启发式识别，需分析者确认。仓库本身没有测试或 CI 工作流。","采用 MIT 许可，版权归 hors（2020-2026）；各子模块是独立仓库。"],"targets":["app"],"url":"https://github.com/horsicq/XAPKDetector","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/Theldus/bread/blob/700807ef312db8bb765f88eb4f702bc22b7b2858/README.md#L99-L134","https://github.com/Theldus/bread/blob/700807ef312db8bb765f88eb4f702bc22b7b2858/README.md#L136-L282","https://github.com/Theldus/bread/blob/700807ef312db8bb765f88eb4f702bc22b7b2858/Makefile","https://github.com/Theldus/bread/blob/700807ef312db8bb765f88eb4f702bc22b7b2858/dbg.asm","https://github.com/Theldus/bread/blob/700807ef312db8bb765f88eb4f702bc22b7b2858/symbolify.py","https://github.com/Theldus/bread/blob/700807ef312db8bb765f88eb4f702bc22b7b2858/.gdbinit","https://github.com/Theldus/bread/blob/700807ef312db8bb765f88eb4f702bc22b7b2858/LICENSE","https://github.com/Theldus/bread/commit/700807ef312db8bb765f88eb4f702bc22b7b2858"],"category":"dynamic-analysis","description_en":"Injectable real-mode x86 debugger for legacy BIOS code, boot code and DOS programs on real hardware or in a virtual machine. A small 16-bit assembly stub placed in the target code installs interrupt handlers, single-steps the processor and talks over a serial line to a Linux bridge, which translates its simple packets into the GDB remote protocol so GDB can read and write memory and registers, step, continue and set one hardware breakpoint and one watchpoint at a time. A companion script turns an address–label list into a minimal ELF symbol file for GDB.","description_zh":"可注入的 x86 实模式调试器，用于在真实硬件或虚拟机上调试传统 BIOS 代码、引导代码和 DOS 程序。放入目标代码中的 16 位汇编小程序会安装中断处理程序、让处理器单步执行，并通过串口与 Linux 上的桥接程序通信；桥接程序把这些简化报文转换为 GDB 远程协议，使 GDB 能读写内存和寄存器、单步、继续执行，并可同时设置一个硬件断点和一个观察点。配套脚本可将地址与标签列表转换为供 GDB 加载的最小 ELF 符号文件。","entry_url":"https://awesomerea.org/resources/bread-bios-debugger/","entry_url_zh":"https://awesomerea.org/zh/resources/bread-bios-debugger/","evidence_url":"https://github.com/Theldus/bread/blob/700807ef312db8bb765f88eb4f702bc22b7b2858/README.md","group":"tools","id":"bread-bios-debugger","json_url":"https://awesomerea.org/resources/bread-bios-debugger/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/bread-bios-debugger/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bread-bios-debugger/index.md","name":"BREAD","name_zh":"BREAD BIOS 实模式调试器","record_type":"resource","relationship":"foundation","requirements":["No releases are published. The reviewed master commit of 2025-10-21 fixes EIP handling in the interrupt-based mode; the previous code change, adding the symbolify tool, dates from 2023-10-19. Building needs a Linux host with GNU Make, a C compiler such as GCC, Clang or TCC, and NASM. The default build polls the UART at full CPU load, while UART_POLLING=no selects the interrupt-based mode, which is not the default because interrupts are not always enabled.","dbg.asm must be edited for each target, changing its ORG and return path and restoring any instructions replaced by the call into it, and the assembled dbg.bin then goes into the user’s own BIOS ROM image or runs as a DOS .COM program from a minimal FreeDOS or DOS boot floppy. Real hardware needs a serial connection to the Linux host. The repository ships no ROM; symbols/ami_ipm41d3.txt holds the author’s symbol names for one PCWare IPM41-D3 AMI legacy BIOS, which its header calls the author’s interpretation, not official or leaked symbols.","The README lists limits: the debugged code is unaware of the debugger, so a switch to protected mode, a changed IDT or a missing stack stops it from working, and BIOS code cannot be followed from the boot block because RAM must already be set up; a warm reboot can replay initialisation but may take a different path from a cold boot. Virtual machines need debug-register support, from a Bochs build with its x86 debugger enabled or QEMU with KVM, which the bundled qemu target uses with a floppy built from the included boot sector and debugger.","The repository has no tests or CI; the README links a demonstration video that changes the CPU name string. MIT license by Davidson Francis; firmware and programs being debugged keep their own rights."],"requirements_zh":["项目未发布任何版本。所审阅的 master 提交（2025-10-21）修复了中断模式下的 EIP 处理问题；上一次代码改动是 2023-10-19 加入 symbolify 工具。构建需要 Linux 主机、GNU Make、GCC、Clang 或 TCC 等 C 编译器以及 NASM。默认构建以轮询方式读取 UART，会占满 CPU；UART_POLLING=no 可改为中断模式，但由于中断并非总是启用，该模式不是默认选项。","每个目标都需要修改 dbg.asm：调整 ORG 和返回方式，并恢复为调用调试器而被替换的指令；汇编得到的 dbg.bin 随后放入使用者自有的 BIOS ROM 镜像，或作为 DOS .COM 程序在最小 FreeDOS 或 DOS 启动软盘中运行。在真实硬件上调试需通过串口连接 Linux 主机。仓库不附带任何 ROM；symbols/ami_ipm41d3.txt 是作者为一款 PCWare IPM41-D3 AMI 传统 BIOS 整理的符号名，文件头说明这只是作者自己的理解，并非官方或泄露的符号。","README 列出的限制包括：被调试代码并不知道调试器存在，因此切换到保护模式、修改 IDT 或缺少可用栈都会使调试器失效；BIOS 代码无法从启动块开始跟踪，因为调试器需要内存已完成初始化；热重启虽可重新走一遍初始化流程，但路径可能与冷启动不同。虚拟机需支持调试寄存器：Bochs 需启用其 x86 调试器编译，QEMU 需启用 KVM；仓库自带的 qemu 目标即启用 KVM，并使用由随附引导扇区和调试器生成的软盘镜像。","仓库没有测试或 CI；README 链接了一段修改 CPU 名称字符串的演示视频。采用 MIT 许可证，作者为 Davidson Francis；被调试的固件和程序仍有各自权利。"],"targets":["binary","firmware"],"url":"https://github.com/Theldus/bread","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/NaC-L/Mergen/blob/199805706ac00e156cc7e2a53ccc647c380f1786/docs/SCOPE.md","https://github.com/NaC-L/Mergen/blob/199805706ac00e156cc7e2a53ccc647c380f1786/docs/BUILDING.md","https://github.com/NaC-L/Mergen/blob/199805706ac00e156cc7e2a53ccc647c380f1786/docs/REWRITE_BASELINE.md","https://github.com/NaC-L/Mergen/blob/199805706ac00e156cc7e2a53ccc647c380f1786/ARCHITECTURE.md","https://github.com/NaC-L/Mergen/blob/199805706ac00e156cc7e2a53ccc647c380f1786/README.md#L181","https://github.com/NaC-L/Mergen/blob/199805706ac00e156cc7e2a53ccc647c380f1786/lifter/core/Utils.cpp","https://github.com/NaC-L/Mergen/blob/199805706ac00e156cc7e2a53ccc647c380f1786/Dockerfile","https://github.com/NaC-L/Mergen/blob/199805706ac00e156cc7e2a53ccc647c380f1786/.gitmodules","https://github.com/NaC-L/Mergen/blob/199805706ac00e156cc7e2a53ccc647c380f1786/LICENSE","https://github.com/NaC-L/Mergen/releases/tag/v0.7"],"category":"native-analysis","description_en":"Function-level lifter that symbolically lifts one x86-64 function from a Windows PE binary into LLVM IR, then iterates LLVM and custom passes to a fixpoint so obfuscated or virtualized code reduces to simpler control flow and semantics for analysis. Its scope document lists 119 instruction handlers, two-way branches and tested jump-table shapes; README examples lift small test functions the authors protected with VMProtect and Themida, and the IR can be compiled for viewing in a decompiler.","description_zh":"函数级提升器：对 Windows PE 二进制中的单个 x86-64 函数进行符号化提升，生成 LLVM IR，再反复运行 LLVM 与自定义优化 pass 直至收敛，使经混淆或虚拟化的代码化简为更清晰的控制流和语义，便于分析。其范围文档列出 119 个指令处理器，支持双向分支和若干已测试的跳转表形态；README 示例提升的是作者自己用 VMProtect 和 Themida 保护的小型测试函数，输出的 IR 可编译后在反编译器中查看。","entry_url":"https://awesomerea.org/resources/mergen/","entry_url_zh":"https://awesomerea.org/zh/resources/mergen/","evidence_url":"https://github.com/NaC-L/Mergen/blob/199805706ac00e156cc7e2a53ccc647c380f1786/README.md","group":"tools","id":"mergen","json_url":"https://awesomerea.org/resources/mergen/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/mergen/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mergen/index.md","name":"Mergen","name_zh":"Mergen 反混淆 LLVM IR 提升器","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.7, published 2026-03-29, with Windows lifter and microtest executables for the iced and Zydis decoder backends. The reviewed main commit, dated 2026-05-08, is 150 commits past the later v0.8 tag, which has no release. docs/SCOPE.md limits support to x86-64 PE files and one function per run: 32-bit x86, other formats and architectures, self-modifying code, floating-point or AVX code beyond the listed SSE2 integer instructions and whole-binary lifting are unsupported, and general-purpose decompilation is a non-goal.","The lifter takes a PE file and the target function's address, with optional --outline addresses; analysts supply their own binaries. The VMProtect check runs against local protected samples that are not committed, and the reviewed tree holds source, assembly and C test sources and documentation rather than prebuilt executables. Output is LLVM IR text plus output_diagnostics.json, which records unresolved indirect jumps and returns.","Developed and CI-tested mainly on Windows with CMake, Ninja, clang-cl using MSVC headers and libraries, LLVM 18 and Rust/Cargo for the default iced backend; the Zydis-only lane builds from a vendored Zydis 4.1.0 amalgamation, and linux-pe is a git submodule. A secondary Ubuntu 22.04 Dockerfile builds and exports a Linux lifter.","docs/SCOPE.md reports 115 of 119 handlers covered by a Unicorn-generated oracle suite, 33 semantic samples with 177 runtime cases checked under lli, golden IR hashes and Windows build lanes in CI, and says reliability on protected code varies by protection level. The README's branch example still says jumps with more than two targets are unsupported, while the newer scope document lists tested jump-table shapes. These gates cover the project's own compiled samples, not arbitrary protected software.","LICENSE is GPL-3.0; the vendored Zydis source and the submodule keep their own licenses. Lifted IR still needs analyst validation."],"requirements_zh":["审阅时最新版本为 v0.7，发布于 2026-03-29，提供 iced 与 Zydis 两种解码后端的 Windows 版 lifter 和微测试可执行文件。所审阅的 main 分支提交日期为 2026-05-08，比随后打上的 v0.8 标签多 150 个提交，而该标签没有对应的发布版本。docs/SCOPE.md 将支持范围限定为 x86-64 PE 文件，且每次只处理一个函数：不支持 32 位 x86、其他文件格式与架构、自修改代码、所列 SSE2 整数指令之外的浮点或 AVX 代码，也不支持提升整个二进制；通用反编译不在项目目标之内。","lifter 接收一个 PE 文件和目标函数地址，可用 --outline 指定不内联的地址；待分析的二进制须由分析者自行提供。VMProtect 检查使用的是未提交到仓库的本地受保护样本；所审阅的源码树只含源码、汇编和 C 测试源码及文档，没有预构建的可执行文件。输出为 LLVM IR 文本和 output_diagnostics.json，后者记录未能解析的间接跳转与返回。","主要在 Windows 上开发并进行 CI 测试，需要 CMake、Ninja、使用 MSVC 头文件和库的 clang-cl 以及 LLVM 18，默认的 iced 后端还需要 Rust/Cargo；仅用 Zydis 的构建路线使用仓库附带的 Zydis 4.1.0 合并源码，linux-pe 以 git 子模块引入。另有一个次要的 Ubuntu 22.04 Dockerfile，用于构建并导出 Linux 版 lifter。","docs/SCOPE.md 报告：119 个处理器中有 115 个由 Unicorn 生成的预言（oracle）测试集覆盖，CI 用 lli 运行 33 个语义样本共 177 个运行时用例，并检查黄金 IR 哈希和 Windows 构建；文档还指出，对受保护代码的可靠性随保护级别而异。README 的分支示例仍称不支持超过两个目标的跳转，而较新的范围文档已列出若干经测试的跳转表形态。这些检查针对项目自行编译的样本，不涵盖任意受保护软件。","LICENSE 为 GPL-3.0；附带的 Zydis 源码和子模块保留各自的许可证。提升得到的 IR 仍需分析者核实。"],"targets":["binary"],"url":"https://github.com/NaC-L/Mergen","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/mentebinaria/readpe/blob/967ab57f7cfbebf340a8f85744a1d095029cfbfe/doc/manual/en_us/tools.docbook","https://github.com/mentebinaria/readpe/blob/967ab57f7cfbebf340a8f85744a1d095029cfbfe/lib/libpe/README.md","https://github.com/mentebinaria/readpe/blob/967ab57f7cfbebf340a8f85744a1d095029cfbfe/Makefile","https://github.com/mentebinaria/readpe/blob/967ab57f7cfbebf340a8f85744a1d095029cfbfe/.github/workflows/multi-os-build.yml","https://github.com/mentebinaria/readpe/blob/967ab57f7cfbebf340a8f85744a1d095029cfbfe/src/windows/cpload.c","https://github.com/mentebinaria/readpe/blob/967ab57f7cfbebf340a8f85744a1d095029cfbfe/src/userdb.txt#L1-L2","https://github.com/mentebinaria/readpe/blob/967ab57f7cfbebf340a8f85744a1d095029cfbfe/tests/run.sh","https://github.com/mentebinaria/readpe/blob/967ab57f7cfbebf340a8f85744a1d095029cfbfe/src/readpe.c#L1-L34","https://github.com/mentebinaria/readpe/blob/967ab57f7cfbebf340a8f85744a1d095029cfbfe/LICENSE","https://github.com/mentebinaria/readpe/blob/967ab57f7cfbebf340a8f85744a1d095029cfbfe/lib/libpe/LICENSE","https://github.com/mentebinaria/readpe/releases/tag/v0.85.1","https://github.com/mentebinaria/readpe/releases/tag/v0.85"],"category":"native-analysis","description_en":"Command-line toolkit, formerly named pev, for analyzing 32- and 64-bit Windows PE files. readpe prints the DOS, COFF and optional headers, sections, data directories, imports and exports, while companion tools disassemble code (pedis), hash the file, headers or sections with ssdeep and imphash among others (pehash), list and extract resources (peres), match packer signatures (pepack), flag traits such as TLS callbacks, high entropy or an unusual entry point (pescan), report ASLR, DEP/NX, SEH and stack-cookie flags and dump certificates (pesec), find strings and convert between file offsets and RVAs. Output plugins write text, CSV, XML, HTML or JSON, and the bundled libpe C library provides the parser.","description_zh":"命令行工具集（原名 pev），用于分析 32 位和 64 位 Windows PE 文件。readpe 输出 DOS、COFF 与可选头、节区、数据目录以及导入和导出表；配套工具可反汇编代码（pedis），以 ssdeep、imphash 等算法对整个文件、文件头或节区计算哈希（pehash），列出并提取资源（peres），匹配加壳签名（pepack），标出 TLS 回调、高熵值或异常入口点等特征（pescan），报告 ASLR、DEP/NX、SEH 与栈 cookie 标志并导出证书（pesec），还能查找字符串以及在文件偏移和 RVA 之间换算。输出插件支持文本、CSV、XML、HTML 和 JSON，附带的 libpe C 库提供解析功能。","entry_url":"https://awesomerea.org/resources/readpe/","entry_url_zh":"https://awesomerea.org/zh/resources/readpe/","evidence_url":"https://github.com/mentebinaria/readpe/blob/967ab57f7cfbebf340a8f85744a1d095029cfbfe/README.md","group":"tools","id":"readpe","json_url":"https://awesomerea.org/resources/readpe/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/readpe/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/readpe/index.md","name":"readpe (formerly pev)","name_zh":"readpe（原名 pev）PE 文件分析工具集","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.85.1, published 2025-08-29 to correct the version string reported by v0.85 (2025-08-08); only the older v0.81 and v0.82 releases attach Windows ZIP builds. The reviewed master commit, from 2026-07-08, is five commits ahead, fixing peres version output and ordinal-only imports and moving the macOS CI build to a newer OpenSSL. The README explains the rename from pev and that libpe was merged into this repository.","Built from source with make and a C compiler and needs OpenSSL development headers. On Linux, make install puts files under /usr/local, and /usr/local/lib must be registered with ldconfig so libpe.so is found; macOS builds pass Homebrew OpenSSL paths in CFLAGS and LDFLAGS, and Windows builds use Cygwin with gcc-core, binutils, make, zip and libssl-devel, where make zip also builds cpload and bundles the needed Cygwin DLLs. CI only compiles on Linux, macOS and Cygwin.","Input is a PE file the user supplies. The other tools parse it, but the Windows-only cpload loads a Control Panel (.cpl) item and sends it CPL messages for debugging, so it runs that item's code. pepack depends on the bundled userdb.txt list of PEiD-style signatures, whose header counts 3,520 entries without naming their source, and pescan and pesec report heuristic indicators and header flags rather than verdicts.","tests/run.sh runs each tool in every output format and diffs the results against an expected_outputs directory that is not in the repository; valgrind scripts and a helloworld.exe sample built from tests/samples_src with MinGW are also included. CI does not run these tests.","The tools are GPL-2.0-or-later with an OpenSSL linking exception, lib/libpe is LGPL-3.0, and the bundled udis86 disassembler keeps its BSD notice."],"requirements_zh":["审阅时最新版本为 v0.85.1，发布于 2025-08-29，用于更正 v0.85（2025-08-08）报告的版本号；只有较早的 v0.81 和 v0.82 版本附带 Windows ZIP 构建。所审阅的 master 提交日期为 2026-07-08，比该版本多五个提交，修复了 peres 的版本信息输出和仅按序号导入的函数识别，并让 macOS CI 构建改用较新的 OpenSSL。README 说明了从 pev 改名的经过，以及 libpe 已并入本仓库。","需用 make 和 C 编译器从源码构建，并需要 OpenSSL 开发头文件。在 Linux 上，make install 将文件安装到 /usr/local，还需用 ldconfig 登记 /usr/local/lib 才能找到 libpe.so；macOS 构建需在 CFLAGS 和 LDFLAGS 中传入 Homebrew 的 OpenSSL 路径；Windows 构建使用安装了 gcc-core、binutils、make、zip 和 libssl-devel 的 Cygwin，其中 make zip 还会构建 cpload 并打包所需的 Cygwin DLL。CI 仅在 Linux、macOS 和 Cygwin 上编译。","输入为使用者提供的 PE 文件。其他工具只解析文件，而仅限 Windows 的 cpload 会载入控制面板（.cpl）项并向其发送 CPL 消息以便调试，因此会运行该项的代码。pepack 依赖附带的 userdb.txt，这是一份 PEiD 格式的签名列表，文件头称共 3,520 条，但未注明来源；pescan 和 pesec 报告的是启发式迹象和文件头标志，而非判定结论。","tests/run.sh 以每种输出格式运行各个工具，并将结果与 expected_outputs 目录比较，但该目录不在仓库中；另附有 valgrind 脚本，以及由 tests/samples_src 用 MinGW 构建的 helloworld.exe 样本。CI 不运行这些测试。","各工具采用 GPL-2.0-or-later 许可并附 OpenSSL 链接例外，lib/libpe 采用 LGPL-3.0，附带的 udis86 反汇编器保留其 BSD 声明。"],"targets":["binary"],"url":"https://github.com/mentebinaria/readpe","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/alainiamburg/sniffROM/blob/a32be6150bc100ffa62dc996d045757fce2e5f67/sniffROM.py","https://github.com/alainiamburg/sniffROM/blob/a32be6150bc100ffa62dc996d045757fce2e5f67/COPYING","https://github.com/alainiamburg/sniffROM/tree/a32be6150bc100ffa62dc996d045757fce2e5f67/SPI/datasheets","https://github.com/alainiamburg/sniffROM/wiki/Home/2172a35b47fab5ee4adc5703b7c0de64857f68f0","https://github.com/alainiamburg/sniffROM/wiki/Getting-Started/63cbaca6d5519a70ead845ef28a19757dd01f41a","https://github.com/alainiamburg/sniffROM/wiki/Usage-Examples/1b18e9bde42895386caaf2f1c74e07a6605a2208"],"category":"firmware","description_en":"Python tool that reconstructs serial flash contents from passive bus captures: it parses SPI or I²C analyzer exports from Saleae Logic, recorded while a device reads and writes its own flash chip, and writes the observed data into a binary image at the original memory addresses. It recognizes more than 100 SPI flash commands from vendors such as Winbond, Macronix, Spansion and GigaDevice and currently parses 12 of them, reports manufacturer and device IDs seen in JEDEC ID reads, and can print a command summary, show a visual map of the captured address ranges and plot the timing of reads and writes.","description_zh":"通过被动总线抓包重建串行闪存内容的 Python 工具：它解析 Saleae Logic 的 SPI 或 I²C 分析器导出文件（这些数据记录了设备读写自身闪存芯片的过程），并把观察到的数据按原始内存地址写入二进制镜像。它可识别 Winbond、Macronix、Spansion、GigaDevice 等厂商的 100 多条 SPI 闪存命令，目前可解析其中 12 条，能报告 JEDEC ID 读取中出现的厂商和设备 ID，还可输出命令摘要、显示已捕获地址范围的可视化分布图，并绘制读写操作的时序图。","entry_url":"https://awesomerea.org/resources/sniffrom/","entry_url_zh":"https://awesomerea.org/zh/resources/sniffrom/","evidence_url":"https://github.com/alainiamburg/sniffROM/blob/a32be6150bc100ffa62dc996d045757fce2e5f67/README.md","group":"tools","id":"sniffrom","json_url":"https://awesomerea.org/resources/sniffrom/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/sniffrom/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sniffrom/index.md","name":"sniffROM","name_zh":"sniffROM 串行闪存被动嗅探重建工具","record_type":"resource","relationship":"foundation","requirements":["No releases or tags; the script was last changed in July 2020. A README note added on 2023-12-07 says Saleae Logic 2 breaks the SPI analyzer export that sniffROM depends on, so it currently works only with data exported from Logic 1.x, and that it was unknown when this would be fixed.","A single Python 2 script (it uses print statements) that needs matplotlib for the data map and timing plot; the README's usage text calls it sniffROM_new.py. Input is a CSV export from Saleae Logic's SPI or I²C analyzer, with options for 2-, 3- or 4-byte SPI addresses, byte endianness and analyzing only read or only write commands.","Capturing needs a Saleae logic analyzer connected to the flash bus of a device the analyst is permitted to examine; the wiki's Getting Started page points to an external guide for the capture itself. Only data the device accessed during the capture is recovered, and unseen bytes are filled with a padding value; the wiki's boot-time SPI examples captured about 29% and 42% of the rebuilt images.","GPL-3.0 (COPYING). The repository also stores manufacturers' datasheet PDFs for the supported SPI and I²C chips and a commands.xlsx command table; the datasheets remain their vendors' documents. No firmware images or bus captures are committed."],"requirements_zh":["没有发布版本或标签；脚本最后一次修改是在 2020 年 7 月。README 于 2023-12-07 添加的说明称，Saleae Logic 2 破坏了 sniffROM 所依赖的 SPI 分析器导出功能，因此目前只能处理从 Logic 1.x 导出的数据，且不清楚何时会修复。","这是单个 Python 2 脚本（使用 print 语句），数据分布图和时序图需要 matplotlib；README 的用法说明中将其称为 sniffROM_new.py。输入为 Saleae Logic 的 SPI 或 I²C 分析器导出的 CSV 文件，可选择 2、3 或 4 字节的 SPI 地址长度、字节序，以及只分析读命令或只分析写命令。","抓包需要将 Saleae 逻辑分析仪连接到分析者获准检查的设备的闪存总线上；wiki 的 Getting Started 页面引用了一篇外部指南来说明抓包过程。只能恢复设备在抓包期间访问过的数据，未观察到的字节以填充值补齐；wiki 中启动阶段的 SPI 示例分别捕获了重建镜像的约 29% 和 42%。","采用 GPL-3.0（见 COPYING）。仓库还存放了所支持的 SPI 和 I²C 芯片的厂商数据手册 PDF 以及 commands.xlsx 命令表；这些数据手册仍属各厂商。仓库未提交任何固件镜像或总线抓包数据。"],"targets":["firmware","protocol"],"url":"https://github.com/alainiamburg/sniffROM","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/symgraph/IDAssist/blob/09dd910d70016c7b3f7e8bc01a4d5bc1035ec302/docs/getting-started.md","https://github.com/symgraph/IDAssist/blob/09dd910d70016c7b3f7e8bc01a4d5bc1035ec302/docs/index.md","https://github.com/symgraph/IDAssist/blob/09dd910d70016c7b3f7e8bc01a4d5bc1035ec302/docs/tabs/settings-tab.md","https://github.com/symgraph/IDAssist/blob/09dd910d70016c7b3f7e8bc01a4d5bc1035ec302/docs/tabs/symgraph-tab.md","https://github.com/symgraph/IDAssist/blob/09dd910d70016c7b3f7e8bc01a4d5bc1035ec302/docs/tabs/query-tab.md","https://github.com/symgraph/IDAssist/blob/09dd910d70016c7b3f7e8bc01a4d5bc1035ec302/ida-plugin.json","https://github.com/symgraph/IDAssist/blob/09dd910d70016c7b3f7e8bc01a4d5bc1035ec302/requirements.txt","https://github.com/symgraph/IDAssist/blob/09dd910d70016c7b3f7e8bc01a4d5bc1035ec302/src/services/models/provider_types.py","https://github.com/symgraph/IDAssist/blob/09dd910d70016c7b3f7e8bc01a4d5bc1035ec302/src/services/tool_approval_service.py","https://github.com/symgraph/IDAssist/blob/09dd910d70016c7b3f7e8bc01a4d5bc1035ec302/LICENSE","https://github.com/symgraph/IDAssist/releases/tag/2.3.0","https://github.com/symgraph/IDAssist/releases/tag/2.4.0","https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/README.md"],"category":"agent-workflows","description_en":"IDA Pro plugin by Jason Tang, who also wrote GhidrAssist, that adds a dockable PySide6 panel for LLM-assisted analysis of the open database. Its tabs explain decompiled or disassembled functions with a security summary, keep persistent chats with context macros and an optional ReAct agent mode, propose function, variable and type renames for review before they are applied, and build a semantic knowledge graph of functions, calls, data flows and security traits, with retrieval over reference documents the analyst adds. Models can call built-in IDA tools or external MCP servers, and a SymGraph tab imports and publishes names, types and graph data through the hosted symgraph.ai service.","description_zh":"由 GhidrAssist 作者 Jason Tang 开发的 IDA Pro 插件，提供一个可停靠的 PySide6 面板，借助大语言模型分析当前打开的数据库。各标签页可解释反编译或反汇编后的函数并附安全摘要，保存带上下文宏和可选 ReAct 智能体模式的持久对话，为函数、变量和类型提出重命名建议并在审阅后应用，还能构建涵盖函数、调用、数据流和安全特征的语义知识图谱，并检索分析人员添加的参考文档。模型可以调用内置的 IDA 工具或外部 MCP 服务器；SymGraph 标签页则通过托管的 symgraph.ai 服务导入和发布名称、类型及图谱数据。","entry_url":"https://awesomerea.org/resources/idassist/","entry_url_zh":"https://awesomerea.org/zh/resources/idassist/","evidence_url":"https://github.com/symgraph/IDAssist/blob/09dd910d70016c7b3f7e8bc01a4d5bc1035ec302/README.md","group":"agents","id":"idassist","json_url":"https://awesomerea.org/resources/idassist/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/idassist/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/idassist/index.md","name":"IDAssist","name_zh":"IDAssist IDA Pro 大模型辅助分析插件","record_type":"resource","relationship":"independent-agent-integration","requirements":["Latest release at review: 2.4.0, published 2026-09-14 as a source-only GitHub release; the reviewed master commit is one commit later and only updates model guidance. The README and getting-started guide require IDA Pro 9.0+ with its bundled Python 3.11+ and PySide6, while ida-plugin.json lists IDA 9.1–9.4, and the 2.3.0 notes report fixes for IDA 9.3 and 9.4 on Windows with Python 3.14. Hex-Rays is recommended for pseudocode, with disassembly used otherwise. It installs with Hex-Rays' hcli plugin manager, or from a release archive in the IDA plugins directory with requirements.txt installed into IDA's Python; that file adds boto3 for Bedrock, which the manifest's dependency list omits.","Analysis needs at least one configured LLM provider. The reviewed provider types cover Anthropic, OpenAI, Gemini and xAI API keys, OpenAI and Gemini subscription sign-in through OAuth, the local Claude Code CLI, AWS Bedrock, a LiteLLM proxy, and local Ollama, LM Studio or Open WebUI endpoints; the README's table also lists an Anthropic OAuth type that the source does not define. Explanations, chats and agent runs send pseudocode or disassembly to the active provider, so only a local or self-hosted endpoint keeps code on the machine. The documentation says chats, graphs, settings and feedback are kept in local SQLite databases in the .idapro/idassist folder of the user's home directory, with API keys encrypted in the settings database.","Programs come from the user's own IDA databases. Rename suggestions show confidence scores and are written to the IDB only for the rows the user selects. During a chat, built-in tools and external MCP servers, reached by URL over SSE or streamable HTTP or launched over stdio, can read and modify the IDB; in the Query tab, calls to tools whose names do not look read-only wait for an allow-once, allow-for-session or deny decision unless the chat accepts all tools, and this classification relies on tool-name keywords.","The SymGraph tab looks up the input binary by SHA-256 without a key, but importing, publishing and uploading need a SymGraph API key, and publishing uploads the raw binary itself when the service does not already hold it. The repository has no tests or CI workflows. MIT, per LICENSE and ida-plugin.json; IDA Pro, the Hex-Rays decompiler, model providers and SymGraph keep their own terms."],"requirements_zh":["审阅时最新版本为 2.4.0，于 2026-09-14 以仅含源码的 GitHub 发布形式推出；所审阅的 master 提交比它晚一个提交，只更新了模型选择建议。README 和入门指南要求 IDA Pro 9.0+ 及其自带的 Python 3.11+ 和 PySide6，而 ida-plugin.json 列出的是 IDA 9.1–9.4；2.3.0 的发布说明称修复了 Windows 上 IDA 9.3、9.4 搭配 Python 3.14 时的问题。建议配备 Hex-Rays 以使用伪代码，否则改用反汇编。可通过 Hex-Rays 的 hcli 插件管理器安装，也可把发布压缩包解压到 IDA 插件目录，再把 requirements.txt 中的依赖装入 IDA 的 Python 环境；该文件额外列出供 Bedrock 使用的 boto3，而插件清单的依赖列表没有包含它。","分析前至少需要配置一个大模型提供方。所审阅的提供方类型包括 Anthropic、OpenAI、Gemini 和 xAI 的 API 密钥，通过 OAuth 登录的 OpenAI 和 Gemini 订阅账号，本地的 Claude Code CLI，AWS Bedrock，LiteLLM 代理，以及本地的 Ollama、LM Studio 或 Open WebUI 端点；README 的表格还列出一种 Anthropic OAuth 类型，但源码中并未定义。函数解释、对话和智能体运行都会把伪代码或反汇编发送给当前提供方，只有使用本地或自托管端点时代码才不会离开本机。文档称对话、图谱、设置和反馈保存在用户主目录下 .idapro/idassist 文件夹中的本地 SQLite 数据库里，API 密钥在设置数据库中加密存储。","分析对象来自使用者自己的 IDA 数据库。重命名建议附带置信度评分，只有使用者选中的条目才会写入 IDB。对话过程中，内置工具和外部 MCP 服务器（通过 URL 以 SSE 或 streamable HTTP 连接，或以 stdio 方式启动）都可以读取和修改 IDB；在 Query 标签页中，名称看起来不属于只读操作的工具调用需要使用者选择允许一次、本会话内允许或拒绝，除非该对话开启了接受所有工具，而这种分类只依据工具名称中的关键词。","SymGraph 标签页无需密钥即可按 SHA-256 查询输入的二进制文件，但导入、发布和上传都需要 SymGraph API 密钥；若服务端尚无该文件，发布时会把原始二进制文件本身一并上传。仓库没有测试或 CI 工作流。依据 LICENSE 和 ida-plugin.json 采用 MIT 许可；IDA Pro、Hex-Rays 反编译器、各模型提供方和 SymGraph 各自适用其条款。"],"targets":["binary"],"url":"https://github.com/symgraph/IDAssist","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/google/pawn/blob/45b7b3865c3d4f2aa6e0defebb477dacb8b8a3b9/pawn/pawn.cc","https://github.com/google/pawn/blob/45b7b3865c3d4f2aa6e0defebb477dacb8b8a3b9/pawn/chipset.cc","https://github.com/google/pawn/blob/45b7b3865c3d4f2aa6e0defebb477dacb8b8a3b9/pawn/chipset_intel_9_series.h","https://github.com/google/pawn/blob/45b7b3865c3d4f2aa6e0defebb477dacb8b8a3b9/CMakeLists.txt","https://github.com/google/pawn/blob/45b7b3865c3d4f2aa6e0defebb477dacb8b8a3b9/cmake/PawnDeps.cmake","https://github.com/google/pawn/blob/45b7b3865c3d4f2aa6e0defebb477dacb8b8a3b9/.github/workflows/ubuntu-cmake.yml","https://github.com/google/pawn/blob/45b7b3865c3d4f2aa6e0defebb477dacb8b8a3b9/debian/changelog","https://github.com/google/pawn/blob/45b7b3865c3d4f2aa6e0defebb477dacb8b8a3b9/LICENSE","https://github.com/google/pawn/releases/tag/v0.2"],"category":"firmware","description_en":"Linux command-line tool from Google that reads the BIOS/UEFI firmware image out of the SPI flash of Intel-based workstations and laptops. Running as root, it identifies the chipset's LPC bridge over PCI, maps the chipset's root-complex registers through /dev/mem, and reports the flash descriptor regions and the BIOS write- and read-protection settings it finds. It then reads the flash through the SPI controller's hardware sequencing into a single image file, which the README suggests processing further with tools such as UEFITool.","description_zh":"Google 发布的 Linux 命令行工具，可从基于 Intel 平台的工作站和笔记本电脑的 SPI 闪存中读出 BIOS/UEFI 固件镜像。它以 root 权限运行，通过 PCI 识别芯片组的 LPC 桥，借助 /dev/mem 映射芯片组的根复合体寄存器，并报告读到的闪存描述符分区以及 BIOS 写保护和读保护设置。随后它通过 SPI 控制器的硬件时序读取闪存，写入单个镜像文件；README 建议再用 UEFITool 等工具进一步处理。","entry_url":"https://awesomerea.org/resources/google-pawn/","entry_url_zh":"https://awesomerea.org/zh/resources/google-pawn/","evidence_url":"https://github.com/google/pawn/blob/45b7b3865c3d4f2aa6e0defebb477dacb8b8a3b9/README.md","group":"tools","id":"google-pawn","json_url":"https://awesomerea.org/resources/google-pawn/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/google-pawn/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/google-pawn/index.md","name":"Pawn","name_zh":"Pawn Intel 平台 BIOS 固件提取工具","record_type":"resource","relationship":"foundation","requirements":["Releases v0.1 and v0.2, published 2017-08-30 and 2017-09-09, each ship a Debian amd64 package with its source; the reviewed main commit, from 2026-02-17, updates dependencies and GitHub Actions and still declares version 0.2. The README states that Pawn is not an official Google product. Builds need Linux on x86_64 (FreeBSD might also work, per the README), CMake 3.31+, GCC or Clang 7+ and Ninja or Make; CMake fetches Abseil, and GoogleTest for tests, at pinned commits. CI builds and runs the unit test on Ubuntu 24.04 and keeps the binary only as a workflow artifact.","Runs as root on the machine whose firmware is read, using I/O-port access to PCI configuration space and /dev/mem. On Linux kernels newer than 4.8.4 the README requires CONFIG_IO_DEVMEM=n or booting with iomem=relaxed; the program's own error message names IO_STRICT_DEVMEM. Only Intel ICH8, ICH9 and ICH10 and 6 to 9 Series chipsets are recognized, the newest being the 9 Series whose datasheet the source cites from May 2014; the BIOS must boot from SPI flash in descriptor mode.","It always reads 16 MiB from flash address 0, so flash beyond that size is not dumped, and failed block reads are ignored; the default output name is bios_via_spi_hs.bin. The repository contains only source, build and Debian packaging files, with no firmware images; a dump is the machine vendor's firmware and keeps the vendor's rights.","Apache-2.0."],"requirements_zh":["v0.1 和 v0.2 两个版本分别于 2017-08-30 和 2017-09-09 发布，均附带 Debian amd64 软件包及其源码；所审阅的 main 提交日期为 2026-02-17，更新了依赖和 GitHub Actions，版本号仍为 0.2。README 声明 Pawn 不是 Google 的官方产品。构建需要 x86_64 上的 Linux（README 称 FreeBSD 或许也可行）、CMake 3.31+、GCC 或 Clang 7+ 以及 Ninja 或 Make；CMake 会按固定提交拉取 Abseil，测试时另拉取 GoogleTest。CI 在 Ubuntu 24.04 上构建并运行单元测试，生成的二进制文件仅作为工作流产物保留。","需在要读取固件的机器上以 root 权限运行，通过 I/O 端口访问 PCI 配置空间并使用 /dev/mem。对于高于 4.8.4 的 Linux 内核，README 要求设置 CONFIG_IO_DEVMEM=n 或以 iomem=relaxed 启动；程序自身的错误提示写的是 IO_STRICT_DEVMEM。只能识别 Intel ICH8、ICH9、ICH10 以及 6 至 9 系列芯片组，其中最新的是 9 系列，源码引用的其数据手册日期为 2014 年 5 月；BIOS 必须以描述符模式从 SPI 闪存启动。","它总是从闪存地址 0 读取 16 MiB，超出此大小的闪存内容不会被转储，读取失败的数据块也会被忽略；默认输出文件名为 bios_via_spi_hs.bin。仓库只包含源码、构建文件和 Debian 打包文件，不含任何固件镜像；转储得到的是机器厂商的固件，仍受厂商权利约束。","采用 Apache-2.0 许可。"],"targets":["firmware"],"url":"https://github.com/google/pawn","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/e-m-b-a/embark/wiki/Installation/f792ea4c9b1f2d3c495e942bcb780c654e7cd6e5","https://github.com/e-m-b-a/embark/wiki/Web-interface/282863ab5b9c20f834e57c7aaa396171ab9a11ec","https://github.com/e-m-b-a/embark/wiki/Orchestrator/2b58d1eda4bc9c5550db9e051db4dc894786fe26","https://github.com/e-m-b-a/embark/blob/d578c8b102bd6a74f9efaeb5c7e93c601a5a9663/installer.sh","https://github.com/e-m-b-a/embark/blob/d578c8b102bd6a74f9efaeb5c7e93c601a5a9663/run-server.sh","https://github.com/e-m-b-a/embark/blob/d578c8b102bd6a74f9efaeb5c7e93c601a5a9663/docs/openapi.yaml","https://github.com/e-m-b-a/embark/blob/d578c8b102bd6a74f9efaeb5c7e93c601a5a9663/VERSION.txt","https://github.com/e-m-b-a/embark/blob/d578c8b102bd6a74f9efaeb5c7e93c601a5a9663/.gitmodules","https://github.com/e-m-b-a/embark/blob/d578c8b102bd6a74f9efaeb5c7e93c601a5a9663/docker-compose.yml","https://github.com/e-m-b-a/embark/tree/d578c8b102bd6a74f9efaeb5c7e93c601a5a9663/test","https://github.com/e-m-b-a/embark/tree/d578c8b102bd6a74f9efaeb5c7e93c601a5a9663/.github/workflows","https://github.com/e-m-b-a/embark/blob/d578c8b102bd6a74f9efaeb5c7e93c601a5a9663/LICENSE","https://github.com/e-m-b-a/embark/releases/tag/v0.3"],"category":"firmware","description_en":"Web-based enterprise interface for the EMBA firmware security scanner, which it installs and runs as its scanning backend. In the browser, users upload firmware, configure and follow EMBA scans, open the full EMBA HTML report and a security overview per firmware, and compare results in an aggregated dashboard; results are access-controlled per user and can be archived. The current main branch adds a REST API for upload, scan status and SBOM retrieval, and an orchestrator that distributes scans to EMBA worker nodes reached over SSH.","description_zh":"EMBA 固件安全扫描器的 Web 企业级界面，会安装 EMBA 并将其作为扫描后端运行。用户可在浏览器中上传固件、配置并跟踪 EMBA 扫描，查看完整的 EMBA HTML 报告和每个固件的安全概览，并在汇总仪表板中比较结果；结果按用户控制访问，也可归档隐藏。当前 main 分支还加入了用于上传、查询扫描状态和获取 SBOM 的 REST API，以及通过 SSH 将扫描分派到 EMBA 工作节点的编排器。","entry_url":"https://awesomerea.org/resources/embark/","entry_url_zh":"https://awesomerea.org/zh/resources/embark/","evidence_url":"https://github.com/e-m-b-a/embark/blob/d578c8b102bd6a74f9efaeb5c7e93c601a5a9663/README.md","group":"tools","id":"embark","json_url":"https://awesomerea.org/resources/embark/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/embark/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/embark/index.md","name":"EMBArk","name_zh":"EMBArk EMBA 固件扫描 Web 平台","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.3, published 2025-06-24. The reviewed main commit is 941 commits ahead of it and identifies itself as 0.3-630649d1 in VERSION.txt; the REST API and worker orchestrator described here come from that branch. The installation wiki calls the software alpha and strongly recommends a virtual machine, and the README notes that the new tracking application does not work offline and that device, vendor and version tracking is not yet in every dashboard.","The README names Ubuntu 24 LTS as the only supported OS. installer.sh -d installs Docker, pipenv and EMBA and configures the MySQL and Redis containers defined in docker-compose.yml; EMBA is pinned as a git submodule (at review an EMBA commit from 2026-04-07, older than EMBA's latest releases) and runs in its Docker mode, while -s skips it. The wiki suggests 8–32+ GB RAM, 4–16+ CPUs, at least 20 GB of disk (100+ GB recommended) and an isolated network, and EMBA's own requirements also apply.","run-server.sh serves HTTP on port 80 on all interfaces under the default name embark.local, which must resolve through a hosts file or DNS; -a adds names or addresses and -b opens the admin pages beyond localhost. The installer and server script run with sudo, and the server is deployed to /var/www under a dedicated service user. API calls carry an API key in a header or query parameter, and the orchestrator scans an IP range and installs EMBA on workers using SSH credentials the user supplies.","Supply the firmware images yourself; the repository contains no firmware, and its test fixtures are EMBA result exports such as a CycloneDX SBOM and module CSV/JSON files. Scan findings come from EMBA and still need analyst interpretation. CI installs the server without EMBA and runs Django and server tests, linters, ShellCheck and CodeQL, so no firmware scan is part of it.","MIT license, copyright The AMOS Projects and Siemens Energy AG; EMBA and the tools it installs keep their own licenses."],"requirements_zh":["审阅时最新版本为 v0.3，发布于 2025-06-24。所审阅的 main 分支提交比它多 941 个提交，VERSION.txt 标为 0.3-630649d1；这里描述的 REST API 和工作节点编排器均来自该分支。安装文档称软件仍处于 alpha 阶段，强烈建议在虚拟机中运行；README 说明新的追踪应用无法离线使用，设备、厂商和版本追踪也尚未接入所有仪表板。","README 写明目前只支持 Ubuntu 24 LTS。installer.sh -d 会安装 Docker、pipenv 和 EMBA，并配置 docker-compose.yml 中定义的 MySQL 与 Redis 容器；EMBA 以 git 子模块固定版本（审阅时为 2026-04-07 的一个 EMBA 提交，早于 EMBA 最新发行版），以 Docker 模式运行；-s 选项则跳过 EMBA。文档建议 8–32+ GB 内存、4–16+ 个 CPU、至少 20 GB 磁盘（建议 100 GB 以上）及隔离网络，EMBA 自身的资源要求同样适用。","run-server.sh 在所有网络接口的 80 端口提供 HTTP 服务，默认主机名为 embark.local，需要通过 hosts 文件或 DNS 解析；-a 可添加主机名或地址，-b 可让本机以外访问管理页面。安装脚本和服务启动脚本均需 sudo 运行，服务端以专用服务账户部署到 /var/www。API 调用需在请求头或查询参数中携带 API 密钥；编排器会扫描指定的 IP 范围，并使用用户提供的 SSH 凭据在工作节点上安装 EMBA。","需自行提供要分析的固件镜像；仓库不含任何固件，测试数据是 EMBA 结果导出，例如一份 CycloneDX SBOM 和若干模块 CSV/JSON 文件。扫描结论来自 EMBA，仍需分析人员解读。CI 在不安装 EMBA 的情况下安装服务端，运行 Django 与服务端测试、代码检查、ShellCheck 和 CodeQL，并不包含固件扫描。","采用 MIT 许可证，版权归 The AMOS Projects 与 Siemens Energy AG；EMBA 及其安装的工具各自保留许可证。"],"targets":["firmware"],"url":"https://github.com/e-m-b-a/embark","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/DERE-ad2001/Frida-Labs/blob/b01f2f8e4c479231ebf5763e94f695c88350c4f2/Frida%200x1/Solution/Solution.md","https://github.com/DERE-ad2001/Frida-Labs/blob/b01f2f8e4c479231ebf5763e94f695c88350c4f2/Frida%200x8/Solution/Solution.md","https://github.com/DERE-ad2001/Frida-Labs/blob/b01f2f8e4c479231ebf5763e94f695c88350c4f2/Frida%200xB/Solution/Solution.md","https://github.com/DERE-ad2001/Frida-Labs/tree/b01f2f8e4c479231ebf5763e94f695c88350c4f2","https://github.com/DERE-ad2001/Frida-Labs/commit/d7e9fce053a6e4be9d3b91ac80c1345a778960b2","https://github.com/DERE-ad2001/Frida-Labs/blob/b01f2f8e4c479231ebf5763e94f695c88350c4f2/LICENSE"],"category":"learning","description_en":"Eleven Android challenge apps with step-by-step write-ups for learning Frida instrumentation, progressing from setting up frida-server and hooking a Java method through calling static methods, changing fields, creating instances and hooking constructors to hooking, calling and patching native functions. The author presents them as beginner-to-intermediate exercises rather than hard CTF challenges: each app hides a flag, but the stated goal is learning Frida’s common APIs and being able to read scripts written by others.","description_zh":"收录十一个 Android 挑战应用及逐步讲解，用于学习 Frida 插桩：从部署 frida-server、Hook Java 方法开始，依次练习调用静态方法、修改变量、创建实例和 Hook 构造函数，最后到 Hook、调用及修补原生函数。作者将其定位为入门到中级的练习，而非高难度 CTF：每个应用都藏有 flag，但目标是掌握 Frida 常用 API，并能读懂他人编写的脚本。","entry_url":"https://awesomerea.org/resources/frida-labs/","entry_url_zh":"https://awesomerea.org/zh/resources/frida-labs/","evidence_url":"https://github.com/DERE-ad2001/Frida-Labs/blob/b01f2f8e4c479231ebf5763e94f695c88350c4f2/README.md","group":"learn","id":"frida-labs","json_url":"https://awesomerea.org/resources/frida-labs/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/frida-labs/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/frida-labs/index.md","name":"Frida Labs","name_zh":"Frida Labs Android 插桩练习","record_type":"resource","relationship":"learning","requirements":["Reviewed at the 2026-02-22 main commit, which adds Frida 17 workarounds to the native-hooking write-ups for challenges 0x8 to 0xB; the first write-up deploys frida-server 16.1.4. There are no releases, and the README says new challenges will be added over time.","Each challenge is a prebuilt APK committed by the author, with package names such as com.ad2001.frida0x1; the apps’ source code is not in the repository, and the solutions are Markdown write-ups with screenshots. They assume a rooted Android device or emulator, adb, frida-tools from pip and a frida-server build matching the device architecture, with jadx for the Java code and Ghidra for the native libraries; the 0xB write-up shows instruction patches for both x86 and ARM64 builds.","Flags and solution scripts are published next to each APK, so the set works as guided practice rather than an assessment. The README points to learnfrida.info and Frida CodeShare for further material.","MIT license for the repository; Frida, jadx, Ghidra and the Android tools keep their own terms."],"requirements_zh":["审阅对象为 2026-02-22 的 main 提交，该提交为 0x8 至 0xB 这几道原生 Hook 题的讲解加入了 Frida 17 的变通写法；第一篇讲解部署的是 frida-server 16.1.4。项目未发布版本，README 称会陆续加入新挑战。","每道挑战都是作者提交的预编译 APK，包名形如 com.ad2001.frida0x1；仓库不含这些应用的源码，题解为附截图的 Markdown 讲解。讲解假定使用已 root 的 Android 设备或模拟器、adb、通过 pip 安装的 frida-tools 以及与设备架构匹配的 frida-server，并用 jadx 阅读 Java 代码、用 Ghidra 分析原生库；0xB 的讲解分别演示了 x86 和 ARM64 版本的指令修补。","flag 和题解脚本都与对应 APK 一同公开，因此这套挑战适合作为有指导的练习，而不是考核。README 推荐 learnfrida.info 和 Frida CodeShare 作为延伸资料。","仓库采用 MIT 许可证；Frida、jadx、Ghidra 及 Android 工具各有其条款。"],"targets":["app"],"url":"https://github.com/DERE-ad2001/Frida-Labs","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/HynekPetrak/malware-jail/blob/ec370f1433652fdd346995f1d6f00b26368aa611/jailme.js#L10-L40","https://github.com/HynekPetrak/malware-jail/blob/ec370f1433652fdd346995f1d6f00b26368aa611/jailme.js#L184-L192","https://github.com/HynekPetrak/malware-jail/blob/ec370f1433652fdd346995f1d6f00b26368aa611/env/wscript.js","https://github.com/HynekPetrak/malware-jail/blob/ec370f1433652fdd346995f1d6f00b26368aa611/env/browser.js","https://github.com/HynekPetrak/malware-jail/blob/ec370f1433652fdd346995f1d6f00b26368aa611/config.json","https://github.com/HynekPetrak/malware-jail/blob/ec370f1433652fdd346995f1d6f00b26368aa611/package.json","https://github.com/HynekPetrak/malware-jail/blob/ec370f1433652fdd346995f1d6f00b26368aa611/test/wscript_test.js","https://github.com/HynekPetrak/malware-jail/blob/ec370f1433652fdd346995f1d6f00b26368aa611/LICENSE"],"category":"dynamic-analysis","description_en":"Node.js sandbox for semi-automatic analysis of JavaScript malware: it runs a sample in Node's vm module against emulated Windows Script Host and ActiveX objects such as WScript.Shell, MSXML2.XMLHTTP, ADODB.Stream, Scripting.FileSystemObject and WMI, plus a partial browser context with selectable browser profiles. It logs the objects created and methods called, keeps every eval() argument to help deobfuscation, records requested URLs and WMI queries, and saves the files a dropper tries to write so payloads can be examined. When the run ends, the whole sandbox context is dumped to JSON for review.","description_zh":"用于半自动分析 JavaScript 恶意代码的 Node.js 沙箱：在 Node 的 vm 模块中运行样本，并模拟 Windows Script Host 与 ActiveX 对象，例如 WScript.Shell、MSXML2.XMLHTTP、ADODB.Stream、Scripting.FileSystemObject 和 WMI，另有可选择浏览器配置的部分浏览器环境。它记录创建的对象和调用的方法，保留每次 eval() 的参数以辅助去混淆，记下请求的 URL 和 WMI 查询，并保存投放器试图写入的文件，便于检查载荷。运行结束时，整个沙箱上下文会导出为 JSON 供复查。","entry_url":"https://awesomerea.org/resources/malware-jail/","entry_url_zh":"https://awesomerea.org/zh/resources/malware-jail/","evidence_url":"https://github.com/HynekPetrak/malware-jail/blob/ec370f1433652fdd346995f1d6f00b26368aa611/README.md","group":"tools","id":"malware-jail","json_url":"https://awesomerea.org/resources/malware-jail/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/malware-jail/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/malware-jail/index.md","name":"malware-jail","name_zh":"malware-jail JavaScript 恶意代码沙箱","record_type":"resource","relationship":"foundation","requirements":["There are no releases or tags, and the README says an npm package is not yet available. The reviewed master commit, from 2023-06-16, only edits the README; the last code change, adding newly analyzed malware and ADODB methods, dates from 2019-08-08. Version labels disagree: package.json says 0.18.0, the README 0.19 and jailme.js 0.20.","Requires Node.js and npm: package.json declares Node 6 or later, and the README says the tool was developed and tested on Linux with Node.js v6.6.0. npm install fetches minimist, iconv-lite, entities and sync-request, npm test runs a small tap suite for the WScript emulation, and native_test holds scripts meant to run under Windows cscript for comparison. Emulation covers the WScript and ActiveX features the author saw malware use and only part of the browser context, so a sample may stop early or diverge from real Windows behavior; the logs and dumps are traces for an analyst, not a verdict.","Node's vm module is not a security boundary: the README warns that sandbox-aware malware may try to escape and recommends an unprivileged Linux account or a virtualized Windows machine. By default HTTP requests are not sent and receive dummy responses; --down lets the sample contact remote servers and download payloads, while --h404 and --t404 answer every request with HTTP 404 so all remote URLs can be listed. Execution stops after 60 seconds unless -t sets another limit.","The malware folder holds real-world samples, most of them downloaded from malwr.com according to the README, with their logs and dumps. Besides scripts and HTML pages it includes two extracted Windows payload files, a .exe under malware/20171004 and a .tmp under malware/20190808, and the README states that the Angler files are not disarmed, so a clone contains live malware.","MIT, per the LICENSE file and README."],"requirements_zh":["没有发布版本或标签，README 称 npm 包尚未提供。所审阅的 master 提交日期为 2023-06-16，只修改了 README；最后一次代码改动在 2019-08-08，新增了已分析的恶意样本和若干 ADODB 方法。各处版本号并不一致：package.json 为 0.18.0，README 为 0.19，jailme.js 为 0.20。","需要 Node.js 和 npm：package.json 声明需 Node 6 或更高版本，README 称该工具在 Linux 上以 Node.js v6.6.0 开发和测试。npm install 会获取 minimist、iconv-lite、entities 和 sync-request，npm test 运行针对 WScript 模拟的小型 tap 测试，native_test 目录中的脚本则用于在 Windows 的 cscript 下运行以作对照。模拟范围限于作者见到恶意代码使用的 WScript 与 ActiveX 功能，浏览器环境也只实现了一部分，因此样本可能提前中止，或与真实 Windows 上的行为不同；日志和导出内容是供分析人员解读的执行记录，而非判定结论。","Node 的 vm 模块并非安全边界：README 警告，能识别该沙箱的恶意代码可能尝试逃逸，建议在无特权的 Linux 账户或虚拟化的 Windows 机器中运行。默认情况下不会真正发送 HTTP 请求，而是返回虚拟响应；--down 允许样本联系远程服务器并下载载荷，--h404 与 --t404 则对所有请求返回 HTTP 404，以便列出全部远程 URL。除非用 -t 另设时限，执行 60 秒后即被终止。","malware 目录收录了真实的恶意样本，README 称多数下载自 malwr.com，并附有对应的日志和导出文件。除脚本和 HTML 页面外，其中还有两个提取出的 Windows 载荷文件，即 malware/20171004 下的一个 .exe 和 malware/20190808 下的一个 .tmp；README 还说明 Angler 相关文件未经解除威胁处理，因此克隆仓库即会获得活体恶意代码。","依据 LICENSE 文件与 README，采用 MIT 许可。"],"targets":["binary","website"],"url":"https://github.com/HynekPetrak/malware-jail","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/maddiestone/IDAPythonEmbeddedToolkit/blob/3cf0346f93eb3c009f4bf274c91bd00398a56d77/Android/README.md","https://github.com/maddiestone/IDAPythonEmbeddedToolkit/blob/3cf0346f93eb3c009f4bf274c91bd00398a56d77/define_code_functions.py","https://github.com/maddiestone/IDAPythonEmbeddedToolkit/blob/3cf0346f93eb3c009f4bf274c91bd00398a56d77/find_mem_accesses.py","https://github.com/maddiestone/IDAPythonEmbeddedToolkit/blob/3cf0346f93eb3c009f4bf274c91bd00398a56d77/identify_port_use_locations.py","https://github.com/maddiestone/IDAPythonEmbeddedToolkit/blob/3cf0346f93eb3c009f4bf274c91bd00398a56d77/define_data_as_types.py","https://github.com/maddiestone/IDAPythonEmbeddedToolkit/blob/3cf0346f93eb3c009f4bf274c91bd00398a56d77/Android/jni_translate.py","https://github.com/maddiestone/IDAPythonEmbeddedToolkit/blob/3cf0346f93eb3c009f4bf274c91bd00398a56d77/Android/WeddingCake_decrypt.py","https://github.com/maddiestone/IDAPythonEmbeddedToolkit/tree/3cf0346f93eb3c009f4bf274c91bd00398a56d77/presentations","https://github.com/maddiestone/IDAPythonEmbeddedToolkit/blob/3cf0346f93eb3c009f4bf274c91bd00398a56d77/LICENSE"],"category":"firmware","description_en":"Maddie Stone's IDAPython scripts for triaging and annotating embedded-device firmware images in IDA Pro, presented at RECON Montreal and DerbyCon in 2017. Triage scripts define code and functions from per-architecture prologue and epilogue patterns, mark address ranges as bytes, words or double words and turn unexplored bytes into strings; analysis scripts resolve memory accesses made at offsets from a known base value and add cross-references and value comments, and annotation scripts list CPU port (GPIO) use, tag functions without cross-references as possible dead code and trace where an operand is used. An Android folder adds a script that comments JNIEnv function calls in native libraries and one that decrypts the strings of ARM32 libraries packed with the WeddingCake anti-analysis wrapper.","description_zh":"Maddie Stone 编写的 IDAPython 脚本集，用于在 IDA Pro 中对嵌入式设备固件镜像进行初步梳理和标注，曾于 2017 年在 RECON Montreal 和 DerbyCon 上介绍。梳理类脚本依据各架构的函数序言和尾声模式定义代码与函数，把地址范围标记为字节、字或双字，并把未探索的字节转换为字符串；分析类脚本根据已知基址解析以偏移方式进行的内存访问，并添加交叉引用和数值注释；标注类脚本列出 CPU 端口（GPIO）的使用位置，把没有交叉引用的函数标为可能的死代码，并追踪某个操作数的使用位置。Android 文件夹另有一个为原生库中的 JNIEnv 函数调用添加注释的脚本，以及一个解密经 WeddingCake 反分析外壳打包的 ARM32 库中字符串的脚本。","entry_url":"https://awesomerea.org/resources/idapython-embedded-toolkit/","entry_url_zh":"https://awesomerea.org/zh/resources/idapython-embedded-toolkit/","evidence_url":"https://github.com/maddiestone/IDAPythonEmbeddedToolkit/blob/3cf0346f93eb3c009f4bf274c91bd00398a56d77/README.md","group":"tools","id":"idapython-embedded-toolkit","json_url":"https://awesomerea.org/resources/idapython-embedded-toolkit/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/idapython-embedded-toolkit/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/idapython-embedded-toolkit/index.md","name":"IDAPython Embedded Toolkit","name_zh":"IDAPython Embedded Toolkit 嵌入式固件分析脚本集","record_type":"resource","relationship":"foundation","requirements":["Ten Python scripts and the slides of the two 2017 talks as PDFs, with no releases or tags; the reviewed master commit, from 2019-08-14, is the latest. The README says the scripts have only been tested on IDA Pro 6.95, with IDA 7.0 testing in progress, and runs each one separately through File > Script file in an open IDA database with IDAPython. Most use Python 2 print statements and pre-7.0 IDC calls such as MakeCode, MakeComm, MakeStr and AskAddr; jni_translate.py, added in 2019, uses Python 3-compatible print calls but still calls idc.MakeComm.","The user supplies the firmware image or Android native library and its IDA database, and enters address ranges, regular expressions or base values at prompts or in each script's user-defined section. Processor-specific syntax is chosen from IDA's processor name: define_code_functions.py covers 8051, PIC18, Mitsubishi M32R, TI TMS320C28x and AVR, and find_mem_accesses.py only 8051, while identify_port_use_locations.py ships one active PIC18 pattern with commented 8051 alternatives. Unsupported processors stop with an error until the analyst adds patterns, and find_mem_accesses.py cannot create references into segments that do not yet exist.","Several scripts rewrite the database: define_data_as_types.py first undefines the range, overwriting code or strings there, and WeddingCake_decrypt.py overwrites encrypted strings with their decrypted contents and needs JNI_OnLoad defined and exported. The WeddingCake files accompany Maddie Stone's Black Hat USA 2018 talk on that packer.","MIT, copyright 2017 Maddie Stone, in LICENSE; the README's copyright notice instead names The Johns Hopkins University Applied Physics Laboratory, and the Android README and WeddingCake script carry a Google LLC 2018 copyright line without separate license terms."],"requirements_zh":["包含十个 Python 脚本以及两场 2017 年演讲的 PDF 幻灯片，没有发布版本或标签；所审阅的 master 提交日期为 2019-08-14，也是最新提交。README 称这些脚本只在 IDA Pro 6.95 上测试过，IDA 7.0 的测试仍在进行；每个脚本需在已打开且带 IDAPython 的 IDA 数据库中通过 File > Script file 单独运行。多数脚本使用 Python 2 的 print 语句和 7.0 之前的 IDC 调用，例如 MakeCode、MakeComm、MakeStr 和 AskAddr；2019 年加入的 jni_translate.py 使用兼容 Python 3 的 print 调用，但仍调用 idc.MakeComm。","固件镜像或 Android 原生库及其 IDA 数据库由使用者提供，地址范围、正则表达式或基址需在提示框中或各脚本的用户自定义部分填写。处理器相关的语法依据 IDA 的处理器名称选择：define_code_functions.py 支持 8051、PIC18、三菱 M32R、TI TMS320C28x 和 AVR，find_mem_accesses.py 只支持 8051，identify_port_use_locations.py 则只启用一条 PIC18 模式，另以注释形式给出 8051 的备选模式。遇到不支持的处理器时脚本会报错退出，需分析人员自行补充模式；find_mem_accesses.py 也无法为尚未创建的段建立引用。","部分脚本会改写数据库：define_data_as_types.py 会先取消该范围内的已有定义，覆盖其中的代码或字符串；WeddingCake_decrypt.py 会用解密后的内容覆盖加密字符串，并要求 JNI_OnLoad 已被定义和导出。WeddingCake 相关文件配合 Maddie Stone 在 Black Hat USA 2018 上关于该加壳工具的演讲。","LICENSE 采用 MIT 许可，版权归 Maddie Stone（2017）；README 中的版权声明则写的是约翰斯·霍普金斯大学应用物理实验室，Android 文件夹的 README 和 WeddingCake 脚本另有 Google LLC 2018 的版权声明，但未给出单独的许可条款。"],"targets":["app","firmware"],"url":"https://github.com/maddiestone/IDAPythonEmbeddedToolkit","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/michalmalik/osx-re-101/tree/486f33adf35848735327d9a83a05f9abd0f18af7","https://github.com/michalmalik/osx-re-101/commits/486f33adf35848735327d9a83a05f9abd0f18af7"],"category":"learning","description_en":"A single-README reading list for macOS (OS X) and iOS reverse engineering, kept by Michal Malik from 2015 to 2019 and labelled a work in progress. Its 98 entries in nine sections run from must-read blogs and Mach-O, ABI and system-call references through Mach-O basics, malware, anti-debugging and obfuscation write-ups, kernel, sandbox and jailbreak research, kernel-extension development and kernel debugging, and forensics and monitoring material, to crackmes and six books. Entries are bare links or titles, mostly with no annotation.","description_zh":"以单个 README 维护的 macOS（OS X）与 iOS 逆向工程阅读清单，由 Michal Malik 于 2015 至 2019 年间整理，并标注为仍在进行中。九个部分共 98 个条目，依次涵盖必读博客与 Mach-O、ABI 和系统调用参考资料，Mach-O 基础知识，恶意软件、反调试和混淆相关文章，内核、沙箱与越狱研究，内核扩展开发与内核调试，取证与监控资料，以及 crackme 练习和六本书。条目只有链接或标题，大多没有说明。","entry_url":"https://awesomerea.org/resources/osx-re-101/","entry_url_zh":"https://awesomerea.org/zh/resources/osx-re-101/","evidence_url":"https://github.com/michalmalik/osx-re-101/blob/486f33adf35848735327d9a83a05f9abd0f18af7/README.md","group":"learn","id":"osx-re-101","json_url":"https://awesomerea.org/resources/osx-re-101/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/osx-re-101/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/osx-re-101/index.md","name":"osx & ios re 101","name_zh":"osx & ios re 101 macOS 与 iOS 逆向阅读清单","record_type":"resource","relationship":"learning","requirements":["The reviewed commit, from 2019-12-19 and the latest, closes a history of 69 commits that began on 2015-07-13. Most linked material targets OS X 10.x and iOS 8–10 era internals, such as El Capitan kernels and iOS 9 and 10 jailbreak analyses, and the list predates current macOS and iOS releases and Apple silicon Macs. A December 2019 commit replaced some broken and outdated links.","No target files are supplied or needed by the list itself; the linked tutorials and crackmes bring their own samples, and the books are listed by title only. Following the material assumes a Mac or iOS device and the tools each article uses, such as LLDB, Hopper, and VMware Fusion or VirtualBox for kernel debugging.","The list mixes analysis tutorials with malware infection, rootkit, privilege-escalation and jailbreak write-ups. The repository contains only README.md and no license file, so the list states no reuse terms, and linked works keep their own rights."],"requirements_zh":["所审阅的提交日期为 2019-12-19，也是最新提交，此前的提交历史共 69 个提交，始于 2015-07-13。所链接的资料大多针对 OS X 10.x 和 iOS 8–10 时期的系统内部机制，例如 El Capitan 内核以及 iOS 9 和 10 的越狱分析；清单的更新早于当前的 macOS 和 iOS 版本以及搭载 Apple 芯片的 Mac。2019 年 12 月的一次提交更换了部分失效和过时的链接。","清单本身不提供也不需要任何目标文件；所链接的教程和 crackme 自带样本，书籍只列出书名。学习这些资料需要一台 Mac 或 iOS 设备，以及各篇文章所用的工具，例如 LLDB、Hopper，以及用于内核调试的 VMware Fusion 或 VirtualBox。","清单既收录分析教程，也收录恶意软件感染、rootkit、提权和越狱相关文章。仓库只有 README.md，没有许可证文件，因此清单本身未声明复用条款，所链接作品各自保留权利。"],"targets":["app","binary"],"url":"https://github.com/michalmalik/osx-re-101","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/ReverseApple/gxpc/blob/4fad36db87126c0b29b987472b5863206fb77ac2/main.go","https://github.com/ReverseApple/gxpc/blob/4fad36db87126c0b29b987472b5863206fb77ac2/script.ts","https://github.com/ReverseApple/gxpc/blob/4fad36db87126c0b29b987472b5863206fb77ac2/offsets.go","https://github.com/ReverseApple/gxpc/blob/4fad36db87126c0b29b987472b5863206fb77ac2/go.mod","https://github.com/ReverseApple/gxpc/blob/4fad36db87126c0b29b987472b5863206fb77ac2/.goreleaser.yaml","https://github.com/ReverseApple/gxpc/blob/4fad36db87126c0b29b987472b5863206fb77ac2/.github/workflows/release.yml","https://github.com/ReverseApple/gxpc/blob/4fad36db87126c0b29b987472b5863206fb77ac2/LICENSE","https://github.com/ReverseApple/gxpc/releases/tag/v2.2.1"],"category":"dynamic-analysis","description_en":"macOS command-line XPC sniffer, inspired by xpcspy, that injects a Frida agent into an attached or newly spawned process and logs the XPC messages it sends and receives, labelled with the libxpc function, connection name, peer PID and process name. The agent recursively converts xpc_object_t dictionaries, arrays and scalar values into readable output and decodes binary-plist payloads, while a Go host built on frida-go selects a local, USB or remote Frida device, filters connections by name or PID and can save the trace to a file. It observes how Apple-platform apps and services communicate over XPC and does not alter or inject messages.","description_zh":"受 xpcspy 启发的 macOS 命令行 XPC 嗅探工具：把 Frida 代理注入已附加或新启动的进程，记录其收发的 XPC 消息，并标出对应的 libxpc 函数、连接名、对端 PID 与进程名。代理会递归地把 xpc_object_t 字典、数组和标量值转换为可读输出，并解码二进制 plist 负载；基于 frida-go 的 Go 主程序负责选择本地、USB 或远程 Frida 设备，按名称或 PID 过滤连接，并可将跟踪结果保存到文件。它用于观察 Apple 平台应用与服务如何通过 XPC 通信，不会修改或注入消息。","entry_url":"https://awesomerea.org/resources/gxpc/","entry_url_zh":"https://awesomerea.org/zh/resources/gxpc/","evidence_url":"https://github.com/ReverseApple/gxpc/blob/4fad36db87126c0b29b987472b5863206fb77ac2/README.md","group":"tools","id":"gxpc","json_url":"https://awesomerea.org/resources/gxpc/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/gxpc/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/gxpc/index.md","name":"gxpc","name_zh":"gxpc XPC 通信嗅探工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v2.2.1, published 2025-08-12, with macOS x86_64 and arm64 archives that GoReleaser links against the Frida 17.2.16 core devkit; the reviewed main commit adds only a cobra dependency bump (2025-09-02). Installing with go install instead needs Go, cgo and the Frida devkit set up as frida-go documents; go.mod declares Go 1.20 and frida-go 1.0.0.","On first run the binary writes its embedded TypeScript agent and package files to a gxpc folder in the system temp directory, runs npm install for frida-objc-bridge and compiles the agent with Frida’s compiler, so Node.js, npm and network access are needed at least once; the compiled agent is then reused. The analyst picks the target by PID, process name or a file to spawn, on a local device (-i local), a USB device (the default) or a remote Frida server; the README documents no device setup or tested OS versions.","Outgoing messages come from hooks on the public libxpc send, reply and notification functions, and new connections from xpc_connection_create_mach_service and xpc_connection_set_event_handler. Incoming messages rely on the private _xpc_connection_call_event_handler and __CFBinaryPlistCreate15, which the agent resolves from debug symbols and caches as offsets per machine and OS build in gxpc.conf in the user’s home directory (or a file given with -c). bplist16 payloads are decoded through an external jlutil executable when one is installed on the host, otherwise by the agent’s own parser or as base64. In the reviewed main.go the --whitelistp option reads the --whitelist value, so PID allow-listing may not work as documented.","MIT. frida-go, the Frida devkit and frida-objc-bridge keep their own licenses, and jlutil is a separate third-party tool not shipped with gxpc."],"requirements_zh":["审阅时最新版本为 v2.2.1，发布于 2025-08-12，提供由 GoReleaser 针对 Frida 17.2.16 core devkit 链接构建的 macOS x86_64 与 arm64 压缩包；所审阅的 main 分支提交只多了一次 cobra 依赖升级（2025-09-02）。若改用 go install 安装，需要 Go、cgo，并按 frida-go 文档配置 Frida devkit；go.mod 声明 Go 1.20 和 frida-go 1.0.0。","首次运行时，程序会把内嵌的 TypeScript 代理及包文件写入系统临时目录下的 gxpc 文件夹，执行 npm install 安装 frida-objc-bridge，再用 Frida 编译器编译代理，因此至少需要一次 Node.js、npm 和网络访问；之后会复用已编译的代理。分析者可按 PID、进程名或待启动的文件选择目标，设备可以是本机（-i local）、USB 设备（默认）或远程 Frida 服务；README 未说明设备配置方法，也未列出测试过的系统版本。","发出的消息通过挂钩公开的 libxpc 发送、回复与通知函数获取，新建连接则通过 xpc_connection_create_mach_service 和 xpc_connection_set_event_handler 记录。接收的消息依赖私有的 _xpc_connection_call_event_handler 和 __CFBinaryPlistCreate15，代理通过调试符号解析其地址，并按机型与系统构建号把偏移缓存到用户主目录下的 gxpc.conf（或以 -c 指定的文件）。bplist16 负载仅在宿主机安装了外部 jlutil 程序时由其解码，否则交给代理自带的解析器或以 base64 输出。在所审阅的 main.go 中，--whitelistp 选项读取的是 --whitelist 的值，因此按 PID 设置白名单可能无法按文档工作。","采用 MIT 许可。frida-go、Frida devkit 与 frida-objc-bridge 保留各自许可证，jlutil 是另行提供的第三方工具，不随 gxpc 分发。"],"targets":["app","protocol"],"url":"https://github.com/ReverseApple/gxpc","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/AngeloD2022/jsxer/blob/0340bd3321be529cf775215cfac860cf2cf8b477/CMakeLists.txt","https://github.com/AngeloD2022/jsxer/blob/0340bd3321be529cf775215cfac860cf2cf8b477/src/cli/main.cpp","https://github.com/AngeloD2022/jsxer/blob/0340bd3321be529cf775215cfac860cf2cf8b477/src/jsxer/jsxer.cpp","https://github.com/AngeloD2022/jsxer/blob/0340bd3321be529cf775215cfac860cf2cf8b477/include/jsxer.h","https://github.com/AngeloD2022/jsxer/blob/0340bd3321be529cf775215cfac860cf2cf8b477/bindings/python/decompiler.py","https://github.com/AngeloD2022/jsxer/blob/0340bd3321be529cf775215cfac860cf2cf8b477/TODO.md","https://github.com/AngeloD2022/jsxer/blob/0340bd3321be529cf775215cfac860cf2cf8b477/tests/src/array-expr.cpp","https://github.com/AngeloD2022/jsxer/blob/0340bd3321be529cf775215cfac860cf2cf8b477/.github/workflows/run-tests.yaml","https://github.com/AngeloD2022/jsxer/blob/0340bd3321be529cf775215cfac860cf2cf8b477/LICENSE","https://github.com/AngeloD2022/jsxer/releases/tag/v1.7.4"],"category":"javascript-electron","description_en":"C++ decompiler for JSXBIN, the binary format of Adobe's legacy ExtendScript, the ECMAScript 3 dialect used to script applications such as Photoshop, InDesign and After Effects. It reads a JSXBIN 1.0, 2.0 or 2.1 literal, parses it into a syntax tree and prints JavaScript source with a header naming the format version. An experimental --unblind option renames symbols obfuscated by JsxBlind, and the same decompiler is exposed as a shared library with a ctypes-based Python binding.","description_zh":"面向 JSXBIN 的 C++ 反编译器。JSXBIN 是 Adobe 旧版 ExtendScript 的二进制格式，ExtendScript 则是用于为 Photoshop、InDesign、After Effects 等应用编写脚本的 ECMAScript 3 方言。它读取 JSXBIN 1.0、2.0 或 2.1 字面量，解析为语法树，再输出 JavaScript 源码，并在文件头注明格式版本。实验性的 --unblind 选项可为经 JsxBlind 混淆的符号重新命名；同一反编译器还以共享库形式提供，并附基于 ctypes 的 Python 绑定。","entry_url":"https://awesomerea.org/resources/jsxer/","entry_url_zh":"https://awesomerea.org/zh/resources/jsxer/","evidence_url":"https://github.com/AngeloD2022/jsxer/blob/0340bd3321be529cf775215cfac860cf2cf8b477/README.md","group":"tools","id":"jsxer","json_url":"https://awesomerea.org/resources/jsxer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/jsxer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/jsxer/index.md","name":"Jsxer","name_zh":"Jsxer JSXBIN 反编译器","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v1.7.4, published 2025-03-31 with macOS arm64, macOS x86 and Windows archives. The reviewed master commit, from 2025-04-22, is one commit later and only makes the README's notice more visible: it says the project is being rewritten in Rust on a separate rust-rewrite branch, whose latest commit is from 2025-03-11.","Input is a file holding only the JSXBIN literal, usually beginning with @JSXBIN@; the README warns that other content around it must be removed first. The CLI writes a .jsx file next to the input unless -o names another path; input that fails the JSXBIN signature check yields an error message and no decompiled code.","Source builds need CMake 3.26+ and a C++17 compiler; configuring fetches fmt 9.1.0, plog 1.1.9 and CLI11 2.3.2 from GitHub. The README documents only the macOS build, while CMakeLists.txt also has Windows and Linux branches and builds a static library and a shared library, the latter loaded by bindings/python/decompiler.py from the build directory.","ctest builds four small programs that decompile embedded array, object, member-expression and for-statement samples and print the result; they report the decompiler's status code but do not compare output with the original source, and CI runs them on macOS and Windows for pull requests. TODO.md lists open problems with function argument order, comma-expression declarations, number printing and some XML nodes producing improper code.","AGPL-3.0. The README says Jsxer was made for source code recovery and security research and asks users not to use it to pirate scripts from their authors; it credits Andrin Meier's format research and jsxbin-to-jsx-converter, whose original repository it says was removed after an Adobe DMCA takedown. Decompiled scripts keep their authors' rights."],"requirements_zh":["审阅时最新版本为 v1.7.4，发布于 2025-03-31，提供 macOS arm64、macOS x86 和 Windows 压缩包。所审阅的 master 提交日期为 2025-04-22，比该版本只多一个提交，内容仅是让 README 中的提示更醒目：提示称项目正在独立的 rust-rewrite 分支上用 Rust 重写，该分支最新提交日期为 2025-03-11。","输入文件只能包含 JSXBIN 字面量，通常以 @JSXBIN@ 开头；README 提醒须先删去其前后的其他内容。命令行工具默认在输入文件旁写出 .jsx 文件，也可用 -o 指定其他路径；未通过 JSXBIN 签名检查的输入只会产生错误信息，不会得到反编译代码。","从源码构建需要 CMake 3.26+ 和 C++17 编译器；配置时会从 GitHub 获取 fmt 9.1.0、plog 1.1.9 和 CLI11 2.3.2。README 只说明了 macOS 上的构建，而 CMakeLists.txt 也包含 Windows 与 Linux 分支，并构建静态库和共享库；bindings/python/decompiler.py 从构建目录载入该共享库。","ctest 会构建四个小程序，分别反编译内嵌的数组、对象、成员表达式和 for 语句样例并打印结果；它们只返回反编译器的状态码，不与原始源码比较。CI 在拉取请求时于 macOS 和 Windows 上运行这些测试。TODO.md 列出了尚未解决的问题，包括函数参数顺序、逗号表达式声明、数字输出，以及部分 XML 节点生成的代码不正确。","采用 AGPL-3.0 许可。README 称 Jsxer 用于源码恢复和安全研究，并请使用者不要借此盗用脚本作者的成果；README 还致谢 Andrin Meier 对该格式的研究及其 jsxbin-to-jsx-converter 项目，并称该项目的原仓库因 Adobe 的 DMCA 通知而被删除。反编译所得脚本的权利仍归其作者。"],"targets":["app"],"url":"https://github.com/AngeloD2022/jsxer","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/evilpan/jni_helper/blob/04b844c43438c2c0bbef29bf9b9695e5aba9a4bc/extract_jni.py","https://github.com/evilpan/jni_helper/blob/04b844c43438c2c0bbef29bf9b9695e5aba9a4bc/requirements.txt","https://github.com/evilpan/jni_helper/blob/04b844c43438c2c0bbef29bf9b9695e5aba9a4bc/ghidra/README.md","https://github.com/evilpan/jni_helper/blob/04b844c43438c2c0bbef29bf9b9695e5aba9a4bc/ida/README.md","https://github.com/evilpan/jni_helper/blob/04b844c43438c2c0bbef29bf9b9695e5aba9a4bc/binary_ninja/jni_helper.py","https://github.com/evilpan/jni_helper/blob/04b844c43438c2c0bbef29bf9b9695e5aba9a4bc/r2/README.md","https://github.com/evilpan/jni_helper/blob/04b844c43438c2c0bbef29bf9b9695e5aba9a4bc/headers/jni.h","https://github.com/evilpan/jni_helper/blob/04b844c43438c2c0bbef29bf9b9695e5aba9a4bc/.github/workflows/main.yml","https://github.com/evilpan/jni_helper/releases/tag/v0.6"],"category":"android","description_en":"Static helper by evilpan for reverse engineering Android JNI code. Its extract_jni.py script parses an APK's DEX files with Androguard, finds methods declared native, derives each one's mangled Java_ symbol name and C prototype, including overloaded methods, and saves them with the exported Java_ and JNI_OnLoad functions of the APK's arm64-v8a native libraries as a JSON signature file. Scripts for Ghidra, IDA Pro and Binary Ninja load that file and apply the prototypes and JNI types to the matching functions; a radare2 script is a work in progress.","description_zh":"evilpan 开发的 Android JNI 代码静态逆向辅助工具。其 extract_jni.py 脚本用 Androguard 解析 APK 中的 DEX 文件，找出声明为 native 的方法，推导出每个方法（包括重载方法）对应的 Java_ 修饰符号名和 C 函数原型，并连同 APK 中 arm64-v8a 原生库导出的 Java_ 函数和 JNI_OnLoad 一起保存为 JSON 签名文件。面向 Ghidra、IDA Pro 和 Binary Ninja 的脚本读取该文件，把函数原型和 JNI 类型应用到相应函数上；radare2 脚本仍在开发中。","entry_url":"https://awesomerea.org/resources/jni-helper/","entry_url_zh":"https://awesomerea.org/zh/resources/jni-helper/","evidence_url":"https://github.com/evilpan/jni_helper/blob/04b844c43438c2c0bbef29bf9b9695e5aba9a4bc/README.md","group":"tools","id":"jni-helper","json_url":"https://awesomerea.org/resources/jni-helper/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/jni-helper/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/jni-helper/index.md","name":"jni_helper","name_zh":"jni_helper JNI 函数签名提取工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.6, published 2024-10-23, whose only asset is the demo APK built by CI; the reviewed master commit of 2025-02-24 only updates a README link. CI builds the demo app with JDK 17 and runs extract_jni.py on it as its only test, without checking the output or exercising the disassembler scripts.","extract_jni.py needs Python 3 with androguard, rich and pyelftools from requirements.txt and takes an APK the analyst already has; it reads native libraries only from lib/arm64-v8a. Methods bound at run time through RegisterNatives are not covered, which the README lists as an open TODO, and the disassembler scripts find functions only by their mangled Java_ symbol names.","The Ghidra script is installed by a Makefile into the ghidra_scripts folder in the user's home directory, together with the bundled jni.h.gdt data-type archive; the IDA plugin has separate versions for IDA Pro before 7.4 and for 7.4 and later; the Binary Ninja script runs from File > Run Script and parses the bundled headers/jni.h. Supported versions of Ghidra, Binary Ninja and radare2 are not stated.","No license file, and GitHub detects none, so reuse terms for the scripts are unstated. Bundled headers keep their own notices: headers/jni.h is Oracle's GPL-2.0 file with the Classpath exception, while r2/jni.h and headers/art_method.h are Android Open Source Project files under Apache-2.0. The demo_apk folder holds the source of the author's test app."],"requirements_zh":["审阅时最新版本为 v0.6，发布于 2024-10-23，唯一的附件是 CI 构建的演示 APK；所审阅的 2025-02-24 master 提交只更新了 README 中的一个链接。CI 用 JDK 17 构建演示应用，并在其上运行 extract_jni.py 作为唯一的测试，既不检查输出，也不测试各反汇编器脚本。","extract_jni.py 需要 Python 3 以及 requirements.txt 中列出的 androguard、rich 和 pyelftools，输入为分析者已有的 APK；它只读取 lib/arm64-v8a 中的原生库。运行时通过 RegisterNatives 绑定的方法不在覆盖范围内，README 将其列为尚未完成的待办事项；各反汇编器脚本也只按 Java_ 修饰符号名查找函数。","Ghidra 脚本通过 Makefile 与自带的 jni.h.gdt 数据类型归档一起安装到用户主目录下的 ghidra_scripts 文件夹；IDA 插件分别提供适用于 IDA Pro 7.4 之前版本和 7.4 及以后版本的两个版本；Binary Ninja 脚本通过 File > Run Script 运行，并解析自带的 headers/jni.h。项目未说明所支持的 Ghidra、Binary Ninja 和 radare2 版本。","仓库没有许可证文件，GitHub 也未检测到许可证，因此这些脚本的复用条款并不明确。自带的头文件保留各自的声明：headers/jni.h 是 Oracle 采用 GPL-2.0 并附 Classpath 例外的文件，r2/jni.h 和 headers/art_method.h 则是采用 Apache-2.0 的 Android 开源项目文件。demo_apk 文件夹包含作者测试应用的源码。"],"targets":["app","binary"],"url":"https://github.com/evilpan/jni_helper","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/trailofbits/manticore/blob/cdf6c4b49603cc1d70a09cabe74e0f786df1e13f/README.md#L225-L236","https://github.com/trailofbits/manticore/blob/cdf6c4b49603cc1d70a09cabe74e0f786df1e13f/setup.py","https://github.com/trailofbits/manticore/blob/cdf6c4b49603cc1d70a09cabe74e0f786df1e13f/.github/workflows/ci.yml","https://github.com/trailofbits/manticore/tree/cdf6c4b49603cc1d70a09cabe74e0f786df1e13f/tests/native/binaries","https://github.com/trailofbits/manticore/blob/cdf6c4b49603cc1d70a09cabe74e0f786df1e13f/server/README.md","https://github.com/trailofbits/manticore/blob/cdf6c4b49603cc1d70a09cabe74e0f786df1e13f/LICENSE","https://github.com/trailofbits/manticore/releases/tag/0.3.7","https://pypi.org/project/manticore/0.3.7/","https://arxiv.org/abs/1907.03890"],"category":"binary-libraries","description_en":"Trail of Bits' now-archived symbolic execution tool for Linux ELF binaries on x86, x86-64, AArch64 and ARMv7, Ethereum smart contracts as EVM bytecode, and WebAssembly modules. It runs a program on symbolic inputs to explore the states it can reach, generates concrete inputs that lead to a chosen state and detects crashes and other failures, solving constraints with an external Yices, Z3 or CVC4 solver. The manticore CLI writes generated test cases to an mcore_ workspace, while the Python API adds instruction hooks, event callbacks and custom initial states; manticore-verifier checks contract properties written in the contract's own language.","description_zh":"Trail of Bits 开发、现已归档的符号执行工具，可分析 x86、x86-64、AArch64 和 ARMv7 上的 Linux ELF 二进制、以 EVM 字节码表示的以太坊智能合约以及 WebAssembly 模块。它以符号输入运行程序，探索可到达的各个状态，生成能到达指定状态的具体输入，并检测崩溃等错误情形，约束由外部的 Yices、Z3 或 CVC4 求解器求解。manticore 命令行工具把生成的测试用例写入 mcore_ 工作目录，Python API 则支持指令钩子、事件回调和自定义初始状态；manticore-verifier 用于检查以合约自身语言编写的属性。","entry_url":"https://awesomerea.org/resources/manticore/","entry_url_zh":"https://awesomerea.org/zh/resources/manticore/","evidence_url":"https://github.com/trailofbits/manticore/blob/cdf6c4b49603cc1d70a09cabe74e0f786df1e13f/README.md","group":"tools","id":"manticore","json_url":"https://awesomerea.org/resources/manticore/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/manticore/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/manticore/index.md","name":"Manticore","name_zh":"Manticore 符号执行工具","record_type":"resource","relationship":"foundation","requirements":["Archived and unmaintained: the README states that the project is no longer internally developed and maintained, and GitHub marks the repository archived. The reviewed master commit, from 2026-06-24, only changes that status; the last change under manticore/ dates from 2022-08-07. The latest release is 0.3.7 on GitHub and PyPI (2022-02-17), and PyPI's nightly 0.3.8.dev builds end on 2024-02-27.","Requires Python 3.7 or later. pip install manticore covers EVM and WASM, manticore[native] adds the pinned capstone 5.0.0rc2 and unicorn 2.x needed for native binaries, and a trailofbits/manticore Docker image is offered. The README names the latest Ubuntu LTS on GitHub Actions as the supported platform, gives macOS experimental EVM and WASM support but no native-binary support, and recommends a larger stack limit; CI at the reviewed commit still runs Python 3.7 on ubuntu-20.04.","Inputs are the user's own ELF binaries, Solidity or Vyper sources or EVM bytecode, or WASM modules. Contract analysis needs solc on PATH and compiles through crytic-compile; the README says EVM Istanbul semantics are not fully implemented, so some opcodes may be unsupported. Whole-program CLI runs are prone to state explosion, which the README suggests limiting by tailoring the initial state through the API.","CI runs ethereum, native, WASM, examples and other test suites after downloading Yices 2.6.2 and solc 0.4.24. tests/native/binaries and examples/linux/binaries hold small prebuilt Linux test programs for amd64 and ARMv7, some with their C sources; larger examples, including CTF problems, live in the separate manticore-examples repository, and server/ holds an unpublished gRPC wrapper for the Manticore UI.","AGPL-3.0; the README says Trail of Bits can be contacted for an exception to its terms. The ASE 2019 paper (arXiv 1907.03890) describes the tool."],"requirements_zh":["已归档且不再维护：README 声明项目已不再由内部开发和维护，GitHub 也将仓库标为已归档。所审阅的 master 提交日期为 2026-06-24，只改动了这一状态；manticore/ 目录下的最后一次改动在 2022-08-07。最新版本为 GitHub 与 PyPI 上的 0.3.7（2022-02-17），PyPI 上的每日 0.3.8.dev 构建止于 2024-02-27。","需要 Python 3.7 或更高版本。pip install manticore 涵盖 EVM 与 WASM 分析，manticore[native] 还会安装分析原生二进制所需、版本固定的 capstone 5.0.0rc2 和 unicorn 2.x；另提供 trailofbits/manticore Docker 镜像。README 将 GitHub Actions 提供的最新 Ubuntu LTS 列为正式支持平台，macOS 上对 EVM 与 WASM 仅为实验性支持，且不支持原生二进制，并建议调大栈空间限制；所审提交的 CI 仍在 ubuntu-20.04 上使用 Python 3.7。","输入为使用者自己的 ELF 二进制、Solidity 或 Vyper 源码或 EVM 字节码，或 WASM 模块。合约分析需要 PATH 中有 solc，并通过 crytic-compile 编译；README 称 EVM Istanbul 语义尚未完整实现，部分操作码可能不受支持。用命令行分析整个程序容易出现状态爆炸，README 建议通过 API 定制初始状态来加以限制。","CI 在下载 Yices 2.6.2 和 solc 0.4.24 后运行 ethereum、native、WASM、examples 等测试套件。tests/native/binaries 与 examples/linux/binaries 中存放面向 amd64 和 ARMv7 的小型预编译 Linux 测试程序，部分附有 C 源码；包括 CTF 题目在内的更大示例位于独立的 manticore-examples 仓库，server/ 目录则是为 Manticore UI 提供的、未发布的 gRPC 封装。","采用 AGPL-3.0 许可；README 称可联系 Trail of Bits 申请例外授权。ASE 2019 论文（arXiv 1907.03890）介绍了该工具。"],"targets":["binary"],"url":"https://github.com/trailofbits/manticore","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/packing-box/awesome-executable-packing/blob/9e41a9b10b45535c1278259129ec8eaf287b8a42/CONTRIBUTING.md","https://github.com/packing-box/awesome-executable-packing/blob/9e41a9b10b45535c1278259129ec8eaf287b8a42/LICENSE"],"category":"related-lists","description_en":"A single-README list of resources on executable packing, meaning the bundling, compression, encryption, mutation, protection or virtualization of PE, ELF and other executables, including Android apps, and on detecting and unpacking packed files. About 770 entries are grouped into documentation, dated scientific papers, sample datasets, packers sorted by era from before 2000 to after 2010, and tools for packer identification, unpacking and binary analysis.","description_zh":"以单个 README 维护的可执行文件加壳资源清单。加壳指对 PE、ELF 等可执行文件（包括 Android 应用）进行打包、压缩、编码、加密、变形、保护或虚拟化，清单也涵盖已加壳文件的检测与脱壳。约 770 个条目分为文档、注明日期的学术论文、样本数据集、按年代（2000 年以前至 2010 年以后）排列的加壳工具，以及用于加壳识别、脱壳和二进制分析的工具。","entry_url":"https://awesomerea.org/resources/awesome-executable-packing/","entry_url_zh":"https://awesomerea.org/zh/resources/awesome-executable-packing/","evidence_url":"https://github.com/packing-box/awesome-executable-packing/blob/9e41a9b10b45535c1278259129ec8eaf287b8a42/README.md","group":"learn","id":"awesome-executable-packing","json_url":"https://awesomerea.org/resources/awesome-executable-packing/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/awesome-executable-packing/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/awesome-executable-packing/index.md","name":"Awesome Executable Packing","name_zh":"Awesome Executable Packing 可执行文件加壳资源清单","record_type":"resource","relationship":"learning","requirements":["The reviewed README, committed 2026-10-10, has 768 list rows: 94 documentation links and 328 scientific publications under Literature, 37 datasets, 190 packers (90 after 2010, 41 from 2000 to 2010 and 59 before 2000) and 119 tools. All but one publication give a month and year; Literature rows carry emoji type markers and 110 publications carry a star, neither of which the README explains. One documentation row links to the list itself.","Rows give a name, a link and usually a one-line description, with no license, maintenance or platform fields, and many packers and tools are specific to Windows PE files. Packer rows point to vendor sites, SourceForge, GitHub projects, blog analyses and 30 Internet Archive copies of old pages or download archives.","The Datasets section lists public malware repositories and feeds next to packed and benign PE and ELF sample sets and benchmark datasets such as EMBER and SOREL-20M. Samples obtained through them can be live malicious software and fall under each provider's access terms.","CC0-1.0 for the list; CONTRIBUTING.md asks for alphabetically sorted rows and one commit per suggestion. Linked papers, packers, tools and datasets keep their own licenses. An independent discovery list."],"requirements_zh":["所审阅的 README 提交于 2026-10-10，共有 768 行条目：“文献”下有 94 个文档链接和 328 篇学术论文，另有 37 个数据集、190 个加壳工具（2010 年以后 90 个、2000 至 2010 年 41 个、2000 年以前 59 个）和 119 个工具。除一篇外，所有论文都注明了年月；“文献”条目带有表示类型的表情符号，110 篇论文带有星标，README 对二者均未加说明。其中一个文档条目链接的就是本清单。","条目给出名称、链接，通常还有一句说明，但没有许可证、维护状态或平台字段；许多加壳工具和分析工具仅适用于 Windows PE 文件。加壳工具条目指向厂商网站、SourceForge、GitHub 项目、博客分析，以及 30 个旧网页或下载压缩包的互联网档案馆副本。","“数据集”部分将公开的恶意软件样本库和样本源，与已加壳及正常的 PE、ELF 样本集，以及 EMBER、SOREL-20M 等基准数据集并列。经由这些来源获得的样本可能是可运行的恶意软件，并受各提供方的访问条款约束。","清单采用 CC0-1.0；CONTRIBUTING.md 要求条目按字母顺序排列，每条建议一个提交。所链接的论文、加壳工具、分析工具和数据集各自保留其许可证。这是独立的发现清单。"],"targets":["app","binary"],"url":"https://github.com/packing-box/awesome-executable-packing","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/linuxboot/fiano/blob/162b021e54496b89b2f9028f88234b2caec70a0c/go.mod","https://github.com/linuxboot/fiano/blob/162b021e54496b89b2f9028f88234b2caec70a0c/LICENSE","https://github.com/linuxboot/fiano/blob/162b021e54496b89b2f9028f88234b2caec70a0c/.circleci/config.yml","https://github.com/linuxboot/fiano/blob/162b021e54496b89b2f9028f88234b2caec70a0c/integration/utk_test.go","https://github.com/linuxboot/fiano/blob/162b021e54496b89b2f9028f88234b2caec70a0c/integration/roms/OVMF.md","https://github.com/linuxboot/fiano/blob/162b021e54496b89b2f9028f88234b2caec70a0c/cmds/fspinfo/README.md","https://github.com/linuxboot/fiano/blob/162b021e54496b89b2f9028f88234b2caec70a0c/cmds/fspinfo/test_blobs/README.md","https://github.com/linuxboot/fiano/blob/162b021e54496b89b2f9028f88234b2caec70a0c/data/PurleySiliconBinPkg/MeFirmware/IgnitionFirmware/License.txt","https://github.com/linuxboot/fiano/blob/162b021e54496b89b2f9028f88234b2caec70a0c/pkg/intel/metadata/README.md","https://github.com/linuxboot/fiano/tree/162b021e54496b89b2f9028f88234b2caec70a0c/cmds","https://github.com/linuxboot/fiano/commit/cf677b458e86128635e911b2a8124c70bc7a2d0f"],"category":"firmware","description_en":"LinuxBoot's Go tools and libraries for parsing and modifying UEFI firmware images. Its utk command shows an image's firmware volumes and files as a table or JSON, finds, dumps, inserts, removes or replaces files, and extracts an image into a directory that can be reassembled, with a DXE cleaner for deleting unneeded DXE drivers. Further commands cover flash maps (fmap), coreboot CBFS, Intel FIT tables, FSP headers, microcode and LZMA data, and its Go packages also parse Intel ME regions, Boot Guard and CBnT manifests and AMD firmware structures.","description_zh":"LinuxBoot 项目用 Go 编写的 UEFI 固件镜像解析与修改工具及库。其 utk 命令可用表格或 JSON 展示镜像中的固件卷和文件，查找、转储、插入、删除或替换文件，并把镜像解包到可重新组装的目录中，还提供用于删除多余 DXE 驱动的 DXE 清理功能。其他命令涵盖闪存布局（fmap）、coreboot CBFS、Intel FIT 表、FSP 头部、微码和 LZMA 数据；其 Go 包还能解析 Intel ME 区域、Boot Guard 与 CBnT 清单以及 AMD 固件结构。","entry_url":"https://awesomerea.org/resources/fiano/","entry_url_zh":"https://awesomerea.org/zh/resources/fiano/","evidence_url":"https://github.com/linuxboot/fiano/blob/162b021e54496b89b2f9028f88234b2caec70a0c/README.md","group":"tools","id":"fiano","json_url":"https://awesomerea.org/resources/fiano/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/fiano/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fiano/index.md","name":"fiano","name_zh":"fiano UEFI 固件解析与修改工具集","record_type":"resource","relationship":"foundation","requirements":["No GitHub releases; the newest tags, v7.0.2 and v6.0.1, both point to commits from 2021-12-01, while main keeps receiving fixes, documentation and dependency updates, the reviewed commit being from 2026-05-14. The README installs utk and fmap with go install at @latest and still says Go 1.13 is required, whereas go.mod declares Go 1.21 and CircleCI uses Go 1.22.","Pure-Go command-line tools; go install places the executables in the go/bin folder of the user's home directory. Input is a firmware image the analyst already has, such as a full flash ROM, and fspinfo supports only FSP 2.0 files. CI checks formatting, runs ineffassign and the unit and race tests, and the Go tests include an extract, reassemble and extract round trip and a JSON regression check on a bundled OVMF image.","BSD-3-Clause, copyright LinuxBoot. Test fixtures include an OVMF.rom built from EDK2's open-source vUDK2018 tag, coreboot ROMs, compression samples and manifest samples, plus two Intel binaries kept under Intel's own redistribution terms with their license files: the Apollo Lake FSP blob Fsp.fd under the FSP License, and the Purley ME Ignition firmware MeRegion.bin for Cascade Lake servers, whose binary-only license forbids reverse engineering that image.","Modification commands rewrite firmware images; the README does not discuss flashing or recovery."],"requirements_zh":["没有 GitHub 发布版本；最新的标签 v7.0.2 和 v6.0.1 都指向 2021-12-01 的提交，而 main 分支仍在持续加入修复、文档和依赖更新，所审阅的提交日期为 2026-05-14。README 用 go install 以 @latest 安装 utk 和 fmap，并仍称需要 Go 1.13，而 go.mod 声明 Go 1.21，CircleCI 使用 Go 1.22。","均为纯 Go 命令行工具；go install 会把可执行文件放到用户主目录下的 go/bin 文件夹。输入为分析者已有的固件镜像，例如完整的闪存 ROM；fspinfo 只支持 FSP 2.0 文件。CI 检查代码格式、运行 ineffassign 以及单元测试和竞态测试；Go 测试还包括对自带 OVMF 镜像执行的解包、重新组装、再解包往返测试和 JSON 回归检查。","采用 BSD-3-Clause 许可，版权归 LinuxBoot。测试样本包括由 EDK2 开源标签 vUDK2018 构建的 OVMF.rom、coreboot ROM、压缩样本和清单样本，以及两个按 Intel 自身再分发条款保留并附许可文件的 Intel 二进制：适用 FSP License 的 Apollo Lake FSP 文件 Fsp.fd，以及面向 Cascade Lake 服务器的 Purley ME Ignition 固件 MeRegion.bin，后者的仅限二进制许可禁止对该镜像进行逆向工程。","修改类命令会改写固件镜像；README 未涉及刷写或恢复。"],"targets":["firmware"],"url":"https://github.com/linuxboot/fiano","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/Warxim/deluder/blob/068bb06429fa053011a61b0c91c26b7bef0996ed/CHANGELOG.md","https://github.com/Warxim/deluder/blob/068bb06429fa053011a61b0c91c26b7bef0996ed/requirements.txt","https://github.com/Warxim/deluder/blob/068bb06429fa053011a61b0c91c26b7bef0996ed/setup.cfg","https://github.com/Warxim/deluder/blob/068bb06429fa053011a61b0c91c26b7bef0996ed/deluder/scripts/openssl.js","https://github.com/Warxim/deluder/blob/068bb06429fa053011a61b0c91c26b7bef0996ed/deluder/scripts/common.js","https://github.com/Warxim/deluder/tree/068bb06429fa053011a61b0c91c26b7bef0996ed/tests","https://github.com/Warxim/deluder/blob/068bb06429fa053011a61b0c91c26b7bef0996ed/LICENSE.md","https://github.com/Warxim/deluder/releases/tag/v1.2.1"],"category":"protocol-analysis","description_en":"Frida-based interceptor for the traffic of proxy-unaware applications. JavaScript hook scripts on the send and receive functions of WinSock, Linux libc sockets, OpenSSL, GnuTLS and SChannel pass plaintext buffers to Python interceptor modules, which log them or forward them to a proxy for inspection. It spawns or attaches to a process, optionally through a remote frida-server, and was designed mainly as the backend for the author's PETEP proxy; a proxifier interceptor works with other proxy tools, and new scripts and interceptors can be added.","description_zh":"基于 Frida 的拦截工具，用于捕获不支持代理设置的应用程序的流量。JavaScript 挂钩脚本作用于 WinSock、Linux libc 套接字、OpenSSL、GnuTLS 和 SChannel 的收发函数，将明文缓冲区交给 Python 拦截模块记录日志，或转发到代理中查看。它可启动或附加到进程，也可通过远程 frida-server 操作，主要作为作者 PETEP 代理的后端而设计；proxifier 拦截模块可配合其他代理工具使用，并可添加新的脚本和拦截模块。","entry_url":"https://awesomerea.org/resources/deluder/","entry_url_zh":"https://awesomerea.org/zh/resources/deluder/","evidence_url":"https://github.com/Warxim/deluder/blob/068bb06429fa053011a61b0c91c26b7bef0996ed/README.md","group":"tools","id":"deluder","json_url":"https://awesomerea.org/resources/deluder/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/deluder/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/deluder/index.md","name":"Deluder","name_zh":"Deluder 应用流量拦截工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v1.2.1, published 2025-11-14; the reviewed main commit is identical to that tag. The changelog adds remote frida-server support in 1.1 and GnuTLS and Linux sockets in 1.2. The README lists the hooked functions for each library and their Windows, Linux and macOS module names; other libraries need custom Frida scripts.","Python 3.9+ with the pinned frida 16.4.10, psutil 6.0.0 and argparse 1.4.0. It is installed from a release or clone with setup.py, or run as a module after installing requirements.txt. Analysts choose the process to spawn or attach to by path, PID or name, remote targets need a frida-server for their platform, and child processes are hooked unless that is disabled.","Captured messages go to log, debug, proxifier or PETEP interceptors. PETEP integration uses its own protocol on port 8008 by default, and the proxifier frames data by length prefix, suffix or buffer size. The README warns that dropping intercepted messages is unsupported and breaks interception.","Scripts resolve exported functions in loaded modules whose names match a configurable list, so applications that link these libraries statically or use other TLS stacks need custom scripts. The tests directory has pytest cases for the PETEP and proxifier interceptors and for byte formatting. The reviewed tree has no CI workflow and no automated tests for the Frida hook scripts.","LICENSE.md is GPL-3.0."],"requirements_zh":["审阅时最新版本为 v1.2.1，发布于 2025-11-14；所审阅的 main 分支提交与该标签完全一致。更新日志显示 1.1 增加了远程 frida-server 支持，1.2 增加了 GnuTLS 和 Linux 套接字支持。README 列出了每个库被挂钩的函数及其在 Windows、Linux 和 macOS 上的模块名；其他库需要自定义 Frida 脚本。","需要 Python 3.9+，并固定使用 frida 16.4.10、psutil 6.0.0 和 argparse 1.4.0。可从发布包或克隆的仓库用 setup.py 安装，也可在安装 requirements.txt 后以模块方式运行。分析者按路径、PID 或进程名指定要启动或附加的进程；远程目标需要运行对应平台的 frida-server；除非关闭该选项，子进程也会被自动挂钩。","捕获的消息交给 log、debug、proxifier 或 PETEP 拦截模块处理。PETEP 集成使用自有协议，默认端口为 8008；proxifier 可按长度前缀、后缀或缓冲区大小划分数据。README 提醒不支持丢弃拦截到的消息，否则会破坏拦截。","脚本在已加载模块中按可配置的名称列表查找导出函数，因此静态链接这些库或使用其他 TLS 实现的应用需要自定义脚本。tests 目录含针对 PETEP 和 proxifier 拦截模块及字节格式化的 pytest 用例。所审阅的源码树没有 CI 工作流，Frida 挂钩脚本也没有自动化测试。","LICENSE.md 为 GPL-3.0。"],"targets":["app","protocol"],"url":"https://github.com/Warxim/deluder","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/quarkslab/pyrrha/blob/54cfe78055740336283a02a75cfd8694f48cf2b9/docs/installation.md","https://github.com/quarkslab/pyrrha/blob/54cfe78055740336283a02a75cfd8694f48cf2b9/docs/index.md","https://github.com/quarkslab/pyrrha/blob/54cfe78055740336283a02a75cfd8694f48cf2b9/docs/mappers/index.md","https://github.com/quarkslab/pyrrha/blob/54cfe78055740336283a02a75cfd8694f48cf2b9/docs/mappers/fs.md","https://github.com/quarkslab/pyrrha/blob/54cfe78055740336283a02a75cfd8694f48cf2b9/docs/mappers/fs-cg.md","https://github.com/quarkslab/pyrrha/blob/54cfe78055740336283a02a75cfd8694f48cf2b9/docs/mappers/exe-decomp.md","https://github.com/quarkslab/pyrrha/blob/54cfe78055740336283a02a75cfd8694f48cf2b9/docs/.snippets/diffing_pyrrha_exports.py","https://github.com/quarkslab/pyrrha/blob/54cfe78055740336283a02a75cfd8694f48cf2b9/pyproject.toml","https://github.com/quarkslab/pyrrha/blob/54cfe78055740336283a02a75cfd8694f48cf2b9/CHANGELOG.md","https://github.com/quarkslab/pyrrha/blob/54cfe78055740336283a02a75cfd8694f48cf2b9/.gitlab-ci.yml","https://github.com/quarkslab/pyrrha/blob/54cfe78055740336283a02a75cfd8694f48cf2b9/ci/ida/Dockerfile","https://github.com/quarkslab/pyrrha/tree/54cfe78055740336283a02a75cfd8694f48cf2b9/tests/test_fw","https://github.com/quarkslab/pyrrha/blob/54cfe78055740336283a02a75cfd8694f48cf2b9/LICENSE","https://github.com/quarkslab/pyrrha/releases/tag/v2.0.3","https://pypi.org/project/pyrrha-mapper/2.0.3/"],"category":"firmware","description_en":"Quarkslab's firmware cartography tool, which indexes an extracted firmware filesystem into a database browsed with NumbatUI, Quarkslab's fork of the Sourcetrail code explorer. The fs mapper uses LIEF to map ELF and PE files, their imports and exports and the symlinks that point to them; fs-cg disassembles every executable with IDA Pro or Ghidra and links their call graphs across binaries, and decomp indexes one executable's decompiled functions with call cross-references. JSON exports can be post-processed in Python, for example to diff two firmware versions.","description_zh":"Quarkslab 的固件“测绘”工具，将已提取的固件文件系统编入数据库，再用 NumbatUI（Quarkslab 基于 Sourcetrail 代码浏览器的分支）浏览。fs 映射器借助 LIEF 映射 ELF 和 PE 文件、其导入与导出，以及指向这些文件的符号链接；fs-cg 用 IDA Pro 或 Ghidra 反汇编每个可执行文件，并把各二进制的调用图跨文件连接起来；decomp 则为单个可执行文件的反编译函数建立索引并附调用交叉引用。JSON 导出可用 Python 进一步处理，例如比较两个固件版本的差异。","entry_url":"https://awesomerea.org/resources/pyrrha/","entry_url_zh":"https://awesomerea.org/zh/resources/pyrrha/","evidence_url":"https://github.com/quarkslab/pyrrha/blob/54cfe78055740336283a02a75cfd8694f48cf2b9/README.md","group":"tools","id":"pyrrha","json_url":"https://awesomerea.org/resources/pyrrha/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pyrrha/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pyrrha/index.md","name":"Pyrrha","name_zh":"Pyrrha 固件测绘工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v2.0.3, published to GitHub and PyPI as pyrrha-mapper on 2026-09-21; the reviewed main commit sets the same version. v2.0.0 (2026-07-07) added the Ghidra backend and removed the earlier Quokka dependency. pyproject.toml marks the package Beta and lists Linux and Windows.","Input is a firmware root filesystem that the user has already extracted or mounted, or a single executable for decomp; Pyrrha does not unpack firmware images. The fs quick start uses an OpenWrt x86-64 rootfs downloaded from the OpenWrt project.","pyproject.toml requires Python 3.11+, although the installation page says 3.10. fs needs no disassembler, but fs-cg and decomp need a local IDA Pro 9.1+ or Ghidra 12.0+, found on PATH or through IDADIR or GHIDRA_INSTALL_DIR; a Ghidra-based Docker image is published on GitHub's registry, and the IDA CI image is built from the user's own Hex-Rays installer and licence. Results are viewed in NumbatUI or, without newer features such as node renaming, Sourcetrail 2021.4.19.","The GitLab CI file runs pytest unit tests and CLI runs of each mapper, with IDA and Ghidra images for fs-cg and decomp; the GitHub workflows only build documentation and publish releases. tests/test_fw is a small 32-bit ARM Linux fixture holding an OpenSSL 1.1.1n executable built with Buildroot and glibc libraries.","Apache-2.0; NumbatUI is a separate GPL-3.0 project, and IDA Pro is commercial software. The README lists SSTIC, Hack.lu, Pass The SALT and RE//verse talks by the authors."],"requirements_zh":["审阅时最新版本为 v2.0.3，于 2026-09-21 发布到 GitHub，并以 pyrrha-mapper 名称发布到 PyPI；所审阅的 main 提交设定的也是该版本。v2.0.0（2026-07-07）新增 Ghidra 后端，并移除了原先对 Quokka 的依赖。pyproject.toml 将该软件包标为 Beta，并列出 Linux 和 Windows。","输入为使用者已提取或挂载的固件根文件系统；decomp 的输入则是单个可执行文件。Pyrrha 本身不解包固件镜像。fs 的快速入门示例使用从 OpenWrt 项目下载的 OpenWrt x86-64 根文件系统。","pyproject.toml 要求 Python 3.11+，而安装页面写的是 3.10。fs 不需要反汇编器，但 fs-cg 和 decomp 需要本地安装 IDA Pro 9.1+ 或 Ghidra 12.0+，可放在 PATH 中，或通过 IDADIR 或 GHIDRA_INSTALL_DIR 指定位置；GitHub 镜像仓库提供基于 Ghidra 的 Docker 镜像，而用于 CI 的 IDA 镜像须以使用者自己的 Hex-Rays 安装程序和许可证构建。结果可在 NumbatUI 中查看，也可用 Sourcetrail 2021.4.19 查看，但无法使用节点重命名等新功能。","GitLab CI 配置运行 pytest 单元测试以及各映射器的命令行测试，其中 fs-cg 和 decomp 使用 IDA 与 Ghidra 镜像；GitHub 工作流只构建文档和发布版本。tests/test_fw 是一个小型 32 位 ARM Linux 测试样例，包含以 Buildroot 构建的 OpenSSL 1.1.1n 可执行文件和 glibc 库。","采用 Apache-2.0 许可；NumbatUI 是采用 GPL-3.0 的独立项目，IDA Pro 是商业软件。README 列出了作者在 SSTIC、Hack.lu、Pass The SALT 和 RE//verse 的演讲。"],"targets":["binary","firmware"],"url":"https://github.com/quarkslab/pyrrha","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/extension.properties","https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/pom.xml","https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/src/main/java/ghidragpt/ui/Provider.java","https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/src/main/java/ghidragpt/service/FunctionRewrite.java","https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/src/main/java/ghidragpt/utils/PromptBuilder.java","https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/src/main/java/ghidragpt/config/ConfigurationManager.java","https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/.github/workflows/tests.yml","https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/LICENSE","https://github.com/weirdmachine64/GhidraGPT/releases/tag/v1.4.0"],"category":"agent-workflows","description_en":"Ghidra extension that sends one function’s decompiled C to a hosted or local language model the user selects and streams the answer into a GhidraGPT console. Its three actions, offered in the Decompiler and Listing context menus, explain the function; rewrite it by writing recovered function, parameter and variable names, types, the prototype and inline comments back into the program; or audit it for likely security issues. Every action uses only the current function’s decompiler output, and the README calls audit findings leads to verify rather than sound static analysis.","description_zh":"Ghidra 扩展，把单个函数的反编译 C 代码发送给使用者选定的托管或本地大模型，并将回复流式显示在 GhidraGPT 控制台中。反编译视图和列表视图的右键菜单提供三项操作：解释函数；改写函数，把恢复出的函数名、参数名与变量名、类型、函数原型及行内注释写回程序；以及审查函数中可能存在的安全问题。每项操作只使用当前函数的反编译输出，README 称审查结果只是需要核实的线索，并非严谨的静态分析。","entry_url":"https://awesomerea.org/resources/ghidragpt/","entry_url_zh":"https://awesomerea.org/zh/resources/ghidragpt/","evidence_url":"https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/README.md","group":"agents","id":"ghidragpt","json_url":"https://awesomerea.org/resources/ghidragpt/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/ghidragpt/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghidragpt/index.md","name":"GhidraGPT","name_zh":"GhidraGPT：调用大模型辅助逆向的 Ghidra 扩展","record_type":"resource","relationship":"independent-agent-integration","requirements":["The reviewed main commit is the v1.4.0 release of 2026-07-22, which attaches GhidraGPT-1.4.0.zip. extension.properties declares Ghidra 12.1.2, and the README requires Ghidra 12.1.x, noting that the extension declares compatibility with the Ghidra version it is built against. Building from source needs JDK 21+, Maven and GHIDRA_INSTALL_DIR pointing at a local Ghidra; the zip is then added through Ghidra’s Install Extensions dialog.","Each request sends the function name and its decompiled code, prefixed with instruction addresses for Rewrite together with a list of its variables, to the configured provider: OpenAI, Anthropic, Google Gemini, Cohere, Mistral AI, DeepSeek, Grok, OpenRouter, a local Ollama model or any OpenAI-compatible endpoint. Hosted providers need the user’s own API key, which the README says is stored in config.properties in a .ghidragpt folder under the user’s home directory with XOR obfuscation that is not encryption; every provider except Ollama needs network access.","Rewrite applies the parsed names, types, prototype and comments in Ghidra transactions without a separate confirmation step. The README states that there is no interprocedural or whole-program analysis, so callers, callees and data flow outside the function are not given to the model.","CI downloads Ghidra 12.1.2, sets up JDK 21 and runs Maven unit tests for configuration handling, prompt building and parsing of model responses and rewrite edits; these do not exercise the Ghidra interface or model output.","Apache-2.0 license; the README names Mohamed Benchikh as author. Ghidra and each model provider keep their own licences and terms."],"requirements_zh":["所审阅的 main 提交即 2026-07-22 发布的 v1.4.0，该版本附带 GhidraGPT-1.4.0.zip。extension.properties 声明 Ghidra 12.1.2，README 要求 Ghidra 12.1.x，并说明扩展声明的兼容版本就是构建时所用的 Ghidra 版本。从源码构建需要 JDK 21+、Maven，并将 GHIDRA_INSTALL_DIR 指向本地 Ghidra；随后通过 Ghidra 的 Install Extensions 对话框添加生成的 zip。","每次请求都会把函数名及其反编译代码发送给配置的服务商；改写操作还会在每行前标注指令地址，并附上变量列表。可选服务商包括 OpenAI、Anthropic、Google Gemini、Cohere、Mistral AI、DeepSeek、Grok、OpenRouter、本地 Ollama 模型，以及任何兼容 OpenAI 接口的端点。托管服务需使用者自备 API 密钥，README 说明密钥保存在用户主目录下 .ghidragpt 文件夹的 config.properties 中，仅经 XOR 混淆而非加密；除 Ollama 外均需联网。","改写操作在 Ghidra 事务中直接应用解析出的名称、类型、函数原型和注释，没有单独的确认步骤。README 说明它不做跨过程或全程序分析，因此函数之外的调用者、被调用者和数据流都不会提供给模型。","CI 下载 Ghidra 12.1.2、配置 JDK 21，并运行 Maven 单元测试，覆盖配置处理、提示词构建以及模型回复与改写编辑的解析；这些测试不涉及 Ghidra 界面或模型输出。","采用 Apache-2.0 许可证；README 署名作者为 Mohamed Benchikh。Ghidra 和各模型服务商各有其许可与条款。"],"targets":["binary"],"url":"https://github.com/weirdmachine64/GhidraGPT","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/ghidraninja/ghidra_scripts/blob/99f2a8644a29479618f51e2d4e28f10ba5e9ac48/golang_renamer.py","https://github.com/ghidraninja/ghidra_scripts/blob/99f2a8644a29479618f51e2d4e28f10ba5e9ac48/YaraSearch.py","https://github.com/ghidraninja/ghidra_scripts/blob/99f2a8644a29479618f51e2d4e28f10ba5e9ac48/yara-crypto.yar","https://github.com/ghidraninja/ghidra_scripts/blob/99f2a8644a29479618f51e2d4e28f10ba5e9ac48/LICENSE","https://github.com/ghidraninja/ghidra_scripts/issues/12","https://github.com/ghidraninja/ghidra_scripts/issues/19"],"category":"native-analysis","description_en":"Thomas Roth's (Ghidra Ninja) collection of Ghidra Python scripts, which appear under a Ghidra Ninja category in the Script Manager. binwalk.py and yara.py run binwalk or bundled YARA crypto-constant rules over the loaded program and bookmark the findings, YaraSearch.py does the same with a rule file the user chooses, swift_demangler.py demangles Swift function names, golang_renamer.py restores function names in stripped Go binaries from the .gopclntab table, and export_gameboy_rom.py writes a working ROM back out of a Game Boy program imported with GhidraBoy.","description_zh":"Thomas Roth（Ghidra Ninja）编写的 Ghidra Python 脚本合集，脚本会出现在 Script Manager 的 Ghidra Ninja 分类下。binwalk.py 和 yara.py 对已加载的程序运行 binwalk 或自带的 YARA 密码常量规则，并为发现的结果添加书签；YaraSearch.py 则使用用户选择的规则文件完成同样的工作；swift_demangler.py 还原 Swift 函数名；golang_renamer.py 依据 .gopclntab 表恢复去符号 Go 二进制中的函数名；export_gameboy_rom.py 可将用 GhidraBoy 导入的 Game Boy 程序重新导出为可运行的 ROM。","entry_url":"https://awesomerea.org/resources/ghidra-ninja-scripts/","entry_url_zh":"https://awesomerea.org/zh/resources/ghidra-ninja-scripts/","evidence_url":"https://github.com/ghidraninja/ghidra_scripts/blob/99f2a8644a29479618f51e2d4e28f10ba5e9ac48/README.md","group":"tools","id":"ghidra-ninja-scripts","json_url":"https://awesomerea.org/resources/ghidra-ninja-scripts/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ghidra-ninja-scripts/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghidra-ninja-scripts/index.md","name":"Ghidra Ninja ghidra_scripts","name_zh":"Ghidra Ninja Ghidra 脚本合集","record_type":"resource","relationship":"foundation","requirements":["No releases or tags; the last commit is a merge from 2020-10-07. Open issues filed between 2020 and 2025 report problems including golang_renamer data-type errors, a binwalk.py temporary-file error and an out-of-memory failure, with no later commits.","Installed by adding the checked-out repository as a script directory in Ghidra's Script Manager. The scripts are Python 2 code for Ghidra's Jython interpreter, and the README names no supported Ghidra version. binwalk.py, yara.py and YaraSearch.py need binwalk or yara on PATH, swift_demangler.py needs the swift toolchain, and export_gameboy_rom.py needs the GhidraBoy extension.","Input is a program the analyst has loaded into Ghidra; export_gameboy_rom.py works on a Game Boy ROM the user imported, and an open issue says it fails for single-page ROMs. golang_renamer.py only searches for the .gopclntab header used before Go 1.16, and an open issue asks for Go 1.16 support. YARA and binwalk hits are signature matches.","GPL-3.0 (LICENSE). The README says the bundled yara-crypto.yar rules are licensed under GPLv2, with an added SHA256 rule credited to @phoul, and credits golang_renamer.py as a port of George Zaytsev's go_renamer.py."],"requirements_zh":["没有发布版本或标签；最后一次提交是 2020-10-07 的合并。2020 年至 2025 年间提交的未关闭 issue 报告了 golang_renamer 数据类型错误、binwalk.py 临时文件错误和内存不足等问题，此后再无新的提交。","安装方法是在 Ghidra 的 Script Manager 中把克隆下来的仓库添加为脚本目录。这些脚本是为 Ghidra 的 Jython 解释器编写的 Python 2 代码，README 未注明支持的 Ghidra 版本。binwalk.py、yara.py 和 YaraSearch.py 需要 PATH 中有 binwalk 或 yara，swift_demangler.py 需要 swift 工具链，export_gameboy_rom.py 需要 GhidraBoy 扩展。","输入为分析者已加载到 Ghidra 中的程序；export_gameboy_rom.py 处理的是用户自行导入的 Game Boy ROM，一个未关闭的 issue 指出它无法处理单页 ROM。golang_renamer.py 只查找 Go 1.16 之前使用的 .gopclntab 头部，另有未关闭的 issue 请求支持 Go 1.16。YARA 和 binwalk 的结果只是签名匹配。","采用 GPL-3.0（见 LICENSE）。README 称自带的 yara-crypto.yar 规则采用 GPLv2 许可，另加入了一条署名 @phoul 的 SHA256 规则，并说明 golang_renamer.py 移植自 George Zaytsev 的 go_renamer.py。"],"targets":["binary"],"url":"https://github.com/ghidraninja/ghidra_scripts","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/timschneeb/BudsPro-Headtracking/blob/63b321aa0536fd28233eaaf3a05c4f3b3f8201fe/Headtracking.py","https://github.com/timschneeb/BudsPro-Headtracking/blob/63b321aa0536fd28233eaaf3a05c4f3b3f8201fe/SpatialSensorManager.py","https://github.com/timschneeb/BudsPro-Headtracking/blob/63b321aa0536fd28233eaaf3a05c4f3b3f8201fe/BluetoothService.py","https://github.com/timschneeb/BudsPro-Headtracking/blob/63b321aa0536fd28233eaaf3a05c4f3b3f8201fe/Crc16.py","https://github.com/timschneeb/BudsPro-Headtracking/blob/63b321aa0536fd28233eaaf3a05c4f3b3f8201fe/buds_to_unity.py","https://github.com/timschneeb/BudsPro-Headtracking/blob/63b321aa0536fd28233eaaf3a05c4f3b3f8201fe/getBudsUDP.cs","https://github.com/timschneeb/BudsPro-Headtracking/blob/63b321aa0536fd28233eaaf3a05c4f3b3f8201fe/LICENSE"],"category":"reconstruction-cases","description_en":"Reimplements the Samsung Galaxy Buds Pro’s proprietary spatial-audio messages in a small Python script so that a PC can stream the earbuds’ head-tracking data in real time. It connects to the earbuds’ GEARMANAGER (or FACTORY) RFCOMM serial service, frames packets with start and end markers and a CRC16-CCITT checksum, enables the sensor stream with attach and two-second keep-alive messages, and decodes the rotation quaternion from the data events. A contributed script converts the quaternion to Euler angles and forwards it over local UDP to a Unity receiver; results are shown only as author-provided sample output.","description_zh":"用一个小型 Python 脚本重新实现 Samsung Galaxy Buds Pro 专有的空间音频消息，使电脑能实时获取耳机的头部追踪数据。脚本连接耳机的 GEARMANAGER（或 FACTORY）RFCOMM 串口服务，以起止标记和 CRC16-CCITT 校验封装数据包，通过 attach 消息和每两秒一次的保活消息开启传感器数据流，并从数据事件中解码旋转四元数。另有贡献者编写的脚本把四元数转换为欧拉角，经本机 UDP 转发给 Unity 接收端；效果仅以作者给出的示例输出展示。","entry_url":"https://awesomerea.org/resources/budspro-headtracking-case/","entry_url_zh":"https://awesomerea.org/zh/resources/budspro-headtracking-case/","evidence_url":"https://github.com/timschneeb/BudsPro-Headtracking/blob/63b321aa0536fd28233eaaf3a05c4f3b3f8201fe/README.md","group":"cases","id":"budspro-headtracking-case","json_url":"https://awesomerea.org/resources/budspro-headtracking-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/budspro-headtracking-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/budspro-headtracking-case/index.md","name":"BudsPro-Headtracking: streaming Galaxy Buds Pro head tracking over Samsung’s serial protocol","name_zh":"BudsPro-Headtracking：通过 Samsung 串口协议获取 Galaxy Buds Pro 头部追踪数据","record_type":"resource","relationship":"independent-reconstruction","requirements":["The reviewed master commit 63b321a (2024-12-30) merges a contributor change that also accepts the FACTORY service name reported for Galaxy Buds2; the README covers only the Galaxy Buds Pro, and the project has no releases, tests or list of tested earbud firmware. Headtracking.py prints the raw x, y, z, w quaternion (four signed 16-bit values divided by 10,000) or, with -b, frame-timing statistics, and reports gyro-bias and stuck-sensor events only in verbose mode.","It needs the user’s own paired Galaxy Buds Pro, addressed by its Bluetooth MAC address; no Samsung app or firmware is used at runtime or included in the repository. The repository does not document how the message IDs and framing were derived; code comments point to the author’s separate Galaxy Buds desktop client for the full parser and quaternion conversion.","Python 3 with PyBluez on Windows or Linux; the README requires PyBluez 0.22 on Windows because 0.23 fails to enumerate Bluetooth devices. buds_to_unity.py also needs NumPy, hardcodes a device address and sends to 127.0.0.1:12562, and getBudsUDP.cs is a Unity MonoBehaviour adapted from a receiver credited to KAIST UVR Lab.","The README shows sample quaternion output, and benchmark mode reports the average, minimum and maximum time between motion frames, but no captures, tests or recorded benchmark results are published. In the reviewed SpatialSensorManager.py the command payloads are built with Python’s bytes(n), which yields n zero bytes rather than the value n, so the bytes sent may differ from what the constant names suggest.","LICENSE grants MIT (2021, Tim Schneeberger); the Unity script carries an attribution to its original author but no separate license. Galaxy Buds and its services belong to Samsung."],"requirements_zh":["所审阅的 master 分支提交 63b321a（2024-12-30）合并了一位贡献者的修改，使脚本也能识别据报告用于 Galaxy Buds2 的 FACTORY 服务名；README 只涉及 Galaxy Buds Pro，项目没有发布版本、测试，也没有列出测试过的耳机固件版本。Headtracking.py 输出原始的 x、y、z、w 四元数（四个有符号 16 位数值除以 10000），使用 -b 时则输出帧间隔统计，陀螺仪偏差和传感器卡滞事件只在详细模式下提示。","需要使用者自己已配对的 Galaxy Buds Pro，并通过其蓝牙 MAC 地址指定设备；运行时不使用任何 Samsung 应用或固件，仓库中也不包含这些文件。仓库未说明消息 ID 和帧格式是如何推断出来的；代码注释指向作者另一个 Galaxy Buds 桌面客户端项目中的完整解析器和四元数转换代码。","需要 Python 3 与 PyBluez，可在 Windows 或 Linux 上运行；README 要求在 Windows 上使用 PyBluez 0.22，因为 0.23 无法枚举蓝牙设备。buds_to_unity.py 还需要 NumPy，脚本内写死了设备地址并发送到 127.0.0.1:12562；getBudsUDP.cs 是一个 Unity MonoBehaviour，改编自注明出自 KAIST UVR Lab 的接收端代码。","README 展示了四元数示例输出，基准模式可报告运动帧之间的平均、最短和最长间隔，但项目没有公开抓包记录、测试或基准结果。在所审阅的 SpatialSensorManager.py 中，命令负载用 Python 的 bytes(n) 构造，得到的是 n 个零字节而非数值 n，因此实际发送的字节可能与常量名称所示含义不同。","LICENSE 声明采用 MIT 许可（2021，Tim Schneeberger）；Unity 脚本保留了原作者署名，但没有单独的许可证。Galaxy Buds 及其服务归 Samsung 所有。"],"targets":["protocol"],"url":"https://github.com/timschneeb/BudsPro-Headtracking","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/d3v1l401/FindCrypt-Ghidra/blob/71660fddbe7300acb39e013ad6ad96cd001c0d99/FindCrypt.java","https://github.com/d3v1l401/FindCrypt-Ghidra/blob/71660fddbe7300acb39e013ad6ad96cd001c0d99/findcrypt_ghidra/last_chlog.txt","https://github.com/d3v1l401/FindCrypt-Ghidra/blob/71660fddbe7300acb39e013ad6ad96cd001c0d99/Utils/FCExporter/README.txt","https://github.com/d3v1l401/FindCrypt-Ghidra/blob/71660fddbe7300acb39e013ad6ad96cd001c0d99/LICENSE","https://github.com/d3v1l401/FindCrypt-Ghidra/blob/71660fddbe7300acb39e013ad6ad96cd001c0d99/Licenses/Crypto++.txt","https://github.com/d3v1l401/FindCrypt-Ghidra/releases/tag/1.5"],"category":"native-analysis","description_en":"Ghidra script that ports Ilfak Guilfanov's FindCrypt plugin for IDA, searching a program's memory or the current selection for constants of cryptographic and compression algorithms. Its serialized signature database keeps the original plugin's 79 algorithm constant sets and, by the README's count, holds 122 detectable constants for hash functions, block and stream ciphers, Curve25519 code, Keccak and zlib; when a whole constant is absent, the script also looks for its individual elements and reports partial matches above a detection threshold. Hits become Ghidra bookmarks and a results table from which matching data can be defined.","description_zh":"移植自 Ilfak Guilfanov 为 IDA 编写的 FindCrypt 插件的 Ghidra 脚本，在程序内存或当前选区中查找密码算法与压缩算法的常量。其序列化签名库保留了原插件的 79 组算法常量，按 README 的统计共含 122 个可检测常量，涵盖哈希函数、分组密码与流密码、Curve25519 代码、Keccak 和 zlib；若找不到完整常量，脚本还会查找其中的单个元素，并报告超过检测阈值的部分匹配。命中结果会生成 Ghidra 书签和结果表，可从表中将匹配位置定义为数据。","entry_url":"https://awesomerea.org/resources/findcrypt-ghidra/","entry_url_zh":"https://awesomerea.org/zh/resources/findcrypt-ghidra/","evidence_url":"https://github.com/d3v1l401/FindCrypt-Ghidra/blob/71660fddbe7300acb39e013ad6ad96cd001c0d99/README.md","group":"tools","id":"findcrypt-ghidra","json_url":"https://awesomerea.org/resources/findcrypt-ghidra/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/findcrypt-ghidra/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/findcrypt-ghidra/index.md","name":"FindCrypt - Ghidra Edition","name_zh":"FindCrypt Ghidra 版密码常量识别脚本","record_type":"resource","relationship":"foundation","requirements":["The README says the project is discontinued because its author cannot keep it maintained, and points to forks such as TorgoTorgo/ghidra-findcrypt. The reviewed master commit dates from 2021-03-18; the last release, 1.5 of 2020-04-17, attaches FindCrypt.java and database.d3v, and the script and database both report version 7. No supported Ghidra versions are stated; the installation example path names Ghidra 9.0.","Installation is manual: copy FindCrypt.java into Ghidra's Features/BytePatterns/ghidra_scripts directory and the findcrypt_ghidra database folder into the user's home directory, then run the script from the Script Manager on a program already loaded in Ghidra. Headless runs print the results instead of opening the table.","By default each run contacts raw.githubusercontent.com to compare script and database versions with this repository and downloads a newer database.d3v into the home-directory folder; the README describes the __FORCE_NO_DBUPDATE and __FORCE_NO_SCRIPTUPDATE flags in the script that turn this off.","Detection is a byte search for known constants, so hits mark candidate locations, and code that carries no table constants is not found. New signatures are built with the FCExporter Visual Studio project in Utils, which needs Crypto++ for compression.","GPL-3.0, with the Crypto++ license notice included for the exporter. The README credits Ilfak Guilfanov's original plugin, and the database changelog credits contributor Pawlos with its current format."],"requirements_zh":["README 称作者已无法维护，项目已停止开发，并推荐 TorgoTorgo/ghidra-findcrypt 等分支。所审阅的 master 提交日期为 2021-03-18；最后一个版本 1.5 发布于 2020-04-17，附带 FindCrypt.java 和 database.d3v，脚本与签名库的版本号均为 7。未注明支持哪些 Ghidra 版本，安装示例路径中写的是 Ghidra 9.0。","需要手动安装：将 FindCrypt.java 复制到 Ghidra 的 Features/BytePatterns/ghidra_scripts 目录，将 findcrypt_ghidra 签名库文件夹复制到用户主目录，然后对已在 Ghidra 中载入的程序，从脚本管理器运行该脚本。无界面运行时会直接打印结果，而不打开结果表。","默认情况下，每次运行都会连接 raw.githubusercontent.com，将脚本和签名库版本与本仓库比较，并把更新的 database.d3v 下载到主目录下的文件夹中；README 说明可通过脚本中的 __FORCE_NO_DBUPDATE 和 __FORCE_NO_SCRIPTUPDATE 标志关闭此功能。","检测方式是按字节搜索已知常量，因此命中结果只标出候选位置；不含常量表的代码无法被发现。新增签名需使用 Utils 中的 FCExporter Visual Studio 项目构建，该项目依赖 Crypto++ 进行压缩。","采用 GPL-3.0 许可，并为导出工具附带 Crypto++ 许可声明。README 致谢 Ilfak Guilfanov 的原始插件，签名库更新说明则注明当前格式由贡献者 Pawlos 开发。"],"targets":["binary"],"url":"https://github.com/d3v1l401/FindCrypt-Ghidra","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/lkimuk/ReArk/blob/b4e83376dc0dfd82d26855c07610b135429328e3/README.zh-CN.md","https://github.com/lkimuk/ReArk/blob/b4e83376dc0dfd82d26855c07610b135429328e3/CMakeLists.txt","https://github.com/lkimuk/ReArk/blob/b4e83376dc0dfd82d26855c07610b135429328e3/VERSION","https://github.com/lkimuk/ReArk/tree/b4e83376dc0dfd82d26855c07610b135429328e3/src","https://github.com/lkimuk/ReArk/tree/b4e83376dc0dfd82d26855c07610b135429328e3/plugin","https://github.com/lkimuk/ReArk/tree/b4e83376dc0dfd82d26855c07610b135429328e3/samples","https://github.com/lkimuk/ReArk/blob/b4e83376dc0dfd82d26855c07610b135429328e3/docs/shctf-analysis-path.md","https://github.com/lkimuk/ReArk/blob/b4e83376dc0dfd82d26855c07610b135429328e3/docs/release-management.md","https://github.com/lkimuk/ReArk/blob/b4e83376dc0dfd82d26855c07610b135429328e3/THIRD_PARTY_NOTICES.md","https://github.com/lkimuk/ReArk/blob/b4e83376dc0dfd82d26855c07610b135429328e3/LICENSE","https://github.com/lkimuk/ReArk/releases/tag/v1.1.1","https://github.com/lkimuk/ReArk/releases/tag/v1.1.0","https://github.com/lkimuk/ReArk/releases/tag/v1.0.0","https://github.com/lkimuk/Wuwe/blob/98c3be7a2d337695bfe9fda89fc08a7a377432e9/README.md"],"category":"android","description_en":"Desktop reverse-engineering and AI-assisted analysis workbench for HarmonyOS NEXT packages (.hap, .app and .abc), whose binary releases add Android .apk/.aab, iOS .ipa and standalone PE, ELF and Mach-O analysis. The README describes browsing package structure, resources, signatures and metadata, ABC bytecode disassembly and decompilation with strings and cross-references, Java-like Android decompilation, native header, import and mitigation views, and HDC/ADB device workflows for installing apps, reading logs and mirroring screens. Its built-in ReArk Agent answers questions about the open package with OpenAI-compatible or local Ollama models, retrieving package evidence on demand behind approval flows for host and device actions.","description_zh":"面向 HarmonyOS NEXT 安装包（.hap、.app 和 .abc）的桌面逆向与 AI 辅助分析工作台，其二进制发行版还加入了 Android .apk/.aab、iOS .ipa 以及独立 PE、ELF 和 Mach-O 文件的分析。README 介绍的功能包括浏览包结构、资源、签名和元数据，反汇编和反编译 ABC 字节码并查看字符串与交叉引用，Android 类 Java 反编译，原生文件的头部、导入表和安全缓解措施视图，以及通过 HDC/ADB 安装应用、读取日志和投屏的设备工作流。内置的 ReArk Agent 借助 OpenAI 兼容接口或本地 Ollama 模型回答关于当前包的问题，按需检索包内证据，主机和设备操作需经审批流程。","entry_url":"https://awesomerea.org/resources/reark/","entry_url_zh":"https://awesomerea.org/zh/resources/reark/","evidence_url":"https://github.com/lkimuk/ReArk/blob/b4e83376dc0dfd82d26855c07610b135429328e3/README.md","group":"tools","id":"reark","json_url":"https://awesomerea.org/resources/reark/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/reark/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/reark/index.md","name":"ReArk","name_zh":"ReArk 鸿蒙与移动应用逆向分析工作台","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v1.1.1, published 2026-10-15, with a Windows x64 installer and macOS arm64 and x86_64 disk images; the README lists Windows 10+ and macOS 14.0+ and says Linux is coming in the next release. According to the release notes, Android support arrived in v1.0.0, and iOS, PE, ELF and Mach-O analysis with packer detection in v1.1.0.","The published source lags those releases: the v1.0.0, v1.1.0 and v1.1.1 tags point to commits with no source changes after 2026-07-10, VERSION still reads 0.2.0, and the tree holds HarmonyOS and HDC code but no Android, iOS or native-format backends. Building it needs Qt 6, CMake 3.21+ and C++20 plus the author's hyle package, which CMake requires but which is not published; the optional Wuwe agent runtime is a separate Apache-2.0 repository.","Supply the packages or binaries to analyze yourself. For device and signing workflows the repository bundles plugin/hdc/hdc.exe with libusb_shared.dll and the OpenHarmony hap-sign-tool.jar and app_packing_tool.jar. samples/ holds small HarmonyOS packages (Bridge.hap, contacts.hap, EasyHap-default-unsigned.app and fpt-default-signed.app), the shctf.app and shctf.zip CTF sample documented in docs/shctf-analysis-path.md, and 倩倩手机逆向包.rar, an archive of the fpt sample with its app-data files. THIRD_PARTY_NOTICES lists only Font Awesome icons.","ReArk Agent needs a configured model provider: an OpenAI-compatible endpoint, a provider named in the release notes or a local Ollama model. The README asks users not to send secrets, certificates, user data or trade secrets to remote providers, and limits use to legally authorized reverse engineering, interoperability, malware and security research. The app checks GitHub's latest-release API for updates.","The repository is Apache-2.0; the bundled OpenHarmony tools and icons keep their own licenses, and the release installers contain components absent from the published source. Decompiled output and agent answers still need analyst review."],"requirements_zh":["审阅时最新版本为 v1.1.1，发布于 2026-10-15，提供 Windows x64 安装程序以及 macOS arm64 和 x86_64 磁盘镜像；README 列出 Windows 10+ 和 macOS 14.0+，并称 Linux 版将在下一版本推出。据发行说明，Android 支持始于 v1.0.0，iOS、PE、ELF、Mach-O 分析及加壳检测则在 v1.1.0 加入。","公开源码落后于这些发行版：v1.0.0、v1.1.0 和 v1.1.1 标签所指的提交在 2026-07-10 之后都没有源码改动，VERSION 仍为 0.2.0，源码树只有 HarmonyOS 与 HDC 相关代码，没有 Android、iOS 或原生格式后端。构建需要 Qt 6、CMake 3.21+ 和 C++20，并依赖作者的 hyle 软件包；CMake 将其列为必需项，但该包并未公开。可选的 Wuwe 智能体运行时是另一个 Apache-2.0 仓库。","需自行提供要分析的安装包或二进制文件。为支持设备与签名工作流，仓库附带 plugin/hdc/hdc.exe 及 libusb_shared.dll，以及 OpenHarmony 的 hap-sign-tool.jar 和 app_packing_tool.jar。samples/ 中有几个小型 HarmonyOS 示例包（Bridge.hap、contacts.hap、EasyHap-default-unsigned.app 和 fpt-default-signed.app）、docs/shctf-analysis-path.md 所记录的 shctf.app 与 shctf.zip CTF 样本，以及 倩倩手机逆向包.rar，即 fpt 示例及其应用数据文件的压缩包。THIRD_PARTY_NOTICES 只列出 Font Awesome 图标。","ReArk Agent 需要配置模型服务：OpenAI 兼容接口、发行说明中列出的服务商，或本地 Ollama 模型。README 提醒不要向远程服务商提交密钥、证书、用户数据或商业秘密，并将用途限定为经合法授权的逆向工程、互操作研究、恶意软件分析和安全研究。应用会访问 GitHub 最新版本 API 检查更新。","仓库采用 Apache-2.0 许可证；附带的 OpenHarmony 工具和图标各自保留许可证，发行版安装程序还包含公开源码中没有的组件。反编译结果和智能体回答仍需分析人员复核。"],"targets":["app","binary"],"url":"https://github.com/lkimuk/ReArk","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/binref/refinery/blob/13d8c68863c3d11d4e6cd36007fdd6c53459eda6/README.md#L124-L126","https://github.com/binref/refinery/blob/13d8c68863c3d11d4e6cd36007fdd6c53459eda6/CHANGELOG.md","https://github.com/binref/refinery/blob/13d8c68863c3d11d4e6cd36007fdd6c53459eda6/setup.py","https://github.com/binref/refinery/blob/13d8c68863c3d11d4e6cd36007fdd6c53459eda6/pyproject.toml","https://github.com/binref/refinery/blob/13d8c68863c3d11d4e6cd36007fdd6c53459eda6/refinery/__init__.py","https://github.com/binref/refinery/blob/13d8c68863c3d11d4e6cd36007fdd6c53459eda6/.github/workflows/test.yml","https://github.com/binref/refinery/blob/13d8c68863c3d11d4e6cd36007fdd6c53459eda6/samples/__init__.py","https://github.com/binref/refinery/blob/13d8c68863c3d11d4e6cd36007fdd6c53459eda6/refinery/lib/thirdparty/__init__.py","https://github.com/binref/refinery/blob/13d8c68863c3d11d4e6cd36007fdd6c53459eda6/refinery/lib/seven/__init__.py","https://github.com/binref/refinery/blob/13d8c68863c3d11d4e6cd36007fdd6c53459eda6/LICENSE.md","https://pypi.org/project/binary-refinery/0.11.2/","https://github.com/binref/agent/blob/be019a500f1827c9359c51e9879d6144cb7453de/README.md"],"category":"native-analysis","description_en":"Large collection of composable Python command-line units for transforming binary data: encodings, compression, encryption, archive and executable-format extraction, carving and pattern search. Each unit reads stdin and writes stdout, so units chain into shell pipelines, while framing, multibin arguments and meta variables let one pipeline process many chunks, and the binref command searches unit help. The author describes it as a command-line take on CyberChef focused on malware triage; the README also points to a separate binref/agent repository of instructions for language-model agents that use refinery.","description_zh":"由大量可组合的 Python 命令行单元组成的二进制数据转换工具集，涵盖编码、压缩、加密、归档与可执行文件格式提取、数据切割（carving）和模式搜索。各单元从标准输入读取、向标准输出写入，因此可串联成 shell 管道；分帧（framing）、multibin 参数和元变量使一条管道能处理多个数据块，binref 命令可检索各单元的帮助文本。作者称其为面向恶意软件初步分析、在命令行上实现类似 CyberChef 功能的工具；README 还指向独立的 binref/agent 仓库，其中提供供语言模型智能体使用 refinery 的说明。","entry_url":"https://awesomerea.org/resources/binary-refinery/","entry_url_zh":"https://awesomerea.org/zh/resources/binary-refinery/","evidence_url":"https://github.com/binref/refinery/blob/13d8c68863c3d11d4e6cd36007fdd6c53459eda6/README.md","group":"tools","id":"binary-refinery","json_url":"https://awesomerea.org/resources/binary-refinery/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/binary-refinery/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binary-refinery/index.md","name":"Binary Refinery","name_zh":"Binary Refinery 二进制数据转换工具集","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 0.11.2, uploaded to PyPI on 2026-07-14 and requiring Python 3.10+. The reviewed master commit of 2026-10-11 is 1,138 commits past that tag and still reports version 0.11.2, while its changelog already lists breaking 0.11.3 changes, including Python 3.11+ and renamed meta variables. The README says refinery is still in alpha and that units and parameters can be renamed or removed.","Installed with pip as binary-refinery, preferably into its own virtual environment. The default, extended and all extras add progressively more optional dependencies, and units name a missing dependency when run. Installation creates one shell command per unit, optionally with a prefix to avoid name clashes. The README rates Bash and CMD support as good, PowerShell 7.4+ as reasonable, and Zsh and Fish as having minor issues. Several decompression and cipher routines have Cython extensions next to pure-Python versions.","Inputs are the analyst's own files or data piped on stdin. CI runs pytest on Windows, macOS and Ubuntu with Python 3.11 and 3.13. Tests that need real-world inputs fetch encrypted files from the separate binref/refinery-test-data repository. Unit output depends on the parameters chosen and needs analyst validation.","LICENSE.md is the 3-Clause BSD License, which GitHub does not classify. refinery/lib/thirdparty keeps third-party modules under their own licenses, and refinery/lib/seven ports compression code from 7-Zip."],"requirements_zh":["审阅时最新版本为 0.11.2，于 2026-07-14 上传到 PyPI，要求 Python 3.10+。所审阅的 master 分支提交日期为 2026-10-11，比该标签多 1,138 个提交，版本号仍为 0.11.2，但其更新日志已列出 0.11.3 的不兼容变更，包括要求 Python 3.11+ 以及元变量改名。README 称 refinery 仍处于 alpha 阶段，单元和参数可能被改名或移除。","通过 pip 安装 binary-refinery，建议装在独立的虚拟环境中。default、extended 和 all 三组附加选项依次加入更多可选依赖，运行单元时会提示缺少哪个依赖。安装时会为每个单元创建一条 shell 命令，可加前缀以避免命名冲突。README 将 Bash 和 CMD 的支持评为良好，PowerShell 7.4+ 为尚可，Zsh 和 Fish 存在小问题。若干解压缩和加密例程同时提供 Cython 扩展和纯 Python 版本。","输入为分析者自有的文件或经标准输入管道传入的数据。CI 在 Windows、macOS 和 Ubuntu 上以 Python 3.11 和 3.13 运行 pytest。需要真实样本输入的测试会从独立的 binref/refinery-test-data 仓库获取加密文件。单元输出取决于所选参数，需要分析者核实。","LICENSE.md 为三条款 BSD 许可证，GitHub 未能识别。refinery/lib/thirdparty 中的第三方模块保留各自的许可证，refinery/lib/seven 移植了 7-Zip 的压缩代码。"],"targets":["binary"],"url":"https://github.com/binref/refinery","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/REAndroid/ARSCLib/blob/bd7221b43bc63544e712f3114dac635aa5142519/build.gradle","https://github.com/REAndroid/ARSCLib/blob/bd7221b43bc63544e712f3114dac635aa5142519/.github/workflows/gradle-test.yml","https://github.com/REAndroid/ARSCLib/blob/bd7221b43bc63544e712f3114dac635aa5142519/src/main/java/com/reandroid/dex/README.md","https://github.com/REAndroid/ARSCLib/tree/bd7221b43bc63544e712f3114dac635aa5142519/src/main/java/com/reandroid/apk","https://github.com/REAndroid/ARSCLib/tree/bd7221b43bc63544e712f3114dac635aa5142519/src/main/resources/frameworks/android","https://github.com/REAndroid/ARSCLib/commit/f08adf80672cb7e1a4d1a786e861327fcd3934c5","https://github.com/REAndroid/ARSCLib/blob/bd7221b43bc63544e712f3114dac635aa5142519/LICENSE","https://github.com/REAndroid/ARSCLib/releases/tag/V1.4.0","https://repo1.maven.org/maven2/io/github/reandroid/ARSCLib/maven-metadata.xml","https://github.com/REAndroid/APKEditor/blob/5621fe6750b828ce0bfd99ec7f42ee8b5fe75497/README.md"],"category":"android","description_en":"Java library, modeled on AOSP's androidfw ResourceTypes.h and meant to replace aapt/aapt2, that reads, writes, modifies and creates Android resource tables (resources.arsc) and binary XML files such as AndroidManifest.xml. It decodes resources to readable JSON, which also handles obfuscated names, or to XML source when names are intact, and builds either form back into binary resources; APK module classes decode, merge and write whole packages. It also has an experimental DEX read/write package, and the APKEditor command-line tool is built on it.","description_zh":"参照 AOSP androidfw 中 ResourceTypes.h 的结构开发、旨在取代 aapt/aapt2 的 Java 库，可读取、写入、修改和创建 Android 资源表（resources.arsc）以及 AndroidManifest.xml 等二进制 XML 文件。它能将资源解码为可读的 JSON（也适用于名称已混淆的资源），或在名称完好时解码为 XML 源码，并把这两种形式重新构建为二进制资源；APK 模块类可解码、合并并写出整个安装包。库中另有实验性的 DEX 读写组件，命令行工具 APKEditor 即基于该库开发。","entry_url":"https://awesomerea.org/resources/arsclib/","entry_url_zh":"https://awesomerea.org/zh/resources/arsclib/","evidence_url":"https://github.com/REAndroid/ARSCLib/blob/bd7221b43bc63544e712f3114dac635aa5142519/README.md","group":"tools","id":"arsclib","json_url":"https://awesomerea.org/resources/arsclib/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/arsclib/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/arsclib/index.md","name":"ARSCLib","name_zh":"ARSCLib Android 二进制资源读写库","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: V1.4.0, published 2026-07-01 with an attached ARSCLib-1.4.0.jar; the same version is on Maven Central as io.github.reandroid:ARSCLib. The reviewed main commit, from 2026-10-19, is 34 commits ahead, already sets version 1.4.1 in build.gradle and is labeled part 1 of an overhaul of the library core, so its APIs may differ from the release.","Pure Java with no runtime dependencies (JUnit 4.12 for tests); the Gradle build targets Java 8, ./gradlew jar builds the JAR, and CI runs the unit tests and JAR build on JDK 8. The README says it works on Java platforms including Android, Linux, macOS and Windows. It is used as a Maven dependency or a JAR, not as a standalone command-line tool; the README points to APKEditor for that.","Works on APKs and resource files the user supplies. The README says decoding to XML needs un-obfuscated, valid resource names, so obfuscated tables are decoded to JSON instead, and that building validates far less than aapt/aapt2, leaving the user to know which values Android accepts. The dex package's README calls it experimental and not fully implemented.","src/main/resources/frameworks bundles Android framework resource tables for API levels 23 to 37, each a small APK holding only resources.arsc and AndroidManifest.xml, used to resolve framework references; the commit adding API 37 names Google's platform-37.2-beta3 SDK package as its source. The tests include one small type_id_offset.apk fixture.","Apache-2.0."],"requirements_zh":["审阅时最新版本为 V1.4.0，发布于 2026-07-01，附带 ARSCLib-1.4.0.jar；Maven Central 上的 io.github.reandroid:ARSCLib 也是该版本。所审阅的 main 提交日期为 2026-10-19，比该版本多 34 个提交，build.gradle 已将版本设为 1.4.1，且该提交被标为库核心重构的第一部分，因此其 API 可能与发布版不同。","纯 Java 实现，没有运行时依赖（测试使用 JUnit 4.12）；Gradle 构建以 Java 8 为目标，./gradlew jar 生成 JAR，CI 在 JDK 8 上运行单元测试并构建 JAR。README 称其可在 Android、Linux、macOS 和 Windows 等 Java 平台上运行。它以 Maven 依赖或 JAR 的形式使用，并非独立的命令行工具；README 指向 APKEditor 作为命令行用法。","处理对象为使用者提供的 APK 与资源文件。README 指出，解码为 XML 需要资源名称未经混淆且合法，因此混淆过的资源表应改为解码成 JSON；构建时的校验也远少于 aapt/aapt2，使用者需自行了解 Android 接受哪些取值。dex 组件的 README 称其仍属实验性质，尚未完整实现。","src/main/resources/frameworks 附带 API 级别 23 至 37 的 Android 框架资源表，每个都是只含 resources.arsc 和 AndroidManifest.xml 的小型 APK，用于解析对框架资源的引用；加入 API 37 的提交注明其来源为 Google 的 platform-37.2-beta3 SDK 包。测试中另有一个小型 type_id_offset.apk 夹具。","采用 Apache-2.0 许可。"],"targets":["app"],"url":"https://github.com/REAndroid/ARSCLib","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/Pithus/bazaar/blob/3217f72f90fb95afcc9454ba8814b57a02acd56b/bazaar/core/tasks.py","https://github.com/Pithus/bazaar/blob/3217f72f90fb95afcc9454ba8814b57a02acd56b/bazaar/core/modules/pithus.py","https://github.com/Pithus/bazaar/blob/3217f72f90fb95afcc9454ba8814b57a02acd56b/bazaar/core/modules/virus_total.py","https://github.com/Pithus/bazaar/blob/3217f72f90fb95afcc9454ba8814b57a02acd56b/bazaar/core/modules/malware_bazaar.py","https://github.com/Pithus/bazaar/blob/3217f72f90fb95afcc9454ba8814b57a02acd56b/bazaar/core/management/commands/upload_to_mb.py","https://github.com/Pithus/bazaar/blob/3217f72f90fb95afcc9454ba8814b57a02acd56b/bazaar/core/services/apk.py","https://github.com/Pithus/bazaar/blob/3217f72f90fb95afcc9454ba8814b57a02acd56b/local.yml","https://github.com/Pithus/bazaar/blob/3217f72f90fb95afcc9454ba8814b57a02acd56b/requirements/base.txt","https://github.com/Pithus/bazaar/blob/3217f72f90fb95afcc9454ba8814b57a02acd56b/config/settings/base.py","https://github.com/Pithus/bazaar/blob/3217f72f90fb95afcc9454ba8814b57a02acd56b/compose/local/django/Dockerfile","https://github.com/Pithus/bazaar/blob/3217f72f90fb95afcc9454ba8814b57a02acd56b/.github/workflows/ci.yml","https://github.com/Pithus/bazaar/blob/3217f72f90fb95afcc9454ba8814b57a02acd56b/tests/conftest.py","https://github.com/Pithus/bazaar/blob/3217f72f90fb95afcc9454ba8814b57a02acd56b/LICENSE","https://github.com/Pithus/bazaar/releases/tag/v1.0.1-beta","https://github.com/Pithus/bazaar/releases/tag/v1.0.0-beta"],"category":"android","description_en":"Self-hostable Django platform behind the Pithus Android analysis service, which its README describes as built for activists, journalists, NGOs and researchers. An uploaded APK is stored under its SHA-256 and queued for static analyses: Androguard attribute and class extraction, APKiD compiler and packer identification, ssdeep and Dexofuzzy similarity, Quark-Engine behavior rules, androcfg call graphs, Exodus tracker signatures, a MobSF static report, APK signing-block metadata and analyst-written YARA rules with retrohunts over stored samples. Results are indexed in Elasticsearch and shown as web reports and through a REST API, optionally enriched with MalwareBazaar, VirusTotal, MISP and Google Play lookups.","description_zh":"Pithus Android 应用分析服务背后的可自托管 Django 平台，README 称其面向活动人士、记者、非政府组织和研究人员。上传的 APK 以 SHA-256 为名保存，并排队执行多项静态分析：用 Androguard 提取属性与类，用 APKiD 识别编译器与加壳工具，用 ssdeep 和 Dexofuzzy 计算相似度，用 Quark-Engine 规则识别行为，用 androcfg 生成调用图，匹配 Exodus 跟踪器特征，生成 MobSF 静态报告，读取 APK 签名块元数据，并运行分析者编写的 YARA 规则，还可对已存样本进行回溯检索。结果写入 Elasticsearch，以网页报告和 REST API 呈现，并可选用 MalwareBazaar、VirusTotal、MISP 和 Google Play 查询补充信息。","entry_url":"https://awesomerea.org/resources/pithus-bazaar/","entry_url_zh":"https://awesomerea.org/zh/resources/pithus-bazaar/","evidence_url":"https://github.com/Pithus/bazaar/blob/3217f72f90fb95afcc9454ba8814b57a02acd56b/README.md","group":"tools","id":"pithus-bazaar","json_url":"https://awesomerea.org/resources/pithus-bazaar/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pithus-bazaar/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pithus-bazaar/index.md","name":"Pithus (bazaar)","name_zh":"Pithus（bazaar）Android 应用分析平台","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v1.0.1-beta, published 2026-10-12, a bug-fix and dependency update to v1.0.0-beta of 2026-09-21. That release upgraded the 2021 code base, rewrote the API with a separate Python client and is not compatible with earlier Pithus data; its notes say import documentation will follow. The reviewed master commit, from 2026-10-16, is 27 commits later and adds a MISP connector. A hosted beta runs at beta.pithus.org.","The README documents a Linux development stack started with docker-compose -f local.yml and served at localhost:8001, and warns that a missing-index error may appear on first load. The stack runs a Python 3.13 Django 6 app with a django-q worker, PostgreSQL, Redis, Elasticsearch and Kibana 8.19 with a 2 GB Elasticsearch heap, MobSF v4.5.3, RustFS S3-compatible storage and Prometheus; separate compose files cover Apple M1, staging and production.","Input is an APK uploaded through the web interface or API, or fetched from a URL. VirusTotal and MalwareBazaar lookups send the sample's SHA-256 to those services with configured API keys, MISP matching needs a MISP URL and key, Google Play metadata is scraped by package name, tracker signatures are downloaded from Exodus Privacy at analysis time, and an upload_to_mb management command uploads stored samples to MalwareBazaar when an operator runs it.","The analysis tasks are static or lookup-based; no dynamic or sandboxed execution is part of the pipeline, and rule, similarity and reputation results are indicators. The pytest suite mocks Elasticsearch and storage and uses tests/_data/test.apk, a project-built sample app with the package com.pithus.basicapp. The CI pytest job is commented out, so CI lints, runs bandit and builds and pushes Docker images. Quark-Engine is installed from a fork, and quark-rules holds 280 rule files.","AGPL-3.0; the bundled front-end libraries and the analyzers it calls, including MobSF, keep their own licenses."],"requirements_zh":["审阅时最新版本为 v1.0.1-beta，发布于 2026-10-12，是对 2026-09-21 发布的 v1.0.0-beta 的缺陷修复与依赖更新。v1.0.0-beta 升级了 2021 年的旧代码库，重写了 API 并另行提供 Python 客户端，且与早期 Pithus 数据不兼容；其发布说明称导入文档将在日后提供。所审阅的 master 提交日期为 2026-10-16，比该版本多 27 个提交，新增了 MISP 连接器。托管的测试版服务位于 beta.pithus.org。","README 说明的是在 Linux 上用 docker-compose -f local.yml 启动的开发环境，服务地址为 localhost:8001，并提醒首次打开时可能出现缺少索引的错误。该环境运行基于 Python 3.13 和 Django 6 的应用及 django-q 工作进程，以及 PostgreSQL、Redis、Elasticsearch 和 Kibana 8.19（Elasticsearch 堆内存设为 2 GB）、MobSF v4.5.3、兼容 S3 的 RustFS 存储和 Prometheus；另有用于 Apple M1、预发布和生产环境的 compose 文件。","输入为通过网页界面或 API 上传的 APK，也可从 URL 获取。VirusTotal 与 MalwareBazaar 查询会使用已配置的 API 密钥，把样本的 SHA-256 发送给这些服务；MISP 匹配需要 MISP 地址和密钥；Google Play 元数据按包名抓取；跟踪器特征在分析时从 Exodus Privacy 下载；运维人员运行 upload_to_mb 管理命令时，会把已存样本上传到 MalwareBazaar。","分析任务均为静态分析或外部查询，流程中没有动态执行或沙箱运行；规则、相似度和信誉服务的结果只是迹象。pytest 测试模拟了 Elasticsearch 和存储，并使用 tests/_data/test.apk，这是项目自行构建、包名为 com.pithus.basicapp 的示例应用。CI 中的 pytest 任务已被注释掉，因此 CI 只做代码检查、运行 bandit，并构建和推送 Docker 镜像。Quark-Engine 从一个分支仓库安装，quark-rules 目录收录 280 个规则文件。","采用 AGPL-3.0 许可；随附的前端库及其调用的分析工具（包括 MobSF）各自保留其许可证。"],"targets":["app"],"url":"https://github.com/Pithus/bazaar","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/Nalen98/AngryGhidra/blob/0e6dc9c695de654367fbc0d9cd123a86791bff4d/angryghidra_script/angryghidra.py","https://github.com/Nalen98/AngryGhidra/blob/0e6dc9c695de654367fbc0d9cd123a86791bff4d/src/main/java/angryghidra/AngrProcessing.java","https://github.com/Nalen98/AngryGhidra/blob/0e6dc9c695de654367fbc0d9cd123a86791bff4d/src/main/java/angryghidra/AngryGhidraProvider.java","https://github.com/Nalen98/AngryGhidra/blob/0e6dc9c695de654367fbc0d9cd123a86791bff4d/build.gradle","https://github.com/Nalen98/AngryGhidra/blob/0e6dc9c695de654367fbc0d9cd123a86791bff4d/extension.properties","https://github.com/Nalen98/AngryGhidra/blob/0e6dc9c695de654367fbc0d9cd123a86791bff4d/LICENSE.md","https://github.com/Nalen98/AngryGhidra/releases/tag/1.1","https://github.com/Nalen98/AngryGhidra/releases/tag/0.1"],"category":"native-analysis","description_en":"Ghidra extension that runs angr symbolic execution from a CodeBrowser panel. The analyst marks a destination address, an optional start address and addresses to avoid with hotkeys, and can make program arguments, memory ranges or registers symbolic, write concrete values into memory and registers, hook instructions or apply bytes patched in Ghidra to the angr project. A bundled Python script runs angr's explorer on the program's original file, the listing highlights the instructions along the path it finds, and the panel shows the argument, memory and stdin values that reach the destination.","description_zh":"在 CodeBrowser 面板中调用 angr 符号执行的 Ghidra 扩展。分析者可用快捷键标记目标地址、可选的起始地址和需要避开的地址，并可将程序参数、内存区域或寄存器设为符号值，向内存和寄存器写入具体值，钩住指定指令，或把在 Ghidra 中修补的字节应用到 angr 项目。随附的 Python 脚本对程序的原始文件运行 angr 路径探索，反汇编列表会高亮找到的路径上的指令，面板则显示能到达目标地址的参数、内存和标准输入取值。","entry_url":"https://awesomerea.org/resources/angryghidra/","entry_url_zh":"https://awesomerea.org/zh/resources/angryghidra/","evidence_url":"https://github.com/Nalen98/AngryGhidra/blob/0e6dc9c695de654367fbc0d9cd123a86791bff4d/README.md","group":"tools","id":"angryghidra","json_url":"https://awesomerea.org/resources/angryghidra/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/angryghidra/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/angryghidra/index.md","name":"AngryGhidra","name_zh":"AngryGhidra Ghidra 符号执行插件","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 1.1, published 2024-02-13, with prebuilt extension archives for Ghidra 11.0 and 11.0.1; the older 0.1 release carries builds for Ghidra 9.1.2 through 10.3. The reviewed master commit of 2024-07-29 is two commits later, changing the plugin type and the README. Compatibility with newer Ghidra releases is not stated.","Install angr with pip for Python 3 and put python3 on the PATH; the plugin starts the bundled angryghidra.py as an external process and passes the analyst's settings through a temporary angr_options.json file. No angr version is pinned. Building from source uses Gradle with GHIDRA_INSTALL_DIR, followed by File → Install Extensions in Ghidra; if no new-plugin prompt appears, enable AngryGhidraPlugin under File → Configure → Miscellaneous.","angr loads the binary from the path Ghidra recorded at import, so the original file must still be there; raw binaries are loaded as blobs with the architecture of the Ghidra language. The analyst supplies the binary and chooses the find, avoid, hook and symbolic-input settings. Path explosion, unmodeled environment behavior and solver limits remain angr's, and a found path gives one satisfying input.","The README demonstrates it on the SecurityFest 2016 fairlight CTF challenge from angr's examples; no other results or tests are published. MIT license."],"requirements_zh":["审阅时最新版本为 1.1，发布于 2024-02-13，提供适用于 Ghidra 11.0 和 11.0.1 的预构建扩展包；较早的 0.1 版本附有 Ghidra 9.1.2 至 10.3 的构建。所审阅的 master 分支提交日期为 2024-07-29，比该版本多两个提交，改动了插件类型和 README。项目未说明与更新 Ghidra 版本的兼容性。","需用 pip 为 Python 3 安装 angr，并将 python3 加入 PATH；插件以外部进程运行随附的 angryghidra.py，并通过临时文件 angr_options.json 传递分析者的设置。项目未固定 angr 版本。从源码构建时需设置 GHIDRA_INSTALL_DIR 并使用 Gradle，再在 Ghidra 中通过 File → Install Extensions 安装；若未弹出新插件提示，可在 File → Configure → Miscellaneous 中启用 AngryGhidraPlugin。","angr 会从 Ghidra 导入时记录的路径加载二进制文件，因此原始文件必须仍在该位置；原始二进制（Raw Binary）会按 Ghidra 语言对应的架构以 blob 方式加载。二进制文件以及寻找、避开、钩子和符号输入等设置都由分析者提供。路径爆炸、未建模的环境行为和求解器限制仍取决于 angr；找到的路径只给出一个满足条件的输入。","README 以 angr 示例中的 SecurityFest 2016 fairlight CTF 题目作演示；项目未发布其他结果或测试。采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/Nalen98/AngryGhidra","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/ttdennis/fpicker/blob/04f4b06b6c7a209986594a51bd51c8d8af7a75ea/Makefile","https://github.com/ttdennis/fpicker/blob/04f4b06b6c7a209986594a51bd51c8d8af7a75ea/harness/fuzzer.js","https://github.com/ttdennis/fpicker/blob/04f4b06b6c7a209986594a51bd51c8d8af7a75ea/harness/stalker-instrumentation.js","https://github.com/ttdennis/fpicker/blob/04f4b06b6c7a209986594a51bd51c8d8af7a75ea/examples/protocol_example/README.md","https://github.com/ttdennis/fpicker/tree/04f4b06b6c7a209986594a51bd51c8d8af7a75ea/examples","https://github.com/ttdennis/fpicker/blob/04f4b06b6c7a209986594a51bd51c8d8af7a75ea/LICENSE","https://github.com/ttdennis/fpicker/commit/04f4b06b6c7a209986594a51bd51c8d8af7a75ea"],"category":"dynamic-analysis","description_en":"Frida-based fuzzing suite for closed-source programs, listed here for its in-process instrumentation and coverage layer. A JavaScript harness injected with Frida starts Stalker at an analyst-chosen function and records the basic blocks executed in the target module on each call, feeding either AFL++'s coverage bitmap or fpicker's own standalone mode. Its passive mode works as a tracer: it attaches to a running process without sending inputs and stores each input that reaches the function together with new coverage, on the local host or on USB and network devices running frida-server.","description_zh":"基于 Frida 的闭源程序模糊测试套件，本条目收录的是其进程内插桩与覆盖率采集部分。经 Frida 注入的 JavaScript 测试框架会在分析者选定的函数处启动 Stalker，记录每次调用时目标模块中执行过的基本块，再提供给 AFL++ 的覆盖率位图或 fpicker 自己的独立模式。其被动模式相当于跟踪器：附加到正在运行的进程而不发送输入，并在出现新覆盖时保存到达该函数的输入及对应覆盖信息，可用于本机，也可用于通过 USB 或网络连接、运行 frida-server 的设备。","entry_url":"https://awesomerea.org/resources/fpicker/","entry_url_zh":"https://awesomerea.org/zh/resources/fpicker/","evidence_url":"https://github.com/ttdennis/fpicker/blob/04f4b06b6c7a209986594a51bd51c8d8af7a75ea/README.md","group":"tools","id":"fpicker","json_url":"https://awesomerea.org/resources/fpicker/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/fpicker/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fpicker/index.md","name":"fpicker","name_zh":"fpicker Frida 插桩与覆盖率采集套件","record_type":"resource","relationship":"foundation","requirements":["There are no releases or tags. The reviewed main commit, from 2025-07-24, moves the harness to the Frida 17 APIs, and the Makefile pins frida-core 17.2.14. The README points to a 2021 blog post for background and says fpicker builds on ToothPicker, developed during the author's master's thesis, and was mostly written at ERNW.","make fpicker-macos, fpicker-linux or fpicker-ios builds the C host program; the Makefile downloads the matching frida-core devkit from Frida's GitHub releases, although the README still describes placing the devkit files by hand. iOS builds use Xcode's iPhoneOS SDK on macOS, harness scripts are bundled with frida-compile, and AFL++ is needed only for AFL++ mode, built with USEMMAP on macOS and iOS.","Each target needs a hand-written harness that names the function where instrumentation starts and, for in-process input, how to call it, so that function and its arguments must first be identified in the target. The README warns that coverage becomes unreliable if the function runs more than once per iteration. Shared-memory communication is unavailable for USB-attached devices, and attach mode does not respawn a target that crashes.","Coverage covers basic blocks in the target module during the instrumented call, not a whole-program trace. The examples are small project-written C programs with seed inputs and slides from a WiSec 2021 tutorial; the repository has no automated tests or CI.","MIT; Frida and AFL++ are separate projects with their own licenses."],"requirements_zh":["项目没有发行版或标签。所审阅的 main 提交日期为 2025-07-24，将测试框架迁移到 Frida 17 API，Makefile 固定使用 frida-core 17.2.14。README 提供了一篇 2021 年博客文章作为背景，并称 fpicker 基于作者硕士论文期间开发的 ToothPicker，大部分在 ERNW 工作期间完成。","make fpicker-macos、fpicker-linux 或 fpicker-ios 用于构建 C 语言主程序；Makefile 会从 Frida 的 GitHub 发行页下载对应的 frida-core 开发包，但 README 仍描述手动放置开发包文件的旧做法。iOS 构建需在 macOS 上使用 Xcode 的 iPhoneOS SDK；测试框架脚本用 frida-compile 打包；只有 AFL++ 模式需要 AFL++，在 macOS 和 iOS 上须以 USEMMAP 编译。","每个目标都需要手写测试框架，指明插桩开始的函数，进程内输入时还需说明如何调用该函数，因此须先在目标中确定该函数及其参数。README 提醒，若该函数在一次迭代中运行多次，覆盖率信息会变得不可靠。通过 USB 连接的设备无法使用共享内存通信，附加模式下目标崩溃后也不会重新启动。","覆盖率仅涵盖插桩调用期间目标模块内的基本块，并非整个程序的跟踪。示例为项目自行编写的小型 C 程序及种子输入，另附 WiSec 2021 教程的幻灯片；仓库没有自动化测试或 CI。","采用 MIT 许可；Frida 和 AFL++ 是各自采用其许可证的独立项目。"],"targets":["app","binary"],"url":"https://github.com/ttdennis/fpicker","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/i-soxi/even-g2-protocol/blob/b227335f5fbecb7d4ede3748c36e098ef88850fa/docs/ble-uuids.md","https://github.com/i-soxi/even-g2-protocol/blob/b227335f5fbecb7d4ede3748c36e098ef88850fa/docs/packet-structure.md","https://github.com/i-soxi/even-g2-protocol/blob/b227335f5fbecb7d4ede3748c36e098ef88850fa/docs/services.md","https://github.com/i-soxi/even-g2-protocol/blob/b227335f5fbecb7d4ede3748c36e098ef88850fa/docs/teleprompter.md","https://github.com/i-soxi/even-g2-protocol/blob/b227335f5fbecb7d4ede3748c36e098ef88850fa/proto/g2_protocol.proto","https://github.com/i-soxi/even-g2-protocol/blob/b227335f5fbecb7d4ede3748c36e098ef88850fa/examples/teleprompter/teleprompter.py","https://github.com/i-soxi/even-g2-protocol/blob/b227335f5fbecb7d4ede3748c36e098ef88850fa/examples/teleprompter/README.md","https://github.com/i-soxi/even-g2-protocol/blob/b227335f5fbecb7d4ede3748c36e098ef88850fa/CONTRIBUTING.md"],"category":"reconstruction-cases","description_en":"Documents the Bluetooth Low Energy protocol between the Even app and Even Realities G2 smart glasses, worked out from captured traffic: GATT characteristic UUIDs, an 8-byte transport header with sequence, multi-packet and two-byte service-ID fields, a CRC-16/CCITT over the payload, and protobuf payloads with draft .proto definitions. A Python example built on bleak sends the seven-packet session handshake and drives the teleprompter service to show custom text. The README’s status table marks connection, handshake, teleprompter and calendar widget as working, notifications as partial, and Even AI and navigation as still under research.","description_zh":"记录 Even 应用与 Even Realities G2 智能眼镜之间的低功耗蓝牙协议，依据抓取的通信流量推断得出：包括 GATT 特征 UUID、含序号、分包和双字节服务 ID 字段的 8 字节传输头、针对载荷计算的 CRC-16/CCITT，以及 protobuf 编码的载荷和初步的 .proto 定义。基于 bleak 的 Python 示例会发送七个报文的会话握手，并调用提词器服务显示自定义文字。README 的状态表将连接、握手、提词器和日历小组件标为可用，通知标为部分可用，Even AI 和导航仍在研究中。","entry_url":"https://awesomerea.org/resources/even-g2-ble-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/even-g2-ble-protocol-case/","evidence_url":"https://github.com/i-soxi/even-g2-protocol/blob/b227335f5fbecb7d4ede3748c36e098ef88850fa/README.md","group":"cases","id":"even-g2-ble-protocol-case","json_url":"https://awesomerea.org/resources/even-g2-ble-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/even-g2-ble-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/even-g2-ble-protocol-case/index.md","name":"Even G2 protocol: reverse-engineering Even Realities G2 smart-glasses BLE traffic","name_zh":"Even G2 协议：逆向分析 Even Realities G2 智能眼镜的 BLE 通信","record_type":"resource","relationship":"independent-reconstruction","requirements":["The reviewed main commit of 2026-01-03 is a documentation snapshot with no releases or tags. Only the teleprompter has example code, and docs/teleprompter.md is marked work in progress; the .proto header says field numbers and types are inferred from captured packets and may be incomplete or wrong, and several field meanings carry question marks. The README reports the calendar widget working but includes no calendar example or detailed format, and CONTRIBUTING.md labels Even AI “Cracked!” with its request format unclear while the README still lists it as research.","Using the example needs Even G2 glasses and a host with BLE and Python with bleak 0.21+; it scans for device names containing G2 and connects to the left arm’s device, or the right one with --right. The README says the glasses use standard BLE with no special pairing, and the example’s handshake consists of fixed capability messages and the current time, with no keys. The repository contains no Even app or glasses firmware.","CONTRIBUTING.md describes collecting Android Bluetooth HCI snoop logs while using features in the official app, and the repository commits four such raw logs from the author’s sessions; they are not limited to the glasses’ traffic. No tests or verification beyond the README’s status table are provided.","No license file is present and GitHub detects none, so the documentation and code carry no reuse grant. The README calls this an unofficial community project for educational purposes, not affiliated with Even Realities, and credits the Even Realities community with the protocol research."],"requirements_zh":["所审阅的 main 提交（2026-01-03）是一份文档快照，没有发布版本或标签。只有提词器附带示例代码，docs/teleprompter.md 也标注为仍在编写中；.proto 文件开头说明字段编号和类型是从抓包推断的，可能不完整或有误，部分字段含义还带有问号。README 称日历小组件可用，但没有提供日历示例或详细格式；CONTRIBUTING.md 将 Even AI 标为“Cracked!”，同时注明请求格式尚不清楚，而 README 仍将其列为研究中。","运行示例需要 Even G2 眼镜，以及支持 BLE、装有 Python 和 bleak 0.21+ 的主机；示例会扫描名称含 G2 的设备，默认连接左侧镜腿的设备，加 --right 则连接右侧。README 称眼镜使用标准 BLE，无需特殊配对；示例中的握手由固定的能力查询报文和当前时间组成，不含任何密钥。仓库不包含 Even 应用或眼镜固件。","CONTRIBUTING.md 介绍了在官方应用中使用各项功能时采集 Android 蓝牙 HCI snoop 日志的方法，仓库也提交了作者会话中的四份原始日志；这些日志并不只包含眼镜的通信。除 README 的状态表外，项目没有提供测试或其他验证。","仓库没有许可证文件，GitHub 也未检测到许可证，因此文档和代码均未授予再使用权利。README 称这是用于教育目的的非官方社区项目，与 Even Realities 无关，并将协议研究归功于 Even Realities 社区。"],"targets":["protocol"],"url":"https://github.com/i-soxi/even-g2-protocol","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/HexHive/retrowrite/blob/3b1e366ff8d2449a4f4c3157dd95c6f39c0a310b/retrowrite#L160-L200","https://github.com/HexHive/retrowrite/blob/3b1e366ff8d2449a4f4c3157dd95c6f39c0a310b/requirements.txt","https://github.com/HexHive/retrowrite/blob/3b1e366ff8d2449a4f4c3157dd95c6f39c0a310b/setup.py","https://github.com/HexHive/retrowrite/blob/3b1e366ff8d2449a4f4c3157dd95c6f39c0a310b/.github/workflows/action.yml","https://github.com/HexHive/retrowrite/blob/3b1e366ff8d2449a4f4c3157dd95c6f39c0a310b/demos/fuzzing/README.md","https://github.com/HexHive/retrowrite/blob/3b1e366ff8d2449a4f4c3157dd95c6f39c0a310b/demos/fuzzing/docker/README.md","https://github.com/HexHive/retrowrite/blob/3b1e366ff8d2449a4f4c3157dd95c6f39c0a310b/demos/kernel_demo/README.md","https://github.com/HexHive/retrowrite/blob/3b1e366ff8d2449a4f4c3157dd95c6f39c0a310b/LICENSE","https://doi.org/10.1109/SP40000.2020.00009","https://hexhive.epfl.ch/theses/20-dibartolomeo-thesis.pdf"],"category":"native-analysis","description_en":"HexHive's static binary rewriter for x64 and aarch64 Linux ELF binaries, which turns a binary into symbolized, reassemblable assembly so instrumentation can be inserted without source code and without heuristics. Bundled passes add a binary-only AddressSanitizer and AFL coverage instrumentation, plus a coarse-grained control-flow-integrity pass on aarch64, and the symbolized assembly can also be edited by hand or by other tools before reassembly. The KRetrowrite variant of the x64 rewriter instruments Linux kernel modules with BASan or kcov for kernel fuzzing.","description_zh":"HexHive 开发的静态二进制改写工具，面向 x64 与 aarch64 的 Linux ELF 二进制：将二进制转换为符号化、可重新汇编的汇编代码，从而无需源码、也不依赖启发式规则即可插入插桩。附带的改写模块可添加仅针对二进制的 AddressSanitizer 和 AFL 覆盖率插桩，aarch64 上另有函数入口粗粒度控制流完整性模块；符号化的汇编也可在重新汇编前手工或用其他工具修改。x64 改写器的 KRetrowrite 变体可用 BASan 或 kcov 为 Linux 内核模块插桩，用于内核模糊测试。","entry_url":"https://awesomerea.org/resources/retrowrite/","entry_url_zh":"https://awesomerea.org/zh/resources/retrowrite/","evidence_url":"https://github.com/HexHive/retrowrite/blob/3b1e366ff8d2449a4f4c3157dd95c6f39c0a310b/README.md","group":"tools","id":"retrowrite","json_url":"https://awesomerea.org/resources/retrowrite/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/retrowrite/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/retrowrite/index.md","name":"RetroWrite","name_zh":"RetroWrite 静态二进制改写框架","record_type":"resource","relationship":"foundation","requirements":["There are no releases or tags, and setup.py says 1.0.0. The reviewed master commit, from 2025-04-26, adjusts an x64 pass added four days earlier that randomizes instruction order within functions; before that, the latest commits, from 2023 and 2024, fixed capstone options and executable stacks on older kernels.","Written in Python 3 (the README names 3.6) with pyelftools, capstone 4.0.2 or later, intervaltree and archinfo pinned to 9.1.11752, which the README says to install with pip rather than from distribution packages. x64 output is reassembled with an ordinary compiler such as gcc, linking -lasan for BASan, or with afl-gcc or afl-clang for AFL coverage; on aarch64, retrowrite -a assembles and links. The README's KRetrowrite setup calls a setup.sh that sits in the demo folders rather than at the repository root.","Inputs are the user's own binaries or kernel modules. Per the README feature table, the x64 rewriter needs position-independent, unstripped binaries from standard compilers and has no C++ support, while the aarch64 rewriter also takes stripped and non-PIE binaries but not kernel modules or C++; --ignore-no-pie and --ignore-stripped skip the checks, to be used with caution. The two architectures use different rewriting algorithms: the IEEE S&P 2020 paper describes the x64 version and a separate HexHive thesis the aarch64 version.","CI runs a SPEC CPU benchmark script on a self-hosted runner, and test scripts clone and rewrite coreutils, SQLite and Debian packages. Demos cover userspace, kernel-module and fuzzing setups; the Docker fuzzing demo bundles fuzz seeds and a patched AFL 2.52b archive but also needs a self-built clang 8, a git bundle of the repository and the separately downloaded LAVA-M corpus, and kernel fuzzing setup downloads about 10 GB of syzkaller VM files.","MIT according to the LICENSE file and README, although GitHub does not recognize the license; capstone is included as a submodule under its own license."],"requirements_zh":["没有发布版本或标签，setup.py 标注的版本为 1.0.0。所审阅的 master 提交日期为 2025-04-26，调整了四天前新增的一个 x64 改写模块，该模块会打乱函数内的指令顺序；在此之前的最近提交来自 2023 和 2024 年，修复了 capstone 选项以及旧内核上的可执行栈问题。","以 Python 3 编写（README 写明 3.6），依赖 pyelftools、capstone 4.0.2 或更高版本、intervaltree，以及固定为 9.1.11752 的 archinfo；README 建议用 pip 安装这些依赖，而不要使用发行版软件包。x64 输出可用 gcc 等普通编译器重新汇编，BASan 需链接 -lasan，AFL 覆盖率则改用 afl-gcc 或 afl-clang；在 aarch64 上由 retrowrite -a 完成汇编和链接。README 中 KRetrowrite 的安装步骤调用 setup.sh，但该脚本位于各演示目录中，而不在仓库根目录。","输入为使用者自己的二进制或内核模块。根据 README 的功能表，x64 改写器要求位置无关、未去除符号且由标准编译器生成的二进制，不支持 C++；aarch64 改写器还能处理去除符号和非 PIE 的二进制，但不支持内核模块和 C++；--ignore-no-pie 与 --ignore-stripped 可跳过这些检查，需谨慎使用。两种架构采用不同的改写算法：IEEE S&P 2020 论文介绍 x64 版本，另一篇 HexHive 学位论文介绍 aarch64 版本。","CI 在自托管运行器上执行 SPEC CPU 基准脚本，测试脚本会克隆并改写 coreutils、SQLite 和 Debian 软件包。演示涵盖用户态、内核模块和模糊测试环境；Docker 模糊测试演示附带模糊测试种子和打过补丁的 AFL 2.52b 压缩包，但还需要自行构建的 clang 8、仓库的 git bundle 以及另行下载的 LAVA-M 语料；内核模糊测试的安装会下载约 10 GB 的 syzkaller 虚拟机文件。","依据 LICENSE 文件与 README 采用 MIT 许可，但 GitHub 未能识别该许可；capstone 以子模块形式引入，适用其自身许可。"],"targets":["binary"],"url":"https://github.com/HexHive/retrowrite","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/nccgroup/house/blob/c3641e300d9c40568cd57dce1884f1a96c4c7849/requirements.txt","https://github.com/nccgroup/house/blob/c3641e300d9c40568cd57dce1884f1a96c4c7849/Pipfile","https://github.com/nccgroup/house/blob/c3641e300d9c40568cd57dce1884f1a96c4c7849/app.py","https://github.com/nccgroup/house/blob/c3641e300d9c40568cd57dce1884f1a96c4c7849/scripts/monitor/monitor_hook.json","https://github.com/nccgroup/house/tree/c3641e300d9c40568cd57dce1884f1a96c4c7849/test_apk","https://github.com/nccgroup/house/blob/c3641e300d9c40568cd57dce1884f1a96c4c7849/LICENSE"],"category":"android","description_en":"NCC Group’s Python and Flask web interface for Frida-based runtime analysis of Android apps, intended to make writing Frida scripts simpler. From a local browser page the analyst can enumerate loaded classes, the classes in a DEX file, class loaders and a class’s methods, then generate and keep tracing scripts for several functions, including ones in dynamically loaded DEX or JAR files. A configurable monitor logs file, HTTP, WebView, SQL, IPC and SharedPreferences calls.","description_zh":"NCC Group 基于 Python 和 Flask 开发的网页界面，用于借助 Frida 对 Android 应用进行运行时分析，旨在简化 Frida 脚本的编写。分析者可在本地浏览器页面中枚举已加载的类、DEX 文件中的类、类加载器及某个类的方法，再为多个函数生成并保存跟踪脚本，其中包括动态加载的 DEX 或 JAR 文件中的函数。可配置的监控功能会记录文件、HTTP、WebView、SQL、IPC 和 SharedPreferences 相关调用。","entry_url":"https://awesomerea.org/resources/house/","entry_url_zh":"https://awesomerea.org/zh/resources/house/","evidence_url":"https://github.com/nccgroup/house/blob/c3641e300d9c40568cd57dce1884f1a96c4c7849/README.md","group":"tools","id":"house","json_url":"https://awesomerea.org/resources/house/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/house/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/house/index.md","name":"House","name_zh":"House Android 运行时分析工具","record_type":"resource","relationship":"foundation","requirements":["The reviewed master commit c3641e3 dates from 2020-12-27; the project has no releases or tags. The README says House was tested with Frida 12.8.6 and needs Frida 12.8.3 or later for DEX/JAR hooking, while requirements.txt and the Pipfile leave frida unpinned, so current Frida releases may not work without changes.","Runs from source with Python 3 and pip or pipenv (Flask, Flask-SocketIO 4.3.2, Flask-Login, Jinja2, IPython and frida), serving the interface on 127.0.0.1, port 8000 by default. The README requires a rooted Android device connected over USB with a frida-server matching the local frida-python version, and recommends attaching only one USB device. The Stetho sideload option expects the analyst to place a stetho.jar on the device; it is not bundled.","The repository bundles the README’s demo app test_apk/overloads.apk (package com.ha0k3.overloads) and a small test_apk/dyhello.dex as test fixtures, plus copies of the Ace editor and Bootstrap for the web interface. The monitor’s hook list in scripts/monitor/monitor_hook.json is described as experimental. Intended for apps the analyst is authorized to test.","MIT (NCC Group). Frida and the bundled web libraries keep their own licenses."],"requirements_zh":["所审阅的 master 分支提交 c3641e3 日期为 2020-12-27；项目没有发布版本或标签。README 称 House 在 Frida 12.8.6 上测试，DEX/JAR 挂钩需要 Frida 12.8.3 或更高版本，而 requirements.txt 与 Pipfile 未固定 frida 版本，因此当前的 Frida 版本可能需要修改后才能使用。","从源码运行，需要 Python 3 及 pip 或 pipenv（Flask、Flask-SocketIO 4.3.2、Flask-Login、Jinja2、IPython 和 frida），界面默认在 127.0.0.1 的 8000 端口提供。README 要求一台通过 USB 连接、已 root 的 Android 设备，并运行与本地 frida-python 版本一致的 frida-server，建议只连接一台 USB 设备。Stetho 侧载选项要求分析者自行把 stetho.jar 放到设备上，仓库不附带该文件。","仓库附带 README 演示所用的测试应用 test_apk/overloads.apk（包名 com.ha0k3.overloads）和一个小型 test_apk/dyhello.dex 作为测试样本，并为网页界面附带 Ace 编辑器与 Bootstrap 的副本。scripts/monitor/monitor_hook.json 中的监控挂钩列表被标为实验性功能。仅用于分析者有权测试的应用。","采用 MIT 许可（NCC Group）。Frida 及附带的网页库保留各自许可证。"],"targets":["app"],"url":"https://github.com/nccgroup/house","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/Yricky/abcde/blob/62f7fc6a0d455d478db1bf3bcb61f2b79d5a473a/docs/libabcde.md","https://github.com/Yricky/abcde/blob/62f7fc6a0d455d478db1bf3bcb61f2b79d5a473a/.github/workflows/universal-jar.yml","https://github.com/Yricky/abcde/blob/62f7fc6a0d455d478db1bf3bcb61f2b79d5a473a/abcdecoder/build.gradle.kts","https://github.com/Yricky/abcde/blob/62f7fc6a0d455d478db1bf3bcb61f2b79d5a473a/modules/abcde/build.gradle.kts","https://github.com/Yricky/abcde/tree/62f7fc6a0d455d478db1bf3bcb61f2b79d5a473a/modules/abcde/src/commonMain/kotlin/me/yricky/oh/abcd/decompiler","https://github.com/Yricky/abcde/tree/62f7fc6a0d455d478db1bf3bcb61f2b79d5a473a/modules/abcde/src/jvmTest/java/me/yricky/oh","https://github.com/Yricky/abcde/blob/62f7fc6a0d455d478db1bf3bcb61f2b79d5a473a/abcdecoder/src/jvmMain/kotlin/me/yricky/abcde/cli/CliFunc.kt","https://github.com/Yricky/abcde/blob/62f7fc6a0d455d478db1bf3bcb61f2b79d5a473a/LICENSE","https://github.com/ohos-decompiler/abc-decompiler/blob/427c4cd9f80496236a4a3548d29a6b8aaf74b8e0/README.md"],"category":"android","description_en":"Kotlin toolkit for OpenHarmony reverse engineering that parses Ark bytecode (.abc) files, the format HarmonyOS app packages carry in modules.abc, along with HAP packages and resource index (.index) files. Its Compose desktop viewer browses classes, methods, fields, literal arrays, imports and exports and disassembles methods, showing imported modules and resource references in readable form; an experimental mode translates some methods literally into JavaScript, and a CLI dumps class lists and resource indexes. The parsing core is also published as a JVM library, and the separate abc-decompiler builds on a patched fork of it.","description_zh":"使用 Kotlin 编写的 OpenHarmony 逆向工具包，可解析方舟字节码（.abc）文件，即 HarmonyOS 应用包中 modules.abc 的格式，也能解析 HAP 包和资源索引（.index）文件。其基于 Compose 的桌面查看器可浏览类、方法、字段、字面量数组及导入导出信息，并反汇编方法，以可读形式显示导入模块和资源引用；实验性功能可把部分方法直译为 JavaScript，命令行则可导出类列表和资源索引。解析核心也作为 JVM 库发布，另一个项目 abc-decompiler 即基于它的补丁分支。","entry_url":"https://awesomerea.org/resources/abcde/","entry_url_zh":"https://awesomerea.org/zh/resources/abcde/","evidence_url":"https://github.com/Yricky/abcde/blob/62f7fc6a0d455d478db1bf3bcb61f2b79d5a473a/README.md","group":"tools","id":"abcde","json_url":"https://awesomerea.org/resources/abcde/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/abcde/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/abcde/index.md","name":"ABCDE","name_zh":"ABCDE OpenHarmony 逆向工具包","record_type":"resource","relationship":"foundation","requirements":["No releases or tags are published. The README points to GitHub Actions builds, but no workflow artifacts remained available at review, so the jar has to be built locally; the reviewed main commit of 2025-11-28 is also the latest push. Decompilation to JavaScript is labelled experimental: functions containing try/catch and some instructions, such as the async ones, are unsupported, and the output is a literal, unoptimized translation.","Building needs JDK 17+. ./gradlew :abcdecoder:packageReleaseUberJarForCurrentOS produces a desktop uber-jar for the current OS, while CI's -Puniversal build bundles the Compose runtimes for Linux x64/arm64, Windows x64 and macOS x64/arm64; Gradle resolves dependencies through Aliyun Maven mirrors as well as Maven Central and Google. ./gradlew publishToMavenLocal publishes the core modules for use as io.github.yricky.oh:abcde-jvm, and the abclen size-report and findStr string-search examples show library use.","Inputs are .abc, .hap and resources.index files from the user's own OpenHarmony or HarmonyOS app packages; the repository ships no sample apps. The committed isa.json instruction table is generated from OpenHarmony's arkcompiler_runtime_core isa.yaml, which the updateIsaDefine Gradle property fetches again from Gitee.","CI only builds the universal jar. Most JUnit tests read sample .abc, .hap or resources.index files from the author's local paths or an abcPath environment variable, so only a few encoding and checksum tests run from the repository alone, and no disassembly or decompilation accuracy results are reported.","Apache-2.0; the GUI bundles the JetBrains Mono font under the SIL OFL."],"requirements_zh":["项目未发布任何版本或标签。README 指向 GitHub Actions 构建产物，但审阅时已无可用的工作流产物，因此需自行在本地构建 jar；所审阅的 main 分支提交（2025-11-28）也是最近一次推送。反编译为 JavaScript 的功能标为实验性：不支持含 try/catch 的函数及部分指令（如 async 相关指令），输出为未经优化的直译代码。","构建需要 JDK 17+。./gradlew :abcdecoder:packageReleaseUberJarForCurrentOS 生成适用于当前系统的桌面版 uber-jar，CI 使用 -Puniversal 构建时则打包 Linux x64/arm64、Windows x64 和 macOS x64/arm64 的 Compose 运行时；Gradle 除 Maven Central 和 Google 外，还通过阿里云 Maven 镜像解析依赖。./gradlew publishToMavenLocal 可将核心模块发布为 io.github.yricky.oh:abcde-jvm 供其他工程引用，abclen 包体积分析和 findStr 字符串查找两个示例演示了库的用法。","输入为用户自有 OpenHarmony 或 HarmonyOS 应用包中的 .abc、.hap 和 resources.index 文件；仓库不附带示例应用。仓库中的 isa.json 指令表由 OpenHarmony arkcompiler_runtime_core 的 isa.yaml 生成，设置 Gradle 属性 updateIsaDefine 时会重新从 Gitee 获取。","CI 只构建通用 jar。大多数 JUnit 测试从作者本机路径或 abcPath 环境变量读取示例 .abc、.hap 或 resources.index 文件，因此仅凭仓库只能运行少数编码与校验和测试，也未报告反汇编或反编译准确性结果。","采用 Apache-2.0 许可；图形界面附带的 JetBrains Mono 字体采用 SIL OFL。"],"targets":["app"],"url":"https://github.com/Yricky/abcde","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/FrenchYeti/interruptor/blob/6faa9f641884f90953080dde0a1a45cf96a76801/package.json","https://github.com/FrenchYeti/interruptor/blob/6faa9f641884f90953080dde0a1a45cf96a76801/LICENSE","https://github.com/FrenchYeti/interruptor/blob/6faa9f641884f90953080dde0a1a45cf96a76801/.github/workflows/ci.yml","https://github.com/FrenchYeti/interruptor/tree/6faa9f641884f90953080dde0a1a45cf96a76801/src/arch","https://github.com/FrenchYeti/interruptor/blob/6faa9f641884f90953080dde0a1a45cf96a76801/src/utilities/Coverage.ts","https://github.com/FrenchYeti/interruptor/releases/tag/v1.0.9","https://www.npmjs.com/package/@reversense/interruptor/v/1.0.12"],"category":"dynamic-analysis","description_en":"Frida library, taken from the Dexcalibur project, that uses Frida’s Stalker to trace a process’s system calls and print strace-like lines with the calling thread, module and offset, decoded flag values and file paths resolved from descriptors. A trace can be limited to chosen modules and syscalls by name or pattern, started when a given library loads, extended with Interceptor-style per-syscall callbacks, and used to write drcov basic-block coverage files. The README documents Linux and Android on AArch64 and x64; the source also contains AArch32 Linux and macOS arm64 and x64 entry points.","description_zh":"源自 Dexcalibur 项目的 Frida 库，借助 Frida 的 Stalker 跟踪进程的系统调用，输出类似 strace 的记录，标明调用线程、模块与偏移，解码标志位取值，并根据文件描述符还原文件路径。跟踪范围可按名称或模式限定到指定模块和系统调用，可在某个库加载时启动，可附加 Interceptor 风格的逐系统调用回调，还能生成 drcov 基本块覆盖率文件。README 说明支持 AArch64 与 x64 上的 Linux 和 Android；源码中另有 AArch32 Linux 以及 macOS arm64、x64 的入口。","entry_url":"https://awesomerea.org/resources/interruptor/","entry_url_zh":"https://awesomerea.org/zh/resources/interruptor/","evidence_url":"https://github.com/FrenchYeti/interruptor/blob/6faa9f641884f90953080dde0a1a45cf96a76801/README.md","group":"tools","id":"interruptor","json_url":"https://awesomerea.org/resources/interruptor/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/interruptor/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/interruptor/index.md","name":"Interruptor","name_zh":"Interruptor 系统调用跟踪库","record_type":"resource","relationship":"foundation","requirements":["Latest npm release at review: @reversense/interruptor 1.0.12, published 2023-04-02; the newest GitHub release is v1.0.9 (2023-03-29). The reviewed main commit of 2026-09-23 adds unreleased changes, including refactored arm64 register handling and a preadv2/pwritev2 argument fix, without a version bump, and the README still calls the project a work in progress.","It is used inside the analyst’s own Frida agent: install the npm package, build from source with npm and TypeScript, or load a webpack-bundled per-architecture script. The README says passing a TypeScript agent directly to frida needs Frida 16 or later, and package.json depends on @types/frida-gum ^17.3.0. Android examples attach to a USB device with frida -U; the README warns that the CodeShare quick-start cannot be configured and may fail on obfuscated or multi-threaded apps.","The README’s support list names the Linux syscall API on AArch64 (SVC, with HVC marked work in progress) and x64 (SYSCALL); the AArch32 Linux and macOS factories in the source have no documented status. The agent tracer cannot follow child or multiple processes, and a standalone host-side tracer is marked TODO. Coverage needs an output path the target process can write. CI runs Mocha tests of the Linux AArch32 and arm64 factories on Node 16; no device test results are published. Intended for software the analyst is authorized to inspect.","package.json and the npm metadata declare GPL-3.0-only, but the LICENSE file is x64dbg’s modified GPL-3.0 text, whose added exception concerns x64dbg plugins rather than this project, so GitHub cannot classify it. The README also promotes the separate commercial Dexcalibur Pro."],"requirements_zh":["审阅时 npm 上的最新版本为 @reversense/interruptor 1.0.12，发布于 2023-04-02；GitHub 上最新的发布版本为 v1.0.9（2023-03-29）。所审阅的 main 分支提交（2026-09-23）包含尚未发布的改动，例如重构 arm64 寄存器处理、修正 preadv2/pwritev2 参数，但没有更新版本号；README 仍称项目处于开发中。","需在分析者自己的 Frida 代理中使用：安装 npm 包、用 npm 和 TypeScript 从源码构建，或加载按架构用 webpack 打包的脚本。README 指出，直接把 TypeScript 代理交给 frida 运行需要 Frida 16 或更高版本；package.json 依赖 @types/frida-gum ^17.3.0。Android 示例通过 frida -U 连接 USB 设备；README 提醒 CodeShare 快速上手方式无法配置，面对混淆或多线程应用时可能失败。","README 的支持列表只列出 AArch64（SVC，HVC 标为开发中）和 x64（SYSCALL）上的 Linux 系统调用 API；源码中的 AArch32 Linux 与 macOS 工厂没有说明支持状态。代理跟踪器无法跟随子进程或多个进程，主机端独立跟踪器标为待办。生成覆盖率需要目标进程可写的输出路径。CI 在 Node 16 上运行针对 Linux AArch32 与 arm64 工厂的 Mocha 测试；没有公开设备上的测试结果。仅用于分析者有权检查的软件。","package.json 与 npm 元数据声明 GPL-3.0-only，但 LICENSE 文件是 x64dbg 修改过的 GPL-3.0 文本，其中新增的例外条款针对 x64dbg 插件而非本项目，因此 GitHub 无法识别其许可证。README 还推广另行提供的商业版 Dexcalibur Pro。"],"targets":["app","binary"],"url":"https://github.com/FrenchYeti/interruptor","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/lelinhtinh/de4js/blob/b06fff977739dd50eeaf42f602a712348aa01c84/worker/decode.js","https://github.com/lelinhtinh/de4js/blob/b06fff977739dd50eeaf42f602a712348aa01c84/lib/evaldecode.js","https://github.com/lelinhtinh/de4js/blob/b06fff977739dd50eeaf42f602a712348aa01c84/lib/utils.js","https://github.com/lelinhtinh/de4js/blob/b06fff977739dd50eeaf42f602a712348aa01c84/_data/methods.yml","https://github.com/lelinhtinh/de4js/blob/b06fff977739dd50eeaf42f602a712348aa01c84/_data/options.yml","https://github.com/lelinhtinh/de4js/blob/b06fff977739dd50eeaf42f602a712348aa01c84/userscript/de4js_helper.user.js","https://github.com/lelinhtinh/de4js/blob/b06fff977739dd50eeaf42f602a712348aa01c84/.gitmodules","https://github.com/lelinhtinh/de4js/blob/b06fff977739dd50eeaf42f602a712348aa01c84/package.json","https://github.com/lelinhtinh/de4js/blob/b06fff977739dd50eeaf42f602a712348aa01c84/docker-compose.yml","https://github.com/lelinhtinh/de4js/blob/b06fff977739dd50eeaf42f602a712348aa01c84/LICENSE","https://github.com/lelinhtinh/de4js/releases/tag/v1.12.0"],"category":"javascript-electron","description_en":"Browser-based JavaScript deobfuscator and unpacker, built as a Jekyll site that also works offline as a progressive web app. It detects or lets the user pick an encoding and reverses Dean Edwards' Packer, eval- and array-based obfuscators, some Obfuscator.IO output, JSFuck, JJencode, AAencode, URL encoding, My Obfuscate and WiseLoop, then beautifies and highlights the result, with options to unescape strings, merge strings, recover object paths and evaluate constant expressions. An optional userscript sends the code to the JS Nice service to rename unreadable identifiers.","description_zh":"在浏览器中运行的 JavaScript 反混淆与解包工具，以 Jekyll 网站形式构建，也可作为渐进式 Web 应用离线使用。它可自动识别或由使用者选择编码方式，还原 Dean Edwards 的 Packer、基于 eval 和数组的混淆器、部分 Obfuscator.IO 输出、JSFuck、JJencode、AAencode、URL 编码、My Obfuscate 和 WiseLoop，再对结果进行美化和语法高亮，并提供反转义字符串、合并字符串、恢复对象路径和计算常量表达式等选项。另有可选的用户脚本把代码发送到 JS Nice 服务，为难以阅读的标识符重新命名。","entry_url":"https://awesomerea.org/resources/de4js/","entry_url_zh":"https://awesomerea.org/zh/resources/de4js/","evidence_url":"https://github.com/lelinhtinh/de4js/blob/b06fff977739dd50eeaf42f602a712348aa01c84/README.md","group":"tools","id":"de4js","json_url":"https://awesomerea.org/resources/de4js/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/de4js/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/de4js/index.md","name":"de4js","name_zh":"de4js JavaScript 反混淆与解包工具","record_type":"resource","relationship":"foundation","requirements":["The repository is archived. The last release, v1.12.0, was published 2021-03-28, and the reviewed master commit from 2021-11-12 adds only dependency updates and a fix to how option values are converted to booleans. The README notes that Obfuscator.IO is always up to date and that automatic tools, this one included, usually do not match its latest version. The homepage, lelinhtinh.github.io/de4js, still served the app through a redirect at review.","No installation is needed for the hosted page. Local copies run with docker-compose, or with Ruby 2.1+, Bundler and the GitHub Pages Jekyll gems, at localhost:4000/de4js/; npm run build also needs workbox-cli to generate the offline service worker. The Wise unpackers load from the NotSoWise git submodule, which must be checked out.","Input is pasted code, an opened file or a script fetched from a URL. The Eval, JSFuck, Array, _Number, Obfuscator.IO and AAencode decoders and the expression-evaluation option run all or part of the input with eval inside a Web Worker, so untrusted code executes in the browser's worker context. The JS Nice userscript sends code to jsnice.org over plain HTTP and does not work offline.","package.json defines no tests and the repository has no automated tests or CI. Whether a decoder succeeds depends on the obfuscator and its version, so output should be checked by reading it.","MIT; the bundled js-beautify, highlight.js, clipboard.js, math.js, Workbox and magic-check code and the AAencode and JJencode decoders keep their own notices."],"requirements_zh":["仓库已归档。最后一个版本 v1.12.0 发布于 2021-03-28；所审阅的 master 提交日期为 2021-11-12，此后只增加了依赖更新，以及对选项值转换为布尔值方式的修复。README 指出 Obfuscator.IO 始终在更新，包括本工具在内的自动化工具通常跟不上其最新版本。审阅时主页 lelinhtinh.github.io/de4js 经重定向后仍可使用该应用。","使用托管页面无需安装。本地运行可用 docker-compose，或使用 Ruby 2.1+、Bundler 和 GitHub Pages 的 Jekyll gem，地址为 localhost:4000/de4js/；npm run build 还需要 workbox-cli 来生成离线用的 service worker。Wise 解包器从 NotSoWise git 子模块载入，须一并检出该子模块。","输入可以是粘贴的代码、打开的文件或从 URL 获取的脚本。Eval、JSFuck、Array、_Number、Obfuscator.IO 和 AAencode 解码器以及表达式计算选项，会在 Web Worker 中用 eval 执行输入的全部或部分内容，因此不可信代码会在浏览器的 worker 环境中运行。JS Nice 用户脚本通过未加密的 HTTP 把代码发送到 jsnice.org，且无法离线使用。","package.json 未定义测试，仓库也没有自动化测试或 CI。解码能否成功取决于混淆工具及其版本，因此需要阅读输出结果加以核对。","采用 MIT 许可；随附的 js-beautify、highlight.js、clipboard.js、math.js、Workbox、magic-check 代码以及 AAencode 和 JJencode 解码器保留各自的声明。"],"targets":["website"],"url":"https://github.com/lelinhtinh/de4js","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","category":"related-lists","description_en":"A single-README, Chinese-language list of AI-assisted reverse-engineering projects, grouped into JavaScript reversing, binary and native analysis, Android and iOS security, and browser automation and traffic analysis. Its entries are mostly MCP servers, agent skills for Claude, Cursor and Codex, and IDE plugins that connect large language models to tools such as IDA Pro, Ghidra, Binary Ninja, JADX and Frida. Each row is a project name, a link and a one-line Chinese blurb.","description_zh":"以单个 README 维护的中文清单，收录与 AI 结合的逆向工程项目，按 JavaScript 逆向、二进制与原生分析、Android 与 iOS 安全、浏览器自动化与流量分析分组。条目大多是 MCP 服务器、面向 Claude、Cursor、Codex 的智能体技能，以及把大语言模型接入 IDA Pro、Ghidra、Binary Ninja、JADX、Frida 等工具的 IDE 插件。每一行是项目名称、链接和一句中文说明。","entry_url":"https://awesomerea.org/resources/awesome-ai-reverse/","entry_url_zh":"https://awesomerea.org/zh/resources/awesome-ai-reverse/","evidence_url":"https://github.com/darbra/awesome-ai-reverse/blob/6459523eb2570a9f0da7b9589d9f7dfed54cead7/README.md","group":"learn","id":"awesome-ai-reverse","json_url":"https://awesomerea.org/resources/awesome-ai-reverse/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/awesome-ai-reverse/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/awesome-ai-reverse/index.md","name":"Awesome AI Reverse Engineering","name_zh":"Awesome AI Reverse Engineering AI 逆向工具清单","record_type":"resource","relationship":"learning","requirements":["The reviewed README, from the commit dated 2026-09-29, lists 35 projects across four sections: 11 under JavaScript reversing, 9 under binary and native analysis, 9 under Android and iOS security, and 6 under browser automation and traffic analysis. The list carries a last-updated 2026-04 badge.","Each entry gives only a name, a link to a third-party repository and a short Chinese description, with no stated completion, accuracy or maintenance status. The list mixes MCP servers, agent skills and IDE plugins, and several entries are dual-use — anti-bot/WAF traffic evasion, anti-detection browsers, and APK ad or bloat removal with repackaging — so each linked project must be reviewed at its own source for scope, rights and lawful, authorized use.","The list links out and bundles no tools or target files of its own; the GhidraMCP server and the SimoneAvogadro Android reverse-engineering skill it points to are already in this catalog. Linked projects and the software they analyze keep their own licenses.","The README shows an MIT license badge, but the repository contains only README.md with no LICENSE file, and GitHub detects no license, so the list itself states no clear reuse terms. An independent discovery list."],"requirements_zh":["所审阅的 README 来自 2026-09-29 的提交，分四个部分共列出 35 个项目：JavaScript 逆向 11 个、二进制与原生分析 9 个、Android 与 iOS 安全 9 个、浏览器自动化与流量分析 6 个。清单带有“最近更新 2026-04”的徽章。","每个条目只给出名称、指向第三方仓库的链接和一句中文说明，未注明完成度、准确性或维护状态。清单混合收录 MCP 服务器、智能体技能和 IDE 插件，其中若干条目属于双重用途——反爬／WAF 流量规避、反检测浏览器，以及 APK 去广告去臃肿与重打包——因此每个链接项目都需在其自身来源中核实范围、权利及合法且经授权的使用。","该清单只做外链，自身不附带任何工具或目标文件；它指向的 GhidraMCP 服务器和 SimoneAvogadro 的 Android 逆向技能已收录于本目录。所链接的项目及其分析的软件各自保留许可证。","README 显示 MIT 许可证徽章，但仓库只有 README.md，没有 LICENSE 文件，GitHub 也未检测到许可证，因此清单本身未声明明确的复用条款。这是独立的发现清单。"],"targets":["app","binary","website"],"url":"https://github.com/darbra/awesome-ai-reverse","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/macmade/dyld_cache_extract/blob/b29fbb9266c3c3b072c37c18bef3251105cd40b6/LICENSE","https://github.com/macmade/dyld_cache_extract/blob/b29fbb9266c3c3b072c37c18bef3251105cd40b6/.gitmodules","https://github.com/macmade/dyld_cache_extract/blob/b29fbb9266c3c3b072c37c18bef3251105cd40b6/.github/workflows/ci-mac.yaml","https://github.com/macmade/dyld_cache_extract/blob/b29fbb9266c3c3b072c37c18bef3251105cd40b6/DCE/source/CacheFile.cpp","https://github.com/macmade/dyld_cache_extract/blob/b29fbb9266c3c3b072c37c18bef3251105cd40b6/dyld_cache_extract/main.cpp","https://github.com/macmade/dyld_cache_extract/releases/tag/0.1.1"],"category":"native-analysis","description_en":"macOS application and command-line tool that reads a dyld_shared_cache file from macOS or iOS, shows its header, mappings and image list, and copies one library or every library out to a directory. The CLI offers --info, --extract and --extract-all; the GUI presents the same header details and lets users select images to extract. The README marks the project obsolete and points to the author's dyld-cache-dump.","description_zh":"macOS 应用及命令行工具，可读取 macOS 或 iOS 的 dyld_shared_cache 文件，显示其头部、映射区和镜像列表，并将单个或全部动态库复制到指定目录。命令行提供 --info、--extract 和 --extract-all，图形界面显示同样的头部信息，并可选择要提取的镜像。README 已将项目标为过时，并推荐作者的 dyld-cache-dump。","entry_url":"https://awesomerea.org/resources/dyld-cache-extract/","entry_url_zh":"https://awesomerea.org/zh/resources/dyld-cache-extract/","evidence_url":"https://github.com/macmade/dyld_cache_extract/blob/b29fbb9266c3c3b072c37c18bef3251105cd40b6/README.md","group":"tools","id":"dyld-cache-extract","json_url":"https://awesomerea.org/resources/dyld-cache-extract/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dyld-cache-extract/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dyld-cache-extract/index.md","name":"dyld_cache_extract","name_zh":"dyld_cache_extract dyld 共享缓存提取工具","record_type":"resource","relationship":"foundation","requirements":["The README marks the project obsolete and refers users to dyld-cache-dump. The last commits, on 2023-06-12, fix the build for the then-current Xcode and update CI and the README. Releases 0.1.0 (2017-03-06) and 0.1.1 (2017-06-18) each attach a zipped Dyld Cache Extractor app; there is no newer release.","Builds on macOS with Xcode from dyld_cache_extract.xcodeproj, whose schemes cover the CLI tool, the GUI app and the DCE static library; the PIMPL, GitHubUpdates and xcconfig submodules must be initialized. CI builds and analyzes Debug and Release configurations of the CLI and GUI on macos-latest, with tests disabled.","Needs a dyld_shared_cache file from the user's own macOS or iOS system; the repository contains no caches or extracted libraries. The parser reads only the original header fields (magic, mapping and image tables, dyld base address) of a single cache file and copies each image's bytes plus the __LINKEDIT region; the reviewed code has no split sub-cache handling, and support for current macOS or iOS caches is not documented.","MIT license (2016, Jean-David Gadina, XS-Labs)."],"requirements_zh":["README 已将项目标为过时，并建议改用 dyld-cache-dump。最近的提交发生在 2023-06-12，修复了当时最新 Xcode 下的构建，并更新 CI 与 README。0.1.0（2017-03-06）和 0.1.1（2017-06-18）两个版本各附带一个压缩的 Dyld Cache Extractor 应用，此后没有新版本。","在 macOS 上用 Xcode 构建 dyld_cache_extract.xcodeproj，其中的 scheme 涵盖命令行工具、图形界面应用和 DCE 静态库；需要初始化 PIMPL、GitHubUpdates 和 xcconfig 子模块。CI 在 macos-latest 上构建并静态分析命令行与图形界面的 Debug 和 Release 配置，未启用测试。","需要使用者自己 macOS 或 iOS 系统中的 dyld_shared_cache 文件；仓库不含任何缓存或提取出的库。解析器只读取单个缓存文件中原始头部的字段（magic、映射表与镜像表、dyld 基址），并复制每个镜像的字节及 __LINKEDIT 区域；所审阅的代码不处理拆分的子缓存，也未说明是否支持当前 macOS 或 iOS 的缓存。","采用 MIT 许可（2016，Jean-David Gadina，XS-Labs）。"],"targets":["app","binary"],"url":"https://github.com/macmade/dyld_cache_extract","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/mandiant/flare-ida/blob/fc667de6db279c6f8ec8bcc2f3eedff348db450f/python/flare/ironstrings/README.md","https://github.com/mandiant/flare-ida/blob/fc667de6db279c6f8ec8bcc2f3eedff348db450f/code_grafter/README.md","https://github.com/mandiant/flare-ida/blob/fc667de6db279c6f8ec8bcc2f3eedff348db450f/shellcode_hashes/README.md","https://github.com/mandiant/flare-ida/blob/fc667de6db279c6f8ec8bcc2f3eedff348db450f/plugins/stackstrings_plugin.py","https://github.com/mandiant/flare-ida/blob/fc667de6db279c6f8ec8bcc2f3eedff348db450f/python/flare/argtracker.py","https://github.com/mandiant/flare-ida/blob/fc667de6db279c6f8ec8bcc2f3eedff348db450f/python/flare/annotate_IDB_MSDN.py","https://github.com/mandiant/flare-ida/blob/fc667de6db279c6f8ec8bcc2f3eedff348db450f/MSDN_crawler/msdn_crawler.py","https://github.com/mandiant/flare-ida/blob/fc667de6db279c6f8ec8bcc2f3eedff348db450f/LICENSE","https://github.com/mandiant/flare-ida/commit/14c771f456fd3c1fcd3fb7d681db92279a0e63d7","https://github.com/mandiant/flare-ida/commit/c9a39c4328fc39004d18e80b750a720fbe56af7d"],"category":"native-analysis","description_en":"Archived collection of IDAPython plugins and scripts from Mandiant's FLARE team for malware and native-code analysis in IDA Pro. It searches code for precomputed API-name hashes used by shellcode, recovers strings built on the stack (statically, or by emulation with flare-emu in ironstrings), applies function types to structure fields and indirect calls, annotates imports with MSDN function, argument and constant information, and uses idb2pat to generate pattern files from an IDB's functions for building FLIRT signatures. Other scripts track static arguments to functions such as string decoders, link Objective-C selector references to their implementations in Mach-O files, and graft stub implementations of common Windows API imports so that decoding or unpacking code can run under IDA's Bochs emulation.","description_zh":"Mandiant FLARE 团队已归档的 IDAPython 插件与脚本合集，用于在 IDA Pro 中分析恶意软件和原生代码。它可在代码中搜索 shellcode 使用的预计算 API 名称哈希，恢复在栈上拼接的字符串（静态分析，或在 ironstrings 中借助 flare-emu 模拟执行），为结构体字段和间接调用应用函数类型，用 MSDN 中的函数、参数和常量信息注释导入函数，并通过 idb2pat 从 IDB 中的函数生成可用于制作 FLIRT 签名的模式文件。其他脚本可追踪字符串解码函数等调用的静态参数，在 Mach-O 文件中把 Objective-C 选择器引用关联到其实现，还能为常见 Windows API 导入函数植入简易实现，使解码或解包代码可在 IDA 的 Bochs 模拟模式下运行。","entry_url":"https://awesomerea.org/resources/flare-ida/","entry_url_zh":"https://awesomerea.org/zh/resources/flare-ida/","evidence_url":"https://github.com/mandiant/flare-ida/blob/fc667de6db279c6f8ec8bcc2f3eedff348db450f/README.md","group":"tools","id":"flare-ida","json_url":"https://awesomerea.org/resources/flare-ida/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/flare-ida/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/flare-ida/index.md","name":"FLARE IDA Pro utilities","name_zh":"FLARE IDA Pro 实用脚本合集","record_type":"resource","relationship":"foundation","requirements":["The repository is archived and read-only, with no releases or tags; the reviewed master commit of 2024-10-29 is its last. Nothing is packaged: the README says to copy plugins/ into IDA's plugins folder and python/ into IDA's python folder or onto PYTHONPATH, and scripts such as annotate_IDB_MSDN.py, ironstrings.py and code_grafter.py are run through File → Script file.","Needs IDA Pro with IDAPython; the README gives Windows %PROGRAMFILES% paths and names no supported IDA version. The code spans several IDA generations: apply_callee_type was fixed for IDA 7.6 SP1 and idb2pat was ported to Python 3, while stackstrings, argtracker and the decompiler_scripts still use Python 2 syntax, and the StackStrings plugin warns that it only works under Python 2 because of its vivisect dependency. Dialog-based tools import PyQt5; ironstrings, objc2_analyzer and revil_string_decrypt need flare-emu and Unicorn, the decompiler_scripts need the Hex-Rays decompiler, and code_grafter targets IDA's Bochs IDB emulation mode.","Samples and IDBs come from the analyst. The repository bundles sc_hashes.db, a SQLite database of about 50 MB holding precomputed hashes of export names from Microsoft DLLs, with make_sc_hash_db.py to rebuild it from a DLL directory the user chooses. The MSDN annotator expects an MSDN_data directory that is not shipped; the MSDN_crawler script builds it with Python 2.7 from an extracted copy of the MSDN documentation and IDA's tilib.","There are no tests or CI. Behaviour is documented through the README, per-tool READMEs and linked FireEye and Mandiant blog posts.","Apache-2.0 for the repository, while msdn_crawler.py is a GPL-2.0-or-later derivative of the zynamics msdn-crawler. IDA Pro, the Hex-Rays decompiler and Microsoft DLLs and documentation keep their own terms."],"requirements_zh":["仓库已归档、只读，没有发布版本或标签；所审阅的 master 分支提交（2024-10-29）是最后一次提交。脚本不经打包：README 说明需将 plugins/ 复制到 IDA 的 plugins 文件夹，将 python/ 复制到 IDA 的 python 文件夹或加入 PYTHONPATH；annotate_IDB_MSDN.py、ironstrings.py 和 code_grafter.py 等脚本则通过 File → Script file 运行。","需要带 IDAPython 的 IDA Pro；README 给出的是 Windows 的 %PROGRAMFILES% 路径，未注明支持的 IDA 版本。代码横跨多代 IDA：apply_callee_type 针对 IDA 7.6 SP1 做过修复，idb2pat 已移植到 Python 3，而 stackstrings、argtracker 和 decompiler_scripts 仍使用 Python 2 语法，StackStrings 插件也提示因依赖 vivisect 只能在 Python 2 下运行。带对话框的工具导入 PyQt5；ironstrings、objc2_analyzer 和 revil_string_decrypt 需要 flare-emu 与 Unicorn，decompiler_scripts 需要 Hex-Rays 反编译器，code_grafter 则面向 IDA 的 Bochs IDB 模拟模式。","样本和 IDB 由分析者自备。仓库附带 sc_hashes.db，这是约 50 MB 的 SQLite 数据库，保存 Microsoft DLL 导出名称的预计算哈希；make_sc_hash_db.py 可根据用户指定的 DLL 目录重新生成。MSDN 注释工具需要一个仓库未提供的 MSDN_data 目录；MSDN_crawler 脚本使用 Python 2.7，从解压后的 MSDN 文档副本和 IDA 的 tilib 生成该目录。","仓库没有测试或 CI。各工具的行为由 README、各工具的说明文件以及所链接的 FireEye 和 Mandiant 博客文章记录。","仓库整体采用 Apache-2.0，而 msdn_crawler.py 是基于 zynamics msdn-crawler 的衍生作品，采用 GPL-2.0-or-later。IDA Pro、Hex-Rays 反编译器以及 Microsoft DLL 和文档仍受各自条款约束。"],"targets":["binary"],"url":"https://github.com/mandiant/flare-ida","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/c3rb3ru5d3d53c/binlex/blob/f02f270c378b652dcfaca8a88f7d65bd4a95347b/Cargo.toml","https://github.com/c3rb3ru5d3d53c/binlex/blob/f02f270c378b652dcfaca8a88f7d65bd4a95347b/LICENSE","https://github.com/c3rb3ru5d3d53c/binlex/releases/tag/v2.0.0-rc2","https://github.com/c3rb3ru5d3d53c/binlex/releases/tag/v1.1.1"],"category":"binary-libraries","description_en":"Binary trait-lexer framework that extracts instructions, basic blocks and functions from executables and emits searchable JSON traits for similarity, hunting and signature work. It models code with a genomics-inspired hierarchy and computes features such as MinHash, TLSH, SHA256, entropy and wildcard byte patterns, so samples can be compared, clustered and turned into signatures at scale. It ships a CLI suite, a Rust API, Python bindings and an IDA plugin, can generate YARA rules from its patterns, and runs processors locally or over IPC and HTTP.","description_zh":"二进制特征词法框架，从可执行文件中提取指令、基本块和函数，并输出可检索的 JSON 特征，用于相似度分析、威胁狩猎和签名工作。它以仿基因组学的层级结构对代码建模，计算 MinHash、TLSH、SHA256、熵和通配字节模式等特征，从而在大规模样本间进行比较、聚类并生成签名。它提供命令行工具套件、Rust API、Python 绑定和 IDA 插件，可依据其模式生成 YARA 规则，并支持本地或通过 IPC 与 HTTP 运行处理器。","entry_url":"https://awesomerea.org/resources/binlex/","entry_url_zh":"https://awesomerea.org/zh/resources/binlex/","evidence_url":"https://github.com/c3rb3ru5d3d53c/binlex/blob/f02f270c378b652dcfaca8a88f7d65bd4a95347b/README.md","group":"tools","id":"binlex","json_url":"https://awesomerea.org/resources/binlex/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/binlex/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binlex/index.md","name":"Binlex","name_zh":"Binlex 二进制特征词法框架","record_type":"resource","relationship":"foundation","requirements":["The reviewed master commit declares a Rust 2024-edition workspace at version 2.0.0. The latest stable GitHub release is v1.1.1 (2023-03-04); the v2.0.0 line is still at release candidates, the most recent being v2.0.0-rc2 (2025-01-14), whose prebuilt zips cover Linux (Debian and Arch), macOS (amd64 and aarch64) and Windows, plus an IDA plugin archive and a server archive. The reviewed master is ahead of those tags.","The README lists Linux, macOS and Windows; input formats PE, ELF and Mach-O; and AMD64, I386 and CIL architectures, with disassembly through Capstone 0.12. Build and install with cargo build --release --workspace, build the Python bindings with maturin, package with make zst/deb/wheel, install the IDA plugin with pip and python -m binlex_ida install, and the repository also provides Docker Compose files for its server, web, MCP and Python images.","Supply the binaries to analyze yourself; the repository commits no sample binaries, and its tests are Rust source. Binlex extracts static traits and hashes and generates patterns and YARA rules; it does not run the target, and derived signatures and similarity scores still need analyst validation.","MIT license; contributions require signing the repository's CLA."],"requirements_zh":["所审阅的 master 分支提交声明了一个版本号为 2.0.0 的 Rust 2024 edition 工作区。GitHub 上最新的稳定发行版是 v1.1.1（2023-03-04）；2.0.0 系列仍处于候选发布阶段，最新为 v2.0.0-rc2（2025-01-14），其预构建压缩包覆盖 Linux（Debian 和 Arch）、macOS（amd64 与 aarch64）和 Windows，另含一个 IDA 插件压缩包和一个服务端压缩包。所审阅的 master 分支比这些标签更新。","README 列出 Linux、macOS 和 Windows；输入格式为 PE、ELF 和 Mach-O；支持 AMD64、I386 和 CIL 架构，反汇编通过 Capstone 0.12 完成。构建安装使用 cargo build --release --workspace，用 maturin 构建 Python 绑定，用 make zst/deb/wheel 打包，用 pip 和 python -m binlex_ida install 安装 IDA 插件；仓库还提供用于服务端、Web、MCP 和 Python 镜像的 Docker Compose 文件。","需自行提供要分析的二进制文件；仓库未提交任何样本二进制，其测试均为 Rust 源码。Binlex 提取静态特征与哈希并生成模式和 YARA 规则，不运行目标程序；得到的签名和相似度结果仍需分析人员验证。","采用 MIT 许可证；贡献代码需签署仓库的 CLA。"],"targets":["binary"],"url":"https://github.com/c3rb3ru5d3d53c/binlex","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/docs/getting-started.md","https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/docs/index.md","https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/docs/tabs/settings-tab.md","https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/docs/tabs/symgraph-tab.md","https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/docs/tabs/query-tab.md","https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/docs/tabs/actions-tab.md","https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/build.gradle","https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/src/main/java/ghidrassist/apiprovider/APIProvider.java","https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/src/main/java/ghidrassist/tools/approval/ToolApprovalService.java","https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/LICENSE","https://github.com/symgraph/GhidrAssist/releases/tag/2.2.0","https://github.com/symgraph/GhidrAssistMCP/blob/b575acc1412cafcfd4dc9fedb7f99ecf219c68ab/README.md"],"category":"agent-workflows","description_en":"Ghidra extension by Jason Tang, who also wrote GhidrAssistMCP, that adds a tabbed GhidrAssist window to CodeBrowser for LLM-assisted analysis of the open program. Its tabs explain decompiled or disassembled functions with a security summary, keep persistent chats with context macros, MCP tool calling and an optional ReAct agent mode, propose function and variable renames, retypes and structures for review before they are applied, and build a semantic knowledge graph of functions, calls and security features with community detection, alongside Lucene retrieval over reference documents the analyst adds. A SymGraph tab imports and publishes names, types, graph data and documents through the hosted symgraph.ai service.","description_zh":"由 GhidrAssistMCP 作者 Jason Tang 开发的 Ghidra 扩展，在 CodeBrowser 中加入多标签页的 GhidrAssist 窗口，借助大语言模型分析当前打开的程序。各标签页可解释反编译或反汇编后的函数并附安全摘要，保存支持上下文宏、MCP 工具调用和可选 ReAct 智能体模式的持久对话，为函数和变量提出重命名、类型修改及结构体建议并在审阅后应用，还能构建涵盖函数、调用关系和安全特征的语义知识图谱并进行社区检测，同时可借助 Lucene 检索分析人员添加的参考文档。SymGraph 标签页则通过托管的 symgraph.ai 服务导入和发布名称、类型、图谱数据及文档。","entry_url":"https://awesomerea.org/resources/ghidrassist/","entry_url_zh":"https://awesomerea.org/zh/resources/ghidrassist/","evidence_url":"https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/README.md","group":"agents","id":"ghidrassist","json_url":"https://awesomerea.org/resources/ghidrassist/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/ghidrassist/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghidrassist/index.md","name":"GhidrAssist","name_zh":"GhidrAssist Ghidra 大模型辅助分析扩展","record_type":"resource","relationship":"independent-agent-integration","requirements":["Latest release at review: 2.2.0, published 2026-05-29 with extension zips for Ghidra 12.0 and 12.1 Public; the reviewed master commit is three commits later and only updates model guidance and max-token handling. The README and getting-started guide state a Ghidra 11.0 minimum, but release zips are built per Ghidra version and recent ones cover only 12.x. Installation goes through File → Install Extensions, after which the plugin is enabled under CodeBrowser's File → Configure → Miscellaneous; source builds use Gradle with GHIDRA_INSTALL_DIR.","Analysis needs at least one configured LLM provider. The reviewed provider types cover Anthropic, OpenAI, Azure OpenAI, Gemini and xAI APIs, OpenAI and Gemini subscription sign-in through OAuth, the local Claude Code CLI, a LiteLLM proxy, and local Ollama, LM Studio or Open WebUI endpoints; the documentation's provider tables also list an Anthropic OAuth type that the source does not define. Explanations, chats, Actions, agent runs and the graph's Semantic Analysis step send pseudocode or disassembly to the active provider, so only a local or self-hosted endpoint keeps code on the machine, while graph re-indexing and Security Analysis run without the model. Chats, explanations, graph data and feedback are kept in local SQLite databases and a Lucene index whose paths are set in Settings.","Programs come from the user's own Ghidra projects. Actions suggestions are applied only for the rows the user checks. Chats can reach MCP servers over SSE or streamable HTTP or launch them over stdio; built-in tools read the current function and address, apply the Actions edits and query the semantic graph, and the README pairs the plugin with GhidrAssistMCP for decompilation, cross-reference and other Ghidra-specific tools. Calls to tools whose names do not look read-only wait for an allow-once, allow-for-session or deny decision, and this classification relies on tool-name keywords.","The SymGraph tab looks up the program by SHA-256 without a key, but importing, publishing and uploading need a SymGraph API key, and publishing uploads the raw binary itself when the service does not already hold it. The repository has no tests or CI workflows.","MIT, per LICENSE and the README; Ghidra, model providers and SymGraph keep their own terms. The repository moved from jtang613/GhidrAssist."],"requirements_zh":["审阅时最新版本为 2.2.0，于 2026-05-29 发布，提供适用于 Ghidra 12.0 和 12.1 Public 的扩展 zip；所审阅的 master 分支提交比它晚三个提交，仅更新了模型建议和最大 token 数处理。README 和入门指南写明最低需要 Ghidra 11.0，但发布的 zip 按 Ghidra 版本分别构建，近期版本只覆盖 12.x。通过 File → Install Extensions 安装后，需在 CodeBrowser 的 File → Configure → Miscellaneous 中启用插件；从源码构建使用 Gradle，并需设置 GHIDRA_INSTALL_DIR。","分析需要至少配置一个大模型服务。所审阅的服务类型包括 Anthropic、OpenAI、Azure OpenAI、Gemini 和 xAI 的 API，通过 OAuth 登录的 OpenAI 与 Gemini 订阅，本地 Claude Code CLI，LiteLLM 代理，以及本地 Ollama、LM Studio 或 Open WebUI 端点；文档的服务类型表还列出了一个源码中并未定义的 Anthropic OAuth 类型。解释、对话、Actions、智能体运行以及图谱的 Semantic Analysis 步骤都会把伪代码或反汇编发送给当前服务，只有本地或自托管端点才能让代码不离开本机；图谱重建索引和 Security Analysis 则无需调用模型。对话、解释、图谱数据和反馈保存在本地 SQLite 数据库和 Lucene 索引中，路径可在 Settings 中设置。","待分析程序来自用户自己的 Ghidra 项目。Actions 的建议只对用户勾选的行生效。对话可通过 SSE 或 streamable HTTP 连接 MCP 服务器，也可通过 stdio 启动；内置工具可读取当前函数和地址、执行 Actions 修改并查询语义图谱，README 建议搭配 GhidrAssistMCP 获取反编译、交叉引用等 Ghidra 专用工具。名称看起来并非只读的工具，调用前需等待用户选择允许一次、本会话允许或拒绝，而这种分类依赖工具名称中的关键词。","SymGraph 标签页无需密钥即可按 SHA-256 查询程序，但导入、发布和上传需要 SymGraph API 密钥；若服务中尚无该二进制，发布时会上传原始二进制文件本身。仓库没有测试或 CI 工作流。","依据 LICENSE 和 README 采用 MIT 许可；Ghidra、各模型服务和 SymGraph 仍受各自条款约束。仓库已从 jtang613/GhidrAssist 迁移。"],"targets":["binary"],"url":"https://github.com/symgraph/GhidrAssist","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/BrianPugh/game-and-watch-patch/blob/857bb80fe77b60b6dabbadeae703577cc50f8645/COPYING","https://github.com/BrianPugh/game-and-watch-patch/blob/857bb80fe77b60b6dabbadeae703577cc50f8645/Makefile","https://github.com/BrianPugh/game-and-watch-patch/blob/857bb80fe77b60b6dabbadeae703577cc50f8645/requirements.txt","https://github.com/BrianPugh/game-and-watch-patch/blob/857bb80fe77b60b6dabbadeae703577cc50f8645/docker/Dockerfile","https://github.com/BrianPugh/game-and-watch-patch/blob/857bb80fe77b60b6dabbadeae703577cc50f8645/patches/firmware.py","https://github.com/BrianPugh/game-and-watch-patch/blob/857bb80fe77b60b6dabbadeae703577cc50f8645/patches/amalgam.py","https://github.com/BrianPugh/game-and-watch-patch/blob/857bb80fe77b60b6dabbadeae703577cc50f8645/tools/re/README.md","https://github.com/BrianPugh/game-and-watch-patch/blob/857bb80fe77b60b6dabbadeae703577cc50f8645/tools/emu/README.md","https://github.com/BrianPugh/game-and-watch-patch/blob/857bb80fe77b60b6dabbadeae703577cc50f8645/tests/test_golden.py","https://github.com/BrianPugh/game-and-watch-patch/blob/857bb80fe77b60b6dabbadeae703577cc50f8645/tests/golden.json","https://github.com/BrianPugh/game-and-watch-patch/blob/857bb80fe77b60b6dabbadeae703577cc50f8645/docs/journal.md","https://github.com/BrianPugh/game-and-watch-patch/blob/857bb80fe77b60b6dabbadeae703577cc50f8645/docs/mario.md","https://github.com/BrianPugh/game-and-watch-patch/blob/857bb80fe77b60b6dabbadeae703577cc50f8645/.pre-commit-config.yaml","https://github.com/BrianPugh/game-and-watch-patch/blob/857bb80fe77b60b6dabbadeae703577cc50f8645/CLAUDE.md","https://github.com/BrianPugh/game-and-watch-patch/releases/tag/v0.12"],"category":"reconstruction-cases","description_en":"Custom firmware for the Mario and Zelda Game & Watch consoles that patches new C code into the user's own stock firmware backups, so the original firmware runs alongside the retro-go emulator. A Python patcher hooks stock function calls, relocates and LZMA-compresses stock code and data to free flash, and can merge both models' firmware into one image. Committed symbol maps, a cross-reference mapper and an analysis-ELF builder support the reverse engineering, and a journal records the author's first firmware-patching work.","description_zh":"面向马里奥和塞尔达两款 Game & Watch 掌机的自定义固件：把新编写的 C 代码修补进使用者自己的原厂固件备份，使原厂固件可与 retro-go 模拟器并存。Python 补丁工具会挂接原厂函数调用，重新定位原厂代码与数据并以 LZMA 压缩以腾出闪存，还能把两款机型的固件合并为一个镜像。仓库提交的符号表、交叉引用分析脚本和分析用 ELF 生成器支撑逆向工作，另有一份日志记录作者首次修补固件的过程。","entry_url":"https://awesomerea.org/resources/game-and-watch-patch-cfw-case/","entry_url_zh":"https://awesomerea.org/zh/resources/game-and-watch-patch-cfw-case/","evidence_url":"https://github.com/BrianPugh/game-and-watch-patch/blob/857bb80fe77b60b6dabbadeae703577cc50f8645/README.md","group":"cases","id":"game-and-watch-patch-cfw-case","json_url":"https://awesomerea.org/resources/game-and-watch-patch-cfw-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/game-and-watch-patch-cfw-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/game-and-watch-patch-cfw-case/index.md","name":"game-and-watch-patch: Nintendo Game & Watch custom firmware","name_zh":"game-and-watch-patch：任天堂 Game & Watch 自定义固件","reconstruction_method":"other","record_type":"resource","relationship":"independent-reconstruction","requirements":["The reviewed main commit (2026-10-19) is 111 commits past the last tag, v0.12 of 2025-02-25, and no release attaches binaries; the relocation, merged-image, analysis tooling and most tests arrived after that tag. The README lists more Mario features (whole firmware in internal flash, removable song and sleep illustrations, timeouts, clock graphics mods) than Zelda ones and says Zelda's external-flash savings are still to come.","Requires the user's own internal and external flash backups of a Mario or Zelda unit, placed as internal_flash_backup_<device>.bin and flash_backup_<device>.bin; the patcher rejects images whose SHA-1 does not match the stock firmware. The repository commits no firmware, ROMs or keys: tools/re/README.md says the .syms files hold only the project's annotations and that ELFs derived from Nintendo's firmware must never be committed, and docs/mario.md says no ROMs or ROM-hack patches are hosted.","Targets the consoles' STM32H7B0 microcontroller. Builds need GNU Make, the arm-none-eabi GCC toolchain and Python 3.6+ with Pillow, NumPy, pycryptodome, pyelftools, capstone and colorama; flashing uses gnwmanager, and the Mario internal-only mode also needs a patched OpenOCD for an undocumented extra 128 KB of internal flash. An Ubuntu 22.04 Dockerfile installs gnwmanager's OpenOCD and Arm toolchain for x86-64 Linux hosts.","tests/test_golden.py rebuilds fixed option sets and compares output SHA-1 hashes with tests/golden.json, recorded for Arm GNU Toolchain 15.2.Rel1; it skips without the stock backups or under another GCC version. Other unit tests cover relocation, Thumb assembly, layout and symbols, and tools/emu runs patched images through menu tests in the GWemu emulator. CI only runs pre-commit lint checks and builds the Docker image.","COPYING is BSD-3-Clause (2020, Konrad Beckmann, Thomas Roth, STMicroelectronics); the vendored ST CMSIS and HAL sources keep their own notices, and the stock firmware and games remain Nintendo's. The repository's CLAUDE.md is guidance for Claude Code."],"requirements_zh":["所审阅的 main 提交（2026-10-19）比最后一个标签 v0.12（2025-02-25）多 111 个提交，各版本均未附带二进制文件；代码重定位、合并镜像、分析工具和大部分测试都是在该标签之后加入的。README 列出的马里奥版功能（整个固件放入内部闪存、可移除歌曲彩蛋和睡眠插图、超时设置、时钟图形修改）多于塞尔达版，并称塞尔达版节省外部闪存的功能尚待实现。","需要使用者自己马里奥或塞尔达机型的内部与外部闪存备份，命名为 internal_flash_backup_<device>.bin 和 flash_backup_<device>.bin 放入仓库；补丁工具会拒绝 SHA-1 与原厂固件不符的镜像。仓库未提交任何固件、ROM 或密钥：tools/re/README.md 说明 .syms 文件只含项目自己的注释，并要求绝不提交由任天堂固件派生的 ELF；docs/mario.md 也说明仓库不托管任何 ROM 或 ROM 修改补丁。","目标硬件是掌机所用的 STM32H7B0 微控制器。构建需要 GNU Make、arm-none-eabi GCC 工具链和 Python 3.6+，以及 Pillow、NumPy、pycryptodome、pyelftools、capstone 和 colorama；烧录使用 gnwmanager，马里奥版的仅内部闪存模式还需要打过补丁的 OpenOCD，以使用未公开的额外 128 KB 内部闪存。基于 Ubuntu 22.04 的 Dockerfile 会为 x86-64 Linux 主机安装 gnwmanager 提供的 OpenOCD 和 Arm 工具链。","tests/test_golden.py 按固定选项组合重新构建，并将输出的 SHA-1 与 tests/golden.json 比对；这些哈希针对 Arm GNU Toolchain 15.2.Rel1 记录，缺少原厂备份或 GCC 版本不同时会跳过。其他单元测试涵盖重定位、Thumb 汇编、布局和符号，tools/emu 则在 GWemu 模拟器中对修补后的镜像运行菜单测试。CI 只运行 pre-commit 代码检查并构建 Docker 镜像。","COPYING 为 BSD-3-Clause（2020，Konrad Beckmann、Thomas Roth、STMicroelectronics）；随仓库提供的 ST CMSIS 与 HAL 源码保留各自声明，原厂固件和游戏仍归任天堂所有。仓库中的 CLAUDE.md 是写给 Claude Code 的指引。"],"targets":["firmware","game"],"url":"https://github.com/BrianPugh/game-and-watch-patch","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/VoidSec/DriverBuddyReloaded/blob/72bf7c862de01f389fa38651d9adc0f1042cbcba/CHANGELOG.md","https://github.com/VoidSec/DriverBuddyReloaded/blob/72bf7c862de01f389fa38651d9adc0f1042cbcba/ida-plugin.json","https://github.com/VoidSec/DriverBuddyReloaded/blob/72bf7c862de01f389fa38651d9adc0f1042cbcba/DriverBuddyReloaded/config.py","https://github.com/VoidSec/DriverBuddyReloaded/blob/72bf7c862de01f389fa38651d9adc0f1042cbcba/DriverBuddyReloaded/ida_compat.py","https://github.com/VoidSec/DriverBuddyReloaded/blob/72bf7c862de01f389fa38651d9adc0f1042cbcba/tests/test_dbr.py","https://github.com/VoidSec/DriverBuddyReloaded/blob/72bf7c862de01f389fa38651d9adc0f1042cbcba/tests/run_cross_version.ps1","https://github.com/VoidSec/DriverBuddyReloaded/blob/72bf7c862de01f389fa38651d9adc0f1042cbcba/tests/run_golden.ps1","https://github.com/VoidSec/DriverBuddyReloaded/tree/72bf7c862de01f389fa38651d9adc0f1042cbcba/tests/drivers","https://github.com/VoidSec/DriverBuddyReloaded/blob/72bf7c862de01f389fa38651d9adc0f1042cbcba/LICENSE","https://github.com/VoidSec/DriverBuddyReloaded/commit/8a94d75179de6aafa348ec89b4efc66bfa3efce9","https://github.com/VoidSec/DriverBuddyReloaded/blob/f983af7be5e00421881c6223b6638880a242f9ba/LICENSE","https://github.com/VoidSec/DriverBuddyReloaded/releases/tag/2.5.1"],"category":"native-analysis","description_en":"IDA Pro Python plugin for triaging Windows kernel drivers, building on NCC Group's original DriverBuddy. Its auto-analysis identifies the driver model (WDM, KMDF, UMDF, WDF, Mini-Filter, Stream Minidriver, AVStream or PortCls), locates the device-control dispatch routines, labels IRP, IO_STACK_LOCATION and WDF structures and calls, and discovers and decodes IOCTL codes through Hex-Rays ctree, switch-table and immediate-operand scans. It also reports device names, symbolic links and device ACLs, pool tags, flagged APIs and opcodes, name-based call chains and heuristic vulnerability leads with per-IOCTL risk scores, in an IDA findings window, a JSON file and an HTML report.","description_zh":"用于分诊 Windows 内核驱动的 IDA Pro Python 插件，在 NCC Group 最初的 DriverBuddy 基础上发展而来。其自动分析可识别驱动模型（WDM、KMDF、UMDF、WDF、Mini-Filter、Stream Minidriver、AVStream 或 PortCls），定位设备控制派遣例程，标注 IRP、IO_STACK_LOCATION 和 WDF 结构及调用，并通过 Hex-Rays ctree、switch 跳转表和立即数操作数三种扫描发现并解码 IOCTL 码。它还会报告设备名、符号链接与设备 ACL、池标记、被标记的 API 和指令、基于名称的调用链，以及带逐个 IOCTL 风险评分的启发式漏洞线索，结果显示在 IDA 结果窗口中，并写入 JSON 文件和 HTML 报告。","entry_url":"https://awesomerea.org/resources/driver-buddy-reloaded/","entry_url_zh":"https://awesomerea.org/zh/resources/driver-buddy-reloaded/","evidence_url":"https://github.com/VoidSec/DriverBuddyReloaded/blob/72bf7c862de01f389fa38651d9adc0f1042cbcba/README.MD","group":"tools","id":"driver-buddy-reloaded","json_url":"https://awesomerea.org/resources/driver-buddy-reloaded/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/driver-buddy-reloaded/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/driver-buddy-reloaded/index.md","name":"Driver Buddy Reloaded","name_zh":"Driver Buddy Reloaded Windows 内核驱动分析插件","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 2.5.1, published 2026-07-08 as a zip; the reviewed main commit of 2026-10-19 is four commits later, adding an IOCTL-recovery fix for issue #41 with a new regression fixture, DriverEntry typing for the MajorFunction annotator and the licence change noted below. The README says it runs on IDA 7.6+, 8.x and 9.0+ with Python 3, with API differences handled by ida_compat.py, and ida-plugin.json lists Windows, Linux and macOS hosts. IDA 9.0+ installs it with hcli plugin install; 7.6 and 8.x need the script and its package folder copied to the top level of the plugins directory.","Analysts load their own Windows kernel driver (.sys) in IDA. The Hex-Rays decompiler is optional but drives the strongest IOCTL scan, with switch-table and immediate-operand scans as fallbacks, and the experimental DispatchDeviceControl search works only for x64 drivers. Each run writes findings.json, report.html, pooltags.txt and an analysis log next to the IDB, and optional stages are toggled in config.py.","tests/test_dbr.py is a pure-Python regression suite that needs no IDA; run_cross_version.ps1 runs the pipeline under IDA 7.6 SP1, 8.4 and Free 9.3, and run_golden.ps1 compares findings on reference drivers with committed golden JSON captured with the IDA 8.4 decompiler. The README reports that decompiler-based scanning raised IOCTL recovery from 7/28 to 28/28 on HEVD and from 4/17 to 17/17 on ALSysIO64 with no false positives. There is no CI, and these results are project-reported.","tests/drivers bundles IDA databases (.i64) and golden findings for eight reference drivers as regression fixtures: ALSysIO64, HEVD, IObitUnlocker, MODAPI, WinRing0x64, amp, beep and zam64 .sys. Those drivers keep their own vendors' terms.","LICENSE was replaced on 2026-07-10 with the PolyForm Noncommercial License 1.0.0, which permits only noncommercial purposes, while release 2.5.1 and earlier carry GPL-3.0 and ida-plugin.json still declares GPL-3.0. IDA Pro and Hex-Rays keep their own terms. The README calls its findings heuristic lead generators for manual review rather than confirmed vulnerabilities."],"requirements_zh":["审阅时最新版本为 2.5.1，于 2026-07-08 以 zip 包发布；所审阅的 main 分支提交（2026-10-19）比它晚四个提交，加入了针对 issue #41 的 IOCTL 恢复修复及新的回归测试样例、为 MajorFunction 标注功能补全 DriverEntry 类型，以及下文提到的许可证变更。README 称插件可在使用 Python 3 的 IDA 7.6+、8.x 和 9.0+ 上运行，版本间的 API 差异由 ida_compat.py 处理；ida-plugin.json 列出 Windows、Linux 和 macOS 宿主。IDA 9.0+ 可通过 hcli plugin install 安装；7.6 和 8.x 需将脚本及其包目录复制到 plugins 目录的顶层。","分析者在 IDA 中加载自备的 Windows 内核驱动（.sys）。Hex-Rays 反编译器为可选项，但最有效的 IOCTL 扫描依赖它，switch 跳转表和立即数操作数扫描作为后备；实验性的 DispatchDeviceControl 搜索仅适用于 x64 驱动。每次运行都会在 IDB 所在目录写入 findings.json、report.html、pooltags.txt 和分析日志，可选分析阶段在 config.py 中开关。","tests/test_dbr.py 是无需 IDA 的纯 Python 回归测试；run_cross_version.ps1 在 IDA 7.6 SP1、8.4 和 Free 9.3 下运行完整流程，run_golden.ps1 则将参考驱动上的分析结果与用 IDA 8.4 反编译器生成并提交的基准 JSON 比较。README 称基于反编译器的扫描使 HEVD 的 IOCTL 恢复数从 7/28 提高到 28/28，ALSysIO64 从 4/17 提高到 17/17，且无误报。仓库没有 CI，上述结果均为项目自报。","tests/drivers 附带八个参考驱动的 IDA 数据库（.i64）及基准结果，作为回归测试样例：ALSysIO64、HEVD、IObitUnlocker、MODAPI、WinRing0x64、amp、beep 和 zam64 .sys。这些驱动仍受其各自厂商条款约束。","LICENSE 已于 2026-07-10 改为 PolyForm Noncommercial License 1.0.0，仅允许非商业用途；而 2.5.1 及更早版本采用 GPL-3.0，ida-plugin.json 也仍声明 GPL-3.0。IDA Pro 和 Hex-Rays 仍受各自条款约束。README 称其结果是供人工复核的启发式线索，而非已确认的漏洞。"],"targets":["binary"],"url":"https://github.com/VoidSec/DriverBuddyReloaded","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/doronz88/fa/blob/b584a37f920995310f257d428e1a0b387cbf489e/commands.md","https://github.com/doronz88/fa/blob/b584a37f920995310f257d428e1a0b387cbf489e/fa/ida_plugin.py","https://github.com/doronz88/fa/blob/b584a37f920995310f257d428e1a0b387cbf489e/elf_loader.py","https://github.com/doronz88/fa/blob/b584a37f920995310f257d428e1a0b387cbf489e/pyproject.toml","https://github.com/doronz88/fa/blob/b584a37f920995310f257d428e1a0b387cbf489e/requirements.txt","https://github.com/doronz88/fa/blob/b584a37f920995310f257d428e1a0b387cbf489e/requirements_testing.txt","https://github.com/doronz88/fa/tree/b584a37f920995310f257d428e1a0b387cbf489e/fa/signatures","https://github.com/doronz88/fa/blob/b584a37f920995310f257d428e1a0b387cbf489e/tests/conftest.py","https://github.com/doronz88/fa/blob/b584a37f920995310f257d428e1a0b387cbf489e/.github/workflows/python-app.yml","https://github.com/doronz88/fa/blob/b584a37f920995310f257d428e1a0b387cbf489e/LICENSE","https://github.com/doronz88/fa/commit/bc88577a0af4e9a91bcfcae4d88bbf9c012fe646","https://github.com/doronz88/fa/releases/tag/v1.0.11","https://pypi.org/project/fa/1.0.11/"],"category":"native-analysis","description_en":"Python framework, mainly used as an IDA plugin, that turns the manual steps of locating symbols, such as finding a string, following its cross-reference and taking the function start, into reusable signatures. Hjson SIG files, grouped into per-platform projects, chain commands that search bytes, strings, immediates or Keystone-assembled opcodes, filter by operands and cross-references, and then set names, types, constants, enums and struct members; Python scripts can drive the same interpreter. In IDA it adds an FA menu and toolbar to find all of a project's symbols, draft a temporary signature from the current function and export symbols plus a C header, and a separate loader runs signatures over a raw ELF file without IDA.","description_zh":"一个主要以 IDA 插件形式使用的 Python 框架，把定位符号时的手工步骤（例如查找字符串、跟随交叉引用、跳到函数起始处）写成可复用的签名。Hjson 格式的 SIG 文件按平台归入不同项目，其中串联的命令可搜索字节、字符串、立即数或用 Keystone 汇编出的指令，按操作数和交叉引用筛选，再设置名称、类型、常量、枚举和结构体成员；也可用 Python 脚本调用同一解释器。在 IDA 中，它添加 FA 菜单和工具栏，用于查找项目的全部符号、根据当前函数生成临时签名草稿，以及导出符号和 C 头文件；另有一个加载器可在不使用 IDA 的情况下对原始 ELF 文件运行签名。","entry_url":"https://awesomerea.org/resources/fa-firmware-analysis/","entry_url_zh":"https://awesomerea.org/zh/resources/fa-firmware-analysis/","evidence_url":"https://github.com/doronz88/fa/blob/b584a37f920995310f257d428e1a0b387cbf489e/README.md","group":"tools","id":"fa-firmware-analysis","json_url":"https://awesomerea.org/resources/fa-firmware-analysis/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/fa-firmware-analysis/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fa-firmware-analysis/index.md","name":"FA (Firmware Analysis)","name_zh":"FA（Firmware Analysis）符号定位自动化工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v1.0.11, published 2026-03-25 without attached files; it tags the reviewed master commit, and the same version is on PyPI as fa 1.0.11. The README installs it by cloning the repository and running pip install -e, says the code base is very IDA-oriented and only considers Ghidra, radare2 or other disassemblers for the future.","The README supports IDA 8.0+, and a March 2026 commit added IDA 9.0 support to make-offset. The package requires Python 3.8+; its dependencies, including keystone-engine, capstone, hjson and rpyc, are installed into IDA's Python. IDA can also run the plugin in script mode to write a symbols file, while the ELF loader script imports pyelftools, which is listed only in the testing requirements.","The binaries, IDA databases and signatures come from the analyst: the repository ships only two small test projects under fa/signatures and no signature sets for real firmware. The README groups signatures into projects partly to lower false positives, and the ELF loader reports symbols with several matches instead of choosing one.","CI lints with flake8 and runs pytest on Python 3.8 to 3.12; the tests check find-bytes on mocked memory segments and ELF symbol search on a small ARM ELF built at test time with Keystone and simpleelf, and neither runs IDA. GPL-3.0 license text; pyproject.toml classifies it as GPLv3 or later."],"requirements_zh":["审阅时最新版本为 v1.0.11，发布于 2026-03-25，未附带任何文件；该标签指向所审阅的 master 提交，PyPI 上也有同版本的 fa 1.0.11。README 的安装方式是克隆仓库后运行 pip install -e，并说明代码库高度面向 IDA，对 Ghidra、radare2 等其他反汇编器的支持仅在未来考虑之列。","README 称支持 IDA 8.0+，2026 年 3 月的一次提交为 make-offset 加入了 IDA 9.0 支持。软件包要求 Python 3.8+；keystone-engine、capstone、hjson、rpyc 等依赖需安装到 IDA 自带的 Python 中。IDA 也可在脚本模式下运行该插件并写出符号文件；ELF 加载器脚本则需要 pyelftools，而它只列在测试依赖中。","二进制文件、IDA 数据库和签名均由分析者自行提供：仓库在 fa/signatures 下只附带两个小型测试项目，没有面向真实固件的签名集。README 将签名按项目划分，部分目的在于降低误报；ELF 加载器遇到多处匹配的符号时会如实报告，而不会替用户选定其一。","CI 使用 flake8 做静态检查，并在 Python 3.8 至 3.12 上运行 pytest；测试在模拟内存段上检查 find-bytes，并在测试时用 Keystone 和 simpleelf 生成的小型 ARM ELF 上检查 ELF 符号搜索，均不运行 IDA。许可证文本为 GPL-3.0，pyproject.toml 的分类标注为 GPLv3 或更高版本。"],"targets":["binary","firmware"],"url":"https://github.com/doronz88/fa","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/LuckyPray/DexKit/blob/f86a036ef2f000e3b42a2e52a25ae3f27770e7f0/doc-source/src/en/guide/home.md","https://github.com/LuckyPray/DexKit/blob/f86a036ef2f000e3b42a2e52a25ae3f27770e7f0/doc-source/src/en/guide/quick-start.md","https://github.com/LuckyPray/DexKit/blob/f86a036ef2f000e3b42a2e52a25ae3f27770e7f0/doc-source/src/en/guide/run-on-desktop.md","https://github.com/LuckyPray/DexKit/blob/f86a036ef2f000e3b42a2e52a25ae3f27770e7f0/dexkit/src/main/java/org/luckypray/dexkit/DexKitBridge.kt","https://github.com/LuckyPray/DexKit/blob/f86a036ef2f000e3b42a2e52a25ae3f27770e7f0/.github/workflows/build-native.yml","https://github.com/LuckyPray/DexKit/tree/f86a036ef2f000e3b42a2e52a25ae3f27770e7f0/dexkit/src/test","https://github.com/LuckyPray/DexKit/blob/f86a036ef2f000e3b42a2e52a25ae3f27770e7f0/LICENSE","https://github.com/LuckyPray/DexKit/blob/f86a036ef2f000e3b42a2e52a25ae3f27770e7f0/Core/LICENSE","https://github.com/LuckyPray/DexKit/releases/tag/2.3.0"],"category":"android","description_en":"C++ DEX parsing library with Kotlin and Java APIs that loads an APK, DEX bytes or an app’s class loader and finds classes, methods and fields by their characteristics rather than their obfuscated names. Matchers combine package scope, modifiers and raw access flags, field, parameter and return types, annotations, the strings and numeric constants a method uses and the methods it calls, while batch queries locate many targets from strings at once; results expose opcodes, callers, invoked methods and fields used. Its guides centre on keeping Xposed hook points working across obfuscated app versions, and the same queries serve as a fast, scriptable search over an app’s bytecode.","description_zh":"以 C++ 实现的 DEX 解析库，提供 Kotlin 与 Java API，可加载 APK、DEX 字节数据或应用的类加载器，并按特征而非混淆后的名称查找类、方法和字段。匹配条件可组合包名范围、修饰符与原始访问标志、字段类型、参数类型和返回类型、注解、方法使用的字符串与数值常量以及其调用的方法；批量查询可依据字符串一次定位多个目标，查询结果还提供操作码、调用者、被调用方法和所用字段。其文档以让 Xposed Hook 点在混淆后的不同应用版本间保持可用为主要场景，同样的查询也可用来快速、可编程地检索应用字节码。","entry_url":"https://awesomerea.org/resources/dexkit/","entry_url_zh":"https://awesomerea.org/zh/resources/dexkit/","evidence_url":"https://github.com/LuckyPray/DexKit/blob/f86a036ef2f000e3b42a2e52a25ae3f27770e7f0/README.md","group":"tools","id":"dexkit","json_url":"https://awesomerea.org/resources/dexkit/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dexkit/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dexkit/index.md","name":"DexKit","name_zh":"DexKit 混淆 DEX 代码检索库","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 2.3.0, published 2026-09-22 with no attached files, which added numeric-literal reading and raw DEX access-flag matching and optimized caching and string queries. The reviewed master commit of 2026-10-10 is two core fixes ahead of that tag. Packages are published on Maven Central as org.luckypray:dexkit; the artifact ID changed from DexKit with 2.0.","Android projects need JDK 11+, Kotlin 1.5+, AGP 4.2+ and minSdkVersion 21+, with 23+ recommended because libdexkit.so may not load from compressed APK libraries on older settings. Since 1.1.0 it also runs on Windows, Linux and macOS from a source checkout built with gcc or clang, CMake and Ninja or Make, using MSYS2 on Windows, and CI builds the native libraries on all three. The APK, DEX data or class loader to query comes from the user; the repository’s only app is its own demo.","The guides present DexKit as a tool for Xposed module developers, and the README examples run inside an Xposed hook. Matches depend on the conditions the user writes, so they identify candidate classes and members rather than recover original names. Unit tests with smali fixtures are in the repository, but the reviewed workflows only build the native libraries and packages.","Everything outside Core/ is Apache-2.0, while the native code in Core/ is LGPL-3.0, although the README’s license badge links only to the LGPL. The README credits AOSP’s slicer, ThreadPool and parallel-hashmap as third-party sources. Apps analysed with it keep their own terms."],"requirements_zh":["审阅时最新版本为 2.3.0，发布于 2026-09-22，未附带文件；该版本新增读取数值字面量和匹配原始 DEX 访问标志的功能，并优化了缓存与字符串查询。所审阅的 master 提交（2026-10-10）比该标签多两个核心修复。软件包以 org.luckypray:dexkit 发布在 Maven Central；自 2.0 起构件 ID 由 DexKit 改为 dexkit。","Android 项目需要 JDK 11+、Kotlin 1.5+、AGP 4.2+ 和 minSdkVersion 21+，建议 23+，因为在较低设置下 libdexkit.so 可能因 APK 中的库被压缩而无法加载。自 1.1.0 起也可在 Windows、Linux 和 macOS 桌面上基于源码运行，需用 gcc 或 clang、CMake 以及 Ninja 或 Make 构建，Windows 上使用 MSYS2；CI 会在这三个平台上构建原生库。要查询的 APK、DEX 数据或类加载器由使用者提供；仓库中唯一的应用是项目自己的演示应用。","文档将 DexKit 定位为面向 Xposed 模块开发者的工具，README 示例也运行在 Xposed Hook 中。匹配结果取决于使用者编写的条件，因此只能找出候选的类和成员，而不能恢复原始名称。仓库包含使用 smali 测试样本的单元测试，但所审阅的工作流只构建原生库和软件包。","Core/ 以外的部分采用 Apache-2.0，Core/ 中的原生代码采用 LGPL-3.0，但 README 的许可证徽章只链接到 LGPL。README 列出 AOSP 的 slicer、ThreadPool 和 parallel-hashmap 作为第三方来源。用它分析的应用仍受各自条款约束。"],"targets":["app"],"url":"https://github.com/LuckyPray/DexKit","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/Evil0ctal/AndroidReverse101/tree/9b72d20439155893ab2ce1b8af56af41c17d0411","https://github.com/Evil0ctal/AndroidReverse101/blob/9b72d20439155893ab2ce1b8af56af41c17d0411/AndroidReverse101/%E7%AC%AC%E4%B8%80%E9%98%B6%E6%AE%B5_%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%9F%BA%E7%A1%80_%E9%80%86%E5%90%91%E6%A6%82%E8%AE%BA/Day_20_CTF_%E9%80%86%E5%90%91%E6%8C%91%E6%88%98_%E5%88%9D%E7%BA%A7.md","https://github.com/Evil0ctal/AndroidReverse101/blob/9b72d20439155893ab2ce1b8af56af41c17d0411/AndroidReverse101/%E7%AC%AC%E4%BA%8C%E9%98%B6%E6%AE%B5_APK%E9%80%86%E5%90%91%E5%9F%BA%E7%A1%80/Day_31_Xposed_%E5%85%A5%E9%97%A8.md","https://github.com/Evil0ctal/AndroidReverse101/blob/9b72d20439155893ab2ce1b8af56af41c17d0411/Crackmes/Android/Level_01/README.md","https://github.com/Evil0ctal/AndroidReverse101/tree/9b72d20439155893ab2ce1b8af56af41c17d0411/AndroidReverse101_Indonesian","https://github.com/Evil0ctal/AndroidReverse101/blob/9b72d20439155893ab2ce1b8af56af41c17d0411/LICENSE","https://github.com/OWASP/mastg/tree/02ffd85fb74383ec2a30b42866d38f89d72c0ead/Crackmes/Android"],"category":"learning","description_en":"A Chinese-language Android reverse-engineering course by Evil0ctal, planned as 100 daily lessons. It starts from number systems, ARM assembly, the Dalvik/ART runtime and APK loading, then covers APK and DEX structure, Smali editing and repackaging, Frida and Xposed hooking, JNI and native-library analysis, traffic analysis, obfuscation and app hardening, with commands and code for tools such as jadx, apktool, readelf, GDB/LLDB, Frida and Burp Suite. A Crackmes folder adds copies of OWASP's UnCrackable and r2pay practice apps, and a community Indonesian translation follows the published lessons.","description_zh":"Evil0ctal 编写的中文 Android 逆向课程，计划分 100 天、每天一课。课程从进制、ARM 汇编、Dalvik/ART 运行时和 APK 加载机制讲起，继而介绍 APK 与 DEX 结构、Smali 修改与重新打包、Frida 和 Xposed Hook、JNI 与 Native 库分析、抓包分析、代码混淆及应用加固，并结合 jadx、apktool、readelf、GDB/LLDB、Frida、Burp Suite 等工具给出命令和代码。Crackmes 目录收录 OWASP UnCrackable 与 r2pay 练习应用的副本，另有社区贡献的印度尼西亚语译本与已发布课程对应。","entry_url":"https://awesomerea.org/resources/androidreverse101/","entry_url_zh":"https://awesomerea.org/zh/resources/androidreverse101/","evidence_url":"https://github.com/Evil0ctal/AndroidReverse101/blob/9b72d20439155893ab2ce1b8af56af41c17d0411/README.md","group":"learn","id":"androidreverse101","json_url":"https://awesomerea.org/resources/androidreverse101/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/androidreverse101/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/androidreverse101/index.md","name":"AndroidReverse101","name_zh":"AndroidReverse101（Android 逆向 100 天教程）","record_type":"resource","relationship":"learning","requirements":["Reviewed at commit 9b72d20 (2025-12-31), the merge of a community Indonesian translation; the Chinese lessons and crackmes were committed between 22 and 25 February 2025, and there are no releases. The README outlines 100 days in three phases, but the tree holds 44 lessons (Days 1–41, 60, 70 and 100), and the Indonesian translation covers the same 44, many in shortened form.","No outside target files are needed to begin: the Day 20 lesson supplies crackme source for learners to compile, and the Crackmes folder commits five practice APKs, UnCrackable-Level1.apk, UnCrackable-Level2.apk, UnCrackable-Level3.apk, r2pay-v0.9.apk and r2pay-v1.0.apk, whose Git blobs are identical to the crackmes in OWASP's MASTG repository. Only Level 1 has a written walkthrough; the README's Crackme 2 link points to a file that is not in the tree.","Lessons assume a desktop host with adb and an Android device, and name tools including jadx, apktool, baksmali, readelf, GDB/LLDB, IDA Pro, Ghidra, Frida with frida-server on the device, Burp Suite and Wireshark; the Xposed lesson starts from a device rooted with Magisk.","Many phase-two lessons and the Day 70 and Day 100 exercises are framed around modifying third-party apps, including defeating licence, paid-feature, root-detection, certificate-pinning and anti-debugging checks. The README and lessons carry no note on legal use or authorization.","The repository is MIT-licensed (copyright 2025 Evil0ctal); the crackmes come from OWASP's CC BY-SA 4.0 MASTG repository, and the tools named keep their own terms. The lessons mention AI as a reverse-engineering subject."],"requirements_zh":["审阅提交为 9b72d20（2025-12-31），即合并社区印度尼西亚语译本的提交；中文课程和 Crackme 题目提交于 2025 年 2 月 22 日至 25 日，项目没有发布版本。README 规划了分三个阶段的 100 天课程，但仓库中只有 44 节课（第 1–41 天及第 60、70、100 天）；印度尼西亚语译本覆盖同样的 44 节，其中不少篇幅有所压缩。","入门无需额外的目标文件：第 20 天课程提供 Crackme 源码供学习者自行编译，Crackmes 目录提交了五个练习 APK，即 UnCrackable-Level1.apk、UnCrackable-Level2.apk、UnCrackable-Level3.apk、r2pay-v0.9.apk 和 r2pay-v1.0.apk，其 Git blob 与 OWASP MASTG 仓库中的 Crackme 完全相同。只有 Level 1 附有解题记录；README 中 Crackme 2 的链接指向的文件并不在仓库中。","课程默认使用装有 adb 的桌面主机和一台 Android 设备，提到的工具包括 jadx、apktool、baksmali、readelf、GDB/LLDB、IDA Pro、Ghidra、需在设备上运行 frida-server 的 Frida、Burp Suite 和 Wireshark；Xposed 一课要求设备先用 Magisk 获取 Root。","第二阶段的许多课程以及第 70、100 天的练习都以修改第三方应用为主线，包括绕过授权、付费功能、Root 检测、证书固定和反调试等检查。README 和课程均未就合法使用或授权作出任何说明。","仓库采用 MIT 许可证（版权归 Evil0ctal，2025 年）；Crackme 题目来自采用 CC BY-SA 4.0 的 OWASP MASTG 仓库，课程提到的工具适用各自的条款。课程把 AI 作为逆向对象之一提及。"],"targets":["app"],"url":"https://github.com/Evil0ctal/AndroidReverse101","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/hkr/fuji-cam-wifi-tool/blob/c597fc42151f0e4c726714e63dd13552b9fad3aa/lib/include/comm.hpp","https://github.com/hkr/fuji-cam-wifi-tool/blob/c597fc42151f0e4c726714e63dd13552b9fad3aa/lib/include/message.hpp","https://github.com/hkr/fuji-cam-wifi-tool/blob/c597fc42151f0e4c726714e63dd13552b9fad3aa/lib/include/capabilities.hpp","https://github.com/hkr/fuji-cam-wifi-tool/blob/c597fc42151f0e4c726714e63dd13552b9fad3aa/lib/src/commands.cpp","https://github.com/hkr/fuji-cam-wifi-tool/blob/c597fc42151f0e4c726714e63dd13552b9fad3aa/tool/src/main.cpp","https://github.com/hkr/fuji-cam-wifi-tool/blob/c597fc42151f0e4c726714e63dd13552b9fad3aa/tool/CMakeLists.txt","https://github.com/hkr/fuji-cam-wifi-tool/blob/c597fc42151f0e4c726714e63dd13552b9fad3aa/.gitmodules","https://github.com/hkr/fuji-cam-wifi-tool/blob/c597fc42151f0e4c726714e63dd13552b9fad3aa/AUTHORS.txt","https://github.com/hkr/fuji-cam-wifi-tool/blob/c597fc42151f0e4c726714e63dd13552b9fad3aa/LICENSE"],"category":"reconstruction-cases","description_en":"Reimplements the Wi-Fi remote-control protocol of Fujifilm X-series cameras as a C++ library and an interactive command-line client that joins the camera's access point. Its headers name the control, event and JPEG live-view ports, message types and camera property codes, and source comments keep hex traces of exchanges along with what \"the app\" sends; the client connects, fires the shutter, records video, adjusts exposure settings and focus point, and streams live view, optionally into a Linux webcam device. README calls the tool very limited and mostly undocumented, so the protocol knowledge lives in code and comments rather than a specification.","description_zh":"以 C++ 库和交互式命令行客户端重新实现 Fujifilm X 系列相机的 Wi-Fi 遥控协议，客户端需接入相机自建的无线接入点。头文件列出控制、事件和 JPEG 实时取景所用端口、报文类型及相机属性代码，源码注释保留了若干交互的十六进制记录，并注明“the app”发送的内容；客户端可连接相机、触发快门、录制视频、调整曝光参数与对焦点，并传输实时取景画面，还可选择输出到 Linux 摄像头设备。README 称该工具功能很有限、基本没有文档，因此协议知识只存在于代码和注释中，并无成文规范。","entry_url":"https://awesomerea.org/resources/fuji-cam-wifi-tool-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/fuji-cam-wifi-tool-protocol-case/","evidence_url":"https://github.com/hkr/fuji-cam-wifi-tool/blob/c597fc42151f0e4c726714e63dd13552b9fad3aa/README.md","group":"cases","id":"fuji-cam-wifi-tool-protocol-case","json_url":"https://awesomerea.org/resources/fuji-cam-wifi-tool-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/fuji-cam-wifi-tool-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fuji-cam-wifi-tool-protocol-case/index.md","name":"fuji-cam-wifi-tool: reconstructing Fujifilm X-series Wi-Fi remote control","name_zh":"fuji-cam-wifi-tool：重建 Fujifilm X 系列相机 Wi-Fi 遥控协议","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at master commit c597fc4 of 2021-03-17, the repository's last push; there are no releases or tags. The README describes an attempt to reverse-engineer the protocol, calls the tool very limited and mostly undocumented, and suggests reading the code. Its connection steps name the X-T10 and a source comment mentions focus-point ranges on the X-T100; no compatibility list for other X-series models is given.","Requires the user's own Fujifilm X-series camera with Wi-Fi remote control: the computer joins the camera's access point, the client connects to 192.168.0.1 on ports 55740–55742, and the first connection must be confirmed on the camera, where the tool registers as \"HackedClient\". The repository contains no camera firmware, Fujifilm app or capture files; the README gives Wireshark display filters for viewing control messages and streamed JPEG frames.","README documents CMake builds on macOS, Linux and Windows (CMake 2.8.11 minimum, C++11). The interactive shell needs the hkr/linenoise-ng submodule initialized, and Windows builds link Winsock. Optional OpenCV support adds stream_cv, which can feed live view into a Linux v4l2loopback device for use as a webcam.","The repository has no tests or CI. Message meanings are inferred in code comments, several of which are marked unknown or TODO, and command behavior on cameras remains contributor-reported.","Released under the Unlicense, a public-domain dedication; AUTHORS.txt lists five contributors. Fujifilm cameras, firmware, apps and trademarks keep their own rights."],"requirements_zh":["审阅基于 master 分支 2021-03-17 的提交 c597fc4，即仓库最后一次推送；没有发布版本或标签。README 称这是逆向该协议的尝试，工具功能很有限、基本没有文档，并建议直接阅读代码。连接步骤以 X-T10 为例，源码注释另提到 X-T100 的对焦点范围；未给出其他 X 系列型号的兼容列表。","需要使用者自有、支持 Wi-Fi 遥控的 Fujifilm X 系列相机：电脑接入相机自建的无线接入点，客户端连接 192.168.0.1 的 55740–55742 端口，首次连接须在相机上确认，工具会以“HackedClient”名义注册。仓库不含相机固件、Fujifilm 应用或抓包文件；README 提供了用于查看控制报文和 JPEG 流帧的 Wireshark 显示过滤器。","README 说明可在 macOS、Linux 和 Windows 上用 CMake 构建（最低 CMake 2.8.11，C++11）。交互式命令行需要初始化 hkr/linenoise-ng 子模块，Windows 构建需链接 Winsock。可选的 OpenCV 支持增加 stream_cv 命令，可把实时取景送入 Linux v4l2loopback 设备作为摄像头使用。","仓库没有测试或 CI。报文含义是在代码注释中推断的，其中多处标为未知或待办，命令在相机上的表现仍属贡献者自述。","采用 Unlicense（公有领域贡献声明）；AUTHORS.txt 列出五位贡献者。Fujifilm 相机、固件、应用和商标仍归各自权利人所有。"],"targets":["protocol"],"url":"https://github.com/hkr/fuji-cam-wifi-tool","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/pyinstxtractor/pyinstxtractor-ng/blob/1ed86ccc575cf10a42454a217e72540adf359f2e/pyinstxtractor_ng.py","https://github.com/pyinstxtractor/pyinstxtractor-ng/blob/1ed86ccc575cf10a42454a217e72540adf359f2e/pyinstxtractor_ng.py#L1-L15","https://github.com/pyinstxtractor/pyinstxtractor-ng/blob/1ed86ccc575cf10a42454a217e72540adf359f2e/pyproject.toml","https://github.com/pyinstxtractor/pyinstxtractor-ng/blob/1ed86ccc575cf10a42454a217e72540adf359f2e/requirements-dev.txt","https://github.com/pyinstxtractor/pyinstxtractor-ng/blob/1ed86ccc575cf10a42454a217e72540adf359f2e/.github/workflows/build.yaml","https://github.com/pyinstxtractor/pyinstxtractor-ng/blob/1ed86ccc575cf10a42454a217e72540adf359f2e/LICENSE","https://github.com/pyinstxtractor/pyinstxtractor-ng/releases/tag/2026.07.03","https://pypi.org/project/pyinstxtractor-ng/2026.7.3/","https://github.com/extremecoders-re/pyinstxtractor/blob/815d31cf26bc71e62f851b2e549452e7b7c9dd98/README.md"],"category":"native-analysis","description_en":"Fork of PyInstaller Extractor (pyinstxtractor) by the same author that extracts the bundled CArchive files and PYZ modules from Linux ELF and Windows PE executables built with PyInstaller, writing .pyc files with repaired headers for a separate bytecode decompiler. Unlike the original script, it unmarshals the PYZ archive with the xdis library, so it does not have to run under the Python version that built the executable, and it automatically decrypts PYZ entries that PyInstaller's optional AES encryption protected, using the key module bundled in the same executable. A one-directory mode extracts the PYZ next to the other files so the result can be run directly, and --info prints archive metadata such as versions, entry points and encryption without writing files.","description_zh":"PyInstaller Extractor（pyinstxtractor）的同一作者所做的分支版本，可从 PyInstaller 构建的 Linux ELF 和 Windows PE 可执行文件中提取打包的 CArchive 文件和 PYZ 模块，并输出修复了文件头的 .pyc 文件，供另行使用的字节码反编译器处理。与原脚本不同，它借助 xdis 库反序列化 PYZ 归档，因此无须在构建该可执行文件时所用的 Python 版本下运行；对于经 PyInstaller 可选 AES 加密保护的 PYZ 条目，它会利用同一可执行文件中打包的密钥模块自动解密。单目录模式会把 PYZ 内容提取到其他文件旁边，便于直接运行提取结果；--info 选项则只输出版本、入口点和加密情况等归档元数据，而不写入任何文件。","entry_url":"https://awesomerea.org/resources/pyinstxtractor-ng/","entry_url_zh":"https://awesomerea.org/zh/resources/pyinstxtractor-ng/","evidence_url":"https://github.com/pyinstxtractor/pyinstxtractor-ng/blob/1ed86ccc575cf10a42454a217e72540adf359f2e/README.md","group":"tools","id":"pyinstxtractor-ng","json_url":"https://awesomerea.org/resources/pyinstxtractor-ng/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pyinstxtractor-ng/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pyinstxtractor-ng/index.md","name":"pyinstxtractor-ng (PyInstaller Extractor Next Generation)","name_zh":"pyinstxtractor-ng 新一代 PyInstaller 程序提取工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 2026.07.03, published 2026-07-03, with a Linux binary and a Windows .exe built by PyInstaller, so those builds need no Python installation; the same version is on PyPI as pyinstxtractor-ng 2026.7.3. The reviewed main commit is two commits ahead of that tag and only relaxes the pycryptodome requirement from exactly 3.17 to 3.19.1 or later below 4.","Running the script needs Python 3.8+, xdis pinned to 6.3.0 and pycryptodome; a leftover Poetry section in pyproject.toml still caps Python below 3.13. Release binaries come from a manually triggered workflow that builds with Python 3.8 and PyInstaller 5.10.1, and the repository has no tests or test executables.","The script header lists PyInstaller 2.0 through 5.10.1 as supported, and the README states no version range. Entries that can be neither decompressed nor decrypted are saved unchanged with an .encrypted suffix.","The PyInstaller executable comes from the user, and turning the recovered bytecode into source needs a separate decompiler. Recovered code remains subject to the rights of the original program’s owner.","GPL-3.0-only."],"requirements_zh":["审阅时最新版本为 2026.07.03，发布于 2026-07-03，附带由 PyInstaller 构建的 Linux 二进制和 Windows .exe，因此使用这些构建无需安装 Python；PyPI 上也有同版本的 pyinstxtractor-ng 2026.7.3。所审阅的 main 提交比该标签多两个提交，仅把 pycryptodome 的版本要求从固定的 3.17 放宽为 3.19.1 及以上、低于 4。","直接运行脚本需要 Python 3.8+、固定为 6.3.0 版的 xdis 以及 pycryptodome；pyproject.toml 中残留的 Poetry 配置段仍把 Python 限制在 3.13 以下。发布的二进制由手动触发的工作流使用 Python 3.8 和 PyInstaller 5.10.1 构建；仓库中没有测试，也没有测试用可执行文件。","脚本头部列出所支持的 PyInstaller 版本为 2.0 至 5.10.1，README 未说明版本范围。既无法解压也无法解密的条目会原样保存并加上 .encrypted 后缀。","PyInstaller 可执行文件由使用者自行提供；要把恢复出的字节码还原为源码，还需另用反编译器。恢复出的代码仍受原程序权利人的权利约束。","采用 GPL-3.0-only 许可。"],"targets":["app","binary"],"url":"https://github.com/pyinstxtractor/pyinstxtractor-ng","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/patois/RETracker/blob/f6698f602fe41fededfd9f19fbe1b74bf68a85f0/DEPENDENCIES.md","https://github.com/patois/RETracker/blob/f6698f602fe41fededfd9f19fbe1b74bf68a85f0/fwtool.py","https://github.com/patois/RETracker/blob/f6698f602fe41fededfd9f19fbe1b74bf68a85f0/retracker.py","https://github.com/patois/RETracker/blob/f6698f602fe41fededfd9f19fbe1b74bf68a85f0/tracker/firmware.py","https://github.com/patois/RETracker/blob/f6698f602fe41fededfd9f19fbe1b74bf68a85f0/tracker/tracker.py","https://github.com/patois/RETracker/tree/f6698f602fe41fededfd9f19fbe1b74bf68a85f0/polyp"],"category":"firmware","description_en":"Python reverse-engineering framework for the Polyend Tracker music device that patches the vendor's stock firmware, replacing an unused USB RAWHID handler with its own command handler. With the patched firmware flashed, a host CLI reads, hex-dumps and disassembles device memory in ARM or Thumb mode, writes memory, runs code at an address, assembles and executes position-independent \"Polyp\" modules such as a pad text scroller and screen fades, and copies files to the SD card over USB. Its fwtool.py also unpacks and repacks the Intel HEX .ptf firmware images for loading into a disassembler.","description_zh":"面向 Polyend Tracker 音乐设备的 Python 逆向工程框架：为厂商原版固件打补丁，用自己的命令处理程序替换一个未使用的 USB RAWHID 处理程序。刷入打过补丁的固件后，主机命令行工具即可按 ARM 或 Thumb 模式读取、十六进制转储和反汇编设备内存，还能写入内存、在指定地址执行代码，汇编并运行称为“Polyp”的位置无关模块（如在打击垫上显示滚动文字和屏幕淡入淡出），以及通过 USB 向 SD 卡复制文件。其 fwtool.py 还可解包和重新打包 Intel HEX 格式的 .ptf 固件镜像，便于载入反汇编器。","entry_url":"https://awesomerea.org/resources/retracker/","entry_url_zh":"https://awesomerea.org/zh/resources/retracker/","evidence_url":"https://github.com/patois/RETracker/blob/f6698f602fe41fededfd9f19fbe1b74bf68a85f0/README.md","group":"tools","id":"retracker","json_url":"https://awesomerea.org/resources/retracker/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/retracker/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/retracker/index.md","name":"RETracker","name_zh":"RETracker Polyend Tracker 逆向工程框架","record_type":"resource","relationship":"foundation","requirements":["Only Polyend Tracker firmware 1.5.0 is supported; the README says a private 1.6.0 port was not released because Polyend removed the code the patches relied on. The reviewed main commit of 2024-06-19 only announces a discussion thread, the last code change dates from 2022, and there are no releases or tags.","Patching needs the user's own copy of the stock PolyendTracker_1.5.0.ptf image, which the repository does not include, and the patched image is flashed through the device's normal firmware-update menu. The README warns that the update screen behaves differently with patched images, recommends backing up the SD card first and points to the Tracker's emergency update procedure for recovery.","Needs Python 3 with capstone, keystone-engine, pyusb, intelhex and simple-hexdump; the host finds the device over USB by vendor and product ID. The README's reverse-engineering notes treat the hardware as a Teensy 3.6-class MK66FX microcontroller, give the firmware load address and a RAM address used for Polyps, and say IDA Pro, and probably Ghidra or Binary Ninja, can load the Intel HEX image directly.","There are no tests or CI. Behaviour is documented through README examples and a linked demo video.","No license file was found and GitHub detects none, so reuse terms are unstated. Polyend's firmware keeps its own rights, and the README disclaimer places any device damage at the user's risk."],"requirements_zh":["仅支持 Polyend Tracker 1.5.0 固件；README 称已有一个未公开的 1.6.0 移植版本，因 Polyend 移除了补丁所依赖的代码而没有发布。所审阅的 main 分支提交（2024-06-19）只是发布讨论区公告，最后一次代码改动在 2022 年，项目没有发布版本或标签。","打补丁需要用户自备原版 PolyendTracker_1.5.0.ptf 固件镜像，仓库不提供该文件；打过补丁的镜像通过设备正常的固件更新菜单刷入。README 提醒刷入补丁镜像时更新界面的表现会有所不同，建议事先备份 SD 卡，并指出可通过 Tracker 的紧急更新流程恢复。","需要 Python 3 及 capstone、keystone-engine、pyusb、intelhex 和 simple-hexdump；主机通过 USB 厂商 ID 和产品 ID 查找设备。README 的逆向笔记认为该硬件是与 Teensy 3.6 同类的 MK66FX 微控制器，给出了固件加载地址和用于运行 Polyp 的 RAM 地址，并称 IDA Pro（可能还有 Ghidra 或 Binary Ninja）可直接载入 Intel HEX 镜像。","项目没有测试或 CI。其行为由 README 示例和链接的演示视频记录。","仓库中没有许可证文件，GitHub 也未检测到许可证，因此复用条款未予说明。Polyend 固件仍归其权利人所有，README 的免责声明指出设备损坏风险由用户自行承担。"],"targets":["firmware"],"url":"https://github.com/patois/RETracker","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/trailofbits/CoBRA/blob/af44b8ad7c8ec548d431463475e93b0118e77a29/BUILD.md","https://github.com/trailofbits/CoBRA/blob/af44b8ad7c8ec548d431463475e93b0118e77a29/DATASETS.md","https://github.com/trailofbits/CoBRA/blob/af44b8ad7c8ec548d431463475e93b0118e77a29/THIRD_PARTY_LICENSES","https://github.com/trailofbits/CoBRA/blob/af44b8ad7c8ec548d431463475e93b0118e77a29/docs/methodology/README.md","https://github.com/trailofbits/CoBRA/blob/af44b8ad7c8ec548d431463475e93b0118e77a29/CMakeLists.txt","https://github.com/trailofbits/CoBRA/blob/af44b8ad7c8ec548d431463475e93b0118e77a29/tools/cobra-cli/main.cpp","https://github.com/trailofbits/CoBRA/blob/af44b8ad7c8ec548d431463475e93b0118e77a29/lib/llvm/CobraPass.cpp","https://github.com/trailofbits/CoBRA/blob/af44b8ad7c8ec548d431463475e93b0118e77a29/test/llvm/CMakeLists.txt","https://github.com/trailofbits/CoBRA/blob/af44b8ad7c8ec548d431463475e93b0118e77a29/.github/workflows/ci.yml","https://github.com/trailofbits/CoBRA/blob/af44b8ad7c8ec548d431463475e93b0118e77a29/LICENSE","https://github.com/trailofbits/CoBRA/releases/tag/v1.3.0"],"category":"binary-libraries","description_en":"Trail of Bits' C++23 simplifier for Mixed Boolean-Arithmetic (MBA) expressions, an obfuscation technique that rewrites simple computations as interleaved arithmetic, bitwise and shift operations. Given an expression and a bit width from 1 to 64, cobra-cli returns a simpler equivalent: a worklist scheduler combines signature-vector and change-of-basis techniques, semilinear handling of constant masks, polynomial recovery, decomposition of mixed products and subexpression lifting, and each result is checked on random inputs or, optionally, with a Z3 equivalence proof. The same engine is available as a library and as an optional LLVM pass plugin that simplifies MBA expressions it detects in LLVM IR.","description_zh":"Trail of Bits 开发的 C++23 混合布尔-算术（MBA）表达式化简器。MBA 是一种混淆技术，会把简单运算改写为算术、按位与移位运算交织的复杂形式。cobra-cli 接受一个表达式和 1 至 64 位的位宽，输出更简单的等价式：工作列表调度器组合签名向量与基变换技术、带常量掩码的半线性处理、多项式恢复、混合乘积分解和子表达式提升，每个结果都会用随机输入抽查，也可选用 Z3 做等价性证明。同一引擎还以库的形式提供，并可编译为 LLVM 优化遍插件，对其在 LLVM IR 中检测到的 MBA 表达式进行化简。","entry_url":"https://awesomerea.org/resources/cobra-mba-simplifier/","entry_url_zh":"https://awesomerea.org/zh/resources/cobra-mba-simplifier/","evidence_url":"https://github.com/trailofbits/CoBRA/blob/af44b8ad7c8ec548d431463475e93b0118e77a29/README.md","group":"tools","id":"cobra-mba-simplifier","json_url":"https://awesomerea.org/resources/cobra-mba-simplifier/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/cobra-mba-simplifier/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cobra-mba-simplifier/index.md","name":"CoBRA (Coefficient-Based Reconstruction of Arithmetic)","name_zh":"CoBRA 混合布尔-算术表达式化简器","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v1.3.0, published 2026-06-30 without prebuilt binaries. The reviewed master commit is eight commits ahead: README edits, a CI dependency bump, a fix that requires LLVM only when the pass is built, and a fix that lets cobra-core build under MSVC.","Builds from source with CMake 3.20+ and a C++23 compiler (GCC 13+, Clang 17+ or Apple Clang 16+); a dependency superbuild builds Abseil and Highway, and GoogleTest when tests are enabled. The LLVM pass plugin needs LLVM 19 to 22, runs through opt as cobra-simplify, replaces an expression only when the simplified form is cheaper and drops nuw/nsw flags. Z3 checking is compiled in only when CMake finds Z3; otherwise cobra-cli warns that --verify is ignored. CI builds with Clang 22 and LLVM 22 on Ubuntu 24.04 on every run, and with GCC 14 and on macOS 15 only for version tags; Windows is not in CI.","cobra-cli takes the obfuscated expression as text, with at most 16 variables by default, so expressions in a binary must first be recovered with other tools or reach the pass as LLVM IR. The README's known limitations are deeply interleaved mixed-polynomial MBAs that exhaust the worklist budget, a few candidates that are correct only on Boolean inputs and are reported as verify-failed, and no general logic minimization.","The README reports 1,195 tests, and DATASETS.md reports 75,023 of 75,126 parsed expressions from 35 dataset files and seven sources simplified and spot-checked (99.86%). The OSES subsets are disabled for running out of memory or taking minutes per expression, so their figures come from an earlier run; DATASETS.md says the numbers are checked on every CI run, but the reviewed CI workflow excludes the dataset benchmark tests.","Apache-2.0 for CoBRA. The test/datasets files are redistributed from third-party research projects: THIRD_PARTY_LICENSES lists most as effectively GPL-3.0-only, Loki's as AGPL-3.0-only, and the OSES and ObfuscatorX sets with unspecified or unknown licenses."],"requirements_zh":["审阅时最新版本为 v1.3.0，发布于 2026-06-30，未附带预编译二进制。所审阅的 master 提交比该版本多八个提交：修改 README、升级 CI 依赖、改为仅在构建优化遍插件时才要求 LLVM，以及使 cobra-core 能用 MSVC 构建。","从源码构建需要 CMake 3.20+ 和 C++23 编译器（GCC 13+、Clang 17+ 或 Apple Clang 16+）；依赖超级构建会编译 Abseil 和 Highway，启用测试时还会编译 GoogleTest。LLVM 优化遍插件需要 LLVM 19 至 22，通过 opt 以 cobra-simplify 名称运行，仅在化简结果开销更低时才替换表达式，并会丢弃 nuw/nsw 标志。只有 CMake 找到 Z3 时才会编译 Z3 校验功能，否则 cobra-cli 会提示 --verify 被忽略。CI 每次都在 Ubuntu 24.04 上用 Clang 22 和 LLVM 22 构建，GCC 14 和 macOS 15 构建仅针对版本标签运行；Windows 不在 CI 范围内。","cobra-cli 以文本形式接收混淆表达式，默认最多 16 个变量，因此二进制中的表达式须先借助其他工具恢复，或以 LLVM IR 形式交给优化遍处理。README 列出的已知局限包括：算术与按位运算深度交织、提升后仍耗尽工作列表预算的混合多项式 MBA；少数只在布尔输入上成立、因而被报告为校验失败的候选结果；以及不提供通用逻辑最小化。","README 报告共有 1,195 项测试；DATASETS.md 报告，在来自七个来源、35 个数据集文件的 75,126 个可解析表达式中，有 75,023 个完成化简并通过抽查（99.86%）。OSES 子集因内存耗尽或每个表达式需耗时数分钟而被停用，其数字来自此前的一次运行；DATASETS.md 称这些数字在每次 CI 运行时都会核对，但所审阅的 CI 工作流排除了数据集基准测试。","CoBRA 本身采用 Apache-2.0 许可。test/datasets 中的文件转载自第三方研究项目：THIRD_PARTY_LICENSES 将其中大部分列为实际适用 GPL-3.0-only，Loki 数据集为 AGPL-3.0-only，OSES 和 ObfuscatorX 数据集的许可证未说明或未知。"],"targets":["binary"],"url":"https://github.com/trailofbits/CoBRA","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/Alia5/PiCCANTE/blob/62ede82f56ae1cc4addf9ef7b7bf20d447d8d712/.gitmodules","https://github.com/Alia5/PiCCANTE/blob/62ede82f56ae1cc4addf9ef7b7bf20d447d8d712/CMakeLists.txt","https://github.com/Alia5/PiCCANTE/blob/62ede82f56ae1cc4addf9ef7b7bf20d447d8d712/.github/workflows/build_base.yml","https://github.com/Alia5/PiCCANTE/blob/62ede82f56ae1cc4addf9ef7b7bf20d447d8d712/.github/workflows/PR_check.yml","https://github.com/Alia5/PiCCANTE/tree/62ede82f56ae1cc4addf9ef7b7bf20d447d8d712/hardware/PiCCANTE-OBD-Dongle","https://github.com/Alia5/PiCCANTE/tree/62ede82f56ae1cc4addf9ef7b7bf20d447d8d712/src/ELM327","https://github.com/Alia5/PiCCANTE/blob/62ede82f56ae1cc4addf9ef7b7bf20d447d8d712/LICENSE.txt","https://github.com/Alia5/PiCCANTE/releases/tag/v0.0.1","https://github.com/Alia5/PiCCANTE/releases/tag/dev-latest"],"category":"protocol-analysis","description_en":"Raspberry Pi Pico firmware and hardware designs for a low-cost CAN bus interface aimed at exploring and reverse engineering vehicle networks. It runs two CAN 2.0B channels on RP2040 boards or three on RP2350 boards through the PIO-based can2040 library and exposes them over USB as a GVRET device for SavvyCAN and as per-channel SLCAN devices for Linux SocketCAN via can-utils. A configuration shell, a partial ELM327 emulator for OBD-II PID requests with ISO-TP multi-frame replies, and Wi-Fi, Bluetooth and a web interface on Pico W boards complete the firmware, alongside perfboard and KiCad PCB designs with 3D-printable cases for an OBD-II dongle.","description_zh":"基于 Raspberry Pi Pico 的低成本 CAN 总线接口固件与硬件设计，用于探索和逆向分析车辆网络。它借助基于 PIO 的 can2040 库，在 RP2040 开发板上运行两路、在 RP2350 开发板上运行三路 CAN 2.0B 通道，并通过 USB 以 GVRET 设备的形式供 SavvyCAN 使用，同时为每个通道提供 SLCAN 设备，经 can-utils 接入 Linux SocketCAN。固件还包括配置命令行、可处理 OBD-II PID 请求（含 ISO-TP 多帧应答）的部分 ELM327 模拟器，以及 Pico W 开发板上的 Wi-Fi、蓝牙和网页界面；仓库另附 OBD-II 适配器的洞洞板与 KiCad PCB 设计及可 3D 打印的外壳。","entry_url":"https://awesomerea.org/resources/piccante/","entry_url_zh":"https://awesomerea.org/zh/resources/piccante/","evidence_url":"https://github.com/Alia5/PiCCANTE/blob/62ede82f56ae1cc4addf9ef7b7bf20d447d8d712/Readme.md","group":"tools","id":"piccante","json_url":"https://awesomerea.org/resources/piccante/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/piccante/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/piccante/index.md","name":"PiCCANTE","name_zh":"PiCCANTE 树莓派 Pico 车辆 CAN 总线工具","record_type":"resource","relationship":"foundation","requirements":["Only release at review: v0.0.1, published 2025-05-03 with UF2 and ELF firmware for Pico, Pico W, Pico 2 and Pico 2 W; a dev-latest pre-release is rebuilt from main and was built from the reviewed commit of 2026-01-26. The README marks the ELM327 emulator as partial, lacking CAN setup, protocol auto-detection and filters, and lists SD-card logging and software CAN filters as planned. CAN FD and CAN XL are not supported.","Hardware is any Raspberry Pi Pico or Pico 2 board with one to three 3.3 V CAN transceivers such as the SN65HVD; the Pico 2 W is recommended for Wi-Fi and Bluetooth. The README warns that the 120-ohm termination resistor on most transceiver breakout boards must be removed before joining an existing, terminated bus, and urges caution when connecting to vehicle systems. The OBD-II dongle can add a buck converter, an SD card slot and a voltage divider for battery voltage.","Source builds need the Raspberry Pi Pico SDK, CMake 3.13+ and the GCC ARM toolchain, with FreeRTOS-Kernel, a can2040 fork, littlefs, TinyUSB, pico-extras and FreeRTOS-FAT-CLI as submodules; PICO_BOARD defaults to pico2_w, and the web interface is a separate Svelte project in Web/. CI builds firmware for the four Pico boards on pushes to main and on pull requests, and no test suite is documented.","GPL-3.0-or-later per LICENSE.txt and the README notice; the README attributes the CAN 2.0B-only limit to can2040's licensing, and the bundled DHCP server code carries an MIT notice. No separate license is stated for the KiCad, STL and STEP hardware files."],"requirements_zh":["审阅时唯一的正式版本为 v0.0.1，于 2025-05-03 发布，提供适用于 Pico、Pico W、Pico 2 和 Pico 2 W 的 UF2 与 ELF 固件；dev-latest 预发布版本由 main 分支自动重建，当前即由所审阅的提交（2026-01-26）构建。README 将 ELM327 模拟器标为部分实现，缺少 CAN 设置、协议自动检测和过滤功能，并把 SD 卡数据记录和软件 CAN 过滤列为计划中的功能。不支持 CAN FD 和 CAN XL。","硬件可使用任意 Raspberry Pi Pico 或 Pico 2 开发板，搭配一到三个 3.3 V CAN 收发器（如 SN65HVD）；需要 Wi-Fi 和蓝牙时推荐 Pico 2 W。README 提醒，大多数收发器扩展板自带 120 欧终端电阻，接入已端接的现有总线前必须拆除，并提醒连接车辆系统时务必谨慎。OBD-II 适配器还可加装降压模块、SD 卡槽以及用于测量电瓶电压的分压电路。","从源码构建需要 Raspberry Pi Pico SDK、CMake 3.13+ 和 GCC ARM 工具链，并以子模块形式引入 FreeRTOS-Kernel、can2040 分支、littlefs、TinyUSB、pico-extras 和 FreeRTOS-FAT-CLI；PICO_BOARD 默认为 pico2_w，网页界面是 Web/ 目录中独立的 Svelte 项目。CI 会在推送到 main 及提交拉取请求时为四种 Pico 开发板构建固件，未见测试套件说明。","依据 LICENSE.txt 和 README 中的声明采用 GPL-3.0-or-later；README 将仅支持 CAN 2.0B 归因于 can2040 的许可限制，附带的 DHCP 服务器代码带有 MIT 声明。KiCad、STL 和 STEP 硬件文件未另行声明许可证。"],"targets":["protocol"],"url":"https://github.com/Alia5/PiCCANTE","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/ptx2/gymnasticon/blob/e142f539c518d6d4ced3abdd587a825b918a9367/CHANGELOG.md","https://github.com/ptx2/gymnasticon/blob/e142f539c518d6d4ced3abdd587a825b918a9367/package.json","https://github.com/ptx2/gymnasticon/blob/e142f539c518d6d4ced3abdd587a825b918a9367/src/bikes/flywheel.js","https://github.com/ptx2/gymnasticon/blob/e142f539c518d6d4ced3abdd587a825b918a9367/src/bikes/peloton.js","https://github.com/ptx2/gymnasticon/blob/e142f539c518d6d4ced3abdd587a825b918a9367/src/bikes/ic4.js","https://github.com/ptx2/gymnasticon/blob/e142f539c518d6d4ced3abdd587a825b918a9367/src/bikes/keiser.js","https://github.com/ptx2/gymnasticon/tree/e142f539c518d6d4ced3abdd587a825b918a9367/src/test","https://github.com/ptx2/gymnasticon/blob/e142f539c518d6d4ced3abdd587a825b918a9367/.github/workflows/node.js.yml","https://github.com/ptx2/gymnasticon/blob/e142f539c518d6d4ced3abdd587a825b918a9367/deploy/pi-sdcard/build.sh","https://github.com/ptx2/gymnasticon/blob/e142f539c518d6d4ced3abdd587a825b918a9367/deploy/pi-sdcard/config","https://github.com/ptx2/gymnasticon/blob/e142f539c518d6d4ced3abdd587a825b918a9367/LICENSE.txt","https://github.com/ptx2/gymnasticon/releases/tag/v1.4.0","https://ptx2.net/posts/unbricking-a-bike-with-a-raspberry-pi"],"category":"reconstruction-cases","description_en":"Node.js bridge that reads power and cadence from exercise bikes whose own apps or services are gone or closed, and re-broadcasts them as standard Bluetooth LE Cycling Power and Cycling Speed and Cadence sensors and as an ANT+ bike power profile, so that Zwift, TrainerRoad, bike computers and watches can use the bike. The author's development notes describe working out the Flywheel Home Bike's stats packets on its Bluetooth UART service after the vendor shut its home service down; Peloton support reads the bike's data cable through a USB serial adapter, while the Schwinn IC4 and Keiser M clients parse the standard Fitness Machine Service and Keiser's documented broadcasts. Bike and app compatibility is project-reported.","description_zh":"一个 Node.js 桥接程序：从官方应用或服务已停用或不开放的健身单车读取功率和踏频，再以标准的低功耗蓝牙 Cycling Power、Cycling Speed and Cadence 传感器及 ANT+ 自行车功率配置文件重新广播，使 Zwift、TrainerRoad、码表和运动手表能够使用这辆单车。作者的开发笔记记录了在厂商关停家用服务后，如何在 Flywheel Home Bike 的蓝牙 UART 服务上解析出其统计数据包；Peloton 支持通过 USB 串口适配器读取单车的数据线，Schwinn IC4 和 Keiser M 客户端则分别解析标准的 Fitness Machine Service 和 Keiser 公开文档中的广播数据。单车与应用的兼容性均为项目报告。","entry_url":"https://awesomerea.org/resources/gymnasticon-exercise-bike-bridge-case/","entry_url_zh":"https://awesomerea.org/zh/resources/gymnasticon-exercise-bike-bridge-case/","evidence_url":"https://github.com/ptx2/gymnasticon/blob/e142f539c518d6d4ced3abdd587a825b918a9367/README.md","group":"cases","id":"gymnasticon-exercise-bike-bridge-case","json_url":"https://awesomerea.org/resources/gymnasticon-exercise-bike-bridge-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/gymnasticon-exercise-bike-bridge-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/gymnasticon-exercise-bike-bridge-case/index.md","name":"Gymnasticon: bridging proprietary exercise-bike data to standard cycling sensors","name_zh":"Gymnasticon：将专有健身单车数据转为标准骑行传感器信号","record_type":"resource","relationship":"independent-reconstruction","requirements":["Latest GitHub release at review: v1.4.0, published 2021-02-21 with a Raspberry Pi SD card image; npm's latest is 1.4.1 from 2021-03-24, and the reviewed main commit of 2021-04-21, which adds autodetection for all supported bikes, is still the newest on main. The README lists the Flywheel, Peloton (with an additional cable), Schwinn IC4/IC8 aka Bowflex C6 and Keiser M3i, M3i-TBT and M3iX bikes as tested and the LifeFitness IC5 as probably working; a simulated bot bike serves testing.","Needs the user's own supported bike; no vendor app, firmware or account is used. A Raspberry Pi Zero W is recommended, and the tested hosts are Raspbian Buster on Pi Zero W, 3B+ and 4, macOS 10.14+ and Debian Buster on x86-64. BLE bikes need a Bluetooth 4.1+ adapter with multi-role support, or two adapters; ANT+ output needs an ANT+ USB stick, and Peloton bikes need the extra serial cable linked from the README.","The SD card image is the project's own Raspbian Buster build made with pi-gen scripts in deploy/, with the default pi/raspberry account and SSH disabled; on first boot it switches the root filesystem to an overlay with a read-only boot partition and reads gymnasticon.json from the boot partition. Manual installs use Node.js 12.16.1+ from npm, with libudev-dev on Linux and cap_net_raw or a systemd unit for Bluetooth access, and depend on the abandonware noble and bleno libraries, gd-ant-plus and serialport.","CI builds the package and runs tape unit tests on Node.js 12 and 14; they cover the Flywheel, IC4, Keiser and Peloton parsers on sample packets, the simulated bike and utilities, not live bikes or training apps. power-scale and power-offset options let riders correct bikes that report inaccurate power.","MIT. Bike and app names belong to their owners."],"requirements_zh":["审阅时 GitHub 上最新的发布版本为 v1.4.0，于 2021-02-21 发布，附带 Raspberry Pi SD 卡镜像；npm 上最新版本为 2021-03-24 发布的 1.4.1，所审阅的 main 分支提交（2021-04-21）为所有支持的单车加入了自动识别，至今仍是 main 上最新的提交。README 列出已测试的单车包括 Flywheel、Peloton（需额外线缆）、Schwinn IC4/IC8（即 Bowflex C6）以及 Keiser M3i、M3i-TBT 和 M3iX，LifeFitness IC5 则标为大概率可用；另有一个模拟单车用于测试。","需要用户自有的受支持单车，运行时不使用厂商应用、固件或账号。推荐 Raspberry Pi Zero W，已测试的宿主包括 Pi Zero W、3B+ 和 4 上的 Raspbian Buster、macOS 10.14+ 以及 x86-64 上的 Debian Buster。BLE 单车需要支持多角色的蓝牙 4.1+ 适配器，或使用两个适配器；ANT+ 输出需要 ANT+ USB 接收器，Peloton 单车则需要 README 链接中说明的额外串口线缆。","SD 卡镜像是项目用 deploy/ 中的 pi-gen 脚本自行构建的 Raspbian Buster 系统，使用默认的 pi/raspberry 账号并关闭 SSH；首次启动时会把根文件系统切换为 overlay 并将 boot 分区设为只读，并从 boot 分区读取 gymnasticon.json。手动安装需通过 npm 使用 Node.js 12.16.1+，Linux 上还需 libudev-dev，并通过 cap_net_raw 权限或 systemd 单元访问蓝牙；依赖 abandonware 维护的 noble 和 bleno 库、gd-ant-plus 及 serialport。","CI 会构建软件包，并在 Node.js 12 和 14 上运行 tape 单元测试；测试以示例数据包覆盖 Flywheel、IC4、Keiser 和 Peloton 解析器、模拟单车和工具函数，不涉及真实单车或训练应用。power-scale 和 power-offset 选项可用来校正功率读数不准的单车。","采用 MIT 许可。单车和应用名称归各自权利人所有。"],"targets":["protocol"],"url":"https://github.com/ptx2/gymnasticon","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/vladtrc/iw4L/blob/acc57a5c9dd027db8eb5ef17c792fa69f059daa1/NOTICE","https://github.com/vladtrc/iw4L/blob/acc57a5c9dd027db8eb5ef17c792fa69f059daa1/CONTRIBUTING.md","https://github.com/vladtrc/iw4L/blob/acc57a5c9dd027db8eb5ef17c792fa69f059daa1/AGENT.md","https://github.com/vladtrc/iw4L/blob/acc57a5c9dd027db8eb5ef17c792fa69f059daa1/docs/BUILD.md","https://github.com/vladtrc/iw4L/blob/acc57a5c9dd027db8eb5ef17c792fa69f059daa1/docs/WINDOWS.md","https://github.com/vladtrc/iw4L/blob/acc57a5c9dd027db8eb5ef17c792fa69f059daa1/Makefile","https://github.com/vladtrc/iw4L/blob/acc57a5c9dd027db8eb5ef17c792fa69f059daa1/crates/approved_tests/README.md","https://github.com/vladtrc/iw4L/blob/acc57a5c9dd027db8eb5ef17c792fa69f059daa1/docs/provenance/movement-iw4.md","https://github.com/vladtrc/iw4L/blob/acc57a5c9dd027db8eb5ef17c792fa69f059daa1/LICENSE","https://github.com/vladtrc/iw4L/releases/tag/v0.1.0-demo.23"],"category":"reconstruction-cases","description_en":"Implements a standalone runtime for Call of Duty: Modern Warfare 2 (2009) in Rust on Bevy and wgpu, loading maps, models, textures and weapons from the user’s installed game through native FastFile readers and translating its Direct3D 9 shaders to WGSL. Bots, demo recording and replay, and multiplayer over custom UDP with a QUIC master are implemented, while README warns that gameplay remains incomplete, with missing behavior, bugs and desyncs. README states that the whole project is written by an LLM; NOTICE names the community projects consulted and says the original binaries were read with Ghidra.","description_zh":"以 Rust 基于 Bevy 和 wgpu 实现《使命召唤：现代战争 2》（2009）的独立运行时：通过原生 FastFile 读取器从使用者已安装的游戏中载入地图、模型、纹理和武器，并将其 Direct3D 9 着色器转换为 WGSL。已实现机器人、录像录制与回放，以及基于自定义 UDP 和 QUIC 主服务器的多人游戏；但 README 提醒游戏玩法仍不完整，存在缺失行为、错误和不同步。README 声明整个项目由大语言模型编写；NOTICE 列出参考过的社区项目，并说明曾用 Ghidra 阅读原版二进制文件。","entry_url":"https://awesomerea.org/resources/iw4l-mw2-rust-runtime-case/","entry_url_zh":"https://awesomerea.org/zh/resources/iw4l-mw2-rust-runtime-case/","evidence_url":"https://github.com/vladtrc/iw4L/blob/acc57a5c9dd027db8eb5ef17c792fa69f059daa1/README.md","group":"cases","id":"iw4l-mw2-rust-runtime-case","json_url":"https://awesomerea.org/resources/iw4l-mw2-rust-runtime-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/iw4l-mw2-rust-runtime-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/iw4l-mw2-rust-runtime-case/index.md","name":"IW4L: a Rust runtime that plays Modern Warfare 2 from the user’s installed game","name_zh":"IW4L：用使用者已安装的游戏运行《现代战争 2》的 Rust 运行时","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","testing","license","attribution"],"requirements":["Needs the user’s own MW2 Multiplayer installation, which BUILD.md describes as the Windows depot of a Steam copy; Black Ops and MW3 data are optional. The repository and release archives contain no game data, and CONTRIBUTING.md forbids attaching, committing or linking original game files.","Builds with stable Rust through rustup and GNU Make. Linux needs a C/C++ toolchain and X11, Wayland, ALSA, udev and xkbcommon development packages; macOS needs only the Xcode command-line tools. The Windows release is a password-protected iw4l-windows.zip; given a server operator’s .iw4l-server descriptor, iw4l.exe installs SHA-256-verified executable updates from that operator.","Releases are tagged demo builds, v0.1.0-demo.23 at review. APIs, caches and the wire protocol change between commits, so multiplayer peers must run the same build.","No CI workflow or cargo test suite: make publish-check rejects test modules, and the only permanent checks are two owner-approved end-to-end scenarios driving real clients on MW2 maps with the user’s game data. Fidelity to the original game is not measured.","Apache-2.0 source with two bundled OFL fonts; game assets and trademarks remain their owners’.","NOTICE says no third-party source is vendored and names references read during development, including OpenAssetTools, IW4x, KisakCOD and Plutonium’s decompiled Black Ops II scripts. A provenance note records replacing a movement module after reported similarities to GPL code."],"requirements_zh":["需要使用者自己的 MW2 多人游戏安装，BUILD.md 说明使用 Steam 版的 Windows 资源库；《黑色行动》和 MW3 的数据为可选。仓库和发行压缩包均不含游戏数据，CONTRIBUTING.md 禁止附带、提交或链接原版游戏文件。","使用 rustup 安装的稳定版 Rust 和 GNU Make 构建。Linux 需要 C/C++ 工具链及 X11、Wayland、ALSA、udev 和 xkbcommon 开发包；macOS 只需 Xcode 命令行工具。Windows 发行版是设有密码的 iw4l-windows.zip；放入服务器运营者提供的 .iw4l-server 描述文件后，iw4l.exe 会安装该运营者发布、经 SHA-256 校验的可执行文件更新。","发行版均为标注 demo 的构建，审阅时为 v0.1.0-demo.23。API、缓存和网络协议会随提交变化，因此多人游戏各方必须运行同一构建。","没有 CI 工作流，也没有 cargo 测试套件：make publish-check 会拒绝测试模块，唯一保留的检查是两个经所有者批准的端到端场景，它们使用使用者的游戏数据，在 MW2 地图上驱动真实客户端。项目未衡量与原版游戏的一致程度。","源码采用 Apache-2.0，附带两款 OFL 字体；游戏素材和商标仍归其所有者。","NOTICE 称未内置任何第三方源码，并列出开发中参考过的项目，包括 OpenAssetTools、IW4x、KisakCOD 和 Plutonium 反编译的《黑色行动 II》脚本。一份来源说明记录：因有报告称某个移动模块与 GPL 代码相似，该模块已被替换。"],"targets":["game"],"url":"https://github.com/vladtrc/iw4L","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/docs/physics/grind-trick-state-202.md","https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/tools/recomp-trace/README.md","https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/tools/regression-checks/README.md","https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/tools/setup-equivalence/README.md","https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/tools/make_collision_fixture.py","https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/tools/claude-skills/README.md","https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/.github/workflows/release.yml","https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/scripts/Build-Release.ps1","https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/LICENSE","https://github.com/SK8-ENGINE/skate-3-rust-engine/releases/tag/experimental"],"category":"reconstruction-cases","description_en":"Reimplements Skate 3’s skating, tricks, grinds and offboard movement in a new Rust and Bevy engine that runs on assets converted from the user’s own Xbox 360 copy, adding difficulty settings and a .skate custom-map format. Physics notes cite functions and constants read from the original executable in IDA, and audio research reads traces from a research-hooks branch of a separate Skate 3 static recompilation. README says gameplay parity is still a work in progress, credits dumbad’s years of format research and states that AI coding tools were used to write the rewrite.","description_zh":"在新的 Rust 与 Bevy 引擎中重新实现《Skate 3》的滑行、技巧、擦边滑行和下板移动，运行时使用从使用者自有 Xbox 360 版游戏转换得到的素材，并加入难度设置和 .skate 自定义地图格式。物理说明引用了在 IDA 中读取的原版可执行文件的函数和常量，音频研究则读取另一个《Skate 3》静态重编译项目 research-hooks 分支产生的跟踪记录。README 称游戏玩法与原版的一致性仍在完善中，肯定了 dumbad 多年的格式研究，并说明这次重写借助了 AI 编程工具。","entry_url":"https://awesomerea.org/resources/skate-3-rust-engine-case/","entry_url_zh":"https://awesomerea.org/zh/resources/skate-3-rust-engine-case/","evidence_url":"https://github.com/SK8-ENGINE/skate-3-rust-engine/blob/2e16697797c8358d16f747a8259354ff2921041a/README.md","group":"cases","id":"skate-3-rust-engine-case","json_url":"https://awesomerea.org/resources/skate-3-rust-engine-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/skate-3-rust-engine-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/skate-3-rust-engine-case/index.md","name":"Skate 3 Rust Engine: a Bevy rewrite built on Skate 3 reverse-engineering research","name_zh":"Skate 3 Rust Engine：基于《Skate 3》逆向研究的 Bevy 重写","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","testing","license","attribution"],"requirements":["Play needs the user’s Skate 3 Xbox 360 ISO, or an extracted default.xex with its data folder; setup converts the skater, animations, disc maps and HUD assets into a local data folder, and ISO extraction needs internet access. Skate 3 assets are not included; the bundled format-demo map is described as original procedural content.","Runs on Windows: the release ZIP starts skate3rust.exe and needs an SDL3-compatible gamepad. Source builds need Rust with the MSVC toolchain and LLVM, using BUILD.bat and PLAY.bat; the portable package script needs Python 3.13.","tools/recomp-trace reads traces from the research-hooks branch of Hailey-Ross/skate3recomp, which users must build from their own copy of the game; its README warns that the recompilation’s timing and threading differ from the console game.","The Windows release workflow runs Python tests for the updater, setup and asset pipeline, but not the Rust crates’ own tests. tools/regression-checks compares maps, spawns and customiser output with a user-recorded baseline. Parity results are project-reported.","Original code is GPL-3.0-only, copyright dumbad and contributors; the vendored, patched Bevy crates and tools under tools/vendor/ keep their own licenses, and no rights are granted to Electronic Arts’ code, data, assets or trademarks or to third-party maps and mods. Unofficial and unaffiliated with EA.","tools/claude-skills holds Claude Code skills for developing the engine."],"requirements_zh":["游玩需要使用者自己的《Skate 3》Xbox 360 ISO，或已解包的 default.xex 及其 data 文件夹；设置程序会将角色、动画、光盘地图和 HUD 素材转换到本地 data 文件夹，提取 ISO 需要联网。仓库不包含《Skate 3》素材；随附的 format-demo 地图被说明为原创的程序生成内容。","在 Windows 上运行：发行版 ZIP 启动 skate3rust.exe，需要兼容 SDL3 的手柄。从源码构建需要带 MSVC 工具链的 Rust 和 LLVM，使用 BUILD.bat 与 PLAY.bat；便携包脚本需要 Python 3.13。","tools/recomp-trace 读取 Hailey-Ross/skate3recomp 的 research-hooks 分支产生的跟踪记录，该分支须由使用者用自己的游戏副本自行构建；其 README 提醒，重编译版本的时序和线程与主机版游戏不同。","Windows 发行工作流运行更新器、设置程序和素材管线的 Python 测试，但不运行各 Rust crate 自带的测试。tools/regression-checks 将地图、出生点和角色定制输出与使用者自行记录的基线比较。一致性结果均为项目报告。","原创代码采用 GPL-3.0-only，版权属于 dumbad 及贡献者；内置并打过补丁的 Bevy crate 和 tools/vendor/ 下的工具保留各自的许可证，该许可证不授予对 Electronic Arts 的代码、数据、素材或商标的任何权利，也不涉及第三方地图和模组。项目为非官方项目，与 EA 无关。","tools/claude-skills 收录了用于开发该引擎的 Claude Code 技能。"],"targets":["game"],"url":"https://github.com/SK8-ENGINE/skate-3-rust-engine","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/buzzer-re/Rikugan/blob/a2ba6691baa0a7ace3bce9fe834a4f6f7610b77d/LICENSE","https://github.com/buzzer-re/Rikugan/blob/a2ba6691baa0a7ace3bce9fe834a4f6f7610b77d/pyproject.toml","https://github.com/buzzer-re/Rikugan/blob/a2ba6691baa0a7ace3bce9fe834a4f6f7610b77d/ida-plugin.json","https://github.com/buzzer-re/Rikugan/blob/a2ba6691baa0a7ace3bce9fe834a4f6f7610b77d/plugin.json","https://github.com/buzzer-re/Rikugan/tree/a2ba6691baa0a7ace3bce9fe834a4f6f7610b77d/rikugan/providers","https://github.com/buzzer-re/Rikugan/blob/a2ba6691baa0a7ace3bce9fe834a4f6f7610b77d/.github/workflows/ci.yml","https://github.com/buzzer-re/Rikugan/blob/a2ba6691baa0a7ace3bce9fe834a4f6f7610b77d/.github/workflows/release.yml","https://github.com/buzzer-re/Rikugan/blob/a2ba6691baa0a7ace3bce9fe834a4f6f7610b77d/AGENTS.md","https://github.com/buzzer-re/Rikugan/releases/tag/v1.4.0","https://www.synacktiv.com/en/publications/ufc-666-frontkick-vs-rikugan"],"category":"agent-workflows","description_en":"IDA Pro and Binary Ninja plugin that runs its own agent loop inside the disassembler: a model the user chooses streams its answers and calls more than 60 in-process tools for navigation, decompilation, disassembly, cross-references, strings, types, annotations, scripting and host IL or microcode edits. An orchestrator can map a binary and spawn parallel subagents, findings persist in a RIKUGAN.md file beside the database, and experimental commands apply plain-language patches or, on Binary Ninja, remove control-flow flattening and other obfuscation. README says it was vibecoded with Claude Code.","description_zh":"IDA Pro 与 Binary Ninja 插件，在反汇编器内运行自己的智能体循环：使用者选定的模型以流式输出作答，并调用 60 多个进程内工具，涵盖导航、反编译、反汇编、交叉引用、字符串、类型、注释、脚本以及宿主 IL 或微码编辑。编排器可先梳理整个二进制文件，再并行派出子智能体；分析结论保存在数据库旁的 RIKUGAN.md 中；实验性命令可按自然语言描述打补丁，或在 Binary Ninja 上去除控制流平坦化等混淆。README 称该项目是与 Claude Code 一起“氛围编程”完成的。","entry_url":"https://awesomerea.org/resources/rikugan/","entry_url_zh":"https://awesomerea.org/zh/resources/rikugan/","evidence_url":"https://github.com/buzzer-re/Rikugan/blob/a2ba6691baa0a7ace3bce9fe834a4f6f7610b77d/README.md","group":"agents","id":"rikugan","json_url":"https://awesomerea.org/resources/rikugan/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/rikugan/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rikugan/index.md","name":"Rikugan","name_zh":"Rikugan","record_type":"resource","relationship":"independent-agent-integration","requirement_facets":["prerequisites","prerequisites","limits","testing","license","attribution"],"requirements":["README requires IDA Pro 9.0+ with the Hex-Rays decompiler or Binary Ninja in UI mode, and Python 3.10+, while pyproject.toml asks for 3.11+; ida-plugin.json lists IDA 9.0 to 9.2 on Windows, Linux and macOS. Windows also needs the latest Visual C++ 2015–2022 x64 redistributable, and the install scripts are piped from raw GitHub.","Needs at least one model provider: Anthropic, OpenAI, Gemini, MiniMax, Codex, local Ollama or any OpenAI-compatible endpoint. Tool results from the open database go to the chosen provider; profiles limit which data the model may read and which tools it may use.","Version 1.4.0 (released 2026-09-25) at review. README says the agent asks permission before running scripts and never executes the target binary; natural-language patching (/modify) and the Binary Ninja /deobfuscation skill are marked experimental.","CI runs Ruff format and lint checks, mypy on the core and provider modules, pytest with an IDA mock and a desloppify score-regression gate. The repository publishes no benchmark; a Synacktiv article of 2026-10-13 compared it with another Binary Ninja agent on two CREBench tasks and attributed most of the gap to a prompt difference.","MIT per LICENSE and both plugin manifests; IDA Pro, Hex-Rays, Binary Ninja and model services keep their own licences and terms.","README calls the project a work in progress whose first version was built in a single night, and the repository carries an AGENTS.md developer guide."],"requirements_zh":["README 要求带 Hex-Rays 反编译器的 IDA Pro 9.0+ 或界面模式下的 Binary Ninja，以及 Python 3.10+，而 pyproject.toml 要求 3.11+；ida-plugin.json 列出 Windows、Linux 和 macOS 上的 IDA 9.0 至 9.2。Windows 还需安装最新的 Visual C++ 2015–2022 x64 运行库，安装脚本通过管道从 GitHub 原始地址运行。","至少需要一个模型服务：Anthropic、OpenAI、Gemini、MiniMax、Codex、本地 Ollama 或任何 OpenAI 兼容端点。打开的数据库中的工具结果会发送给所选服务；配置档可限制模型能读取哪些数据、使用哪些工具。","审阅时版本为 1.4.0（2026-09-25 发布）。README 称智能体在运行脚本前会征求许可，且绝不执行目标二进制文件；自然语言打补丁（/modify）和 Binary Ninja 的 /deobfuscation 技能标为实验性。","CI 运行 Ruff 格式与代码检查、对核心和提供程序模块的 mypy 类型检查、借助 IDA 模拟对象运行 pytest，以及 desloppify 评分回归门槛。仓库未发布基准测试；Synacktiv 2026-10-13 的一篇文章在 CREBench 的两个任务上将它与另一款 Binary Ninja 智能体比较，并把差距主要归因于提示词差异。","依 LICENSE 和两个插件清单采用 MIT 许可；IDA Pro、Hex-Rays、Binary Ninja 及模型服务保留各自的许可与条款。","README 称项目仍在完善中，第一个版本一夜写成；仓库还附有 AGENTS.md 开发者指南。"],"targets":["binary"],"url":"https://github.com/buzzer-re/Rikugan","verification":"source-reviewed","verified_at":"2026-10-19"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/cdong1012/ollvm-unflattener/blob/d0062012b66ab2c845207c733216900d5e99f0a9/requirements.txt","https://github.com/cdong1012/ollvm-unflattener/blob/d0062012b66ab2c845207c733216900d5e99f0a9/unflattener/__main__.py","https://github.com/cdong1012/ollvm-unflattener/blob/d0062012b66ab2c845207c733216900d5e99f0a9/unflattener/unflattener.py","https://github.com/cdong1012/ollvm-unflattener/blob/d0062012b66ab2c845207c733216900d5e99f0a9/unflattener/binrewrite.py","https://github.com/cdong1012/ollvm-unflattener/tree/d0062012b66ab2c845207c733216900d5e99f0a9/samples","https://github.com/cdong1012/ollvm-unflattener/blob/d0062012b66ab2c845207c733216900d5e99f0a9/samples/linux/CFF_full.c","https://github.com/cdong1012/ollvm-unflattener/blob/d0062012b66ab2c845207c733216900d5e99f0a9/LICENSE","https://github.com/cdong1012/ollvm-unflattener/releases/tag/v2.0","https://github.com/cea-sec/miasm/blob/3671fc24d6e625c2d75f3311724eb6b0c97664f8/LICENSE","https://github.com/keystone-engine/keystone/blob/dc7932ef2b2c4a793836caec6ecab485005139d6/EXCEPTIONS-CLIENT"],"category":"native-analysis","description_en":"Python command-line deobfuscator for the control-flow flattening applied by Obfuscator-LLVM (OLLVM). Given a flattened function's address, it uses Miasm's symbolic execution to track the dispatcher's state variable, records which blocks each state value selects and which state follows it, and writes a copy of the binary in which the function is reassembled with Keystone in its recovered order; an optional mode also follows the function's calls. The README covers 32- and 64-bit x86 Windows and Linux binaries and contrasts this approach with MODeflattener's static one.","description_zh":"针对 Obfuscator-LLVM（OLLVM）控制流平坦化的 Python 命令行去混淆工具。给定被平坦化函数的地址后，它借助 Miasm 的符号执行跟踪分发器的状态变量，记录每个状态值对应的基本块及其后继状态，再用 Keystone 按恢复出的顺序重新汇编该函数，并写出一份修改后的二进制副本；可选模式还会沿该函数的调用继续处理。README 涵盖 32 位和 64 位 x86 的 Windows 与 Linux 二进制，并将这种做法与 MODeflattener 的静态方法作了对比。","entry_url":"https://awesomerea.org/resources/ollvm-unflattener/","entry_url_zh":"https://awesomerea.org/zh/resources/ollvm-unflattener/","evidence_url":"https://github.com/cdong1012/ollvm-unflattener/blob/d0062012b66ab2c845207c733216900d5e99f0a9/README.md","group":"tools","id":"ollvm-unflattener","json_url":"https://awesomerea.org/resources/ollvm-unflattener/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ollvm-unflattener/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ollvm-unflattener/index.md","name":"ollvm-unflattener","name_zh":"ollvm-unflattener OLLVM 控制流平坦化去混淆工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v2.0, published 2025-04-16 without attached binaries; its notes call it most likely the final release, and the reviewed master commit is that tag and the repository's last push. The tool runs from a clone as python unflattener -i <input> -o <output> -t <hex address>, with -a to follow calls; there are no tests or CI.","The README requires Python 3.10+ and Git; requirements.txt lists miasm, graphviz and keystone-engine without version pins. The code handles PE and ELF files for x86_32 and x86_64 and raises an error for other formats or architectures.","The analyst supplies the obfuscated binary and the target function's address. Functions scoring below 0.9 on a dominator-based flattening heuristic are left unchanged, the dispatcher and state variable are located by structural assumptions about OLLVM's layout, and -a only follows calls into the .text section. Output is a patched copy in which the original function bytes are overwritten with int3 padding and the reassembled function is written at its start.","The samples folder bundles small obfuscated test programs for 32- and 64-bit Linux and Windows (CFF.bin, CFF_full.bin, CFF_full_linux64.bin, CFF_win.exe, CFF_win_full.exe, CFF_win64.exe and CFF_win64_full.exe), their deob_* outputs and C/C++ sources for most of them; a comment in CFF_full.c says Claude generated that test program. The README's only reported result is a before/after control-flow graph of target_function in CFF_full.bin, with no check that deobfuscated binaries behave like the originals.","Apache-2.0; the dependencies keep their own licenses, including GPL-2.0-only for Miasm and GPL-2.0 with a FOSS exception for Keystone."],"requirements_zh":["审阅时最新版本为 v2.0，发布于 2025-04-16，未附带二进制文件；发布说明称这很可能是最后一个版本，所审阅的 master 提交即该标签，也是仓库最近一次推送。工具从克隆的仓库运行，命令为 python unflattener -i <输入> -o <输出> -t <十六进制地址>，加 -a 可沿调用继续处理；仓库没有测试或 CI。","README 要求 Python 3.10+ 和 Git；requirements.txt 列出 miasm、graphviz 和 keystone-engine，均未固定版本。代码支持 x86_32 和 x86_64 的 PE 与 ELF 文件，遇到其他格式或架构会报错。","分析者需提供被混淆的二进制以及目标函数的地址。在基于支配树的平坦化评分中低于 0.9 的函数不会被改动；分发器和状态变量依据对 OLLVM 代码布局的结构性假设来定位，-a 只跟进指向 .text 节的调用。输出是一份修改后的副本：原函数的字节被 int3 填充覆盖，重新汇编的函数写在其起始地址处。","samples 目录附带面向 32 位与 64 位 Linux 和 Windows 的小型混淆测试程序（CFF.bin、CFF_full.bin、CFF_full_linux64.bin、CFF_win.exe、CFF_win_full.exe、CFF_win64.exe 和 CFF_win64_full.exe）、对应的 deob_* 输出，以及其中大多数程序的 C/C++ 源码；CFF_full.c 中的注释称该测试程序由 Claude 生成。README 唯一报告的结果是 CFF_full.bin 中 target_function 去混淆前后的控制流图，没有检验去混淆后的二进制与原程序行为是否一致。","采用 Apache-2.0 许可；依赖保留各自的许可证，其中 Miasm 为 GPL-2.0-only，Keystone 为附带 FOSS 例外的 GPL-2.0。"],"targets":["binary"],"url":"https://github.com/cdong1012/ollvm-unflattener","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/LostMyCode/javascript-deobfuscator/blob/2cc31bf07d9f870ea0871aabf3af5568d165f57d/src/xDecoder.js","https://github.com/LostMyCode/javascript-deobfuscator/blob/2cc31bf07d9f870ea0871aabf3af5568d165f57d/src/Analyzer.js","https://github.com/LostMyCode/javascript-deobfuscator/blob/2cc31bf07d9f870ea0871aabf3af5568d165f57d/src/components/Main.vue","https://github.com/LostMyCode/javascript-deobfuscator/blob/2cc31bf07d9f870ea0871aabf3af5568d165f57d/src/components/TargetFuncTip.vue","https://github.com/LostMyCode/javascript-deobfuscator/blob/2cc31bf07d9f870ea0871aabf3af5568d165f57d/src/worker.js","https://github.com/LostMyCode/javascript-deobfuscator/blob/2cc31bf07d9f870ea0871aabf3af5568d165f57d/package.json","https://github.com/LostMyCode/javascript-deobfuscator/blob/2cc31bf07d9f870ea0871aabf3af5568d165f57d/public/index.html","https://github.com/LostMyCode/javascript-deobfuscator/blob/2cc31bf07d9f870ea0871aabf3af5568d165f57d/.github/workflows/deploy.yml"],"category":"web-analysis","description_en":"Browser-based Vue app that restores the strings Obfuscator.io hides behind string-array lookups in JavaScript. The user pastes the obfuscated script and names its string array or decoder function, such as _0x439c; the tool classifies the calls as plain array indexing, a one-argument decoder or a two-argument RC4-style decoder, runs the script's own decoder to replace each call with its string literal, rewrites bracketed property access as dot notation and beautifies the result. The author hosts a demo at deo.sigr.io.","description_zh":"基于浏览器的 Vue 应用，用于还原 Obfuscator.io 藏在字符串数组查找背后的 JavaScript 字符串。用户粘贴混淆脚本，并填写其中的字符串数组或解码函数名（如 _0x439c）；工具会把调用识别为直接数组下标、单参数解码函数或双参数 RC4 式解码函数，借助脚本自带的解码函数把每次调用替换为字符串字面量，再把方括号属性访问改写为点号形式并美化输出。作者在 deo.sigr.io 提供演示站点。","entry_url":"https://awesomerea.org/resources/lostmycode-javascript-deobfuscator/","entry_url_zh":"https://awesomerea.org/zh/resources/lostmycode-javascript-deobfuscator/","evidence_url":"https://github.com/LostMyCode/javascript-deobfuscator/blob/2cc31bf07d9f870ea0871aabf3af5568d165f57d/README.md","group":"tools","id":"lostmycode-javascript-deobfuscator","json_url":"https://awesomerea.org/resources/lostmycode-javascript-deobfuscator/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/lostmycode-javascript-deobfuscator/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/lostmycode-javascript-deobfuscator/index.md","name":"javascript-deobfuscator (LostMyCode)","name_zh":"javascript-deobfuscator Obfuscator.io 字符串还原网页工具（LostMyCode）","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","scope","limits","testing","license"],"requirements":["Supply the obfuscated script and identify the target function name yourself; a built-in tip shows call shapes such as _0x439c[103], _0x439c('0x4') and _0x439c('0x2','f]Xg'). The README covers only the Vue CLI 4 project commands (npm install, serve, build and lint), and a GitHub Actions workflow builds the site with Node.js 16 and deploys it to GitHub Pages.","Unversioned: package.json reports 0.1.0 and marks the package private, there are no GitHub releases or npm package, and the reviewed master commit of 2024-05-31 is the latest push.","Only these string-array patterns are handled, with a fourth pattern marked experimental, and unrecognized input returns an error. The code has no passes for control-flow flattening, proxy functions, dead code or Obfuscator.io's other transformations, so those remain in the output. Decoding evaluates the pasted script with eval inside a browser web worker, so the input's own code runs; it is not a static AST transformation. The page template also loads js-beautify from cdnjs and a Google Analytics tag.","The repository has no tests, and the README's only result is an example screenshot.","The repository has no license file and GitHub detects no license, so it grants no stated reuse terms."],"requirements_zh":["需自行提供混淆脚本并找出目标函数名；内置提示列出 _0x439c[103]、_0x439c('0x4') 和 _0x439c('0x2','f]Xg') 等调用形式。README 只列出 Vue CLI 4 项目命令（npm install、serve、build 和 lint），GitHub Actions 工作流用 Node.js 16 构建网站并部署到 GitHub Pages。","没有版本发布：package.json 标为 0.1.0 并设为私有包，仓库没有 GitHub Release，也未发布 npm 包；所审阅的 master 分支提交日期为 2024-05-31，即最近一次推送。","工具只处理这些字符串数组模式，另有第四种模式标为实验性，无法识别的输入会报错。代码中没有处理控制流平坦化、代理函数、死代码或 Obfuscator.io 其他变换的步骤，这些内容会保留在输出中。解码时会在浏览器 Web Worker 中用 eval 执行粘贴的脚本，因此输入代码本身会运行；这不是静态的 AST 变换。页面模板还会从 cdnjs 加载 js-beautify，并包含 Google Analytics 统计代码。","仓库没有测试，README 唯一的结果展示是一张示例截图。","仓库没有许可证文件，GitHub 也未检测到许可证，因此未声明任何复用条款。"],"targets":["website"],"url":"https://github.com/LostMyCode/javascript-deobfuscator","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/vicnaum/bun-demincer/blob/7cfe9254bca0ce7428a5574d7da8d4d8e51f511c/package.json","https://github.com/vicnaum/bun-demincer/blob/7cfe9254bca0ce7428a5574d7da8d4d8e51f511c/.env.example","https://github.com/vicnaum/bun-demincer/blob/7cfe9254bca0ce7428a5574d7da8d4d8e51f511c/.gitignore","https://github.com/vicnaum/bun-demincer/blob/7cfe9254bca0ce7428a5574d7da8d4d8e51f511c/docs/BUN.md","https://github.com/vicnaum/bun-demincer/blob/7cfe9254bca0ce7428a5574d7da8d4d8e51f511c/src/extract.mjs","https://github.com/vicnaum/bun-demincer/blob/7cfe9254bca0ce7428a5574d7da8d4d8e51f511c/src/match-vendors.mjs","https://github.com/vicnaum/bun-demincer/blob/7cfe9254bca0ce7428a5574d7da8d4d8e51f511c/src/ai-rename.mjs","https://github.com/vicnaum/bun-demincer/blob/7cfe9254bca0ce7428a5574d7da8d4d8e51f511c/src/cluster-graph.mjs","https://github.com/vicnaum/bun-demincer/commit/4ff57a9fff40b2a509b32cfd93d76a22fd37933a"],"category":"javascript-electron","description_en":"Node.js pipeline that recovers readable JavaScript from Bun-compiled standalone executables. It extracts the embedded module graph and assets, splits the bundle into one file per module, flags npm vendor code with a fingerprint database, and deobfuscates with wakaru, format-preserving renames recovered from export mappings and optional Gemini-suggested names. Dependency-graph clustering, manual or LLM-assisted cluster labels and cross-version artifact transfer then organize and update the output.","description_zh":"从 Bun 编译的独立可执行文件中恢复可读 JavaScript 的 Node.js 流程。它提取内嵌的模块图和资源，把打包代码拆成每个模块一个文件，用指纹库标记 npm 第三方代码，再借助 wakaru、依据导出映射恢复名称的保格式重命名以及可选的 Gemini 命名建议进行反混淆。之后通过依赖图聚类、手工或借助 LLM 的聚类命名，以及跨版本迁移已有成果，来整理和更新输出。","entry_url":"https://awesomerea.org/resources/bun-demincer/","entry_url_zh":"https://awesomerea.org/zh/resources/bun-demincer/","evidence_url":"https://github.com/vicnaum/bun-demincer/blob/7cfe9254bca0ce7428a5574d7da8d4d8e51f511c/README.md","group":"tools","id":"bun-demincer","json_url":"https://awesomerea.org/resources/bun-demincer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/bun-demincer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bun-demincer/index.md","name":"bun-demincer","name_zh":"bun-demincer Bun 可执行文件 JavaScript 还原工具","record_type":"resource","relationship":"foundation","requirements":["The reviewed master commit of 2026-03-06 is the repository’s ninth, three days after its initial release commit of 2026-03-03; there are no tags or releases. It needs Node.js 18+ and the npm dependencies in package.json, including node-canvas for cluster PNGs; Bun is needed only to run extracted code. The README says Bun stores the code in a __BUN Mach-O section, appended ELF data or a .bun PE section; extract.mjs parses the Mach-O section header and otherwise searches for Bun's trailer.","Input is a Bun-compiled executable; the repository contains no target binaries or recovered code, and .gitignore excludes pipeline output. data/vendor-fingerprints-1000.json (26 MB) holds property-name and string-literal fingerprints for 23,746 files from 1,668 npm packages and can be rebuilt from a local node_modules. The README says steps 1–4 are automated, while cluster labels need manual input or an LLM.","ai-rename.mjs and ai-rename-scoped.mjs send module source to Google's Gemini API with a GEMINI_API_KEY (default model gemini-3-flash-preview); their names are model suggestions. The README's round-trip reassembly calls a build.mjs it marks as part of the user's project, which this repository does not contain.","The reviewed tree has no tests or CI. The README states MIT, but there is no license file and package.json has no license field. Four of the nine commits carry a Claude Opus 4.6 co-author trailer."],"requirements_zh":["所审阅的 master 提交（2026-03-06）是仓库的第九个提交，距 2026-03-03 的初始发布提交仅三天；没有标签或发布版本。需要 Node.js 18+ 及 package.json 中的 npm 依赖，其中 node-canvas 用于生成聚类 PNG；只有运行提取出的代码时才需要 Bun。README 称 Bun 将代码存放在 Mach-O 的 __BUN 节、追加在 ELF 末尾的数据或 PE 的 .bun 节中；extract.mjs 会解析 Mach-O 节头，否则直接搜索 Bun 的结尾标记。","输入是 Bun 编译可执行文件；仓库不含任何目标二进制或恢复出的代码，.gitignore 也排除了流程输出。data/vendor-fingerprints-1000.json（26 MB）收录 1,668 个 npm 包中 23,746 个文件的属性名与字符串字面量指纹，可从本地 node_modules 重建。README 称第 1–4 步全自动，而聚类命名需要手工完成或借助 LLM。","ai-rename.mjs 和 ai-rename-scoped.mjs 会使用 GEMINI_API_KEY 把模块源码发送到 Google Gemini API（默认模型 gemini-3-flash-preview），所得名称只是模型建议。README 的回装步骤调用一个标明位于使用者项目中的 build.mjs，本仓库并不包含它。","所审阅的文件树中没有测试或 CI。README 声明 MIT，但仓库没有许可证文件，package.json 也没有 license 字段。九个提交中有四个带有 Claude Opus 4.6 的共同作者标记。"],"targets":["app","binary"],"url":"https://github.com/vicnaum/bun-demincer","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/mooncat-greenpy/Ghidra_GolangAnalyzerExtension/releases/tag/1.4.0","https://github.com/mooncat-greenpy/Ghidra_GolangAnalyzerExtension/blob/c0d1540f16409c8b0b202b10a005ce484f9e7705/GolangAnalyzerExtension/LICENSE","https://github.com/mooncat-greenpy/Ghidra_GolangAnalyzerExtension/blob/c0d1540f16409c8b0b202b10a005ce484f9e7705/GolangAnalyzerExtension/build.gradle","https://github.com/mooncat-greenpy/Ghidra_GolangAnalyzerExtension/blob/c0d1540f16409c8b0b202b10a005ce484f9e7705/GolangAnalyzerExtension/src/main/java/golanganalyzerextension/AnalyzerOption.java","https://github.com/mooncat-greenpy/Ghidra_GolangAnalyzerExtension/blob/c0d1540f16409c8b0b202b10a005ce484f9e7705/GolangAnalyzerExtension/src/main/java/golanganalyzerextension/GolangAnalyzerExtensionAnalyzer.java","https://github.com/mooncat-greenpy/Ghidra_GolangAnalyzerExtension/blob/c0d1540f16409c8b0b202b10a005ce484f9e7705/GolangAnalyzerExtension/src/main/java/golanganalyzerextension/function/GolangFunction.java","https://github.com/mooncat-greenpy/Ghidra_GolangAnalyzerExtension/blob/c0d1540f16409c8b0b202b10a005ce484f9e7705/GolangAnalyzerExtension/ghidra_scripts/degobfuscate.py","https://github.com/mooncat-greenpy/Ghidra_GolangAnalyzerExtension/blob/c0d1540f16409c8b0b202b10a005ce484f9e7705/scripts/extract.sh","https://github.com/mooncat-greenpy/Ghidra_GolangAnalyzerExtension/blob/c0d1540f16409c8b0b202b10a005ce484f9e7705/scripts/build/build.sh"],"category":"native-analysis","description_en":"Ghidra extension whose Golang Analyzer reads the runtime header and module data in Go binaries built with go1.6 through go1.27 to identify the Go version, rename functions, correct their arguments, comment source files and line numbers, add Go types to the Data Type Manager and label Go strings. A plugin window lists the recovered functions, types, source files and strings with links to Go source, and WebAssembly builds are handled when a separate Wasm loader such as ghidra-wasm-plugin is installed. A bundled script also renames functions that decode gobfuscate-style obfuscated strings and comments the decoded text.","description_zh":"Ghidra 扩展，其 Golang Analyzer 读取 go1.6 至 go1.27 所编译 Go 二进制中的运行时头部和模块数据，用以识别 Go 版本、重命名函数、修正参数、以注释标出源文件与行号，把 Go 类型加入数据类型管理器，并标注 Go 字符串。插件窗口列出恢复出的函数、类型、源文件和字符串，并可链接到 Go 源码；另行安装 ghidra-wasm-plugin 等 Wasm 加载器后，也能处理 WebAssembly 构建。随附的脚本还会为解码 gobfuscate 式混淆字符串的函数重命名，并以注释写出解码后的文本。","entry_url":"https://awesomerea.org/resources/ghidra-golanganalyzerextension/","entry_url_zh":"https://awesomerea.org/zh/resources/ghidra-golanganalyzerextension/","evidence_url":"https://github.com/mooncat-greenpy/Ghidra_GolangAnalyzerExtension/blob/c0d1540f16409c8b0b202b10a005ce484f9e7705/README.md","group":"tools","id":"ghidra-golanganalyzerextension","json_url":"https://awesomerea.org/resources/ghidra-golanganalyzerextension/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ghidra-golanganalyzerextension/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghidra-golanganalyzerextension/index.md","name":"GolangAnalyzerExtension","name_zh":"GolangAnalyzerExtension Ghidra Go 分析扩展","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 1.4.0, published 2026-07-21 from the reviewed master commit, with notes stating support for go1.6 through go1.27. It provides prebuilt zips for Ghidra 12.0 through 12.0.4 and for 12.1, 12.1.2, 12.1.3 and 12.1.4, the last two built on 2026-10-14; install the zip matching the Ghidra release through File > Install Extensions and restart Ghidra. Source builds use Gradle with GHIDRA_INSTALL_DIR set to a Ghidra installation.","Analysis runs on Go executables the user supplies, and the analyzer is enabled by default. Source has function handlers for x86, ARM, PowerPC and RISC-V; WebAssembly needs a separate Wasm loader. Function disassembly is off by default, and optional PcHeader-address and Go-version settings override detection. Function-name guessing by pattern matching and BSim exists in source, but its option is not registered and stays off.","The repository commits generated name-guessing data: a 4.3 MB list of calling-function names under test resources and a 53 KB H2 BSim database under scripts, with scripts that produce them by compiling a small sample Go program with each listed Go toolchain and running Ghidra headless. The copy under src/main/resources is empty at this commit, and no target binaries are committed. JUnit tests cover version, header, string and name-data parsing; there is no CI workflow.","The MIT license sits in GolangAnalyzerExtension/LICENSE (2021, mooncat-greenpy); it is not at the repository root, so GitHub detects no license. Output annotates the Ghidra program and needs analyst checking; it does not produce Go source."],"requirements_zh":["审阅时最新版本为 1.4.0，于 2026-07-21 由所审阅的 master 提交发布，发行说明称支持 go1.6 至 go1.27。它为 Ghidra 12.0 至 12.0.4 以及 12.1、12.1.2、12.1.3 和 12.1.4 提供预构建 zip，后两个构建于 2026-10-14；通过 File > Install Extensions 安装与 Ghidra 版本对应的 zip，再重启 Ghidra。从源码构建使用 Gradle，并将 GHIDRA_INSTALL_DIR 设为某个 Ghidra 安装目录。","分析对象是使用者自行提供的 Go 可执行文件，该分析器默认启用。源码包含 x86、ARM、PowerPC 和 RISC-V 的函数处理逻辑；WebAssembly 需另装 Wasm 加载器。函数反汇编默认关闭，可选的 PcHeader 地址和 Go 版本设置会覆盖自动检测结果。源码中虽有基于模式匹配和 BSim 的函数名推测，但其选项未注册，始终处于关闭状态。","仓库提交了生成的函数名推测数据：测试资源中一份 4.3 MB 的调用函数名列表，以及 scripts 下一个 53 KB 的 H2 BSim 数据库；配套脚本用所列的各个 Go 工具链编译一个小型示例 Go 程序，再以无界面方式运行 Ghidra 生成这些数据。在此提交中，src/main/resources 下的副本为空，仓库也未提交任何目标二进制。JUnit 测试覆盖版本、头部、字符串和名称数据的解析；仓库没有 CI 工作流。","MIT 许可证位于 GolangAnalyzerExtension/LICENSE（2021 年，mooncat-greenpy），因不在仓库根目录，GitHub 未识别出许可证。输出是对 Ghidra 程序的标注，仍需分析人员核对，不会生成 Go 源码。"],"targets":["binary"],"url":"https://github.com/mooncat-greenpy/Ghidra_GolangAnalyzerExtension","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/yoavst/ida-ios-helper/blob/65c7b03171f006c4fe476bca4bceefe25d24769f/src/ioshelper/core.py","https://github.com/yoavst/ida-ios-helper/blob/65c7b03171f006c4fe476bca4bceefe25d24769f/pyproject.toml","https://github.com/yoavst/ida-ios-helper/blob/65c7b03171f006c4fe476bca4bceefe25d24769f/ida-plugin.json","https://github.com/yoavst/ida-ios-helper/blob/65c7b03171f006c4fe476bca4bceefe25d24769f/src/ioshelper/plugins/swift/swift_dump_import/importer.py","https://github.com/yoavst/ida-ios-helper/blob/65c7b03171f006c4fe476bca4bceefe25d24769f/.github/workflows/main.yml","https://github.com/yoavst/ida-ios-helper/blob/65c7b03171f006c4fe476bca4bceefe25d24769f/.claude/skills/probe-ida-function/SKILL.md","https://github.com/yoavst/ida-ios-helper/blob/65c7b03171f006c4fe476bca4bceefe25d24769f/LICENSE","https://github.com/yoavst/ida-ios-helper/releases/tag/1.0.23","https://pypi.org/project/ida-ios-helper/1.0.23/"],"category":"native-analysis","description_en":"IDA Pro plugin that cleans up Hex-Rays pseudocode and adds navigation helpers for iOS user-mode binaries and the kernelcache, enabling its components according to the loaded file. For Objective-C and Swift code it hides reference-counting calls, selectors and static class arguments, collapses os_log sequences, turns property helpers into plain assignments or field reads, lists cross-references to a method's selector, and adds Swift type declarations and readable stack strings. For kernelcaches it types the results of safeMetaCast and typed operator new, names and types kalloc_type_view globals, fixes this arguments and lists the possible implementations of a virtual call, while shared helpers remove __break calls, rewrite ranged conditions, collapse block initializers and mark outlined functions.","description_zh":"一款 IDA Pro 插件，用于清理 Hex-Rays 伪代码，并为 iOS 用户态二进制和 kernelcache 提供导航辅助，会根据所加载的文件启用相应组件。对 Objective-C 和 Swift 代码，它可隐藏引用计数调用、选择器和静态类参数，折叠 os_log 调用序列，把属性辅助函数还原为普通赋值或字段读取，列出方法选择器的交叉引用，并加入 Swift 类型声明和可读的栈上字符串。对 kernelcache，它可为 safeMetaCast 和带类型的 operator new 的返回值设置类型，为 kalloc_type_view 全局变量命名并设置类型，修正 this 参数，并列出虚函数调用的所有可能实现；通用辅助功能则会移除 __break 调用、改写范围条件、折叠 block 初始化代码并标记外提（outlined）函数。","entry_url":"https://awesomerea.org/resources/ida-ios-helper/","entry_url_zh":"https://awesomerea.org/zh/resources/ida-ios-helper/","evidence_url":"https://github.com/yoavst/ida-ios-helper/blob/65c7b03171f006c4fe476bca4bceefe25d24769f/README.md","group":"tools","id":"ida-ios-helper","json_url":"https://awesomerea.org/resources/ida-ios-helper/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ida-ios-helper/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ida-ios-helper/index.md","name":"IDA iOS Helper","name_zh":"IDA iOS Helper iOS 逆向辅助插件","record_type":"resource","relationship":"foundation","requirements":["Requires IDA Pro 9.0+, and most listed features rewrite Hex-Rays pseudocode, so they assume IDA's decompiler is available. Installation uses IDA's own pip to install the ida-ios-helper package, which needs Python 3.10+ and pins the author's idahelper library at 1.0.18, and then copies ida-plugin.json and ida_plugin_stub.py into IDA's plugins folder.","Latest release at review: 1.0.23, published 2026-06-25 with the wheel and source archive that are also on PyPI. The reviewed master commit is six commits ahead, adding an Objective-C fast-enumeration component and Swift type fixes that are not yet released, and its ida-plugin.json still declares version 1.0.19 and pins ida-ios-helper==1.0.19.","The iOS binaries or kernelcaches come from the analyst. Virtual-call navigation needs vtable symbols in the database, and typing typed operator new results first needs the Locate all kalloc_type_view action. A Swift importer added in June 2026 and not described in the README runs the separate ipsw tool's swift-dump command on the input file to name and type Swift class methods.","CI only checks Python 3.10 compatibility with vermin and runs ruff lint and format checks; there are no automated tests. The repository also holds headless idat probing scripts and a Claude Code skill used while developing the plugin. GPL-3.0."],"requirements_zh":["需要 IDA Pro 9.0+；所列功能大多改写 Hex-Rays 伪代码，因此默认可使用 IDA 的反编译器。安装时先用 IDA 自带的 pip 安装 ida-ios-helper 软件包（需要 Python 3.10+，并将作者的 idahelper 库固定为 1.0.18 版），再把 ida-plugin.json 和 ida_plugin_stub.py 复制到 IDA 的插件目录。","审阅时最新版本为 1.0.23，发布于 2026-06-25，附带与 PyPI 上相同的 wheel 和源码包。所审阅的 master 提交比该版本多六个提交，新增了 Objective-C 快速枚举组件和 Swift 类型修正，这些改动尚未发布；该提交中的 ida-plugin.json 仍声明版本 1.0.19，并固定依赖 ida-ios-helper==1.0.19。","待分析的 iOS 二进制或 kernelcache 由分析者自行提供。虚函数调用导航要求数据库中存在 vtable 符号；为带类型的 operator new 返回值设置类型前，需先执行 Locate all kalloc_type_view 操作。2026 年 6 月加入、README 未作说明的 Swift 导入器会对输入文件运行独立工具 ipsw 的 swift-dump 命令，为 Swift 类方法命名并设置类型。","CI 只用 vermin 检查 Python 3.10 兼容性，并运行 ruff 的静态检查和格式检查，没有自动化测试。仓库中还有开发插件时使用的无界面 idat 探测脚本和一个 Claude Code 技能。采用 GPL-3.0 许可。"],"targets":["app","binary"],"url":"https://github.com/yoavst/ida-ios-helper","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/beehive-lab/mambo/blob/dcdf19a751092c18cccc1e31fea684dfc599c8b8/LICENSE","https://github.com/beehive-lab/mambo/blob/dcdf19a751092c18cccc1e31fea684dfc599c8b8/makefile","https://github.com/beehive-lab/mambo/blob/dcdf19a751092c18cccc1e31fea684dfc599c8b8/.github/workflows/main.yml","https://github.com/beehive-lab/mambo/blob/dcdf19a751092c18cccc1e31fea684dfc599c8b8/docker/README.md","https://github.com/beehive-lab/mambo/blob/dcdf19a751092c18cccc1e31fea684dfc599c8b8/docker/Dockerfile","https://github.com/beehive-lab/mambo/blob/dcdf19a751092c18cccc1e31fea684dfc599c8b8/api/plugin_support.h","https://github.com/beehive-lab/mambo/tree/dcdf19a751092c18cccc1e31fea684dfc599c8b8/plugins","https://github.com/beehive-lab/mambo/tree/dcdf19a751092c18cccc1e31fea684dfc599c8b8/test","https://doi.org/10.1145/2896451"],"category":"dynamic-analysis","description_en":"Dynamic binary modification framework from the University of Manchester that runs unmodified Linux user-space programs on 32-bit Arm (A32/T32), AArch64 and RV64GC RISC-V, translating their code into a code cache as it executes. An event-driven C plugin API registers callbacks on code-scanning and execution events and emits instrumentation; sample plugins count instruction mixes, branches and blocks, trace memory accesses and system calls, find hotspots, simulate caches, check memory errors and detect data races.","description_zh":"曼彻斯特大学开发的动态二进制修改框架，可在 32 位 Arm（A32/T32）、AArch64 和 RV64GC RISC-V 上运行未经修改的 Linux 用户态程序，并在执行过程中把代码翻译到代码缓存里运行。事件驱动的 C 插件 API 可在代码扫描与执行事件上注册回调并生成插桩代码；示例插件可统计指令构成、分支与基本块次数，跟踪内存访问和系统调用，查找热点，模拟缓存，检查内存错误并检测数据竞争。","entry_url":"https://awesomerea.org/resources/mambo/","entry_url_zh":"https://awesomerea.org/zh/resources/mambo/","evidence_url":"https://github.com/beehive-lab/mambo/blob/dcdf19a751092c18cccc1e31fea684dfc599c8b8/README.md","group":"tools","id":"mambo","json_url":"https://awesomerea.org/resources/mambo/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/mambo/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mambo/index.md","name":"MAMBO","name_zh":"MAMBO 动态二进制修改框架","record_type":"resource","relationship":"foundation","requirements":["The reviewed master commit of 2025-01-21 updates the HiPEAC 2025 tutorial. There are no versioned releases; GitHub releases 1 and 2 only host talk slides. The README says application compatibility is improved as needed, lists SPEC CPU2006, PARSEC 3.0, GCC, LibreOffice and GIMP among programs that work on Arm, and notes that most development happens in a private tree.","Builds and runs on an Armv7, Armv8 or RV64GC Linux system, physical or virtual, with GCC, libelf development files and Ruby 1.9.1+; the build generates instruction encoders and decoders from the bundled PIE specifications and links dbm statically. The authors use armhf/arm64 Debian, Ubuntu and Arch Linux ARM and Ubuntu 22.04 on RISC-V; for other hosts, a Dockerfile downloads Ubuntu 24.04 preinstalled server images for Arm64 and RISC-V and runs them under QEMU. Plugins are compiled in through the makefile's PLUGINS list.","Known issues listed in the README: SA_SIGINFO handlers receive incorrect siginfo_t data, synchronous-signal handlers cannot sigreturn, code-cache invalidation after munmap or cache flushes only happens in the calling thread, and RISC-V signal handling is incomplete. MAMBO is not designed to protect itself from the program it translates, so the README says it cannot serve as a secure sandbox without hardening.","CI builds MAMBO in Ubuntu 20.04 chroots under QEMU user emulation for arm64, armhf and riscv64 and only runs /bin/ls under it; the instruction, signal and self-modifying-code programs in test/ are not run by CI. The authors ask users to cite their 2016 ACM TACO paper and list later ICPE 2018, CC 2020, VEE 2020 and ISPASS 2023 papers.","Apache-2.0, with the same license in pie/. Programs to instrument are supplied by the user."],"requirements_zh":["所审阅的 master 提交（2025-01-21）更新了 HiPEAC 2025 教程。项目没有带版本号的发布；GitHub 上的 1 和 2 两个发布只用于存放演讲幻灯片。README 称会按需改进应用兼容性，列出 SPEC CPU2006、PARSEC 3.0、GCC、LibreOffice 和 GIMP 等可在 Arm 上正常运行的程序，并说明大部分开发在私有仓库中进行。","需在 Armv7、Armv8 或 RV64GC 的 Linux 系统（物理机或虚拟机）上构建和运行，依赖 GCC、libelf 开发文件和 Ruby 1.9.1+；构建时会根据随附的 PIE 规格生成指令编码器与解码器，并静态链接 dbm。作者使用 armhf/arm64 版 Debian、Ubuntu 和 Arch Linux ARM，以及 RISC-V 上的 Ubuntu 22.04；对于其他主机，Dockerfile 会下载 Arm64 和 RISC-V 的 Ubuntu 24.04 预装服务器镜像并在 QEMU 中运行。插件需通过 makefile 的 PLUGINS 列表编译进来。","README 列出的已知问题：SA_SIGINFO 处理函数收到的 siginfo_t 数据不正确，同步信号的处理函数无法 sigreturn，munmap 或缓存刷新后的代码缓存失效只在发起调用的线程中进行，RISC-V 上的信号处理也不完整。MAMBO 并非为防范被翻译程序的攻击而设计，因此 README 指出未经加固不能用作安全沙箱。","CI 在 QEMU 用户态模拟下的 Ubuntu 20.04 chroot 中为 arm64、armhf 和 riscv64 构建 MAMBO，且只在其下运行 /bin/ls；test/ 中的指令、信号与自修改代码测试程序不在 CI 中运行。作者请使用者引用其 2016 年的 ACM TACO 论文，并列出之后的 ICPE 2018、CC 2020、VEE 2020 和 ISPASS 2023 论文。","采用 Apache-2.0，pie/ 目录中也附有相同许可证。待插桩的程序由使用者提供。"],"targets":["binary"],"url":"https://github.com/beehive-lab/mambo","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/gwerneckp/garmin-ble/blob/b66203232f0abb314aeb7dc9e448680184f28ed3/reverse_engineering/accelerometer/rev_eng.md","https://github.com/gwerneckp/garmin-ble/blob/b66203232f0abb314aeb7dc9e448680184f28ed3/CHANGELOG.md","https://github.com/gwerneckp/garmin-ble/blob/b66203232f0abb314aeb7dc9e448680184f28ed3/pyproject.toml","https://github.com/gwerneckp/garmin-ble/blob/b66203232f0abb314aeb7dc9e448680184f28ed3/.github/workflows/test.yml","https://github.com/gwerneckp/garmin-ble/blob/b66203232f0abb314aeb7dc9e448680184f28ed3/garmin_ble/protocol/gfdi.py","https://github.com/gwerneckp/garmin-ble/blob/b66203232f0abb314aeb7dc9e448680184f28ed3/garmin_ble/transport/simulated.py","https://github.com/gwerneckp/garmin-ble/tree/b66203232f0abb314aeb7dc9e448680184f28ed3/proto","https://github.com/gwerneckp/garmin-ble/tree/b66203232f0abb314aeb7dc9e448680184f28ed3/tests","https://github.com/gwerneckp/garmin-ble/blob/b66203232f0abb314aeb7dc9e448680184f28ed3/LICENSE","https://github.com/gwerneckp/garmin-ble/commit/69b6ed1cccfce79482fd13ca3fad292551b99a18","https://github.com/gwerneckp/garmin-ble/releases/tag/v0.3.2","https://pypi.org/project/garmin-ble/0.3.2/"],"category":"reconstruction-cases","description_en":"Python library that talks to Garmin watches over their proprietary GFDI V2 Bluetooth LE protocol, with no Garmin Connect, phone or cloud service. It implements the handshake, multi-link routing, COBS framing, CRC16 checks and protobuf service messages, streams typed readings such as heart rate, HRV, SpO2, stress, Body Battery and accelerometer data, and adds a simulator and recorded-session replay for work without hardware. Its acknowledgements credit Gadgetbridge for the protocol logic and schemas, while a published journal shows how the author decoded the accelerometer payload, which Gadgetbridge only logged, from labelled recordings.","description_zh":"一个 Python 库，通过 Garmin 手表专有的 GFDI V2 低功耗蓝牙协议与手表通信，无需 Garmin Connect、手机或云服务。它实现了握手、多链路路由、COBS 分帧、CRC16 校验和 protobuf 服务报文，可流式读取心率、HRV、血氧、压力、Body Battery 和加速度计等类型化数据，并提供模拟器和录制会话回放，便于在没有硬件时开发。致谢部分说明协议逻辑和 schema 源自 Gadgetbridge；另有一份公开的分析记录，展示作者如何依据带标注的录制数据解出加速度计载荷，而 Gadgetbridge 此前只记录其十六进制内容。","entry_url":"https://awesomerea.org/resources/garmin-ble-gfdi-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/garmin-ble-gfdi-protocol-case/","evidence_url":"https://github.com/gwerneckp/garmin-ble/blob/b66203232f0abb314aeb7dc9e448680184f28ed3/README.md","group":"cases","id":"garmin-ble-gfdi-protocol-case","json_url":"https://awesomerea.org/resources/garmin-ble-gfdi-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/garmin-ble-gfdi-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/garmin-ble-gfdi-protocol-case/index.md","name":"garmin-ble: a Python client for Garmin's GFDI watch protocol","name_zh":"garmin-ble：Garmin 手表 GFDI 协议的 Python 客户端","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at main commit b662032 (2026-09-27), four commits after v0.3.2 of 2026-08-01, which is also the latest PyPI release; those commits add examples and an announcement video. pyproject marks the package Alpha and the CHANGELOG warns that the pre-1.0 API may change. The README roadmap lists BLE transport, live telemetry, the Watch API, simulator and replay as done, protobuf settings and device state as in progress, and notifications, media control and FIT/GPX file transfers as planned.","Requires the user's own Garmin watch and a Bluetooth LE adapter on the computer; the README warns that the watch allows one BLE connection at a time, so it must be disconnected from the phone first. No Garmin Connect, firmware or SDK is used, and the repository's data files are the author's labelled accelerometer recordings. The README gives no list of tested watches; the bundled simulator profiles model a fenix 7 and a Venu 3, and the CHANGELOG notes that GFDI has no capability query, so a metric's support shows only when the watch accepts or declines its service.","Python 3.10+ with bleak and protobuf, installed from PyPI or from source; development extras add pytest, pytest-mock and pytest-asyncio. Compiled protobuf modules are committed next to their .proto sources, and most examples accept --simulate.","CI runs the pytest suite on Ubuntu with Python 3.10–3.13. Tests cover COBS, CRC16, GFDI, MLR and Smart framing, the bleak-backed transport with mocks, frame tracing, capture files and replay, and watch lifecycle, protobuf and telemetry behavior against the simulator. rev_eng.md documents how the 17-byte accelerometer packet was decoded from nine labelled recordings. Behavior on real watches remains author-reported.","AGPL-3.0-only, matching the Gadgetbridge-derived code the README acknowledges, although the README also calls the library clean-room. Garmin watches, apps and trademarks keep their own rights. One commit message calls the tilt game example a test of unsupervised vibe coding."],"requirements_zh":["审阅基于 main 分支 2026-09-27 的提交 b662032，比 2026-08-01 发布的 v0.3.2 多四个提交，v0.3.2 也是 PyPI 上的最新版本；这些提交只增加了示例和一段发布视频。pyproject 将其标为 Alpha，CHANGELOG 提醒 1.0 之前的 API 可能变化。README 路线图显示 BLE 传输、实时遥测、Watch API、模拟器和回放已完成，protobuf 设置与设备状态仍在开发中，通知、媒体控制和 FIT/GPX 文件传输尚在计划中。","需要使用者自有的 Garmin 手表，以及电脑上的低功耗蓝牙适配器；README 提醒手表同一时间只允许一个 BLE 连接，因此须先断开与手机的连接。不使用 Garmin Connect、固件或 SDK，仓库中的数据文件是作者自己录制并标注的加速度计数据。README 未列出已测试的手表；内置模拟器配置模拟 fenix 7 和 Venu 3，CHANGELOG 指出 GFDI 没有能力查询，某项指标是否受支持只能在手表接受或拒绝相应服务时得知。","需要 Python 3.10+ 以及 bleak 和 protobuf，可从 PyPI 或源码安装；开发依赖另含 pytest、pytest-mock 和 pytest-asyncio。编译好的 protobuf 模块与对应的 .proto 源文件一同提交，大多数示例支持 --simulate。","CI 在 Ubuntu 上用 Python 3.10–3.13 运行 pytest 测试套件。测试覆盖 COBS、CRC16、GFDI、MLR 和 Smart 分帧，以模拟对象测试基于 bleak 的传输，检查帧追踪、抓包文件与回放，并在模拟器上检查手表生命周期、protobuf 与遥测行为。rev_eng.md 记录了如何依据九组带标注的录制数据解出 17 字节的加速度计数据包。在真实手表上的表现仍属作者报告。","采用 AGPL-3.0-only，与 README 致谢的 Gadgetbridge 衍生代码一致，尽管 README 同时称其为净室实现。Garmin 手表、应用和商标仍归各自权利人所有。一条提交信息称倾斜游戏示例是对无人监督 vibe coding 的一次测试。"],"targets":["protocol"],"url":"https://github.com/gwerneckp/garmin-ble","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/0xCAFEDECAF/VanBus/blob/0c22517eb1a94fa65df98faecd2cf86abbf8fc85/library.properties","https://github.com/0xCAFEDECAF/VanBus/blob/0c22517eb1a94fa65df98faecd2cf86abbf8fc85/CHANGES.txt","https://github.com/0xCAFEDECAF/VanBus/blob/0c22517eb1a94fa65df98faecd2cf86abbf8fc85/examples/PacketParser/PacketParser.ino#L12-L52","https://github.com/0xCAFEDECAF/VanBus/blob/0c22517eb1a94fa65df98faecd2cf86abbf8fc85/examples/LiveWebPage/LiveWebPage.ino","https://github.com/0xCAFEDECAF/VanBus/blob/0c22517eb1a94fa65df98faecd2cf86abbf8fc85/examples/PacketParser/example_log.txt","https://github.com/0xCAFEDECAF/VanBus/blob/0c22517eb1a94fa65df98faecd2cf86abbf8fc85/.github/workflows/compile.yml","https://github.com/0xCAFEDECAF/VanBus/blob/0c22517eb1a94fa65df98faecd2cf86abbf8fc85/.github/workflows/arduino-lint.yml","https://github.com/0xCAFEDECAF/VanBus/blob/0c22517eb1a94fa65df98faecd2cf86abbf8fc85/LICENSE","https://github.com/0xCAFEDECAF/VanBus/releases/tag/v0.5.1"],"category":"protocol-analysis","description_en":"Arduino library for ESP8266/ESP8285 and ESP32 boards that receives and transmits packets on the VAN (Vehicle Area Network) comfort bus that PSA fitted to Peugeot and Citroën models until about 2009. It decodes the signal from a GPIO pin, wired through a CAN transceiver or a receive-only resistor divider, in software into packets with identifier, command flags, data and a 15-bit CRC that it can check or try to repair by flipping single bits, and reports queue and error statistics. Example sketches dump raw packets, send a packet, and parse comfort-bus traffic into readable fields on the serial port or a live web page.","description_zh":"面向 ESP8266/ESP8285 和 ESP32 开发板的 Arduino 库，可在 VAN（Vehicle Area Network）舒适系统总线上收发报文；PSA 在 2009 年前的部分标致和雪铁龙车型中使用这种总线。它用软件解码经 CAN 收发器或仅供接收的电阻分压电路接入 GPIO 引脚的信号，得到包含标识符、命令标志、数据和 15 位 CRC 的报文，可校验 CRC，或通过逐位翻转尝试修复，并提供队列与错误统计。示例程序可转储原始报文、发送报文，并在串口或实时网页上把舒适总线流量解析为可读字段。","entry_url":"https://awesomerea.org/resources/vanbus/","entry_url_zh":"https://awesomerea.org/zh/resources/vanbus/","evidence_url":"https://github.com/0xCAFEDECAF/VanBus/blob/0c22517eb1a94fa65df98faecd2cf86abbf8fc85/README.md","group":"tools","id":"vanbus","json_url":"https://awesomerea.org/resources/vanbus/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/vanbus/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/vanbus/index.md","name":"VanBus","name_zh":"VanBus PSA VAN 总线收发库","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.5.1, published 2026-05-29, the version library.properties and VanBusVersion.h declare; the single later master commit (2026-08-22) only adds a pin-swap note to two example sketches. The README says the library supports only the 125 kbit/s VAN rate, with other rates such as 62.5 kbit/s still to be added.","Builds in the Arduino IDE (the author uses 1.8.19) with the ESP8266 board package (tested 2.6.3–3.1.2, CPU at 160 MHz) or the ESP32 package (tested 1.0.6, 2.0.17 and 3.3.5, CPU at 240 MHz), installing the library through the Arduino Library Manager. The LiveWebPage example also needs the arduinoWebSockets library and has the browser load jQuery from Google's CDN; dumping packets into a character buffer needs PrintEx.","Live use needs a PSA vehicle with a VAN comfort bus: the README locates it on pins 2 and 3 of ISO block A at the head unit and documents wiring through an MCP2551 transceiver with a 5 V–3.3 V level converter, an SN65HVD230 transceiver, or a receive-only resistor divider that it says works well only with ESP8266 boards. It warns that the transceiver boards' CAN terminator resistors may make other equipment on the bus malfunction, and transmitting puts packets on the car's bus. The only bundled traffic is the author's serial-monitor log, examples/PacketParser/example_log.txt.","CI compiles the example sketches for an ESP8266 D1 mini and for ESP32 board packages 1.0.6, 2.0.17 and the latest, and runs Arduino Lint in strict mode; it does not exercise a bus. PacketParser calls its packet interpretation highly experimental, gathered from various sources and from experiments on the author's own 2003 Peugeot 406, and the README points to external lists of known IDEN values.","MIT."],"requirements_zh":["审阅时最新版本为 v0.5.1，发布于 2026-05-29，与 library.properties 和 VanBusVersion.h 声明的版本一致；此后 master 上只有一次提交（2026-08-22），仅在两个示例程序中补充了引脚可能对调的提示。README 称该库目前只支持 125 kbit/s 的 VAN 速率，62.5 kbit/s 等其他速率尚待添加。","使用 Arduino IDE 构建（作者使用 1.8.19），搭配 ESP8266 开发板包（测试过 2.6.3–3.1.2，CPU 设为 160 MHz）或 ESP32 开发板包（测试过 1.0.6、2.0.17 和 3.3.5，CPU 设为 240 MHz），并通过 Arduino 库管理器安装本库。LiveWebPage 示例另需 arduinoWebSockets 库，网页会让浏览器从 Google CDN 加载 jQuery；把报文转储到字符缓冲区需要 PrintEx。","实际使用需要一辆装有 VAN 舒适系统总线的 PSA 车辆：README 指出总线通常位于主机（车载收音机）ISO A 插座的第 2、3 针，并说明了三种接法：MCP2551 收发器配合 5 V–3.3 V 电平转换器、SN65HVD230 收发器，或仅供接收、据称只在 ESP8266 开发板上效果较好的电阻分压电路。README 警告收发器板上为 CAN 设计的终端电阻可能导致总线上其他设备工作异常，而发送功能会把报文写入车辆总线。仓库附带的总线数据只有作者的串口监视器日志 examples/PacketParser/example_log.txt。","CI 针对 ESP8266 D1 mini 以及 ESP32 开发板包 1.0.6、2.0.17 和最新版编译示例程序，并以严格模式运行 Arduino Lint，但不涉及实际总线。PacketParser 称其报文解释“高度实验性”，综合自多方资料以及作者在自己的 2003 款标致 406 上所做的实验；README 还指向外部整理的已知 IDEN 值列表。","采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/0xCAFEDECAF/VanBus","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/kweatherman/IDA_ClassInformer_PlugIn/blob/dfb865248d38684d06bf0e53799430b068a5d2d0/Main.cpp","https://github.com/kweatherman/IDA_ClassInformer_PlugIn/blob/dfb865248d38684d06bf0e53799430b068a5d2d0/RTTI.cpp","https://github.com/kweatherman/IDA_ClassInformer_PlugIn/blob/dfb865248d38684d06bf0e53799430b068a5d2d0/IDA_ClassInformer_PlugIn.vcxproj","https://github.com/kweatherman/IDA_ClassInformer_PlugIn/commit/7c2b5d86f89b2eaed934592bbf87cc7aac5e6bc7","https://github.com/kweatherman/IDA_ClassInformer_PlugIn/releases/tag/v6.0.3"],"category":"native-analysis","description_en":"IDA Pro plugin that scans Microsoft Visual C++ binaries for virtual function tables (vftables) through their C++ run-time type information (RTTI), names, labels and comments the vftables it finds, defines the RTTI data structures and identifies single, multiple and virtual inheritance in each class hierarchy. It also processes static initializer and terminator tables, and opens a list window of the vftables with their method counts and class hierarchies, where each line jumps to its vftable. Its author notes that IDA 9's built-in RTTI plugin now finds nearly all of this data, so the current version only sets types that IDA missed and serves mainly as a gathering and browsing view.","description_zh":"一款 IDA Pro 插件，借助 C++ 运行时类型信息（RTTI）扫描 Microsoft Visual C++ 编译的二进制中的虚函数表（vftable），为找到的虚函数表命名、添加标签和注释，定义 RTTI 数据结构，并识别各类层次结构中的单继承、多继承和虚继承。它还会处理静态初始化与终止函数表，并打开一个列表窗口，显示各虚函数表的方法数量和类层次结构，点击任一行即可跳转到对应的虚函数表。作者指出，IDA 9 内置的 RTTI 插件现已能找到几乎全部此类数据，因此当前版本只为 IDA 遗漏的结构设置类型，主要用作汇总和浏览视图。","entry_url":"https://awesomerea.org/resources/class-informer/","entry_url_zh":"https://awesomerea.org/zh/resources/class-informer/","evidence_url":"https://github.com/kweatherman/IDA_ClassInformer_PlugIn/blob/dfb865248d38684d06bf0e53799430b068a5d2d0/README.md","group":"tools","id":"class-informer","json_url":"https://awesomerea.org/resources/class-informer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/class-informer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/class-informer/index.md","name":"Class Informer","name_zh":"Class Informer MSVC RTTI 类信息插件","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v6.0.3, published 2026-08-04, which tags the reviewed master commit and attaches a zip holding a single Windows plugin DLL; its notes describe it as a fix for IDA 9.4, and a September 2025 commit had updated the plugin for IDA 9.2 and Qt 6. The plugin loads only for x86/x64 (metapc) databases.","The README's IDA 9.4 note says the plugin flags had to change before IDA would recognize the plugin, which broke loading it through plugins.cfg, so the Alt-2 hotkey is now built in and the plugin also runs from Edit > Plugins. The installation steps still name an older Class_Informer.plw file, and the plugins.cfg arguments the README gives for turning off the demoscene-style intro and its music predate that note.","Source builds need Windows and Visual Studio 2022 (v143 toolset) with Qt 6 for MSVC 2022 x64 and the Qt Visual Studio tools, the IDA SDK inside the IDA directory, and the author's separate IDA_Support repository and libxmp, neither of which is in this repository. There is no CI and there are no tests. The analyst supplies the IDA database; the README says the plugin is tailored to MSVC-compiled binaries and results with other compilers may be unpredictable.","The README states the MIT License, but the repository has no separate license file; according to the README, the tracker module in res is used with the permission of its composer, Drax."],"requirements_zh":["审阅时最新版本为 v6.0.3，发布于 2026-08-04，该标签指向所审阅的 master 提交，附带的 zip 中只有一个 Windows 插件 DLL；发布说明称该版本修复了 IDA 9.4 上的问题，此前 2025 年 9 月的一次提交已将插件更新到 IDA 9.2 和 Qt 6。插件只会为 x86/x64（metapc）数据库加载。","README 中关于 IDA 9.4 的说明称，必须修改插件标志 IDA 才能识别该插件，这导致无法再通过 plugins.cfg 加载，因此现已内置 Alt-2 快捷键，也可从 Edit > Plugins 菜单运行。安装步骤仍沿用旧的 Class_Informer.plw 文件名；README 给出的用于关闭演示场景风格片头及其音乐的 plugins.cfg 参数，早于这一说明。","从源码构建需要 Windows 和 Visual Studio 2022（v143 工具集），以及面向 MSVC 2022 x64 的 Qt 6 与 Qt Visual Studio 工具、位于 IDA 目录中的 IDA SDK，还需要作者另行维护的 IDA_Support 仓库和 libxmp，这两者都不在本仓库中。没有 CI，也没有测试。IDA 数据库由分析者自行提供；README 称该插件专为 MSVC 编译的二进制设计，用于其他编译器的产物时结果可能难以预料。","README 声明采用 MIT 许可证，但仓库中没有单独的许可证文件；据 README 说明，res 目录中的 tracker 音乐模块经其作曲者 Drax 许可使用。"],"targets":["binary"],"url":"https://github.com/kweatherman/IDA_ClassInformer_PlugIn","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/bravoserver/bravo/blob/7be5d792871a8447499911fa1502c6a7c1437dc3/docs/introduction.rst","https://github.com/bravoserver/bravo/blob/7be5d792871a8447499911fa1502c6a7c1437dc3/docs/differences.rst","https://github.com/bravoserver/bravo/blob/7be5d792871a8447499911fa1502c6a7c1437dc3/CHANGELOG.rst","https://github.com/bravoserver/bravo/blob/7be5d792871a8447499911fa1502c6a7c1437dc3/bravo/beta/protocol.py","https://github.com/bravoserver/bravo/blob/7be5d792871a8447499911fa1502c6a7c1437dc3/bravo.ini.example","https://github.com/bravoserver/bravo/blob/7be5d792871a8447499911fa1502c6a7c1437dc3/requirements.txt","https://github.com/bravoserver/bravo/blob/7be5d792871a8447499911fa1502c6a7c1437dc3/.travis.yml","https://github.com/bravoserver/bravo/blob/7be5d792871a8447499911fa1502c6a7c1437dc3/LICENSE","https://github.com/bravoserver/bravo/blob/7be5d792871a8447499911fa1502c6a7c1437dc3/tools/parser-cli.py","https://pypi.org/project/Bravo/2.0/"],"category":"reconstruction-cases","description_en":"Reimplements the server side of Minecraft’s Alpha- and Beta-era multiplayer in Python on Twisted; its documentation calls it a reverse-engineered implementation written from scratch, credits network traffic dumps and says general Minecraft data went to a community wiki. The final 2.0 release speaks the 1.4.x client protocol for login, chunk transfer, entities, server-side inventories, lighting, physics and Anvil saves, while deliberately changing behaviour such as chunk loading and item stacking. A pluggable architecture adds terrain generation, seasons and commands, and small scripts inspect packets, NBT and region files.","description_zh":"以 Python 基于 Twisted 重新实现 Minecraft Alpha 与 Beta 时期多人游戏的服务端；其文档称这是从零编写的逆向实现，致谢了网络流量转储的提供者，并说明通用的 Minecraft 资料已贡献给社区 wiki。最终的 2.0 版支持 1.4.x 客户端协议，涵盖登录、区块传输、实体、服务端背包、光照、物理和 Anvil 存档，同时有意改变了区块加载和物品堆叠等行为。可插拔架构提供地形生成、季节和命令，另有几个小脚本用于查看数据包、NBT 和区域文件。","entry_url":"https://awesomerea.org/resources/bravo-minecraft-server-case/","entry_url_zh":"https://awesomerea.org/zh/resources/bravo-minecraft-server-case/","evidence_url":"https://github.com/bravoserver/bravo/blob/7be5d792871a8447499911fa1502c6a7c1437dc3/README.rst","group":"cases","id":"bravo-minecraft-server-case","json_url":"https://awesomerea.org/resources/bravo-minecraft-server-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/bravo-minecraft-server-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bravo-minecraft-server-case/index.md","name":"Bravo: a reverse-engineered Minecraft server","name_zh":"Bravo：逆向实现的 Minecraft 服务端","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Unmaintained: the GitHub description marks the project UNMAINTAINED, and the reviewed master commit dates from 2014-09-09, 90 commits after the 2.0 tag (2013-01-10, also the latest PyPI release). The 2.0 changelog adds 1.4.x protocol support without server-side encryption, disables broken online authentication and replaces the Alpha and Beta save formats with Anvil; source pins protocol version 78. The introduction says creative games are probably safe but some Survival-Multiplayer elements are missing, and older pages such as the feature list predate these 2.0 changes.","The server needs no original game files; clients connect with the matching Minecraft client the player owns, which the FAQ says Bravo will not replace. The repository commits no game assets or Mojang code: block, item and recipe definitions are written as Python tables, and the documentation says Bravo inherits no code from other Minecraft projects.","Python 2.6 or 2.7 (CPython or PyPy); requirements.txt pins construct 2.0.6 and Pillow 2.4.0 and needs Twisted 11.0+, including Twisted Conch, with Twisted Words or Web for the IRC and web plugins. It runs as the twistd bravo plugin, configured from bravo.ini.example with a world path, creative or survival mode and the anvil serializer; the packet-parser script still imports a pre-2.0 module path.","Travis CI ran trial over the in-tree tests for protocol packets, chunks, inventories, plugins and serializers on Python 2.6, 2.7 and PyPy. MIT/X11 license, with bravo/nbt.py taken from Thomas Woolford’s MIT NBT library; Minecraft and its client keep Mojang’s rights."],"requirements_zh":["项目已停止维护：GitHub 简介标为 UNMAINTAINED，所审阅的 master 提交日期为 2014-09-09，比 2.0 标签（2013-01-10，也是 PyPI 上的最新版本）多 90 个提交。2.0 更新日志称新增 1.4.x 协议支持但不含服务端加密，停用了已失效的在线验证，并以 Anvil 取代 Alpha 和 Beta 存档格式；源码固定协议版本为 78。简介称运行创造模式大概是安全的，但仍缺少部分生存多人模式要素；功能列表等较早的页面早于这些 2.0 改动。","服务端不需要任何原游戏文件；玩家用自己拥有的对应版本 Minecraft 客户端连接，FAQ 表示 Bravo 不会替代客户端。仓库未提交游戏素材或 Mojang 代码：方块、物品和配方定义以 Python 表格写成，文档称 Bravo 未继承其他 Minecraft 项目的代码。","需要 Python 2.6 或 2.7（CPython 或 PyPy）；requirements.txt 固定 construct 2.0.6 和 Pillow 2.4.0，并要求 Twisted 11.0+（含 Twisted Conch），IRC 和网页插件另需 Twisted Words 或 Web。它以 twistd 的 bravo 插件运行，按 bravo.ini.example 配置世界路径、创造或生存模式及 anvil 序列化器；数据包解析脚本仍导入 2.0 之前的模块路径。","Travis CI 曾在 Python 2.6、2.7 和 PyPy 上用 trial 运行仓库内针对协议数据包、区块、背包、插件和序列化器的测试。采用 MIT/X11 许可证，bravo/nbt.py 取自 Thomas Woolford 的 MIT 许可 NBT 库；Minecraft 及其客户端仍归 Mojang 所有。"],"targets":["game","protocol"],"url":"https://github.com/bravoserver/bravo","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/CalebFenton/dex-oracle/blob/d6be172b925e52421c092c574b74a3783b9e7901/lib/dex-oracle/driver.rb","https://github.com/CalebFenton/dex-oracle/tree/d6be172b925e52421c092c574b74a3783b9e7901/lib/dex-oracle/plugins","https://github.com/CalebFenton/dex-oracle/tree/d6be172b925e52421c092c574b74a3783b9e7901/res","https://github.com/CalebFenton/dex-oracle/blob/d6be172b925e52421c092c574b74a3783b9e7901/dex-oracle.gemspec","https://github.com/CalebFenton/dex-oracle/blob/d6be172b925e52421c092c574b74a3783b9e7901/lib/dex-oracle/version.rb","https://github.com/CalebFenton/dex-oracle/blob/d6be172b925e52421c092c574b74a3783b9e7901/.travis.yml","https://github.com/CalebFenton/dex-oracle/blob/d6be172b925e52421c092c574b74a3783b9e7901/LICENSE.txt","https://rubygems.org/gems/dex-oracle/versions/1.0.5"],"category":"android","description_en":"Pattern-based Dalvik deobfuscator that takes an APK, a DEX file or a Smali directory, disassembles it with baksmali and runs plugins that look for obfuscation patterns in the Smali code. To learn what a matched call returns, such as a decrypted string, it merges a small driver into the app's DEX, pushes it to a connected Android device or emulator and invokes the static method there through reflection; the result replaces the call as a constant before the APK or DEX is reassembled. Plugins cover simple string encryption, indexed string and class lookups, certain DexGuard patterns and some reflection, and the author describes it as the inspiration for Simplify.","description_zh":"基于模式匹配的 Dalvik 反混淆工具，可处理 APK、DEX 文件或 Smali 目录：先用 baksmali 反汇编，再由各插件在 Smali 代码中查找混淆模式。为得知匹配到的调用会返回什么（例如解密后的字符串），它把一个小型驱动程序合并进应用的 DEX，推送到已连接的 Android 设备或模拟器，并通过反射在设备上调用对应的静态方法；返回值以常量替换原调用，之后再重新组装 APK 或 DEX。插件涵盖简单字符串加密、按索引查找字符串和类、部分 DexGuard 模式以及部分反射调用；作者称它启发了另一个反混淆工具 Simplify。","entry_url":"https://awesomerea.org/resources/dex-oracle/","entry_url_zh":"https://awesomerea.org/zh/resources/dex-oracle/","evidence_url":"https://github.com/CalebFenton/dex-oracle/blob/d6be172b925e52421c092c574b74a3783b9e7901/README.md","group":"tools","id":"dex-oracle","json_url":"https://awesomerea.org/resources/dex-oracle/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dex-oracle/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dex-oracle/index.md","name":"dex-oracle","name_zh":"dex-oracle Dalvik 反混淆工具","record_type":"resource","relationship":"foundation","requirements":["Development is inactive: the latest RubyGems and GitHub release is 1.0.5 of 2016-07-26, while the reviewed master commit of 2018-12-13 already declares an unpublished 1.0.6. It is installed as a Ruby gem or from source with Bundler; the repository pins Ruby 2.5.3 and needs Java, adb, and smali and baksmali on the PATH, with the README's setup snippet using smali 2.2.5.","Input is the user's own APK, DEX or Smali directory, and a running emulator or attached device with Android 5.0 or later is required because matched methods really execute on it. The README prefers an emulator and warns that the executed code may be hostile; its troubleshooting section instead suggests Android 4.4.2 (API level 19, ARM) if the driver crashes. Only static methods can be executed, and plugins can be disabled when a pattern matches code that is not obfuscation.","The res directory ships the prebuilt driver.dex and a copy of the Android SDK's dx.jar, which the tool uses for DEX merging; rebuilding the driver needs Gradle and the SDK's dx tool. The README lists three plugins, while the plugins directory holds six, adding indexed string and class lookups and a bitwise string-decryption pattern.","RSpec tests with tiny hello-world APK and DEX fixtures and Smali pattern samples ran through a Travis CI configuration on Ruby 2.5.3; the repository has no GitHub Actions workflow.","MIT (LICENSE.txt and the gemspec); dx.jar and the smali tools keep their own terms."],"requirements_zh":["项目已不再活跃：RubyGems 与 GitHub 上的最新发布版均为 1.0.5，发布于 2016-07-26；所审阅的 master 提交日期为 2018-12-13，已标注尚未发布的 1.0.6。可作为 Ruby gem 安装，或用 Bundler 从源码安装；仓库固定 Ruby 2.5.3，还需要 Java、adb，以及位于 PATH 中的 smali 和 baksmali，README 的安装示例使用 smali 2.2.5。","输入为使用者自己的 APK、DEX 或 Smali 目录；由于匹配到的方法会真正在设备上执行，必须有正在运行的模拟器或已连接的 Android 5.0 及以上设备。README 推荐使用模拟器，并提醒所执行的代码可能有害；其故障排查部分则建议在驱动崩溃时改用 Android 4.4.2（API 19，ARM）。只能执行静态方法；若某个模式误匹配到并非混淆的代码，可单独禁用相应插件。","res 目录附带预编译的 driver.dex，以及工具用于合并 DEX 的 Android SDK dx.jar 副本；重新构建驱动需要 Gradle 和 SDK 中的 dx 工具。README 列出三个插件，而插件目录实际有六个，另含按索引查找字符串和类的插件以及一种按位运算字符串解密模式。","RSpec 测试使用极小的 hello-world APK、DEX 样例和 Smali 模式片段，曾通过使用 Ruby 2.5.3 的 Travis CI 配置运行；仓库没有 GitHub Actions 工作流。","采用 MIT 许可（见 LICENSE.txt 与 gemspec）；dx.jar 和 smali 工具保留各自条款。"],"targets":["app"],"url":"https://github.com/CalebFenton/dex-oracle","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/HackOvert/GhidraSnippets/blob/9bcd718e8958387ff5695194b83a52df4e0a3de7/LICENSE","https://github.com/HackOvert/GhidraSnippets/commit/643bbee5d287c79cb92d93112f89346ce3023a1f"],"category":"learning","description_en":"A single-page collection of 30 commented Python examples for scripting Ghidra, grouped by task: projects, programs, functions and cross-references, basic blocks, instructions, stack variables, decompiler output, comments, P-code emulation and dumps, call graphs and program slices. It starts from the Flat Program, Flat Decompiler and Flat Debugger APIs, then shows where a task needs Ghidra's fuller API; most snippets include an example of their output.","description_zh":"单页汇集 30 个带注释的 Ghidra Python 脚本示例，按任务分组：项目、程序、函数与交叉引用、基本块、指令、栈变量、反编译输出、注释、P-code 模拟与导出、调用图和程序切片。示例从 Flat Program、Flat Decompiler 和 Flat Debugger API 入手，再说明哪些任务需要 Ghidra 更完整的 API；大多数示例附有输出样例。","entry_url":"https://awesomerea.org/resources/ghidra-snippets/","entry_url_zh":"https://awesomerea.org/zh/resources/ghidra-snippets/","evidence_url":"https://github.com/HackOvert/GhidraSnippets/blob/9bcd718e8958387ff5695194b83a52df4e0a3de7/README.md","group":"learn","id":"ghidra-snippets","json_url":"https://awesomerea.org/resources/ghidra-snippets/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/ghidra-snippets/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghidra-snippets/index.md","name":"Ghidra Snippets","name_zh":"Ghidra Snippets Ghidra 脚本示例集","record_type":"resource","relationship":"learning","requirements":["Everything is in one README, with no script files or releases. The last change, on 2023-07-19, fixed a typo; the one before, on 2022-11-09, added Flat API notes for Ghidra 10.2. Version remarks range from Ghidra 9.1 and 9.2.2 to 10.2, so names and behavior in current Ghidra releases may differ; the README points to Ghidra's built-in API help and to the ghidra.re online docs, which it says may not be up to date.","The examples run in Ghidra's Python scripting environment, which the README calls the Jython console, against a program the user has loaded. Plotting a function AST also needs GraphViz's dot plus networkx and pydot importable from Jython, and the README notes that Python modules with native code do not work there. Compatibility with PyGhidra or Python 3 is not stated.","Released under CC0 1.0. The README calls the snippets a verbose mashup with more than one way to do each task and invites pull requests."],"requirements_zh":["全部内容都在一个 README 中，没有脚本文件或发布版本。最近一次修改在 2023-07-19，修正了一处笔误；再上一次在 2022-11-09，补充了 Ghidra 10.2 的 Flat API 说明。文中的版本说明从 Ghidra 9.1、9.2.2 到 10.2 不等，因此在当前 Ghidra 版本中的名称和行为可能不同；README 建议查阅 Ghidra 内置的 API 帮助以及 ghidra.re 在线文档，并说明后者可能不是最新。","示例在 Ghidra 的 Python 脚本环境中运行（README 称之为 Jython 控制台），针对使用者已载入的程序。绘制函数 AST 还需要 GraphViz 的 dot，以及能在 Jython 中导入的 networkx 和 pydot；README 指出含原生代码的 Python 模块无法在其中使用。未说明是否兼容 PyGhidra 或 Python 3。","以 CC0 1.0 发布。README 称这些示例刻意写得冗长、只是拼凑出来完成任务，每项任务都有不止一种做法，并欢迎提交拉取请求。"],"targets":["binary"],"url":"https://github.com/HackOvert/GhidraSnippets","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/airbus-cert/minusone/blob/48d85ed29a293359c5a990569de70561dd2c312c/core/src/ps/mod.rs","https://github.com/airbus-cert/minusone/blob/48d85ed29a293359c5a990569de70561dd2c312c/core/src/js/mod.rs","https://github.com/airbus-cert/minusone/blob/48d85ed29a293359c5a990569de70561dd2c312c/core/src/ps/compression.rs","https://github.com/airbus-cert/minusone/blob/48d85ed29a293359c5a990569de70561dd2c312c/core/src/ps/crypto.rs","https://github.com/airbus-cert/minusone/blob/48d85ed29a293359c5a990569de70561dd2c312c/crates/minusone-cli/src/cli.rs","https://github.com/airbus-cert/minusone/blob/48d85ed29a293359c5a990569de70561dd2c312c/core/Cargo.toml","https://github.com/airbus-cert/minusone/blob/48d85ed29a293359c5a990569de70561dd2c312c/crates/minusone-cli/Cargo.toml","https://github.com/airbus-cert/minusone/blob/48d85ed29a293359c5a990569de70561dd2c312c/crates/minusonejs/justfile","https://github.com/airbus-cert/minusone/blob/48d85ed29a293359c5a990569de70561dd2c312c/devenv.nix","https://github.com/airbus-cert/minusone/blob/48d85ed29a293359c5a990569de70561dd2c312c/.github/workflows/cargo_test.yml","https://github.com/airbus-cert/minusone/tree/48d85ed29a293359c5a990569de70561dd2c312c/samples","https://github.com/airbus-cert/minusone/blob/48d85ed29a293359c5a990569de70561dd2c312c/LICENSE","https://github.com/airbus-cert/minusone/releases/tag/v0.4.2","https://crates.io/crates/minusone/0.4.1","https://pypi.org/project/pyminusone/0.4.1/","https://www.npmjs.com/package/minusonejs/v/0.5.0"],"category":"web-analysis","description_en":"Airbus CERT's Rust deobfuscation engine for scripts: it parses PowerShell or JavaScript with tree-sitter, applies rules that infer the values of syntax-tree nodes and prints a simplified script. The PowerShell rules fold arithmetic, string operations, casts, -join, -replace and format operators, Base64 and UTF decoding, predictable variables and loops, and also resolve Gzip or Deflate streams and AES decryption when the data and key are in the script; the newer JavaScript rules cover literals, operators, string and array built-ins, atob and btoa, Buffer calls, predictable function calls and JSFuck constructs. The CLI can list, select or skip rules and export every rewrite step as HTML or JSON, and Python and WebAssembly bindings embed the engine, including in an online version linked from the README.","description_zh":"Airbus CERT 开发的 Rust 脚本去混淆引擎：用 tree-sitter 解析 PowerShell 或 JavaScript，应用一组推断语法树节点取值的规则，再输出化简后的脚本。PowerShell 规则可折叠算术与字符串运算、类型转换、-join、-replace 和格式化运算符、Base64 与 UTF 解码、可预测的变量和循环；当数据和密钥都在脚本中时，还能还原 Gzip 或 Deflate 流以及 AES 解密。较新的 JavaScript 规则涵盖字面量、运算符、字符串与数组内置方法、atob 与 btoa、Buffer 调用、可预测的函数调用以及 JSFuck 写法。命令行工具可列出、选用或跳过规则，并把每一步改写导出为 HTML 或 JSON；Python 和 WebAssembly 绑定可嵌入该引擎，README 中链接的在线版本即基于此。","entry_url":"https://awesomerea.org/resources/minusone-script-deobfuscator/","entry_url_zh":"https://awesomerea.org/zh/resources/minusone-script-deobfuscator/","evidence_url":"https://github.com/airbus-cert/minusone/blob/48d85ed29a293359c5a990569de70561dd2c312c/README.md","group":"tools","id":"minusone-script-deobfuscator","json_url":"https://awesomerea.org/resources/minusone-script-deobfuscator/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/minusone-script-deobfuscator/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/minusone-script-deobfuscator/index.md","name":"minusone","name_zh":"minusone 脚本去混淆引擎","record_type":"resource","relationship":"foundation","requirements":["No prebuilt CLI binaries: the latest GitHub release, v0.4.2 from 2025-10-01, has no attached files, and the published packages are minusone 0.4.1 on crates.io, pyminusone 0.4.1 on PyPI with Linux x86_64 and Windows wheels, and minusonejs 0.5.0 on npm. The reviewed main commit is 538 commits past v0.4.2 and declares the core library 0.5.0 and minusone-cli 0.6.1.","Build with Cargo; the crates use Rust edition 2024, Cargo.lock is not committed, and the PowerShell grammar comes from an unpinned Git dependency on a tree-sitter-powershell fork. The CLI needs --lang powershell or --lang javascript. The project's devenv/Nix environment uses nightly Rust, the Python bindings build with maturin, and the WebAssembly module targets wasm32-wasip2 and is transpiled to JavaScript with jco.","The README still lists only PowerShell as supported, names basic JavaScript support as a roadmap item and links rule files at older src/ paths; the JavaScript backend dates from March 2026, after the crates.io and PyPI packages and the v0.4.2 release. Rules rewrite the script statically from values they can infer, and the analyst supplies the scripts; the samples folder holds only small JSFuck test files next to their plain sources.","CI runs devenv test, which runs cargo test and the Python binding test script; the core has unit tests for both languages. MIT license; Cargo metadata names Airbus CERT as author, and the LICENSE copyright line names Sylvain Peyrefitte."],"requirements_zh":["没有预编译的命令行二进制：最新的 GitHub 版本 v0.4.2 发布于 2025-10-01，未附带任何文件；已发布的软件包有 crates.io 上的 minusone 0.4.1、PyPI 上提供 Linux x86_64 与 Windows wheel 的 pyminusone 0.4.1，以及 npm 上的 minusonejs 0.5.0。所审阅的 main 提交比 v0.4.2 多 538 个提交，核心库声明版本为 0.5.0，minusone-cli 为 0.6.1。","使用 Cargo 构建；各 crate 采用 Rust 2024 版次，仓库未提交 Cargo.lock，PowerShell 语法来自一个 tree-sitter-powershell 分支的 Git 依赖，未固定版本。命令行工具需指定 --lang powershell 或 --lang javascript。项目的 devenv/Nix 开发环境使用 nightly Rust；Python 绑定用 maturin 构建，WebAssembly 模块以 wasm32-wasip2 为目标，并用 jco 转译为 JavaScript。","README 仍只把 PowerShell 列为受支持语言，把基础 JavaScript 支持列为路线图项目，规则文件链接也仍指向旧的 src/ 路径；JavaScript 后端始于 2026 年 3 月，晚于 crates.io 和 PyPI 软件包以及 v0.4.2 版本。规则依据可推断出的值对脚本做静态改写，待分析的脚本由分析者自行提供；samples 目录中只有少量 JSFuck 测试文件及其对应的明文源码。","CI 运行 devenv test，即执行 cargo test 和 Python 绑定的测试脚本；核心库对两种语言都有单元测试。采用 MIT 许可；Cargo 元数据将作者列为 Airbus CERT，LICENSE 中的版权行署名为 Sylvain Peyrefitte。"],"targets":["website"],"url":"https://github.com/airbus-cert/minusone","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/McGill-DMaS/Kam1n0-Community/blob/1c3c309acc8f5e50c6617f858aa3b5b84c121b26/documentation/server/server.md","https://github.com/McGill-DMaS/Kam1n0-Community/blob/1c3c309acc8f5e50c6617f858aa3b5b84c121b26/documentation/ida-pro-plugin/ida-pro-plugin.md","https://github.com/McGill-DMaS/Kam1n0-Community/blob/1c3c309acc8f5e50c6617f858aa3b5b84c121b26/kam1n0/kam1n0-resources/bin/kam1n0.properties","https://github.com/McGill-DMaS/Kam1n0-Community/blob/1c3c309acc8f5e50c6617f858aa3b5b84c121b26/kam1n0/kam1n0-commons/src/main/java/ca/mcgill/sis/dmas/kam1n0/framework/disassembly/DisassemblyFactory.java","https://github.com/McGill-DMaS/Kam1n0-Community/blob/1c3c309acc8f5e50c6617f858aa3b5b84c121b26/kam1n0-builds/README.md","https://github.com/McGill-DMaS/Kam1n0-Community/blob/1c3c309acc8f5e50c6617f858aa3b5b84c121b26/.gitmodules","https://github.com/McGill-DMaS/Kam1n0-Community/blob/1c3c309acc8f5e50c6617f858aa3b5b84c121b26/.github/workflows/msbuild.yml","https://github.com/McGill-DMaS/Kam1n0-Community/tree/1c3c309acc8f5e50c6617f858aa3b5b84c121b26/kam1n0/kam1n0-resources/bin-exclude-from-distr/test-cases","https://github.com/McGill-DMaS/Kam1n0-Community/tree/1c3c309acc8f5e50c6617f858aa3b5b84c121b26/kam1n0-builds/windows/installer-src-32-64/libs-server","https://github.com/McGill-DMaS/Kam1n0-Community/blob/1c3c309acc8f5e50c6617f858aa3b5b84c121b26/LICENSE.txt","https://github.com/McGill-DMaS/Kam1n0-Community/releases/tag/2.2.0","https://github.com/McGill-DMaS/Kam1n0-Community/releases/tag/nightly-action"],"category":"binary-diffing","description_en":"Server platform from McGill University's Data Mining and Security Lab that indexes collections of disassembled binaries into shared repositories and searches them for cloned assembly functions. Its applications cover subgraph clone search within one instruction-set family (Asm-Clone), cross-architecture semantic search over VEX IR using symbolic and concrete execution (Sym1n0), Asm2Vec representation learning aimed at compiler optimization and obfuscation, and executable classification built on Asm2Vec. An IDA Pro plug-in sends functions to the server and shows flow-graph, text-diff and clone-group views; the README's accuracy and query-time figures come from the authors' own papers.","description_zh":"McGill 大学数据挖掘与安全实验室开发的服务端平台，可把大量已反汇编的二进制建立索引、存入可共享的仓库，并在其中搜索克隆的汇编函数。平台提供多种应用：在同一指令集家族内进行子图克隆搜索（Asm-Clone），借助符号执行与具体执行在 VEX IR 上进行跨架构语义搜索（Sym1n0），面向编译优化与混淆的 Asm2Vec 表示学习，以及基于 Asm2Vec 的可执行文件分类。IDA Pro 插件把函数发送到服务端，并以控制流图、文本差异和克隆分组视图展示结果；README 中的准确率与查询耗时数据出自作者自己的论文。","entry_url":"https://awesomerea.org/resources/kam1n0/","entry_url_zh":"https://awesomerea.org/zh/resources/kam1n0/","evidence_url":"https://github.com/McGill-DMaS/Kam1n0-Community/blob/1c3c309acc8f5e50c6617f858aa3b5b84c121b26/README.md","group":"tools","id":"kam1n0","json_url":"https://awesomerea.org/resources/kam1n0/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/kam1n0/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/kam1n0/index.md","name":"Kam1n0","name_zh":"Kam1n0 汇编代码克隆搜索平台","record_type":"resource","relationship":"foundation","requirements":["Latest stable release at review: 2.2.0, published 2020-11-15, with Windows installers and Linux tarballs for the server and the IDA Pro plug-in; a nightly-action pre-release from 2023-02-27 attaches Windows builds only. The reviewed master2.x commit of the same date is the default branch's latest, and README says repositories and configuration files from versions before 2.0.0 are no longer supported.","The server needs a 64-bit Java 11 runtime (README asks for Oracle's) and, to disassemble uploaded binaries, an IDA Pro installation with IDAPython set in kam1n0.properties; the shipped configuration requests a 12 GB maximum JVM heap and serves the web interface on port 8571. The plug-in needs IDA Pro newer than 6.7 with IDAPython and the CEF Python wheels its installer bundles. Source also contains an undocumented Ghidra disassembly backend.","Users supply the binaries to index and query. The repository commits test and example binaries built from open-source code: zlib and libpng builds for several architectures and optimization levels, a Chromium DLL, and IDA databases for PuTTY and zlib. Windows installer sources commit the Microsoft .NET Framework 4.0 and Visual C++ x64 redistributable installers and CEF Python wheels, and the server resources commit JavaFX SDK 11.0.2 DLLs, a prebuilt LibVEX library (VEXIRBB.dll) and a local Maven repository holding a z3 jar.","Maven builds the Java 11 modules against those pre-compiled LibVEX and z3 binaries; README says LibVEX comes from angr's fork, and z3 is a submodule. The Maven tests drive Chrome through chromedriver and, per the README, take about three hours; CI only builds the Windows distribution and WiX installers. Accuracy and timing figures are taken from the README and the authors' KDD 2016 and IEEE S&P 2019 papers.","Apache-2.0 (LICENSE.txt), copyright McGill University and the researchers. Bundled runtimes, redistributable installers, wheels and test binaries keep their own licenses, and IDA Pro is separately licensed commercial software."],"requirements_zh":["审阅时最新稳定版本为 2.2.0，发布于 2020-11-15，提供服务端和 IDA Pro 插件的 Windows 安装程序及 Linux 压缩包；2023-02-27 的 nightly-action 预发布版只附带 Windows 构建。所审阅的 master2.x 提交日期相同，是默认分支的最新提交；README 称 2.0.0 之前版本的仓库和配置文件已不再支持。","服务端需要 64 位 Java 11 运行环境（README 要求 Oracle 版本）；若要反汇编上传的二进制，还需在 kam1n0.properties 中配置装有 IDAPython 的 IDA Pro。随附配置把 JVM 最大堆设为 12 GB，网页界面使用 8571 端口。插件需要高于 6.7 版、装有 IDAPython 的 IDA Pro，以及其安装程序附带的 CEF Python wheel 包。源码中还有一个 README 未说明的 Ghidra 反汇编后端。","需由使用者提供要建立索引和查询的二进制。仓库提交了由开源代码构建的测试与示例二进制：多种架构和优化级别的 zlib、libpng 构建，一个 Chromium DLL，以及 PuTTY 和 zlib 的 IDA 数据库。Windows 安装程序源码目录提交了 Microsoft .NET Framework 4.0 与 Visual C++ x64 可再发行组件安装程序以及 CEF Python wheel 包；服务端资源目录提交了 JavaFX SDK 11.0.2 的 DLL、预编译的 LibVEX 库（VEXIRBB.dll），以及含 z3 jar 的本地 Maven 仓库。","Maven 依靠这些预编译的 LibVEX 与 z3 二进制构建各 Java 11 模块；README 称 LibVEX 来自 angr 的分支，z3 则以子模块引入。Maven 测试通过 chromedriver 驱动 Chrome，README 称全程约需三小时；CI 只构建 Windows 发行包和 WiX 安装程序。准确率与耗时数据来自 README 以及作者发表于 KDD 2016 和 IEEE S&P 2019 的论文。","采用 Apache-2.0（LICENSE.txt），版权归 McGill 大学及研究人员所有。随附的运行库、可再发行组件安装程序、wheel 包和测试二进制适用各自的许可证，IDA Pro 是需另行授权的商业软件。"],"targets":["binary"],"url":"https://github.com/McGill-DMaS/Kam1n0-Community","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/banteg/bn/blob/bd910329547303c787a68fcd8309e83ab1be6590/src/bn/assets/skills/bn/SKILL.md","https://github.com/banteg/bn/blob/bd910329547303c787a68fcd8309e83ab1be6590/src/bn/assets/plugin/bn_agent_bridge/bridge.py","https://github.com/banteg/bn/blob/bd910329547303c787a68fcd8309e83ab1be6590/src/bn/assets/plugin/bn_agent_bridge/server.py","https://github.com/banteg/bn/blob/bd910329547303c787a68fcd8309e83ab1be6590/src/bn/paths.py","https://github.com/banteg/bn/blob/bd910329547303c787a68fcd8309e83ab1be6590/pyproject.toml","https://github.com/banteg/bn/blob/bd910329547303c787a68fcd8309e83ab1be6590/CHANGELOG.md","https://github.com/banteg/bn/blob/bd910329547303c787a68fcd8309e83ab1be6590/.github/workflows/ci.yml","https://github.com/banteg/bn/blob/bd910329547303c787a68fcd8309e83ab1be6590/tests/test_bridge.py","https://github.com/banteg/bn/blob/bd910329547303c787a68fcd8309e83ab1be6590/LICENSE","https://github.com/banteg/bn/releases/tag/v0.15.0","https://pypi.org/project/bn-cli/0.15.0/"],"category":"agent-workflows","description_en":"Agent-oriented command-line interface for the Binary Ninja database already open in the GUI, reached through a companion plugin that listens on a local Unix-domain socket. Agents read decompilation, IL, disassembly, cross-references, callsites, types and data, export multi-function bundles and run unrestricted Python inside Binary Ninja; renames and prototype, structure and type edits can be previewed, are verified after they apply and roll back on failure. Large text output spills to hashed artifact files, and a packaged Codex skill describes the workflow.","description_zh":"面向智能体的命令行工具，用于操作已在 Binary Ninja 图形界面中打开的数据库，通过监听本地 Unix 域套接字的配套插件连接。智能体可读取反编译结果、中间语言、反汇编、交叉引用、调用点、类型和数据，导出多函数打包结果，并在 Binary Ninja 内运行不受限制的 Python；重命名以及函数原型、结构体和类型修改可先预览，应用后会校验结果，失败时回滚。较大的文本输出会转存为附带哈希的产物文件，随包提供的 Codex 技能说明了使用流程。","entry_url":"https://awesomerea.org/resources/bn-binary-ninja-agent-cli/","entry_url_zh":"https://awesomerea.org/zh/resources/bn-binary-ninja-agent-cli/","evidence_url":"https://github.com/banteg/bn/blob/bd910329547303c787a68fcd8309e83ab1be6590/README.md","group":"agents","id":"bn-binary-ninja-agent-cli","json_url":"https://awesomerea.org/resources/bn-binary-ninja-agent-cli/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/bn-binary-ninja-agent-cli/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bn-binary-ninja-agent-cli/index.md","name":"bn","name_zh":"bn：面向智能体的 Binary Ninja 命令行工具","record_type":"resource","relationship":"independent-agent-integration","requirements":["Latest release at review: v0.15.0, published on GitHub and PyPI as bn-cli on 2026-09-04; the reviewed master commit is that tag and the repository's last push. It needs Python 3.12+ and installs as a uv tool; bn plugin install links the BN Agent Bridge plugin into Binary Ninja, and bn skill install links the skill into the skills folder of the Codex home directory. The CLI and the loaded plugin must share bridge protocol 2, so Binary Ninja is restarted or its plugins reloaded after upgrades.","Work happens against a database open in the Binary Ninja GUI; the README says the companion works with a personal license and needs no headless license. The bridge socket lives in the user's cache directory, and the README names no supported operating systems or Binary Ninja versions. With several views open, commands need an explicit --target selector instead of silently using the active tab.","The analyst supplies the binary and database; the repository holds no target binaries. bn py runs unrestricted Python with the user's privileges inside Binary Ninja, and its writes bypass the preview, verification and rollback of built-in mutations; the reviewed bridge code adds no authentication beyond access to the socket path. Whole-database text and constant searches stop after a default five-second analysis budget and report incomplete results.","CI runs pytest on Python 3.12 and 3.14 against a stub binaryninja module, checks release metadata and smoke-tests plugin and skill installation from the built wheel, so no real Binary Ninja instance is exercised. Mutations report verified, noop, unsupported or verification_failed, and the README notes that decompiled output can stay stale after type changes until types are read back or analysis is refreshed.","MIT, added to the repository in v0.14.1; Binary Ninja keeps its own license terms."],"requirements_zh":["审阅时最新版本为 v0.15.0，于 2026-09-04 在 GitHub 和 PyPI（包名 bn-cli）发布；所审阅的 master 提交即该标签，也是仓库最近一次推送。需要 Python 3.12+，以 uv 工具方式安装；bn plugin install 将 BN Agent Bridge 插件链接到 Binary Ninja，bn skill install 将技能链接到 Codex 主目录下的 skills 文件夹。命令行工具与已加载的插件须使用相同的桥接协议版本 2，因此升级后需重启 Binary Ninja 或重新加载插件。","操作对象是在 Binary Ninja 图形界面中打开的数据库；README 称配套插件可配合个人许可证使用，无需无界面许可证。桥接套接字位于用户缓存目录，README 未列出支持的操作系统或 Binary Ninja 版本。同时打开多个视图时，命令需显式指定 --target 选择器，而不会默认使用当前标签页。","二进制文件和数据库由分析者自行提供，仓库中没有目标二进制。bn py 以用户权限在 Binary Ninja 内运行不受限制的 Python，其写入不经过内置修改操作的预览、校验和回滚；所审阅的桥接代码除套接字路径的访问权限外未设其他身份验证。全库文本和常量搜索默认在五秒分析预算后停止，并报告结果不完整。","CI 在 Python 3.12 和 3.14 上针对模拟的 binaryninja 模块运行 pytest，检查发布元数据，并用构建出的 wheel 冒烟测试插件与技能安装，因此并未在真实的 Binary Ninja 中运行。修改操作返回 verified、noop、unsupported 或 verification_failed；README 提示类型修改后反编译显示可能仍是旧内容，需回读类型或刷新分析。","采用 MIT 许可，v0.14.1 起加入仓库；Binary Ninja 保留自身的许可条款。"],"targets":["binary"],"url":"https://github.com/banteg/bn","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/quarkslab/titanm/blob/7b6c2524600185a819b3f7b0113f258bcf0ff36a/citadelimgloader/README.md","https://github.com/quarkslab/titanm/blob/7b6c2524600185a819b3f7b0113f258bcf0ff36a/nugget_toolkit/README.md","https://github.com/quarkslab/titanm/blob/7b6c2524600185a819b3f7b0113f258bcf0ff36a/nugget_toolkit/fuzzer/README.md","https://github.com/quarkslab/titanm/blob/7b6c2524600185a819b3f7b0113f258bcf0ff36a/nugget_toolkit/Dockerfile","https://github.com/quarkslab/titanm/blob/7b6c2524600185a819b3f7b0113f258bcf0ff36a/bin2rec/Readme.md","https://github.com/quarkslab/titanm/blob/7b6c2524600185a819b3f7b0113f258bcf0ff36a/.gitmodules","https://github.com/quarkslab/titanm/blob/7b6c2524600185a819b3f7b0113f258bcf0ff36a/BHEU_2021/EU-21-Rossi_Bellom-2021_A_Titan_M_Odyssey-wp.pdf","https://github.com/quarkslab/titanm/blob/7b6c2524600185a819b3f7b0113f258bcf0ff36a/ROOTS/DamianoMelotti_ReversingAndFuzzingTheGoogleTitanMChip_paper.pdf","https://github.com/quarkslab/titanm/blob/7b6c2524600185a819b3f7b0113f258bcf0ff36a/BHUSA_2022/Titan_BHUSA.pdf","https://github.com/quarkslab/titanm/blob/7b6c2524600185a819b3f7b0113f258bcf0ff36a/LICENSE"],"category":"firmware","description_en":"Tools Quarkslab published from its research on Google's Titan M security chip in Pixel phones: a Ghidra loader for Titan M (Citadel) firmware files, nosclient for tracing and sending the chip's protobuf-based commands from Android with a black-box fuzzer built on libprotobuf-mutator, a parser for sigrok SPI captures, and scripts that convert firmware images to the rec files of the chip's SPI rescue feature. The repository also holds the Black Hat Europe 2021 white paper and slides, the ROOTS'21 paper and the Black Hat USA 2022 slides, which describe reverse engineering the firmware, sniffing its SPI communication with the application processor, and black-box and emulation-based fuzzing; the authors say the vulnerabilities they found were disclosed to Google.","description_zh":"Quarkslab 发布的 Google Pixel 手机 Titan M 安全芯片研究工具：包括用于 Titan M（Citadel）固件文件的 Ghidra 加载器；可在 Android 上跟踪并发送芯片基于 protobuf 的命令的 nosclient，内含基于 libprotobuf-mutator 的黑盒模糊测试器；sigrok SPI 抓包解析器；以及把固件镜像转换为芯片 SPI rescue 功能所用 rec 文件的脚本。仓库还收录 Black Hat Europe 2021 白皮书与幻灯片、ROOTS'21 论文和 Black Hat USA 2022 幻灯片，介绍固件逆向、嗅探芯片与应用处理器之间的 SPI 通信，以及黑盒与基于仿真的模糊测试；作者称所发现的漏洞均已向 Google 披露。","entry_url":"https://awesomerea.org/resources/quarkslab-titanm-tools/","entry_url_zh":"https://awesomerea.org/zh/resources/quarkslab-titanm-tools/","evidence_url":"https://github.com/quarkslab/titanm/blob/7b6c2524600185a819b3f7b0113f258bcf0ff36a/README.md","group":"tools","id":"quarkslab-titanm-tools","json_url":"https://awesomerea.org/resources/quarkslab-titanm-tools/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/quarkslab-titanm-tools/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/quarkslab-titanm-tools/index.md","name":"Titan M tools (Quarkslab)","name_zh":"Quarkslab Titan M 安全芯片研究工具","record_type":"resource","relationship":"foundation","requirements":["A research release with no tags or packages: the last commit, on 2022-08-22, added the Black Hat USA 2022 slides two days after nosclient was updated for that talk. The emulation-based fuzzer those slides describe is not in the repository, and no Titan M firmware images, Boot ROM dumps or keys are committed.","Firmware files must come from the analyst's own Pixel device; the white paper notes that Titan M first shipped with the Pixel 3. Sending commands with nosclient needs root access on the device, as the white paper explains, and the SPI parser expects a sigrok CSV export of the analyst's own capture.","citadelimgloader builds with Gradle against a local Ghidra installation named by GHIDRA_INSTALL_DIR; no supported Ghidra version is stated. nosclient builds with CMake for Linux, for Android arm64 with the NDK, or in the provided Debian 10 Docker image with NDK r21e, after the libnos (AOSP), protobuf, libprotobuf-mutator and sqlite submodules are initialized.","The ROOTS'21 paper reports that the black-box fuzzer rediscovered several known vulnerabilities within seconds and found a new one in the then-latest firmware; these are the authors' results on their own devices. The README says the toolkit also contains an exploit for a known vulnerability.","LICENSE is Apache-2.0. The fuzzer bundles a generated libradamsa.c without its own license notice, the client includes protobuf sources generated from the nugget/app message definitions and small KeyMint enum headers, and the presentation PDFs state no license."],"requirements_zh":["这是没有标签或软件包的研究发布：最后一次提交在 2022-08-22，添加了 Black Hat USA 2022 幻灯片，两天前 nosclient 已为该演讲更新。幻灯片介绍的基于仿真的模糊测试器不在仓库中，仓库也未提交任何 Titan M 固件镜像、Boot ROM 转储或密钥。","固件文件须来自分析者自己的 Pixel 设备；白皮书指出 Titan M 首次随 Pixel 3 推出。用 nosclient 发送命令需要设备的 root 权限，白皮书对此有说明；SPI 解析器读取的是分析者自行抓取的 sigrok CSV 导出文件。","citadelimgloader 使用 Gradle 针对由 GHIDRA_INSTALL_DIR 指定的本地 Ghidra 安装构建，未说明支持的 Ghidra 版本。nosclient 在初始化 libnos（AOSP）、protobuf、libprotobuf-mutator 和 sqlite 子模块后，可用 CMake 构建 Linux 版或借助 NDK 构建 Android arm64 版，也可使用随附的 Debian 10 Docker 镜像（NDK r21e）构建。","ROOTS'21 论文报告，黑盒模糊测试器在数秒内重新发现了多个已知漏洞，并在当时最新的固件中发现一个新漏洞；这些是作者在自有设备上得到的结果。README 称该工具集还包含针对一个已知漏洞的利用代码。","LICENSE 为 Apache-2.0。模糊测试器附带一个生成的 libradamsa.c，文件内没有单独的许可声明；客户端包含由 nugget/app 消息定义生成的 protobuf 源码和少量 KeyMint 枚举头文件；演讲 PDF 未说明许可。"],"targets":["firmware","protocol"],"url":"https://github.com/quarkslab/titanm","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/Soulghost/iblessing/blob/ff14351de3f3c2155e8df47c26d4367523af7628/compile-cmake.command","https://github.com/Soulghost/iblessing/blob/ff14351de3f3c2155e8df47c26d4367523af7628/.gitmodules","https://github.com/Soulghost/iblessing/blob/ff14351de3f3c2155e8df47c26d4367523af7628/iblessing/CMakeLists.txt","https://github.com/Soulghost/iblessing/blob/ff14351de3f3c2155e8df47c26d4367523af7628/.github/workflows/c-cpp.yml","https://github.com/Soulghost/iblessing/blob/ff14351de3f3c2155e8df47c26d4367523af7628/run-test.command","https://github.com/Soulghost/iblessing/blob/ff14351de3f3c2155e8df47c26d4367523af7628/.travis.yml","https://github.com/Soulghost/iblessing/tree/ff14351de3f3c2155e8df47c26d4367523af7628/iblessing/iblessing/tests","https://github.com/Soulghost/iblessing/blob/ff14351de3f3c2155e8df47c26d4367523af7628/LICENSE","https://github.com/Soulghost/iblessing/releases/tag/v1.0.4-beta"],"category":"native-analysis","description_en":"Toolkit for analyzing iOS apps and arm64 Mach-O binaries, built on Capstone, Unicorn and Keystone. Its scanners extract app-bundle metadata such as URL schemes and transport-security settings, locate Objective-C class references and NSPredicate uses, detect symbol wrappers, and partially emulate arm64 code with Unicorn to recover objc_msgSend cross-references, including those passed through blocks. Generators turn the reports into IDA Pro scripts that add cross-references and rename wrappers, or into a local query server, and a shared core library with a plug-in interface supports custom tools.","description_zh":"用于分析 iOS 应用和 arm64 Mach-O 二进制的工具集，基于 Capstone、Unicorn 与 Keystone 构建。其扫描器可提取应用包元数据（如 URL Scheme 和传输安全设置），定位 Objective-C 类引用和 NSPredicate 用法，识别符号包装函数，并借助 Unicorn 部分模拟 arm64 代码以恢复 objc_msgSend 交叉引用，包括经由 block 传递的调用。生成器可把扫描报告转成 IDA Pro 脚本，用于添加交叉引用和重命名包装函数，也可启动本地查询服务；共享核心库及插件接口可用于开发自定义工具。","entry_url":"https://awesomerea.org/resources/iblessing/","entry_url_zh":"https://awesomerea.org/zh/resources/iblessing/","evidence_url":"https://github.com/Soulghost/iblessing/blob/ff14351de3f3c2155e8df47c26d4367523af7628/README.md","group":"tools","id":"iblessing","json_url":"https://awesomerea.org/resources/iblessing/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/iblessing/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/iblessing/index.md","name":"iblessing","name_zh":"iblessing iOS 应用与 Mach-O 分析工具集","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v1.0.4-beta, published 2021-11-26 and tagged at the reviewed master commit; every release is marked as a pre-release. Each recent release attaches macOS and Linux command-line and all-in-one binaries, framework archives with the shared core library and headers, and a JSON table of Foundation and UIKit method signatures. The README's feature list leaves Swift class parsing, following branches and calls, and Android scanners unfinished.","Users supply an iOS .app bundle for app-info or an arm64 Mach-O binary for the other scanners; README examples analyze commercial third-party apps after restoring symbols with a separate tool, but no app binaries are committed. The class and objc_msgSend cross-reference scanners accept arm64 binaries only, and app-info is unavailable on Linux because it still depends on Cocoa. The README warns that binary scanners reserve 12 GB of virtual memory per Mach-O file, so physical memory or swap must cover that.","Builds on macOS or Linux with CMake 3.5+ and a C++17 compiler after a recursive clone; compile-cmake.sh first builds the pinned Capstone, Unicorn (arm, aarch64 and x86) and Keystone submodules as static libraries. An Xcode project is also included. IDA Pro is needed only to apply the generated scripts.","GitHub Actions builds on Ubuntu and macOS and, on macOS only, scans the bundled sample-app benchmark and runs the built-in objc_msgSend cross-reference test; Travis CI builds and publishes tagged releases. The README notes that objc-msg-xref follows no calls to save time, so its results are partly missing.","GPL-3.0 (LICENSE). The project calls itself an iOS security exploiting toolkit. Analyzed apps and Apple frameworks keep their own terms, and the Capstone, Unicorn and Keystone submodules carry their own licenses."],"requirements_zh":["审阅时最新版本为 v1.0.4-beta，发布于 2021-11-26，标签正对应所审阅的 master 提交；所有版本均标为预发布。近期各版本附带 macOS 与 Linux 的命令行程序和一体化构建、含共享核心库及头文件的框架压缩包，以及一份 Foundation 与 UIKit 方法签名的 JSON 表。README 功能列表中，Swift 类解析、跟随分支与调用以及 Android 扫描器仍未完成。","app-info 扫描器需要使用者提供 iOS .app 应用包，其他扫描器需要 arm64 Mach-O 二进制；README 示例先用另一个工具恢复符号，再分析商业第三方应用，但仓库未提交任何应用二进制。类引用和 objc_msgSend 交叉引用扫描器只接受 arm64 二进制，app-info 仍依赖 Cocoa，因此无法在 Linux 上使用。README 提醒，二进制扫描器加载每个 Mach-O 文件都会预留 12 GB 虚拟内存，物理内存或交换空间须足以容纳。","递归克隆后可在 macOS 或 Linux 上用 CMake 3.5+ 和 C++17 编译器构建；compile-cmake.sh 会先把固定版本的 Capstone、Unicorn（arm、aarch64 和 x86）和 Keystone 子模块编译为静态库。仓库还附带 Xcode 工程。只有应用生成的脚本时才需要 IDA Pro。","GitHub Actions 在 Ubuntu 和 macOS 上构建，并仅在 macOS 上扫描随附的示例应用基准文件、运行内置的 objc_msgSend 交叉引用测试；Travis CI 负责构建并发布带标签的版本。README 说明 objc-msg-xref 为提高速度不跟随任何调用，因此结果会有部分缺失。","采用 GPL-3.0（LICENSE）。项目自称 iOS 安全漏洞利用工具集。被分析的应用和 Apple 框架适用各自条款，Capstone、Unicorn 与 Keystone 子模块也有各自的许可证。"],"targets":["app","binary"],"url":"https://github.com/Soulghost/iblessing","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/pedro-javierf/NTRGhidra/blob/9e0674c0b36ef9b816dbe7833a68b17327edc1b9/src/main/java/ntrghidra/NTRGhidraLoader.java","https://github.com/pedro-javierf/NTRGhidra/blob/9e0674c0b36ef9b816dbe7833a68b17327edc1b9/src/main/java/ntrghidra/plugin/NTRGhidraPlugin.java","https://github.com/pedro-javierf/NTRGhidra/blob/9e0674c0b36ef9b816dbe7833a68b17327edc1b9/src/main/java/ntrghidra/ARM9.java","https://github.com/pedro-javierf/NTRGhidra/blob/9e0674c0b36ef9b816dbe7833a68b17327edc1b9/fidb/README.md","https://github.com/pedro-javierf/NTRGhidra/blob/9e0674c0b36ef9b816dbe7833a68b17327edc1b9/build.gradle","https://github.com/pedro-javierf/NTRGhidra/blob/9e0674c0b36ef9b816dbe7833a68b17327edc1b9/.github/workflows/build_ntrghidra.yml","https://github.com/pedro-javierf/NTRGhidra/blob/9e0674c0b36ef9b816dbe7833a68b17327edc1b9/LICENSE","https://github.com/pedro-javierf/NTRGhidra/releases/tag/v1.5.1"],"category":"game-analysis","description_en":"Ghidra loader and plugin for Nintendo DS programs. It checks the .nds header, maps either the ARM9 or the ARM7 binary at its RAM address together with the console's memory regions and I/O register labels, decompresses SDK-compressed ARM9 code and overlays, and fills the overlays the user selects at import, while an optional overlay-manager plugin swaps overlays in and out afterwards. The repository also keeps a small Ghidra Function ID database of NitroSDK 3.0 routines for function identification.","description_zh":"面向 Nintendo DS 程序的 Ghidra 加载器与插件。它校验 .nds 文件头，把 ARM9 或 ARM7 二进制映射到其内存地址，并建立主机的内存区域和 I/O 寄存器标签；经 SDK 压缩的 ARM9 代码和覆盖模块（overlay）会被解压，导入时用户选中的覆盖模块会载入内容，可选的覆盖模块管理插件还能在导入后切换各覆盖模块。仓库另附一个小型 Ghidra Function ID 数据库，收录 NitroSDK 3.0 例程，用于识别函数。","entry_url":"https://awesomerea.org/resources/ntrghidra/","entry_url_zh":"https://awesomerea.org/zh/resources/ntrghidra/","evidence_url":"https://github.com/pedro-javierf/NTRGhidra/blob/9e0674c0b36ef9b816dbe7833a68b17327edc1b9/README.md","group":"tools","id":"ntrghidra","json_url":"https://awesomerea.org/resources/ntrghidra/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ntrghidra/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ntrghidra/index.md","name":"NTRGhidra","name_zh":"NTRGhidra Nintendo DS 程序 Ghidra 加载器","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v1.5.1, published 2026-03-24 as NTRGhidra-build.zip for Ghidra 12.0.4, and its tag is the reviewed master commit; earlier releases were built for individual Ghidra 10.x and 11.x versions, and the README names 12.0.4 as the latest supported Ghidra version. The zip installs from the Ghidra project window's File → Install Extensions, and the overlay manager is enabled separately under CodeBrowser's File → Configure → Miscellaneous. The README says the project is looking for maintainers and contributors.","Source builds need a Ghidra installation: build.gradle applies Ghidra's buildExtension.gradle from GHIDRA_INSTALL_DIR, the README describes an Eclipse build with the GhidraDev extension, and a GitHub Actions workflow builds the zip with Gradle on every push and attaches it to new releases. The repository has no tests; src/test holds only a placeholder README.","Input is a .nds file the user supplies; the repository contains no ROMs or BIOS files. On import the loader rejects files whose header CRC does not match, asks whether the file is a commercial Nintendo SDK title or homebrew, and asks whether to load the ARM9 or the ARM7 code; commercial titles must carry the expected Nintendo logo CRC and have their ARM9 binary decompressed. The overlay manager re-reads overlays only from the original file at its import path, or from a substitute whose MD5 and SHA-256 match it.","The fidb folder holds nitrosdk3.0.fidb, a 2 KB Function ID database that its README describes as hashes of NitroSDK 3.0.0 functions from commercial games, covering crt0 and file-system routines in ARM code but not Thumb; the loader does not apply it automatically. The loader names its format Nintendo DS (NTR) and DSi (TWL), and the source carries DSi register and memory-region lists, but import maps only the DS ARM9 and ARM7 lists, and CRT0 autoload handling is marked as a TODO.","Apache-2.0. The README credits GBATEK for DS technical information and Gericom's Every File Explorer for the original header and ARM9 decompression code."],"requirements_zh":["审阅时最新版本为 v1.5.1，于 2026-03-24 以 NTRGhidra-build.zip 形式发布，适用于 Ghidra 12.0.4，其标签即所审阅的 master 提交；更早的版本分别针对各个 Ghidra 10.x 和 11.x 版本构建，README 写明当前支持的最新 Ghidra 版本为 12.0.4。该 zip 需在 Ghidra 项目窗口的 File → Install Extensions 中安装，覆盖模块管理器则需另在 CodeBrowser 的 File → Configure → Miscellaneous 中启用。README 称项目正在寻找维护者和贡献者。","从源码构建需要已安装的 Ghidra：build.gradle 会从 GHIDRA_INSTALL_DIR 引入 Ghidra 的 buildExtension.gradle，README 介绍的是借助 GhidraDev 扩展在 Eclipse 中构建，GitHub Actions 工作流则在每次推送时用 Gradle 构建 zip，并在创建新版本时附加到发布页。仓库没有测试，src/test 中只有一份占位 README。","输入为使用者自行提供的 .nds 文件；仓库不含任何 ROM 或 BIOS 文件。导入时，加载器会拒绝文件头 CRC 不符的文件，并询问该文件是使用任天堂 SDK 的商业游戏还是自制程序，以及要载入 ARM9 还是 ARM7 代码；商业游戏须带有预期的任天堂标志 CRC，其 ARM9 二进制会被解压。覆盖模块管理器只会从导入时路径上的原始文件，或 MD5 与 SHA-256 均与之一致的替代文件中重新读取覆盖模块。","fidb 文件夹中的 nitrosdk3.0.fidb 是一个 2 KB 的 Function ID 数据库，其 README 称收录的是商业游戏中 NitroSDK 3.0.0 函数的哈希，涵盖 ARM 代码中的 crt0 和文件系统例程，尚不支持 Thumb；加载器不会自动应用它。加载器将支持的格式命名为 Nintendo DS（NTR）和 DSi（TWL），源码中也有 DSi 寄存器和内存区域列表，但导入时只映射 DS 的 ARM9 和 ARM7 列表，CRT0 自动加载（autoload）处理也标为待办。","采用 Apache-2.0 许可。README 致谢 GBATEK 提供的 DS 技术资料，以及 Gericom 的 Every File Explorer 提供最初的文件头与 ARM9 解压代码。"],"targets":["game"],"url":"https://github.com/pedro-javierf/NTRGhidra","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/aaronsb/bosectl/blob/70570b29c1d3c9ba775b08a29eaea72385de27b5/NOTES.md","https://github.com/aaronsb/bosectl/blob/70570b29c1d3c9ba775b08a29eaea72385de27b5/docs/architecture.md","https://github.com/aaronsb/bosectl/blob/70570b29c1d3c9ba775b08a29eaea72385de27b5/docs/quietcomfort-headphones-prince.md","https://github.com/aaronsb/bosectl/tree/70570b29c1d3c9ba775b08a29eaea72385de27b5/captures","https://github.com/aaronsb/bosectl/blob/70570b29c1d3c9ba775b08a29eaea72385de27b5/bmap-capture.py","https://github.com/aaronsb/bosectl/blob/70570b29c1d3c9ba775b08a29eaea72385de27b5/fixtures/README.md","https://github.com/aaronsb/bosectl/blob/70570b29c1d3c9ba775b08a29eaea72385de27b5/python/pyproject.toml","https://github.com/aaronsb/bosectl/blob/70570b29c1d3c9ba775b08a29eaea72385de27b5/rust/README.md","https://github.com/aaronsb/bosectl/blob/70570b29c1d3c9ba775b08a29eaea72385de27b5/cpp/CMakeLists.txt","https://github.com/aaronsb/bosectl/blob/70570b29c1d3c9ba775b08a29eaea72385de27b5/python/tests/test_integration.py","https://github.com/aaronsb/bosectl/blob/70570b29c1d3c9ba775b08a29eaea72385de27b5/.github/workflows/test.yml","https://github.com/aaronsb/bosectl/blob/70570b29c1d3c9ba775b08a29eaea72385de27b5/LICENSE","https://github.com/aaronsb/bosectl/releases/tag/v0.5.0","https://crates.io/crates/bose-bmap/0.5.0"],"category":"reconstruction-cases","description_en":"Controls Bose headphones from Linux and macOS without the Bose app, account or cloud, through Python, Rust and C++ libraries and command-line tools that implement Bose’s BMAP protocol over Bluetooth RFCOMM. The author documents BMAP’s function blocks, operators, payload layouts and error codes in NOTES.md, reportedly worked out by probing RFCOMM channels, capturing Bluetooth traffic while changing settings in the Bose app and testing each operator, and the libraries cover noise cancellation, EQ, spatial audio, button remapping, profiles and device settings. Support is reported per model by the author and contributors.","description_zh":"无需 Bose 应用、账号或云服务，即可在 Linux 和 macOS 上控制 Bose 耳机：项目提供 Python、Rust 和 C++ 库及命令行工具，在蓝牙 RFCOMM 上实现 Bose 的 BMAP 协议。作者在 NOTES.md 中记录了 BMAP 的功能块、操作符、载荷布局和错误码，据称是通过探测 RFCOMM 通道、在 Bose 应用中更改设置时抓取蓝牙通信并逐一测试各操作符得出的；这些库涵盖降噪、均衡器、空间音频、按键重映射、配置档和设备设置。各型号的支持情况由作者和贡献者报告。","entry_url":"https://awesomerea.org/resources/bosectl-bose-bmap-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/bosectl-bose-bmap-protocol-case/","evidence_url":"https://github.com/aaronsb/bosectl/blob/70570b29c1d3c9ba775b08a29eaea72385de27b5/README.md","group":"cases","id":"bosectl-bose-bmap-protocol-case","json_url":"https://awesomerea.org/resources/bosectl-bose-bmap-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/bosectl-bose-bmap-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bosectl-bose-bmap-protocol-case/index.md","name":"bosectl: reconstructing Bose’s BMAP headphone protocol","name_zh":"bosectl：重建 Bose BMAP 耳机协议","record_type":"resource","relationship":"independent-reconstruction","requirements":["The reviewed commit is the v0.5.0 release of 2026-09-28, which ships Linux x86_64 bmapctl binaries built from the Rust and C++ code with SHA256SUMS; the Rust crate is also on crates.io as bose-bmap 0.5.0, while the Python package installs from the repository through its install scripts or pipx. The README’s device table marks six models, led by the QC Ultra Headphones 2, as verified to differing extents and the Ultra Open Earbuds as partial from a device report; other cataloged BMAP products are recognized by product ID but have no tested configuration.","Needs the user’s own paired Bose headphones and a Bluetooth adapter: BlueZ on Linux, or macOS 10.15+, where the Python library uses PyObjC’s IOBluetooth bindings. The Rust crate is Linux-only, and C++ builds on Linux need CMake, a C++17 compiler and the BlueZ development headers. No Bose software or files are needed at runtime.","README reports probing RFCOMM channels, capturing Bluetooth HCI traffic while toggling settings in the Bose app and testing operators on each function block, and NOTES.md cites class names from the Bose Android app. The app, decompiled code and raw HCI or network captures are not in the repository: captures/ holds eight before-and-after setting snapshots from bmap-capture.py with the MAC address, serial number and other identifiers partly masked, and fixtures/ holds a packet used by the tests.","README says the project uses only BMAP operations the headphones accept without authentication, and that no keys are extracted, no encryption is broken and no traffic is replayed; writes that the app performs after cloud-mediated authentication stay out of reach. USB control is not implemented, and NOTES.md treats the USB interface as being for firmware updates.","CI runs the Python, Rust and C++ test targets on Ubuntu and macOS without headphones; integration tests that need a paired device run only when enabled. MIT license."],"requirements_zh":["所审阅的提交即 2026-09-28 发布的 v0.5.0 版本，该版本提供由 Rust 和 C++ 代码构建的 Linux x86_64 bmapctl 二进制，并附 SHA256SUMS；Rust crate 也以 bose-bmap 0.5.0 发布在 crates.io 上，Python 软件包则需从仓库通过安装脚本或 pipx 安装。README 的设备表将以 QC Ultra Headphones 2 为首的六个型号标为不同程度地已验证，Ultra Open Earbuds 则依据一份设备报告标为部分支持；设备目录中的其他 BMAP 产品虽能按产品 ID 识别，但没有经过测试的配置。","需要使用者自己已配对的 Bose 耳机和蓝牙适配器：Linux 上使用 BlueZ；macOS 需 10.15+，Python 库通过 PyObjC 的 IOBluetooth 绑定访问蓝牙。Rust crate 仅支持 Linux，在 Linux 上构建 C++ 版本需要 CMake、C++17 编译器和 BlueZ 开发头文件。运行时无需任何 Bose 软件或文件。","README 报告的方法包括探测 RFCOMM 通道、在 Bose 应用中切换设置时抓取蓝牙 HCI 通信，以及在各功能块上逐一测试操作符；NOTES.md 还引用了 Bose Android 应用中的类名。仓库中没有该应用、反编译代码或原始 HCI／网络抓包：captures/ 中是 bmap-capture.py 记录的八份设置变更前后快照，其中 MAC 地址、序列号等标识已部分遮盖；fixtures/ 中有一份供测试使用的数据包。","README 称项目只使用耳机无需认证即可接受的 BMAP 操作，不提取密钥、不破解加密，也不重放通信；应用须经云端认证后才能执行的写入操作仍无法使用。尚未实现 USB 控制，NOTES.md 认为 USB 接口用于固件更新。","CI 在 Ubuntu 和 macOS 上运行 Python、Rust 和 C++ 的测试目标，无需连接耳机；需要已配对设备的集成测试只有在启用时才会运行。采用 MIT 许可。"],"targets":["protocol"],"url":"https://github.com/aaronsb/bosectl","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/mattcurrie/mgbdis/blob/95d951a9881a0d7ff1a42a94d1be175da92b1777/README.md#L35-L45","https://github.com/mattcurrie/mgbdis/blob/95d951a9881a0d7ff1a42a94d1be175da92b1777/mgbdis.py#L1314-L1331","https://github.com/mattcurrie/mgbdis/blob/95d951a9881a0d7ff1a42a94d1be175da92b1777/mgbdis.py#L1235-L1261","https://github.com/mattcurrie/mgbdis/blob/95d951a9881a0d7ff1a42a94d1be175da92b1777/test/Makefile","https://github.com/mattcurrie/mgbdis/blob/95d951a9881a0d7ff1a42a94d1be175da92b1777/.github/workflows/test.yml","https://github.com/mattcurrie/mgbdis/tree/95d951a9881a0d7ff1a42a94d1be175da92b1777/test","https://github.com/mattcurrie/mgbdis/blob/95d951a9881a0d7ff1a42a94d1be175da92b1777/LICENSE","https://github.com/mattcurrie/mgbdis/releases/tag/v3.0"],"category":"game-analysis","description_en":"Python disassembler that turns a Game Boy or Game Boy Color ROM, including multi-bank ROMs, into RGBDS-compatible assembly plus a Makefile that reassembles it, so the rebuilt ROM can be compared with the input. An optional .sym file beside the ROM supplies labels and marks code, data, text, padding and 1bpp/2bpp tile-image blocks; images are written as PNG files that rgbgfx converts back, text can use custom character maps, and hardware registers get hardware.inc names. The README explains that SM83 instructions vary in length and data is interleaved with code, so marked code blocks keep it from disassembling mid-instruction.","description_zh":"用 Python 编写的反汇编器，可把 Game Boy 或 Game Boy Color ROM（包括多存储体 ROM）转换为与 RGBDS 兼容的汇编代码，并生成用于重新汇编的 Makefile，以便将重建出的 ROM 与输入文件比对。ROM 旁可放置同名 .sym 文件，用来提供标签，并标出代码、数据、文本、填充以及 1bpp/2bpp 图块图像区段；图像会输出为 PNG，再由 rgbgfx 转换回去，文本可使用自定义字符映射，硬件寄存器则采用 hardware.inc 中的名称。README 解释说，SM83 指令长度不一，且数据与代码交错存放，因此需要标出代码区段，避免从指令中间开始反汇编。","entry_url":"https://awesomerea.org/resources/mgbdis/","entry_url_zh":"https://awesomerea.org/zh/resources/mgbdis/","evidence_url":"https://github.com/mattcurrie/mgbdis/blob/95d951a9881a0d7ff1a42a94d1be175da92b1777/README.md","group":"tools","id":"mgbdis","json_url":"https://awesomerea.org/resources/mgbdis/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/mgbdis/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mgbdis/index.md","name":"mgbdis","name_zh":"mgbdis Game Boy ROM 反汇编器","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v3.0, published 2025-04-22; the reviewed master commit of 2026-07-31 is 15 commits ahead of that tag and still reports version 3.0. It is a single Python script that needs Python 3.6+, and the generated assembly targets RGBDS v0.8.0 or later, whose rgbasm, rgblink, rgbfix and rgbgfx the generated Makefile calls. Options control hexadecimal case, indentation, operand alignment and mnemonic variants, and a --tiny mode handles unbanked 32 KiB ROMs.","The input is a ROM file the user supplies, optionally with a same-named .sym file; the repository ships no game ROMs. It bundles PyPNG's png.py and a copy of gbdev's hardware.inc, and its only test ROM is assembled during testing from the project's own assembly sources. The README suggests generating code-block symbol files with the author's separate Beaten Dying Moon emulator, which records the instructions actually executed.","GitHub Actions installs the latest RGBDS release, builds the test ROM, disassembles it, diffs the output against committed expected files, then reassembles the disassembly and compares it byte for byte with the test ROM. This checks the tool on its own fixture, not on commercial games. The README notes that RGBDS inserts a NOP after STOP, so a STOP not followed by NOP is emitted as a data byte, and calls the tool slow on large ROMs.","MIT license; png.py carries its own MIT notice. mgbdis produces assembly rather than C, and labels and block boundaries come from the analyst's symbol file."],"requirements_zh":["审阅时的最新发布版为 v3.0，发布于 2025-04-22；所审阅的 master 分支提交日期为 2026-07-31，比该标签多 15 个提交，版本号仍为 3.0。它是一个单独的 Python 脚本，需要 Python 3.6+；生成的汇编代码面向 RGBDS v0.8.0 或更高版本，生成的 Makefile 会调用其中的 rgbasm、rgblink、rgbfix 和 rgbgfx。命令行选项可控制十六进制大小写、缩进、操作数对齐和助记符写法，--tiny 模式用于不分存储体的 32 KiB ROM。","输入是使用者自备的 ROM 文件，可另附同名 .sym 文件；仓库不附带任何游戏 ROM。仓库内置 PyPNG 的 png.py 和 gbdev 的 hardware.inc 副本，唯一的测试 ROM 在测试时由项目自己的汇编源码构建而成。README 建议用作者另行开发的 Beaten Dying Moon 模拟器生成代码区段符号文件，该模拟器会记录实际执行过的指令。","GitHub Actions 会安装最新的 RGBDS 发布版，构建测试 ROM 并将其反汇编，把输出与仓库中提交的预期文件逐一比对，再重新汇编反汇编结果，与测试 ROM 逐字节比较。这只是在项目自带样本上检验工具，并未覆盖商业游戏。README 指出，RGBDS 会在 STOP 后自动插入 NOP，因此原 ROM 中后面不是 NOP 的 STOP 会输出为数据字节；README 还说明该工具处理大型 ROM 时速度较慢。","采用 MIT 许可；png.py 附有其自身的 MIT 声明。mgbdis 输出的是汇编代码而非 C 代码，标签和区段边界来自分析者编写的符号文件。"],"targets":["binary","game"],"url":"https://github.com/mattcurrie/mgbdis","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/DenuvoSoftwareSolutions/SiMBA/blob/228179970f5906ed763afb33fc8649de2846696e/src/simplify.py","https://github.com/DenuvoSoftwareSolutions/SiMBA/blob/228179970f5906ed763afb33fc8649de2846696e/src/simplify_dataset.py","https://github.com/DenuvoSoftwareSolutions/SiMBA/blob/228179970f5906ed763afb33fc8649de2846696e/src/check_linear_mba.py","https://github.com/DenuvoSoftwareSolutions/SiMBA/tree/228179970f5906ed763afb33fc8649de2846696e/data","https://github.com/DenuvoSoftwareSolutions/SiMBA/blob/228179970f5906ed763afb33fc8649de2846696e/paper/paper.pdf","https://github.com/DenuvoSoftwareSolutions/SiMBA/blob/228179970f5906ed763afb33fc8649de2846696e/LICENSE","https://arxiv.org/abs/2209.06335"],"category":"native-analysis","description_en":"Research tool from Denuvo that simplifies linear mixed Boolean-arithmetic (MBA) expressions, which combine bitwise and integer operations and are used in code obfuscation. Like MBA-Blast and MBA-Solver it works algebraically, using the fact that a linear MBA is fully determined by its values on inputs of zeros and ones: it evaluates the expression on every such combination and rewrites it as a linear combination of basic bitwise expressions, without first translating it to 1-bit space. Python scripts simplify single expressions or whole datasets, can check that an input is linear and can prove the result equivalent with Z3.","description_zh":"Denuvo 发布的研究工具，用于化简线性混合布尔-算术（MBA）表达式；这类表达式混合使用位运算和整数运算，常见于代码混淆。它与 MBA-Blast、MBA-Solver 一样采用纯代数方法，依据线性 MBA 完全由其在 0/1 输入上的取值决定这一性质：对所有 0/1 输入组合求值，再把表达式改写为基本位运算表达式的线性组合，而无需先转换到 1 位空间。所附 Python 脚本可化简单个表达式或整个数据集，可检查输入是否为线性 MBA，并可用 Z3 证明结果与原式等价。","entry_url":"https://awesomerea.org/resources/simba-mba-simplifier/","entry_url_zh":"https://awesomerea.org/zh/resources/simba-mba-simplifier/","evidence_url":"https://github.com/DenuvoSoftwareSolutions/SiMBA/blob/228179970f5906ed763afb33fc8649de2846696e/README.md","group":"tools","id":"simba-mba-simplifier","json_url":"https://awesomerea.org/resources/simba-mba-simplifier/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/simba-mba-simplifier/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/simba-mba-simplifier/index.md","name":"SiMBA","name_zh":"SiMBA 线性 MBA 表达式化简工具","record_type":"resource","relationship":"foundation","requirements":["Accompanies Benjamin Reichenwallner and Peter Meerwald-Stadler's paper at the CheckMATE 2022 workshop, co-located with ACM CCS 2022 (DOI 10.1145/3560831.3564256, arXiv 2209.06335); the repository also holds the paper PDF, slides and a talk video. The reviewed main commit dates from 2022-12-12, and there are no releases or packages: the scripts run directly from src/.","Needs Python 3; Z3's Python bindings are required by simplify_dataset.py and by the -z verification option of simplify.py. Input is expression text, or a file with one complex expression and its simpler equivalent per line, built from variables, constants and the operators ~, unary minus, *, +, -, &, ^ and |; the tool has no disassembler or decompiler integration. Output constants depend on the bit width, 64 by default and set with -b.","Only linear MBAs are handled: the optional -l check rejects nonlinear input such as products of variables, and the README warns that operator precedence follows Python, so parentheses are needed. Result refinement through lookup tables of bitwise expressions covers up to three variables; expressions with more variables keep the generic linear-combination form.","For reproducing part of the paper's experiments, data/ holds generated sets of 1,000 equivalent linear MBAs per target function with 2 to 4 variables, plus 5- and 6-variable sets for x+y; the README also mentions 7 variables, which are not in the tree. The datasets assume 64 bits, and simplify_dataset.py reports how many results Z3 verified or matched exactly and the average runtime. There is no test suite or CI.","GPL-3.0, copyright 2022 Denuvo GmbH."],"requirements_zh":["配套 Benjamin Reichenwallner 与 Peter Meerwald-Stadler 在 CheckMATE 2022 研讨会（与 ACM CCS 2022 同期举办）发表的论文（DOI 10.1145/3560831.3564256，arXiv 2209.06335）；仓库还收录论文 PDF、幻灯片和演讲录像。所审阅的 main 提交日期为 2022-12-12，没有发布版或软件包，脚本直接在 src/ 下运行。","需要 Python 3；simplify_dataset.py 以及 simplify.py 的 -z 验证选项需要 Z3 的 Python 绑定。输入为表达式文本，或每行包含一个复杂表达式及其较简等价式的文件，可使用变量、常量以及 ~、一元负号、*、+、-、&、^ 和 | 运算符；工具不集成反汇编器或反编译器。输出常量取决于位宽，默认 64 位，可用 -b 设置。","只处理线性 MBA：可选的 -l 检查会拒绝变量相乘等非线性输入；README 提醒运算符优先级遵循 Python 规则，必要时须加括号。借助位运算表达式查找表细化结果的步骤只适用于至多三个变量；变量更多时保留通用的线性组合形式。","为复现论文的部分实验，data/ 提供生成的数据集：每个目标函数各有 1,000 个含 2 至 4 个变量的等价线性 MBA，x+y 另有 5 个和 6 个变量的数据集；README 还提到 7 个变量的数据集，但仓库中没有。这些数据集以 64 位为前提；simplify_dataset.py 会报告经 Z3 验证或完全一致的结果数量及平均耗时。仓库没有测试套件或 CI。","采用 GPL-3.0 许可，版权归 Denuvo GmbH（2022）。"],"targets":["binary"],"url":"https://github.com/DenuvoSoftwareSolutions/SiMBA","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/kotcrab/ghidra-allegrex/blob/abcf97659260b11a9a4781ff72fff30ede2f073f/README.md#L73-L81","https://github.com/kotcrab/ghidra-allegrex/blob/abcf97659260b11a9a4781ff72fff30ede2f073f/CHANGES.md","https://github.com/kotcrab/ghidra-allegrex/blob/abcf97659260b11a9a4781ff72fff30ede2f073f/build.gradle","https://github.com/kotcrab/ghidra-allegrex/blob/abcf97659260b11a9a4781ff72fff30ede2f073f/.github/workflows/build.yml","https://github.com/kotcrab/ghidra-allegrex/tree/abcf97659260b11a9a4781ff72fff30ede2f073f/ghidra_scripts","https://github.com/kotcrab/ghidra-allegrex/blob/abcf97659260b11a9a4781ff72fff30ede2f073f/LICENSE","https://github.com/kotcrab/ghidra-allegrex/releases/tag/v21.5","https://github.com/kotcrab/ghidra-allegrex/releases/tag/v21.4","https://github.com/morluto/rea/blob/c12d9eda87aa5a022ee7e18ea96d8d03bfd12e96/docs/ghidra-psp.md#L28-L37"],"category":"game-analysis","description_en":"Ghidra processor module for the Allegrex CPU of the PlayStation Portable, derived from Ghidra's MIPS module. It adds Allegrex-specific instructions, VFPU disassembly and basic decompilation, the PSP calling convention, and an ELF loader that detects PSP executables and applies the PSP-specific type A and B relocation sections, with rebasing after import. Bundled scripts import and export PPSSPP .sym function-label files, and an exporter writes kernel modules as relocatable object files for linking.","description_zh":"面向 PlayStation Portable 所用 Allegrex CPU 的 Ghidra 处理器模块，由 Ghidra 的 MIPS 模块衍生而来。它补充了 Allegrex 特有指令、VFPU 指令的反汇编与基础反编译、PSP 调用约定，以及可识别 PSP 可执行文件的 ELF 加载器；加载器会处理 PSP 特有的 A 类和 B 类重定位节，并支持导入后重新设定基址。附带的脚本可导入和导出 PPSSPP 的 .sym 函数标签文件，另有导出器可把内核模块写成可供链接的可重定位目标文件。","entry_url":"https://awesomerea.org/resources/ghidra-allegrex/","entry_url_zh":"https://awesomerea.org/zh/resources/ghidra-allegrex/","evidence_url":"https://github.com/kotcrab/ghidra-allegrex/blob/abcf97659260b11a9a4781ff72fff30ede2f073f/README.md","group":"tools","id":"ghidra-allegrex","json_url":"https://awesomerea.org/resources/ghidra-allegrex/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ghidra-allegrex/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghidra-allegrex/index.md","name":"ghidra-allegrex","name_zh":"ghidra-allegrex PSP Allegrex 处理器模块","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v21.5, published 2026-10-25, built for Ghidra 12.2 and requiring JVM 25; the reviewed master commit is that tag. Each release zip targets one Ghidra version, so v21.4 of 2026-08-25 remains the build for Ghidra 12.1.3 and 12.1.4. Extension v19 and later install through Ghidra's File > Install Extensions; v18 and earlier are unpacked into Ghidra's Processors directory.","Source builds set GHIDRA_INSTALL_DIR and run the Gradle wrapper's buildExtension task, compiling Kotlin and Java against the local Ghidra installation with a JVM 25 toolchain. CI builds the extension against Ghidra 12.2 on Ubuntu and uploads the zip; the repository has no automated tests. The two PPSSPP scripts are written in Ghidra's Python 2 (Jython) dialect, and the .sym file comes from the user's own PPSSPP debugging session.","Inputs are PSP executables in ELF/PRX form, kernel modules or raw binaries that the user supplies; the README notes that game executables must already be decrypted, and the repository contains no PSP software or firmware. Raw binaries need the processor and image base set by hand, and some kernel modules need the reboot.bin type B relocation option at import.","The README lists limits: almost every VFPU operation decompiles to a function call such as vadd_q(...), the vpfxs, vpfxt and vpfxd prefix semantics are not modeled, vfim.s shows its half-float operand as an integer, object files cannot be rebased after import, and functions with 64-bit arguments need custom storage because of a Ghidra issue.","Apache-2.0; the README says it is derived from Ghidra's Apache-2.0 MIPS module and that type B relocation parsing is based on prxtool under AFL v2.0. Separately, REA's PSP static ELF guide uses it as a caller-installed extension and pairs v21.4 with Ghidra 12.1.3."],"requirements_zh":["审阅时的最新发布版为 v21.5，发布于 2026-10-25，面向 Ghidra 12.2，需要 JVM 25；所审阅的 master 分支提交即该标签。每个发布压缩包只对应一个 Ghidra 版本，因此 Ghidra 12.1.3 和 12.1.4 仍使用 2026-08-25 发布的 v21.4。扩展 v19 及更高版本通过 Ghidra 的 File > Install Extensions 安装；v18 及更早版本需解压后放入 Ghidra 的 Processors 目录。","从源码构建需设置 GHIDRA_INSTALL_DIR，并运行 Gradle wrapper 的 buildExtension 任务，使用 JVM 25 工具链，基于本地 Ghidra 安装编译 Kotlin 和 Java 代码。CI 在 Ubuntu 上针对 Ghidra 12.2 构建扩展并上传压缩包；仓库没有自动化测试。两个 PPSSPP 脚本采用 Ghidra 的 Python 2（Jython）写法，.sym 文件来自使用者自己的 PPSSPP 调试会话。","输入是使用者自备的 ELF/PRX 格式 PSP 可执行文件、内核模块或原始二进制；README 指出游戏可执行文件须为已解密版本，仓库本身不包含任何 PSP 软件或固件。原始二进制需手动选择处理器并设定映像基址，部分内核模块导入时需勾选 reboot.bin B 类重定位选项。","README 列出的限制包括：几乎所有 VFPU 运算都会被反编译为 vadd_q(...) 之类的函数调用；vpfxs、vpfxt 和 vpfxd 前缀的语义尚未建模；vfim.s 的半精度浮点操作数显示为整数；目标文件导入后不能再更改基址；带 64 位参数的函数因 Ghidra 的一个问题需要手动指定参数存储。","采用 Apache-2.0 许可；README 说明它衍生自采用 Apache-2.0 的 Ghidra MIPS 模块，B 类重定位解析参考了采用 AFL v2.0 的 prxtool。另外，REA PSP 静态 ELF 指南把它作为需由使用者自行安装的扩展，并将 v21.4 与 Ghidra 12.1.3 配套使用。"],"targets":["binary","firmware","game"],"url":"https://github.com/kotcrab/ghidra-allegrex","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/leonjza/frida-boot/blob/73d1adf76275dd20a3da81bbc310cae58db78bfb/course/README.md","https://github.com/leonjza/frida-boot/blob/73d1adf76275dd20a3da81bbc310cae58db78bfb/course/_sidebar.md","https://github.com/leonjza/frida-boot/blob/73d1adf76275dd20a3da81bbc310cae58db78bfb/Dockerfile","https://github.com/leonjza/frida-boot/blob/73d1adf76275dd20a3da81bbc310cae58db78bfb/docker.sh","https://github.com/leonjza/frida-boot/blob/73d1adf76275dd20a3da81bbc310cae58db78bfb/course/1-chapter-1/internals.md","https://github.com/leonjza/frida-boot/blob/73d1adf76275dd20a3da81bbc310cae58db78bfb/course/2-chapter-2/repurposing.md","https://github.com/leonjza/frida-boot/blob/73d1adf76275dd20a3da81bbc310cae58db78bfb/course/3-chapter-3/operating-modes.md","https://github.com/leonjza/frida-boot/tree/73d1adf76275dd20a3da81bbc310cae58db78bfb/software","https://hub.docker.com/r/leonjza/frida-boot"],"category":"learning","description_en":"A beginner workshop by leonjza on binary instrumentation with Frida, served as offline pages from a Docker container that has gdb with GEF and frida-tools preinstalled. Three chapters move from a small Linux C program, LD_PRELOAD hooks and how library calls resolve through the PLT and GOT, to Frida’s Interceptor for reading arguments and changing return values, NativeFunction for calling a program’s own functions, Python injector tools, RPC exports, TypeScript agents, frida-server and frida-gadget. It deliberately leaves out Frida’s mobile-app uses, and every exercise targets sample programs shipped with the workshop.","description_zh":"leonjza 编写的 Frida 二进制插桩入门工作坊，课程页面由一个 Docker 容器离线提供，容器内已预装带 GEF 的 gdb 和 frida-tools。三个章节从一个小型 Linux C 程序、LD_PRELOAD 钩子以及库函数调用如何经由 PLT 和 GOT 解析讲起，再到用 Frida 的 Interceptor 读取参数和修改返回值、用 NativeFunction 调用程序自身的函数、编写 Python 注入工具、RPC 导出、TypeScript 代理，以及 frida-server 和 frida-gadget。课程有意不涉及 Frida 在移动应用上的用法，所有练习都针对工作坊自带的示例程序。","entry_url":"https://awesomerea.org/resources/frida-boot-workshop/","entry_url_zh":"https://awesomerea.org/zh/resources/frida-boot-workshop/","evidence_url":"https://github.com/leonjza/frida-boot/blob/73d1adf76275dd20a3da81bbc310cae58db78bfb/README.md","group":"learn","id":"frida-boot-workshop","json_url":"https://awesomerea.org/resources/frida-boot-workshop/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/frida-boot-workshop/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/frida-boot-workshop/index.md","name":"Frida Boot: a beginner binary instrumentation workshop","name_zh":"Frida Boot：二进制插桩入门工作坊","record_type":"resource","relationship":"learning","requirements":["The reviewed master commit dates from 2021-04-28, with no releases or tags; the prebuilt leonjza/frida-boot image on Docker Hub (tag latest, amd64 only) was last updated the same day. The README links a YouTube recording of the workshop and keeps a PDF of the slides in slides/.","Needs a host with Docker. docker.sh pulls or builds the image and starts it with the SYS_PTRACE capability, serving the course at localhost:9999 and mounting a local code folder into the container. The Dockerfile builds on Debian bullseye-slim and downloads frida-server and frida-gadget 12.9.4 for linux-x86_64, but installs frida-tools, GEF and the frida-agent-example project unpinned, so a fresh build will not reproduce the 2021 tool versions.","Exercises compile and instrument the workshop’s own C samples in software/: a random sleep loop, a fake_sleep LD_PRELOAD library and a PIN-check program whose test_pin function the lessons call directly from Frida, with numbered JavaScript, TypeScript and Python snippets for each step. No third-party target binaries are included or needed; the material covers x86_64 Linux user-space processes.","The repository has no license file and GitHub detects none; the bundled docsify scripts and themes keep their own licenses, and Frida, GEF and the base image are fetched under theirs."],"requirements_zh":["所审阅的 master 提交日期为 2021-04-28，没有发行版或标签；Docker Hub 上预构建的 leonjza/frida-boot 镜像（latest 标签，仅 amd64）也于同日最后更新。README 附有工作坊的 YouTube 录像链接，slides/ 中保存了幻灯片的 PDF。","需要装有 Docker 的主机。docker.sh 拉取或构建镜像，以 SYS_PTRACE 权限启动容器，在 localhost:9999 提供课程页面，并把本地代码文件夹挂载到容器中。Dockerfile 基于 Debian bullseye-slim，下载 linux-x86_64 版 frida-server 和 frida-gadget 12.9.4，但 frida-tools、GEF 和 frida-agent-example 项目均未固定版本，因此现在重新构建无法重现 2021 年的工具版本。","练习编译并插桩工作坊自带的 software/ 中的 C 示例：一个随机休眠循环、一个用于 LD_PRELOAD 的 fake_sleep 库，以及一个 PIN 校验程序，课程会从 Frida 直接调用其中的 test_pin 函数；每一步都配有编号的 JavaScript、TypeScript 和 Python 代码片段。不包含也不需要任何第三方目标二进制；内容针对 x86_64 Linux 用户态进程。","仓库没有许可证文件，GitHub 也未识别出许可证；随附的 docsify 脚本和主题保留各自的许可证，Frida、GEF 和基础镜像按各自条款下载。"],"targets":["binary"],"url":"https://github.com/leonjza/frida-boot","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/fdrechsler/mcp-server-idapro/blob/6f960148a7a5def5a895ec7a31e7e80567bb215e/index.ts#L1-L24","https://github.com/fdrechsler/mcp-server-idapro/blob/6f960148a7a5def5a895ec7a31e7e80567bb215e/index.ts#L200-L424","https://github.com/fdrechsler/mcp-server-idapro/blob/6f960148a7a5def5a895ec7a31e7e80567bb215e/index.ts#L510-L564","https://github.com/fdrechsler/mcp-server-idapro/blob/6f960148a7a5def5a895ec7a31e7e80567bb215e/ida_remote_server.py#L267-L380","https://github.com/fdrechsler/mcp-server-idapro/blob/6f960148a7a5def5a895ec7a31e7e80567bb215e/ida_remote_server.py#L1308-L1335","https://github.com/fdrechsler/mcp-server-idapro/blob/6f960148a7a5def5a895ec7a31e7e80567bb215e/package.json","https://github.com/fdrechsler/mcp-server-idapro/blob/6f960148a7a5def5a895ec7a31e7e80567bb215e/LICENSE"],"category":"agent-mcp","description_en":"An IDA Pro plugin and a TypeScript MCP server by Florian Drechsler: the plugin starts an HTTP server inside IDA on 127.0.0.1:9045, and the stdio MCP server forwards agent requests to it. Its twelve tools run IDAPython scripts passed inline or by file path, list functions, exports and strings, search names, immediate values and byte sequences, return cross-references to and from an address, and disassemble address ranges. It is a separate codebase from the mrexodia and Hex-Rays IDA MCP servers listed here.","description_zh":"由 Florian Drechsler 编写，包含一个 IDA Pro 插件和一个 TypeScript MCP 服务器：插件在 IDA 内的 127.0.0.1:9045 启动 HTTP 服务，stdio 方式运行的 MCP 服务器把智能体请求转发给它。其 12 个工具可执行以内联代码或文件路径传入的 IDAPython 脚本，列出函数、导出项和字符串，搜索名称、立即数和字节序列，返回某地址的入向与出向交叉引用，并反汇编指定地址范围。它与本合集已收录的 mrexodia 版和 Hex-Rays 官方 IDA MCP 服务器是不同的代码库。","entry_url":"https://awesomerea.org/resources/mcp-server-idapro-fdrechsler/","entry_url_zh":"https://awesomerea.org/zh/resources/mcp-server-idapro-fdrechsler/","evidence_url":"https://github.com/fdrechsler/mcp-server-idapro/blob/6f960148a7a5def5a895ec7a31e7e80567bb215e/README.md","group":"agents","id":"mcp-server-idapro-fdrechsler","json_url":"https://awesomerea.org/resources/mcp-server-idapro-fdrechsler/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/mcp-server-idapro-fdrechsler/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mcp-server-idapro-fdrechsler/index.md","name":"IDA Pro MCP Server (fdrechsler)","name_zh":"IDA Pro MCP 服务器（fdrechsler）","record_type":"resource","relationship":"independent-agent-integration","requirements":["Dormant: its six commits date from 2025-03-24 to 2025-03-26, with no tags, releases or npm package. The README asks for IDA Pro 8.3 or later, Node.js 18+ and TypeScript; the MCP server is built from a clone with npm install and npm run build, and ida_remote_server.py is copied into IDA's plugins directory, where it starts its server when IDA loads. MCP clients launch the built dist/index.js over stdio.","IDA Pro is commercial software installed separately, and the tools act on whatever database the analyst has open; the repository holds only source files and a screenshot. The README documents eight of the twelve tools and an npm test command, but package.json defines no test script and the project has no tests. At the pinned commit index.ts imports llamaindex, which package.json does not declare, and the search_text tool queries a MongoDB strings collection at localhost:27017 instead of IDA, with its IDA call commented out.","Script tools run arbitrary IDAPython inside IDA, and while a script runs the plugin overrides IDA's prompt functions so that dialogs are auto-confirmed or suppressed. The HTTP server has no authentication: the README's security note relies on the localhost-only default bind and warns about the implications of changing DEFAULT_HOST.","The LICENSE file and README state MIT, while package.json declares ISC. IDA Pro, MCP clients and analysed binaries keep their own terms."],"requirements_zh":["项目已停止更新：6 个提交均在 2025-03-24 至 2025-03-26 之间，没有标签、发布版或 npm 软件包。README 要求 IDA Pro 8.3 或更高版本、Node.js 18+ 和 TypeScript；MCP 服务器需克隆仓库后运行 npm install 和 npm run build 构建，ida_remote_server.py 则复制到 IDA 的插件目录，IDA 加载插件时即启动其服务。MCP 客户端通过 stdio 启动构建出的 dist/index.js。","IDA Pro 是需另行安装的商业软件，各工具作用于分析者当前打开的数据库；仓库只包含源码文件和一张截图。README 只记录了 12 个工具中的 8 个，并给出 npm test 命令，但 package.json 未定义测试脚本，项目也没有测试。在所固定的提交中，index.ts 导入了 package.json 未声明的 llamaindex，search_text 工具查询的是 localhost:27017 上 MongoDB 的 strings 集合而非 IDA，对应的 IDA 调用已被注释掉。","脚本类工具会在 IDA 内执行任意 IDAPython 代码；脚本运行期间，插件会替换 IDA 的提示函数，使对话框被自动确认或屏蔽。HTTP 服务没有身份验证：README 的安全说明依赖其默认只绑定本机地址，并提醒修改 DEFAULT_HOST 会带来的安全影响。","LICENSE 文件和 README 声明采用 MIT 许可，而 package.json 写的是 ISC。IDA Pro、MCP 客户端及被分析的二进制仍受各自条款约束。"],"targets":["binary"],"url":"https://github.com/fdrechsler/mcp-server-idapro","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/mrphrazer/ghidra-headless-mcp/blob/307b461cdbbedfbafb3771333f21875b745f940e/FEATURE_SUPPORT.md","https://github.com/mrphrazer/ghidra-headless-mcp/blob/307b461cdbbedfbafb3771333f21875b745f940e/CHANGELOG.md","https://github.com/mrphrazer/ghidra-headless-mcp/blob/307b461cdbbedfbafb3771333f21875b745f940e/RELEASING.md","https://github.com/mrphrazer/ghidra-headless-mcp/blob/307b461cdbbedfbafb3771333f21875b745f940e/pyproject.toml","https://github.com/mrphrazer/ghidra-headless-mcp/blob/307b461cdbbedfbafb3771333f21875b745f940e/.github/workflows/ci.yml","https://github.com/mrphrazer/ghidra-headless-mcp/blob/307b461cdbbedfbafb3771333f21875b745f940e/LICENSE","https://github.com/mrphrazer/ghidra-headless-mcp/blob/307b461cdbbedfbafb3771333f21875b745f940e/ghidra_headless_mcp/_version.py","https://github.com/mrphrazer/ghidra-headless-mcp/tree/307b461cdbbedfbafb3771333f21875b745f940e/samples","https://github.com/mrphrazer/ghidra-headless-mcp/tree/307b461cdbbedfbafb3771333f21875b745f940e/tests/fixtures"],"category":"agent-mcp","description_en":"Headless-only MCP server that drives Ghidra through PyGhidra and is meant to share a container with the agent rather than attach to a Ghidra GUI. Its 212 tools in 34 groups cover program and project lifecycle, disassembly, decompilation and P-code, patching and memory edits, symbols, references, types and structure layouts, search and graph extraction, with raw Python, Java-API and script access for anything else. Programs open read-only by default, edits run in transactions with undo and redo, a fake backend lets development and CI run without Ghidra, and a ghidra_cli client exposes the same tools to shells and agents without MCP.","description_zh":"仅以无界面方式运行的 MCP 服务器，通过 PyGhidra 驱动 Ghidra，设计为与智能体运行在同一容器中，而不是连接 Ghidra 图形界面。其 34 组共 212 个工具涵盖程序与项目生命周期、反汇编、反编译与 P-code、补丁与内存修改、符号、引用、类型与结构布局、搜索和图提取，其他需求可通过直接执行 Python、调用 Java API 或运行脚本完成。程序默认以只读方式打开，修改在支持撤销与重做的事务中进行；伪后端让开发和 CI 无需安装 Ghidra 即可运行，ghidra_cli 客户端则把同一套工具提供给不使用 MCP 的命令行和智能体。","entry_url":"https://awesomerea.org/resources/ghidra-headless-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/ghidra-headless-mcp/","evidence_url":"https://github.com/mrphrazer/ghidra-headless-mcp/blob/307b461cdbbedfbafb3771333f21875b745f940e/README.md","group":"agents","id":"ghidra-headless-mcp","json_url":"https://awesomerea.org/resources/ghidra-headless-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/ghidra-headless-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghidra-headless-mcp/index.md","name":"Ghidra Headless MCP","name_zh":"Ghidra Headless MCP","record_type":"resource","relationship":"independent-agent-integration","requirements":["The reviewed main commit (2026-09-16) reports version 0.1.0, with no tags or releases; the changelog keeps all changes under Unreleased, and RELEASING.md says source releases go to GitHub only, not PyPI, and that no public release tag should be created until a license is chosen. Install from a checkout with pip. The README says the code, tests and documentation are entirely vibe coded.","Python 3.11+ with pyghidra 3.0.2+ and a local Ghidra installation given through GHIDRA_INSTALL_DIR or --ghidra-install-dir; the README names no minimum Ghidra release. MCP runs over stdio or TCP, with setup examples for Claude Code, Codex and generic MCP hosts and a sample Kali-based Dockerfile that installs Ghidra beside the agent. Debugger, Version Tracking, FID, BSim and emulator workflows are listed as not exposed.","ghidra.eval, ghidra.call and ghidra.script run arbitrary Python, Java and scripts inside the Ghidra runtime, and both transports are unauthenticated; the TCP server binds 127.0.0.1, and the README limits use to trusted, containerized environments. Read-only sessions protect program state but do not sandbox filesystem or process access.","The repository bundles a stripped AArch64 GNU coreutils ls executable in samples/ as the feature fuzzer’s default target, and a small compiled hello test fixture with its C source. The README says CI also runs live Ghidra tests and a wheel check, but the reviewed workflow runs only Ruff and the non-live pytest suite on the fake backend.","GitHub detects GPL-2.0 from the LICENSE file added in the initial commit, while the README and RELEASING.md still treat the license as unchosen and pyproject.toml declares none."],"requirements_zh":["所审阅的 main 提交（2026-09-16）标为 0.1.0 版，没有标签或发行版；更新日志把所有改动都列在 Unreleased 下，RELEASING.md 称源码发行版只发布到 GitHub、不发布到 PyPI，并要求在选定许可证之前不要创建公开发行标签。需从检出的源码用 pip 安装。README 称代码、测试和文档全部是“vibe coding”写成的。","需要 Python 3.11+、pyghidra 3.0.2+，以及通过 GHIDRA_INSTALL_DIR 或 --ghidra-install-dir 指定的本地 Ghidra 安装；README 未注明最低 Ghidra 版本。MCP 可经 stdio 或 TCP 运行，README 给出了 Claude Code、Codex 和通用 MCP 主机的配置示例，以及一个在智能体旁安装 Ghidra 的 Kali 基础 Dockerfile 示例。调试器、Version Tracking、FID、BSim 和模拟器相关工作流被列为尚未提供。","ghidra.eval、ghidra.call 和 ghidra.script 会在 Ghidra 运行时中执行任意 Python、Java 代码和脚本，两种传输方式均无身份验证；TCP 服务器只绑定 127.0.0.1，README 要求仅在受信任的容器化环境中使用。只读会话可保护程序状态，但不会隔离文件系统或进程访问。","仓库在 samples/ 中附带一个已剥离符号的 AArch64 GNU coreutils ls 可执行文件，作为功能模糊测试器的默认目标，另有一个小型已编译的 hello 测试样本及其 C 源码。README 称 CI 还会运行真实 Ghidra 测试和 wheel 检查，但所审阅的工作流只运行 Ruff 和基于伪后端的非真实环境 pytest 测试。","GitHub 依据初始提交中加入的 LICENSE 文件识别为 GPL-2.0，而 README 和 RELEASING.md 仍视许可证为尚未选定，pyproject.toml 也未声明许可证。"],"targets":["binary"],"url":"https://github.com/mrphrazer/ghidra-headless-mcp","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/mrphrazer/binary-ninja-headless-mcp/blob/7fafd7523838fa2627a972869e34815fc461834f/README.md#L15-L25","https://github.com/mrphrazer/binary-ninja-headless-mcp/blob/7fafd7523838fa2627a972869e34815fc461834f/README.md#L197-L203","https://github.com/mrphrazer/binary-ninja-headless-mcp/blob/7fafd7523838fa2627a972869e34815fc461834f/pyproject.toml","https://github.com/mrphrazer/binary-ninja-headless-mcp/blob/7fafd7523838fa2627a972869e34815fc461834f/.github/workflows/ci.yml","https://github.com/mrphrazer/binary-ninja-headless-mcp/blob/7fafd7523838fa2627a972869e34815fc461834f/CLI_VERIFICATION.md","https://github.com/mrphrazer/binary-ninja-headless-mcp/blob/7fafd7523838fa2627a972869e34815fc461834f/LICENSE"],"category":"agent-mcp","description_en":"A third-party, headless-only MCP server by Ruben Marks (mrphrazer) that gives agents a large Binary Ninja tool surface the project counts as 181 tools across 36 feature groups, including disassembly, intermediate languages, cross-references, types, search, patching with undo/redo transactions, and arbitrary scripting through binja.eval and binja.call. It speaks MCP over stdio or TCP, ships a schema-derived command-line client (binja_cli), and is meant to run in the same container as the agent runtime. A fake-backend mode runs the CLI, tests and a feature fuzzer without a Binary Ninja license, while real analysis needs a headless-capable license.","description_zh":"Ruben Marks（mrphrazer）开发的第三方、仅无界面运行的 MCP 服务器，向智能体提供庞大的 Binary Ninja 工具集，项目称共 181 个工具、分 36 个功能组，涵盖反汇编、中间语言、交叉引用、类型、搜索、带撤销/重做事务的打补丁，以及通过 binja.eval 和 binja.call 执行任意脚本。它通过 stdio 或 TCP 使用 MCP 协议，附带一个由模式生成参数的命令行客户端 binja_cli，设计上与智能体运行时位于同一容器内。假后端模式可在没有 Binary Ninja 许可证的情况下运行 CLI、测试和功能模糊器，实际分析则需要支持无界面模式的许可证。","entry_url":"https://awesomerea.org/resources/binary-ninja-headless-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/binary-ninja-headless-mcp/","evidence_url":"https://github.com/mrphrazer/binary-ninja-headless-mcp/blob/7fafd7523838fa2627a972869e34815fc461834f/README.md","group":"agents","id":"binary-ninja-headless-mcp","json_url":"https://awesomerea.org/resources/binary-ninja-headless-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/binary-ninja-headless-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binary-ninja-headless-mcp/index.md","name":"Binary Ninja Headless MCP","name_zh":"Binary Ninja Headless MCP（无界面）","record_type":"resource","relationship":"independent-agent-integration","requirements":["Reviewed at main 7fafd75 (2026-09-19); the pyproject declares package version 0.2.0 and there are no tagged releases. The README positions it against GUI-bound or limited Binary Ninja MCP servers as a headless-only, agent-driven alternative with mutation workflows and scripting, and states the whole project, including its code, tests and documentation, is vibe coded.","Needs Python 3.11+. Real analysis requires a Binary Ninja installation with a headless-capable license and the binaryninja Python module importable; the README notes enterprise and debugger APIs are not covered. A fake-backend mode (BINARY_NINJA_HEADLESS_MCP_FAKE_BACKEND=1) runs the CLI, the pytest suite and the feature fuzzer without a license, which is what CI exercises on Python 3.11 with ruff and pytest.","Install with pip from a clone or straight from the repository. Register it with an MCP host such as Claude Code or Codex over stdio (default) or TCP; the recommended deployment runs the agent and this server in one container. The repository bundles a sample binary, samples/ls (a stripped aarch64 GNU coreutils ls), as the fuzzer and verification target, plus small C fixtures.","The README's security model states that stdio and TCP transports are unauthenticated by default and that binja.eval and binja.call expose arbitrary scripting and broad API access, intended only for trusted containerized environments and not to be exposed to untrusted users or networks. Read-only mode is the session default, memory.read is capped at 65536 bytes, and mutations use undo/redo transactions.","The bundled CLI_VERIFICATION.md reports native coverage of all 181 tools on Binary Ninja 6.0.10601 Ultimate (AArch64 Linux host) across both architectures, transports and argument styles, but its evidence links point to files in the authors' analysis environment rather than the shipped package. GPL-2.0. Use it on binaries the operator is authorized to examine."],"requirements_zh":["审阅基于 main 分支 7fafd75（2026-09-19）；pyproject 声明包版本为 0.2.0，没有任何标签发布。README 将其定位为相对于受图形界面限制或工具较少的 Binary Ninja MCP 服务器的替代方案，强调仅无界面运行、面向智能体，并带有变更工作流和脚本能力；README 声明整个项目（包括代码、测试和文档）均为 vibe coded。","需要 Python 3.11+。实际分析需要安装 Binary Ninja，且具备支持无界面模式的许可证，并能导入 binaryninja Python 模块；README 指出不覆盖企业版和调试器 API。假后端模式（BINARY_NINJA_HEADLESS_MCP_FAKE_BACKEND=1）可在无许可证的情况下运行 CLI、pytest 测试套件和功能模糊器，这也是 CI 在 Python 3.11 上配合 ruff 和 pytest 所运行的内容。","可用 pip 从克隆目录或直接从仓库安装。通过 Claude Code、Codex 等 MCP 宿主以 stdio（默认）或 TCP 注册；推荐的部署方式是让智能体与该服务器位于同一容器内。仓库附带一个示例二进制 samples/ls（去符号的 aarch64 GNU coreutils ls）作为模糊器和验证目标，另有少量 C 测试样本。","README 的安全模型说明 stdio 和 TCP 传输默认不进行身份验证，binja.eval 和 binja.call 会暴露任意脚本执行和广泛的 API 访问，仅面向受信任的容器化环境，不应暴露给不受信任的用户或网络。会话默认只读，memory.read 上限为 65536 字节，变更操作使用撤销/重做事务。","仓库附带的 CLI_VERIFICATION.md 报告称在 Binary Ninja 6.0.10601 Ultimate（AArch64 Linux 主机）上对全部 181 个工具进行了原生覆盖，涵盖两种架构、传输方式和参数风格，但其证据链接指向作者分析环境中的文件，而非随包发布的文件。许可证为 GPL-2.0。请仅用于操作者有权分析的二进制文件。"],"targets":["binary"],"url":"https://github.com/mrphrazer/binary-ninja-headless-mcp","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/OpenGMK/OpenGMK/blob/9e4282e6d19f4dd00961811840ddc3e11da6dd5a/gm8decompiler/README.md","https://github.com/OpenGMK/OpenGMK/blob/9e4282e6d19f4dd00961811840ddc3e11da6dd5a/gm8decompiler/src/main.rs","https://github.com/OpenGMK/OpenGMK/blob/9e4282e6d19f4dd00961811840ddc3e11da6dd5a/gm8decompiler/src/deobfuscate.rs","https://github.com/OpenGMK/OpenGMK/blob/9e4282e6d19f4dd00961811840ddc3e11da6dd5a/gm8decompiler/Cargo.toml","https://github.com/OpenGMK/OpenGMK/blob/9e4282e6d19f4dd00961811840ddc3e11da6dd5a/README.md","https://github.com/OpenGMK/OpenGMK/blob/9e4282e6d19f4dd00961811840ddc3e11da6dd5a/rust-toolchain.toml","https://github.com/OpenGMK/GM8Decompiler/blob/4cf52818a303e51154e7dc0ec473a22d8c24f21e/LICENCE.md","https://github.com/OpenGMK/GM8Decompiler/releases/tag/v2.2.0"],"category":"game-analysis","description_en":"Command-line tool that turns games built with GameMaker 8.0 or 8.1 back into editable .gmk or .gm81 project files. It reads the gamedata section that a built executable carries next to the runner and writes its settings, sprites, sounds, backgrounds, paths, scripts, fonts, timelines, objects, rooms, extensions, included files and GML code in the project format matching the game's version. A Rust rewrite on the OpenGMK project's gm8exe library that replaced the team's fork of WastedMeerkat's gm81decompiler, it is now developed in the OpenGMK repository alongside the GM8Emulator runner reimplementation.","description_zh":"命令行工具，可把用 GameMaker 8.0 或 8.1 构建的游戏还原为可编辑的 .gmk 或 .gm81 项目文件。它读取已构建可执行文件中与运行器（runner）并存的 gamedata 部分，按游戏版本对应的项目格式写出其中的设置、精灵、声音、背景、路径、脚本、字体、时间线、对象、房间、扩展、附带文件以及 GML 代码。该工具基于 OpenGMK 项目的 gm8exe 库用 Rust 重写，取代了团队此前对 WastedMeerkat 的 gm81decompiler 的分支，现与重新实现 GameMaker 运行器的 GM8Emulator 一同在 OpenGMK 仓库中开发。","entry_url":"https://awesomerea.org/resources/gm8decompiler/","entry_url_zh":"https://awesomerea.org/zh/resources/gm8decompiler/","evidence_url":"https://github.com/OpenGMK/GM8Decompiler/blob/4cf52818a303e51154e7dc0ec473a22d8c24f21e/README.org","group":"tools","id":"gm8decompiler","json_url":"https://awesomerea.org/resources/gm8decompiler/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/gm8decompiler/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/gm8decompiler/index.md","name":"GM8Decompiler","name_zh":"GM8Decompiler GameMaker 8 游戏反编译器","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v2.2.0, published 2024-02-12 with i686 and x86_64 Windows MSVC builds. Its tag points at the January 2022 commit that leaves only the README and licence in this repository, because development moved to OpenGMK while releases are still published here. The release notes list a Rust update from 1.59 to 1.76, a fix for executables written by gm82, and support for the 810 and 811 room formats; the OpenGMK gm8decompiler crate is also at 2.2.0, and its later commits only raise the Rust version and update dependencies.","Source builds use the OpenGMK Cargo workspace, cloned with submodules and built with cargo build --release, which also builds GM8Emulator. rust-toolchain.toml pins Rust 1.77 to keep Windows 7 support, and the OpenGMK README says only MSVC targets are supported on Windows and, because releases are rarely updated, recommends building it yourself. The decompiler crate has no tests, and neither repository has CI workflows at the reviewed commits.","Input is a GameMaker 8.0 or 8.1 game executable the user supplies; neither repository includes games. Usage is gm8decompiler FILENAME: -o names the output, which otherwise is the input path with the .gmk or .gm81 extension for the detected version; -l disables data-integrity checks; -s decompiles on one thread to lower memory use; -p keeps broken custom Execute Code actions instead of converting them to standard ones; and -d sets deobfuscation of GML code processed by Schreib's GM Obfuscator, which the default auto mode enables when assets have empty names.","The README reports the Rust loader as over ten times faster than the old gm81decompiler fork, safer, more thorough and able to read more games; these are project claims, and no per-game compatibility list or output check is published. GPL-2.0-only per Cargo.toml, with the GPL v2 text in LICENCE.md. Recovered projects contain the game's own assets and code, which remain subject to the rights of the game's owner."],"requirements_zh":["审阅时最新版本为 v2.2.0，于 2024-02-12 发布，提供 i686 和 x86_64 的 Windows MSVC 构建。其标签指向 2022 年 1 月的一个提交，该提交使本仓库只剩 README 和许可证，因为开发已迁至 OpenGMK，而发布版本仍在本仓库提供。发布说明列出：Rust 从 1.59 升级到 1.76、修复由 gm82 写出的可执行文件的问题，以及支持 810 和 811 房间格式；OpenGMK 中的 gm8decompiler crate 同为 2.2.0 版，之后的提交只提高了 Rust 版本并更新依赖。","从源码构建使用 OpenGMK 的 Cargo 工作区：连同子模块克隆后执行 cargo build --release，会同时构建 GM8Emulator。rust-toolchain.toml 将 Rust 固定为 1.77 以保留对 Windows 7 的支持；OpenGMK README 称 Windows 上只支持 MSVC 目标，并因发布版本很少更新而建议自行构建。反编译器 crate 没有测试，两个仓库在所审阅的提交中也都没有 CI 工作流。","输入为使用者自行提供的 GameMaker 8.0 或 8.1 游戏可执行文件；两个仓库都不含任何游戏。用法为 gm8decompiler FILENAME：-o 指定输出文件，否则沿用输入路径并按检测到的版本使用 .gmk 或 .gm81 扩展名；-l 关闭数据完整性检查；-s 以单线程反编译以降低内存占用；-p 保留损坏的自定义 Execute Code 动作，而不将其转换为标准动作；-d 设置对经 Schreib's GM Obfuscator 处理的 GML 代码的去混淆，默认的 auto 模式会在资源名称为空时启用去混淆。","README 称 Rust 版加载器比旧的 gm81decompiler 分支快十倍以上，也更安全、更全面，能读取更多游戏；这些是项目自述，项目未公布逐个游戏的兼容性列表或输出校验。依据 Cargo.toml 采用 GPL-2.0-only 许可，LICENCE.md 收录 GPL v2 全文。还原出的项目包含游戏自身的资源和代码，仍受游戏权利人的权利约束。"],"targets":["game"],"url":"https://github.com/OpenGMK/GM8Decompiler","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/EliotVU/Unreal-Library/blob/8236c39b79e30887a487ecf9b018204e430a5ebc/LICENSE","https://github.com/EliotVU/Unreal-Library/blob/8236c39b79e30887a487ecf9b018204e430a5ebc/Directory.Build.props","https://github.com/EliotVU/Unreal-Library/blob/8236c39b79e30887a487ecf9b018204e430a5ebc/version.json","https://github.com/EliotVU/Unreal-Library/blob/8236c39b79e30887a487ecf9b018204e430a5ebc/Test/Eliot.UELib.Test.csproj","https://github.com/EliotVU/Unreal-Library/blob/8236c39b79e30887a487ecf9b018204e430a5ebc/Test/Packages.resx","https://github.com/EliotVU/Unreal-Library/tree/8236c39b79e30887a487ecf9b018204e430a5ebc/Test/upk","https://github.com/EliotVU/Unreal-Library/blob/8236c39b79e30887a487ecf9b018204e430a5ebc/CLI/Program.cs","https://github.com/EliotVU/Unreal-Library/releases/tag/1.12.0","https://www.nuget.org/packages/Eliot.UELib/1.13.7"],"category":"game-analysis","description_en":"C# library that reads Unreal Engine 1, 2 and 3 package files such as .u, .upk and .udk, auto-detects a matching game build and deserializes their exports, imports and properties. Its main goal is decompiling UnrealScript bytecode back to source by reconstructing classes, states, functions, structs, enums and default properties; it also deserializes fonts, sounds, palettes and textures. The README’s per-game compatibility table runs from Unreal and Deus Ex to Splinter Cell, Mass Effect and the Batman: Arkham games, and the separate UE Explorer GUI is built on it.","description_zh":"读取 Unreal Engine 1、2、3 包文件（如 .u、.upk 和 .udk）的 C# 库，可自动识别匹配的游戏构建，并反序列化其中的导出、导入对象和属性。其主要目标是通过重建类、状态、函数、结构体、枚举和默认属性，把 UnrealScript 字节码反编译回源码；它也能反序列化字体、声音、调色板和纹理。README 中的逐游戏兼容表从 Unreal、Deus Ex 一直列到 Splinter Cell、Mass Effect 和 Batman: Arkham 系列，独立的 UE Explorer 图形界面即基于此库构建。","entry_url":"https://awesomerea.org/resources/uelib-unreal-package-library/","entry_url_zh":"https://awesomerea.org/zh/resources/uelib-unreal-package-library/","evidence_url":"https://github.com/EliotVU/Unreal-Library/blob/8236c39b79e30887a487ecf9b018204e430a5ebc/README.md","group":"tools","id":"uelib-unreal-package-library","json_url":"https://awesomerea.org/resources/uelib-unreal-package-library/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/uelib-unreal-package-library/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/uelib-unreal-package-library/index.md","name":"UELib (Unreal-Library)","name_zh":"UELib Unreal 包文件解析与反编译库","record_type":"resource","relationship":"foundation","requirements":["Published on NuGet as Eliot.UELib: the latest stable package at review is 1.13.7, published 2026-07-17, targeting .NET Framework 4.8, .NET Standard 2.0 and 2.1 and .NET 10, while the newest GitHub release page is 1.12.0 from 2025-09-22. Versions come from Nerdbank.GitVersioning, and the reviewed master commit (2026-10-16) is later than both. The repository also holds a small .NET 10 command-line client, a separate decompiler project and a work-in-progress T3D decompiler.","Input is package files from the user’s own game installations. The README warns that opening an unsupported package could crash the system, that production UE3 packages are often compressed and must first be decompressed with a separate tool, and that some games need third-party decompression or extraction. Textures in .tfc caches, models and animations are not supported, and audio and texture output is expected to work for most games but not confirmed.","Compatibility rows are the author’s and contributors’ reports per game and package version, including known problems such as bad output at function starts for X-COM: Alliance, wrong UStruct offsets for Duke Nukem Forever (2001) and bad byte-codes for Medal of Honor (2010); some rows are marked unverified. The MSTest suite reads TestUC1–TestUC3 packages compiled from the project’s own UnrealScript test classes, and some tests point at local Unreal Tournament or UT2004 installations.","MIT license (Eliot van Uytfanghe). Game packages, scripts and assets keep their rights holders’ terms, and decompiled UnrealScript is a reconstruction, not the original source files. The GitHub description also mentions .uasset, but the README’s compatibility table covers only Unreal Engine 1–3 games."],"requirements_zh":["以 Eliot.UELib 之名发布在 NuGet 上：审阅时最新稳定版为 1.13.7，发布于 2026-07-17，面向 .NET Framework 4.8、.NET Standard 2.0 与 2.1 以及 .NET 10；GitHub 上最新的发行版页面则是 2025-09-22 的 1.12.0。版本号由 Nerdbank.GitVersioning 生成，所审阅的 master 提交（2026-10-16）晚于两者。仓库还包含一个小型 .NET 10 命令行客户端、一个独立的反编译器项目，以及仍在开发中的 T3D 反编译器。","输入是来自使用者自有游戏安装的包文件。README 警告，打开不受支持的包可能导致系统崩溃；正式发布的 UE3 包通常经过压缩，须先用独立工具解压；部分游戏还需第三方解压或提取工具。不支持 .tfc 缓存中的纹理，也不支持模型和动画；音频和纹理输出预计适用于大多数游戏，但尚未确认。","兼容性条目是作者和贡献者按游戏和包版本给出的报告，并列出已知问题，例如 X-COM: Alliance 的函数开头输出错误、Duke Nukem Forever（2001）的 UStruct 偏移不对，以及 Medal of Honor（2010）的字节码错误；部分条目标为未验证。MSTest 测试套件读取由项目自有 UnrealScript 测试类编译出的 TestUC1–TestUC3 包，部分测试指向本地的 Unreal Tournament 或 UT2004 安装。","采用 MIT 许可证（Eliot van Uytfanghe）。游戏包、脚本和素材仍受各自权利人的条款约束，反编译出的 UnrealScript 是重建结果，并非原始源文件。GitHub 简介还提到 .uasset，但 README 的兼容表只涵盖 Unreal Engine 1–3 游戏。"],"targets":["game"],"url":"https://github.com/EliotVU/Unreal-Library","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/mytechnotalent/Embedded-Hacking/tree/76fa253e9b54aba39b9b02d7738664a65864b425","https://github.com/mytechnotalent/Embedded-Hacking/blob/76fa253e9b54aba39b9b02d7738664a65864b425/README.md#L44-L180","https://github.com/mytechnotalent/Embedded-Hacking/blob/76fa253e9b54aba39b9b02d7738664a65864b425/README.md#L244-L641","https://github.com/mytechnotalent/Embedded-Hacking/tree/76fa253e9b54aba39b9b02d7738664a65864b425/datasheets","https://github.com/mytechnotalent/Embedded-Hacking/blob/76fa253e9b54aba39b9b02d7738664a65864b425/WEEK07/0x0017a_ctf/CMakeLists.txt","https://github.com/mytechnotalent/Embedded-Hacking/blob/76fa253e9b54aba39b9b02d7738664a65864b425/WEEK11/0x0026a_custom-bootloader/README.md","https://github.com/mytechnotalent/Embedded-Hacking/blob/76fa253e9b54aba39b9b02d7738664a65864b425/.opencode/skill/embedded-c-standard/SKILL.md","https://github.com/mytechnotalent/Embedded-Hacking/blob/76fa253e9b54aba39b9b02d7738664a65864b425/LICENSE"],"category":"learning","description_en":"A free English course by mytechnotalent on developing, debugging and reverse engineering firmware for the Raspberry Pi Pico 2 (RP2350, Arm Cortex-M33). A fourteen-week syllabus with slides, Markdown notebooks and a 40-chapter PDF textbook follows a write, debug, then hack pattern from hello-world through variables, data types, constants, operators, conditionals, structures and functions, using GDB with OpenOCD and Ghidra, with Binary Ninja and IDA versions of the notebooks from week 4; an I2C LCD, GPS, LoRa radio, servo and IR remote supply the exercises. Graded CTFs, story-driven classified-brief challenges and a secure-boot custom bootloader ship as author-built binaries alongside their source.","description_zh":"mytechnotalent 编写的免费英文课程，讲解 Raspberry Pi Pico 2（RP2350，Arm Cortex-M33）固件的开发、调试与逆向。14 周的课程大纲配有幻灯片、Markdown 笔记和 40 章 PDF 教材，按“编写、调试、再破解”的模式，从 hello world 讲到变量、数据类型、常量、运算符、条件语句、结构体和函数，使用 GDB 配合 OpenOCD 以及 Ghidra，第 4 周起的笔记另有 Binary Ninja 和 IDA 版本；练习围绕 I2C LCD、GPS、LoRa 无线模块、舵机和红外遥控展开。计分 CTF、剧情式“机密简报”挑战和一个安全启动自定义引导程序均以作者构建的二进制文件形式提供，并附有源码。","entry_url":"https://awesomerea.org/resources/mytechnotalent-embedded-hacking/","entry_url_zh":"https://awesomerea.org/zh/resources/mytechnotalent-embedded-hacking/","evidence_url":"https://github.com/mytechnotalent/Embedded-Hacking/blob/76fa253e9b54aba39b9b02d7738664a65864b425/README.md","group":"learn","id":"mytechnotalent-embedded-hacking","json_url":"https://awesomerea.org/resources/mytechnotalent-embedded-hacking/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/mytechnotalent-embedded-hacking/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mytechnotalent-embedded-hacking/index.md","name":"Embedded Hacking (mytechnotalent)","name_zh":"Embedded Hacking 嵌入式逆向课程（mytechnotalent）","record_type":"resource","relationship":"learning","requirements":["Reviewed at commit 76fa253 (2026-10-19). The repository dates from October 2023, but its current history restarts with an initial commit on 2026-10-07 and has received commits almost daily since; there are no releases. Weeks 1–7 and 9–11 have slides and notebooks; Week 8 is a midterm built on CTF-02, Weeks 12–13 list only topics, and the two Week 14 final projects are scenario descriptions with no linked files. A supplemental section, which the README places beyond the course, links Rust, Arm-assembly and RISC-V-assembly tutorials, drivers and IoT CTF projects in the author's other repositories.","The README expects intermediate C including pointers, bare-metal assembly basics, a working model of registers and the stack, command-line use and breadboarding. Hardware is a Raspberry Pi Pico 2 with a Raspberry Pi Debug Probe and the listed parts, among them LEDs, a push button, a 1602 I2C LCD, a DHT11 sensor, an SG90 servo, a VS1838B IR receiver with an NEC remote, a u-blox NEO-6M GPS module, two REYAX RYLR998 LoRa modules and an FT232RL USB-serial adapter; Fritzing and wiring diagrams are in hardware/.","Setup is native on Windows x64, Apple-silicon macOS and Linux x64: the VS Code Raspberry Pi Pico extension installs the Pico SDK, Arm GNU Toolchain, picotool and OpenOCD, builds use CMake and Ninja, and the course adds Ghidra with JDK 21, a serial terminal and a licensed Binary Ninja Personal; the IDA notebook variants additionally assume IDA. Root flash and debug-server scripts wrap flashing and the debug server.","No third-party firmware is needed: the exercises target programs the author wrote, and the repository commits their source with build outputs (ELF, BIN, UF2, HEX, disassembly and map files), two Binary Ninja databases, CTF-02's static libraries (its auth module, an mbedTLS subset and the Argon2 reference implementation), the RP2350 SVD file and the custom bootloader's signed images. datasheets/ holds copies of the RP2350 datasheet, the Pico C/C++ SDK book, Arm's Cortex-M33 Technical Reference Manual, the Armv8-M Architecture Reference Manual, AAPCS32 and Application Note 132, which keep their publishers' terms.","Apache-2.0 for the repository. The README's legal disclaimer limits use to educational, research and defensive work on devices the user owns or is explicitly authorized to test. A bundled OpenCode skill only enforces the author's C coding standard."],"requirements_zh":["审阅提交为 76fa253（2026-10-19）。仓库创建于 2023 年 10 月，但当前历史从 2026-10-07 的一次初始提交重新开始，此后几乎每天都有提交；项目没有发布版本。第 1–7 周和第 9–11 周提供幻灯片和笔记；第 8 周是以 CTF-02 为题的期中考试，第 12–13 周只列出主题，第 14 周的两个期末项目只有情境描述，没有链接文件。README 另有一个补充资料部分，明确列在课程范围之外，链接作者其他仓库中的 Rust、Arm 汇编和 RISC-V 汇编教程、驱动程序以及物联网 CTF 项目。","README 要求学习者具备中级 C 语言（包括指针）、裸机汇编基础、对寄存器和栈的基本理解、命令行操作能力以及面包板搭建能力。硬件包括 Raspberry Pi Pico 2、Raspberry Pi Debug Probe 和清单所列元件，其中有 LED、按键、1602 I2C LCD、DHT11 传感器、SG90 舵机、VS1838B 红外接收器及 NEC 遥控器、u-blox NEO-6M GPS 模块、两个 REYAX RYLR998 LoRa 模块和 FT232RL USB 转串口适配器；Fritzing 工程和接线图位于 hardware/ 目录。","可在 Windows x64、Apple 芯片 macOS 和 Linux x64 上原生搭建环境：VS Code 的 Raspberry Pi Pico 扩展会安装 Pico SDK、Arm GNU 工具链、picotool 和 OpenOCD，构建使用 CMake 和 Ninja，课程另需 Ghidra 及 JDK 21、串口终端和已授权的 Binary Ninja Personal；IDA 版本的笔记还需要 IDA。仓库根目录的烧录和调试服务器脚本封装了烧录与调试服务器的启动。","无需任何第三方固件：练习对象都是作者自己编写的程序，仓库提交了它们的源码和构建产物（ELF、BIN、UF2、HEX、反汇编与 map 文件）、两个 Binary Ninja 数据库、CTF-02 的静态库（其 auth 模块、mbedTLS 子集和 Argon2 参考实现）、RP2350 SVD 文件，以及自定义引导程序的签名镜像。datasheets/ 目录收录 RP2350 数据手册、Pico C/C++ SDK 手册、Arm Cortex-M33 技术参考手册、Armv8-M 架构参考手册、AAPCS32 和 Application Note 132 的副本，这些文档适用各自发布者的条款。","仓库采用 Apache-2.0 许可证。README 的法律声明将用途限定为教育、研究和防御性工作，且只能针对用户自有或已获明确授权测试的设备。仓库附带的 OpenCode 技能只用于检查作者的 C 代码规范。"],"targets":["firmware"],"url":"https://github.com/mytechnotalent/Embedded-Hacking","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/seemoo-lab/apple-continuity-tools/blob/b93207b5887c6bef8c9e0e16a442149fb3520e28/LICENSE","https://github.com/seemoo-lab/apple-continuity-tools/blob/b93207b5887c6bef8c9e0e16a442149fb3520e28/Makefile","https://github.com/seemoo-lab/apple-continuity-tools/blob/b93207b5887c6bef8c9e0e16a442149fb3520e28/requirements.txt","https://github.com/seemoo-lab/apple-continuity-tools/blob/b93207b5887c6bef8c9e0e16a442149fb3520e28/process_recon/README.md","https://github.com/seemoo-lab/apple-continuity-tools/blob/b93207b5887c6bef8c9e0e16a442149fb3520e28/keychain_access/README.md","https://github.com/seemoo-lab/apple-continuity-tools/blob/b93207b5887c6bef8c9e0e16a442149fb3520e28/keychain_access/keychain_access.py","https://github.com/seemoo-lab/apple-continuity-tools/blob/b93207b5887c6bef8c9e0e16a442149fb3520e28/keychain_access/tests/test.sh","https://github.com/seemoo-lab/apple-continuity-tools/blob/b93207b5887c6bef8c9e0e16a442149fb3520e28/continuity_messages/README.md","https://github.com/seemoo-lab/apple-continuity-tools/blob/b93207b5887c6bef8c9e0e16a442149fb3520e28/continuity_messages/packet_breakpoints.txt","https://github.com/seemoo-lab/apple-continuity-tools/commit/b93207b5887c6bef8c9e0e16a442149fb3520e28","https://www.usenix.org/conference/usenixsecurity21/presentation/stute"],"category":"protocol-analysis","description_en":"Three macOS helpers from SEEMOO Lab that the Open Wireless Link project used to study Apple wireless services such as AirDrop, Wi-Fi Password Sharing, Handoff and Offline Finding from the host side. process_recon summarizes which processes, log categories and subsystems emit log entries matching chosen keywords; keychain_access uses Frida to hook SecItemCopyMatching in a process and exports the keychain items it accesses to JSON; and lldb breakpoint commands print the Handoff and Universal Clipboard messages that the rapportd daemon sends and receives.","description_zh":"SEEMOO 实验室的三个 macOS 辅助工具，Open Wireless Link 项目曾用它们从主机一侧研究 AirDrop、Wi-Fi 密码共享、Handoff 和离线查找等 Apple 无线服务。process_recon 汇总哪些进程、日志类别和子系统产生了含指定关键词的日志；keychain_access 借助 Frida 挂接某一进程中的 SecItemCopyMatching，把该进程访问的钥匙串条目导出为 JSON；另有一组 lldb 断点命令，可打印 rapportd 守护进程收发的 Handoff 与通用剪贴板消息。","entry_url":"https://awesomerea.org/resources/apple-continuity-tools/","entry_url_zh":"https://awesomerea.org/zh/resources/apple-continuity-tools/","evidence_url":"https://github.com/seemoo-lab/apple-continuity-tools/blob/b93207b5887c6bef8c9e0e16a442149fb3520e28/README.md","group":"tools","id":"apple-continuity-tools","json_url":"https://awesomerea.org/resources/apple-continuity-tools/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/apple-continuity-tools/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/apple-continuity-tools/index.md","name":"Apple Continuity Reverse Engineering Toolkit","name_zh":"Apple Continuity 逆向工程工具包","record_type":"resource","relationship":"foundation","requirements":["The repository has three commits: the initial release and a paper link on 2021-04-12, and a 2026-08-17 README edit that replaces the former Open Wireless Link website link with a note that the site is no longer associated with the project. There are no releases. The process_recon example was recorded on macOS 11.0 and the breakpoints name private Rapport framework methods; support for current macOS releases is not documented.","Runs on the analyst's own Mac with Python 3 in a virtual environment and Node.js; make install installs the pinned requirements, including frida 14.2.7 and frida-tools 9.1.0 from 2021, plus the prettier dev dependency. continuity_messages needs lldb and SIP's debugging protection turned off, and keychain_access needs SIP fully disabled for system processes; the README warns about the security implications.","Inputs are the analyst's own devices and accounts: the rapportd examples involve an iPhone next to the Mac and keys for the analyst's iCloud devices, so keychain_access output holds real secrets and should be handled accordingly. keychain_access/tests has small Swift and Objective-C hackme programs and a test.sh that stores and then extracts a dummy keychain password; there are no other tests.","The tools watch logs, keychain calls and daemon messages on the host; they do not capture or decode over-the-air Bluetooth LE or AWDL traffic, unlike the separately listed furiousMAC Continuity notes and Wireshark dissector for Continuity advertisements. The README lists the authors' USENIX Security 2021 Continuity and 2019 AWDL papers and a 2020 dissertation as related publications.","GPL-3.0."],"requirements_zh":["仓库只有三个提交：2021-04-12 的初始发布与论文链接，以及 2026-08-17 对 README 的修改，把原 Open Wireless Link 网站链接换成说明该网站已与项目无关的提示。没有发布版本。process_recon 的示例记录于 macOS 11.0，断点针对的是私有 Rapport 框架的方法；未说明是否支持当前 macOS 版本。","在分析者自己的 Mac 上运行，需要虚拟环境中的 Python 3 和 Node.js；make install 会安装锁定版本的依赖，包括 2021 年的 frida 14.2.7 和 frida-tools 9.1.0，以及开发依赖 prettier。continuity_messages 需要 lldb，并需关闭 SIP 的调试保护；keychain_access 用于系统进程时需完全关闭 SIP；README 提醒注意其安全影响。","输入来自分析者自己的设备和账号：rapportd 示例涉及放在 Mac 旁的 iPhone 以及分析者 iCloud 设备的密钥，因此 keychain_access 的输出包含真实机密，应妥善处理。keychain_access/tests 中有小型 Swift 和 Objective-C hackme 程序，以及先存入再提取一个虚拟钥匙串密码的 test.sh；除此之外没有测试。","这些工具观察的是主机上的日志、钥匙串调用和守护进程消息，并不捕获或解码空中的蓝牙低功耗或 AWDL 流量；这一点不同于另行收录、针对 Continuity 广播的 furiousMAC Continuity 笔记与 Wireshark 解析器。README 将作者的 USENIX Security 2021 Continuity 论文、2019 年 AWDL 论文和一篇 2020 年博士论文列为相关出版物。","采用 GPL-3.0。"],"targets":["protocol"],"url":"https://github.com/seemoo-lab/apple-continuity-tools","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/yigitkonur/lib-osmo-ble/blob/021e96c2bec7e9a2a81296292545bc1ee432af49/PROTOCOL.md","https://github.com/yigitkonur/lib-osmo-ble/blob/021e96c2bec7e9a2a81296292545bc1ee432af49/JOURNEY.md","https://github.com/yigitkonur/lib-osmo-ble/blob/021e96c2bec7e9a2a81296292545bc1ee432af49/patches/README.md","https://github.com/yigitkonur/lib-osmo-ble/blob/021e96c2bec7e9a2a81296292545bc1ee432af49/experiments/README.md","https://github.com/yigitkonur/lib-osmo-ble/blob/021e96c2bec7e9a2a81296292545bc1ee432af49/analysis/ble-characteristic-mapping.md","https://github.com/yigitkonur/lib-osmo-ble/blob/021e96c2bec7e9a2a81296292545bc1ee432af49/analysis/false-positive-analysis.md","https://github.com/yigitkonur/lib-osmo-ble/blob/021e96c2bec7e9a2a81296292545bc1ee432af49/src/connection.mjs","https://github.com/yigitkonur/lib-osmo-ble/blob/021e96c2bec7e9a2a81296292545bc1ee432af49/src/controllers/gimbal.mjs","https://github.com/yigitkonur/lib-osmo-ble/blob/021e96c2bec7e9a2a81296292545bc1ee432af49/src/protocol/constants.mjs","https://github.com/yigitkonur/lib-osmo-ble/blob/021e96c2bec7e9a2a81296292545bc1ee432af49/package.json","https://github.com/yigitkonur/lib-osmo-ble/tree/021e96c2bec7e9a2a81296292545bc1ee432af49/reference","https://github.com/yigitkonur/lib-osmo-ble/blob/021e96c2bec7e9a2a81296292545bc1ee432af49/LICENSE","https://github.com/xaionaro/reverse-engineering-dji/blob/5c9278ff0b53bbe0d03ea6c830aab13ac775871e/LICENSE","https://github.com/datagutt/node-osmo/blob/cec92aec9304a5cc3dae7f7de541eef38ebb680e/LICENSE"],"category":"reconstruction-cases","description_en":"Reconstructs the DUML-over-BLE protocol that DJI's Mimo app uses with the Osmo Pocket 3 camera as a Node.js library and CLI for scanning, pairing, gimbal commands and roughly 20 Hz position telemetry without the vendor app. The author reports working from a third party's Wireshark captures and dissector of Mimo traffic, a Go client and trial-and-error debugging; PROTOCOL.md documents the frame layout, CRC parameters, BLE characteristic roles and command IDs. A write-up and bundled patch trace seven bugs that kept the earlier node-osmo library from working with the camera, and the author reports that the patched library completed pairing, Wi-Fi setup and RTMP streaming.","description_zh":"重建 DJI Mimo 应用与 Osmo Pocket 3 相机之间基于 BLE 的 DUML 协议，提供 Node.js 库和命令行工具，无需官方应用即可扫描、配对、发送云台指令并接收约 20 Hz 的姿态遥测。作者称其依据第三方对 Mimo 通信的 Wireshark 抓包与解析器、一个 Go 客户端以及反复试验调试完成；PROTOCOL.md 记录了帧结构、CRC 参数、BLE 特征值的用途和命令 ID。一篇过程记录和随附补丁梳理了导致早期 node-osmo 库无法配合该相机工作的七个缺陷，作者报告打过补丁的库完成了配对、Wi-Fi 设置和 RTMP 推流。","entry_url":"https://awesomerea.org/resources/osmo-pocket-3-ble-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/osmo-pocket-3-ble-protocol-case/","evidence_url":"https://github.com/yigitkonur/lib-osmo-ble/blob/021e96c2bec7e9a2a81296292545bc1ee432af49/README.md","group":"cases","id":"osmo-pocket-3-ble-protocol-case","json_url":"https://awesomerea.org/resources/osmo-pocket-3-ble-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/osmo-pocket-3-ble-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/osmo-pocket-3-ble-protocol-case/index.md","name":"lib-osmo-ble: DJI Osmo Pocket 3 Bluetooth LE protocol library","name_zh":"lib-osmo-ble：DJI Osmo Pocket 3 低功耗蓝牙协议库","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the 2026-02-21 main head, which is also the last push; package.json declares 1.0.0, and there are no releases or tags. The README says gimbal motor commands are built and parsed correctly but the camera silently ignores them over BLE alone, probably until Wi-Fi streaming is active, while telemetry works. The library itself implements pairing, gimbal control and telemetry only; Wi-Fi setup and streaming were reached with the patched node-osmo.","Requires the user's own DJI Osmo Pocket 3 and a Bluetooth LE host. PROTOCOL.md reports verification on that model only, from macOS, and the patch notes list Apple Silicon macOS Sequoia, Node.js v25.5.0 and @stoprocent/noble 1.18.2; other DJI devices may differ. Pairing sends a client-chosen PIN (love by default in the CLI) that the user approves on the camera. No DJI firmware, app files or the author's own captures are committed.","Plain Node.js ES modules with two runtime dependencies, @stoprocent/noble ^2.3.10 for BLE and crc-full for the CRC8/CRC16 checks, and no build step; npm link installs the dji-osmo CLI. Diagnostic scripts scan for DJI devices, list characteristic properties and decode and CRC-check DUML hex messages. The node-osmo patch applies with git am to a separate clone of datagutt/node-osmo and builds with pnpm and TypeScript.","There are no automated tests; the npm test script is a placeholder that exits with an error. Evidence is the author's write-up, analysis notes on characteristic mapping, byte order, the Node.js buffer-pool bug and a false-positive run, and an experiment index whose raw logs are gitignored. Device behavior remains author-reported.","LICENSE is MIT, although package.json still says ISC. The reference folder copies the CC0-1.0 Wireshark dissector and message notes from xaionaro/reverse-engineering-dji, and node-osmo is MIT. DJI firmware, apps and trademarks keep their own rights."],"requirements_zh":["审阅对象为 2026-02-21 的 main 最新提交，也是仓库最近一次推送；package.json 声明版本 1.0.0，没有发布版本或标签。README 称云台电机指令的构造和解析都正确，但仅通过 BLE 发送时相机会静默忽略，可能要等 Wi-Fi 推流启动后才生效，而遥测工作正常。该库本身只实现配对、云台控制和遥测；Wi-Fi 设置和推流是借助打过补丁的 node-osmo 实现的。","需要使用者自有的 DJI Osmo Pocket 3 及支持低功耗蓝牙的主机。PROTOCOL.md 报告仅在该型号上、从 macOS 验证过，补丁说明列出的环境为 Apple 芯片 macOS Sequoia、Node.js v25.5.0 和 @stoprocent/noble 1.18.2；其他 DJI 设备可能有所不同。配对时发送由客户端选定的 PIN（命令行默认 love），需用户在相机上确认。仓库未提交 DJI 固件、应用文件或作者自己的抓包。","使用纯 Node.js ES 模块，运行时依赖只有两个：用于 BLE 的 @stoprocent/noble ^2.3.10 和用于 CRC8／CRC16 校验的 crc-full，无需构建；npm link 可安装 dji-osmo 命令行工具。诊断脚本可扫描 DJI 设备、列出特征值属性，并解码 DUML 十六进制报文、校验 CRC。node-osmo 补丁需用 git am 应用到另行克隆的 datagutt/node-osmo，再用 pnpm 和 TypeScript 构建。","没有自动化测试；npm test 脚本只是一个以报错退出的占位命令。证据包括作者的过程记录，关于特征值映射、字节序、Node.js 缓冲池缺陷和一次误判运行的分析笔记，以及原始日志已被 gitignore 排除的实验索引。设备上的行为仍属作者报告。","LICENSE 为 MIT，但 package.json 仍写作 ISC。reference 目录复制了 xaionaro/reverse-engineering-dji 中采用 CC0-1.0 的 Wireshark 解析器和报文笔记，node-osmo 采用 MIT。DJI 固件、应用和商标保留各自权利。"],"targets":["protocol"],"url":"https://github.com/yigitkonur/lib-osmo-ble","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/yeggor/uefi_retool/blob/be13abf0a84179f53a9ac8858a4cb2686b312a67/ida_plugin/README.md","https://github.com/yeggor/uefi_retool/blob/be13abf0a84179f53a9ac8858a4cb2686b312a67/uefi_retool.py","https://github.com/yeggor/uefi_retool/blob/be13abf0a84179f53a9ac8858a4cb2686b312a67/config.json","https://github.com/yeggor/uefi_retool/blob/be13abf0a84179f53a9ac8858a4cb2686b312a67/requirements.txt","https://github.com/yeggor/uefi_retool/blob/be13abf0a84179f53a9ac8858a4cb2686b312a67/ida_plugin/uefi_analyser/analyser.py","https://github.com/yeggor/uefi_retool/blob/be13abf0a84179f53a9ac8858a4cb2686b312a67/ida_plugin/uefi_analyser/log_pp_guids.py","https://github.com/yeggor/uefi_retool/blob/be13abf0a84179f53a9ac8858a4cb2686b312a67/tools/get_efi_images.py","https://github.com/yeggor/uefi_retool/tree/be13abf0a84179f53a9ac8858a4cb2686b312a67/ida_plugin/uefi_analyser/guids","https://github.com/yeggor/uefi_retool/blob/be13abf0a84179f53a9ac8858a4cb2686b312a67/LICENSE"],"category":"firmware","description_en":"Python command-line tool and IDA Pro plugin for UEFI firmware reverse engineering. uefi_retool.py unpacks a firmware image with uefi-firmware-parser, collects its executable modules and runs IDA in batch mode on each one, writing their boot-service calls and protocol GUIDs to JSON; a separate command lists protocols whose GUIDs are absent from its EDK2, AMI and vendor GUID tables as proprietary. Inside IDA the plugin applies EFI system-table types and names, lists protocols in an explorer window and, from the JSON, shows a dependency browser and graph across the firmware’s modules.","description_zh":"用于 UEFI 固件逆向工程的 Python 命令行工具及 IDA Pro 插件。uefi_retool.py 用 uefi-firmware-parser 解包固件镜像，收集其中的可执行模块，并以批处理模式逐一交给 IDA 分析，把各模块的引导服务调用和协议 GUID 写入 JSON；另一条命令则把 GUID 不在其 EDK2、AMI 及厂商 GUID 表中的协议列为专有协议。在 IDA 中，插件会应用 EFI 系统表的类型和名称，在浏览窗口中列出协议，并根据该 JSON 展示固件各模块之间的依赖浏览器和依赖图。","entry_url":"https://awesomerea.org/resources/uefi-retool/","entry_url_zh":"https://awesomerea.org/zh/resources/uefi-retool/","evidence_url":"https://github.com/yeggor/uefi_retool/blob/be13abf0a84179f53a9ac8858a4cb2686b312a67/README.md","group":"tools","id":"uefi-retool","json_url":"https://awesomerea.org/resources/uefi-retool/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/uefi-retool/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/uefi-retool/index.md","name":"uefi_retool","name_zh":"uefi_retool UEFI 固件逆向工具","record_type":"resource","relationship":"foundation","requirements":["The repository is archived. Its last commit (2024-12-28) only updates the README, the last code changes date from 2021-08-03, and the only tag, 1.2.0 from 2020-05-07, is eight commits older; there are no GitHub releases. The tree contains an IDA plugin only and no Ghidra component.","Needs a licensed IDA Pro with IDAPython and PyQt5: copy uefi_analyser.py and the uefi_analyser package into IDA’s plugins directory, then set the IDA and IDA64 executable paths and the module, dump and log directories in config.json, whose example points to IDA Pro 7.6 on Windows. The script uses Python with Click, colorama, terminaltables, tqdm and uefi-firmware-parser 1.8, installed from a tarball named in requirements.txt.","Input is a UEFI firmware image the user supplies; README examples name a ThinkPad X1 Carbon 5th-generation image that the repository does not include, and no firmware images are committed. The analyser recognizes x86 and x86-64 instruction patterns and chooses IDA or IDA64 from each image’s machine type. The bundled GUID tables come from EDK2 and EDK, from ida-efiutils for AMI, and from Dell, Lenovo and ASRock lists, and tools/update_edk2_guids.py refreshes the EDK2 table.","MIT license (2018–2021, yeggor). The repository has no tests or CI. Labels and dependency graphs come from GUID matching and instruction patterns, so they need analyst checking."],"requirements_zh":["该仓库已归档。最后一次提交（2024-12-28）只更新了 README，最后的代码改动在 2021-08-03，唯一的标签 1.2.0 发布于 2020-05-07，比当前提交早八个提交；没有 GitHub 发行版。代码树只包含 IDA 插件，没有 Ghidra 组件。","需要已授权的 IDA Pro，并具备 IDAPython 和 PyQt5：将 uefi_analyser.py 和 uefi_analyser 包复制到 IDA 的插件目录，再在 config.json 中设置 IDA 与 IDA64 可执行文件路径以及模块、转储和日志目录；示例配置指向 Windows 上的 IDA Pro 7.6。脚本需要 Python 及 Click、colorama、terminaltables、tqdm，以及按 requirements.txt 中的压缩包地址安装的 uefi-firmware-parser 1.8。","输入是使用者自行提供的 UEFI 固件镜像；README 示例提到的 ThinkPad X1 Carbon 第五代镜像并不在仓库中，仓库也未提交任何固件镜像。分析器识别 x86 和 x86-64 指令模式，并根据每个镜像的机器类型选择 IDA 或 IDA64。随附的 GUID 表来自 EDK2 和 EDK、ida-efiutils 中的 AMI 列表，以及 Dell、Lenovo 和 ASRock 的列表，tools/update_edk2_guids.py 可刷新 EDK2 表。","采用 MIT 许可证（2018–2021，yeggor）。仓库没有测试或 CI。标签和依赖图来自 GUID 匹配和指令模式，需由分析人员核对。"],"targets":["firmware"],"url":"https://github.com/yeggor/uefi_retool","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/GrammaTech/gtirb/blob/98fececb52ba36d86fe6798303a1904574dd5bb6/LICENSE.txt","https://github.com/GrammaTech/gtirb/blob/98fececb52ba36d86fe6798303a1904574dd5bb6/CHANGELOG.md","https://github.com/GrammaTech/gtirb/blob/98fececb52ba36d86fe6798303a1904574dd5bb6/version.txt","https://github.com/GrammaTech/gtirb/blob/98fececb52ba36d86fe6798303a1904574dd5bb6/CMakeLists.txt","https://github.com/GrammaTech/gtirb/blob/98fececb52ba36d86fe6798303a1904574dd5bb6/PROTOBUF.md","https://github.com/GrammaTech/gtirb/blob/98fececb52ba36d86fe6798303a1904574dd5bb6/AuxData.md","https://github.com/GrammaTech/gtirb/blob/98fececb52ba36d86fe6798303a1904574dd5bb6/proto/Module.proto","https://github.com/GrammaTech/gtirb/blob/98fececb52ba36d86fe6798303a1904574dd5bb6/CONTRIBUTING.md","https://github.com/GrammaTech/gtirb/blob/98fececb52ba36d86fe6798303a1904574dd5bb6/.ci/gitlab-ci.yml","https://github.com/GrammaTech/gtirb/blob/98fececb52ba36d86fe6798303a1904574dd5bb6/.github/workflows/actions.yml","https://github.com/GrammaTech/gtirb/tree/98fececb52ba36d86fe6798303a1904574dd5bb6/doc/examples","https://github.com/GrammaTech/gtirb/releases/tag/v2.0.0","https://pypi.org/project/gtirb/2.3.2/"],"category":"binary-libraries","description_en":"GrammaTech's intermediate representation for passing disassembly, analysis and rewriting results between binary tools, modeled on the role LLVM-IR plays for compilers. An IR holds modules for executables or libraries with their sections, byte intervals, code and data blocks, symbols and symbolic operands, plus an inter-procedural CFG and AuxData tables for analysis results, all referenced by UUID; instruction semantics are deliberately left out, so machine code stays as raw bytes for Capstone/Keystone or any other IL. It serializes as protobuf, with C++, Python and Common Lisp APIs and a partial Java API; the separately listed ddisasm produces it.","description_zh":"GrammaTech 开发的二进制中间表示，用于在各类二进制工具之间传递反汇编、分析与改写结果，其定位参照 LLVM-IR 在编译器中的作用。一个 IR 包含代表可执行文件或库的模块及其节、字节区间、代码块与数据块、符号和符号化操作数，另有过程间控制流图和存放分析结果的 AuxData 表，所有元素都通过 UUID 引用；它刻意不表示指令语义，机器码以原始字节保存，可交由 Capstone/Keystone 或其他中间语言处理。GTIRB 以 protobuf 序列化，提供 C++、Python 和 Common Lisp API 以及不完整的 Java API；另行收录的 ddisasm 可生成这种表示。","entry_url":"https://awesomerea.org/resources/gtirb/","entry_url_zh":"https://awesomerea.org/zh/resources/gtirb/","evidence_url":"https://github.com/GrammaTech/gtirb/blob/98fececb52ba36d86fe6798303a1904574dd5bb6/README.md","group":"tools","id":"gtirb","json_url":"https://awesomerea.org/resources/gtirb/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/gtirb/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/gtirb/index.md","name":"GTIRB","name_zh":"GTIRB 二进制中间表示","record_type":"resource","relationship":"foundation","requirements":["PyPI's newest gtirb is 2.3.2, uploaded 2026-06-16 as a pure-Python wheel for Python 3.8+; the changelog says the PyPI package needs protobuf 4.21.1 or newer. The reviewed master commit of the same day bumps version.txt to 2.3.3, which CHANGELOG marks unreleased. GitHub releases stop at v2.0.0 (2023-12-14, no files), and later versions are git tags. The README says ABI compatibility is not yet provided across any version change, and that stable or unstable packages must match the installed ddisasm and gtirb-pprinter.","Prebuilt options are Windows .zip builds and Ubuntu 20.04 (focal) apt packages from GrammaTech's download server, and the grammatech/ddisasm Docker image with GTIRB, ddisasm and gtirb-pprinter; the README warns that apt metapackages for stable gtirb 2.0.0 and older conflict on upgrade. Source builds need a 64-bit C++17 compiler (GCC, Clang or Visual Studio), CMake 3.10+, Protobuf 3.0.0+ and Boost 1.68+; the Common Lisp API needs further manual setup, and the Java API is marked incomplete.","GTIRB is a data structure, not an analyzer: IR comes from a producer such as ddisasm. The schema names file formats including ELF, PE, COFF, XCOFF, Mach-O and raw images, and ISAs from IA-32 and x64 to ARM, MIPS, PowerPC and, from 2.3.2, RISC-V; what a given producer actually supports is up to that tool. Programs in doc/examples walk the C++ API and compute CFG paths, data symbols and functions in several languages.","The GitLab CI configuration builds and tests on Ubuntu 20.04, 22.04 and 24.04 with GCC and Clang, plus static, Java, Common Lisp, Python and coverage jobs; the GitHub Actions workflow only builds and publishes documentation.","LICENSE.txt places GTIRB under MIT (2018, GrammaTech) and appends Apache-2.0 with LLVM Exceptions for included third-party code, which GitHub leaves unclassified; contributors must sign GrammaTech's CLA."],"requirements_zh":["PyPI 上最新的 gtirb 为 2.3.2，于 2026-06-16 以纯 Python wheel 上传，需要 Python 3.8+；更新日志称 PyPI 包需要 protobuf 4.21.1 或更新版本。同日所审阅的 master 提交把 version.txt 升至 2.3.3，CHANGELOG 将其标为尚未发布。GitHub 发布页止于 v2.0.0（2023-12-14，未附文件），之后的版本只有 git 标签。README 说明目前任何版本变化之间都不提供 ABI 兼容，并要求 stable 或 unstable 软件包与已安装的 ddisasm 和 gtirb-pprinter 保持一致。","预编译方式包括 GrammaTech 下载服务器上的 Windows .zip 构建和 Ubuntu 20.04（focal）apt 软件包，以及内含 GTIRB、ddisasm 和 gtirb-pprinter 的 grammatech/ddisasm Docker 镜像；README 提醒，stable gtirb 2.0.0 及更早版本的 apt 元软件包在升级时会冲突。从源码构建需要支持 C++17 的 64 位编译器（GCC、Clang 或 Visual Studio）、CMake 3.10+、Protobuf 3.0.0+ 和 Boost 1.68+；Common Lisp API 还需额外的手动配置，Java API 被标为不完整。","GTIRB 是数据结构而非分析器：IR 来自 ddisasm 等生成工具。其模式中列出的文件格式包括 ELF、PE、COFF、XCOFF、Mach-O 和原始镜像，指令集从 IA-32、x64 到 ARM、MIPS、PowerPC，2.3.2 起还有 RISC-V；具体支持哪些取决于生成工具本身。doc/examples 中的程序演示 C++ API，并以多种语言计算 CFG 路径、数据符号和函数。","GitLab CI 配置在 Ubuntu 20.04、22.04 和 24.04 上用 GCC 和 Clang 构建并测试，另有静态构建、Java、Common Lisp、Python 和覆盖率任务；GitHub Actions 工作流只负责构建并发布文档。","LICENSE.txt 规定 GTIRB 采用 MIT（2018，GrammaTech），并附上适用于所含第三方代码的 Apache-2.0 with LLVM Exceptions，GitHub 因而未能归类；贡献者须签署 GrammaTech 的 CLA。"],"targets":["binary"],"url":"https://github.com/GrammaTech/gtirb","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/quarkslab/quokka/releases/tag/v0.6.2","https://github.com/quarkslab/quokka/blob/v0.6.2/README.md","https://pypi.org/project/quokka-project/0.6.2/","https://github.com/quarkslab/quokka/blob/5afe14bd424835431bbd8015f061a9b551608af4/pyproject.toml","https://github.com/quarkslab/quokka/blob/5afe14bd424835431bbd8015f061a9b551608af4/bindings/python/quokka/version.py","https://github.com/quarkslab/quokka/blob/5afe14bd424835431bbd8015f061a9b551608af4/ghidra_extension/README.md","https://github.com/quarkslab/quokka/blob/5afe14bd424835431bbd8015f061a9b551608af4/binaryninja_extension/README.md","https://github.com/quarkslab/quokka/blob/5afe14bd424835431bbd8015f061a9b551608af4/.gitattributes","https://github.com/quarkslab/quokka/blob/5afe14bd424835431bbd8015f061a9b551608af4/.github/workflows/python.yml","https://github.com/quarkslab/quokka/blob/5afe14bd424835431bbd8015f061a9b551608af4/LICENSE"],"category":"native-analysis","description_en":"Quarkslab’s binary exporter, inspired by BinExport, saves a disassembler’s analysis to a protobuf .quokka file so functions, basic blocks, data, cross-references, segments and optionally decompiled code can be used later without the disassembler. Its Python bindings load an export together with the original binary, decode instructions at runtime with Capstone, or optionally lift them to P-code with pypcode, and expose programs, functions and control-flow graphs through one API. The main branch adds Ghidra and Binary Ninja exporters beside the IDA Pro plugin, a parallel quokka-cli batch exporter and name and type edits that can be written back to an IDA database.","description_zh":"Quarkslab 的二进制导出工具，受 BinExport 启发，把反汇编器的分析结果保存为 protobuf 格式的 .quokka 文件，此后无需反汇编器即可使用其中的函数、基本块、数据、交叉引用、段以及可选的反编译代码。其 Python 绑定将导出文件与原始二进制一并载入，运行时用 Capstone 解码指令，也可选用 pypcode 将其提升为 P-code，并通过统一的 API 提供程序、函数和控制流图。main 分支在 IDA Pro 插件之外新增了 Ghidra 与 Binary Ninja 导出器、可并行批量导出的 quokka-cli，以及可写回 IDA 数据库的名称和类型编辑。","entry_url":"https://awesomerea.org/resources/quokka-binary-exporter/","entry_url_zh":"https://awesomerea.org/zh/resources/quokka-binary-exporter/","evidence_url":"https://github.com/quarkslab/quokka/blob/5afe14bd424835431bbd8015f061a9b551608af4/README.md","group":"tools","id":"quokka-binary-exporter","json_url":"https://awesomerea.org/resources/quokka-binary-exporter/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/quokka-binary-exporter/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/quokka-binary-exporter/index.md","name":"Quokka","name_zh":"Quokka 二进制导出工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.6.2, published 2025-12-08 together with quokka-project 0.6.2 on PyPI; its README supports IDA 7.3+, and it ships prebuilt IDA plugins for IDA 7.4 through 9.2 on Windows, Linux and macOS. The reviewed main commit (2026-10-14) is 261 commits later and declares version 1.0.0; the Ghidra and Binary Ninja exporters, quokka-cli and the IDA 9.1+ requirement described here exist only on main, not in a released package.","Exporting needs one disassembler. The main-branch C++ plugin targets IDA Pro 9.1+, installs through hcli on 9.2+ or builds with CMake, which fetches the open-source IDA SDK for 9.2+ and needs a separately obtained SDK for older versions; the Java extension needs Ghidra 12.0.3+ and JDK 21+; the Binary Ninja plugin declares version 4.0 build 4911 as its minimum, and headless use there needs a commercial license. The Python bindings need Python 3.10+ on main, or 3.8+ for 0.6.2, with capstone, networkx, protobuf and python-magic.","Only the LIGHT export mode works: exports hold block-level data, so loading them needs the original binary for Capstone to decode instructions, and the self-contained FULL mode is planned but not implemented. quokka-cli offers decompiled-code export for IDA only. The README warns that Capstone’s disassembly can differ from the disassembler’s.","Test fixtures in tests/dataset are stored with Git LFS: programs built from the included many_types and sig_test sources, a Linux kernel module (nf_nat_pt.ko), a UEFI PEI module (StatusCodeHandlerPei.efi), a puraUpdate executable and their exports; docs/samples adds a qb-crackme sample and its export. Workflows build the IDA plugin, build and test the Ghidra extension, test the Binary Ninja plugin and run the Python tests on Python 3.10–3.13.","Apache-2.0 license; IDA Pro, Ghidra and Binary Ninja keep their own terms."],"requirements_zh":["审阅时最新版本为 v0.6.2，于 2025-12-08 发布，同时在 PyPI 发布 quokka-project 0.6.2；其 README 称支持 IDA 7.3+，并为 Windows、Linux 和 macOS 提供 IDA 7.4 至 9.2 的预构建插件。所审阅的 main 提交（2026-10-14）比它晚 261 个提交，版本号标为 1.0.0；这里描述的 Ghidra 与 Binary Ninja 导出器、quokka-cli 以及 IDA 9.1+ 要求只存在于 main 分支，尚未进入任何正式发布的软件包。","导出需要一种反汇编器。main 分支的 C++ 插件面向 IDA Pro 9.1+，可在 9.2+ 上通过 hcli 安装，或用 CMake 构建：9.2+ 会自动获取开源的 IDA SDK，更早的版本则需自行取得 SDK；Java 扩展需要 Ghidra 12.0.3+ 和 JDK 21+；Binary Ninja 插件声明最低版本为 4.0（build 4911），以无界面方式使用 Binary Ninja 需要商业许可证。Python 绑定在 main 上需要 Python 3.10+（0.6.2 为 3.8+），并依赖 capstone、networkx、protobuf 和 python-magic。","目前只实现了 LIGHT 导出模式：导出文件仅包含基本块级数据，因此载入时需要原始二进制，供 Capstone 解码指令；自包含的 FULL 模式仍在计划中，尚未实现。quokka-cli 仅在使用 IDA 时支持导出反编译代码。README 提醒，Capstone 的反汇编结果可能与反汇编器的不同。","tests/dataset 中的测试样本以 Git LFS 存储：由随附 many_types 和 sig_test 源码构建的程序、一个 Linux 内核模块（nf_nat_pt.ko）、一个 UEFI PEI 模块（StatusCodeHandlerPei.efi）、一个 puraUpdate 可执行文件及它们的导出文件；docs/samples 另有一个 qb-crackme 示例及其导出文件。工作流会构建 IDA 插件、构建并测试 Ghidra 扩展、测试 Binary Ninja 插件，并在 Python 3.10–3.13 上运行 Python 测试。","采用 Apache-2.0 许可证；IDA Pro、Ghidra 和 Binary Ninja 仍受各自条款约束。"],"targets":["binary"],"url":"https://github.com/quarkslab/quokka","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/bl4ckr0ss3/knife/blob/f260b87ffc54ae5c8c56cc31351334d209228745/Cargo.toml","https://github.com/bl4ckr0ss3/knife/blob/f260b87ffc54ae5c8c56cc31351334d209228745/LICENSE","https://github.com/bl4ckr0ss3/knife/blob/f260b87ffc54ae5c8c56cc31351334d209228745/CHANGELOG.md","https://github.com/bl4ckr0ss3/knife/blob/f260b87ffc54ae5c8c56cc31351334d209228745/docs/MCP.md","https://github.com/bl4ckr0ss3/knife/blob/f260b87ffc54ae5c8c56cc31351334d209228745/docs/external-providers.md","https://github.com/bl4ckr0ss3/knife/blob/f260b87ffc54ae5c8c56cc31351334d209228745/docs/investigation-desk.md","https://github.com/bl4ckr0ss3/knife/blob/f260b87ffc54ae5c8c56cc31351334d209228745/docs/gdb-provider-validation.md","https://github.com/bl4ckr0ss3/knife/blob/f260b87ffc54ae5c8c56cc31351334d209228745/docs/case-study-eqnedt32.md","https://github.com/bl4ckr0ss3/knife/blob/f260b87ffc54ae5c8c56cc31351334d209228745/scripts/gen-loldrivers.mjs","https://github.com/bl4ckr0ss3/knife/blob/f260b87ffc54ae5c8c56cc31351334d209228745/.github/workflows/ci.yml","https://github.com/bl4ckr0ss3/knife/blob/f260b87ffc54ae5c8c56cc31351334d209228745/AGENTS.md","https://github.com/bl4ckr0ss3/knife/releases/tag/v1.8.3","https://docs.rs/crate/reknife/1.8.0"],"category":"native-analysis","description_en":"Static reverse-engineering toolkit in Rust, installed as the knife command, that parses PE, ELF, Mach-O and WebAssembly files without running them. It triages hashes, sections, mitigations, imports, strings, indicators and crypto constants; recovers functions, call graphs and CFGs through recursive-descent disassembly for x86/x64 and AArch64; and lifts functions to experimental pseudocode. Analysts' names, notes, types and staged patches persist in a per-binary database shared by the CLI, a terminal UI and an MCP server, and further passes rank risky API call sites by argument provenance and summarize Windows driver dispatch and IOCTL surfaces.","description_zh":"以 Rust 编写的静态逆向工程工具包，安装后为 knife 命令，可在不运行目标的情况下解析 PE、ELF、Mach-O 和 WebAssembly 文件。它能分诊哈希、节区、缓解措施、导入、字符串、威胁指标和加密常量；通过面向 x86/x64 与 AArch64 的递归下降反汇编恢复函数、调用图和控制流图；还能把函数提升为实验性伪代码。分析者添加的命名、注释、类型和暂存补丁保存在按二进制区分的数据库中，由命令行、终端界面和 MCP 服务器共享；另有分析步骤按参数来源对有风险的 API 调用点排序，并汇总 Windows 驱动的派发例程和 IOCTL 接口。","entry_url":"https://awesomerea.org/resources/knife/","entry_url_zh":"https://awesomerea.org/zh/resources/knife/","evidence_url":"https://github.com/bl4ckr0ss3/knife/blob/f260b87ffc54ae5c8c56cc31351334d209228745/README.md","group":"tools","id":"knife","json_url":"https://awesomerea.org/resources/knife/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/knife/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/knife/index.md","name":"knife","name_zh":"knife 静态逆向工程工具包","record_type":"resource","relationship":"foundation","requirements":["The repository was created on 2026-08-08. Release v1.8.3 (2026-10-11) ships Linux x86_64, macOS arm64/x86_64 and Windows x86_64 archives, while the reknife crate on crates.io stops at 1.8.0 (2026-09-15); the reviewed main commit is 48 commits past v1.8.3, with unreleased changes listed in CHANGELOG. Source builds need Rust 1.88+, and the README says no system libraries are needed beyond the platform default; knife update needs curl.","Input is a binary the analyst supplies, which knife only reads. Disassembly covers x86/x64 and AArch64, the audit data-flow checks are x86/x64 only, and the README says empty reachability results do not prove unreachability because indirect dispatch is outside the direct call graph. WebAssembly gets section, import/export and WAT views without code analysis. The repository contains no target binaries: tests build synthetic PE and ELF fixtures in code, and data/loldrivers.json is a snapshot of the public LOLDrivers list used for SHA-256 matching.","knife mcp speaks MCP over stdio; docs/MCP.md lists 58 tools, four of which write names, notes, prototypes or staged patches to the project database rather than the binary. The optional investigation desk sends prompts and tool results to the model provider the user configures (local Ollama, OpenRouter, OpenAI or another OpenAI-compatible endpoint) and keeps hosted API keys in the OS credential vault. Optional adapters call a separately installed Rizin, and the provider docs also describe Ghidra headless and capa adapters; YARA-X 1.12 is linked in for rule scans, and a GDB runtime exporter is documented but not yet exposed.","CI runs cargo build and test on Ubuntu, Windows and macOS, plus cargo fmt and clippy. The README presents audit hits as call sites whose argument provenance matches a bug pattern, and its 7z.dll, kernel32.dll and CVE-2017-11882 figures are the author's results.","MIT (2026, 0xblack). The LOLDrivers snapshot comes from that project's public API, and Rizin, Ghidra, capa and YARA-X keep their own licenses. The repository's AGENTS.md is contributor guidance for coding agents."],"requirements_zh":["仓库创建于 2026-08-08。v1.8.3 版本（2026-10-11）提供 Linux x86_64、macOS arm64/x86_64 和 Windows x86_64 压缩包，而 crates.io 上的 reknife crate 停在 1.8.0（2026-09-15）；所审阅的 main 提交比 v1.8.3 多 48 个提交，未发布的改动列在 CHANGELOG 中。从源码构建需要 Rust 1.88+，README 称除平台默认库外无需其他系统库；knife update 需要 curl。","输入为分析者提供的二进制，knife 只读取而不运行它。反汇编支持 x86/x64 和 AArch64，audit 的数据流检查仅限 x86/x64；README 指出可达性结果为空并不代表不可达，因为间接派发不在直接调用图之内。WebAssembly 只有节区、导入导出和 WAT 视图，不做代码分析。仓库不含任何目标二进制：测试在代码中生成合成的 PE 和 ELF 样本，data/loldrivers.json 是公开 LOLDrivers 列表的快照，用于 SHA-256 匹配。","knife mcp 通过 stdio 提供 MCP 服务；docs/MCP.md 列出 58 个工具，其中四个会把命名、注释、原型或暂存补丁写入项目数据库，而不修改二进制本身。可选的调查面板会把提示词和工具结果发送给使用者配置的模型服务（本地 Ollama、OpenRouter、OpenAI 或其他 OpenAI 兼容端点），托管服务的 API 密钥保存在操作系统凭据库中。可选适配器会调用另行安装的 Rizin，提供方文档还介绍了 Ghidra headless 和 capa 适配器；YARA-X 1.12 已内置用于规则扫描，GDB 运行时导出器有文档说明但尚未开放。","CI 在 Ubuntu、Windows 和 macOS 上运行 cargo build 与 test，并运行 cargo fmt 和 clippy。README 将 audit 结果描述为参数来源符合某种缺陷模式的调用点；其中关于 7z.dll、kernel32.dll 和 CVE-2017-11882 的数据均为作者自己的结果。","采用 MIT（2026，0xblack）。LOLDrivers 快照来自该项目的公开 API，Rizin、Ghidra、capa 和 YARA-X 保留各自许可证。仓库中的 AGENTS.md 是写给编程智能体的贡献指南。"],"targets":["binary"],"url":"https://github.com/bl4ckr0ss3/knife","verification":"source-reviewed","verified_at":"2026-10-20"},{"added_at":"2026-11-02","additional_evidence_urls":["https://github.com/vmallet/ida-plugins/blob/825941fe4eea969fc5909bb790e3e2cc9a86e082/README.md","https://github.com/vmallet/ida-plugins/blob/825941fe4eea969fc5909bb790e3e2cc9a86e082/data.js","https://github.com/vmallet/ida-plugins/blob/825941fe4eea969fc5909bb790e3e2cc9a86e082/index.html","https://github.com/vmallet/ida-plugins/blob/825941fe4eea969fc5909bb790e3e2cc9a86e082/main.js","https://github.com/vmallet/ida-plugins/blob/825941fe4eea969fc5909bb790e3e2cc9a86e082/tools/gen_readme.py","https://github.com/vmallet/ida-plugins/blob/825941fe4eea969fc5909bb790e3e2cc9a86e082/lib/DEPENDENCIES.md","https://github.com/vmallet/ida-plugins/blob/825941fe4eea969fc5909bb790e3e2cc9a86e082/LICENSE","https://vmallet.github.io/ida-plugins/"],"category":"related-lists","description_en":"A sortable, filterable list of 618 plugins, loaders, processor modules and scripts for Hex-Rays' IDA Pro, published as a GitHub Pages table with a static copy generated into the README. Each entry links to its project, almost always on GitHub, with a short description and, where recorded, its language (C++ or Python), category tags such as decompiler, deobfuscation, loader, debug or integration, and the date the project was last updated. The list grew out of onethawt's idaplugins-list of about 200 plugins.","description_zh":"可排序、可筛选的 Hex-Rays IDA Pro 插件清单，收录 618 个插件、加载器、处理器模块和脚本，以 GitHub Pages 表格发布，并在 README 中生成静态副本。每个条目链接到对应项目（几乎都在 GitHub 上），附简短说明；如有记录，还标出实现语言（C++ 或 Python）、反编译器、反混淆、加载器、调试、集成等分类标签，以及项目的最近更新日期。该清单由 onethawt 约 200 个插件的 idaplugins-list 扩展而来。","entry_url":"https://awesomerea.org/resources/interactive-ida-plugin-list/","entry_url_zh":"https://awesomerea.org/zh/resources/interactive-ida-plugin-list/","evidence_url":"https://github.com/vmallet/ida-plugins/blob/825941fe4eea969fc5909bb790e3e2cc9a86e082/README-template.md","group":"learn","id":"interactive-ida-plugin-list","json_url":"https://awesomerea.org/resources/interactive-ida-plugin-list/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/interactive-ida-plugin-list/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/interactive-ida-plugin-list/index.md","name":"Interactive IDA Plugin List","name_zh":"交互式 IDA 插件清单","record_type":"resource","relationship":"learning","requirements":["The reviewed main commit, of 2024-11-19, refreshed every last-updated date and holds 618 entries in data.js, mirrored in the README. Those dates record each project's latest activity at refresh time, from 2006 to 2024 with 136 in 2024.","Category tags cover 313 entries; the most common are integration (97), decompiler (63), development (51), loader (42) and debug (39). data.js also notes an IDA version for 385 entries, the highest being 8.4, but the table does not show it, and no entry is marked for IDA 9 or later, so compatibility must be checked at each plugin's source.","The list itself is a static page that needs only a browser; tools/gen_readme.py regenerates the README from data.js and depends on demjson. Listed plugins need the user's own IDA installation, and the list records no license, edition or install requirements for them.","LICENSE is MIT, and lib/DEPENDENCIES.md lists the bundled Tabulator 5.1.8, moment.js and jQuery 3.6.0 files as MIT; listed plugins keep their own licenses."],"requirements_zh":["所审阅的 main 分支提交日期为 2024-11-19，刷新了全部最近更新日期；data.js 共有 618 个条目，README 与之同步。这些日期记录的是刷新时各项目的最近活动时间，范围从 2006 年到 2024 年，其中 136 个在 2024 年。","有分类标签的条目为 313 个，最常见的是集成（97）、反编译器（63）、开发（51）、加载器（42）和调试（39）。data.js 还为 385 个条目记录了 IDA 版本，最高为 8.4，但表格不显示该字段，也没有条目标注 IDA 9 或更新版本，因此兼容性须在各插件的来源处核实。","清单本身是静态页面，只需浏览器即可使用；tools/gen_readme.py 根据 data.js 重新生成 README，依赖 demjson。所列插件需要使用者自备 IDA 安装，清单未记录它们的许可证、版本或安装要求。","LICENSE 为 MIT；lib/DEPENDENCIES.md 列出随附的 Tabulator 5.1.8、moment.js 和 jQuery 3.6.0 文件均采用 MIT 许可；所列插件各自保留其许可证。"],"targets":["binary"],"url":"https://github.com/vmallet/ida-plugins","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/miunasu/IDA-Skill/blob/4595864d1423d0f2b9dfb81ede3d814eb02ad22c/README.md","https://github.com/miunasu/IDA-Skill/blob/4595864d1423d0f2b9dfb81ede3d814eb02ad22c/SKILL.md","https://github.com/miunasu/IDA-Skill/blob/4595864d1423d0f2b9dfb81ede3d814eb02ad22c/TOOLS.md","https://github.com/miunasu/IDA-Skill/blob/4595864d1423d0f2b9dfb81ede3d814eb02ad22c/tools/exec_ida.py","https://github.com/miunasu/IDA-Skill/blob/4595864d1423d0f2b9dfb81ede3d814eb02ad22c/tools/init_analysis.py","https://github.com/miunasu/IDA-Skill/blob/4595864d1423d0f2b9dfb81ede3d814eb02ad22c/tools/reai.py","https://github.com/miunasu/IDA-Skill/tree/4595864d1423d0f2b9dfb81ede3d814eb02ad22c/docs","https://github.com/miunasu/IDA-Skill/blob/4595864d1423d0f2b9dfb81ede3d814eb02ad22c/requirements.txt","https://github.com/miunasu/IDA-Skill/blob/4595864d1423d0f2b9dfb81ede3d814eb02ad22c/LICENSE"],"category":"agent-workflows","description_en":"Agent skill that has an AI agent triage malware samples statically in IDA Pro through headless idat. An initialization script builds the IDA database and exports a summary, imports, exports, entry-point decompilation and filtered strings, and an executor runs IDAPython snippets or files against that database. SKILL.md sets a static-only rule, a top-down method and a rule to hand large string dumps to a sub-agent, and bundled scripts add cryptographic-constant detection, an export-size check and REAI, which sends decompiled functions to a configured OpenAI-compatible model to describe them and rename them with an AI_ prefix.","description_zh":"一个智能体技能，让 AI 智能体通过无界面的 idat 在 IDA Pro 中对恶意样本进行静态初步分析。初始化脚本会生成 IDA 数据库，并导出基本信息、导入表、导出表、入口点反编译结果和过滤后的字符串；执行脚本则可对该数据库运行 IDAPython 代码片段或脚本文件。SKILL.md 规定只做静态分析、采用自顶向下的分析方法，并要求把大型字符串列表交给子智能体处理；附带脚本提供加密常量识别、导出函数大小检查，以及 REAI——它把反编译出的函数发送给配置好的 OpenAI 兼容模型，生成功能说明并以 AI_ 前缀重命名。","entry_url":"https://awesomerea.org/resources/ida-skill-malware-analysis/","entry_url_zh":"https://awesomerea.org/zh/resources/ida-skill-malware-analysis/","evidence_url":"https://github.com/miunasu/IDA-Skill/blob/4595864d1423d0f2b9dfb81ede3d814eb02ad22c/README_EN.md","group":"agents","id":"ida-skill-malware-analysis","json_url":"https://awesomerea.org/resources/ida-skill-malware-analysis/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/ida-skill-malware-analysis/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ida-skill-malware-analysis/index.md","name":"IDA-Skill","name_zh":"IDA-Skill IDA Pro 恶意样本分析智能体技能","record_type":"resource","relationship":"independent-agent-integration","requirements":["Reviewed at main commit 4595864 of 2026-10-21; there are no releases or version numbers, and recent commits are titled only \"update\". The skill is a SKILL.md with name and description front matter for agent clients that load skill folders; the README demonstrates it with the author's Spore multi-agent framework and names no other tested client. Its commands use Windows PowerShell here-strings and paths under skills/IDA-Skill/tools/.","Requires a licensed IDA Pro installation whose idat executable is set in config.json (the README example is IDA Pro 9.0's idat64.exe) and Python on the host to launch it; decompilation calls rely on the Hex-Rays decompiler. Users supply the samples, and SKILL.md forbids debugging or executing them. REAI needs openai 1.0+ and an API key, endpoint and model edited into tools/reai.py, and it sends decompiled pseudocode to that endpoint.","API.md and docs/ hold a Markdown IDAPython API reference whose source and terms are not stated, analysis/ holds short method notes for tasks such as protocol, algorithm, firmware and driver analysis, and movie.mp4 is a 25 MB demo video. TOOLS.md tells the agent to run reai check first and not to run analyze when a call chain exceeds 40 functions.","The repository has no tests or CI and reports no evaluated samples or accuracy. REAI names and descriptions are model output that needs analyst review.","LICENSE holds the AGPL-3.0 text, while both READMEs call the project GPL-3.0 and add an education-and-research-only, no-commercial-use condition that neither license contains, so reuse terms are unclear. IDA Pro and model APIs keep their own terms."],"requirements_zh":["审阅基于 main 分支 2026-10-21 的提交 4595864；没有发布版本或版本号，近期提交的说明都只写着“update”。该技能是一个带 name 与 description 前置元数据的 SKILL.md，供可加载技能文件夹的智能体客户端使用；README 用作者自己的 Spore 多智能体框架演示，未列出其他测试过的客户端。命令采用 Windows PowerShell 的 here-string 写法，路径位于 skills/IDA-Skill/tools/ 下。","需要已授权的 IDA Pro，并在 config.json 中填写 idat 可执行文件路径（README 示例为 IDA Pro 9.0 的 idat64.exe），宿主机还需 Python 来启动它；反编译调用依赖 Hex-Rays 反编译器。样本由使用者自备，SKILL.md 禁止调试或运行样本。REAI 需要 openai 1.0+，并须在 tools/reai.py 中写入 API 密钥、接口地址和模型名，它会把反编译伪代码发送到该接口。","API.md 和 docs/ 收录 Markdown 格式的 IDAPython API 参考，未注明来源与使用条款；analysis/ 收录针对协议、算法、固件、驱动等任务的简短方法说明；movie.mp4 是 25 MB 的演示视频。TOOLS.md 要求智能体先运行 reai check，调用链超过 40 个函数时不得运行 analyze。","仓库没有测试或 CI，也未报告任何评估样本或准确率。REAI 给出的函数名和说明属于模型输出，需要分析人员复核。","LICENSE 文件为 AGPL-3.0 文本，而中英文 README 都称项目采用 GPL-3.0，并附加“仅限学习研究、禁止商用”的条件，这两种许可证均无此限制，因此再利用条款并不明确。IDA Pro 与模型 API 适用各自条款。"],"targets":["binary"],"url":"https://github.com/miunasu/IDA-Skill","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/brandonasuncion/Reverse-Engineering-Bluetooth-Protocols/blob/daf7c5c4b9d0d11eed45371324cf368c8bad9703/radar.py","https://github.com/brandonasuncion/Reverse-Engineering-Bluetooth-Protocols/blob/daf7c5c4b9d0d11eed45371324cf368c8bad9703/parseData.py","https://github.com/brandonasuncion/Reverse-Engineering-Bluetooth-Protocols/tree/daf7c5c4b9d0d11eed45371324cf368c8bad9703/BTServerCaptures","https://github.com/brandonasuncion/Reverse-Engineering-Bluetooth-Protocols/blob/daf7c5c4b9d0d11eed45371324cf368c8bad9703/LICENSE"],"category":"learning","description_en":"Write-up of how the author decoded the Bluetooth RFCOMM protocol of a Cobra iRAD 900 radar detector so that a Raspberry Pi 3 could receive alerts without the iOS or Android app. Traffic was logged on a jailbroken iPhone with BTServer and filtered in Wireshark; the README then documents the detector's half-second status payload and the 9-byte reply whose ACK byte must echo the detector's sequence byte, and replays recorded responses to the initial settings sync instead of decoding it. A short beginner's case study on RFCOMM traffic analysis with a rough proof-of-concept script, not a maintained client.","description_zh":"作者记录了如何解析 Cobra iRAD 900 雷达测速预警器的蓝牙 RFCOMM 协议，使 Raspberry Pi 3 无需 iOS 或 Android 应用即可接收警报。作者在越狱 iPhone 上用 BTServer 记录通信，再用 Wireshark 过滤；README 随后说明预警器每半秒发送的状态载荷，以及 9 字节的回复报文，其中 ACK 字节必须回显预警器发来的序号字节；对于连接初期的设置同步，则直接重放录制的响应而不加解析。这是一个面向初学者的 RFCOMM 流量分析简短案例，附带粗略的概念验证脚本，并非持续维护的客户端。","entry_url":"https://awesomerea.org/resources/cobra-irad-bluetooth-protocol-walkthrough/","entry_url_zh":"https://awesomerea.org/zh/resources/cobra-irad-bluetooth-protocol-walkthrough/","evidence_url":"https://github.com/brandonasuncion/Reverse-Engineering-Bluetooth-Protocols/blob/daf7c5c4b9d0d11eed45371324cf368c8bad9703/README.md","group":"learn","id":"cobra-irad-bluetooth-protocol-walkthrough","json_url":"https://awesomerea.org/resources/cobra-irad-bluetooth-protocol-walkthrough/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/cobra-irad-bluetooth-protocol-walkthrough/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cobra-irad-bluetooth-protocol-walkthrough/index.md","name":"Reverse-Engineering a Bluetooth-Enabled Radar Detector","name_zh":"逆向分析蓝牙雷达测速预警器协议","record_type":"resource","relationship":"learning","requirements":["Written in 2017 and last expanded on 2017-07-06; the latest commit, from January 2025, only updates the contact email. It covers one detector model. The alert-type values are only partly identified because the author had no radar gun, the initial sync is replayed rather than decoded, and the README expects the replay data would need re-recording after app settings change.","Following the method needs a Cobra iRAD 900 used with its vendor app and a way to log the phone's Bluetooth traffic; the author used BTServer logging on a jailbroken iPhone 5 and Wireshark. The repository commits the author's three .pklg captures, the Wireshark XML export (data.xml) and the processed packetData.dat; no app or device firmware is included.","radar.py is a self-described extremely rough proof of concept that talks RFCOMM through PyBluez, with the author's detector address and service UUID hard-coded; its setup notes install the Python 2 python-bluez package. parseData.py converts data.xml into packetData.dat, which radar.py loads with pickle, so treat that file as executable input.","MIT License. Cobra's detector, app and trademarks keep their own rights."],"requirements_zh":["写于 2017 年，正文最后一次扩充是在 2017-07-06；2025 年 1 月的最新提交只更新了联系邮箱。内容只涉及一种预警器型号。由于作者没有雷达测速枪，警报类型的取值只识别了一部分；初始同步采用重放而非解析，README 也预计更改应用设置后需要重新录制重放数据。","照此方法操作，需要一台配合厂商应用使用的 Cobra iRAD 900，以及记录手机蓝牙通信的手段；作者使用越狱 iPhone 5 上的 BTServer 日志和 Wireshark。仓库提交了作者录制的三份 .pklg 抓包、Wireshark 导出的 XML（data.xml）以及处理后的 packetData.dat；不含任何应用或设备固件。","radar.py 是作者自称“极其粗糙”的概念验证脚本，通过 PyBluez 走 RFCOMM 通信，并硬编码了作者设备的地址和服务 UUID；其安装说明使用 Python 2 的 python-bluez 软件包。parseData.py 把 data.xml 转换为 packetData.dat，而 radar.py 用 pickle 加载该文件，因此应把它视为可执行输入。","采用 MIT 许可证。Cobra 的预警器、应用和商标仍归其权利人所有。"],"targets":["protocol"],"url":"https://github.com/brandonasuncion/Reverse-Engineering-Bluetooth-Protocols","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/programa-stic/barf-project/blob/9547ef843b8eb021c2c32c140e36173c0b4eafa3/README.md#L196-L320","https://github.com/programa-stic/barf-project/blob/9547ef843b8eb021c2c32c140e36173c0b4eafa3/setup.py","https://github.com/programa-stic/barf-project/blob/9547ef843b8eb021c2c32c140e36173c0b4eafa3/CHANGELOG.md","https://github.com/programa-stic/barf-project/blob/9547ef843b8eb021c2c32c140e36173c0b4eafa3/.travis.yml","https://github.com/programa-stic/barf-project/blob/9547ef843b8eb021c2c32c140e36173c0b4eafa3/Dockerfile","https://github.com/programa-stic/barf-project/blob/9547ef843b8eb021c2c32c140e36173c0b4eafa3/doc/manual/source/installation/index.rst","https://github.com/programa-stic/barf-project/tree/9547ef843b8eb021c2c32c140e36173c0b4eafa3/examples","https://github.com/programa-stic/barf-project/blob/9547ef843b8eb021c2c32c140e36173c0b4eafa3/LICENSE","https://pypi.org/project/barf/0.6.0/"],"category":"binary-libraries","description_en":"Python binary analysis framework that loads ELF and PE programs, disassembles 32- and 64-bit x86 and 32-bit ARM code with Capstone and translates it into the REIL intermediate language, so its analyses do not depend on the source architecture. Modules recover control-flow and call graphs, emulate REIL and turn code fragments into Z3 or CVC4 formulas for checking constraints on registers and memory; release 0.6.0 added basic symbolic execution. Bundled command-line tools recover CFGs and call graphs, replay x86 execution traces and search, classify and verify ROP gadgets.","description_zh":"一个 Python 二进制分析框架：加载 ELF 和 PE 程序，借助 Capstone 反汇编 32 位与 64 位 x86 及 32 位 ARM 代码，并将其翻译为 REIL 中间语言，使各项分析不依赖源架构。其模块可恢复控制流图和调用图、模拟执行 REIL，并把代码片段转换为 Z3 或 CVC4 公式，以检查寄存器和内存上的约束；0.6.0 版加入了基础的符号执行。随附的命令行工具可恢复 CFG 和调用图、重放 x86 执行轨迹，以及搜索、分类和验证 ROP gadget。","entry_url":"https://awesomerea.org/resources/barf/","entry_url_zh":"https://awesomerea.org/zh/resources/barf/","evidence_url":"https://github.com/programa-stic/barf-project/blob/9547ef843b8eb021c2c32c140e36173c0b4eafa3/README.md","group":"tools","id":"barf","json_url":"https://awesomerea.org/resources/barf/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/barf/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/barf/index.md","name":"BARF","name_zh":"BARF 二进制分析与逆向工程框架","record_type":"resource","relationship":"foundation","requirements":["Inactive since 2019: the reviewed master commit, dated 2019-11-24, is tagged v0.6.0 and is the last commit; 0.6.0 is also the newest PyPI release of barf. GitHub does not mark the repository archived, and it has tags but no GitHub release entries, although the README links a v0.6.0 release page. setup.py classifies it as alpha, and the README still calls it under development.","setup.py and the Travis CI configuration target Python 2.7 and 3.6, with Python 3 support added in 0.6.0. The README says all packages were tested on Ubuntu 16.04 x86_64, and the Dockerfile installs it on Ubuntu 18.04 through Python 2 pip. Dependencies include Capstone 3.0.5rc2+, pefile, pyelftools, networkx, pydot and pyparsing, plus at least one of the Z3 or CVC4 solvers; Graphviz is needed for graph output and PyAsmJIT for some tests.","Binaries come from the analyst. The repository bundles small sample binaries built from included C sources under examples/misc/samples and tests, and two challenge binaries for its worked examples: Flare-On 2015 challenge #2 (examples/flareon-2015/2/bin/very_success) and kao's toy project (examples/kaos-toy-project/bin/toyproject.exe). The Sphinx manual is in Spanish and refers to an install.sh script that is not present at the reviewed commit.","BSD 2-Clause license, copyright 2014 Fundación Dr. Manuel Sadosky. The README describes checking instruction translations by running code natively through PyAsmJIT and in the REIL emulator and comparing the final contexts."],"requirements_zh":["自 2019 年起不再活跃：所审阅的 master 提交日期为 2019-11-24，标记为 v0.6.0，也是最后一次提交；0.6.0 同样是 barf 在 PyPI 上的最新版本。GitHub 并未将该仓库标为已归档；仓库有标签但没有 GitHub Release 条目，尽管 README 链接了 v0.6.0 的发布页面。setup.py 将其归为 alpha 阶段，README 仍称其处于开发中。","setup.py 和 Travis CI 配置面向 Python 2.7 与 3.6，Python 3 支持在 0.6.0 中加入。README 称所有软件包均在 Ubuntu 16.04 x86_64 上测试，Dockerfile 则在 Ubuntu 18.04 上通过 Python 2 的 pip 安装。依赖包括 Capstone 3.0.5rc2+、pefile、pyelftools、networkx、pydot 和 pyparsing，并至少需要 Z3 或 CVC4 求解器之一；输出图形需要 Graphviz，部分测试需要 PyAsmJIT。","二进制由分析者自行提供。仓库在 examples/misc/samples 和 tests 下附带由所含 C 源码构建的小型示例二进制，另有两个用于示例演练的挑战程序：Flare-On 2015 第 2 题（examples/flareon-2015/2/bin/very_success）和 kao 的 toy project（examples/kaos-toy-project/bin/toyproject.exe）。Sphinx 手册为西班牙语，其中提到的 install.sh 脚本在所审阅的提交中并不存在。","采用 BSD 2-Clause 许可，版权归 Fundación Dr. Manuel Sadosky（2014）。README 介绍了检验指令翻译的方法：用 PyAsmJIT 原生运行代码，同时在 REIL 模拟器中运行，再比较两者的最终上下文。"],"targets":["binary"],"url":"https://github.com/programa-stic/barf-project","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/unixpickle/cbyge/blob/459be53a48ca75f543f9367094b778559403c1bf/controller.go","https://github.com/unixpickle/cbyge/blob/459be53a48ca75f543f9367094b778559403c1bf/packet.go","https://github.com/unixpickle/cbyge/blob/459be53a48ca75f543f9367094b778559403c1bf/login.go","https://github.com/unixpickle/cbyge/blob/459be53a48ca75f543f9367094b778559403c1bf/server/main.go","https://github.com/unixpickle/cbyge/tree/459be53a48ca75f543f9367094b778559403c1bf/proxy","https://github.com/unixpickle/cbyge/blob/459be53a48ca75f543f9367094b778559403c1bf/go.mod","https://github.com/unixpickle/cbyge/blob/459be53a48ca75f543f9367094b778559403c1bf/LICENSE"],"category":"reconstruction-cases","description_en":"Reimplements the cloud control path of the C by GE (now Cync) smart-bulb app as a Go library and a small self-hosted web app. The author reports decompiling the Android app with Apktool, finding its JSON HTTP API for login and device lists and a separate raw TCP protocol to the vendor's server, then working out that protocol's type-and-length message framing and packet encodings from proxied traffic and the Smali code. The resulting API lists devices, reads their status and sets power, brightness, color tone and RGB color.","description_zh":"以 Go 库和一个可自行部署的小型网页应用，重新实现 C by GE（现名 Cync）智能灯泡应用的云端控制通道。作者称先用 Apktool 反编译 Android 应用，找到用于登录和设备列表的 JSON HTTP 接口，以及另一条连接厂商服务器的原始 TCP 协议，再结合代理记录的通信和 Smali 代码，推断出该协议以类型和长度开头的消息格式及各类数据包编码。最终的 API 可列出设备、读取状态，并设置开关、亮度、色温和 RGB 颜色。","entry_url":"https://awesomerea.org/resources/cbyge-c-by-ge-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/cbyge-c-by-ge-protocol-case/","evidence_url":"https://github.com/unixpickle/cbyge/blob/459be53a48ca75f543f9367094b778559403c1bf/README.md","group":"cases","id":"cbyge-c-by-ge-protocol-case","json_url":"https://awesomerea.org/resources/cbyge-c-by-ge-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/cbyge-c-by-ge-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cbyge-c-by-ge-protocol-case/index.md","name":"cbyge: reconstructing the C by GE smart-bulb cloud protocol","name_zh":"cbyge：重建 C by GE 智能灯泡云端协议","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the 2021-11-09 main commit; there are no releases. The README states that the code was not informed by a protocol specification and may stop working or fail on some networks and devices. Only the author's own lightbulbs were examined, so the outlets, sensors and switches the same app controls were not reverse-engineered.","Requires the user's own C by GE or Cync account with devices already set up in the official app; newer accounts need the email two-factor login, which the web app or the login_2fa command performs. Control goes through the vendor's cloud rather than local Bluetooth or LAN. The Android app, traffic captures and account data are not in the repository; the README quotes only short Smali excerpts and one status packet from the author's devices.","Builds with Go; go.mod declares Go 1.14 and two small dependencies. The server directory serves a browser front end and a JSON API protected by an optional web password, and the repository also keeps the small TCP and HTTP logging proxies used during the investigation.","There are no tests or CI. The README reports that others have used the API successfully in some cases and that the author found it faster and more reliable than the official app.","BSD-2-Clause, copyright 2021 Alexander Nichol. This is an independent client, not recovered vendor source; the vendor's apps, services and trademarks keep their own rights."],"requirements_zh":["审阅对象为 2021-11-09 的 main 提交，没有发布版。README 声明代码并非依据协议规范编写，可能失效，也可能在某些网络或设备上无法工作。作者只研究了自己拥有的灯泡，同一应用可控制的插座、传感器和开关均未逆向。","需要用户自己的 C by GE 或 Cync 账号，且设备已在官方应用中完成设置；较新的账号需通过邮箱双重验证登录，可由网页应用或 login_2fa 命令完成。控制经由厂商云端，而非本地蓝牙或局域网。Android 应用、通信抓包和账号数据都不在仓库中；README 只引用了少量 Smali 片段和一条来自作者设备的状态数据包。","使用 Go 构建；go.mod 声明 Go 1.14 和两个小型依赖。server 目录提供浏览器前端和 JSON API，可选设置网页密码保护；仓库还保留了调查期间使用的小型 TCP 与 HTTP 记录代理。","仓库没有测试或 CI。README 称已有其他人在部分情况下成功使用该 API，作者也认为它比官方应用更快、更可靠。","采用 BSD-2-Clause 许可，版权归 Alexander Nichol（2021）。这是独立客户端，并非恢复出的厂商源码；厂商的应用、服务和商标保留各自权利。"],"targets":["app","protocol"],"url":"https://github.com/unixpickle/cbyge","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/alexander-pick/shannon_modem_loader/blob/2dc27f01782eaaa55ef626e15ef6b4154bf0e392/shannon_load.py","https://github.com/alexander-pick/shannon_modem_loader/blob/2dc27f01782eaaa55ef626e15ef6b4154bf0e392/shannon_postprocess.py","https://github.com/alexander-pick/shannon_modem_loader/blob/2dc27f01782eaaa55ef626e15ef6b4154bf0e392/shannon_pal_reconstructor.py","https://github.com/alexander-pick/shannon_modem_loader/blob/2dc27f01782eaaa55ef626e15ef6b4154bf0e392/shannon_scatterload.py","https://github.com/alexander-pick/shannon_modem_loader/blob/2dc27f01782eaaa55ef626e15ef6b4154bf0e392/shannon_mpu.py","https://github.com/alexander-pick/shannon_modem_loader/blob/2dc27f01782eaaa55ef626e15ef6b4154bf0e392/install.sh","https://github.com/alexander-pick/shannon_modem_loader/tree/2dc27f01782eaaa55ef626e15ef6b4154bf0e392/sig","https://github.com/alexander-pick/shannon_modem_loader/blob/2dc27f01782eaaa55ef626e15ef6b4154bf0e392/LICENSE","https://github.com/alexander-pick/shannon_modem_loader/releases/tag/01.2025"],"category":"firmware","description_en":"IDA Pro loader and post-processing scripts for Samsung Exynos \"Shannon\" baseband modem images that carry a TOC header, including crash dumps. The loader maps the TOC entries to aligned segments and entry points; after auto-analysis the post-processor restores debug-trace structures, names functions from strings and debug-log calls, rebuilds the MPU table and memory map, comments MMU-related coprocessor instructions, performs the ARM scatter-load with its decompression, and labels platform-abstraction-layer and task-initialization functions. The README adds the author's notes on ShannonOS, the PAL and the move from Cortex-R to Cortex-A cores.","description_zh":"用于 IDA Pro 的加载器和后处理脚本，处理带 TOC 头的三星 Exynos“Shannon”基带调制解调器镜像，也支持崩溃转储。加载器把 TOC 条目映射为对齐的段并设置入口点；自动分析完成后，后处理程序会恢复调试跟踪结构，依据字符串和调试日志调用为函数命名，重建 MPU 表和内存映射，为 MMU 相关的协处理器指令添加注释，执行 ARM 分散加载及其解压，并标注平台抽象层与任务初始化函数。README 还附有作者对 ShannonOS、PAL 以及从 Cortex-R 转向 Cortex-A 内核的说明。","entry_url":"https://awesomerea.org/resources/shannon-modem-loader/","entry_url_zh":"https://awesomerea.org/zh/resources/shannon-modem-loader/","evidence_url":"https://github.com/alexander-pick/shannon_modem_loader/blob/2dc27f01782eaaa55ef626e15ef6b4154bf0e392/README.md","group":"tools","id":"shannon-modem-loader","json_url":"https://awesomerea.org/resources/shannon-modem-loader/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/shannon-modem-loader/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/shannon-modem-loader/index.md","name":"Shannon Modem Loader for IDA Pro","name_zh":"Shannon 基带镜像 IDA Pro 加载器","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 01.2025, published 2025-01-01; the reviewed main commit of 2025-01-03 only adds IDA Essential 9.0 to the installer's search list. The README calls the code work in progress and reports testing on a larger set of images from older models such as the G8700 and S7 up to the S22 and S24, with task identification working on recent images.","The README reports testing with IDA Pro 9.0, IDA Pro 8.3 to 8.4 SP2 and IDA Home ARM, and says 7.x with the revamped IDAPython API might work. install.sh copies the loader, Python modules and signatures into a Linux IDA installation; on macOS or Windows the files are copied by hand following the README's table.","Users supply a TOC-format Shannon modem image or crash dump; the repository contains no modem firmware. The README reports that a complete analysis takes about 10 minutes on average hardware.","sig/ holds 17 premade FLIRT signature files for ARM Compiler/RVCT runtime functions, from version 3.1 to 5.06u7. The post-processor reads the image's RVCT build string, applies the matching signature, and on Linux offers to use the include directory of a matching legacy ARM compiler installed in the user's home directory. There are no tests or CI.","MIT License. Modem firmware, IDA Pro and ARM compilers keep their own terms."],"requirements_zh":["审阅时最新版本为 01.2025，发布于 2025-01-01；所审阅的 main 分支 2025-01-03 提交只是把 IDA Essential 9.0 加入安装脚本的搜索列表。README 称代码仍在开发中，并报告已用较大量镜像测试，涵盖从 G8700、S7 等旧机型到 S22、S24，较新镜像的任务识别也能正常工作。","README 报告已在 IDA Pro 9.0、IDA Pro 8.3 至 8.4 SP2 及 IDA Home ARM 上测试，并称采用新版 IDAPython API 的 7.x 也许可用。install.sh 会把加载器、Python 模块和签名复制到 Linux 上的 IDA 安装目录；在 macOS 或 Windows 上需按 README 中的表格手动复制。","需由使用者提供 TOC 格式的 Shannon 基带镜像或崩溃转储；仓库不含任何基带固件。README 称在普通硬件上完整分析一个镜像约需 10 分钟。","sig/ 收录 17 个预制的 FLIRT 签名文件，覆盖 ARM Compiler／RVCT 3.1 至 5.06u7 的运行库函数。后处理程序会读取镜像中的 RVCT 构建号并应用匹配的签名；在 Linux 上，若用户主目录中装有对应的旧版 ARM 编译器，还会提示是否把其 include 目录设为头文件路径。仓库没有测试或 CI。","采用 MIT 许可证。基带固件、IDA Pro 与 ARM 编译器适用各自的条款。"],"targets":["firmware"],"url":"https://github.com/alexander-pick/shannon_modem_loader","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/Decompollaborate/rabbitizer/blob/724a49a5b4dbfb99f1a9e6992e63964fd29c90c8/CHANGELOG.md","https://github.com/Decompollaborate/rabbitizer/blob/724a49a5b4dbfb99f1a9e6992e63964fd29c90c8/pyproject.toml","https://github.com/Decompollaborate/rabbitizer/blob/724a49a5b4dbfb99f1a9e6992e63964fd29c90c8/Cargo.toml","https://github.com/Decompollaborate/rabbitizer/blob/724a49a5b4dbfb99f1a9e6992e63964fd29c90c8/Makefile","https://github.com/Decompollaborate/rabbitizer/blob/724a49a5b4dbfb99f1a9e6992e63964fd29c90c8/.github/workflows/make.yml","https://github.com/Decompollaborate/rabbitizer/blob/724a49a5b4dbfb99f1a9e6992e63964fd29c90c8/.github/workflows/unit_tests_py.yml","https://github.com/Decompollaborate/rabbitizer/blob/724a49a5b4dbfb99f1a9e6992e63964fd29c90c8/.github/workflows/check_tables.yml","https://github.com/Decompollaborate/rabbitizer/blob/724a49a5b4dbfb99f1a9e6992e63964fd29c90c8/LICENSE","https://github.com/Decompollaborate/rabbitizer/releases/tag/1.16.2","https://pypi.org/project/rabbitizer/1.16.2/","https://crates.io/crates/rabbitizer/1.16.2","https://github.com/ethteck/splat/blob/7548b9771e6f8418507b23434187fb07741af6d4/pyproject.toml","https://github.com/Decompollaborate/spimdisasm/blob/4b5d4c68eeb9f9eae14b3bb713971433ae2c3c43/requirements.txt"],"category":"binary-libraries","description_en":"MIPS instruction decoder written in C that never allocates on the heap, with Python, C++ and Rust bindings in the same repository and the stated aim of producing matching assembly. It decodes one instruction word at a time, focusing on MIPS I to III with partial MIPS IV support, and also handles the N64 RSP, the PlayStation's R3000 GTE, the PSP's R4000 Allegrex and the PS2's R5900; it offers validation checks, instruction-grouping queries, configurable pseudo-instructions and register names, and small helpers for building pointer and symbol detection. Matching-decompilation tooling builds on it: splat and spimdisasm both list it as a Python dependency.","description_zh":"使用 C 编写、完全不在堆上分配内存的 MIPS 指令解码器，同一仓库还提供 Python、C++ 和 Rust 绑定，目标是生成可匹配的汇编。它逐条解码指令字，重点支持 MIPS I 至 III，部分支持 MIPS IV，还能处理 N64 的 RSP、PlayStation 的 R3000 GTE、PSP 的 R4000 Allegrex 以及 PS2 的 R5900；提供指令有效性检查、按特征分组查询指令、可配置的伪指令与寄存器命名，以及用于自建指针和符号检测的小工具。匹配式反编译工具以它为基础：splat 和 spimdisasm 都把它列为 Python 依赖。","entry_url":"https://awesomerea.org/resources/rabbitizer/","entry_url_zh":"https://awesomerea.org/zh/resources/rabbitizer/","evidence_url":"https://github.com/Decompollaborate/rabbitizer/blob/724a49a5b4dbfb99f1a9e6992e63964fd29c90c8/README.md","group":"tools","id":"rabbitizer","json_url":"https://awesomerea.org/resources/rabbitizer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/rabbitizer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rabbitizer/index.md","name":"rabbitizer","name_zh":"rabbitizer MIPS 指令解码器","record_type":"resource","relationship":"foundation","requirements":["Latest stable release at review: 1.16.2, published 2026-05-29 on GitHub, PyPI and crates.io, which matches the reviewed 1.x commit. A 2.0.0 alpha series (2.0.0-alpha.9, 2026-05-20) is published from a separate Rust branch; splat and spimdisasm both pin versions below 2.0.0.","Install with pip install rabbitizer or cargo add rabbitizer. The README gives Python 3.9 as the minimum, although pyproject.toml still declares >=3.4, and building the Python bindings from source needs the Python development headers. The C and C++ libraries build with make and clang (C11 and C++17), and the Rust crate declares Rust 1.66.0. Instruction tables for every binding are generated from templates in tables/, and CI checks that the generated files are current.","Input is raw 32-bit instruction words, so callers must take code from their own binaries, choose the CPU variant and handle addresses and symbols themselves. Pseudo-instructions that expand to more than one instruction are deliberately unsupported; the README says output should match, reports that RSP output reassembles to matching code with armips, and calls MIPS IV support partial.","GitHub Actions build the C code with warnings as errors on Ubuntu 22.04 and run build-info, logic and instruction checks, and Python unit tests run on Linux, macOS and Windows; tests/asm holds assembly samples for the GTE, Allegrex and R5900. The README's reference list points to third-party CPU manuals and documentation hosted elsewhere.","MIT."],"requirements_zh":["审阅时最新稳定版为 1.16.2，于 2026-05-29 发布到 GitHub、PyPI 和 crates.io，与所审阅的 1.x 提交一致。2.0.0 预览系列（2.0.0-alpha.9，2026-05-20）由另一条 Rust 分支发布；splat 和 spimdisasm 都把版本限制在 2.0.0 以下。","可用 pip install rabbitizer 或 cargo add rabbitizer 安装。README 称最低需要 Python 3.9，而 pyproject.toml 仍声明 >=3.4；从源码构建 Python 绑定需要 Python 开发头文件。C 与 C++ 库使用 make 和 clang 构建（C11 与 C++17），Rust crate 声明 Rust 1.66.0。各语言绑定的指令表由 tables/ 中的模板生成，CI 会检查生成文件是否为最新。","输入为原始 32 位指令字，调用方需自行从自己的二进制中取出代码、选择 CPU 变体，并处理地址和符号。会展开为多条指令的伪指令明确不予支持；README 称输出应当可匹配，报告 RSP 输出经 armips 重新汇编后可得到匹配代码，并说明 MIPS IV 仅部分支持。","GitHub Actions 在 Ubuntu 22.04 上以“警告视为错误”构建 C 代码，并运行构建信息、逻辑和指令检查；Python 单元测试在 Linux、macOS 和 Windows 上运行；tests/asm 收有 GTE、Allegrex 和 R5900 的汇编样例。README 的参考资料列表指向托管在别处的第三方 CPU 手册和文档。","采用 MIT 许可。"],"targets":["binary","game"],"url":"https://github.com/Decompollaborate/rabbitizer","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/wilbowes/EchoMuse/blob/4bbf7ff6eb9c97faea9080e0a2a6032921ef8108/emos/README.md","https://github.com/wilbowes/EchoMuse/blob/4bbf7ff6eb9c97faea9080e0a2a6032921ef8108/docs/rooting.md","https://github.com/wilbowes/EchoMuse/blob/4bbf7ff6eb9c97faea9080e0a2a6032921ef8108/JOURNAL.md","https://github.com/wilbowes/EchoMuse/blob/4bbf7ff6eb9c97faea9080e0a2a6032921ef8108/porting/README.md","https://github.com/wilbowes/EchoMuse/blob/4bbf7ff6eb9c97faea9080e0a2a6032921ef8108/CONTRIBUTING.md","https://github.com/wilbowes/EchoMuse/blob/4bbf7ff6eb9c97faea9080e0a2a6032921ef8108/controller/config.yaml","https://github.com/wilbowes/EchoMuse/blob/4bbf7ff6eb9c97faea9080e0a2a6032921ef8108/.github/workflows/ci.yml","https://github.com/wilbowes/EchoMuse/blob/4bbf7ff6eb9c97faea9080e0a2a6032921ef8108/.github/workflows/emos-release.yml","https://github.com/wilbowes/EchoMuse/blob/4bbf7ff6eb9c97faea9080e0a2a6032921ef8108/docs/uat-results/2.26.0.md","https://github.com/wilbowes/EchoMuse/blob/4bbf7ff6eb9c97faea9080e0a2a6032921ef8108/NOTICE.md","https://github.com/wilbowes/EchoMuse/blob/4bbf7ff6eb9c97faea9080e0a2a6032921ef8108/LICENSE","https://github.com/wilbowes/EchoMuse/releases/tag/v2.18.1","https://github.com/wilbowes/EchoMuse/releases/tag/emos-v0.10"],"category":"reconstruction-cases","description_en":"Replaces the software on an unlocked second-generation Amazon Echo Dot (2016, codename biscuit) so it works as a local Home Assistant voice satellite over the ESPHome API: EchoMuse's own Go firmware drives the microphones, speaker, LED ring and buttons, and a controller on the LAN handles wake words, devices and a dashboard. Its default emOS mode swaps Amazon's Android userspace for the project's own init and busybox while keeping the Dot's kernel from the owner's boot image. An engineering journal records how codec routes, the mute key and other hardware behavior were worked out by measuring the device and diffing the mixer and DAPM state while stock FireOS plays a sound.","description_zh":"替换已解锁的第二代 Amazon Echo Dot（2016 年款，代号 biscuit）上的软件，使其通过 ESPHome API 成为本地 Home Assistant 语音终端：EchoMuse 自己的 Go 固件驱动麦克风、扬声器、LED 灯环和按键，局域网中的控制器负责唤醒词、设备管理和仪表盘。默认的 emOS 模式用项目自有的 init 和 busybox 取代 Amazon 的 Android 用户空间，同时保留取自机主自身启动镜像的 Dot 内核。工程日志记录了如何通过在设备上测量，并在原厂 FireOS 播放声音时对比混音器和 DAPM 状态，摸清编解码器通路、静音键等硬件行为。","entry_url":"https://awesomerea.org/resources/echomuse-echo-dot-voice-satellite-case/","entry_url_zh":"https://awesomerea.org/zh/resources/echomuse-echo-dot-voice-satellite-case/","evidence_url":"https://github.com/wilbowes/EchoMuse/blob/4bbf7ff6eb9c97faea9080e0a2a6032921ef8108/README.md","group":"cases","id":"echomuse-echo-dot-voice-satellite-case","json_url":"https://awesomerea.org/resources/echomuse-echo-dot-voice-satellite-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/echomuse-echo-dot-voice-satellite-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/echomuse-echo-dot-voice-satellite-case/index.md","name":"EchoMuse: replacement software that turns the Echo Dot 2nd gen into a Home Assistant voice satellite","name_zh":"EchoMuse：把第二代 Echo Dot 变成 Home Assistant 语音终端的替换软件","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed main commit 4bbf7ff (2026-10-27) is in active development. At review the latest stable device firmware is v2.18.1 (2026-10-15) and emOS 0.10 (2026-10-02), the controller add-on declares 2.26.3, and early-access v2.19.0-ea.2 and emos-v0.11-ea.1 builds followed. Only the Echo Dot 2nd gen is supported; README calls ports to the Echo Dot 3, Echo 2 and Echo Show 8 in progress and lists open issues, including no WPA3 on emOS under FireOS 6.","Needs the user's own Echo Dot 2nd gen, first unlocked with third-party tools (firebreak running R0rt1z2's amonet-biscuit); README says this is done at the user's own risk and can soft-brick the device. The setup wizard keeps a copy of the device's own boot partition and builds the emOS image from its kernel and device trees, and emOS mounts bionic and tinyalsa read-only from the device's /system. The emOS README says no bootable image is published because it would contain Amazon's kernel; releases carry the project's own firmware binary, init and userspace payload, and busybox with its source.","Requires a working Home Assistant with an Assist pipeline, an always-on host for the controller as a Home Assistant add-on or Docker container, and Chrome or Edge for the one-time WebUSB setup. Source builds use the project's Docker compiler image for the Go device firmware, Python 3.12 for the controller, and emos/build.sh, whose release workflow compiles the init with a pinned Android NDK.","CI runs the controller pytest suite with coverage floors, dashboard and Go device tests, dependency audits and image builds, and the journal and acceptance-test reports describe runs on the maintainer's own devices. It does not reproduce Alexa, and no Amazon software or service is recovered.","MIT, with vendored SpeexDSP (BSD-3-Clause), an ONNX Runtime header, aioesphomeapi protocol buffers and a CC BY 4.0 timer sound listed in NOTICE.md; the project states it is not affiliated with Amazon. README says EchoMuse is written largely with Claude, directed by the maintainer, and that more than half the commits carry a Co-Authored-By: Claude line."],"requirements_zh":["所审阅的 main 提交 4bbf7ff（2026-10-27）仍在积极开发。审阅时最新稳定版设备固件为 v2.18.1（2026-10-15），emOS 为 0.10（2026-10-02），控制器加载项声明版本 2.26.3，其后又发布了抢先体验版 v2.19.0-ea.2 和 emos-v0.11-ea.1。目前只支持第二代 Echo Dot；README 称 Echo Dot 3、Echo 2 和 Echo Show 8 的移植仍在进行，并列出未解决的问题，例如 FireOS 6 下的 emOS 不支持 WPA3。","需要使用者自己的第二代 Echo Dot，并先用第三方工具（运行 R0rt1z2 的 amonet-biscuit 的 firebreak）解锁；README 称此步骤风险自负，可能导致设备软变砖。安装向导会保存设备自身启动分区的副本，并用其中的内核和设备树构建 emOS 镜像；emOS 以只读方式挂载设备 /system 中的 bionic 和 tinyalsa。emOS README 称不发布可启动镜像，因为其中会包含 Amazon 的内核；发布内容只有项目自己的固件程序、init、用户空间负载包，以及附带源码的 busybox。","需要配置好 Assist 流程的 Home Assistant、一台常开主机以 Home Assistant 加载项或 Docker 容器运行控制器，以及一次性 WebUSB 设置所用的 Chrome 或 Edge。从源码构建时，Go 设备固件使用项目的 Docker 编译器镜像，控制器使用 Python 3.12，emOS 使用 emos/build.sh，其发布流程用固定版本的 Android NDK 编译 init。","CI 运行带覆盖率下限的控制器 pytest 测试、仪表盘与 Go 设备测试、依赖审计和镜像构建；工程日志和验收测试报告记录了在维护者自有设备上的运行。它并不复现 Alexa，也没有恢复任何 Amazon 软件或服务。","采用 MIT 许可证；NOTICE.md 列出内置的 SpeexDSP（BSD-3-Clause）、ONNX Runtime 头文件、aioesphomeapi 协议缓冲区定义和一段 CC BY 4.0 计时器音效。项目声明与 Amazon 无关。README 称 EchoMuse 主要在维护者指导下由 Claude 编写，超过一半的提交带有 Co-Authored-By: Claude 署名。"],"targets":["firmware"],"url":"https://github.com/wilbowes/EchoMuse","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/clearbluejar/ghidrecomp/blob/7a82556b052268a53c734a769bd14eeabc1a4888/setup.cfg","https://github.com/clearbluejar/ghidrecomp/blob/7a82556b052268a53c734a769bd14eeabc1a4888/ghidrecomp/sast.py","https://github.com/clearbluejar/ghidrecomp/blob/7a82556b052268a53c734a769bd14eeabc1a4888/Dockerfile","https://github.com/clearbluejar/ghidrecomp/blob/7a82556b052268a53c734a769bd14eeabc1a4888/.github/workflows/pytest-devcontainer-all.yml","https://github.com/clearbluejar/ghidrecomp/tree/7a82556b052268a53c734a769bd14eeabc1a4888/tests","https://github.com/clearbluejar/ghidrecomp/blob/7a82556b052268a53c734a769bd14eeabc1a4888/LICENSE","https://github.com/clearbluejar/ghidrecomp/releases/tag/v0.5.9","https://pypi.org/project/ghidrecomp/0.5.9/"],"category":"native-analysis","description_en":"Python command-line decompiler that drives Ghidra through pyghidra to decompile every function of a binary into separate C files, or into one C file and header with Ghidra's C++ exporter, keeping the Ghidra project so later runs can reuse the analysis. Options filter functions by regex, apply PDB symbols from a local file or from Microsoft, Chromium, Mozilla, Intel, NVIDIA and AMD symbol servers, apply extra GDT data-type archives, write Mermaid call-graph Markdown, generate BSim function signatures, and scan the decompiled code with Semgrep rules into SARIF reports.","description_zh":"通过 pyghidra 驱动 Ghidra 的 Python 命令行反编译工具：把二进制中的所有函数分别反编译为独立的 C 文件，或借助 Ghidra 的 C++ 导出器生成一个 C 文件和头文件，并保留 Ghidra 项目以便后续运行复用分析结果。可按正则筛选函数，从本地文件或 Microsoft、Chromium、Mozilla、Intel、NVIDIA、AMD 符号服务器应用 PDB 符号，加载额外的 GDT 数据类型库，输出 Mermaid 调用图 Markdown，生成 BSim 函数签名，并用 Semgrep 规则扫描反编译代码、输出 SARIF 报告。","entry_url":"https://awesomerea.org/resources/ghidrecomp/","entry_url_zh":"https://awesomerea.org/zh/resources/ghidrecomp/","evidence_url":"https://github.com/clearbluejar/ghidrecomp/blob/7a82556b052268a53c734a769bd14eeabc1a4888/README.md","group":"tools","id":"ghidrecomp","json_url":"https://awesomerea.org/resources/ghidrecomp/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ghidrecomp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghidrecomp/index.md","name":"ghidrecomp","name_zh":"ghidrecomp 命令行 Ghidra 批量反编译工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.5.9, published to PyPI and GitHub on 2026-01-06; the reviewed main commit is that tag. setup.cfg requires Python 3.10+ and pyghidra 2.2.1+ and marks the project as alpha; the CodeQL option is a placeholder that only prints a coming-soon message.","Needs a separate Ghidra installation and the Java runtime it requires, found through GHIDRA_INSTALL_DIR. The Dockerfile and devcontainer build on the author's ghidra-python image and pin pyghidra 2.2.1 for Ghidra 11; CI runs pytest in that image for the latest Ghidra and for 11.3, 11.3.2 and 11.4.2. SAST scanning needs Semgrep, installed with the sast extra.","Binaries to decompile are the analyst's own; symbol lookups contact the listed public symbol servers unless --skip-symbols is set. The tests bundle tests/data/afd.sys.10.0.22621.1415, a Microsoft Windows driver build also used in the README examples, an AArch64 ls binary and an ntddk_64.gdt data-type archive; these files keep their publishers' terms.","The README presents the output as decompilations for research and analysis and makes no recompilation claim; the tests check function counts, call graphs, one signature after GDT application, BSim and SAST output. GPL-3.0 (LICENSE); Ghidra and Semgrep keep their own licenses."],"requirements_zh":["审阅时最新版本为 v0.5.9，于 2026-01-06 发布到 PyPI 和 GitHub；所审阅的 main 分支提交即该标签。setup.cfg 要求 Python 3.10+ 和 pyghidra 2.2.1+，并将项目标为 alpha 阶段；CodeQL 选项只是占位，运行时仅提示即将推出。","需要另行安装 Ghidra 及其所需的 Java 运行环境，并通过 GHIDRA_INSTALL_DIR 指定位置。Dockerfile 和 devcontainer 基于作者的 ghidra-python 镜像，并在 Ghidra 11 下固定 pyghidra 2.2.1；CI 在该镜像中针对最新版 Ghidra 以及 11.3、11.3.2 和 11.4.2 运行 pytest。SAST 扫描需要 Semgrep，可通过 sast 可选依赖安装。","待反编译的二进制须由分析者自备；除非设置 --skip-symbols，符号查询会访问所列的公共符号服务器。测试数据附带 tests/data/afd.sys.10.0.22621.1415（一个 Microsoft Windows 驱动版本，README 示例也使用它）、一个 AArch64 ls 二进制和 ntddk_64.gdt 数据类型库；这些文件遵循各自发布者的条款。","README 将输出定位为用于研究和分析的反编译结果，未声称可重新编译；测试检查的是函数数量、调用图、应用 GDT 后的一个函数签名、BSim 和 SAST 输出。采用 GPL-3.0（LICENSE）；Ghidra 和 Semgrep 各自保留其许可证。"],"targets":["binary"],"url":"https://github.com/clearbluejar/ghidrecomp","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/jd-opensource/arkdecompiler/blob/8afb36903127b56edee362ce67aacd823610d3e4/xabc.cpp","https://github.com/jd-opensource/arkdecompiler/blob/8afb36903127b56edee362ce67aacd823610d3e4/scripts/prepare.sh","https://github.com/jd-opensource/arkdecompiler/tree/8afb36903127b56edee362ce67aacd823610d3e4/patches","https://github.com/jd-opensource/arkdecompiler/blob/8afb36903127b56edee362ce67aacd823610d3e4/docker/Dockerfile","https://github.com/jd-opensource/arkdecompiler/blob/8afb36903127b56edee362ce67aacd823610d3e4/build.sh","https://github.com/jd-opensource/arkdecompiler/tree/8afb36903127b56edee362ce67aacd823610d3e4/tests","https://github.com/jd-opensource/arkdecompiler/blob/8afb36903127b56edee362ce67aacd823610d3e4/autotests/scantstests.py","https://github.com/jd-opensource/arkdecompiler/tree/8afb36903127b56edee362ce67aacd823610d3e4/ui","https://github.com/jd-opensource/arkdecompiler/blob/8afb36903127b56edee362ce67aacd823610d3e4/LICENSE","https://github.com/jd-opensource/arkdecompiler/releases/tag/v0.1.0"],"category":"android","description_en":"Decompiler for HarmonyOS NEXT apps, published under the jd-opensource GitHub organization, that turns Panda binary files (.abc Ark bytecode) back into ArkTS source. Its xabc program parses the bytecode, lifts it into the Ark compiler's Panda IR for analysis, rebuilds an ArkTS syntax tree with loop, class, lexical-environment and module-variable reconstruction, and prints that tree as ArkTS code. A cross-platform GUI, built with either Electron or Tauri, adds a file explorer, function and symbol lists, cross-references, search and a hex view; the README links Black Hat Arsenal presentations from 2025 and 2026.","description_zh":"面向 HarmonyOS NEXT（纯血鸿蒙）应用的反编译器，发布于 jd-opensource GitHub 组织下，可将 Panda 二进制文件（.abc 方舟字节码）还原为 ArkTS 源码。其 xabc 程序解析字节码，将其提升为方舟编译器的 Panda IR 以便分析，再通过循环、类、词法环境和模块变量的重建生成 ArkTS 语法树，最后输出为 ArkTS 代码。跨平台图形界面可基于 Electron 或 Tauri 构建，提供文件浏览、函数与符号列表、交叉引用、搜索和十六进制视图；README 链接了 2025 年和 2026 年的 Black Hat Arsenal 展示。","entry_url":"https://awesomerea.org/resources/arkdecompiler/","entry_url_zh":"https://awesomerea.org/zh/resources/arkdecompiler/","evidence_url":"https://github.com/jd-opensource/arkdecompiler/blob/8afb36903127b56edee362ce67aacd823610d3e4/README.md","group":"tools","id":"arkdecompiler","json_url":"https://awesomerea.org/resources/arkdecompiler/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/arkdecompiler/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/arkdecompiler/index.md","name":"arkdecompiler","name_zh":"arkdecompiler 鸿蒙 NEXT 反编译器","record_type":"resource","relationship":"foundation","requirements":["Reviewed at the 2026-07-23 master commit. The README marks all instructions as supported and a basic GUI as done, while covering enough corner cases from the official compiler and test262 is still in progress. Release v0.1.0 (2026-04-23) attaches Electron and Tauri GUI builds for Linux x86, macOS arm64 and Windows x86; decompilation runs only on Linux and disassembly on all three, and the GUI needs the paths of the command-line tools configured first.","Building xabc is tested on Ubuntu 22.04 inside an OpenHarmony arkcompiler standalone build: scripts/prepare.sh installs the repo tool, syncs the ark-standalone-build manifest from Gitee, downloads its prebuilts and checks out OpenHarmony v6.0.0.1-Release, and the files in patches/ must be applied to arkcompiler runtime_core, ets_frontend and third_party/protobuf before gn and ninja build xabc. The Dockerfile instead uses Ubuntu 20.04 and the OpenHarmony 5.1.0 release.","xabc reads one .abc file and writes ArkTS plus an AST dump, defaulting to demo.abc and arkdemo.ts. The documented workflow compiles the user's own demo.ts with OpenHarmony's es2abc and decompiles the result; any other bytecode must come from the user's own app packages, and the repository ships no apps or .abc samples.","tests/ holds 18 TypeScript samples for features such as classes, loops, generators, async functions and modules. autotests/scantstests.py compiles cases from the test262 and OpenHarmony TypeScript submodules and records whether decompilation exits cleanly, fails, crashes or times out, with a blacklist of skipped cases. No pass rates or semantic-equivalence results are reported, and the repository has no CI workflow.","Apache-2.0; the OpenHarmony components it builds against keep their own licenses."],"requirements_zh":["审阅对象为 2026-07-23 的 master 提交。README 标注已支持全部指令并完成基础图形界面，而充分覆盖官方编译器和 test262 中的边界情况仍在进行中。v0.1.0 版（2026-04-23）附带 Linux x86、macOS arm64 和 Windows x86 的 Electron 与 Tauri 图形界面构建；反编译仅支持 Linux，反汇编三个平台均可，使用图形界面前需先配置命令行工具的路径。","xabc 的构建在 Ubuntu 22.04 上测试，需置于 OpenHarmony 方舟编译器独立构建环境中：scripts/prepare.sh 会安装 repo 工具、从 Gitee 同步 ark-standalone-build 清单、下载其预编译工具，并切换到 OpenHarmony v6.0.0.1-Release；之后须将 patches/ 中的补丁应用到 arkcompiler 的 runtime_core、ets_frontend 以及 third_party/protobuf，再用 gn 和 ninja 构建 xabc。Dockerfile 则使用 Ubuntu 20.04 和 OpenHarmony 5.1.0 版本。","xabc 读取一个 .abc 文件，输出 ArkTS 代码和 AST 转储，默认分别为 demo.abc 和 arkdemo.ts。文档中的流程是用 OpenHarmony 的 es2abc 编译用户自己的 demo.ts，再对结果反编译；其他字节码须来自用户自己的应用包，仓库不附带任何应用或 .abc 样例。","tests/ 收录 18 个 TypeScript 样例，涵盖类、循环、生成器、异步函数和模块等特性。autotests/scantstests.py 会编译 test262 和 OpenHarmony TypeScript 子模块中的用例，记录反编译是否正常退出、失败、崩溃或超时，并用黑名单跳过部分用例。仓库未报告通过率或语义等价结果，也没有 CI 工作流。","采用 Apache-2.0 许可；其构建所依赖的 OpenHarmony 组件保留各自许可证。"],"targets":["app"],"url":"https://github.com/jd-opensource/arkdecompiler","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/vivisect/vivisect/blob/66c93f0c1caa949434b9b1ba8bb64c8bad0eb3d9/pyproject.toml","https://github.com/vivisect/vivisect/blob/v1.3.2/pyproject.toml","https://github.com/vivisect/vivisect/blob/66c93f0c1caa949434b9b1ba8bb64c8bad0eb3d9/CHANGELOG.rst","https://github.com/vivisect/vivisect/tree/66c93f0c1caa949434b9b1ba8bb64c8bad0eb3d9/vtrace/platforms/windll","https://github.com/vivisect/vivisect/blob/66c93f0c1caa949434b9b1ba8bb64c8bad0eb3d9/vtrace/platforms/win32.py","https://github.com/vivisect/vivisect/tree/66c93f0c1caa949434b9b1ba8bb64c8bad0eb3d9/vtrace/platforms/darwin","https://github.com/vivisect/vivisect/tree/66c93f0c1caa949434b9b1ba8bb64c8bad0eb3d9/envi/archs","https://github.com/vivisect/vivisect/tree/66c93f0c1caa949434b9b1ba8bb64c8bad0eb3d9/vivisect/parsers","https://github.com/vivisect/vivisect/blob/66c93f0c1caa949434b9b1ba8bb64c8bad0eb3d9/.circleci/config.yml","https://github.com/vivisect/vivisect/blob/66c93f0c1caa949434b9b1ba8bb64c8bad0eb3d9/COPYRIGHT","https://pypi.org/project/vivisect/1.3.2/"],"category":"native-analysis","description_en":"Pure-Python reverse-engineering framework that combines the vivisect static analyzer, the vtrace debugging library and the vdb debugger. Vivisect loads PE, ELF, Mach-O, Intel HEX, S-record and raw blob files into workspaces, disassembles and emulates code through envi architecture modules for x86, AMD64, ARM, Thumb, AArch64, MSP430, H8 and Z80, and adds symbolic execution, a Qt GUI and a remote workspace server. vtrace drives processes on Windows, Linux, FreeBSD, macOS and Solaris and has GDB-stub and VMware backends.","description_zh":"纯 Python 编写的逆向工程框架，集成了 vivisect 静态分析器、vtrace 调试库和 vdb 调试器。Vivisect 可将 PE、ELF、Mach-O、Intel HEX、S-record 和原始数据块文件载入工作区，借助 envi 架构模块对 x86、AMD64、ARM、Thumb、AArch64、MSP430、H8 和 Z80 代码进行反汇编和模拟执行，并提供符号执行、Qt 图形界面和远程工作区服务器。vtrace 可在 Windows、Linux、FreeBSD、macOS 和 Solaris 上控制进程，另有 GDB stub 和 VMware 后端。","entry_url":"https://awesomerea.org/resources/vivisect/","entry_url_zh":"https://awesomerea.org/zh/resources/vivisect/","evidence_url":"https://github.com/vivisect/vivisect/blob/66c93f0c1caa949434b9b1ba8bb64c8bad0eb3d9/README.md","group":"tools","id":"vivisect","json_url":"https://awesomerea.org/resources/vivisect/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/vivisect/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/vivisect/index.md","name":"Vivisect","name_zh":"Vivisect 二进制分析与调试框架","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 1.3.2, uploaded to PyPI on 2026-03-31 from tag v1.3.2 (the project publishes no GitHub release pages); it requires Python 3.8+ and pins PyQt5 5.15.7 for the GUI, and AArch64 support arrived in 1.3.0. The reviewed master commit (2026-09-03) is ten commits later and, still labelled 1.3.2, requires Python 3.11+ and PyQt6 6.5+. Install with pip install \"vivisect[gui]\"; releases before 1.0.0 are Python 2 only, and Python 2 workspaces are typically not loadable in Python 3.","Bundled helper libraries: vtrace/platforms/windll holds Microsoft’s dbghelp.dll and symsrv.dll for amd64 and i386, committed since 2014 and loaded by the Windows vtrace backend for symbol handling, and pyproject.toml packages them into the PyPI distribution. They are Microsoft binaries under Microsoft’s terms, not the project’s Apache-2.0 license, and no Microsoft license or notice accompanies them. The macOS backend ships a prebuilt machhelper.dylib next to its C source and Makefile.","Input is binaries or firmware images the user supplies. CircleCI runs the unittest suite on Python 3.11 against sample binaries from a separately cloned vivtestfiles repository, and a GitHub Actions workflow checks formatting; documentation is on Read the Docs.","Apache-2.0 license (COPYRIGHT names invisigoth, 2014); the Microsoft DLLs keep their own terms."],"requirements_zh":["审阅时最新版本为 1.3.2，于 2026-03-31 由 v1.3.2 标签上传到 PyPI（项目不发布 GitHub 发行版页面）；该版本要求 Python 3.8+，图形界面固定使用 PyQt5 5.15.7，AArch64 支持自 1.3.0 起提供。所审阅的 master 提交（2026-09-03）晚十个提交，版本号仍为 1.3.2，但要求 Python 3.11+ 和 PyQt6 6.5+。可用 pip install \"vivisect[gui]\" 安装；1.0.0 之前的版本仅支持 Python 2，Python 2 的工作区通常无法在 Python 3 中载入。","随附的辅助库：vtrace/platforms/windll 中有 amd64 和 i386 版的 Microsoft dbghelp.dll 和 symsrv.dll，自 2014 年起提交，由 Windows 版 vtrace 后端载入用于符号处理，pyproject.toml 也会把它们打包进 PyPI 发行包。这些是受 Microsoft 条款约束的 Microsoft 二进制文件，不适用项目的 Apache-2.0 许可证，仓库也未附带 Microsoft 的许可证或声明。macOS 后端在其 C 源码和 Makefile 旁附带一个预构建的 machhelper.dylib。","输入是使用者自行提供的二进制或固件镜像。CircleCI 在 Python 3.11 上运行 unittest 测试套件，使用另行克隆的 vivtestfiles 仓库中的示例二进制；GitHub Actions 工作流检查代码格式；文档托管在 Read the Docs。","采用 Apache-2.0 许可证（COPYRIGHT 署名 invisigoth，2014 年）；Microsoft 的 DLL 仍受其自身条款约束。"],"targets":["binary","firmware"],"url":"https://github.com/vivisect/vivisect","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/Ayrx/JNIAnalyzer/blob/7170ce6bd138caa6be702e357b3aeb74231ae12f/JNIAnalyzer/ghidra_scripts/JNIAnalyzer.java","https://github.com/Ayrx/JNIAnalyzer/blob/7170ce6bd138caa6be702e357b3aeb74231ae12f/JNIAnalyzer/ghidra_scripts/RegisterNatives.java","https://github.com/Ayrx/JNIAnalyzer/blob/7170ce6bd138caa6be702e357b3aeb74231ae12f/JNIAnalyzer/ghidra_scripts/TraceRegisterNatives.java","https://github.com/Ayrx/JNIAnalyzer/tree/7170ce6bd138caa6be702e357b3aeb74231ae12f/JNIAnalyzer/lib","https://github.com/Ayrx/JNIAnalyzer/blob/7170ce6bd138caa6be702e357b3aeb74231ae12f/JNIAnalyzer/data/README.txt"],"category":"android","description_en":"A Ghidra extension by Terry Chia (Ayrx) with scripts for analyzing the native libraries of Android NDK apps. JNIAnalyzer.java uses the bundled JADX decompiler to extract the signatures of all native methods declared in an APK and applies the return types, parameter names and parameter types to the matching functions in the loaded .so. RegisterNatives.java uses Ghidra's P-Code API to find RegisterNatives calls and lay down the JNINativeMethod structures for dynamically registered methods, and TraceRegisterNatives.java applies the output of the author's trace_registernatives tool. A JNI data-type archive sets up the jni.h types.","description_zh":"Terry Chia（Ayrx）编写的 Ghidra 扩展，包含用于分析 Android NDK 应用原生库的脚本。JNIAnalyzer.java 使用随附的 JADX 反编译器从 APK 中提取所有原生方法的签名，并把返回类型、参数名和参数类型应用到已加载 .so 中的匹配函数。RegisterNatives.java 借助 Ghidra 的 P-Code API 查找 RegisterNatives 调用，为动态注册的方法铺设 JNINativeMethod 结构；TraceRegisterNatives.java 则应用作者 trace_registernatives 工具的输出。随附的 JNI 数据类型归档用于设置 jni.h 类型。","entry_url":"https://awesomerea.org/resources/jnianalyzer/","entry_url_zh":"https://awesomerea.org/zh/resources/jnianalyzer/","evidence_url":"https://github.com/Ayrx/JNIAnalyzer/blob/7170ce6bd138caa6be702e357b3aeb74231ae12f/README.md","group":"tools","id":"jnianalyzer","json_url":"https://awesomerea.org/resources/jnianalyzer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/jnianalyzer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/jnianalyzer/index.md","name":"JNIAnalyzer","name_zh":"JNIAnalyzer Ghidra 扩展","record_type":"resource","relationship":"foundation","requirements":["Reviewed at master 7170ce6 (2023-01-02); there are no releases and the default branch has had no commits since that date, so treat it as unmaintained and check compatibility with current Ghidra. Build the extension with Gradle against a Ghidra install (gradle -PGHIDRA_INSTALL_DIR=<dir>), then install the produced zip through Ghidra's Install Extensions dialog and restart.","Analysis runs inside Ghidra on an Android native library the analyst has loaded and is authorized to examine. JNIAnalyzer.java reads a supplied APK with JADX to recover native-method signatures; the README warns it overwrites existing function return types and parameter names and types, and that a function annotated JNIAnalyzer:IGNORE is skipped. RegisterNatives.java is marked experimental.","No third-party target files are committed. The repository vendors its Java build dependencies as JARs under JNIAnalyzer/lib/, including JADX, smali/baksmali, dexlib2, dx, apksig, Guava, ANTLR, RxJava, logback and others, each keeping its own open-source license; the committed android-5.1.jar is a 4-entry stub (a single android/R$style class plus JADX resources), not the Android SDK. The Gradle wrapper JAR is also committed, and data/jni_all.gdt is a Ghidra data-type archive of the JNI types.","The repository has no license file, so reuse terms are unstated; the vendored dependency JARs remain under their respective licenses. A Binary Ninja port exists in the author's separate binja-JNIAnalyzer repository."],"requirements_zh":["审阅基于 master 分支 7170ce6（2023-01-02）；项目没有发布版本，默认分支自该日期起再无提交，应视为缺乏维护，并自行核实与当前 Ghidra 的兼容性。使用 Gradle 针对某个 Ghidra 安装构建扩展（gradle -PGHIDRA_INSTALL_DIR=<目录>），再通过 Ghidra 的 Install Extensions 对话框安装生成的 zip 并重启。","分析在 Ghidra 中进行，针对分析者已加载且有权分析的 Android 原生库。JNIAnalyzer.java 通过 JADX 读取所提供的 APK 以恢复原生方法签名；README 提醒它会覆盖已有的函数返回类型、参数名和参数类型，并会跳过注释为 JNIAnalyzer:IGNORE 的函数。RegisterNatives.java 标注为实验性。","仓库未提交任何第三方目标文件。它将 Java 构建依赖以 JAR 形式收录在 JNIAnalyzer/lib/ 下，包括 JADX、smali/baksmali、dexlib2、dx、apksig、Guava、ANTLR、RxJava、logback 等，各自保留其开源许可；其中提交的 android-5.1.jar 只有 4 个条目（一个 android/R$style 类加若干 JADX 资源），并非 Android SDK。Gradle wrapper JAR 也被提交，data/jni_all.gdt 是 JNI 类型的 Ghidra 数据类型归档。","仓库没有许可证文件，复用条款未作说明；收录的依赖 JAR 仍适用各自的许可。作者另有一个 Binary Ninja 移植版，位于其独立的 binja-JNIAnalyzer 仓库。"],"targets":["app","binary"],"url":"https://github.com/Ayrx/JNIAnalyzer","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/bigbigmdm/IMSProg/blob/a9c0a5d943e0f2d05a4012f215a2801a6c4d51e1/ChangeLog","https://github.com/bigbigmdm/IMSProg/blob/a9c0a5d943e0f2d05a4012f215a2801a6c4d51e1/build_all.sh","https://github.com/bigbigmdm/IMSProg/blob/a9c0a5d943e0f2d05a4012f215a2801a6c4d51e1/.github/workflows/build.yml","https://github.com/bigbigmdm/IMSProg/blob/a9c0a5d943e0f2d05a4012f215a2801a6c4d51e1/IMSProg_database_update/main.cpp","https://github.com/bigbigmdm/IMSProg/blob/a9c0a5d943e0f2d05a4012f215a2801a6c4d51e1/LICENSE","https://github.com/bigbigmdm/IMSProg/releases/tag/v1.9.1"],"category":"firmware","description_en":"Qt desktop programmer that reads, writes, erases and verifies I2C, SPI and MicroWire EEPROMs, FeRAM, DataFlash and SPI NOR/NAND flash chips through low-cost CH341A, CH347T and FT232H USB programmers. It identifies SPI flash by JEDEC ID against an editable chip database, shows SFDP, status and security registers, scans NAND bad blocks, and keeps the chip image in a hex-editor buffer that can save or load parts of the image and import or export Intel HEX. Companion programs edit the chip database and update it from the author's web server.","description_zh":"基于 Qt 的桌面编程器，通过低成本的 CH341A、CH347T 和 FT232H USB 编程器读取、写入、擦除和校验 I2C、SPI 与 MicroWire EEPROM、FeRAM、DataFlash 以及 SPI NOR/NAND 闪存芯片。它根据 JEDEC ID 在可编辑的芯片数据库中识别 SPI 闪存，显示 SFDP、状态寄存器和安全寄存器，可扫描 NAND 坏块，并把芯片镜像放在十六进制编辑缓冲区中，支持按区段保存或载入以及导入导出 Intel HEX。配套程序用于编辑芯片数据库，并从作者的网站更新数据库。","entry_url":"https://awesomerea.org/resources/imsprog/","entry_url_zh":"https://awesomerea.org/zh/resources/imsprog/","evidence_url":"https://github.com/bigbigmdm/IMSProg/blob/a9c0a5d943e0f2d05a4012f215a2801a6c4d51e1/README.md","group":"tools","id":"imsprog","json_url":"https://awesomerea.org/resources/imsprog/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/imsprog/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/imsprog/index.md","name":"IMSProg","name_zh":"IMSProg EEPROM／闪存芯片编程器","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v1.9.1, published 2026-09-04 with a Flatpak and a macOS arm64 build; the ChangeLog says it added FT232H v1.2 support. The reviewed main commit is 41 commits ahead, mostly macOS packaging and path fixes. README lists Debian, Fedora, openSUSE, AUR, ALT, ROSA and RED OS packages and an Ubuntu PPA; a Windows build is maintained separately by a third party.","Builds with CMake, g++ or clang, Qt5 or Qt6 with the Linguist tools, libusb 1.0, libftdi, pkg-config and udev on Linux, where README says Debian before 11 and Ubuntu before 20.04 are unsupported, or with Homebrew packages and the Xcode command-line tools on macOS. build_all.sh compiles and installs the programmer, database editor and updater with the udev rules and chip database. CI builds Ubuntu 22.04, 24.04 and 26.04 DEB packages, a Fedora 44 RPM checked with rpmlint and a macOS 15 build; no automated tests are published.","Needs one of the supported USB programmers and, per README, adapters for 93xxx MicroWire, 45xxx DataFlash, WSON-8 SPI NAND and 1.8 V chips. CH347 devices do not support MicroWire, and Verify and Check erase do not skip bad blocks on NAND chips. Images come from the user's own chips; the repository holds no firmware dumps, only its IMSProg.Dat chip database, which the updater downloads from the author's antenna-dvb-t2.ru site.","GPL-3.0-or-later per README, with SNANDer-derived parts under GPL-2.0+, QHexEdit2 under LGPL-2.1 and CH347 code under BSD-1-Clause. IMSProg transfers chip contents only; analysing a dump needs other tools."],"requirements_zh":["审阅时最新版本为 v1.9.1，发布于 2026-09-04，提供 Flatpak 和 macOS arm64 构建；ChangeLog 称该版本新增 FT232H v1.2 支持。所审阅的 main 提交比该版本多 41 个提交，主要是 macOS 打包和路径修复。README 列出 Debian、Fedora、openSUSE、AUR、ALT、ROSA 和 RED OS 软件包以及 Ubuntu PPA；Windows 版本由第三方另行维护。","在 Linux 上构建需要 CMake、g++ 或 clang、Qt5 或 Qt6 及其 Linguist 工具、libusb 1.0、libftdi、pkg-config 和 udev，README 称不支持 Debian 11 和 Ubuntu 20.04 之前的版本；在 macOS 上需要 Homebrew 软件包和 Xcode 命令行工具。build_all.sh 会编译并安装编程器、数据库编辑器和更新程序，以及 udev 规则和芯片数据库。CI 构建 Ubuntu 22.04、24.04、26.04 的 DEB 包、经 rpmlint 检查的 Fedora 44 RPM 包和 macOS 15 构建；未公开自动化测试。","需要一台受支持的 USB 编程器；按 README 所述，93xxx MicroWire、45xxx DataFlash、WSON-8 SPI NAND 和 1.8 V 芯片还需相应转接座。CH347 设备不支持 MicroWire；对 NAND 芯片执行 Verify 和 Check erase 时不会跳过坏块。镜像来自使用者自己的芯片；仓库不含任何固件转储，只有 IMSProg.Dat 芯片数据库，更新程序从作者的 antenna-dvb-t2.ru 网站下载该文件。","README 称采用 GPL-3.0-or-later，其中源自 SNANDer 的部分为 GPL-2.0+，QHexEdit2 为 LGPL-2.1，CH347 代码为 BSD-1-Clause。IMSProg 只负责读写芯片内容，分析转储需要其他工具。"],"targets":["firmware"],"url":"https://github.com/bigbigmdm/IMSProg","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/sgayou/rbasefind/blob/a661118d19f0e2b282c48f2e8019d493868d4dd2/src/lib.rs","https://github.com/sgayou/rbasefind/blob/a661118d19f0e2b282c48f2e8019d493868d4dd2/src/main.rs","https://github.com/sgayou/rbasefind/blob/a661118d19f0e2b282c48f2e8019d493868d4dd2/Cargo.toml","https://github.com/sgayou/rbasefind/blob/a661118d19f0e2b282c48f2e8019d493868d4dd2/.gitignore","https://github.com/sgayou/rbasefind/blob/a661118d19f0e2b282c48f2e8019d493868d4dd2/LICENSE","https://github.com/sgayou/rbasefind/releases/tag/v0.1.3"],"category":"firmware","description_en":"Multithreaded Rust command-line tool that brute-forces the load address of a flat 32-bit firmware image, reimplementing mncoppola's basefind.py and rsaxvc's basefind.cpp. It records the offsets of ASCII strings, reads every 32-bit word as a possible pointer, and ranks candidate base addresses by how many strings each one would turn into pointer targets. The README calls it a simple heuristic that works rather well on some ARM (non-Thumb) binaries and will not work miracles.","description_zh":"一个多线程 Rust 命令行工具，以暴力搜索推算平面 32 位固件镜像的加载基址，是 mncoppola 的 basefind.py 和 rsaxvc 的 basefind.cpp 的重新实现。它记录 ASCII 字符串的偏移，把每个 32 位字都当作可能的指针，再按候选基址能让多少字符串成为指针目标来排序。README 称这只是一个简单的启发式方法，对部分 ARM（非 Thumb）二进制效果相当好，但不会创造奇迹。","entry_url":"https://awesomerea.org/resources/rbasefind/","entry_url_zh":"https://awesomerea.org/zh/resources/rbasefind/","evidence_url":"https://github.com/sgayou/rbasefind/blob/a661118d19f0e2b282c48f2e8019d493868d4dd2/README.md","group":"tools","id":"rbasefind","json_url":"https://awesomerea.org/resources/rbasefind/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/rbasefind/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rbasefind/index.md","name":"rbasefind","name_zh":"rbasefind 固件基址搜索工具","record_type":"resource","relationship":"foundation","requirements":["Latest tag at review: v0.1.3, on the reviewed master commit of 2020-09-27, with no GitHub release binaries and no crates.io package. Build it from source with Cargo; Cargo.toml declares no edition and Cargo.lock is ignored, so dependencies such as clap 2.33 and regex 1.3 resolve within their version ranges at build time. The README's TODO lists an automatic mode that would detect endianness and narrow the offset around the best match.","Input is a flat 32-bit image supplied by the user, little-endian by default or big-endian with -b; no firmware or samples are included. By default it takes NUL-terminated printable ASCII strings of at least 10 characters, reads 4-byte-aligned words from the start of the file as pointers, and tests candidate bases every 0x1000 bytes across the 32-bit address space, splitting the range across one thread per CPU core. The whole file is loaded into memory.","Results are a ranked list of candidate bases with match counts, 10 by default, that the analyst must confirm. The README's example takes about 41 seconds on 8 threads for one image and shows that raising the minimum string length to 100 cuts the time at some cost in accuracy. Unit tests cover only the address-range split between threads, and there is no CI.","MIT License (2017, Scott Gayou). Analyzed firmware keeps its own terms."],"requirements_zh":["审阅时最新标签为 v0.1.3，位于所审阅的 master 分支 2020-09-27 提交上；GitHub 上没有发布二进制，crates.io 上也没有对应软件包。需用 Cargo 从源码构建；Cargo.toml 未声明 edition，Cargo.lock 被忽略，因此 clap 2.33、regex 1.3 等依赖会在构建时按版本范围解析。README 的待办事项列出一种自动模式：根据最大交集判断字节序，并在最佳匹配附近自动缩小步长。","输入是使用者提供的平面 32 位镜像，默认按小端解释，-b 选项改为大端；仓库不含任何固件或样例。默认情况下，它提取至少 10 个字符、以 NUL 结尾的可打印 ASCII 字符串，从文件开头按 4 字节对齐读取每个字作为指针，并以 0x1000 字节为步长在整个 32 位地址空间测试候选基址，按 CPU 核心数分配线程划分搜索范围。整个文件会被读入内存。","结果是带匹配数的候选基址排序列表（默认 10 个），需要分析人员确认。README 示例中，在 8 线程下处理一个镜像约用 41 秒，并展示把最小字符串长度提高到 100 可大幅缩短耗时，但会牺牲一定准确性。单元测试只覆盖线程间的地址范围划分，没有 CI。","采用 MIT 许可证（2017 年，Scott Gayou）。被分析的固件适用其自身条款。"],"targets":["firmware"],"url":"https://github.com/sgayou/rbasefind","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/matiaspl/LinkPi-ENCx/blob/a30d20161f6d28805fbb2c040250a7145b5f6655/README.md#L292-L312","https://github.com/matiaspl/LinkPi-ENCx/blob/a30d20161f6d28805fbb2c040250a7145b5f6655/v4l2-ctl"],"category":"learning","description_en":"A single-README notebook, kept since 2021 by an owner with no ties to the vendor, on the internals of LinkPi ENC-series video encoders and the TBS 2603SE, which share one firmware line; the author's first units use the F3520D board with a HiSilicon Hi3520DV400. It covers the Linux system and PHP web interface, undocumented features and internal pages, intercom and tally interfaces, default accounts and network services with hardening steps, HiSilicon media-pipeline diagnostics, board pinouts including the UART, firmware recovery, and translated release notes for firmware updates from 2020 to 2026.","description_zh":"一份自 2021 年起维护的单 README 笔记，作者是与厂商无关的设备用户，记录 LinkPi ENC 系列视频编码器和 TBS 2603SE 的内部结构；这些设备共用同一条固件线，作者最初的设备采用搭载 HiSilicon Hi3520DV400 的 F3520D 主板。内容涵盖 Linux 系统与 PHP 网页界面、未公开功能和内部页面、对讲与 tally 接口、默认账户与网络服务及加固步骤、HiSilicon 媒体管线诊断、包括 UART 在内的主板引脚定义、固件恢复，以及 2020 至 2026 年固件更新的翻译版发布说明。","entry_url":"https://awesomerea.org/resources/linkpi-encx-unofficial-docs/","entry_url_zh":"https://awesomerea.org/zh/resources/linkpi-encx-unofficial-docs/","evidence_url":"https://github.com/matiaspl/LinkPi-ENCx/blob/a30d20161f6d28805fbb2c040250a7145b5f6655/README.md","group":"learn","id":"linkpi-encx-unofficial-docs","json_url":"https://awesomerea.org/resources/linkpi-encx-unofficial-docs/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/linkpi-encx-unofficial-docs/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/linkpi-encx-unofficial-docs/index.md","name":"Link Pi ENCx encoders (unofficial documentation)","name_zh":"Link Pi ENCx 编码器非官方逆向文档","record_type":"resource","relationship":"learning","requirements":["The reviewed main commit, of 2026-07-13, added release notes for firmware 5.2.0 (build 20260531). Findings come from the author's and contributors' own devices; several sections are marked outdated, the release notes are machine-translated from Chinese, and the README says TinyENC1 appears to ship different firmware that the author has not examined.","The procedures need the reader's own encoder and shell access to it. Firmware upgrade and full-flash packages come only from LinkPi's official download pages; none are committed. The repository's only other file is v4l2-ctl, a prebuilt ARM uClibc build of the V4L2 control utility added in 2021 without source or a license notice.","The README lists the vendor's default credentials and exposed services as a security warning, says LinkPi did not answer the author's reports, and gives hardening steps. A 2026 update credits AI for in-progress LD_PRELOAD timestamp hooks.","There is no license file, so the notes state no reuse terms; LinkPi firmware, software and documentation keep the vendor's rights."],"requirements_zh":["所审阅的 main 分支提交日期为 2026-07-13，添加了 5.2.0 固件（build 20260531）的发布说明。这些发现来自作者及贡献者自己的设备；若干章节已标注为过时，发布说明由中文机器翻译而来，README 还提到 TinyENC1 似乎使用不同的固件，作者尚未研究。","文中操作需要读者自有的编码器及其 shell 访问权限。固件升级包和完整刷机包只能从 LinkPi 官方下载页面获取，仓库中没有提交任何固件。仓库中唯一的其他文件是 v4l2-ctl，即 2021 年添加的 V4L2 控制工具 ARM uClibc 预编译版本，未附源码或许可声明。","README 将厂商默认凭据和暴露的服务作为安全警告列出，称 LinkPi 未回应作者的报告，并给出加固步骤。2026 年的一次更新称正在开发的 LD_PRELOAD 时间戳钩子得益于 AI 帮助。","仓库没有许可证文件，笔记未声明复用条款；LinkPi 固件、软件和文档保留厂商的权利。"],"targets":["firmware"],"url":"https://github.com/matiaspl/LinkPi-ENCx","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/symgraph/BinAssist/blob/0f0b01a38cafde662b4ee8a2a35557c3b18df7ad/docs/index.md","https://github.com/symgraph/BinAssist/blob/0f0b01a38cafde662b4ee8a2a35557c3b18df7ad/docs/tabs/settings-tab.md","https://github.com/symgraph/BinAssist/blob/0f0b01a38cafde662b4ee8a2a35557c3b18df7ad/docs/tabs/query-tab.md","https://github.com/symgraph/BinAssist/blob/0f0b01a38cafde662b4ee8a2a35557c3b18df7ad/docs/tabs/semantic-graph-tab.md","https://github.com/symgraph/BinAssist/blob/0f0b01a38cafde662b4ee8a2a35557c3b18df7ad/docs/tabs/symgraph-tab.md","https://github.com/symgraph/BinAssist/blob/0f0b01a38cafde662b4ee8a2a35557c3b18df7ad/docs/binassist-on-windows.md","https://github.com/symgraph/BinAssist/blob/0f0b01a38cafde662b4ee8a2a35557c3b18df7ad/plugin.json","https://github.com/symgraph/BinAssist/blob/0f0b01a38cafde662b4ee8a2a35557c3b18df7ad/requirements.txt","https://github.com/symgraph/BinAssist/blob/0f0b01a38cafde662b4ee8a2a35557c3b18df7ad/src/services/models/provider_types.py","https://github.com/symgraph/BinAssist/blob/0f0b01a38cafde662b4ee8a2a35557c3b18df7ad/src/services/tool_approval_service.py","https://github.com/symgraph/BinAssist/blob/0f0b01a38cafde662b4ee8a2a35557c3b18df7ad/LICENSE","https://github.com/symgraph/BinAssist/releases/tag/2.1.0","https://github.com/symgraph/GhidrAssist/blob/798a5d708124535aeb2ad8b7580ee08cfd14171b/README.md","https://github.com/symgraph/IDAssist/blob/09dd910d70016c7b3f7e8bc01a4d5bc1035ec302/README.md"],"category":"agent-workflows","description_en":"Binary Ninja plugin by Jason Tang, who also wrote GhidrAssist and IDAssist, that adds a BinAssist sidebar for LLM-assisted analysis of the open binary. Its tabs explain functions at the LLIL, MLIL and HLIL levels and individual instructions, keep chats with context macros, MCP tool calling and an optional ReAct agent mode, propose function and variable renames, retypes and structures with confidence scores for review before they are applied, and build a semantic graph of functions and calls with community detection and source-to-sink taint paths, alongside retrieval over reference documents the analyst adds. A SymGraph tab imports and publishes names, graph data and documents through the hosted symgraph.ai service.","description_zh":"由 GhidrAssist 与 IDAssist 作者 Jason Tang 开发的 Binary Ninja 插件，在侧边栏加入 BinAssist 面板，借助大语言模型分析当前打开的二进制。各标签页可在 LLIL、MLIL 和 HLIL 层级解释函数，也能解释单条指令；保存支持上下文宏、MCP 工具调用和可选 ReAct 智能体模式的对话；为函数和变量提出带置信度评分的重命名、类型修改及结构体建议，并在审阅后应用；还能构建涵盖函数与调用关系的语义图谱，进行社区检测并查找从输入源到危险调用点的污点路径，同时可检索分析人员添加的参考文档。SymGraph 标签页则通过托管的 symgraph.ai 服务导入和发布名称、图谱数据及文档。","entry_url":"https://awesomerea.org/resources/binassist/","entry_url_zh":"https://awesomerea.org/zh/resources/binassist/","evidence_url":"https://github.com/symgraph/BinAssist/blob/0f0b01a38cafde662b4ee8a2a35557c3b18df7ad/README.md","group":"agents","id":"binassist","json_url":"https://awesomerea.org/resources/binassist/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/binassist/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binassist/index.md","name":"BinAssist","name_zh":"BinAssist Binary Ninja 大模型辅助分析插件","record_type":"resource","relationship":"independent-agent-integration","requirements":["Latest release at review: 2.1.0, published 2026-05-25 as a source-only GitHub release without notes; the reviewed master commit is four commits later and adds a default Claude Code CLI path on macOS and updated model guidance. plugin.json requires Binary Ninja build 5000 or later and lists Linux, Windows and macOS, while the README gives both 4000 and 5000 as the minimum; the README names Linux as the primary development platform and calls Windows and macOS less tested. The packages in requirements.txt, including openai, anthropic, mcp 1.23.3 and whoosh, plus pywin32 on Windows, are installed into Binary Ninja's Python, and a separate Windows guide covers installing them into its user site-packages.","Analysis needs at least one configured LLM provider. The provider types cover Anthropic, OpenAI, Gemini and xAI API keys, OpenAI and Gemini subscription sign-in through OAuth, the local Claude Code CLI, a LiteLLM proxy for services such as AWS Bedrock and Azure, and local Ollama, LM Studio or Open WebUI endpoints; the documentation's provider tables also list an Anthropic OAuth type that the source does not define. Explanations, chats, Actions, agent runs and the graph's Semantic Analysis step send code from the binary to the active provider, so only a local or self-hosted endpoint keeps it on the machine, while the documentation describes re-indexing, Security Analysis and community detection without the model. The settings documentation places the analysis and RLHF feedback SQLite databases and the RAG index in a .binaryninja/binassist folder of the user's home directory, with analysis results keyed by the binary's SHA-256.","Programs come from the user's own Binary Ninja sessions; the plugin supplies no target binaries. Actions suggestions are applied only for the rows the user selects. Chats can reach MCP servers over streamable HTTP or SSE or launch them over stdio, and the documentation recommends the author's separate BinAssistMCP server for Binary Ninja analysis tools. In the Query tab, calls to tools whose names do not look read-only wait for an allow-once, allow-for-session or deny decision unless the chat accepts all tools, and this classification relies on tool-name keywords.","The SymGraph tab looks up the binary by SHA-256 without a key, but importing, publishing and uploading need a SymGraph API key, and publishing uploads the raw binary bytes, not the .bndb database, when the service does not already hold them. The repository has no tests or CI workflows. MIT, per LICENSE and plugin.json; Binary Ninja, model providers and SymGraph keep their own terms. The repository moved from jtang613/BinAssist."],"requirements_zh":["审阅时最新版本为 2.1.0，于 2026-05-25 以仅含源码、未附说明的 GitHub 发布形式推出；所审阅的 master 提交比它晚四个提交，增加了 macOS 上 Claude Code CLI 的默认路径并更新了模型建议。plugin.json 要求 Binary Ninja 5000 或更高版本，并列出 Linux、Windows 和 macOS，而 README 同时写有 4000 和 5000 两个最低版本；README 称 Linux 是主要开发平台，Windows 和 macOS 测试较少。requirements.txt 中的依赖（包括 openai、anthropic、mcp 1.23.3 和 whoosh，Windows 上另需 pywin32）需装入 Binary Ninja 的 Python 环境，另有一份 Windows 指南说明如何安装到其用户 site-packages 目录。","分析需要至少配置一个大模型服务。服务类型包括 Anthropic、OpenAI、Gemini 和 xAI 的 API 密钥，通过 OAuth 登录的 OpenAI 与 Gemini 订阅，本地 Claude Code CLI，可接入 AWS Bedrock、Azure 等服务的 LiteLLM 代理，以及本地 Ollama、LM Studio 或 Open WebUI 端点；文档的服务类型表还列出了一个源码中并未定义的 Anthropic OAuth 类型。解释、对话、Actions、智能体运行以及图谱的 Semantic Analysis 步骤都会把二进制中的代码发送给当前服务，只有本地或自托管端点才能让代码不离开本机；文档所述的重建索引、Security Analysis 和社区检测则无需调用模型。设置文档称，分析数据库、RLHF 反馈 SQLite 数据库和 RAG 索引位于用户主目录下的 .binaryninja/binassist 文件夹中，分析结果按二进制的 SHA-256 存储。","待分析程序来自用户自己的 Binary Ninja 会话，插件本身不提供任何目标二进制。Actions 的建议只对用户选中的行生效。对话可通过 streamable HTTP 或 SSE 连接 MCP 服务器，也可通过 stdio 启动；文档推荐搭配作者另行发布的 BinAssistMCP 服务器获取 Binary Ninja 分析工具。在 Query 标签页中，名称看起来并非只读的工具，调用前需等待用户选择允许一次、本会话允许或拒绝，除非该对话开启了接受所有工具，而这种分类依赖工具名称中的关键词。","SymGraph 标签页无需密钥即可按 SHA-256 查询二进制，但导入、发布和上传需要 SymGraph API 密钥；若服务中尚无该文件，发布时会上传原始二进制字节，而非 .bndb 数据库。仓库没有测试或 CI 工作流。依据 LICENSE 和 plugin.json 采用 MIT 许可；Binary Ninja、各模型服务和 SymGraph 仍受各自条款约束。仓库已从 jtang613/BinAssist 迁移。"],"targets":["binary"],"url":"https://github.com/symgraph/BinAssist","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/SteakEnthusiast/Supplementary-AST-Based-Deobfuscation-Materials/blob/37092955c2ad361364a2162149df9119045de3d0/package.json","https://github.com/SteakEnthusiast/Supplementary-AST-Based-Deobfuscation-Materials/blob/37092955c2ad361364a2162149df9119045de3d0/package-lock.json","https://github.com/SteakEnthusiast/Supplementary-AST-Based-Deobfuscation-Materials/tree/37092955c2ad361364a2162149df9119045de3d0/String%20Concealing","https://github.com/SteakEnthusiast/Supplementary-AST-Based-Deobfuscation-Materials/tree/37092955c2ad361364a2162149df9119045de3d0/Proxy%20Functions","https://github.com/SteakEnthusiast/Supplementary-AST-Based-Deobfuscation-Materials/blob/37092955c2ad361364a2162149df9119045de3d0/String%20Concealing/String%20Encryption/deobber.js","https://github.com/SteakEnthusiast/Supplementary-AST-Based-Deobfuscation-Materials/blob/37092955c2ad361364a2162149df9119045de3d0/LICENSE","https://steakenthusiast.github.io/2022/05/21/Deobfuscating-Javascript-via-AST-An-Introduction-to-Babel/","https://steakenthusiast.github.io/2023/10/11/CVE-2023-45133-Finding-an-Arbitrary-Code-Execution-Vulnerability-In-Babel/","https://github.com/babel/babel/security/advisories/GHSA-67hx-6x53-jw92","https://nodejs.org/api/vm.html"],"category":"learning","description_en":"Companion code for the ReverseJS blog's 2022 series on deobfuscating JavaScript by manipulating abstract syntax trees with Babel. Each folder pairs a small obfuscated sample with a deobfuscator script and its output, covering string concealing (escape sequences, concatenation, string arrays and string encryption), constant folding including JSFuck-style code, substitution of constant variables, bracket-to-dot property access, dead-code removal, proxy functions and sequence expressions. The README presents them as short learning examples rather than a production deobfuscator.","description_zh":"ReverseJS 博客 2022 年系列文章的配套代码，该系列讲解如何借助 Babel 操作抽象语法树来反混淆 JavaScript。每个目录都包含一个小型混淆样例、对应的反混淆脚本及其输出，主题涵盖字符串隐藏（转义序列、字符串拼接、字符串数组和字符串加密）、常量折叠（含 JSFuck 风格代码）、常量变量替换、方括号属性访问改为点号访问、死代码删除、代理函数以及逗号序列表达式。README 将其定位为简短的学习示例，而非可用于生产的反混淆工具。","entry_url":"https://awesomerea.org/resources/reversejs-ast-deobfuscation-materials/","entry_url_zh":"https://awesomerea.org/zh/resources/reversejs-ast-deobfuscation-materials/","evidence_url":"https://github.com/SteakEnthusiast/Supplementary-AST-Based-Deobfuscation-Materials/blob/37092955c2ad361364a2162149df9119045de3d0/README.md","group":"learn","id":"reversejs-ast-deobfuscation-materials","json_url":"https://awesomerea.org/resources/reversejs-ast-deobfuscation-materials/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/reversejs-ast-deobfuscation-materials/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/reversejs-ast-deobfuscation-materials/index.md","name":"Supplementary AST-Based Deobfuscation Materials","name_zh":"ReverseJS AST 反混淆配套资料","record_type":"resource","relationship":"learning","requirements":["Reviewed at the 2023-10-20 master commit, whose last change bumped @babel/traverse to 7.23.2. The blog lists seven posts in the series from May and June 2022, and folders such as Proxy Functions and Sequence Expressions have no matching post; the README warns that code not published on the blog is outdated and experimental, may be inaccurate or buggy, will likely not be updated and should not be used in a production deobfuscator.","Needs Node.js and npm install: package.json declares @babel/core and js-beautify, and the lockfile resolves @babel/parser, @babel/traverse and @babel/generator 7.23.x. Each script is run with node from its folder against the bundled sample. The String Encryption example also imports chrome-remote-interface-extra, which package.json does not list.","The samples are short, author-written obfuscations, so applying the techniques to other code needs the analyst's own inputs and checking. The VM-evaluation proxy-function example and the String Encryption example run code from the sample through Node's vm module, which Node.js documents as not a security mechanism. The author's later blog post reports CVE-2023-45133, an arbitrary-code-execution flaw in @babel/traverse before 7.23.2; the reviewed lockfile already resolves 7.23.2.","There are no tests or CI (the npm test script is a placeholder); expected outputs are committed beside each sample.","MIT (LICENSE), although package.json keeps npm's default ISC field."],"requirements_zh":["审阅对象为 2023-10-20 的 master 提交，其最后一项改动是将 @babel/traverse 升级到 7.23.2。博客列出该系列在 2022 年 5 月和 6 月发表的七篇文章，而代理函数（Proxy Functions）和序列表达式（Sequence Expressions）等目录没有对应文章；README 提醒，未在博客发表的代码已过时且属实验性质，可能不准确或有缺陷，作者大概率不会再更新，不建议用于生产环境的反混淆工具。","需要 Node.js 并执行 npm install：package.json 声明 @babel/core 和 js-beautify，锁文件解析出的 @babel/parser、@babel/traverse 和 @babel/generator 为 7.23.x。每个脚本需在其所在目录中用 node 对附带样例运行。String Encryption 示例还导入了 package.json 未列出的 chrome-remote-interface-extra。","样例都是作者自己编写的简短混淆代码，将这些技术用于其他代码时，需要分析者自备输入并自行核对结果。基于 VM 求值的代理函数示例和 String Encryption 示例会通过 Node 的 vm 模块执行样例中的代码，而 Node.js 文档明确说明该模块不是安全机制。作者后来的博客文章报告了 CVE-2023-45133，即 7.23.2 之前的 @babel/traverse 中存在任意代码执行漏洞；所审阅的锁文件已解析为 7.23.2。","仓库没有测试或 CI（npm test 脚本只是占位）；各样例旁附有预期输出。","采用 MIT 许可（见 LICENSE），但 package.json 仍保留 npm 默认的 ISC 字段。"],"targets":["website"],"url":"https://github.com/SteakEnthusiast/Supplementary-AST-Based-Deobfuscation-Materials","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/deanlee/openpilot-cabana/blob/0a4b189798b33e4267fbf854c6f27fe4832998ab/SConstruct","https://github.com/deanlee/openpilot-cabana/blob/0a4b189798b33e4267fbf854c6f27fe4832998ab/.gitmodules","https://github.com/deanlee/openpilot-cabana/blob/0a4b189798b33e4267fbf854c6f27fe4832998ab/.github/workflows/release.yml","https://github.com/deanlee/openpilot-cabana/tree/0a4b189798b33e4267fbf854c6f27fe4832998ab/src/tools","https://github.com/deanlee/openpilot-cabana/tree/0a4b189798b33e4267fbf854c6f27fe4832998ab/data/opendbc","https://github.com/deanlee/openpilot-cabana/blob/0a4b189798b33e4267fbf854c6f27fe4832998ab/LICENSE","https://github.com/deanlee/openpilot-cabana/releases/tag/v1.1.2","https://github.com/commaai/openpilot/blob/14652aacb2975e3836ee6b37e9595edaabd39332/openpilot/tools/cabana/README.md"],"category":"protocol-analysis","description_en":"Qt desktop CAN and CAN FD analyzer for decoding signals and reverse engineering unknown messages, split out of openpilot's cabana by Dean Lee, a frequent contributor to it, and now maintained on its own. It shows live per-bit change heatmaps, colors bytes by trend such as counters, toggles or noisy data, searches for signals by value or for bits that change together across messages and buses, mutes known bits, plots signals and edits DBC files with undo, while replaying openpilot drives with synchronized camera video. Sources are openpilot routes, Vector ASC, candump and PEAK TRC logs, SocketCAN, comma.ai Panda devices and live streams from a comma device, with a bundled set of opendbc DBC files.","description_zh":"基于 Qt 的桌面 CAN 与 CAN FD 分析工具，用于解码信号和逆向分析未知报文；由 openpilot cabana 的活跃贡献者 Dean Lee 从 openpilot 中独立出来，现单独维护。它实时显示逐位变化热图，按计数器、切换位、噪声数据等趋势为字节着色，可按数值搜索信号或查找在不同报文和总线间同步变化的位，屏蔽已知位，绘制信号曲线，并以可撤销方式编辑 DBC 文件，同时能回放 openpilot 行车记录并同步显示摄像头视频。数据来源包括 openpilot 行车记录、Vector ASC、candump 和 PEAK TRC 日志、SocketCAN、comma.ai Panda 设备以及来自 comma 设备的实时流，并附带一组 opendbc DBC 文件。","entry_url":"https://awesomerea.org/resources/openpilot-cabana/","entry_url_zh":"https://awesomerea.org/zh/resources/openpilot-cabana/","evidence_url":"https://github.com/deanlee/openpilot-cabana/blob/0a4b189798b33e4267fbf854c6f27fe4832998ab/README.md","group":"tools","id":"openpilot-cabana","json_url":"https://awesomerea.org/resources/openpilot-cabana/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/openpilot-cabana/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/openpilot-cabana/index.md","name":"Cabana (standalone openpilot-cabana)","name_zh":"Cabana CAN 总线分析工具（独立版 openpilot-cabana）","record_type":"resource","relationship":"foundation","requirements":["The repository was created on 2025-12-30; its README says Cabana was originally developed as openpilot's CAN analysis tool and is now maintained independently, while openpilot still carries its own cabana under openpilot/tools/cabana. Latest release at review: v1.1.2, published 2026-03-16 as a Linux x86_64 tarball; the reviewed main commit, of 2026-06-09, is 66 commits ahead of it.","Source builds use SCons, a C++20 compiler and Qt 6 with Charts, SVG, SerialBus and OpenGL, plus capnproto, ZeroMQ, FFmpeg, libusb and the other Ubuntu/Debian packages the README lists, after initializing the openpilot-replay submodule from the same author. The README also names an AUR package for Arch Linux; SConstruct has a macOS arm64 branch, but the release workflow builds only on Ubuntu 22.04.","Analysis needs the user's own CAN data: logs or live buses from their own vehicle and interface, a Panda, or openpilot routes from their own comma device or comma connect account; --demo opens a demo route instead. The tool highlights candidate bits and signals.","MIT (LICENSE, copyright 2025 Dean Lee); the openpilot-replay submodule is also MIT, and data/opendbc holds 93 DBC files from comma.ai's MIT-licensed opendbc."],"requirements_zh":["该仓库创建于 2025-12-30；README 称 Cabana 最初是作为 openpilot 的 CAN 分析工具开发的，现已独立维护，而 openpilot 仍在 openpilot/tools/cabana 下保留自己的 cabana。审阅时最新版本为 v1.1.2，于 2026-03-16 以 Linux x86_64 压缩包发布；所审阅的 main 分支提交日期为 2026-06-09，比该版本多 66 个提交。","从源码构建需要 SCons、C++20 编译器和带 Charts、SVG、SerialBus、OpenGL 模块的 Qt 6，以及 README 为 Ubuntu/Debian 列出的 capnproto、ZeroMQ、FFmpeg、libusb 等软件包，并需先初始化同一作者的 openpilot-replay 子模块。README 还提到 Arch Linux 的 AUR 软件包；SConstruct 含 macOS arm64 分支，但发布工作流只在 Ubuntu 22.04 上构建。","分析需要使用者自己的 CAN 数据：来自自有车辆和接口的日志或实时总线、Panda 设备，或来自自己 comma 设备或 comma connect 账户的 openpilot 行车记录；--demo 则改为打开演示路线。该工具会标出候选位和信号。","采用 MIT 许可（LICENSE，版权归 Dean Lee，2025）；openpilot-replay 子模块同样为 MIT，data/opendbc 收录 93 个来自 comma.ai MIT 许可 opendbc 的 DBC 文件。"],"targets":["protocol"],"url":"https://github.com/deanlee/openpilot-cabana","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/crowdere/Awesome-RE-MCP/blob/e400b882965ef61302718c7fe7c4f1e2861bd664/README.md#L22-L58","https://github.com/crowdere/Awesome-RE-MCP/tree/e400b882965ef61302718c7fe7c4f1e2861bd664"],"category":"related-lists","description_en":"A single-README list, written in July 2025, of 28 MCP servers for reverse-engineering tools, grouped into disassemblers and decompilers (IDA Pro, Ghidra, Binary Ninja and others), debuggers, static and dynamic analysis, network analysis, Android and security testing, with a one-line note per entry. It also names tools the author found without an MCP server, links four talks and guides, and points to starting material for writing new servers.","description_zh":"以单个 README 维护的清单，编写于 2025 年 7 月，收录 28 个逆向工程工具的 MCP 服务器，按反汇编器与反编译器（IDA Pro、Ghidra、Binary Ninja 等）、调试器、静态与动态分析、网络分析、Android 和安全测试分组，每项附一句说明。清单还列出作者认为尚无 MCP 服务器的工具，链接四个演讲与教程，并给出编写新服务器的入门资料。","entry_url":"https://awesomerea.org/resources/awesome-re-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/awesome-re-mcp/","evidence_url":"https://github.com/crowdere/Awesome-RE-MCP/blob/e400b882965ef61302718c7fe7c4f1e2861bd664/README.md","group":"learn","id":"awesome-re-mcp","json_url":"https://awesomerea.org/resources/awesome-re-mcp/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/awesome-re-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/awesome-re-mcp/index.md","name":"Awesome RE-MCP","name_zh":"Awesome RE-MCP 逆向工具 MCP 服务器清单","record_type":"resource","relationship":"learning","requirements":["All seven commits were made on 2025-07-26 and the list has not changed since, so its entries, star counts and status remarks are a July 2025 snapshot. Some of its gap lists no longer hold: for example, it reports no WinDbg MCP server.","Rows give a name, link and short description without language, transport, maintenance status or license, although the contribution guidelines ask submitters for implementation status and transport. One debugger row links a PulseMCP directory page rather than a project.","The network and security-testing entries, such as a collection wrapping SQLMap, Nmap and other scanners, are dual-use tools. The list itself has no tests or verification of its entries.","The README says the list is released under the MIT license, but the repository has no license file and GitHub detects none. An independent discovery list."],"requirements_zh":["全部 7 个提交都在 2025-07-26，此后清单未再变动，因此其中的条目、星标数和状态说明都是 2025 年 7 月的快照。部分“缺失”列表已不再准确：例如它称 WinDbg 尚无 MCP 服务器。","每行只有名称、链接和简短说明，未注明实现语言、传输方式、维护状态或许可证，尽管其贡献指南要求提交者注明实现状态和传输方式。调试器部分有一行链接的是 PulseMCP 目录页面而非项目本身。","网络分析与安全测试类条目（例如封装 SQLMap、Nmap 等扫描工具的合集）属于两用工具。清单本身没有测试，也未验证其条目。","README 称清单以 MIT 许可发布，但仓库没有许可证文件，GitHub 也未识别出许可证。这是独立的发现清单。"],"targets":["app","binary"],"url":"https://github.com/crowdere/Awesome-RE-MCP","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","category":"related-lists","description_en":"A single-README list of 71 open-source reverse-engineering tools with a focus on binary analysis, kept as one alphabetical list from Amoco to X86isa. Each entry gives the tool's name, a link and a one- to three-sentence description; the entries span binary analysis frameworks, lifters to LLVM and other intermediate representations, symbolic execution and emulation engines, dynamic instrumentation, whole-system and virtual-machine introspection platforms, decompilers, debugger front ends and deobfuscation tools.","description_zh":"以单个 README 维护的开源逆向工程工具清单，侧重二进制分析，共 71 项，按字母顺序从 Amoco 排到 X86isa，不分类别。每个条目给出工具名称、链接和一到三句说明，涵盖二进制分析框架、提升到 LLVM 及其他中间表示的工具、符号执行与模拟引擎、动态插桩、全系统分析与虚拟机自省平台、反编译器、调试器前端以及去混淆工具。","entry_url":"https://awesomerea.org/resources/extremecoders-re-list/","entry_url_zh":"https://awesomerea.org/zh/resources/extremecoders-re-list/","evidence_url":"https://github.com/extremecoders-re/re-list/blob/539b60e6f4a17f42f07089b82c7cd909a1056f6f/README.md","group":"learn","id":"extremecoders-re-list","json_url":"https://awesomerea.org/resources/extremecoders-re-list/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/extremecoders-re-list/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/extremecoders-re-list/index.md","name":"RE list (extremecoders-re)","name_zh":"RE list 开源二进制逆向工具清单（extremecoders-re）","record_type":"resource","relationship":"learning","requirements":["The reviewed README, last changed on 2024-04-16 when Cannoli was added, links 71 entries in one alphabetical list without categories; the repository's 56 commits since October 2017 mostly add one tool at a time. These are list rows.","Entries give only a name, a link and a short description: 56 point to GitHub and 15 to project, university or vendor pages, such as Intel's Pin page and Tetrane's REVEN Free Edition page rather than source repositories. They state no maintenance status, supported platforms, license or date added.","The repository holds only README.md, with no license file or contribution guide, so the list states no reuse terms; linked tools keep their own licenses. An independent discovery list."],"requirements_zh":["所审阅的 README 最后一次修改在 2024-04-16，当时加入了 Cannoli；清单按字母顺序列出 71 个条目，不分类别。仓库自 2017 年 10 月以来共有 56 个提交，大多每次添加一个工具。这些是清单行数。","条目只有名称、链接和简短说明：56 个指向 GitHub，15 个指向项目、高校或厂商页面，例如 Intel 的 Pin 页面和 Tetrane 的 REVEN Free Edition 页面，而不是源码仓库。条目未注明维护状态、支持平台、许可证或收录日期。","仓库只有 README.md，没有许可证文件或贡献指南，因此清单本身未声明复用条款；所链接的工具各自保留其许可证。这是独立的发现清单。"],"targets":["binary"],"url":"https://github.com/extremecoders-re/re-list","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/xaionaro/reverse-engineering-dji/blob/5c9278ff0b53bbe0d03ea6c830aab13ac775871e/mimo/ble/message_types.md","https://github.com/xaionaro/reverse-engineering-dji/blob/5c9278ff0b53bbe0d03ea6c830aab13ac775871e/mimo/ble/wireshark-dissector/dji-ble-message.c","https://github.com/xaionaro/reverse-engineering-dji/blob/5c9278ff0b53bbe0d03ea6c830aab13ac775871e/mimo/ble/wireshark-dissector/Makefile","https://github.com/xaionaro/reverse-engineering-dji/blob/5c9278ff0b53bbe0d03ea6c830aab13ac775871e/LICENSE"],"category":"reconstruction-cases","description_en":"Documents the Bluetooth Low Energy message format that DJI's proprietary MIMO app uses to control DJI Osmo devices, as artifacts produced while building the independent djictl CLI. The author derives the framing — a magic byte, length, protocol version, header CRC8, subsystem and message-id fields, a payload and a message CRC16 — from the author's own Android BLE logs, and ships a Wireshark dissector plus an annotated catalog of message types. Many message types are labelled as guesses or unknown; the author reports reaching working livestreaming on a DJI Osmo Pocket 3 and pausing further analysis.","description_zh":"记录 DJI 专有 MIMO 应用用于控制 DJI Osmo 设备的低功耗蓝牙报文格式，是作者在开发独立 CLI 工具 djictl 时产出的逆向工程素材。作者依据自己手机的蓝牙日志推断出报文结构——魔数、长度、协议版本、头部 CRC8、子系统与消息 ID 字段、载荷以及消息 CRC16——并提供一个 Wireshark 解析插件和一份带注释的消息类型目录。许多消息类型被标注为推测或未知；作者报告在 DJI Osmo Pocket 3 上实现了可用的直播推流后暂停了进一步分析。","entry_url":"https://awesomerea.org/resources/dji-mimo-ble-reveng-case/","entry_url_zh":"https://awesomerea.org/zh/resources/dji-mimo-ble-reveng-case/","evidence_url":"https://github.com/xaionaro/reverse-engineering-dji/blob/5c9278ff0b53bbe0d03ea6c830aab13ac775871e/README.md","group":"cases","id":"dji-mimo-ble-reveng-case","json_url":"https://awesomerea.org/resources/dji-mimo-ble-reveng-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/dji-mimo-ble-reveng-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dji-mimo-ble-reveng-case/index.md","name":"DJI MIMO BLE artifacts: reconstructing the DJI Osmo control protocol","name_zh":"DJI MIMO BLE 逆向素材：重建 DJI Osmo 控制协议","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the main-branch head of 2025-06-08. The repository is a set of reverse-engineering notes, not a runnable application: the companion tool djictl lives in a separate repository. The README describes a DJI Osmo Pocket 3.","The method uses the user's own Android phone: the README captures a Bluetooth HCI snoop log through an adb bug report, then opens it in Wireshark. No DJI firmware, app binary or account is committed to or required by this repository, and no captured log is included beyond one Wireshark screenshot.","mimo/ble/message_types.md lists annotated sample frames for about two dozen message types, and the Wireshark dissector in mimo/ble/wireshark-dissector/ maps message-type codes to names; many entries are marked with a question mark or as unknown, so the catalog is partial and author-interpreted rather than a complete specification.","Building the dissector needs Wireshark development headers and pkg-config on a system with a C compiler; its Makefile installs a shared-object plugin into the Wireshark 4.2 plugin directory. The notes record protocol observations only.","The repository is licensed CC0-1.0 (public-domain dedication). DJI, MIMO and Osmo remain trademarks of their owners."],"requirements_zh":["在 2025-06-08 的 main 分支最新提交处审阅。该仓库是一组逆向工程笔记，而非可运行的应用：配套工具 djictl 位于另一个独立仓库。README 描述的是 DJI Osmo Pocket 3。","方法使用使用者自己的 Android 手机：README 通过 adb 错误报告导出蓝牙 HCI 抓包日志，再用 Wireshark 打开。本仓库既不收录也不要求任何 DJI 固件、应用二进制或账号，除一张 Wireshark 截图外也未包含抓包日志。","mimo/ble/message_types.md 为约二十余种消息类型列出带注释的样本帧，mimo/ble/wireshark-dissector/ 中的 Wireshark 解析插件将消息类型编码映射为名称；许多条目带有问号或标为未知，因此该目录是部分、经作者解读的内容，而非完整规范。","构建解析插件需要 Wireshark 开发头文件、pkg-config 以及 C 编译器；其 Makefile 会将共享库插件安装到 Wireshark 4.2 的插件目录。笔记仅记录协议观察。","仓库采用 CC0-1.0（公有领域贡献）许可。DJI、MIMO 与 Osmo 仍为其权利人的商标。"],"targets":["protocol"],"url":"https://github.com/xaionaro/reverse-engineering-dji","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/sjkim1127/Reversecore_MCP/blob/c1c576709e47d4947afec6e121111d44c036813c/pyproject.toml","https://github.com/sjkim1127/Reversecore_MCP/blob/c1c576709e47d4947afec6e121111d44c036813c/SECURITY.md","https://github.com/sjkim1127/Reversecore_MCP/blob/c1c576709e47d4947afec6e121111d44c036813c/AGENTS.md","https://github.com/sjkim1127/Reversecore_MCP/blob/c1c576709e47d4947afec6e121111d44c036813c/ORIGINAL_REQUEST.md","https://github.com/sjkim1127/Reversecore_MCP/blob/c1c576709e47d4947afec6e121111d44c036813c/Dockerfile","https://github.com/sjkim1127/Reversecore_MCP/blob/c1c576709e47d4947afec6e121111d44c036813c/docker-compose.yml","https://github.com/sjkim1127/Reversecore_MCP/blob/c1c576709e47d4947afec6e121111d44c036813c/server.json","https://github.com/sjkim1127/Reversecore_MCP/blob/c1c576709e47d4947afec6e121111d44c036813c/.github/workflows/main.yml","https://github.com/sjkim1127/Reversecore_MCP/tree/c1c576709e47d4947afec6e121111d44c036813c/tests/fixtures/benchmarks/targets","https://github.com/sjkim1127/Reversecore_MCP/blob/c1c576709e47d4947afec6e121111d44c036813c/LICENSE","https://github.com/sjkim1127/Reversecore_MCP/releases/tag/v3.0.5","https://pypi.org/project/reversecore-mcp/3.0.5/"],"category":"agent-mcp","description_en":"MCP server that puts radare2 with r2ghidra, LIEF, Capstone, YARA, CAPA, Detect It Easy, binwalk, angr, Volatility3, Scapy, Sleuth Kit and other engines behind 177 typed tools for AI clients such as Claude and Cursor. The tools cover disassembly and decompilation, binary parsing, string, IOC and capability extraction, ESIL emulation and symbolic execution, YARA scanning, memory, PCAP and disk forensics, source-code pattern scanning and session reports with MITRE ATT&CK mapping, alongside 22 guided analysis prompts and per-binary MCP resources. File access is confined to a configured sample workspace, and the server runs over stdio or HTTP/SSE, typically from the project's Docker image.","description_zh":"MCP 服务器，将 radare2 及 r2ghidra、LIEF、Capstone、YARA、CAPA、Detect It Easy、binwalk、angr、Volatility3、Scapy、Sleuth Kit 等引擎封装为 177 个带类型的工具，供 Claude、Cursor 等 AI 客户端调用。工具涵盖反汇编与反编译、二进制解析、字符串、IOC 与能力提取、ESIL 模拟与符号执行、YARA 扫描、内存、PCAP 与磁盘取证、源码模式扫描，以及带 MITRE ATT&CK 映射的会话报告，另有 22 种引导式分析提示词和按二进制划分的 MCP 资源。文件访问限定在配置的样本工作目录内，服务器通过 stdio 或 HTTP/SSE 运行，通常使用项目提供的 Docker 镜像。","entry_url":"https://awesomerea.org/resources/reversecore-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/reversecore-mcp/","evidence_url":"https://github.com/sjkim1127/Reversecore_MCP/blob/c1c576709e47d4947afec6e121111d44c036813c/README.md","group":"agents","id":"reversecore-mcp","json_url":"https://awesomerea.org/resources/reversecore-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/reversecore-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/reversecore-mcp/index.md","name":"Reversecore MCP","name_zh":"Reversecore MCP 逆向与安全分析 MCP 服务器","record_type":"resource","relationship":"independent-agent-integration","requirements":["Latest release at review: v3.0.5, published 2026-09-28 on GitHub with a wheel, sdist, SBOMs and Sigstore bundles, on PyPI as reversecore-mcp and as a GHCR image. The reviewed main commit of 2026-10-17 is 147 commits ahead of that tag, while pyproject.toml still declares 3.0.5. The README's test and coverage figures (3,069 tests, 88%) are hard-coded badges and differ from the older counts in AGENTS.md.","Python 3.10–3.12, with angr installed only on Python 3.12. Local installs need radare2 on the PATH, plus Volatility3, Scapy and Sleuth Kit for forensics; the README recommends the Docker image, which bundles the engines, with x86 and Apple Silicon compose profiles. It lists Linux or macOS hosts or any Docker environment, at least 4 cores, 8 GB RAM and 20 GB storage; Redis backs the task queue and result cache, and an SQLite memory database keeps notes across sessions.","Binaries, memory images, PCAPs and disk images come from the analyst and are mounted into the workspace, where path validation confines tool access. Optional container sandboxing for dynamic-analysis tools is disabled by default, and HTTP mode accepts only loopback clients unless MCP_API_KEY is set. Some tools and prompts target exploit and PoC development.","CI runs linting, type checks, Bandit, pip-audit and CodeQL, unit tests on Python 3.10–3.12 with an 85% coverage gate, security-boundary, integration and MCP client end-to-end suites, and a wheel build-and-install check; ClusterFuzzLite and nightly fuzzing run separately. Test fixtures include small synthetic vulnerable C targets with seeds, proof-of-concept inputs and ASan logs, and scratch/binaries holds only a hello.c source.","MIT; the wrapped engines and the packages in the Docker image keep their own licenses. ORIGINAL_REQUEST.md records a 2026-08-22 brief asking an orchestrating agent to dispatch subagents for transport hardening, prompt expansion and output optimization, so parts of the code were developed with AI agents."],"requirements_zh":["审阅时最新版本为 v3.0.5，于 2026-09-28 在 GitHub 发布，附带 wheel、源码包、SBOM 和 Sigstore 签名包，同时以 reversecore-mcp 之名发布到 PyPI，并提供 GHCR 镜像。所审阅的 main 提交（2026-10-17）比该标签多 147 个提交，但 pyproject.toml 仍声明 3.0.5。README 中的测试与覆盖率数字（3,069 个测试、88%）是写死的徽章，与 AGENTS.md 中较早的数字不一致。","需要 Python 3.10–3.12，angr 只在 Python 3.12 上安装。本地安装需在 PATH 中提供 radare2，取证功能还需要 Volatility3、Scapy 和 Sleuth Kit；README 推荐使用已打包各引擎的 Docker 镜像，并提供 x86 与 Apple 芯片的 compose 配置。它列出的宿主为 Linux、macOS 或任意 Docker 环境，至少需要 4 核 CPU、8 GB 内存和 20 GB 存储；Redis 用于任务队列与结果缓存，SQLite 记忆数据库可跨会话保存笔记。","二进制、内存镜像、PCAP 和磁盘镜像由分析者提供并挂载到工作目录，路径校验将工具访问限定在该目录内。动态分析工具的容器沙箱为可选项，默认关闭；除非设置 MCP_API_KEY，HTTP 模式只接受本机回环地址的客户端。部分工具和提示词面向漏洞利用与 PoC 开发。","CI 运行代码检查、类型检查、Bandit、pip-audit 和 CodeQL，在 Python 3.10–3.12 上运行设有 85% 覆盖率门槛的单元测试，以及安全边界、集成和 MCP 客户端端到端测试，并检查 wheel 的构建与安装；ClusterFuzzLite 和每夜模糊测试另行运行。测试夹具包括带种子、概念验证输入和 ASan 日志的小型合成漏洞 C 程序，scratch/binaries 中只有一个 hello.c 源文件。","采用 MIT 许可；所封装的引擎以及 Docker 镜像中的软件包保留各自的许可证。ORIGINAL_REQUEST.md 记录了 2026-08-22 交给编排智能体的任务说明，要求其分派子智能体完成传输层加固、提示词扩展和输出优化，可见部分代码是借助 AI 智能体开发的。"],"targets":["binary"],"url":"https://github.com/sjkim1127/Reversecore_MCP","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/radareorg/radare2-r2pipe/blob/c3558109db3868f34b7bd6a02775611a9265d81a/README.md#L56-L82","https://github.com/radareorg/radare2-r2pipe/blob/c3558109db3868f34b7bd6a02775611a9265d81a/python/README.md","https://github.com/radareorg/radare2-r2pipe/blob/c3558109db3868f34b7bd6a02775611a9265d81a/python/pyproject.toml","https://github.com/radareorg/radare2-r2pipe/blob/c3558109db3868f34b7bd6a02775611a9265d81a/python/LICENSE","https://github.com/radareorg/radare2-r2pipe/blob/c3558109db3868f34b7bd6a02775611a9265d81a/python-wasm/README.md","https://github.com/radareorg/radare2-r2pipe/blob/c3558109db3868f34b7bd6a02775611a9265d81a/nodejs/r2pipe/package.json","https://github.com/radareorg/radare2-r2pipe/blob/c3558109db3868f34b7bd6a02775611a9265d81a/typescript/package.json","https://github.com/radareorg/radare2-r2pipe/blob/c3558109db3868f34b7bd6a02775611a9265d81a/rust/ORIGIN","https://github.com/radareorg/radare2-r2pipe/blob/c3558109db3868f34b7bd6a02775611a9265d81a/.github/workflows/ci.yml","https://github.com/radareorg/radare2-r2pipe/releases/tag/6.1.2","https://pypi.org/project/r2pipe/2.1.0/","https://www.npmjs.com/package/r2pipe/v/2.8.6"],"category":"native-analysis","description_en":"radare2's official scripting interface, with implementations for more than two dozen languages in one repository. Every binding sends radare2 command strings and returns their text output, the design behind r_core_cmd_str(), and the README recommends asking for JSON output and decoding it into native objects instead of using the C API. Bindings connect through the R2PIPE_IN/R2PIPE_OUT pipes of a script run from inside r2, a spawned r2 -q0 process, TCP, HTTP or radare2's RAP protocol, many offer asynchronous calls, and r2pipe scripts can also implement radare2 plugins such as disassemblers, IO backends or ESIL syscall handlers.","description_zh":"radare2 官方的脚本接口，同一仓库内收录了二十多种语言的实现。所有绑定都向 radare2 发送命令字符串并返回其文本输出，这正是 r_core_cmd_str() 背后的设计；README 建议请求 JSON 输出并将其解码为本地语言对象，而不是直接调用 C API。绑定可经由从 r2 内部运行脚本时的 R2PIPE_IN/R2PIPE_OUT 管道、新启动的 r2 -q0 进程、TCP、HTTP 或 radare2 自有的 RAP 协议连接，其中许多支持异步调用；r2pipe 脚本还可用于实现反汇编器、IO 后端或 ESIL 系统调用处理器等 radare2 插件。","entry_url":"https://awesomerea.org/resources/r2pipe/","entry_url_zh":"https://awesomerea.org/zh/resources/r2pipe/","evidence_url":"https://github.com/radareorg/radare2-r2pipe/blob/c3558109db3868f34b7bd6a02775611a9265d81a/README.md","group":"tools","id":"r2pipe","json_url":"https://awesomerea.org/resources/r2pipe/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/r2pipe/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/r2pipe/index.md","name":"r2pipe","name_zh":"r2pipe radare2 多语言脚本接口","record_type":"resource","relationship":"foundation","requirements":["The newest GitHub release at review is 6.1.2, published 2026-04-20 as source only, and the reviewed master commit is 54 commits ahead of it; each language is also packaged separately. The Python package r2pipe 2.1.0 (Python 3.6+) was uploaded to PyPI on 2026-10-19, matching python/pyproject.toml, while npm's r2pipe was at 2.8.6 from 2024-01-16 and r2pipe-ts at 0.4.0. The Rust crate lives in the separate r2pipe.rs repository, and the README's capability table marks which backends each language supports.","Apart from the WebAssembly variant, every binding talks to a radare2 process, either spawned locally or reached as a TCP, HTTP or RAP server, and command strings and output formats follow the radare2 version in use. CI installs the radare2 6.1.4 Debian packages on Ubuntu 24.04 and tests the Perl, Python, TypeScript, Ruby, Tcl, Vala, Swift and .NET bindings.","python-wasm is a separate r2pipe_wasm package that runs radare2's wasi-api WebAssembly build inside Python through Wasmer's Python SDK 1.1.0, downloading the newest stable release with that asset by default. Its README verifies only CPython 3.9 on Linux x86_64, pins its examples to 6.1.4 and reports that the published 6.2.2 API module traps during startup.","GitHub detects no repository-wide license. The Python, Python WASM, Go, .NET, Haskell and Erlang directories carry MIT license files and the npm packages declare MIT. Binaries to analyze come from the user, and the TypeScript tests bundle one fixture, typescript/tests/fixtures/wasm-api.wasm."],"requirements_zh":["审阅时最新的 GitHub 发行版为 6.1.2，于 2026-04-20 发布，仅含源码；所审阅的 master 提交比它多 54 个提交。各语言实现也分别打包发布：Python 包 r2pipe 2.1.0（需 Python 3.6+）于 2026-10-19 上传至 PyPI，与 python/pyproject.toml 一致；npm 上的 r2pipe 为 2024-01-16 发布的 2.8.6，r2pipe-ts 为 0.4.0。Rust crate 位于独立的 r2pipe.rs 仓库；README 中的能力表标明了各语言支持哪些通信后端。","除 WebAssembly 版本外，所有绑定都要与一个 radare2 进程通信：或在本地启动，或作为 TCP、HTTP、RAP 服务端连接；命令字符串和输出格式取决于所用的 radare2 版本。CI 在 Ubuntu 24.04 上安装 radare2 6.1.4 的 Debian 软件包，测试 Perl、Python、TypeScript、Ruby、Tcl、Vala、Swift 和 .NET 绑定。","python-wasm 是独立的 r2pipe_wasm 包，通过 Wasmer 的 Python SDK 1.1.0 在 Python 内运行 radare2 的 wasi-api WebAssembly 构建，默认下载带有该构建的最新稳定版本。其 README 仅验证了 Linux x86_64 上的 CPython 3.9，示例固定使用 6.1.4，并报告已发布的 6.2.2 API 模块在启动时会触发陷阱。","GitHub 未识别出覆盖整个仓库的许可证。Python、Python WASM、Go、.NET、Haskell 和 Erlang 目录附有 MIT 许可证文件，npm 包也声明为 MIT。待分析的二进制由使用者自行提供；TypeScript 测试附带一个测试文件 typescript/tests/fixtures/wasm-api.wasm。"],"targets":["binary"],"url":"https://github.com/radareorg/radare2-r2pipe","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/BoringBoredom/UEFI-Editor/blob/44e8c9ba4a05dbd6fc4b1c247ed17948b6e58f8d/src/components/scripts/scripts.ts","https://github.com/BoringBoredom/UEFI-Editor/blob/44e8c9ba4a05dbd6fc4b1c247ed17948b6e58f8d/src/components/scripts/types.ts","https://github.com/BoringBoredom/UEFI-Editor/blob/44e8c9ba4a05dbd6fc4b1c247ed17948b6e58f8d/src/components/FileUploads/FileUploads.tsx","https://github.com/BoringBoredom/UEFI-Editor/blob/44e8c9ba4a05dbd6fc4b1c247ed17948b6e58f8d/src/components/FormUi/FormUi.tsx","https://github.com/BoringBoredom/UEFI-Editor/blob/44e8c9ba4a05dbd6fc4b1c247ed17948b6e58f8d/IFR-Formatter/IFR-Formatter.js","https://github.com/BoringBoredom/UEFI-Editor/blob/44e8c9ba4a05dbd6fc4b1c247ed17948b6e58f8d/package.json","https://github.com/BoringBoredom/UEFI-Editor/blob/44e8c9ba4a05dbd6fc4b1c247ed17948b6e58f8d/.github/workflows/deploy.yaml"],"category":"firmware","description_en":"Browser-based editor for the setup menus of AMI Aptio V UEFI firmware, offered as an alternative to AMIBCP. From four sections the user takes from their own BIOS image, it rebuilds the setup forms and their references and shows each setting's VarStore, offset, size, options, failsafe and optimal defaults, access level and Suppress If conditions. Changes to top-level menu targets, suppressions, access levels and defaults are written back into the section files with a change log, and a session can be saved as hash-checked JSON; a separate IFR-Formatter.js script condenses IFRExtractor-RS output into a per-setting VarStore and offset listing.","description_zh":"在浏览器中运行的 AMI Aptio V UEFI 固件设置菜单编辑器，作为 AMIBCP 的替代工具。它根据使用者从自己的 BIOS 镜像中取得的四个区段重建设置表单及其引用关系，并显示每个设置项的 VarStore、偏移、大小、选项、故障安全和最优默认值、访问级别以及 Suppress If 条件。对顶层菜单目标、隐藏条件、访问级别和默认值的修改会写回区段文件并附带变更日志，会话可另存为带哈希校验的 JSON；另附的 IFR-Formatter.js 脚本可将 IFRExtractor-RS 的输出整理为按设置项列出 VarStore 与偏移的清单。","entry_url":"https://awesomerea.org/resources/aptio-v-uefi-editor/","entry_url_zh":"https://awesomerea.org/zh/resources/aptio-v-uefi-editor/","evidence_url":"https://github.com/BoringBoredom/UEFI-Editor/blob/44e8c9ba4a05dbd6fc4b1c247ed17948b6e58f8d/README.md","group":"tools","id":"aptio-v-uefi-editor","json_url":"https://awesomerea.org/resources/aptio-v-uefi-editor/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/aptio-v-uefi-editor/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/aptio-v-uefi-editor/index.md","name":"Aptio V UEFI Editor","name_zh":"Aptio V UEFI 设置编辑器","record_type":"resource","relationship":"foundation","requirements":["Reviewed master commit 44e8c9b (2026-03-15, hash-check changes); the previous source change was in April 2025. There are no releases or tags: the app, version 0.1.0 in its source, is served from GitHub Pages by a workflow that builds it with Node 20, npm ci and Vite. Building locally uses the React, Mantine and TypeScript package.json scripts.","Inputs come from the user's own Aptio V UEFI image, found with UEFITool NE: the Setup PE32 image section, its text output from IFRExtractor-RS 1.6.1 (the only version the editor accepts), the AMITSE PE32 image section and the setupdata body. The page reads them in the browser, rejects non-UEFI IFR output, and checks saved JSON against the files' SHA-256 hashes. The repository includes no firmware images or extracted sections, only screenshots of the tools.","README says the modified files are put back with UEFITool 0.28.0 and that setting visibility methods vary between firmware, so either may need trying.","The repository has no license file, and package.json marks the package private, so reuse terms are not stated. No automated tests are published."],"requirements_zh":["所审阅的 master 提交 44e8c9b（2026-03-15，改进哈希校验）；此前最近一次源码改动在 2025 年 4 月。项目没有发布版本或标签：源码中标为 0.1.0 版的应用由工作流用 Node 20、npm ci 和 Vite 构建后部署到 GitHub Pages。本地构建使用 package.json 中基于 React、Mantine 和 TypeScript 的脚本。","输入来自使用者自己的 Aptio V UEFI 镜像，借助 UEFITool NE 定位：Setup PE32 镜像区段、该区段经 IFRExtractor-RS 1.6.1（编辑器唯一接受的版本）导出的文本、AMITSE PE32 镜像区段以及 setupdata 主体。页面在浏览器中读取这些文件，拒绝非 UEFI 的 IFR 输出，并用文件的 SHA-256 哈希核对保存的 JSON。仓库不含任何固件镜像或提取出的区段，只有相关工具的截图。","README 称修改后的文件用 UEFITool 0.28.0 放回，且控制设置项可见性的方法因固件而异，可能需要逐一尝试。","仓库没有许可证文件，package.json 将包标为 private，因此未声明再利用条款。项目未公开自动化测试。"],"targets":["firmware"],"url":"https://github.com/BoringBoredom/UEFI-Editor","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/DizTools/DiztinGUIsh/blob/7484b87c3bd36f4e1a1e9e3c6075dd103855cbfd/Diz.App.Winforms/dist/docs/HELP.md","https://github.com/DizTools/DiztinGUIsh/blob/7484b87c3bd36f4e1a1e9e3c6075dd103855cbfd/TRACE%20CAPTURE%20INSTRUCTIONS.md","https://github.com/DizTools/DiztinGUIsh/blob/7484b87c3bd36f4e1a1e9e3c6075dd103855cbfd/contributing.md","https://github.com/DizTools/DiztinGUIsh/blob/7484b87c3bd36f4e1a1e9e3c6075dd103855cbfd/.github/workflows/dotnet.yml","https://github.com/DizTools/DiztinGUIsh/blob/7484b87c3bd36f4e1a1e9e3c6075dd103855cbfd/Diz.App.Winforms/Diz.App.Winforms.csproj","https://github.com/DizTools/DiztinGUIsh/tree/7484b87c3bd36f4e1a1e9e3c6075dd103855cbfd/Diz.Test/Resources","https://github.com/DizTools/DiztinGUIsh/tree/7484b87c3bd36f4e1a1e9e3c6075dd103855cbfd/Diz.Test/external-tools","https://github.com/DizTools/DiztinGUIsh/tree/7484b87c3bd36f4e1a1e9e3c6075dd103855cbfd/tools","https://github.com/DizTools/DiztinGUIsh/blob/7484b87c3bd36f4e1a1e9e3c6075dd103855cbfd/LICENSE.md","https://github.com/DizTools/DiztinGUIsh/releases/tag/v2.5.1.0"],"category":"game-analysis","description_en":"Windows disassembler for Super NES ROMs in which the user marks bytes as code or data, steps through 65816 code while the tool tracks the M and X flags and the data bank and direct page registers, adds labels and comments, and exports assembly for the asar assembler that the README says compiles back into the original binary. Execution context can come from BizHawk or BSNES trace logs, BSNES usage maps and BizHawk code/data logs, or live capture over a socket from a custom bsnes-plus build. Project files keep the annotations in merge-friendly XML with a link and checksum for the ROM rather than the ROM itself, so several people can work on one disassembly.","description_zh":"面向 Super NES ROM 的 Windows 反汇编工具：使用者把字节标记为代码或数据，逐步跟踪 65816 代码，工具同时记录 M、X 标志位以及数据库（data bank）和直接页寄存器；使用者添加标签和注释后，可导出供 asar 汇编器使用的汇编代码，README 称其能重新编译回原始二进制。执行上下文可来自 BizHawk 或 BSNES 的跟踪日志、BSNES 使用情况图和 BizHawk 代码/数据日志，也可通过套接字从定制的 bsnes-plus 版本实时采集。项目文件以便于合并的 XML 保存注释，只记录 ROM 的链接和校验和而不包含 ROM 本身，便于多人协作完成同一份反汇编。","entry_url":"https://awesomerea.org/resources/diztinguish/","entry_url_zh":"https://awesomerea.org/zh/resources/diztinguish/","evidence_url":"https://github.com/DizTools/DiztinGUIsh/blob/7484b87c3bd36f4e1a1e9e3c6075dd103855cbfd/README.md","group":"tools","id":"diztinguish","json_url":"https://awesomerea.org/resources/diztinguish/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/diztinguish/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/diztinguish/index.md","name":"DiztinGUIsh","name_zh":"DiztinGUIsh Super NES ROM 反汇编工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v2.5.1.0, published 2025-12-07 as a self-contained Windows x64 build; the reviewed master commit of 2026-08-09 is 106 commits later and adds, among other changes, Avalonia versions of several dialogs and a second Diz.AvaloniaUI-Beta executable. The WinForms app targets net10.0-windows, and CI builds, tests and publishes it on Windows with the .NET 10 SDK, while contributing.md still asks for Windows 10+ and .NET SDK 8 or higher.","Input is a SNES ROM file the user supplies; the repository includes no ROMs. HELP.md says project files (.diz, which is gzip-compressed XML, or uncompressed .dizraw) store a link to the ROM with its internal name and checksum instead of the ROM, so they can be shared without it. Live trace capture needs the custom bsnes-plus build from binary1230/bsnes-plus, which listens on port 27015, rather than stock BSNES+, and the README suggests an asar fork with a relative-addressing fix.","The test project bundles small .asm samples, a 4 MB binary trace-log fixture (ct-binary-tracelog7.758s-60fps-locked.bin) from a 7.8-second emulator capture that only commented-out performance-test code references, and SuperFamicheck 1.0's superfamicheck.exe as a helper; tools/dizpack holds Python packing scripts and tools/dizpack-game/ct a Chrono Trigger (US) LZSS codec. Disassembly depends on the user's marking and stepping: the README says the program pauses for input whenever it cannot disassemble accurately, and lists SPC700 and SuperFX support as planned. CI runs the repository's xUnit tests, but no per-game results confirm that exported assembly rebuilds the original.","GPL-3.0 per LICENSE.md, with third-party library licenses listed in Diz.App.Winforms/dist/docs. Exported assembly contains the ROM's code and data and remains subject to the rights of the game's owner."],"requirements_zh":["审阅时最新版本为 v2.5.1.0，于 2025-12-07 以自包含的 Windows x64 构建发布；所审阅的 master 提交（2026-08-09）比它晚 106 个提交，其中包括把多个对话框改写为 Avalonia 版本，并新增第二个可执行文件 Diz.AvaloniaUI-Beta。WinForms 应用的目标框架为 net10.0-windows，CI 在 Windows 上用 .NET 10 SDK 构建、测试并发布；而 contributing.md 仍写着需要 Windows 10+ 和 .NET SDK 8 或更高版本。","输入为使用者自行提供的 SNES ROM 文件；仓库不含任何 ROM。HELP.md 称项目文件（.diz 为 gzip 压缩的 XML，.dizraw 为未压缩版本）只保存 ROM 的链接及其内部名称和校验和，不包含 ROM 本身，因此可以在不附带 ROM 的情况下分享。实时跟踪采集需要 binary1230/bsnes-plus 提供的定制 bsnes-plus 版本（监听 27015 端口），普通 BSNES+ 无法使用；README 还建议使用修复了相对寻址问题的 asar 分支。","测试项目附带少量 .asm 样例、一个 4 MB 的二进制跟踪日志测试数据（ct-binary-tracelog7.758s-60fps-locked.bin，来自一段 7.8 秒的模拟器采集，只有已注释掉的性能测试代码引用它），以及作为辅助工具的 SuperFamicheck 1.0 的 superfamicheck.exe；tools/dizpack 存放 Python 打包脚本，tools/dizpack-game/ct 则是 Chrono Trigger（美版）的 LZSS 编解码器。反汇编依赖使用者的标记与逐步跟踪：README 称，一旦无法准确反汇编，程序就会暂停等待输入，并将 SPC700 和 SuperFX 支持列为计划功能。CI 会运行仓库的 xUnit 测试，但没有逐个游戏的结果证明导出的汇编能重建原版。","依据 LICENSE.md 采用 GPL-3.0 许可，第三方库的许可证列在 Diz.App.Winforms/dist/docs 中。导出的汇编包含 ROM 的代码和数据，仍受游戏权利人的权利约束。"],"targets":["game"],"url":"https://github.com/DizTools/DiztinGUIsh","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/bnjreece/awesome-te/blob/02c9fb3c95b7fa4bae954be4d7ae795396d10e93/CONTRIBUTING.md","https://github.com/bnjreece/awesome-te/blob/02c9fb3c95b7fa4bae954be4d7ae795396d10e93/.github/workflows/link-check.yml","https://github.com/bnjreece/awesome-te/blob/02c9fb3c95b7fa4bae954be4d7ae795396d10e93/LICENSE"],"category":"related-lists","description_en":"A public-domain directory, started in June 2026, of hacking projects for Teenage Engineering devices: custom firmware, reverse-engineering notes and protocol documentation, tools, hardware mods, teardown and recovery guides and community hubs for the OP-1, OP-Z, OP-XY, TP-7, SP-1 Stem Player, EP series, Pocket Operators and other gear. One-line entries are grouped by device and task, each with a maintainer-assigned active, dormant or archived marker, and the scope rule admits only released, TE-specific projects.","description_zh":"一份进入公有领域的目录，始建于 2026 年 6 月，收录 Teenage Engineering 设备的破解与改造项目：涵盖 OP-1、OP-Z、OP-XY、TP-7、SP-1 Stem Player、EP 系列、Pocket Operator 等设备的自定义固件、逆向笔记与协议文档、工具、硬件改装、拆解与恢复指南以及社区站点。每个条目只有一行，按设备和用途分组，并由维护者标注活跃、休眠或归档状态；收录范围仅限已发布、专门针对 TE 设备的项目。","entry_url":"https://awesomerea.org/resources/awesome-te/","entry_url_zh":"https://awesomerea.org/zh/resources/awesome-te/","evidence_url":"https://github.com/bnjreece/awesome-te/blob/02c9fb3c95b7fa4bae954be4d7ae795396d10e93/README.md","group":"learn","id":"awesome-te","json_url":"https://awesomerea.org/resources/awesome-te/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/awesome-te/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/awesome-te/index.md","name":"awesome-te","name_zh":"awesome-te Teenage Engineering 设备破解资源目录","record_type":"resource","relationship":"learning","requirements":["The reviewed README, committed 2026-10-20 and marked as last reviewed that day, has 195 status-marked rows under 11 device sections and a cross-device section, some of them bundling several links: 136 marked active, 56 dormant and 3 archived. Under the contribution guide the marker reflects activity in the past 12 months; the weekly lychee workflow only checks that links resolve.","Entries mix open-source projects, commercial apps and forum, wiki and repair pages, ranging from SysEx, file-transfer and file-format documentation to Ghidra Blackfin support, and include a few AI tools such as an SP-1 reference packaged as a Claude agent skill and an MCP server for the OP-1 field. Several firmware and flashing entries warn that they erase stored data or can brick a device.","A few rows point to unofficial mirrors of OP-1 and OP-1 field firmware and to an OP-1 firmware decryptor; the list itself recommends Teenage Engineering's official downloads. Device firmware keeps its vendor's terms, and each linked project keeps its own license.","The list and its contributions are dedicated to the public domain under CC0 1.0. An independent discovery list."],"requirements_zh":["所审阅的 README 提交于 2026-10-20，并注明当天完成复核，共有 195 行带状态标记的条目，分布在 11 个设备部分和 1 个跨设备部分，其中部分行合并了多个链接：136 项标为活跃、56 项休眠、3 项归档。按其贡献指南，该标记反映项目过去 12 个月内是否有更新；每周运行的 lychee 工作流只检查链接能否访问。","条目既有开源项目，也有商业应用以及论坛、维基和维修页面，内容从 SysEx、文件传输与文件格式文档到 Ghidra 的 Blackfin 支持，另有少量 AI 工具，例如打包为 Claude 智能体技能的 SP-1 参考资料，以及用于 OP-1 field 的 MCP 服务器。多个固件与刷写类条目提醒会清除存储数据或可能导致设备变砖。","少数条目指向 OP-1 和 OP-1 field 固件的非官方镜像，以及一个 OP-1 固件解密工具；清单本身建议使用 Teenage Engineering 的官方下载。设备固件适用其厂商的条款，所链接的各项目保留各自的许可证。","清单及其贡献以 CC0 1.0 方式贡献至公有领域。这是独立的发现清单。"],"targets":["firmware","protocol"],"url":"https://github.com/bnjreece/awesome-te","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/Accenture/FirmLoader/blob/5c9c1a149b2b638d1e2b65d39723b6a45379fdb1/firmloader.py","https://github.com/Accenture/FirmLoader/blob/5c9c1a149b2b638d1e2b65d39723b6a45379fdb1/data_template.json","https://github.com/Accenture/FirmLoader/tree/5c9c1a149b2b638d1e2b65d39723b6a45379fdb1/firmloader_data","https://github.com/Accenture/FirmLoader/blob/5c9c1a149b2b638d1e2b65d39723b6a45379fdb1/LICENSE","https://github.com/Accenture/FirmLoader/pull/5","https://github.com/Accenture/FirmLoader/releases/tag/1.0"],"category":"firmware","description_en":"IDA plugin that applies a microcontroller's memory map to a raw firmware image: once the analyst picks an MCU model, it creates RAM and other memory segments, adds peripheral segments with named registers and, where a vector table is described, labels its entries and turns the handlers they point to into functions. The README compares it to IDA's built-in SVD loader, but it uses a simpler JSON description that can be written by hand from public datasheets. The reviewed commit bundles 813 descriptions for Microchip/Atmel, ST, NXP, TI, Silicon Labs and other MCUs.","description_zh":"为原始微控制器固件镜像套用芯片内存布局的 IDA 插件：分析者选定 MCU 型号后，它会创建 RAM 等内存段，添加带有寄存器命名的外设段，并在描述文件包含中断向量表时标注各表项，把它们指向的处理程序创建为函数。README 称其类似 IDA 内置的 SVD 加载器，但采用更简单的 JSON 描述格式，可依据公开的数据手册手工编写。所审阅提交附带 813 个描述文件，涵盖 Microchip/Atmel、ST、NXP、TI、Silicon Labs 等厂商的 MCU。","entry_url":"https://awesomerea.org/resources/firmloader/","entry_url_zh":"https://awesomerea.org/zh/resources/firmloader/","evidence_url":"https://github.com/Accenture/FirmLoader/blob/5c9c1a149b2b638d1e2b65d39723b6a45379fdb1/README.md","group":"tools","id":"firmloader","json_url":"https://awesomerea.org/resources/firmloader/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/firmloader/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/firmloader/index.md","name":"FirmLoader","name_zh":"FirmLoader 微控制器固件内存布局 IDA 插件","record_type":"resource","relationship":"foundation","requirements":["The only release is tag 1.0, titled “IDA 8.X” and published 2024-12-05; it points to a February 2024 commit. The reviewed main commit 5c9c1a1, the last change on 2024-12-05, is four commits ahead: a contributed pull request adds IDA 9.0 support and another adds an STM32L4x1 SRAM2 segment.","Installed by copying firmloader.py and the firmloader_data folder into IDA's plugins directory; it needs IDA with IDAPython, and the plugin code uses Python 3.8+ syntax. The analyst loads the image at the base address the processor documentation gives, renames the main code segment to ROM and chooses the model under Edit > FirmLoader; applying it marks the ROM segment for IDA auto-analysis.","Input is a firmware image the analyst has already read out of a microcontroller; the repository contains no firmware, only the plugin, MCU description JSON files, a data_template.json and two README images. Of the 813 descriptions, 812 are 32-bit; the 16-bit ATmega328 one lists no peripherals, and four for SPC5 and AURIX TC27x parts have no vector table; README says that where a series has several memory sizes, every unit was generated with the largest RAM. Other MCUs need a hand-written description.","Apache-2.0. README names SPC560B64x as a purely hand-written description and otherwise presents the files as a supplement to SVD data without documenting how they were generated."],"requirements_zh":["唯一的发布版本是标签 1.0，标题为“IDA 8.X”，发布于 2024-12-05，指向 2024 年 2 月的一次提交。所审阅的 main 分支提交 5c9c1a1 是 2024-12-05 的最后一次改动，比该标签多四个提交：一个外部贡献的拉取请求加入了 IDA 9.0 支持，另一个为 STM32L4x1 增加了 SRAM2 内存段。","安装方法是把 firmloader.py 和 firmloader_data 文件夹复制到 IDA 的 plugins 目录；需要带 IDAPython 的 IDA，插件代码使用 Python 3.8+ 语法。分析者需按处理器文档给出的基址加载镜像，把主代码段重命名为 ROM，再在 Edit > FirmLoader 菜单中选择型号；应用后插件会将 ROM 段交给 IDA 自动分析。","输入是分析者已从微控制器中读出的固件镜像；仓库不含任何固件，只有插件本身、MCU 描述 JSON 文件、data_template.json 和两张 README 配图。813 个描述文件中有 812 个为 32 位；16 位的 ATmega328 描述文件未列出外设，另有四个 SPC5 和 AURIX TC27x 芯片的描述文件没有中断向量表；README 说明，若同一系列有多种内存容量，所有型号都按最大 RAM 生成。其他 MCU 需要手工编写描述文件。","采用 Apache-2.0 许可。README 指出 SPC560B64x 是完全手工编写的描述文件，其余文件则只称作 SVD 数据的补充，未说明其生成方式。"],"targets":["firmware"],"url":"https://github.com/Accenture/FirmLoader","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/MaikelChan/CatPrinterBLE/blob/007f82151fe40250bd3d5328139e588ea99364ac/CatPrinterBLE/CatPrinter.cs","https://github.com/MaikelChan/CatPrinterBLE/blob/007f82151fe40250bd3d5328139e588ea99364ac/CatPrinterBLE/Crc8.cs","https://github.com/MaikelChan/CatPrinterBLE/blob/007f82151fe40250bd3d5328139e588ea99364ac/CatPrinterBLE/CatPrinterBLE.csproj","https://github.com/MaikelChan/CatPrinterBLE/blob/007f82151fe40250bd3d5328139e588ea99364ac/CHANGELOG.md","https://github.com/MaikelChan/CatPrinterBLE/blob/007f82151fe40250bd3d5328139e588ea99364ac/LICENSE"],"category":"reconstruction-cases","description_en":"Replaces the vendor phone app for the MXW01 “cat printer”, a small Bluetooth Low Energy thermal printer, with a Windows command-line client. The author reports starting from the iOS-only Moblin implementation and then reverse-engineering the vendor's phone app further, and the client sends CRC8-checked commands to one GATT service while streaming 384-pixel image lines in 1-bit or 4-bit grayscale. Several command IDs remain marked as unknown, and the author tested only this one printer model.","description_zh":"以一个 Windows 命令行客户端替代 MXW01“猫猫打印机”（一款小型低功耗蓝牙热敏打印机）的厂商手机应用。作者称以仅支持 iOS 的 Moblin 实现为起点，再进一步逆向厂商的手机应用；该客户端向一个 GATT 服务发送带 CRC8 校验的命令，并以 1 位或 4 位灰度传输每行 384 像素的图像数据。若干命令 ID 仍标为未知，作者也只测试了这一款打印机。","entry_url":"https://awesomerea.org/resources/catprinterble-mxw01-printer-case/","entry_url_zh":"https://awesomerea.org/zh/resources/catprinterble-mxw01-printer-case/","evidence_url":"https://github.com/MaikelChan/CatPrinterBLE/blob/007f82151fe40250bd3d5328139e588ea99364ac/README.md","group":"cases","id":"catprinterble-mxw01-printer-case","json_url":"https://awesomerea.org/resources/catprinterble-mxw01-printer-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/catprinterble-mxw01-printer-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/catprinterble-mxw01-printer-case/index.md","name":"Cat Printer BLE: reconstructing the MXW01 thermal printer protocol","name_zh":"Cat Printer BLE：重建 MXW01 热敏打印机协议","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the release 1.2.0 commit of 2025-05-22. The tool prints images with Bayer or Floyd–Steinberg dithering, feeds or retracts paper, and reads battery, paper, temperature and state information; README says it is not an editor and that other printer models are not planned because the author has none to test.","Requires the user's own MXW01 printer. The repository contains only original C# source and a photo; the vendor app the author analysed, any decompiled code and any traffic captures are not included, and no account or vendor software is needed at runtime.","Windows only: the project targets .NET 8 for Windows 10 build 19041 or later with native AOT publishing, using the InTheHand.BluetoothLE and SixLabors.ImageSharp packages; the README asks for the .NET 8 Runtime.","CatPrinter.cs names the GATT service and its command, notification and data characteristics and lists the command IDs, with comments marking several as unknown or guessed. The repository has no test suite or CI, so printing behaviour is author-reported.","MIT license."],"requirements_zh":["在 2025-05-22 的 1.2.0 版本提交处审阅。该工具可使用 Bayer 或 Floyd–Steinberg 抖动打印图像、进纸或退纸，并读取电量、纸张、温度和状态信息；README 称它不是编辑器，且作者手头没有其他型号可测，因此不打算支持其他打印机。","需要使用者自己的 MXW01 打印机。仓库只包含原创 C# 源码和一张照片；作者分析过的厂商应用、任何反编译代码和通信抓包均未收录，运行时也不需要账号或厂商软件。","仅支持 Windows：项目面向 Windows 10 build 19041 及以上的 .NET 8，并采用原生 AOT 发布，依赖 InTheHand.BluetoothLE 和 SixLabors.ImageSharp 软件包；README 要求安装 .NET 8 Runtime。","CatPrinter.cs 给出了 GATT 服务及其命令、通知和数据特征值，并列出各命令 ID，注释将其中若干标为未知或推测。仓库没有测试套件或 CI，打印行为为作者报告。","采用 MIT 许可。"],"targets":["protocol"],"url":"https://github.com/MaikelChan/CatPrinterBLE","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/0x1Avram/js-deobfuscator/blob/3a4a20ab0d107d168bbef14105c35970c59e4eae/package.json","https://github.com/0x1Avram/js-deobfuscator/blob/3a4a20ab0d107d168bbef14105c35970c59e4eae/deobfuscator.js","https://github.com/0x1Avram/js-deobfuscator/blob/3a4a20ab0d107d168bbef14105c35970c59e4eae/Stages/stage_09_preparing.js","https://github.com/0x1Avram/js-deobfuscator/blob/3a4a20ab0d107d168bbef14105c35970c59e4eae/Stages/stage_03_stringarray.js","https://github.com/0x1Avram/js-deobfuscator/blob/3a4a20ab0d107d168bbef14105c35970c59e4eae/Stages/stage_04_renameidentifiers.js","https://github.com/0x1Avram/js-deobfuscator/tree/3a4a20ab0d107d168bbef14105c35970c59e4eae/Examples","https://github.com/0x1Avram/js-deobfuscator/blob/3a4a20ab0d107d168bbef14105c35970c59e4eae/LICENSE","https://github.com/0x1Avram/js-deobfuscator/releases/tag/1.0.7"],"category":"web-analysis","description_en":"Node.js deobfuscator for JavaScript produced by Timofey Kachalov's javascript-obfuscator, also offered as obfuscator.io. It parses the sample with esprima and runs eleven stages named after the obfuscator's own, which remove injected self-defending and debug-protection code, unwind control-flow flattening and dead-code injection, restore converted literals and object keys, replace string-array calls with the decoded strings, simplify the result and recursively process code passed to eval. String-array code is detected automatically or supplied as separate files, and an Examples folder pairs original, obfuscated and deobfuscated samples.","description_zh":"面向 Timofey Kachalov 的 javascript-obfuscator（亦以 obfuscator.io 提供）所生成 JavaScript 的 Node.js 反混淆工具。它用 esprima 解析样本，依次运行十一个与该混淆器同名的阶段：移除注入的自我防护和调试保护代码，还原控制流平坦化和死代码注入，恢复被转换的字面量和对象键，把字符串数组调用替换为解码后的字符串，化简结果，并对传给 eval 的代码递归处理。字符串数组相关代码可自动识别，也可拆成单独文件输入；Examples 目录收录了原始、混淆后和反混淆后的成对样本。","entry_url":"https://awesomerea.org/resources/0x1avram-js-deobfuscator/","entry_url_zh":"https://awesomerea.org/zh/resources/0x1avram-js-deobfuscator/","evidence_url":"https://github.com/0x1Avram/js-deobfuscator/blob/3a4a20ab0d107d168bbef14105c35970c59e4eae/README.md","group":"tools","id":"0x1avram-js-deobfuscator","json_url":"https://awesomerea.org/resources/0x1avram-js-deobfuscator/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/0x1avram-js-deobfuscator/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/0x1avram-js-deobfuscator/index.md","name":"JS-Deobfuscator (0x1Avram)","name_zh":"JS-Deobfuscator（0x1Avram）Obfuscator.io 反混淆工具","record_type":"resource","relationship":"foundation","requirements":["Inactive since the reviewed main commit, a README update on 2023-04-17. The last release, 1.0.7 (2022-12-29), attaches binaries.zip with standalone Windows and Linux builds made with pkg, while package.json still reports 1.0.2. The README says it was developed with Node.js 16.15 and worked with obfuscator versions current at the time; output from older obfuscator versions may produce a different AST.","Run from source after npm install (esprima, escodegen, esquery, estraverse, winston and yargs) with node index.js -i input -o output. When automatic detection fails, the string array, its wrappers, the wrapper names and the rotate code are passed as separate files with -s, -w, -n and -r. esprima does not parse all newer JavaScript syntax, so the README suggests transpiling such input with Babel first.","The README warns that the code is not secure and should run only in an isolated environment such as a virtual machine: string-array decoding evaluates code taken from the sample with eval inside the deobfuscator's own Node.js process. The identifier- and property-renaming stages are empty placeholders, so obfuscated names are not recovered.","Supply the obfuscated script yourself. The Examples text files are derived from small snippets, javascript-obfuscator's example script (BSD-2-Clause) and javascript-algorithms (MIT), with both licenses included.","MIT (LICENSE). A different project from ben-sb javascript-deobfuscator, whose npm package is also named js-deobfuscator; this one is used from its repository or release binaries."],"requirements_zh":["自所审阅的 main 分支提交（2023-04-17 的 README 更新）以来没有新的提交。最后一个版本 1.0.7（2022-12-29）附带 binaries.zip，内含用 pkg 构建的独立 Windows 和 Linux 程序，而 package.json 中的版本号仍为 1.0.2。README 称开发时使用 Node.js 16.15，并适用于当时的混淆器版本；旧版混淆器的输出可能生成不同的 AST。","从源码运行需先执行 npm install（依赖 esprima、escodegen、esquery、estraverse、winston 和 yargs），再用 node index.js -i 输入 -o 输出 调用。自动识别失败时，需用 -s、-w、-n 和 -r 分别以单独文件传入字符串数组、其包装函数、包装函数名和轮转代码。esprima 无法解析所有较新的 JavaScript 语法，README 建议先用 Babel 转译这类输入。","README 警告该代码并不安全，只应在虚拟机等隔离环境中运行：解码字符串数组时，会在反混淆工具自身的 Node.js 进程中用 eval 执行从样本中取出的代码。标识符和属性重命名阶段只是空的占位实现，因此不会恢复被混淆的名称。","需自行提供待分析的混淆脚本。Examples 中的文本文件取自简短代码片段、javascript-obfuscator 的示例脚本（BSD-2-Clause）和 javascript-algorithms（MIT），并附有这两份许可证。","MIT 许可证（LICENSE）。它与 ben-sb javascript-deobfuscator 是不同项目，后者的 npm 包同样名为 js-deobfuscator；本项目需从仓库或发布版程序使用。"],"targets":["website"],"url":"https://github.com/0x1Avram/js-deobfuscator","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/uaih3k9x/a0rfid/blob/944ec1581a5c989cc7fbd50fcdba27159ecf7aa1/docs/REVERSE.md","https://github.com/uaih3k9x/a0rfid/blob/944ec1581a5c989cc7fbd50fcdba27159ecf7aa1/docs/PROTOCOL.md","https://github.com/uaih3k9x/a0rfid/blob/944ec1581a5c989cc7fbd50fcdba27159ecf7aa1/docs/ANDROID.md","https://github.com/uaih3k9x/a0rfid/blob/944ec1581a5c989cc7fbd50fcdba27159ecf7aa1/rfid_tool.py","https://github.com/uaih3k9x/a0rfid/blob/944ec1581a5c989cc7fbd50fcdba27159ecf7aa1/ch340_usb.py","https://github.com/uaih3k9x/a0rfid/blob/944ec1581a5c989cc7fbd50fcdba27159ecf7aa1/test_offline.py","https://github.com/uaih3k9x/a0rfid/blob/944ec1581a5c989cc7fbd50fcdba27159ecf7aa1/android/build.sh","https://github.com/uaih3k9x/a0rfid/blob/944ec1581a5c989cc7fbd50fcdba27159ecf7aa1/LICENSE"],"category":"reconstruction-cases","description_en":"Reconstructs the A0 serial protocol of R2000-family 915 MHz UHF RFID desktop readers, which ship with only Windows software and an Android app, from the vendor app's native command encoder rather than its misleading Java SDK. A userspace CH340 driver, a Python CLI and GUI, and a small Android app then talk to the reader directly for inventory and tag-memory reads. docs/PROTOCOL.md records the frame layout, checksum, command table, response formats and the different field orders of READ and WRITE.","description_zh":"从厂商安卓应用的原生指令编码器（而非其具有误导性的 Java SDK）重建 R2000 系列 915 MHz UHF RFID 桌面读写头的 A0 串口协议；这类读写头原本只随附 Windows 软件和安卓应用。项目据此提供用户态 CH340 驱动、Python 命令行与图形界面，以及小型安卓应用，直接与读写头通信，进行标签盘存并读取标签存储区。docs/PROTOCOL.md 记录了帧格式、校验和、指令表、响应格式，以及 READ 与 WRITE 不同的字段顺序。","entry_url":"https://awesomerea.org/resources/a0rfid-uhf-reader-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/a0rfid-uhf-reader-protocol-case/","evidence_url":"https://github.com/uaih3k9x/a0rfid/blob/944ec1581a5c989cc7fbd50fcdba27159ecf7aa1/README.md","group":"cases","id":"a0rfid-uhf-reader-protocol-case","json_url":"https://awesomerea.org/resources/a0rfid-uhf-reader-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/a0rfid-uhf-reader-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/a0rfid-uhf-reader-protocol-case/index.md","name":"a0rfid: an open driver for A0-protocol UHF RFID readers","name_zh":"a0rfid：A0 协议 UHF RFID 读写头的开源驱动","record_type":"resource","relationship":"independent-reconstruction","requirements":["The reviewed main commit of 2026-09-17 is the second of two commits, with no tags or releases. docs/REVERSE.md describes decompiling the vendor APK, finding that the app bypasses its Java codec and calls libnative-lib.so through JNI, reading per-command field layouts from that library's rfid_encode() jump table, and then confirming the frames on hardware. The result is a protocol description and new host software; no reader firmware or vendor app is recovered, and the reader model is not named beyond the R2000 family.","Using the tools requires a compatible A0-protocol reader on its CH340 USB-UART at 115200 8N1, plus tags to test with. Repeating the analysis requires the vendor's own software package and manual, which are not included: REVERSE.md states that the repository contains no vendor code, only frames observed on the wire and code written from them. android/RFID助手.apk is the project's own prebuilt app, built from android/app by android/build.sh.","The Python tools need Python 3 with pyusb and pyserial. --port USB uses the bundled ch340_usb.py userspace driver, which on macOS needs Homebrew libusb; Linux can instead use the stock ch341 kernel driver through /dev/ttyUSB0. The Android app needs Android 7.0+ with USB host; android/build.sh assumes macOS/Homebrew paths, JDK 17, Android SDK platform 34 and build-tools 34.0.0.","test_offline.py runs 17 hardware-free checks of checksums, frame construction and response parsing, several against frames the author recorded from a reader reporting firmware V2.4.1, and docs/ANDROID.md reports 261 offline Android checks against simulated tags. The author reports confirming the read and write paths on one reader and installing and reading with the app on one DJI Smart Controller Enterprise (Android 7.1.2); the app's multi-bank write features were checked only in simulation. The docs also note occasional firmware hangs and a 20 dBm maximum power on the author's unit.","MIT License (2026, a0rfid contributors); the vendor software, SDK and reader firmware keep their own terms. Write, lock and kill commands change real tags."],"requirements_zh":["所审阅的 main 分支提交日期为 2026-09-17，是仓库两个提交中的第二个，没有标签或发布版本。docs/REVERSE.md 说明了分析过程：反编译厂商 APK，发现应用绕过其 Java 编解码器，经 JNI 调用 libnative-lib.so；再从该库 rfid_encode() 的跳转表读出各指令的字段布局，最后在硬件上确认这些帧。成果是一份协议说明和新的主机端软件；项目没有恢复读写头固件或厂商应用，除 R2000 系列外也未写明读写头型号。","使用这些工具需要一台兼容 A0 协议、经 CH340 USB 转串口以 115200 8N1 连接的读写头，以及用于测试的标签。重做分析需要厂商自己的软件包和手册，仓库未附带：REVERSE.md 声明仓库不含任何厂商代码，只有在线路上观察到的帧以及据此编写的代码。android/RFID助手.apk 是项目自己的预构建应用，由 android/build.sh 从 android/app 构建。","Python 工具需要 Python 3 及 pyusb、pyserial。--port USB 使用随附的 ch340_usb.py 用户态驱动，在 macOS 上需要 Homebrew 的 libusb；Linux 也可改用系统自带的 ch341 内核驱动，通过 /dev/ttyUSB0 连接。安卓应用需要 Android 7.0+ 且支持 USB Host；android/build.sh 假定 macOS／Homebrew 路径、JDK 17、Android SDK platform 34 和 build-tools 34.0.0。","test_offline.py 在无硬件条件下运行 17 项检查，覆盖校验和、帧构造和响应解析，其中几项使用作者从一台报告固件 V2.4.1 的读写头录得的帧；docs/ANDROID.md 报告另有 261 项基于模拟标签的安卓离线检查。作者报告已在一台读写头上确认读写路径，并在一台 DJI Smart Controller Enterprise（Android 7.1.2）上完成应用安装和读取；应用的多存储区写入功能仅经过模拟测试。文档还提到作者的设备偶尔会固件卡死，最大输出功率为 20 dBm。","采用 MIT 许可证（2026 年，a0rfid contributors）；厂商软件、SDK 和读写头固件适用其各自条款。写入、锁定和灭活指令会改变真实标签。"],"targets":["protocol"],"url":"https://github.com/uaih3k9x/a0rfid","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/UltraSina/androidReverse/tree/ad9dd7ab4770b089b785039a36be57f50c35f3f0","https://github.com/UltraSina/androidReverse/releases/tag/v20","https://github.com/UltraSina/androidReverse/releases/tag/android","https://github.com/UltraSina/androidReverse/issues/2"],"category":"android","description_en":"Android app, published only as release APKs, that runs an APK reverse-engineering workflow entirely on the phone, from package extraction and Java decompilation to native analysis, editing and rebuilding. It extracts APK, XAPK and split APKS packages from storage or installed apps, decompiles each class with Jadx (with fallback and IR modes), CFR, Procyon, JD-Core, Krakatau or Vineflower, analyzes native libraries through an embedded radare2 with pseudo-C, assembly, hex, control-flow-graph and call-graph views, and since v20 edits resources, binary XML, the manifest and smali before rebuilding and signing the APK. A built-in MCP server lets MCP clients edit those project files while rebuilding stays a manual step; the README also lists Flutter Dart AOT analysis through Unflutter and Unity il2cpp metadata parsing.","description_zh":"一款仅以发布版 APK 形式提供的 Android 应用，把 APK 逆向工作流全部放在手机上完成，涵盖安装包提取、Java 反编译、原生代码分析、编辑和重新打包。它可从存储或已安装应用中提取 APK、XAPK 和拆分的 APKS 安装包，逐个类在 Jadx（含回退与 IR 模式）、CFR、Procyon、JD-Core、Krakatau 和 Vineflower 之间选择引擎反编译，通过内嵌的 radare2 分析原生库并提供伪 C、汇编、十六进制、控制流图和调用图视图；自 v20 起还能编辑资源、二进制 XML、清单和 smali，再重新打包并签名 APK。内置的 MCP 服务器允许 MCP 客户端编辑这些项目文件，重新构建仍需用户手动触发；README 还列出借助 Unflutter 分析 Flutter 的 Dart AOT 代码以及解析 Unity il2cpp 元数据。","entry_url":"https://awesomerea.org/resources/ultrasina-android-reverse/","entry_url_zh":"https://awesomerea.org/zh/resources/ultrasina-android-reverse/","evidence_url":"https://github.com/UltraSina/androidReverse/blob/ad9dd7ab4770b089b785039a36be57f50c35f3f0/README.md","group":"tools","id":"ultrasina-android-reverse","json_url":"https://awesomerea.org/resources/ultrasina-android-reverse/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ultrasina-android-reverse/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ultrasina-android-reverse/index.md","name":"Android Reverse","name_zh":"Android Reverse 设备端逆向套件","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v20, published 2026-08-24, with arm64-v8a, armeabi-v7a and universal APKs; the README's badges name those two architectures and mark the project as in active development. The first release, on 2026-06-17, said editing and repacking were not yet available. Neither the README nor the release notes state a minimum Android version.","At the reviewed commit the repository holds only the README and six screenshots: no app source, build files or license file, and GitHub detects no license, so the app's terms are unstated. The README credits radare2, Sora Editor and the CFR, Procyon, JD-Core, Krakatau, Vineflower and Jadx engines without naming their licenses.","According to the README everything runs on the device, with no PC, ADB or desktop tools. Users supply the packages or installed apps they analyze, and its disclaimer limits use to education and to security research on apps whose authors have given explicit permission.","The MCP server is described only in one README paragraph and the release notes, with no transport, port, tool list or setup steps, and open issue #2 reports edits made through MCP that did not appear in the app. The README does not say how its Smali Explainer produces explanations."],"requirements_zh":["审阅时最新版本为 v20，发布于 2026-08-24，提供 arm64-v8a、armeabi-v7a 和通用版 APK；README 徽章列出这两种架构，并将项目标为积极开发中。2026-06-17 的首个版本说明当时尚不支持编辑和重新打包。README 和发布说明均未写明最低 Android 版本。","在所审阅的提交中，仓库只有 README 和六张截图：没有应用源码、构建文件或许可证文件，GitHub 也未检测到许可证，因此应用的使用条款并未说明。README 致谢 radare2、Sora Editor 以及 CFR、Procyon、JD-Core、Krakatau、Vineflower 和 Jadx 等引擎，但未说明它们的许可证。","据 README 所述，所有操作都在设备上完成，无需电脑、ADB 或桌面工具。待分析的安装包或已安装应用由使用者自备；其免责声明将用途限定于教育，以及在获得应用作者明确许可后进行的安全研究。","MCP 服务器仅在 README 的一段文字和发布说明中提及，未说明传输方式、端口、工具列表或配置步骤；未关闭的 issue #2 报告通过 MCP 所做的修改没有出现在应用中。README 也未说明 Smali Explainer 如何生成解释。"],"targets":["app"],"url":"https://github.com/UltraSina/androidReverse","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/gojue/ecapture/blob/e834aa060d9308e0462837f29779753f9059d9ff/README.md#L34-L37","https://github.com/gojue/ecapture/blob/e834aa060d9308e0462837f29779753f9059d9ff/README.md#L120-L198","https://github.com/gojue/ecapture/blob/e834aa060d9308e0462837f29779753f9059d9ff/docs/compilation.md","https://github.com/gojue/ecapture/blob/e834aa060d9308e0462837f29779753f9059d9ff/docs/minimum-privileges.md","https://github.com/gojue/ecapture/blob/e834aa060d9308e0462837f29779753f9059d9ff/docs/defense-detection.md#L151-L166","https://github.com/gojue/ecapture/blob/e834aa060d9308e0462837f29779753f9059d9ff/docs/e2e-tests.md","https://github.com/gojue/ecapture/blob/e834aa060d9308e0462837f29779753f9059d9ff/CHANGELOG.md","https://github.com/gojue/ecapture/blob/e834aa060d9308e0462837f29779753f9059d9ff/.gitmodules","https://github.com/gojue/ecapture/blob/e834aa060d9308e0462837f29779753f9059d9ff/LICENSE","https://github.com/gojue/ecapture/releases/tag/v2.9.0"],"category":"protocol-analysis","description_en":"eBPF-based Linux and Android tool that attaches uprobes to TLS libraries such as OpenSSL, BoringSSL, GnuTLS and NSS, and to Go's TLS stack, recording the plaintext a process sends and receives without a proxy or an installed CA certificate, so analysts can inspect an application's encrypted traffic on a host they control. Output modes write plaintext text, NSS key logs, or pcapng files with embedded TLS secrets for Wireshark and tshark, and a text mode can rebuild complete HTTP/1.1 and HTTP/2 messages from the captured stream. Separate modules audit bash and zsh commands and MySQL and PostgreSQL queries.","description_zh":"基于 eBPF 的 Linux 与 Android 工具，在 OpenSSL、BoringSSL、GnuTLS、NSS 等 TLS 库以及 Go 的 TLS 实现上挂载 uprobe，记录进程收发的明文，无需代理或安装 CA 证书，便于分析者在自己掌控的主机上检查应用的加密流量。输出模式包括明文文本、NSS 密钥日志，以及内嵌 TLS 密钥、可交给 Wireshark 和 tshark 解读的 pcapng 文件；文本模式还能从捕获的数据流中重建完整的 HTTP/1.1 和 HTTP/2 报文。另有独立模块审计 bash、zsh 命令以及 MySQL、PostgreSQL 查询。","entry_url":"https://awesomerea.org/resources/ecapture/","entry_url_zh":"https://awesomerea.org/zh/resources/ecapture/","evidence_url":"https://github.com/gojue/ecapture/blob/e834aa060d9308e0462837f29779753f9059d9ff/README.md","group":"tools","id":"ecapture","json_url":"https://awesomerea.org/resources/ecapture/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ecapture/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ecapture/index.md","name":"eCapture","name_zh":"eCapture eBPF TLS 明文捕获工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v2.9.0, published 2026-10-24; the reviewed master commit is identical to that tag. Release assets are Linux amd64, arm64 and loong64 archives and .deb packages plus Android amd64 and arm64 archives; the Docker image is Linux only. The README states that Windows and macOS are not supported; the separate eCaptureQ GUI can connect from them to a remote eCapture service.","Needs Linux kernel 4.18+ on x86_64, 5.5+ on aarch64 or 6.6+ on LoongArch64, or Android on x86_64 or aarch64. Loading the eBPF programs requires root or, per the minimum-privileges guide, CAP_BPF, CAP_PERFMON and CAP_SYS_PTRACE on kernel 5.8+ (CAP_SYS_ADMIN on older kernels), plus CAP_NET_ADMIN for pcapng mode. Source builds need Go 1.26+, clang and LLVM 9+, cmake 3.18.4+, libelf and the pinned libpcap submodule; make nocore builds for kernels without BTF.","Analysts choose the library or program to observe: the tls module locates the system OpenSSL through ld.so.conf paths or takes --libssl, which can also name a statically linked program, and gotls takes the Go program's ELF path; pcapng mode also needs a network interface and capture filter. Pcap mode records TLS-protected HTTP/1.x and HTTP/2 over TCP and HTTP/3 over QUIC, while the pcapng text source rebuilds only HTTP/1.1 and HTTP/2 over TCP. The project documents root-only end-to-end tests per module (make e2e).","Apache-2.0; libpcap is a git submodule and the bin, dist, deps and bytecode directories hold only placeholders. Captured plaintext and keys can contain passwords, tokens and personal data: the project's defense-and-detection guide asks for written authorization before production use, scoping capture to chosen processes with --pid and handling the data under organizational policy, and describes how to detect eBPF capture tools."],"requirements_zh":["审阅时最新版本为 v2.9.0，发布于 2026-10-24；所审阅的 master 提交与该标签完全一致。发布文件包括 Linux amd64、arm64、loong64 压缩包和 .deb 安装包，以及 Android amd64、arm64 压缩包；Docker 镜像仅支持 Linux。README 声明不支持 Windows 和 macOS；独立的 eCaptureQ 图形客户端可从这些系统连接远程 eCapture 服务。","需要 x86_64 上 4.18+、aarch64 上 5.5+ 或 LoongArch64 上 6.6+ 的 Linux 内核，或 x86_64、aarch64 架构的 Android。加载 eBPF 程序需要 root；按最小权限指南，也可在 5.8+ 内核上改授 CAP_BPF、CAP_PERFMON 和 CAP_SYS_PTRACE（旧内核为 CAP_SYS_ADMIN），pcapng 模式另需 CAP_NET_ADMIN。从源码构建需要 Go 1.26+、clang 与 LLVM 9+、cmake 3.18.4+、libelf 以及固定版本的 libpcap 子模块；make nocore 可为不支持 BTF 的内核构建。","分析者需选定要观察的库或程序：tls 模块通过 ld.so.conf 路径查找系统 OpenSSL，或由 --libssl 指定（也可指向静态链接的程序）；gotls 需要 Go 程序的 ELF 路径；pcapng 模式还需指定网卡和抓包过滤条件。pcap 模式可记录 TCP 上受 TLS 保护的 HTTP/1.x、HTTP/2 以及 QUIC 上的 HTTP/3，而 pcapng 文本数据源只能重建 TCP 上的 HTTP/1.1 和 HTTP/2。项目文档列出了各模块须以 root 运行的端到端测试（make e2e）。","采用 Apache-2.0；libpcap 以 git 子模块引入，bin、dist、deps 和 bytecode 目录只有占位文件。捕获的明文和密钥可能包含密码、令牌和个人数据：项目的防御与检测指南要求在生产环境使用前取得书面授权，用 --pid 将捕获限定于选定进程，并按组织政策处理数据，同时说明了如何检测 eBPF 捕获工具。"],"targets":["app","protocol"],"url":"https://github.com/gojue/ecapture","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/GainSec/AutoProber/blob/ff0e01fe556c7e183d46462dbc1ebce7b6a10e74/AGENTS.md","https://github.com/GainSec/AutoProber/blob/ff0e01fe556c7e183d46462dbc1ebce7b6a10e74/docs/BOM.md","https://github.com/GainSec/AutoProber/blob/ff0e01fe556c7e183d46462dbc1ebce7b6a10e74/docs/safety.md","https://github.com/GainSec/AutoProber/blob/ff0e01fe556c7e183d46462dbc1ebce7b6a10e74/autoprober/safety.py","https://github.com/GainSec/AutoProber/blob/ff0e01fe556c7e183d46462dbc1ebce7b6a10e74/apps/calibrate.py","https://github.com/GainSec/AutoProber/blob/ff0e01fe556c7e183d46462dbc1ebce7b6a10e74/apps/dashboard.py","https://github.com/GainSec/AutoProber/blob/ff0e01fe556c7e183d46462dbc1ebce7b6a10e74/pyproject.toml","https://github.com/GainSec/AutoProber/blob/ff0e01fe556c7e183d46462dbc1ebce7b6a10e74/LICENSE"],"category":"agent-workflows","description_en":"Flying-probe control stack meant to let a coding agent or an operator take a circuit board on a GRBL 3018-style CNC from locating it on the plate, through XYZ-tagged USB-microscope frames and an annotated map of pads, pins and chips, to probing targets the operator has approved. Python wrappers, a Flask dashboard and AGENTS.md safety rules run every move under an oscilloscope-monitored optical endstop that triggers feed hold and a STOP state with no automatic recovery. The published code covers device control, camera-to-motion calibration and map and probe-candidate review; the README presents locating, stitching and annotating the board as agent tasks.","description_zh":"飞针探测控制套件，旨在让编程智能体或操作员在 GRBL 3018 型 CNC 上处理电路板：先在平台上定位电路板，再拍摄带 XYZ 坐标的 USB 显微镜画面并生成标注焊盘、引脚和芯片的地图，最后探测经操作员批准的目标点。Python 封装、Flask 仪表盘和 AGENTS.md 安全规则让每次移动都处于示波器监测的光电限位之下，一旦触发即暂停进给并进入 STOP 状态，不会自动恢复。公开的代码涵盖设备控制、相机与运动的标定，以及地图和探测候选点的审核；README 把定位、拼接和标注电路板描述为智能体的任务。","entry_url":"https://awesomerea.org/resources/autoprober/","entry_url_zh":"https://awesomerea.org/zh/resources/autoprober/","evidence_url":"https://github.com/GainSec/AutoProber/blob/ff0e01fe556c7e183d46462dbc1ebce7b6a10e74/README.md","group":"agents","id":"autoprober","json_url":"https://awesomerea.org/resources/autoprober/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/autoprober/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/autoprober/index.md","name":"AutoProber","name_zh":"AutoProber 飞针探测自动化套件","record_type":"resource","relationship":"independent-agent-integration","requirements":["README calls the reviewed commit ff0e01f (\"1st Release\", 2026-04-16) a source-available release candidate; pyproject.toml declares version 0.1.0, no releases are published, and the RELEASE_MANIFEST.md the README cites is not in the repository. There have been no commits since.","The tested hardware is a GRBL-compatible 3018-style CNC over USB serial, a UVC USB microscope served by mjpg_streamer, a Siglent oscilloscope over LAN/SCPI (Channel 4 for the optical endstop, Channel 1 for pogo-probe measurement), an optical endstop on an external 5 V supply, an optional Matter power strip controlled through chip-tool, and the 3D-printed toolhead parts in cad/. docs/BOM.md lists the parts.","Runs on a Linux control host with Python 3.8+ via uv; pyproject.toml declares only Flask and pyserial, while the calibration script also imports OpenCV. Lab hosts, ports and paths come from environment variables in the example config. README says calibration must be generated on the machine that moves and the microscope-to-probe offset measured before real probing, and that the dashboard must not be exposed to untrusted networks. No automated tests are published.","Works with whatever agent the operator uses: README has it ingest the project and drive the dashboard or Python scripts, and AGENTS.md sets the safety rules; no MCP server or specific agent is bundled. README limits use to equipment and targets the user is authorized to test.","PolyForm Noncommercial 1.0.0 with a required copyright notice for GainSec; commercial use needs a separate paid license."],"requirements_zh":["README 称所审阅的提交 ff0e01f（“1st Release”，2026-04-16）是源码可见的候选发布版；pyproject.toml 声明版本 0.1.0，项目未发布正式版本，README 引用的 RELEASE_MANIFEST.md 也不在仓库中。此后再无新提交。","经测试的硬件包括：经 USB 串口连接的 GRBL 兼容 3018 型 CNC、由 mjpg_streamer 提供画面的 UVC USB 显微镜、经局域网 SCPI 连接的 Siglent 示波器（通道 4 接光电限位，通道 1 用于弹簧探针测量）、由外部 5 V 电源供电的光电限位、可选的通过 chip-tool 控制的 Matter 电源插排，以及 cad/ 中的 3D 打印探头部件。docs/BOM.md 列出了所需部件。","运行于 Linux 控制主机，经 uv 使用 Python 3.8+；pyproject.toml 只声明 Flask 和 pyserial，而标定脚本还导入了 OpenCV。实验室主机、端口和路径通过示例配置中的环境变量设置。README 称标定数据必须在实际运动的机器上生成，真正探测前须测量显微镜与探针的偏移，且仪表盘不得暴露于不可信网络。项目未公开自动化测试。","可配合操作者选用的任意智能体：README 让智能体读取整个项目并操作仪表盘或 Python 脚本，安全规则由 AGENTS.md 规定；未附带 MCP 服务器或特定智能体。README 限定只能用于使用者获授权测试的设备和目标。","采用 PolyForm Noncommercial 1.0.0 许可证，须保留 GainSec 版权声明；商业使用需另购付费许可。"],"targets":["firmware"],"url":"https://github.com/GainSec/AutoProber","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/mrexodia/mcp-reversing-dataset/blob/523ce22b9b0d3371f6dfc8f344e604064dc0ef97/crackme03/README.md","https://github.com/mrexodia/mcp-reversing-dataset/blob/523ce22b9b0d3371f6dfc8f344e604064dc0ef97/crackme03/report.md","https://github.com/mrexodia/mcp-reversing-dataset/blob/523ce22b9b0d3371f6dfc8f344e604064dc0ef97/VEHMeme/README.md","https://github.com/mrexodia/mcp-reversing-dataset/blob/523ce22b9b0d3371f6dfc8f344e604064dc0ef97/VEHMeme/report.md","https://github.com/mrexodia/mcp-reversing-dataset/blob/523ce22b9b0d3371f6dfc8f344e604064dc0ef97/mcp-job-security/README.md","https://github.com/mrexodia/mcp-reversing-dataset/tree/523ce22b9b0d3371f6dfc8f344e604064dc0ef97"],"category":"learning","description_en":"Three worked examples by mrexodia of a language model reverse-engineering crackme binaries in IDA Pro through his IDA Pro MCP server. Each folder holds the input binary, a README giving its origin, the prompt and the model, the agent's own report and the exported session transcript, so readers can follow every tool call, rename, retype and comment the agent made on the database. The tasks cover a small Linux password check, an obfuscated Linux flag checker and a Windows crackme that, according to the agent's report, routes its checks through vectored exception handling.","description_zh":"mrexodia 发布的三个实例，展示语言模型借助他编写的 IDA Pro MCP 服务器在 IDA Pro 中逆向分析 crackme 二进制。每个文件夹都包含输入二进制、说明其来源、所用提示词和模型的 README、智能体自己撰写的报告以及导出的会话记录，读者可以逐一查看智能体对数据库的每次工具调用、重命名、类型修改和注释。三个任务分别是一个简单的 Linux 密码校验程序、一个经过混淆的 Linux flag 校验程序，以及一个 Windows crackme；据智能体的报告，它借助向量化异常处理来执行校验。","entry_url":"https://awesomerea.org/resources/mcp-reversing-dataset/","entry_url_zh":"https://awesomerea.org/zh/resources/mcp-reversing-dataset/","evidence_url":"https://github.com/mrexodia/mcp-reversing-dataset/blob/523ce22b9b0d3371f6dfc8f344e604064dc0ef97/README.md","group":"learn","id":"mcp-reversing-dataset","json_url":"https://awesomerea.org/resources/mcp-reversing-dataset/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/mcp-reversing-dataset/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mcp-reversing-dataset/index.md","name":"MCP Reversing Dataset (mrexodia)","name_zh":"MCP 逆向数据集（mrexodia）","record_type":"resource","relationship":"learning","requirements":["Three tasks, committed between 2025-03-28 and 2025-04-14 and unchanged since. Each folder's README gives the input, the prompt and the model, next to the agent's report.md and an exported task-history.md transcript; crackme03 adds the agent's solve.py and a launcher that runs the ELF through WSL. All three runs used Claude 3.7 Sonnet in Roo Cline or Roo Code with the author's IDA Pro MCP server.","The repository bundles the three challenge binaries it analyzes: VEHMeme.exe, a Windows crackme the README credits to Brit and xenocidewiki from an earlier CTF; crackme03.elf, compiled with GCC 11.4.0 on Ubuntu 22.04 from a NoraCodes crackmes source file; and transformed.elf, described as a modified version of babush's mcp-job-security obfuscation project. They are small CTF-style samples rather than commercial software, but the repository states no redistribution terms for them.","Following a run needs IDA Pro, which is commercial, the IDA Pro MCP server and an MCP client. The prompts ask the model to rename, retype and comment the database and write a report, and the crackme03 prompt forbids brute forcing. The transcripts are single, unscored runs: the crackme03 report records a password confirmed by running the binary, the mcp-job-security report names the flag it extracted, and the VEHMeme report explains the exception-based check without stating a flag. These are author-published results.","There is no license file, so reuse terms for the transcripts and reports are unstated; the README welcomes contributions, but only the original three tasks exist."],"requirements_zh":["共三个任务，提交于 2025-03-28 至 2025-04-14 之间，此后未再更新。每个文件夹的 README 说明输入、提示词和模型，旁边是智能体撰写的 report.md 和导出的 task-history.md 会话记录；crackme03 另附智能体编写的 solve.py，以及一个通过 WSL 运行该 ELF 的启动脚本。三次运行都在 Roo Cline 或 Roo Code 中使用 Claude 3.7 Sonnet，并配合作者的 IDA Pro MCP 服务器。","仓库附带所分析的三个挑战二进制：VEHMeme.exe 是 README 注明出自 Brit 和 xenocidewiki、来自早年一场 CTF 的 Windows crackme；crackme03.elf 由 NoraCodes crackmes 中的一个源文件在 Ubuntu 22.04 上用 GCC 11.4.0 编译而成；transformed.elf 则被描述为 babush 的 mcp-job-security 混淆项目的修改版本。它们是小型 CTF 式样本而非商业软件，但仓库未说明其再分发条款。","按记录跟做需要商业软件 IDA Pro、IDA Pro MCP 服务器以及一个 MCP 客户端。提示词要求模型对数据库进行重命名、修改类型、添加注释并撰写报告，crackme03 的提示词还禁止暴力破解。这些会话记录都是未经评分的单次运行：crackme03 的报告记录了经运行二进制确认的密码，mcp-job-security 的报告给出了它提取的 flag，VEHMeme 的报告解释了基于异常的校验机制，但没有给出 flag。这些均为作者发布的结果。","仓库没有许可证文件，因此会话记录和报告的复用条款不明；README 欢迎贡献，但目前只有最初的三个任务。"],"targets":["binary"],"url":"https://github.com/mrexodia/mcp-reversing-dataset","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/irelance/jsc-decompile-mozjs-34/blob/44ffa1b0bb5ffc42231fcfcb60c5e6a3bc366062/composer.json","https://github.com/irelance/jsc-decompile-mozjs-34/blob/44ffa1b0bb5ffc42231fcfcb60c5e6a3bc366062/run.php","https://github.com/irelance/jsc-decompile-mozjs-34/blob/44ffa1b0bb5ffc42231fcfcb60c5e6a3bc366062/scan.php","https://github.com/irelance/jsc-decompile-mozjs-34/blob/44ffa1b0bb5ffc42231fcfcb60c5e6a3bc366062/src/Decompile.php","https://github.com/irelance/jsc-decompile-mozjs-34/blob/44ffa1b0bb5ffc42231fcfcb60c5e6a3bc366062/src/Constant.php","https://github.com/irelance/jsc-decompile-mozjs-34/tree/44ffa1b0bb5ffc42231fcfcb60c5e6a3bc366062/src/Xdr"],"category":"javascript-electron","description_en":"PHP decoder and decompiler for SpiderMonkey 34 JavaScript bytecode, which the README says may handle .jsc files compiled by cocos2d-x. It parses the XDR-serialized scripts with their atoms, constants, objects, regular expressions and try and scope notes, decodes instructions from a SpiderMonkey 34 opcode table and rebuilds approximate JavaScript for each function context, while a second script prints the decoded operations instead. The author describes it as unfinished and as an example of how a JavaScript virtual machine works.","description_zh":"用 PHP 编写的 SpiderMonkey 34 JavaScript 字节码解码与反编译工具，README 称它可能可以处理 cocos2d-x 编译生成的 .jsc 文件。它解析以 XDR 序列化的脚本及其中的原子（atom）、常量、对象、正则表达式和 try/作用域注记，依据 SpiderMonkey 34 的操作码表解码指令，并为每个函数上下文重建近似的 JavaScript 代码；另一个脚本则改为输出解码后的操作序列。作者称该项目尚未完成，可作为理解 JavaScript 虚拟机工作方式的示例。","entry_url":"https://awesomerea.org/resources/jsc-decompile-mozjs-34/","entry_url_zh":"https://awesomerea.org/zh/resources/jsc-decompile-mozjs-34/","evidence_url":"https://github.com/irelance/jsc-decompile-mozjs-34/blob/44ffa1b0bb5ffc42231fcfcb60c5e6a3bc366062/readme.md","group":"tools","id":"jsc-decompile-mozjs-34","json_url":"https://awesomerea.org/resources/jsc-decompile-mozjs-34/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/jsc-decompile-mozjs-34/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/jsc-decompile-mozjs-34/index.md","name":"jsc-decompile-mozjs-34","name_zh":"jsc-decompile-mozjs-34 SpiderMonkey 字节码反编译器","record_type":"resource","relationship":"foundation","requirements":["No releases; the last commit, on 2021-07-27, fixed global-variable and object-initialization opcodes, and the README says the project may no longer be updated and is not complete. It targets SpiderMonkey 34 bytecode: the README notes that opcodes differ between SpiderMonkey versions, lists the magic values for bytecode versions 33 to 47, and says the tool does not check the magic, so files from nearby versions may partly decode.","Runs on PHP 7.0 or later (the README says it still works on 7.4) after composer install, which only generates the autoloader. php run.php prints reconstructed code for each script context, and php scan.php prints atoms, decoded operations, constants and regular expressions for files that do not decompile. Input .jsc files come from the user; the repository holds no sample files or tests, and the source has no decryption or decompression step, so it reads only plain XDR bytecode.","The README reports a fatal bug when decompiling deeply nested contexts and says output is not runnable, with generated names for local variables that the compiler discarded, so results should be checked against the scan.php operations. There is no license file, and composer.json declares the package proprietary, so the repository grants no reuse terms; recovered scripts remain subject to the rights of the application's owner."],"requirements_zh":["没有发布版本；最后一次提交在 2021-07-27，修复了全局变量和对象初始化相关的操作码，README 称项目可能不再更新且尚未完成。它面向 SpiderMonkey 34 的字节码：README 指出不同 SpiderMonkey 版本的操作码各不相同，列出了字节码版本 33 至 47 的魔数，并说明工具不检查魔数，因此相近版本的文件可能部分可解码。","需要 PHP 7.0 或更高版本（README 称在 7.4 上仍可运行），并先执行 composer install，该步骤只生成自动加载文件。php run.php 输出每个脚本上下文重建出的代码；对无法反编译的文件，php scan.php 会输出原子、解码后的操作、常量和正则表达式。输入的 .jsc 文件由使用者提供；仓库不含样例文件或测试，源码中也没有解密或解压步骤，因此只能读取未经处理的 XDR 字节码。","README 报告在反编译深层嵌套的上下文时存在严重缺陷，并称输出无法直接运行，编译器丢弃的局部变量名会以自动生成的名称代替，因此结果应与 scan.php 输出的操作序列对照核实。仓库没有许可证文件，composer.json 将该包声明为 proprietary，因此仓库未授予任何复用条款；恢复出的脚本仍受应用权利人的权利约束。"],"targets":["app","game"],"url":"https://github.com/irelance/jsc-decompile-mozjs-34","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/secrary/Andromeda/blob/50fdaaf59328fb3430d76d92c6319d2232766f7a/Andromeda/Andromeda.cpp","https://github.com/secrary/Andromeda/blob/50fdaaf59328fb3430d76d92c6319d2232766f7a/Andromeda/APK.hpp","https://github.com/secrary/Andromeda/blob/50fdaaf59328fb3430d76d92c6319d2232766f7a/Andromeda/patterns.hpp","https://github.com/secrary/Andromeda/blob/50fdaaf59328fb3430d76d92c6319d2232766f7a/Makefile","https://github.com/secrary/Andromeda/blob/50fdaaf59328fb3430d76d92c6319d2232766f7a/third_party.md","https://github.com/secrary/Andromeda/tree/50fdaaf59328fb3430d76d92c6319d2232766f7a/slicer","https://github.com/secrary/Andromeda/blob/50fdaaf59328fb3430d76d92c6319d2232766f7a/LICENSE","https://github.com/secrary/Andromeda/commits/50fdaaf59328fb3430d76d92c6319d2232766f7a"],"category":"android","description_en":"Interactive command-line tool by Lasha Khasaia for first-pass reverse engineering of Android APKs, written in C/C++ for speed. It unpacks an APK, parses AndroidManifest.xml, the signing certificate and the DEX files at the archive root, then opens a shell with tab completion for listing permissions, activities, services, receivers and likely entry points, listing and searching classes, methods and strings, disassembling a method's Dalvik bytecode and listing, hashing or extracting native libraries. Further commands report whether the app is debuggable, a creation date taken from its certificate, URL and email strings, and a guess at whether it was written in Java, Kotlin or Xamarin .NET.","description_zh":"Lasha Khasaia 开发的交互式命令行工具，用于对 Android APK 做初步逆向分析，以 C/C++ 编写以求速度。它解包 APK，解析 AndroidManifest.xml、签名证书和压缩包根目录下的 DEX 文件，随后打开一个支持 Tab 补全的交互环境，可列出权限、Activity、Service、Receiver 和可能的入口点，列出并搜索类、方法和字符串，反汇编某个方法的 Dalvik 字节码，以及列出、计算哈希或提取原生库。其他命令可报告应用是否可调试、依据证书得出的创建日期、URL 和电子邮件字符串，并推测应用使用 Java、Kotlin 还是 Xamarin .NET 编写。","entry_url":"https://awesomerea.org/resources/andromeda/","entry_url_zh":"https://awesomerea.org/zh/resources/andromeda/","evidence_url":"https://github.com/secrary/Andromeda/blob/50fdaaf59328fb3430d76d92c6319d2232766f7a/README.md","group":"tools","id":"andromeda","json_url":"https://awesomerea.org/resources/andromeda/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/andromeda/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/andromeda/index.md","name":"Andromeda","name_zh":"Andromeda Android 应用交互式逆向工具","record_type":"resource","relationship":"foundation","requirements":["Inactive early-stage project: the README says the tool is in the early development stage, and its 29 commits run from 2019-09-22 to the reviewed master commit of 2020-03-14, which removes an editor folder. There are no tags or releases, and GitHub does not mark the repository archived. Documenting the tool is still a TODO; the README shows the command list only as a screenshot, and the author notes very limited Android experience.","Built from source with make, which compiles everything with clang++ in C++17 mode (-std=c++1z) and debug flags (-g -O0), linking zlib and OpenSSL's libcrypto; the README's apt commands install clang, libz-dev and libssl-dev. The Makefile adds libstdc++fs on Linux and Homebrew openssl@1.1 paths on macOS; Windows is not covered.","Input is an APK supplied by the user, run as ./bin/andromeda app.apk. The path must end in .apk, and the tool stops if the unpacked archive lacks AndroidManifest.xml or a DEX file at its root, so bare DEX files are not accepted. The repository contains no sample APKs.","Apache-2.0 license. third_party.md lists the bundled libraries with their own licenses: Google's dexter slicer (Apache-2.0), Claud Xiao's AxmlParser, linenoise-cpp, miniz and pugixml; the tree also bundles the digestpp hashing headers."],"requirements_zh":["处于早期阶段且已不再活跃：README 称该工具仍处于早期开发阶段；仓库共 29 个提交，时间从 2019-09-22 到所审阅的 2020-03-14 master 提交，后者只删除了一个编辑器配置目录。仓库没有标签或发行版，GitHub 也未将其标为已归档。为工具编写文档仍列在 TODO 中；README 只以截图展示命令列表，作者也说明自己的 Android 经验非常有限。","需用 make 从源码构建：以 clang++ 的 C++17 模式（-std=c++1z）和调试参数（-g -O0）编译全部源码，并链接 zlib 与 OpenSSL 的 libcrypto；README 给出的 apt 命令安装 clang、libz-dev 和 libssl-dev。Makefile 在 Linux 上额外链接 libstdc++fs，在 macOS 上使用 Homebrew 的 openssl@1.1 路径；未涉及 Windows。","输入为使用者自备的 APK，用法为 ./bin/andromeda app.apk。路径必须以 .apk 结尾；若解包后的压缩包根目录缺少 AndroidManifest.xml 或 DEX 文件，工具即停止，因此不接受单独的 DEX 文件。仓库中没有示例 APK。","采用 Apache-2.0 许可。third_party.md 列出随附的第三方库及其各自许可证：Google 的 dexter slicer（Apache-2.0）、Claud Xiao 的 AxmlParser、linenoise-cpp、miniz 和 pugixml；代码树中还附带 digestpp 哈希头文件库。"],"targets":["app"],"url":"https://github.com/secrary/Andromeda","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/developer-krushna/Dex-Editor-Android/blob/55fd9f03ae43b321e56b5b99677b7f6705e39158/app/build.gradle","https://github.com/developer-krushna/Dex-Editor-Android/blob/55fd9f03ae43b321e56b5b99677b7f6705e39158/app/src/main/java/modder/hub/dexeditor/activity/AIOverViewActivity.java","https://github.com/developer-krushna/Dex-Editor-Android/blob/55fd9f03ae43b321e56b5b99677b7f6705e39158/app/src/main/java/modder/hub/dexeditor/fragment/SmaliMethodFieldListFragment.java","https://github.com/developer-krushna/Dex-Editor-Android/blob/55fd9f03ae43b321e56b5b99677b7f6705e39158/app/src/main/java/modder/hub/dexeditor/utils/DexFileSelector.java","https://github.com/developer-krushna/Dex-Editor-Android/tree/55fd9f03ae43b321e56b5b99677b7f6705e39158/app/src/main/java/com/android/tools/smali","https://github.com/developer-krushna/Dex-Editor-Android/blob/55fd9f03ae43b321e56b5b99677b7f6705e39158/.github/workflows/android.yml","https://github.com/developer-krushna/Dex-Editor-Android/blob/55fd9f03ae43b321e56b5b99677b7f6705e39158/LICENSE","https://github.com/developer-krushna/Dex-Editor-Android/releases/tag/v2.0-sora-editor"],"category":"android","description_en":"Work-in-progress Android app for editing DEX files on the device, built on a modified in-tree copy of Google's smali, baksmali and dexlib2. It loads one or more DEX files into a class tree and opens classes as smali in a Sora Editor view with method, field and string lists, label jumps, search and replace, method flow diagrams and Jadx decompilation of a class or method to Java, then deletes classes or recompiles the edited DEX files. The README credits MT Manager for the app's logic and interface ideas.","description_zh":"一款仍在开发中的 Android 应用，用于在设备上编辑 DEX 文件，构建在仓库内经修改的 Google smali、baksmali 和 dexlib2 副本之上。它把一个或多个 DEX 文件载入类树，在基于 Sora Editor 的编辑器中以 smali 打开类，提供方法、字段和字符串列表、标签跳转、搜索替换、方法流程图，以及借助 Jadx 把单个类或方法反编译为 Java，之后可删除类或重新编译修改后的 DEX 文件。README 称应用的逻辑与界面构思来自 MT Manager。","entry_url":"https://awesomerea.org/resources/dex-editor-android/","entry_url_zh":"https://awesomerea.org/zh/resources/dex-editor-android/","evidence_url":"https://github.com/developer-krushna/Dex-Editor-Android/blob/55fd9f03ae43b321e56b5b99677b7f6705e39158/README.md","group":"tools","id":"dex-editor-android","json_url":"https://awesomerea.org/resources/dex-editor-android/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dex-editor-android/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dex-editor-android/index.md","name":"Dex-Editor-Android","name_zh":"Dex-Editor-Android 设备端 DEX 编辑器","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v2.0-sora-editor, published 2026-06-09 with one app-release.apk, while the README's sample-app link still points to v1.3_final of 2025-04-29; the reviewed main commit of 2026-07-29 adds later fixes and merged contributor pull requests. The README lists DEX format versions 40 and, partially, 41, and its to-do list still has batch class insertion and extraction and a direct class renamer.","Build with Android Studio, JDK 17 or 21, Gradle 9.5.0 and Android Gradle Plugin 9.2.1; app/build.gradle compiles against SDK 37 with minSdk 24 and targetSdk 28, and the README also mentions Sketchware Pro on Java 11. Dependencies include jadx-core 1.4.7, Sora Editor 0.23.6 and bundled antlr and commons-io JARs. CI builds debug and unsigned release APKs, and the only unit and instrumented tests are the Android Studio examples.","The file picker selects DEX files the user supplies. An AI Explanation screen that the README does not mention sends a smali method picked from the method list, with a default register-usage prompt or a user-edited one, to Google's Gemini 2.0 Flash API using an API key entered in settings; method flow diagrams are drawn locally with a bundled Graphviz viz.js build.","LICENSE is Apache-2.0 (copyright 2024-26 Krushna Chandra), but the README adds that the code may not be used in private projects and that contributions are welcome only in this repository, restrictions Apache-2.0 itself does not contain, so reuse terms are unclear; the in-tree smali code keeps Google's BSD-style notices."],"requirements_zh":["审阅时最新版本为 v2.0-sora-editor，发布于 2026-06-09，只附一个 app-release.apk；README 中的示例应用链接仍指向 2025-04-29 的 v1.3_final。所审阅的 main 分支 2026-07-29 提交还包含此后的修复和合并的贡献者拉取请求。README 列出支持 DEX 格式版本 40，以及部分支持 41；其待办事项中仍有批量插入与提取类，以及直接重命名类。","构建需要 Android Studio、JDK 17 或 21、Gradle 9.5.0 和 Android Gradle Plugin 9.2.1；app/build.gradle 以 SDK 37 编译，minSdk 为 24，targetSdk 为 28，README 还提到可用 Sketchware Pro（Java 11）构建。依赖包括 jadx-core 1.4.7、Sora Editor 0.23.6，以及仓库内附带的 antlr 和 commons-io JAR。CI 构建调试版和未签名的发布版 APK，单元测试和仪器测试只有 Android Studio 的示例。","文件选择器用于选取使用者自备的 DEX 文件。README 未提及的“AI Explanation”界面会把从方法列表中选出的 smali 方法，连同默认的寄存器用法提示词或用户修改后的提示词，通过设置中填写的 API 密钥发送到 Google 的 Gemini 2.0 Flash API；方法流程图则使用内置的 Graphviz viz.js 在本地绘制。","LICENSE 为 Apache-2.0（版权 2024-26 Krushna Chandra），但 README 另称不得在私有项目中使用这些代码，且只欢迎在本仓库内贡献，这些限制并不在 Apache-2.0 条款之中，因此再利用条款并不明确；仓库内的 smali 代码保留了 Google 的 BSD 式许可声明。"],"targets":["app"],"url":"https://github.com/developer-krushna/Dex-Editor-Android","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/GaloisInc/grease/blob/b94e1e010c289cf579fe868307857a417d6e3a2c/README.md","https://github.com/GaloisInc/grease/blob/b94e1e010c289cf579fe868307857a417d6e3a2c/doc/install.md","https://github.com/GaloisInc/grease/blob/b94e1e010c289cf579fe868307857a417d6e3a2c/doc/usage.md","https://github.com/GaloisInc/grease/blob/b94e1e010c289cf579fe868307857a417d6e3a2c/doc/dev/dev.md","https://github.com/GaloisInc/grease/blob/b94e1e010c289cf579fe868307857a417d6e3a2c/doc/ghidra-plugin.md","https://github.com/GaloisInc/grease/blob/b94e1e010c289cf579fe868307857a417d6e3a2c/doc/limitations.md","https://github.com/GaloisInc/grease/blob/b94e1e010c289cf579fe868307857a417d6e3a2c/doc/overrides.md","https://github.com/GaloisInc/grease/tree/b94e1e010c289cf579fe868307857a417d6e3a2c/grease-exe/tests","https://github.com/GaloisInc/grease/blob/b94e1e010c289cf579fe868307857a417d6e3a2c/LICENSE","https://galoisinc.github.io/grease/","https://www.galois.com/articles/introducing-grease"],"category":"native-analysis","description_en":"Galois's command-line tool, Ghidra plug-in and Haskell library for checking properties of binaries with under-constrained symbolic execution. It lifts AArch32, PowerPC or x86_64 ELF executables and shared objects, or LLVM bitcode, into a control-flow graph, simulates each function from fully symbolic registers and grows the inferred memory layout after out-of-bounds accesses, then reports likely undefined behavior such as division by zero or invalid memory access together with concretized arguments. Built-in overrides, or user overrides written in Crucible's S-expression language, model external library functions, and the plug-in presents results in Ghidra.","description_zh":"Galois 开发的命令行工具、Ghidra 插件和 Haskell 库，借助欠约束符号执行检查二进制程序的性质。它把 AArch32、PowerPC 或 x86_64 的 ELF 可执行文件和共享对象（或 LLVM bitcode）转换为控制流图，从所有寄存器均为符号值的状态模拟每个函数，并在发生越界访问后逐步扩充推断出的内存布局，最终报告除零、非法内存访问等可能的未定义行为，并给出具体化的参数。内置覆盖（override）或用户以 Crucible S 表达式语言编写的覆盖可模拟外部库函数，插件则在 Ghidra 中展示结果。","entry_url":"https://awesomerea.org/resources/grease/","entry_url_zh":"https://awesomerea.org/zh/resources/grease/","evidence_url":"https://github.com/GaloisInc/grease/blob/b94e1e010c289cf579fe868307857a417d6e3a2c/doc/overview.md","group":"tools","id":"grease","json_url":"https://awesomerea.org/resources/grease/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/grease/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/grease/index.md","name":"GREASE","name_zh":"GREASE 欠约束符号执行二进制分析工具","record_type":"resource","relationship":"foundation","requirements":["No tagged releases at review: the installation guide offers a nightly Docker image built from main (ghcr.io/galoisinc/grease:nightly) or a source build, and the same documentation is published at galoisinc.github.io/grease. The reviewed main commit is dated 2026-09-24; Galois introduced the tool in a blog post dated 2025-03-19.","Source builds need GHC 9.6, 9.8 or 9.10, cabal-install 3.6+ and the repository's git submodules, including Galois's macaw, crucible, what4 and elf-edit. A standalone binary also needs one of the SMT solvers bitwuzla, cvc4, cvc5, yices or z3; it defaults to yices, which CI tests at 2.6.5, and the Docker image includes the solvers. The Ghidra plug-in needs Ghidra 11.0+ and a local grease binary.","Supply the ELF binary or LLVM bitcode yourself. By default every known function is analyzed; entry points can instead be chosen by symbol, address or core dump. The limitations page lists single-threaded analysis only, k-bounded data structures, loops and recursion, skipped calls through symbolic function pointers, no stack-buffer-overflow detection or heap-exhaustion modeling, limited string operations and no support for code that runs before main.","The repository commits small test fixtures built from adjacent C or assembly sources: about 200 AArch32, PowerPC and x86_64 ELF executables and shared objects under grease-exe/tests, plus test ELFs under grease-x86/test-data, ghidra-ecfs/src/test/resources/ecfs and the bundled screach reachability tool's test-data directories.","BSD-3-Clause (LICENSE). The README credits DARPA funding and carries Distribution Statement A, approved for public release. Reports depend on the inferred preconditions, bounds and overrides."],"requirements_zh":["审阅时没有带标签的发布版本：安装指南提供由 main 分支构建的每夜 Docker 镜像（ghcr.io/galoisinc/grease:nightly），或从源码构建；同一套文档发布在 galoisinc.github.io/grease。所审阅的 main 分支提交日期为 2026-09-24；Galois 在 2025-03-19 的博客文章中介绍了该工具。","从源码构建需要 GHC 9.6、9.8 或 9.10、cabal-install 3.6+ 以及仓库的 git 子模块，其中包括 Galois 的 macaw、crucible、what4 和 elf-edit。独立运行的程序还需要 bitwuzla、cvc4、cvc5、yices 或 z3 中的一种 SMT 求解器；默认使用 yices，CI 测试的版本为 2.6.5，Docker 镜像已包含这些求解器。Ghidra 插件需要 Ghidra 11.0+ 和本地的 grease 程序。","需自行提供要分析的 ELF 二进制或 LLVM bitcode。默认分析所有已知函数，也可按符号、地址或核心转储选择入口。局限性页面列出：只分析单线程执行；数据结构、循环和递归受 k 界限制；通过符号函数指针的调用会被跳过；不检测栈缓冲区溢出，也不模拟堆耗尽；字符串操作支持有限；不支持在 main 之前运行的代码。","仓库提交了由相邻 C 或汇编源码构建的小型测试样本：grease-exe/tests 下约 200 个 AArch32、PowerPC 和 x86_64 ELF 可执行文件与共享对象，另有 grease-x86/test-data、ghidra-ecfs/src/test/resources/ecfs 以及随附的 screach 可达性分析工具各测试数据目录中的测试 ELF。","BSD-3-Clause 许可证（LICENSE）。README 注明由 DARPA 资助，并附有“Distribution Statement A”（已批准公开发布）声明。报告结果取决于推断出的前置条件、界限和覆盖。"],"targets":["binary"],"url":"https://github.com/GaloisInc/grease","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/cn0xroot/IFDA/blob/90c11c2179c8a1c907529a9e866c06b636375077/CHANGELOG.md","https://github.com/cn0xroot/IFDA/blob/90c11c2179c8a1c907529a9e866c06b636375077/firmware-analysis-requirements.md","https://github.com/cn0xroot/IFDA/blob/90c11c2179c8a1c907529a9e866c06b636375077/ENVIRONMENT.md","https://github.com/cn0xroot/IFDA/blob/90c11c2179c8a1c907529a9e866c06b636375077/service/README.md","https://github.com/cn0xroot/IFDA/blob/90c11c2179c8a1c907529a9e866c06b636375077/pyproject.toml","https://github.com/cn0xroot/IFDA/blob/90c11c2179c8a1c907529a9e866c06b636375077/.gitmodules","https://github.com/cn0xroot/IFDA/blob/90c11c2179c8a1c907529a9e866c06b636375077/LICENSE"],"category":"firmware","description_en":"Static analysis pipeline for extracted IoT firmware: pointed at one ELF or an unpacked root filesystem, it disassembles binaries with Capstone for x86, ARM/Thumb-2, AArch64 and MIPS, recovers functions, call graphs and exploit mitigations, and reports candidate issues from dangerous-function calls, call-graph taint paths, CVE correlation through cve-bin-tool, embedded secrets, script injection patterns and filesystem hardening checks. Reports come out as JSON, Markdown and a CycloneDX SBOM. Optional add-ons are Ghidra headless pseudocode, moria-based extraction of raw images and a Go service with a job queue, REST API, bilingual web UI and an LLM agent that triages a finished scan's findings.","description_zh":"面向已解包 IoT 固件的静态分析流水线：对单个 ELF 或解包后的根文件系统，它用 Capstone 反汇编 x86、ARM/Thumb-2、AArch64 和 MIPS 二进制，恢复函数、调用图和漏洞缓解措施，并从危险函数调用、调用图污点路径、借助 cve-bin-tool 的 CVE 关联、内嵌密钥、脚本注入模式和文件系统加固检查中报告候选问题。报告以 JSON、Markdown 和 CycloneDX SBOM 输出。可选组件包括 Ghidra 无界面伪代码、基于 moria 的原始镜像解包，以及一个 Go 服务，提供任务队列、REST API、中英双语网页界面，并可由大模型智能体对已完成的扫描结果进行分诊。","entry_url":"https://awesomerea.org/resources/ifda-iot-firmware-deep-analysis/","entry_url_zh":"https://awesomerea.org/zh/resources/ifda-iot-firmware-deep-analysis/","evidence_url":"https://github.com/cn0xroot/IFDA/blob/90c11c2179c8a1c907529a9e866c06b636375077/README.md","group":"tools","id":"ifda-iot-firmware-deep-analysis","json_url":"https://awesomerea.org/resources/ifda-iot-firmware-deep-analysis/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ifda-iot-firmware-deep-analysis/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ifda-iot-firmware-deep-analysis/index.md","name":"IFDA (IoT Firmware Deep Analysis)","name_zh":"IFDA IoT 固件深度分析工具","record_type":"resource","relationship":"foundation","requirements":["The reviewed main commit 90c11c2 of 2026-09-21 is the 29th since the project began on 2026-06-10. CHANGELOG calls it v4.4, while the latest tag is V4.1, five commits earlier, there are no GitHub releases and pyproject.toml still declares 2.0.0. README describes a first iteration covering binary reverse engineering and vulnerability discovery; emulated or dynamic validation is listed as planned, not built.","The Python 3.10+ core needs capstone, pyelftools, cryptography, Pillow and cve-bin-tool, which README calls required: it keeps a local CVE database of 1 GB or more and needs network access on first use, and without it correlation falls back to a small curated database with a warning. Optional parts are yara-python, Ghidra headless with JDK 17+ for pseudocode, CuPy for GPU chart rendering, the Go 1.22+ service for the REST API and web UI, and the moria submodule, built with CMake and a C++20 compiler, for unpacking raw images. Linux and macOS are supported; Windows only through WSL2.","Input is a single ELF, an extracted firmware tree or, through the service's extract job, a raw image whose filesystem region the analyst chooses. README and the requirements document limit use to firmware the operator owns or is authorized to assess. The repository contains no firmware; its tests build cross-compiled x86_64, MIPS, ARM and AArch64 samples, and README reports 25 passed and 2 skipped with cross-compilers and Ghidra installed.","README calls decompilation-free static analysis heuristic: findings carry confidence scores, and taint results are candidate paths for analyst validation, not proven exploits. The optional AI analysis sends a finished scan to an OpenAI-compatible or Anthropic-protocol endpoint the user configures, storing API keys encrypted; the model pulls finding evidence, pseudocode, init scripts and service data through tools. README says these features were tested with Claude models.","Apache-2.0, added on 2026-09-17; cve-bin-tool (GPL-3.0) is only invoked as a subprocess, and moria is MIT."],"requirements_zh":["所审阅的 main 分支提交 90c11c2 日期为 2026-09-21，是项目自 2026-06-10 开始以来的第 29 次提交。CHANGELOG 称其为 v4.4，而最新标签是早五次提交的 V4.1，GitHub 上没有发布版本，pyproject.toml 仍声明为 2.0.0。README 称这是第一阶段，涵盖二进制逆向与漏洞发现；仿真或动态验证列为计划中的功能，尚未实现。","Python 3.10+ 核心需要 capstone、pyelftools、cryptography、Pillow 以及 README 称为必需的 cve-bin-tool：后者在本地维护 1 GB 以上的 CVE 数据库，首次使用需联网；缺少它时，CVE 关联会退回到一个小型人工整理的数据库并给出警告。可选组件包括 yara-python、用于生成伪代码的 Ghidra 无界面模式与 JDK 17+、用于 GPU 图表渲染的 CuPy、提供 REST API 和网页界面的 Go 1.22+ 服务，以及用 CMake 和 C++20 编译器构建、用于解包原始镜像的 moria 子模块。支持 Linux 和 macOS；Windows 只能通过 WSL2 使用。","输入可以是单个 ELF、已解包的固件目录，或经服务的解包任务处理、由分析者选定文件系统区域的原始镜像。README 和需求文档限定只能分析操作者拥有或获授权评估的固件。仓库不含任何固件；测试会自行构建 x86_64、MIPS、ARM 和 AArch64 交叉编译样本，README 报告在安装交叉编译器和 Ghidra 的情况下 25 项通过、2 项跳过。","README 指出这种不依赖反编译的静态分析属于启发式方法：每项结果都带置信度，污点结果只是需要分析者验证的候选路径，并非已证实的漏洞利用。可选的 AI 分析会把已完成的扫描发送到用户配置的 OpenAI 兼容或 Anthropic 协议端点，API 密钥加密存储；模型通过工具调用读取结果证据、伪代码、init 脚本和服务信息。README 称这些功能是在 Claude 模型上测试的。","采用 Apache-2.0 许可，于 2026-09-17 加入；cve-bin-tool（GPL-3.0）仅以子进程方式调用，moria 采用 MIT 许可。"],"targets":["binary","firmware"],"url":"https://github.com/cn0xroot/IFDA","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/JesusFreke/smali/blob/2771eae0a11f07bd892732232e6ee4e32437230d/NOTICE","https://github.com/JesusFreke/smali/blob/2771eae0a11f07bd892732232e6ee4e32437230d/build.gradle#L34","https://github.com/JesusFreke/smali/blob/2771eae0a11f07bd892732232e6ee4e32437230d/build.gradle#L88-L91","https://github.com/JesusFreke/smali/blob/2771eae0a11f07bd892732232e6ee4e32437230d/gradle/wrapper/gradle-wrapper.properties","https://github.com/JesusFreke/smali/blob/2771eae0a11f07bd892732232e6ee4e32437230d/baksmali/src/main/java/org/jf/baksmali/DisassembleCommand.java","https://github.com/JesusFreke/smali/blob/2771eae0a11f07bd892732232e6ee4e32437230d/baksmali/src/main/java/org/jf/baksmali/DeodexCommand.java","https://github.com/JesusFreke/smali/blob/2771eae0a11f07bd892732232e6ee4e32437230d/baksmali/src/main/java/org/jf/baksmali/AnalysisArguments.java#L54-L74","https://github.com/JesusFreke/smali/blob/2771eae0a11f07bd892732232e6ee4e32437230d/smali/src/main/java/org/jf/smali/AssembleCommand.java","https://github.com/JesusFreke/smali/blob/2771eae0a11f07bd892732232e6ee4e32437230d/dexlib2/src/main/java/org/jf/dexlib2/VersionMap.java","https://github.com/JesusFreke/smali/blob/2771eae0a11f07bd892732232e6ee4e32437230d/deodexerant/README","https://github.com/JesusFreke/smali/tree/2771eae0a11f07bd892732232e6ee4e32437230d/baksmali/src/test/resources","https://github.com/JesusFreke/smali/compare/v2.5.2...2771eae0a11f07bd892732232e6ee4e32437230d","https://repo1.maven.org/maven2/org/smali/baksmali/2.5.2/","https://github.com/google/smali/blob/1a36aa30d18d92e63994f4b1e67a055931f5a707/README.md"],"category":"android","description_en":"Assembler and disassembler for the dex format used by Android's Dalvik VM: baksmali turns dex, APK, odex and oat files into smali text, and smali assembles that text back into a dex file. The README says the syntax, loosely based on Jasmin's and dedexer's, supports the full dex format, including annotations and debug and line information. baksmali can also deodex odex and oat files and list a dex file's classes, methods, fields, strings and references, while the dexlib2 library reads and writes dex files from Java.","description_zh":"面向 Android Dalvik 虚拟机 dex 格式的汇编器与反汇编器：baksmali 将 dex、APK、odex 和 oat 文件反汇编为 smali 文本，smali 再把这些文本汇编回 dex 文件。README 称其语法大致参照 Jasmin 和 dedexer，支持 dex 格式的全部功能，包括注解、调试信息和行号信息。baksmali 还能对 odex 和 oat 文件做去优化（deodex），并列出 dex 文件中的类、方法、字段、字符串和引用；dexlib2 库则供 Java 程序读写 dex 文件。","entry_url":"https://awesomerea.org/resources/smali-baksmali/","entry_url_zh":"https://awesomerea.org/zh/resources/smali-baksmali/","evidence_url":"https://github.com/JesusFreke/smali/blob/2771eae0a11f07bd892732232e6ee4e32437230d/README.md","group":"tools","id":"smali-baksmali","json_url":"https://awesomerea.org/resources/smali-baksmali/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/smali-baksmali/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/smali-baksmali/index.md","name":"smali/baksmali","name_zh":"smali/baksmali Dalvik dex 汇编与反汇编器","record_type":"resource","relationship":"foundation","requirements":["GitHub lists the repository as archived; its last push was on 2024-01-17, and the reviewed master head of 2022-03-08 is ten commits past v2.5.2, the last version, published as org.smali artifacts on Maven Central on 2021-03-03. The README still points downloads to the author's Bitbucket page. Google maintains a fork whose README says it exists because the original is not maintained; it renames the namespace to com.android.tools.smali and publishes 3.x releases (3.0.7 at review) on Google Maven.","Java command-line tools and libraries compiled for Java 8 and built with the bundled Gradle 6.8.2 wrapper; scripts/smali and scripts/baksmali are launcher wrappers for the jars. Users supply their own dex, APK, odex or oat files and can set the API level; analyzing or deodexing optimized files needs a matching boot classpath, which for oat files can be the device's boot.oat. dexlib2's version map at this commit stops at dex 039 (API 28) and maps newer ART versions to API 29.","The repository includes small test-fixture dex files under baksmali/src/test/resources and dexlib2/src/test/resources, hand-written smali examples, and deodexerant, a device-side C helper built in an AOSP tree that dumps Dalvik's inline method table for baksmali's -T option. No other dex, APK or system images are committed.","There is no LICENSE file, so GitHub detects none; NOTICE releases Ben Gruver's code and Google-copyrighted changes under BSD-style three-clause licenses and says portions taken from the Android Open Source Project are used under Apache-2.0."],"requirements_zh":["GitHub 已将该仓库标为归档；最后一次推送在 2024-01-17，所审阅的 master 头提交日期为 2022-03-08，比最后一个版本 v2.5.2 多十个提交，该版本于 2021-03-03 以 org.smali 构件发布到 Maven Central。README 仍将下载地址指向作者的 Bitbucket 页面。Google 维护着一个分支，其 README 说明该分支因原仓库不再维护而设立；它将命名空间改为 com.android.tools.smali，并在 Google Maven 上发布 3.x 版本（审阅时为 3.0.7）。","以 Java 命令行工具和库的形式提供，编译目标为 Java 8，使用仓库自带的 Gradle 6.8.2 wrapper 构建；scripts/smali 和 scripts/baksmali 是调用 jar 的启动脚本。使用者需自备 dex、APK、odex 或 oat 文件，并可指定 API 级别；分析或去优化已优化的文件需要相匹配的启动类路径，对 oat 文件可直接使用设备上的 boot.oat。该提交中 dexlib2 的版本映射止于 dex 039（API 28），较新的 ART 版本一律映射为 API 29。","仓库包含 baksmali/src/test/resources 和 dexlib2/src/test/resources 下体积很小的测试用 dex 文件、手写的 smali 示例，以及 deodexerant——一个需在 AOSP 源码树中构建、在设备端运行的 C 辅助程序，用于导出 Dalvik 的内联方法表，供 baksmali 的 -T 选项使用。仓库未提交其他 dex、APK 或系统镜像。","仓库没有 LICENSE 文件，因此 GitHub 未识别出许可证；NOTICE 说明 Ben Gruver 编写的代码和 Google 版权的修改均采用 BSD 风格的三条款许可，取自 Android 开源项目的部分按 Apache-2.0 使用。"],"targets":["app"],"url":"https://github.com/JesusFreke/smali","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/httptoolkit/httptoolkit/blob/bb579a8ceadfe86b98160843c0447a5b9eec554f/README.md#L28-L40","https://github.com/httptoolkit/httptoolkit/blob/bb579a8ceadfe86b98160843c0447a5b9eec554f/README.md#L64-L79","https://github.com/httptoolkit/httptoolkit/tree/bb579a8ceadfe86b98160843c0447a5b9eec554f","https://github.com/httptoolkit/httptoolkit-server/blob/3973d10b7ae8d67632dd6105ee9c70c867baf0ac/README.md","https://github.com/httptoolkit/httptoolkit-server/blob/3973d10b7ae8d67632dd6105ee9c70c867baf0ac/src/interceptors/index.ts","https://github.com/httptoolkit/httptoolkit-desktop/blob/71c10c78abe09bdb025063b28025f5c65bc6812c/README.md","https://github.com/httptoolkit/httptoolkit-android/blob/53d7e356b1872d9ad20716113fc01b9388bdf4c3/README.md","https://github.com/httptoolkit/httptoolkit-desktop/releases/tag/v1.27.3","https://httptoolkit.com/get-pro/"],"category":"web-analysis","description_en":"Open-source HTTP(S) debugging proxy for Windows, Linux and macOS that sets up interception for browsers, terminals, backend runtimes, Electron apps and Android devices, then shows the full headers and body of every request and response with body decoding, inline header documentation and filtering. Its transparent proxy handles plain HTTP, HTTPS, HTTP/2 and WebSockets on one port; breakpoints rewrite live requests or responses, and a built-in client sends custom requests. This repository is the project's umbrella README and issue tracker, while the UI, server, Mockttp proxy library, Android app and desktop shell live in sibling repositories.","description_zh":"面向 Windows、Linux 和 macOS 的开源 HTTP(S) 调试代理，可为浏览器、终端、后端运行时、Electron 应用和 Android 设备配置拦截，并完整展示每个请求与响应的头部和正文，提供正文解码、标准头部内联说明和过滤功能。其透明代理在同一端口处理明文 HTTP、HTTPS、HTTP/2 和 WebSocket；断点可改写实时请求或响应，内置客户端可发送自定义请求。本仓库是项目的总说明与问题追踪仓库，界面、服务端、Mockttp 代理库、Android 应用和桌面外壳位于同一组织的其他仓库。","entry_url":"https://awesomerea.org/resources/http-toolkit/","entry_url_zh":"https://awesomerea.org/zh/resources/http-toolkit/","evidence_url":"https://github.com/httptoolkit/httptoolkit/blob/bb579a8ceadfe86b98160843c0447a5b9eec554f/README.md","group":"tools","id":"http-toolkit","json_url":"https://awesomerea.org/resources/http-toolkit/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/http-toolkit/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/http-toolkit/index.md","name":"HTTP Toolkit","name_zh":"HTTP Toolkit HTTP(S) 调试代理","record_type":"resource","relationship":"foundation","requirements":["At the reviewed commit this umbrella repository holds only the README, a security policy and a demo animation, and serves as the project's issue tracker. The product is built from sibling repositories: httptoolkit-ui (TypeScript and React), httptoolkit-server (Node.js, whose interceptor list covers Chromium-based browsers, Firefox, terminals, Electron, Android over ADB, Frida on Android and iOS, JVM processes and Docker containers), the Mockttp proxy library, the Android app and the Electron desktop shell.","Latest desktop release at review: v1.27.3, published 2026-10-20, with a Windows installer and zip, macOS x64 and arm64 DMGs and Linux x64 and arm64 AppImage, deb, rpm and zip builds. The desktop shell bundles the server and opens the UI in Electron; the server can also run standalone as a CLI with the hosted web UI opened in a browser, and both update themselves separately from the desktop executable.","HTTPS inspection needs the client to trust HTTP Toolkit's CA certificate: interceptors launch preconfigured browsers, terminals and apps, and the server's certificate check downloads or installs the certificate where it is not yet trusted. The Android app trusts the certificate and forwards device traffic through a local VPN; its README says a rooted device is not required but widens the real app traffic that can be tested. Inspect only traffic from your own clients and devices or ones you are authorized to test.","The pricing page lists interception of all supported clients, raw inspection, filtering, manual rewriting and manual requests in the free Hobbyist tier, while mock rules and automatic transforms, edit-and-resend, rule and traffic import/export (including HAR), API validation and advanced proxy settings such as TLS passthrough and upstream proxies need a paid Pro account. The README describes the HTTP Toolkit-specific components as AGPL-3.0 and the reusable libraries as Apache-2.0 or MIT; this repository has no license file, and the desktop README offers its binaries under AGPL-3.0 or CC BY-ND 4.0."],"requirements_zh":["在所审阅的提交中，这个总仓库只有 README、安全策略和一段演示动画，用作项目的问题追踪仓库。产品由同组织的其他仓库构建：httptoolkit-ui（TypeScript 与 React）、httptoolkit-server（Node.js，其拦截器列表涵盖 Chromium 系浏览器、Firefox、终端、Electron、通过 ADB 连接的 Android、Android 和 iOS 上的 Frida、JVM 进程及 Docker 容器）、Mockttp 代理库、Android 应用和 Electron 桌面外壳。","审阅时桌面版最新版本为 v1.27.3，发布于 2026-10-20，提供 Windows 安装程序和 zip 包、macOS x64 与 arm64 DMG，以及 Linux x64 与 arm64 的 AppImage、deb、rpm 和 zip 构建。桌面外壳内置服务端，并在 Electron 窗口中打开界面；服务端也可作为命令行工具单独运行，再在浏览器中打开托管的 Web 界面，两者都独立于桌面可执行文件自行更新。","检查 HTTPS 需要客户端信任 HTTP Toolkit 的 CA 证书：拦截器会启动预先配置好的浏览器、终端和应用，服务端的证书检查会在证书尚未受信任时下载或安装证书。Android 应用负责信任该证书，并通过本地 VPN 转发设备流量；其 README 称无需 root 设备，但 root 后可测试的真实应用流量更多。只应检查自己的客户端和设备，或已获授权测试对象的流量。","定价页面列出，免费的 Hobbyist 版即可拦截所有支持的客户端、检查原始数据、过滤、手动改写和手动发送请求；模拟规则与自动转换、编辑后重发、规则和流量的导入导出（含 HAR）、API 校验，以及 TLS 直通、上游代理等高级代理设置则需要付费 Pro 账户。README 称 HTTP Toolkit 专用组件采用 AGPL-3.0，可复用库采用 Apache-2.0 或 MIT；本仓库没有许可证文件，桌面版 README 允许按 AGPL-3.0 或 CC BY-ND 4.0 使用其二进制文件。"],"targets":["app","protocol","website"],"url":"https://github.com/httptoolkit/httptoolkit","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/river-li/awesome-uefi-security/blob/970e6c0de787a4cffa41e6d8b14f024526ccdd33/LICENSE","https://github.com/river-li/awesome-uefi-security/blob/970e6c0de787a4cffa41e6d8b14f024526ccdd33/.github/workflows/main.yml"],"category":"related-lists","description_en":"A single-README awesome list of UEFI and BIOS security material, which its maintainer describes as a personal and not comprehensive collection. It links UEFI, PI and ACPI specifications, EDK II development resources, firmware analysis tools such as UEFITool, efiXplorer, CHIPSEC and UEFI plugins for Ghidra and Binary Ninja, SMM-themed CTF challenges, analyses of bootkits found in the wild, vulnerability write-ups, conference talks, blog posts, papers and training courses.","description_zh":"以单个 README 维护的 UEFI 与 BIOS 安全资料 awesome 清单，维护者称其为个人收集、并不全面。清单链接 UEFI、PI 与 ACPI 规范，EDK II 开发资源，UEFITool、efiXplorer、CHIPSEC 及 Ghidra 和 Binary Ninja 的 UEFI 插件等固件分析工具，以 SMM 为主题的 CTF 题目，对在野 bootkit 的分析报告，漏洞分析文章，会议演讲、博客、论文和培训课程。","entry_url":"https://awesomerea.org/resources/awesome-uefi-security/","entry_url_zh":"https://awesomerea.org/zh/resources/awesome-uefi-security/","evidence_url":"https://github.com/river-li/awesome-uefi-security/blob/970e6c0de787a4cffa41e6d8b14f024526ccdd33/README.md","group":"learn","id":"awesome-uefi-security","json_url":"https://awesomerea.org/resources/awesome-uefi-security/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/awesome-uefi-security/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/awesome-uefi-security/index.md","name":"Awesome UEFI Security","name_zh":"Awesome UEFI Security UEFI 安全资料清单","record_type":"resource","relationship":"learning","requirements":["The reviewed README was last changed by a pull request merged on 2025-09-04 that fixed the UEFITool link; the last addition, a 2025 arXiv paper, was committed on 2025-02-01. It holds about 230 linked entries in ten sections, including roughly 35 tools, 57 talks, 71 blog posts and 14 papers.","Most tool entries have no description, and no entry states maintenance status, supported firmware, platform or license. The list itself contains no firmware images, SDKs or tools.","Several sections cover offensive material, including bootkit and SMM backdoor repositories, exploit code and a Secure Boot bypass project.","CC0-1.0 for the list; linked works keep their own licenses. CI runs awesome-lint on pull requests."],"requirements_zh":["所审阅的 README 最近一次修改来自 2025-09-04 合并的拉取请求，内容是修正 UEFITool 链接；最近一次新增内容是 2025-02-01 提交的一篇 2025 年 arXiv 论文。清单分十个部分，共约 230 个带链接的条目，其中约有 35 个工具、57 场演讲、71 篇博客文章和 14 篇论文。","大多数工具条目没有说明，所有条目都未注明维护状态、支持的固件、平台或许可证。清单本身不包含固件镜像、SDK 或工具。","其中几个部分涉及攻击性内容，包括 bootkit 与 SMM 后门仓库、漏洞利用代码以及一个绕过安全启动的项目。","清单本身采用 CC0-1.0；所链接的作品保留各自的许可证。CI 在拉取请求上运行 awesome-lint。"],"targets":["firmware"],"url":"https://github.com/river-li/awesome-uefi-security","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/plasma-disassembler/plasma/blob/ec7df9b2b9b356dd5d8caf01b7e68c0ab5a1ef42/install.sh","https://github.com/plasma-disassembler/plasma/blob/ec7df9b2b9b356dd5d8caf01b7e68c0ab5a1ef42/requirements.txt","https://github.com/plasma-disassembler/plasma/blob/ec7df9b2b9b356dd5d8caf01b7e68c0ab5a1ef42/Dockerfile","https://github.com/plasma-disassembler/plasma/blob/ec7df9b2b9b356dd5d8caf01b7e68c0ab5a1ef42/Makefile","https://github.com/plasma-disassembler/plasma/tree/ec7df9b2b9b356dd5d8caf01b7e68c0ab5a1ef42/tests","https://github.com/plasma-disassembler/plasma/tree/ec7df9b2b9b356dd5d8caf01b7e68c0ab5a1ef42/plasma/scripts","https://github.com/plasma-disassembler/plasma/blob/ec7df9b2b9b356dd5d8caf01b7e68c0ab5a1ef42/plasma/lib/fileformat/relocations/LICENSE","https://github.com/plasma-disassembler/plasma/blob/ec7df9b2b9b356dd5d8caf01b7e68c0ab5a1ef42/LICENSE"],"category":"native-analysis","description_en":"Interactive terminal disassembler, formerly named Reverse, for x86 and x86-64 with partial ARM and MIPS/MIPS64 support, reading ELF, PE and raw binaries. Its visual mode shows functions as indented, colored pseudo-code and lets the analyst reshape the flow by inverting conditional jumps, while a Python API runs scripts for strings, cross-reference call graphs, crypto-constant detection and Keystone assembly. Development stopped in 2019, and the repository has no releases.","description_zh":"交互式终端反汇编器，旧名 Reverse，支持 x86 与 x86-64，并部分支持 ARM 和 MIPS/MIPS64，可读取 ELF、PE 和原始二进制。其可视化模式以缩进、着色的伪代码显示函数，分析者可通过反转条件跳转来调整控制流；Python API 可运行脚本，用于提取字符串、生成交叉引用调用图、检测加密常量以及调用 Keystone 汇编。项目自 2019 年起停止开发，仓库没有发布版本。","entry_url":"https://awesomerea.org/resources/plasma-disassembler/","entry_url_zh":"https://awesomerea.org/zh/resources/plasma-disassembler/","evidence_url":"https://github.com/plasma-disassembler/plasma/blob/ec7df9b2b9b356dd5d8caf01b7e68c0ab5a1ef42/README.md","group":"tools","id":"plasma-disassembler","json_url":"https://awesomerea.org/resources/plasma-disassembler/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/plasma-disassembler/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/plasma-disassembler/index.md","name":"PLASMA","name_zh":"PLASMA 交互式反汇编器","record_type":"resource","relationship":"foundation","requirements":["Inactive: the last commit on master, ec7df9b, is dated 2019-03-04, and there are no releases or tags; GitHub does not mark the repository archived. The README still describes the project as in heavy development and warns that the database format may break until structures and type definitions are implemented.","Requires Python 3.4+, Capstone (install.sh builds 4.0-alpha5 from source), pyelftools, pefile with python3-future, msgpack-python 0.4.6+, c++filt from binutils and a UTF-8, 256-colour terminal; python-qt4 for the memory map and Keystone for asm.py are optional. The Dockerfile builds on Ubuntu 16.04.","make runs the regression suite, comparing output for the bundled test binaries with expected .rev listings; tests/ holds 96 small compiled test binaries, most next to their C sources. Analysis inputs are the user's own binaries.","GPL-3.0; the relocation definitions taken from angr's cle keep their BSD-style license."],"requirements_zh":["已停止维护：master 分支最后一次提交 ec7df9b 的日期为 2019-03-04，没有发布版本或标签；GitHub 未将该仓库标为归档。README 仍称项目处于大规模开发中，并提醒在实现结构体和类型定义之前，数据库格式可能不兼容。","需要 Python 3.4+、Capstone（install.sh 从源码构建 4.0-alpha5）、pyelftools、pefile 及 python3-future、msgpack-python 0.4.6+、binutils 中的 c++filt，以及支持 UTF-8 和 256 色的终端；内存映射所需的 python-qt4 和 asm.py 所需的 Keystone 为可选项。Dockerfile 基于 Ubuntu 16.04。","make 运行回归测试，将附带测试二进制的输出与预期的 .rev 清单比对；tests/ 中有 96 个小型已编译测试二进制，大多附有 C 源码。分析对象是使用者自己的二进制。","采用 GPL-3.0；取自 angr cle 项目的重定位定义保留其 BSD 风格许可证。"],"targets":["binary"],"url":"https://github.com/plasma-disassembler/plasma","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/DerekSelander/mobdevim/blob/68cddb31bf80f9adf030d51bc799740f042d5958/mobdevim.xcodeproj/project.pbxproj","https://github.com/DerekSelander/mobdevim/blob/68cddb31bf80f9adf030d51bc799740f042d5958/mobdevim/install_ddi/install_ddi.m","https://github.com/DerekSelander/mobdevim/blob/68cddb31bf80f9adf030d51bc799740f042d5958/mobdevim/yoink/yoink.m","https://github.com/DerekSelander/mobdevim/blob/68cddb31bf80f9adf030d51bc799740f042d5958/mobdevim/process/LICENSE","https://github.com/DerekSelander/mobdevim/blob/68cddb31bf80f9adf030d51bc799740f042d5958/mobdevim/misc/InstrumentsPlugin.h","https://github.com/DerekSelander/mobdevim/tree/68cddb31bf80f9adf030d51bc799740f042d5958/compiled"],"category":"dynamic-analysis","description_en":"Derek Selander's macOS command-line utility for inspecting and controlling iOS devices connected over USB or Wi-Fi through Apple's private MobileDevice framework. It lists devices and installed apps with their Info.plist keys and entitlements, streams the device console, fetches crash logs, shows provisioning profiles and developer certificates, copies an app's data container off the device and back where the sandbox allows, and installs, uninstalls and launches apps with arguments and environment variables. With a Developer Disk Image mounted it also lists and kills processes and simulates location, and output can be printed as plist for scripts.","description_zh":"Derek Selander 编写的 macOS 命令行工具，通过 Apple 的私有 MobileDevice 框架检查和控制经 USB 或 Wi-Fi 连接的 iOS 设备。它可列出设备和已安装应用及其 Info.plist 键值与权限（entitlements），实时输出设备控制台日志，获取崩溃日志，查看描述文件和开发者证书，在沙盒允许时把应用的数据容器拷出设备并传回，还能安装、卸载应用，并带参数和环境变量启动应用。挂载开发者磁盘映像（DDI）后，还能列出和结束进程、模拟定位；输出可按 plist 格式打印，便于脚本处理。","entry_url":"https://awesomerea.org/resources/mobdevim/","entry_url_zh":"https://awesomerea.org/zh/resources/mobdevim/","evidence_url":"https://github.com/DerekSelander/mobdevim/blob/68cddb31bf80f9adf030d51bc799740f042d5958/README.md","group":"tools","id":"mobdevim","json_url":"https://awesomerea.org/resources/mobdevim/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/mobdevim/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mobdevim/index.md","name":"mobdevim","name_zh":"mobdevim iOS 设备命令行工具","record_type":"resource","relationship":"foundation","requirements":["No releases or tags; the reviewed main commit of 2024-02-01, which says it fixed log grabbing, is the latest push. The README's usage text shows a build compiled on 2023-11-07 and still marks log retrieval as broken on iOS 16.5 and device backup as a to-do. The repository also commits a prebuilt compiled/mobdevim binary, last changed on 2023-11-07.","Build the Xcode project on macOS; it links /System/Library/PrivateFrameworks/MobileDevice.framework, sets macOS deployment targets of 10.12 and 10.13, and a build phase copies mobdevim to /usr/local/bin, which must be writable or the build fails. The README states no supported iOS or Xcode versions.","Needs an iOS device connected over USB or paired for Wi-Fi. Process listing and killing, app launching and location simulation need a mounted Developer Disk Image, which the -I option mounts from a signature and .dmg pair the user supplies, for example from Xcode. Copying app data goes through the house_arrest service, so it works only for apps the sandbox exposes.","GitHub detects no license and the repository root has no license file, so the tool's terms are unstated; the process directory carries a 2018 Hex-Rays MIT license for its Instruments client code, and misc/InstrumentsPlugin.h credits codecolorist's FreeTheSandbox."],"requirements_zh":["没有发布版或标签；所审阅的 main 分支 2024-02-01 提交是最近一次推送，其提交说明称修复了日志获取。README 中的用法文本显示其构建于 2023-11-07，并仍把 iOS 16.5 上的日志获取标为失效、把设备备份列为待办。仓库还提交了预编译的 compiled/mobdevim 二进制，最后修改于 2023-11-07。","需在 macOS 上构建 Xcode 项目；它链接 /System/Library/PrivateFrameworks/MobileDevice.framework，macOS 部署目标设为 10.12 和 10.13，构建阶段会把 mobdevim 复制到 /usr/local/bin，该目录不可写时构建会失败。README 未说明支持的 iOS 或 Xcode 版本。","需要一台经 USB 连接或已配对 Wi-Fi 的 iOS 设备。列出和结束进程、启动应用及模拟定位都需要先挂载开发者磁盘映像；-I 选项使用使用者自备的签名文件与 .dmg 映像（例如来自 Xcode）进行挂载。拷贝应用数据经由 house_arrest 服务，因此只适用于沙盒允许访问的应用。","GitHub 未检测到许可证，仓库根目录也没有许可证文件，因此工具的使用条款并未说明；process 目录附有 Hex-Rays 2018 年的 MIT 许可证，适用于其中的 Instruments 客户端代码，misc/InstrumentsPlugin.h 注明出自 codecolorist 的 FreeTheSandbox。"],"targets":["app"],"url":"https://github.com/DerekSelander/mobdevim","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/loerting/dalvikus/blob/931cbf3659b4caeb533239337179630185969d04/gradle/libs.versions.toml","https://github.com/loerting/dalvikus/blob/931cbf3659b4caeb533239337179630185969d04/composeApp/build.gradle.kts","https://github.com/loerting/dalvikus/tree/931cbf3659b4caeb533239337179630185969d04/composeApp/src/commonMain/kotlin/me/lkl/dalvikus/decompiler","https://github.com/loerting/dalvikus/blob/931cbf3659b4caeb533239337179630185969d04/composeApp/src/commonMain/kotlin/me/lkl/dalvikus/tools/ApkSigner.kt","https://github.com/loerting/dalvikus/blob/931cbf3659b4caeb533239337179630185969d04/composeApp/src/commonMain/kotlin/me/lkl/dalvikus/tools/SdkLocator.kt","https://github.com/loerting/dalvikus/blob/931cbf3659b4caeb533239337179630185969d04/composeApp/src/commonMain/kotlin/me/lkl/dalvikus/tools/AdbDeployer.kt","https://github.com/loerting/dalvikus/blob/931cbf3659b4caeb533239337179630185969d04/.github/workflows/release.yml","https://github.com/loerting/dalvikus/blob/931cbf3659b4caeb533239337179630185969d04/LICENSE","https://github.com/loerting/dalvikus/releases/tag/v1.0.13"],"category":"android","description_en":"Desktop Android reverse-engineering and modification workbench built with Kotlin Compose Multiplatform. It opens APK and DEX files, edits the DEX classes inside an APK as smali without manual unpacking, with syntax highlighting and code completion, and shows decompiled Java from JADX, CFR or Vineflower. It also browses resources and XML through apktool, searches the class tree, string constants and method and field references, re-signs modified APKs with apksig and zipalign, and installs and starts them on a connected device over ADB.","description_zh":"基于 Kotlin Compose Multiplatform 的桌面端 Android 逆向与修改工作台。它可打开 APK 和 DEX 文件，无需手动解包即可将 APK 内的 DEX 类作为 smali 编辑，提供语法高亮和代码补全，并可显示由 JADX、CFR 或 Vineflower 反编译出的 Java 代码。它还能通过 apktool 浏览资源和 XML 文件，在类树、字符串常量以及方法和字段引用中搜索，用 apksig 和 zipalign 为修改后的 APK 重新签名，并通过 ADB 将其安装到已连接的设备上运行。","entry_url":"https://awesomerea.org/resources/dalvikus/","entry_url_zh":"https://awesomerea.org/zh/resources/dalvikus/","evidence_url":"https://github.com/loerting/dalvikus/blob/931cbf3659b4caeb533239337179630185969d04/README.MD","group":"tools","id":"dalvikus","json_url":"https://awesomerea.org/resources/dalvikus/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dalvikus/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dalvikus/index.md","name":"dalvikus","name_zh":"dalvikus Android 逆向与 smali 编辑工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v1.0.13, published 2025-10-16, with a macOS dmg, Windows exe and msi installers and a Linux amd64 deb. The reviewed master commit (2026-02-16) is one commit ahead, with a drag-and-drop change in the file tree; the README notes that its screenshots may change as the project evolves.","The README requires JDK 11 or later on Windows, Linux or macOS; the release workflow packages with Java 17, and source builds run ./gradlew :composeApp:run. ADB deployment and APK signing need an Android SDK with platform-tools and build-tools, located through ANDROID_HOME or ANDROID_SDK_ROOT or set in the app's settings, and signing uses a keystore supplied by the user.","Inputs are APK or DEX files supplied by the user. The pinned libraries include smali/baksmali 3.0.9, JADX 1.5.2, CFR 0.152, Vineflower 1.11.1, dex2jar 2.4.32, apktool 2.12.0, apksig and ddmlib; the tree commits the Gradle wrapper JAR, ANTLR-generated Java lexer and parser sources and the Monaspace Neon Frozen font files, and the UI is translated into English, German, Chinese and Hindi.","GPL-3.0 license; the README says the tool is intended solely for ethical purposes. No test suite was found, and CI only packages releases."],"requirements_zh":["审阅时最新版本为 v1.0.13，发布于 2025-10-16，提供 macOS dmg、Windows exe 与 msi 安装包以及 Linux amd64 deb 包。所审阅的 master 提交（2026-02-16）比该版本多一个提交，修改了文件树的拖放功能；README 提醒截图可能随项目演进而变化。","README 要求在 Windows、Linux 或 macOS 上使用 JDK 11 或更高版本；发布工作流用 Java 17 打包，从源码运行则执行 ./gradlew :composeApp:run。ADB 部署和 APK 签名需要包含 platform-tools 与 build-tools 的 Android SDK，可通过 ANDROID_HOME 或 ANDROID_SDK_ROOT 定位，也可在应用设置中指定；签名使用使用者自备的密钥库。","输入为使用者自备的 APK 或 DEX 文件。固定版本的依赖库包括 smali/baksmali 3.0.9、JADX 1.5.2、CFR 0.152、Vineflower 1.11.1、dex2jar 2.4.32、apktool 2.12.0、apksig 和 ddmlib；代码树中提交了 Gradle wrapper JAR、由 ANTLR 生成的 Java 词法与语法分析器源码以及 Monaspace Neon Frozen 字体文件，界面提供英语、德语、中文和印地语。","采用 GPL-3.0 许可；README 称该工具仅用于合乎道德的用途。未发现测试套件，CI 只负责打包发布。"],"targets":["app"],"url":"https://github.com/loerting/dalvikus","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","category":"related-lists","description_en":"A single-README reading list of 28 academic security papers on firmware and embedded-system analysis, grouped by year from 2013 to 2021. It covers rehosting and emulation, firmware fuzzing, symbolic execution, Bluetooth and baseband analysis and bug detection in Linux-based and bare-metal firmware. Each entry is a title linked to a PDF or publisher page, with its venue such as USENIX Security, NDSS, IEEE S&P or CCS.","description_zh":"以单个 README 维护的学术安全论文阅读清单，收录 28 篇固件与嵌入式系统分析论文，按年份分组，时间跨度为 2013 至 2021 年。内容涵盖固件重托管与仿真、固件模糊测试、符号执行、蓝牙与基带分析，以及基于 Linux 和裸机固件中的缺陷检测。每个条目是链接到 PDF 或出版方页面的论文标题，并注明 USENIX Security、NDSS、IEEE S&P、CCS 等发表场合。","entry_url":"https://awesomerea.org/resources/firmware-analysis-papers-list/","entry_url_zh":"https://awesomerea.org/zh/resources/firmware-analysis-papers-list/","evidence_url":"https://github.com/onehouwong/Firmware-Analysis-Papers/blob/3cfec539b6570307412909a3959b6fbc24c75af6/README.md","group":"learn","id":"firmware-analysis-papers-list","json_url":"https://awesomerea.org/resources/firmware-analysis-papers-list/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/firmware-analysis-papers-list/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/firmware-analysis-papers-list/index.md","name":"Firmware-Analysis-Papers","name_zh":"Firmware-Analysis-Papers 固件分析论文清单","record_type":"resource","relationship":"learning","requirements":["The reviewed README, last changed 2021-08-30, lists 28 papers: 10 from 2021, 7 from 2020, 4 from 2019, one from 2018 and 6 under “2017 and Before”, the oldest from 2013. The list has not been updated since, so later work such as Fuzzware (USENIX Security 2022) is absent.","Entries give only a title, a link and a venue label, with no summaries, code, artifact or citation details. Most links go to PDFs on conference, author or arXiv sites; the rest go to an IEEE Xplore page, ResearchGate, or ACM Digital Library URLs carrying session tokens, which may stop working. Year labels can differ from publication years: Firmadyne is labeled NDSS 2017, matching its link's 2017 upload folder.","The repository holds only README.md and no license file, so the list states no reuse terms; the papers keep their authors' and publishers' rights. An independent reading list."],"requirements_zh":["所审阅的 README 最后修改于 2021-08-30，共列出 28 篇论文：2021 年 10 篇、2020 年 7 篇、2019 年 4 篇、2018 年 1 篇，另有 6 篇归在“2017 and Before”下，最早的发表于 2013 年。此后清单未再更新，因此未收录 Fuzzware（USENIX Security 2022）等后续工作。","条目只有标题、链接和发表场合标注，没有摘要、代码、实验制品或引用信息。多数链接指向会议、作者或 arXiv 网站上的 PDF；其余指向 IEEE Xplore 页面、ResearchGate 或带会话令牌的 ACM Digital Library 地址，可能失效。年份标注可能与实际发表年份不符：Firmadyne 标为 NDSS 2017（与其链接中 2017 年的上传目录一致）。","仓库只有 README.md，没有许可证文件，因此清单本身未声明复用条款；各论文的权利归其作者和出版方。这是独立的阅读清单。"],"targets":["firmware"],"url":"https://github.com/onehouwong/Firmware-Analysis-Papers","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/horsicq/XPEViewer/blob/828a0fbe8ba5586cec173609cb33c6f1a4f754df/docs/BUILD.md","https://github.com/horsicq/XPEViewer/blob/828a0fbe8ba5586cec173609cb33c6f1a4f754df/changelog.txt","https://github.com/horsicq/XPEViewer/blob/828a0fbe8ba5586cec173609cb33c6f1a4f754df/.gitmodules","https://github.com/horsicq/XPEViewer/blob/828a0fbe8ba5586cec173609cb33c6f1a4f754df/gui_source/guimainwindow.cpp","https://github.com/horsicq/XPEViewer/blob/828a0fbe8ba5586cec173609cb33c6f1a4f754df/release_version.txt","https://github.com/horsicq/XPEViewer/blob/828a0fbe8ba5586cec173609cb33c6f1a4f754df/LICENSE","https://github.com/horsicq/FormatWidgets/blob/8de1efff3cf322943fb098dda6baf2dbbd9fea70/PE/pewidget.cpp","https://github.com/horsicq/XPEViewer/releases/tag/0.05","https://github.com/horsicq/XPEViewer/releases/tag/0.06","https://github.com/horsicq/XPEViewer/releases/tag/Beta"],"category":"native-analysis","description_en":"Qt-based PE file viewer and editor for Windows, Linux and macOS by horsicq, the author of the catalog's Detect It Easy. Its PE view parses the DOS, NT and optional headers, sections, normal, delay-load and bound imports, exports, resources including manifests, version data and string tables, relocations, TLS callbacks, exception, debug and load-configuration data, certificates, the Rich header and .NET metadata tables. Hex, disassembly, strings, entropy, hash, memory-map and extractor views sit beside Detect It Easy, Nauz File Detector and YARA scans and an optional VirusTotal lookup.","description_zh":"horsicq 开发的基于 Qt 的 PE 文件查看与编辑工具，支持 Windows、Linux 和 macOS；作者也是本目录所收录 Detect It Easy 的作者。其 PE 视图可解析 DOS 头、NT 头和可选头、节区、普通导入、延迟加载导入和绑定导入、导出、资源（包括清单、版本信息和字符串表）、重定位、TLS 回调、异常、调试和加载配置数据、证书、Rich 头以及 .NET 元数据表。另有十六进制、反汇编、字符串、熵、哈希、内存映射和提取器视图，并集成 Detect It Easy、Nauz File Detector 和 YARA 扫描，以及可选的 VirusTotal 查询。","entry_url":"https://awesomerea.org/resources/xpeviewer/","entry_url_zh":"https://awesomerea.org/zh/resources/xpeviewer/","evidence_url":"https://github.com/horsicq/XPEViewer/blob/828a0fbe8ba5586cec173609cb33c6f1a4f754df/README.md","group":"tools","id":"xpeviewer","json_url":"https://awesomerea.org/resources/xpeviewer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/xpeviewer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/xpeviewer/index.md","name":"XPEViewer","name_zh":"XPEViewer PE 文件查看与编辑工具","record_type":"resource","relationship":"foundation","requirements":["Latest full release at review: 0.05, published 2024-07-02, with a Linux AppImage, Debian 10–12 and Ubuntu 14.04–24.04 .deb packages, macOS x86_64 and Qt 6 arm64 packages, Windows x86, x64 and XP portable zips and a source tarball. Release 0.06 (2025-12-22) is marked as a prerelease with no attached files; the rolling Beta prerelease carries 0.06 Ubuntu 22.04/24.04 packages and Windows portable zips, and release_version.txt on the reviewed master commit reads 0.06.","Source builds need a recursive clone of 56 horsicq submodules, including Detect-It-Easy, signatures and XYara. docs/BUILD.md covers Docker, a Debian package script, autotools, qmake6 with Qt 6, CMake, macOS with Qt 5.15.2, Windows 7–10 with Visual Studio 2019 and Qt 5.15.2, and Windows XP with Visual Studio 2013 and Qt 5.6.3.","Supply the PE file yourself. The main window opens files for writing when it can and falls back to read-only, so editing changes the opened file; work on a copy. The VirusTotal view uses that online service.","MIT (LICENSE). The README itself is brief: download, run and build links, a changelog and screenshots; the parsed structures come from the PE widget source in the pinned FormatWidgets submodule. The main repository commits no sample binaries."],"requirements_zh":["审阅时最新的正式版本为 0.05，发布于 2024-07-02，提供 Linux AppImage、Debian 10–12 和 Ubuntu 14.04–24.04 的 .deb 安装包、macOS x86_64 和 Qt 6 arm64 安装包、Windows x86、x64 和 XP 便携版压缩包以及源码包。0.06 版（2025-12-22）被标为预发布，且未附带文件；滚动更新的 Beta 预发布提供 0.06 版的 Ubuntu 22.04/24.04 安装包和 Windows 便携版压缩包，所审阅 master 分支提交中的 release_version.txt 为 0.06。","从源码构建需要递归克隆 56 个 horsicq 子模块，其中包括 Detect-It-Easy、signatures 和 XYara。docs/BUILD.md 介绍了 Docker、Debian 打包脚本、autotools、基于 Qt 6 的 qmake6、CMake、使用 Qt 5.15.2 的 macOS、使用 Visual Studio 2019 和 Qt 5.15.2 的 Windows 7–10，以及使用 Visual Studio 2013 和 Qt 5.6.3 的 Windows XP 构建方式。","需自行提供 PE 文件。主窗口在可行时以可写方式打开文件，否则退回只读，因此编辑会修改所打开的文件，请在副本上操作。VirusTotal 视图会使用该在线服务。","MIT 许可证（LICENSE）。README 本身很简短，只有下载、运行和构建链接、更新日志及截图；可解析结构来自所固定 FormatWidgets 子模块中的 PE 组件源码。主仓库未提交示例二进制。"],"targets":["binary"],"url":"https://github.com/horsicq/XPEViewer","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/FuzzySecurity/Fermion/blob/79b26434f85a9f4d5e812553ec8e2c08d2ab82c5/CHANGELOG.txt","https://github.com/FuzzySecurity/Fermion/blob/79b26434f85a9f4d5e812553ec8e2c08d2ab82c5/Fermion/package.json","https://github.com/FuzzySecurity/Fermion/blob/79b26434f85a9f4d5e812553ec8e2c08d2ab82c5/.github/workflows/auto-update.yml","https://github.com/FuzzySecurity/Fermion/blob/79b26434f85a9f4d5e812553ec8e2c08d2ab82c5/.github/workflows/populate_variables.py","https://github.com/FuzzySecurity/Fermion/tree/79b26434f85a9f4d5e812553ec8e2c08d2ab82c5/Examples","https://github.com/FuzzySecurity/Fermion/tree/79b26434f85a9f4d5e812553ec8e2c08d2ab82c5/Fermion/pages","https://github.com/FuzzySecurity/Fermion/blob/79b26434f85a9f4d5e812553ec8e2c08d2ab82c5/LICENSE","https://github.com/FuzzySecurity/Fermion/releases/tag/v1.9.3","https://github.com/frida/frida/releases/tag/17.24.3"],"category":"dynamic-analysis","description_en":"Ruben Boonen's Electron desktop application that wraps frida-node and the Monaco editor into one window for writing, injecting and refining Frida scripts. The editor brings linting, IntelliSense and Frida API type definitions, a device menu reaches local, USB and remote Frida servers to attach to or spawn processes, scripts reload in the target with a keyboard shortcut and their output appears beside the code. A prototype CALL tracer follows every call a thread makes from a chosen pointer or module symbol until it returns and renders the result as a Graphviz SVG graph, and Frida's JavaScript API documentation is built in.","description_zh":"Ruben Boonen 开发的 Electron 桌面应用，把 frida-node 和 Monaco 编辑器整合到同一个窗口中，用于编写、注入和反复调整 Frida 脚本。编辑器提供代码检查、IntelliSense 和 Frida API 类型定义；设备菜单可连接本地、USB 和远程 Frida 服务端，附加到进程或启动新进程；脚本可用快捷键在目标中重新加载，输出显示在代码旁边。原型阶段的 CALL 追踪器从选定的指针或模块符号开始，跟踪线程发出的每一次调用直至返回，并将结果渲染为 Graphviz SVG 图；应用还内置了 Frida JavaScript API 文档。","entry_url":"https://awesomerea.org/resources/fermion/","entry_url_zh":"https://awesomerea.org/zh/resources/fermion/","evidence_url":"https://github.com/FuzzySecurity/Fermion/blob/79b26434f85a9f4d5e812553ec8e2c08d2ab82c5/README.md","group":"tools","id":"fermion","json_url":"https://awesomerea.org/resources/fermion/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/fermion/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fermion/index.md","name":"Fermion","name_zh":"Fermion Frida 脚本图形化开发环境","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v1.9.3, published 2023-04-20 by the repository's CI with zipped Windows, Linux and macOS builds, pinning Electron 21.0.0, Frida 16.0.17 and frida-gum types 18.3.1. Every later commit, up to the reviewed master commit of 2025-03-20, is an automated keepalive commit, and the release workflow builds only when the package version changes, so the app has not followed the Frida 17 series (17.24.3 at review).","Running from source needs Node.js and npm: in the Fermion folder, set npm_config_runtime=electron and npm_config_target=21.0.0, then run npm install and npm start; release packages are built with electron-packager, and the CI uses Node 16. Remote and mobile targets need a reachable Frida server, which the README says is often detected automatically over USB or in emulators such as Genymotion, or can be given as an IP address and port.","On Windows, attaching to SYSTEM processes needs Fermion running as Administrator with SeDebugPrivilege, because the README says running it as SYSTEM has frozen it since Electron 8; on Linux, attaching may need root or a relaxed kernel.yama.ptrace_scope. The README calls the tracer a prototype whose window can lag on large graphs and which can make the traced process unstable.","The repository commits 22 example Frida scripts, most of them hooks on Windows APIs, a Graphviz library compiled to WebAssembly (Fermion/pages/graphvizlib.wasm) for rendering traces, and bundled jQuery, Semantic UI (with Lato fonts), Split.js and Tailwind CSS assets. Users supply their own devices, processes and apps.","BSD-3-Clause (Copyright 2019 Ruben Boonen); bundled frameworks and fonts keep their own licenses."],"requirements_zh":["审阅时最新版本为 v1.9.3，由仓库 CI 于 2023-04-20 发布，附带 Windows、Linux 和 macOS 的压缩构建包，固定使用 Electron 21.0.0、Frida 16.0.17 和 frida-gum 类型定义 18.3.1。此后直到所审阅的 2025-03-20 master 提交，所有提交都是自动生成的保活提交；发布工作流只在软件包版本号变化时才构建，因此应用未跟进 Frida 17 系列（审阅时为 17.24.3）。","从源码运行需要 Node.js 和 npm：在 Fermion 目录中设置 npm_config_runtime=electron 和 npm_config_target=21.0.0，然后运行 npm install 和 npm start；发行包用 electron-packager 构建，CI 使用 Node 16。远程和移动目标需要可访问的 Frida 服务端；README 称通过 USB 或在 Genymotion 等模拟器中通常可自动发现，也可手动填写 IP 地址和端口。","在 Windows 上附加 SYSTEM 进程，需要以管理员身份并具备 SeDebugPrivilege 运行 Fermion，因为 README 指出自 Electron 8 起以 SYSTEM 身份运行会导致程序卡死；在 Linux 上附加进程可能需要 root 权限或放宽 kernel.yama.ptrace_scope。README 称追踪器仍是原型功能，图很大时窗口可能卡顿，还可能导致被追踪进程不稳定。","仓库提交了 22 个 Frida 示例脚本（大多是对 Windows API 的 Hook）、一个编译为 WebAssembly 的 Graphviz 库（Fermion/pages/graphvizlib.wasm，用于渲染追踪结果），以及随附的 jQuery、Semantic UI（含 Lato 字体）、Split.js 和 Tailwind CSS 资源。设备、进程和应用均需用户自备。","采用 BSD-3-Clause 许可（Copyright 2019 Ruben Boonen）；随附的框架和字体保留各自许可。"],"targets":["app","binary"],"url":"https://github.com/FuzzySecurity/Fermion","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/desowin/usbpcap/blob/477b6edcbd7e99a47f77afc0c4168a9ebee603bb/USBPcapCMD/cmd.c#L1118-L1182","https://github.com/desowin/usbpcap/blob/477b6edcbd7e99a47f77afc0c4168a9ebee603bb/USBPcapDriver/USBPcap.inx","https://github.com/desowin/usbpcap/blob/477b6edcbd7e99a47f77afc0c4168a9ebee603bb/USBPcapDriver/USBPcapMain.c#L1-L5","https://github.com/desowin/usbpcap/blob/477b6edcbd7e99a47f77afc0c4168a9ebee603bb/nsis/USBPcap.nsi#L84-L125","https://github.com/desowin/usbpcap/blob/477b6edcbd7e99a47f77afc0c4168a9ebee603bb/config.bat","https://github.com/desowin/usbpcap/tree/477b6edcbd7e99a47f77afc0c4168a9ebee603bb/certificates","https://github.com/desowin/usbpcap/blob/477b6edcbd7e99a47f77afc0c4168a9ebee603bb/nsis/gpl-2.0.txt","https://github.com/desowin/usbpcap/blob/477b6edcbd7e99a47f77afc0c4168a9ebee603bb/nsis/bsd-2clause.txt","https://github.com/desowin/usbpcap/releases/tag/1.5.4.0","https://desowin.org/usbpcap/","https://desowin.org/usbpcap/tour.html","https://desowin.org/usbpcap/capture_limitations.html","https://desowin.org/usbpcap/captureformat.html"],"category":"protocol-analysis","description_en":"Tomasz Moń's open-source USB packet capture for Windows. A filter driver installed in the Windows USB device stack records the USB Request Blocks (URBs) exchanged with devices on each root hub, and USBPcapCMD writes them to pcap files in the LINKTYPE_USBPCAP format, which Wireshark dissects. Since 1.2.0.0 the project has recommended running USBPcapCMD as a Wireshark extcap: each root hub then appears as a capture interface, with options to capture selected, all or newly connected devices and to add the descriptors of devices that are already attached.","description_zh":"Tomasz Moń 开发的开源 Windows USB 抓包工具。安装在 Windows USB 设备栈中的过滤驱动会记录各根集线器上设备收发的 USB 请求块（URB），再由 USBPcapCMD 写成 LINKTYPE_USBPCAP 格式的 pcap 文件，供 Wireshark 解析。从 1.2.0.0 版起，项目推荐把 USBPcapCMD 作为 Wireshark extcap 使用：每个根集线器会显示为一个抓包接口，可选择抓取指定设备、全部设备或新接入的设备，还能把已连接设备的描述符补进抓包数据。","entry_url":"https://awesomerea.org/resources/usbpcap/","entry_url_zh":"https://awesomerea.org/zh/resources/usbpcap/","evidence_url":"https://github.com/desowin/usbpcap/blob/477b6edcbd7e99a47f77afc0c4168a9ebee603bb/README","group":"tools","id":"usbpcap","json_url":"https://awesomerea.org/resources/usbpcap/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/usbpcap/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/usbpcap/index.md","name":"USBPcap","name_zh":"USBPcap Windows USB 抓包工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 1.5.4.0, published 2020-05-22, with a digitally signed USBPcapSetup installer for x86 and x64 Windows 7, 8 and 10 and a source archive that includes debug symbols. The reviewed master commit (2025-01-25) adds two unreleased driver fixes on top of it, one marked critical, for kernel buffer reallocation and the order of read completions. The installer refuses Windows versions older than 7 (1.5.3.0 was the last release for XP and Vista) and Windows To Go, asks Windows 7 users to install a SHA-2 update (KB3033929 or KB4474419) first, and requires a reboot after installation.","Capture runs on the analyst's own Windows machine. Either run USBPcapCMD.exe to choose a root-hub filter instance and an output file, or copy it into Wireshark's global or personal extcap folder; USBPcap support has been in Wireshark since 1.10.0rc1. The README notes that there is no capture engine DLL. The project's tour recommends capturing newly connected devices, or reconnecting a device after capture starts, so that its descriptors appear in the capture for Wireshark's dissectors.","Per the README, source builds use Windows Driver Kit 7.1.0 for the Windows 7 driver, or Visual Studio 2013 with WDK 8.1 Update for the Windows 8 build. Release drivers are attestation-signed through Microsoft's Hardware Dev Center with the author's own, non-public certificate. Self-built drivers are signed with the committed test certificate (certificates/USBPcapTestCert.*) and, as the README explains, load on 64-bit Windows only with test signing enabled. The only other committed binaries are the NSIS SysRestore.dll installer plugin and two public CA cross-certificates.","The project's capture-limitations page says USBPcap records URBs passed between the stack's functional and physical device objects. It therefore does not show bus states, packet IDs, split transactions, wire timing or transfer speed, nor the enumeration that happens before a device has its address; the page says those appear only in a hardware USB sniffer. Interpreting the captured payloads remains the analyst's own protocol work in Wireshark or another dissector.","The README and SPDX headers license the driver under GPL-2.0 and USBPcapCMD under BSD-2-Clause. GitHub detects no license because there is no license file at the repository root; the texts are in nsis/ and wix/."],"requirements_zh":["审阅时最新版本为 1.5.4.0，发布于 2020-05-22，提供经数字签名的 USBPcapSetup 安装程序（适用于 x86 和 x64 的 Windows 7、8 和 10），以及附带调试符号的源码包。所审阅的 master 提交（2025-01-25）在此基础上新增两项尚未发布的驱动修复，其中一项标为关键修复，分别涉及内核缓冲区重新分配和读取请求的完成顺序。安装程序不支持早于 Windows 7 的系统（1.5.3.0 是最后支持 XP 和 Vista 的版本），也不支持 Windows To Go；Windows 7 用户需先安装 SHA-2 更新（KB3033929 或 KB4474419），安装后须重启。","抓包在分析者自己的 Windows 电脑上进行。可直接运行 USBPcapCMD.exe，选择根集线器过滤实例和输出文件；也可以把它复制到 Wireshark 的全局或个人 extcap 文件夹，Wireshark 自 1.10.0rc1 起支持 USBPcap。README 提到目前没有抓包引擎 DLL。项目教程建议抓取新接入的设备，或在开始抓包后重新插拔设备，使设备描述符进入抓包数据，供 Wireshark 解析器使用。","按 README 说明，从源码构建 Windows 7 驱动需要 Windows Driver Kit 7.1.0，Windows 8 版本则需要 Visual Studio 2013 和 WDK 8.1 Update。正式发布的驱动由作者使用自己未公开的证书，经 Microsoft Hardware Dev Center 进行认证签名。自行构建的驱动使用仓库中的测试证书（certificates/USBPcapTestCert.*）签名；README 说明，在 64 位 Windows 上需开启测试签名模式才能加载。仓库中其余的二进制文件只有 NSIS 安装插件 SysRestore.dll 和两份公开的 CA 交叉证书。","项目的抓包限制页面说明，USBPcap 记录的是在设备栈的功能设备对象与物理设备对象之间传递的 URB，因此看不到总线状态、包标识（PID）、拆分事务、线上时序和传输速率，也看不到设备获得地址之前的枚举过程；该页面称这些只能由硬件 USB 嗅探器看到。抓到的数据如何解读，仍需分析者在 Wireshark 或其他解析器中自行完成协议分析。","README 和 SPDX 文件头声明，驱动采用 GPL-2.0，USBPcapCMD 采用 BSD-2-Clause。仓库根目录没有许可证文件，许可证文本位于 nsis/ 和 wix/ 中，因此 GitHub 未识别出许可证。"],"targets":["protocol"],"url":"https://github.com/desowin/usbpcap","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/anna-oake/xiaomi-kettle/blob/fbc0b513bed9fbe08edaa97d33e2e12e04d02544/cipher.go","https://github.com/anna-oake/xiaomi-kettle/blob/fbc0b513bed9fbe08edaa97d33e2e12e04d02544/LICENSE.txt"],"category":"reconstruction-cases","description_en":"Documents the closed Bluetooth Low Energy GATT protocol of the Xiaomi Kettle, which the author reconstructed by decompiling the Mi Home Android app and disassembling its native encryption library. The write-up covers the connection and authentication handshake, the layout of status notifications and the writable settings characteristics, with a small Go reimplementation of the cipher helpers. The author built a kettle-to-MQTT bridge for Home Assistant from it but did not publish that code, and gives no guarantee that the notes work for others.","description_zh":"记录 Xiaomi 电水壶封闭的低功耗蓝牙 GATT 协议；作者通过反编译 Mi Home Android 应用并反汇编其负责加密的原生库重建了该协议。文档涵盖连接与认证握手、状态通知的数据布局以及可写入的设置特征值，并附有用 Go 重新实现的少量加密辅助函数。作者据此开发了接入 Home Assistant 的水壶–MQTT 桥接程序，但未公开其代码，也不保证这些笔记对他人同样适用。","entry_url":"https://awesomerea.org/resources/xiaomi-kettle-ble-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/xiaomi-kettle-ble-protocol-case/","evidence_url":"https://github.com/anna-oake/xiaomi-kettle/blob/fbc0b513bed9fbe08edaa97d33e2e12e04d02544/README.md","group":"cases","id":"xiaomi-kettle-ble-protocol-case","json_url":"https://awesomerea.org/resources/xiaomi-kettle-ble-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/xiaomi-kettle-ble-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/xiaomi-kettle-ble-protocol-case/index.md","name":"Xiaomi Kettle BLE protocol: reconstructing a smart kettle's control interface","name_zh":"Xiaomi Kettle BLE protocol：重建智能电水壶的控制接口","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the final commit of 2018-11-29; the repository is archived and consists of a README and one Go file. README says the kettle is built on a QN9020 MCU, and it names no specific model or firmware version.","Applying the notes needs the user's own kettle and any BLE library that can read, write and subscribe to characteristics; the author used Go with currantlabs/ble. The Mi Home app, its native library and any decompiled output are not included, and the handshake uses a token the client generates itself, so no vendor key is committed or needed.","README lists device limits it observed: heating cannot be started over BLE unless Keep Warm mode is already active, Keep Warm can only be re-enabled with the physical button, and its time limit tops out at 12 hours.","cipher.go contains only the cipher and byte-mixing helpers, not a client. There are no tests, captures or verification records, so the protocol description is author-reported; the README credits jadx-gui and IDA Pro.","WTFPL version 2 (LICENSE.txt). Xiaomi and Mi Home remain trademarks of their owner."],"requirements_zh":["在 2018-11-29 的最后一次提交处审阅；仓库已归档，只包含一份 README 和一个 Go 文件。README 称该水壶基于 QN9020 MCU，但未指明具体型号或固件版本。","使用这些笔记需要使用者自己的水壶，以及任意能读写并订阅特征值的 BLE 库；作者使用 Go 与 currantlabs/ble。仓库未收录 Mi Home 应用、其原生库或任何反编译产物；握手使用客户端自行生成的令牌，因此既没有提交也不需要任何厂商密钥。","README 列出了作者观察到的设备限制：除非保温模式已开启，否则无法通过 BLE 启动加热；保温模式只能用实体按键重新开启；保温时限最长为 12 小时。","cipher.go 只包含加密与字节混排辅助函数，并非完整客户端。仓库没有测试、抓包或验证记录，因此协议说明为作者报告；README 致谢了 jadx-gui 和 IDA Pro。","采用 WTFPL 第 2 版许可（LICENSE.txt）。Xiaomi 与 Mi Home 仍为其权利人的商标。"],"targets":["protocol"],"url":"https://github.com/anna-oake/xiaomi-kettle","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/cantools/cantools/blob/5d37340b321c60cbf9b61f2abfad352751f5c835/README.rst#L1-L35","https://github.com/cantools/cantools/blob/5d37340b321c60cbf9b61f2abfad352751f5c835/README.rst#L83-L130","https://github.com/cantools/cantools/blob/5d37340b321c60cbf9b61f2abfad352751f5c835/README.rst#L291-L310","https://github.com/cantools/cantools/blob/5d37340b321c60cbf9b61f2abfad352751f5c835/pyproject.toml","https://github.com/cantools/cantools/tree/5d37340b321c60cbf9b61f2abfad352751f5c835/src/cantools/subparsers","https://github.com/cantools/cantools/blob/5d37340b321c60cbf9b61f2abfad352751f5c835/src/cantools/subparsers/monitor.py","https://github.com/cantools/cantools/tree/5d37340b321c60cbf9b61f2abfad352751f5c835/tests/files","https://github.com/cantools/cantools/blob/5d37340b321c60cbf9b61f2abfad352751f5c835/LICENSE","https://github.com/cantools/cantools/releases/tag/45.1.0","https://pypi.org/project/cantools/45.1.0/","https://cantools.readthedocs.io/en/latest/"],"category":"protocol-analysis","description_en":"Python 3 library and command-line tool for CAN bus databases that parses DBC, KCD, SYM, ARXML 3/4 and CDD files and encodes and decodes CAN messages, including simple and extended signal multiplexing and diagnostic DIDs. Its CLI decodes candump output against a database, plots decoded signals from candump logs with matplotlib, dumps each message's bit layout, converts between database formats, generates C pack and unpack code, and monitors a live bus in a text interface through python-can.","description_zh":"面向 CAN 总线数据库的 Python 3 库和命令行工具，可解析 DBC、KCD、SYM、ARXML 3/4 和 CDD 文件，对 CAN 报文进行编码和解码，支持简单与扩展信号多路复用以及诊断 DID。其命令行可依据数据库解码 candump 输出、用 matplotlib 绘制 candump 日志中解码出的信号、转储每条报文的位布局、在数据库格式之间转换、生成 C 语言打包与解包代码，并通过 python-can 在文本界面中监视实时总线。","entry_url":"https://awesomerea.org/resources/cantools/","entry_url_zh":"https://awesomerea.org/zh/resources/cantools/","evidence_url":"https://github.com/cantools/cantools/blob/5d37340b321c60cbf9b61f2abfad352751f5c835/README.rst","group":"tools","id":"cantools","json_url":"https://awesomerea.org/resources/cantools/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/cantools/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cantools/index.md","name":"cantools","name_zh":"cantools CAN 总线数据库工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 45.1.0, published 2026-10-20 on GitHub and PyPI; the reviewed master commit is 15 commits ahead of that tag. It installs with pip, and pyproject.toml requires Python 3.10+ with python-can, bitstruct, textparser, crccheck and argparse_addons, plus optional extras for plotting (matplotlib), caching (diskcache) and Windows curses support for the monitor.","Bring a database describing the target network and frames captured from it: decode reads candump output on standard input and plot reads candump log files, while monitor takes python-can bus arguments for a live interface, and the README's scripting example sends and receives frames on a SocketCAN channel. The repository's tests/files directory holds sample DBC, KCD, SYM, ARXML and CDD databases and generated C sources used by the examples and tests.","Decoding covers only what the supplied database defines; cantools applies existing message and signal definitions rather than inferring unknown layouts, and the README notes that generated C code is limited to signals of at most 64 bits. MIT licensed."],"requirements_zh":["审阅时最新版本为 45.1.0，于 2026-10-20 发布在 GitHub 和 PyPI；所审阅的 master 提交比该标签多 15 个提交。可用 pip 安装；pyproject.toml 要求 Python 3.10+，依赖 python-can、bitstruct、textparser、crccheck 和 argparse_addons，并提供绘图（matplotlib）、缓存（diskcache）以及监视器所需 Windows curses 支持等可选扩展。","需要自备描述目标网络的数据库以及从该网络采集的帧：decode 从标准输入读取 candump 输出，plot 读取 candump 日志文件，monitor 则通过 python-can 的总线参数连接实时接口；README 中的脚本示例在 SocketCAN 通道上收发帧。仓库的 tests/files 目录收录示例和测试所用的 DBC、KCD、SYM、ARXML 和 CDD 示例数据库以及生成的 C 源码。","解码范围仅限所提供数据库中定义的内容；cantools 应用现有的报文和信号定义，并不推断未知布局；README 还指出生成的 C 代码仅支持不超过 64 位的信号。采用 MIT 许可。"],"targets":["protocol"],"url":"https://github.com/cantools/cantools","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/miek/inspectrum/blob/82f5779ee3b82fc2b4d6d1360d9106392a71d4ab/README.md#L42-L59","https://github.com/miek/inspectrum/blob/82f5779ee3b82fc2b4d6d1360d9106392a71d4ab/CMakeLists.txt","https://github.com/miek/inspectrum/blob/82f5779ee3b82fc2b4d6d1360d9106392a71d4ab/src/CMakeLists.txt","https://github.com/miek/inspectrum/blob/82f5779ee3b82fc2b4d6d1360d9106392a71d4ab/src/main.cpp","https://github.com/miek/inspectrum/blob/82f5779ee3b82fc2b4d6d1360d9106392a71d4ab/src/plots.h","https://github.com/miek/inspectrum/blob/82f5779ee3b82fc2b4d6d1360d9106392a71d4ab/src/plotview.cpp","https://github.com/miek/inspectrum/blob/82f5779ee3b82fc2b4d6d1360d9106392a71d4ab/.github/workflows/build.yml","https://github.com/miek/inspectrum/blob/82f5779ee3b82fc2b4d6d1360d9106392a71d4ab/LICENSE","https://github.com/miek/inspectrum/releases/tag/v0.4.0","https://github.com/miek/inspectrum/wiki/Build/750dc5b4a81a4c1c85169f053bd23b01fa8af88e"],"category":"protocol-analysis","description_en":"Desktop analyzer for recorded radio signals, primarily captures from software-defined radio receivers, which the README says handles files of 100 GB and more. A zoomable spectrogram with a tunable filter feeds sample, amplitude, frequency, phase and threshold plots, and cursors measure period and symbol rate and extract symbol values to stdout or the clipboard. Selected time spans, filtered samples and demodulated traces can be exported, and SigMF annotations can be displayed over the spectrogram.","description_zh":"用于分析已录制无线电信号的桌面工具，主要面向软件无线电接收机的录制文件，README 称可处理 100 GB 以上的文件。可缩放的频谱瀑布图配有可调滤波器，可派生出采样、幅度、频率、相位和阈值曲线；游标用于测量周期和符号速率，并可将符号值提取到标准输出或剪贴板。选定的时间段、滤波后的采样和解调曲线均可导出，频谱图上还能显示 SigMF 标注。","entry_url":"https://awesomerea.org/resources/inspectrum/","entry_url_zh":"https://awesomerea.org/zh/resources/inspectrum/","evidence_url":"https://github.com/miek/inspectrum/blob/82f5779ee3b82fc2b4d6d1360d9106392a71d4ab/README.md","group":"tools","id":"inspectrum","json_url":"https://awesomerea.org/resources/inspectrum/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/inspectrum/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/inspectrum/index.md","name":"inspectrum","name_zh":"inspectrum 无线电信号分析工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.4.0, published 2025-12-06 as a source-only GitHub release; the reviewed main commit is that tag. Its notes add Qt 6 and SigMF dataset support, raise the CMake minimum to 3.5 and fix a crash on small files. The README points Linux users to distribution packages, macOS users to Homebrew or MacPorts and Windows users to radioconda or conda-forge.","Source builds need CMake 3.5+ (the README still lists 3.1), a C++14 compiler, Qt 6 or, as a fallback, Qt 5 Core, Widgets and Concurrent, FFTW 3, liquid-dsp 1.3.0+ and pkg-config; distribution-specific steps are on the project wiki. CI builds against Qt 5 and Qt 6 on macOS and Ubuntu 22.04 and 24.04, but the repository defines no automated tests.","It reads recordings only; the source has no SDR device, capture or transmit code. Users supply their own SigMF recordings or raw sample files, from complex cf32, cf64, cs32, cs16, cs8 and cu8 to real f32, f64, s16, s8 and u8, selected by file extension or --format (unknown extensions are read as cf32), and set the sample rate with --rate or in the controls. 64-bit samples are truncated to 32-bit internally.","Symbol timing comes from cursors the analyst places; the tool does not infer modulation, framing or protocol fields. GPL-3.0, with source headers allowing version 3 or later; the repository holds only source code, CMake modules and a screenshot."],"requirements_zh":["审阅时最新版本为 v0.4.0，于 2025-12-06 在 GitHub 以仅含源码的形式发布；所审阅的 main 提交即该标签。发布说明称新增了 Qt 6 和 SigMF 数据集支持，将 CMake 最低版本提高到 3.5，并修复了打开小文件时的崩溃。README 建议 Linux 用户使用发行版软件包，macOS 用户使用 Homebrew 或 MacPorts，Windows 用户使用 radioconda 或 conda-forge。","从源码构建需要 CMake 3.5+（README 仍写 3.1）、支持 C++14 的编译器、Qt 6（或作为后备的 Qt 5）的 Core、Widgets 和 Concurrent 组件、FFTW 3、liquid-dsp 1.3.0+ 以及 pkg-config；各发行版的构建步骤见项目 wiki。CI 在 macOS 以及 Ubuntu 22.04 和 24.04 上分别用 Qt 5 和 Qt 6 构建，但仓库没有定义自动化测试。","它只读取录制文件，源码中没有软件无线电设备、采集或发射相关代码。使用者需自备 SigMF 录制文件或原始采样文件，格式从复数 cf32、cf64、cs32、cs16、cs8、cu8 到实数 f32、f64、s16、s8、u8，按扩展名或 --format 选择（未知扩展名按 cf32 读取），并通过 --rate 或界面控件设置采样率。64 位采样在内部会被截断为 32 位。","符号定时依靠分析者放置的游标确定，工具不会推断调制方式、帧结构或协议字段。采用 GPL-3.0，源码文件头允许使用第 3 版或更高版本；仓库只包含源码、CMake 模块和一张截图。"],"targets":["protocol"],"url":"https://github.com/miek/inspectrum","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/hgascon/pulsar/blob/3c6117818ef24de246bda2cdf12d9caa5c557177/INSTALL.md","https://github.com/hgascon/pulsar/blob/3c6117818ef24de246bda2cdf12d9caa5c557177/LICENSE","https://github.com/hgascon/pulsar/blob/3c6117818ef24de246bda2cdf12d9caa5c557177/pulsar.py","https://github.com/hgascon/pulsar/blob/3c6117818ef24de246bda2cdf12d9caa5c557177/pulsar/core/model.py","https://github.com/hgascon/pulsar/blob/3c6117818ef24de246bda2cdf12d9caa5c557177/pulsar/core/cluster_generator.R","https://github.com/hgascon/pulsar/blob/3c6117818ef24de246bda2cdf12d9caa5c557177/pulsar/conf/model.conf","https://github.com/hgascon/pulsar/tree/3c6117818ef24de246bda2cdf12d9caa5c557177/models/itunes-xbmc","https://github.com/hgascon/pulsar/blob/3c6117818ef24de246bda2cdf12d9caa5c557177/pulsar/core/sippy/SipCSeq.py","https://hugogascon.com/publications/2015-securecomm.pdf","https://doi.org/10.1007/978-3-319-28865-9_18","https://github.com/tammok/PRISMA/blob/a48624f5102875984975ce99ddd687e0ddd6dee5/README.md"],"category":"protocol-analysis","description_en":"Research prototype by Hugo Gascon and colleagues that learns a model of an unknown network protocol from recorded traffic. Messages extracted from PCAP traces are embedded as token or n-gram vectors, clustered by matrix factorization through the PRISMA R module, and turned into a Markov-chain state model with message templates and rules linking fields to earlier messages, written out as model files and a Graphviz state graph. The same models drive the tool's session simulator and stateful fuzzer, described in the authors' SecureComm 2015 paper; this entry covers only the protocol-learning part.","description_zh":"由 Hugo Gascon 等人开发的研究原型，可从记录下来的流量中学习未知网络协议的模型。它从 PCAP 记录中提取报文，将其嵌入为词元或 n-gram 向量，借助 PRISMA R 模块用矩阵分解进行聚类，再生成马尔可夫链状态模型，以及报文模板和把字段与先前报文关联起来的规则，输出为模型文件和 Graphviz 状态图。同一模型还驱动工具中的会话模拟器和有状态模糊测试器，详见作者 2015 年的 SecureComm 论文；本条目只介绍协议学习部分。","entry_url":"https://awesomerea.org/resources/pulsar/","entry_url_zh":"https://awesomerea.org/zh/resources/pulsar/","evidence_url":"https://github.com/hgascon/pulsar/blob/3c6117818ef24de246bda2cdf12d9caa5c557177/README.md","group":"tools","id":"pulsar","json_url":"https://awesomerea.org/resources/pulsar/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pulsar/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pulsar/index.md","name":"PULSAR","name_zh":"PULSAR 协议学习研究原型","record_type":"resource","relationship":"foundation","requirements":["Reviewed at master commit 3c61178 (2022-06-07), the last push; the repository has no releases or tags, and the CLI reports itself as v0.1-dev. Contributed changes merged in 2021 converted the code from Python 2 to Python 3 with 2to3. There are no tests or CI configuration.","Learning takes PCAP traces of the protocol under study, or the captures that Cuckoo sandbox stored for analyzed samples. The repository commits one example model, models/itunes-xbmc, with the roughly 3 MB iTunes–XBMC capture it was learned from (itunes-xbmc.pcap, part of the 2015 initial commit) and its intermediate Derrick, Sally and Harry files; it bundles no other target data.","INSTALL.md has users clone the PRISMA R module into pulsar/modules, build Konrad Rieck's Derrick and Sally C tools from their repositories, install R, Wireshark's mergecap and Graphviz, and pip-install pygraphviz, progressBar, NumPy and python-Levenshtein, giving package commands for CentOS only. Dependencies are unpinned; PRISMA was last updated in 2018, and Derrick and Sally in 2019.","The README points to the SecureComm 2015 paper for the method and to an AISec 2012 paper on learning stateful models for network honeypots; results reported there are the authors'. Learned templates and state machines are statistical approximations that need analyst validation.","BSD-3-Clause (Copyright 2014 Hugo Gascon); the bundled pulsar/core/sippy SIP stack keeps its own GPL-2.0-or-later notices."],"requirements_zh":["审阅对象为 master 分支提交 3c61178（2022-06-07），也是最后一次推送；仓库没有发行版或标签，命令行工具自称 v0.1-dev。2021 年合并的社区贡献用 2to3 把代码从 Python 2 转换为 Python 3。仓库没有测试或 CI 配置。","学习过程以所研究协议的 PCAP 流量记录为输入，也可使用 Cuckoo 沙箱为所分析样本保存的抓包。仓库提交了一个示例模型 models/itunes-xbmc，附带用来学习该模型的约 3 MB iTunes–XBMC 抓包（itunes-xbmc.pcap，来自 2015 年的初始提交）及其 Derrick、Sally 和 Harry 中间文件；除此之外不附带其他目标数据。","按 INSTALL.md，用户需把 PRISMA R 模块克隆到 pulsar/modules，从 Konrad Rieck 的仓库构建 Derrick 和 Sally 这两个 C 工具，安装 R、Wireshark 的 mergecap 和 Graphviz，再用 pip 安装 pygraphviz、progressBar、NumPy 和 python-Levenshtein；文档只给出 CentOS 的安装命令。依赖均未固定版本；PRISMA 最后更新于 2018 年，Derrick 和 Sally 最后更新于 2019 年。","README 让读者参阅 2015 年 SecureComm 论文了解方法，并引用一篇 2012 年 AISec 关于为网络蜜罐学习有状态模型的论文；其中报告的结果出自作者。学到的模板和状态机只是统计近似，需要分析人员验证。","采用 BSD-3-Clause（Copyright 2014 Hugo Gascon）；附带的 pulsar/core/sippy SIP 协议栈保留其自身的 GPL-2.0-or-later 声明。"],"targets":["protocol"],"url":"https://github.com/hgascon/pulsar","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/soyersoyer/basefind2/blob/370d0ddf561bf5626c40740f0cc2088578bc35b2/basefind2.py","https://github.com/soyersoyer/basefind2/blob/370d0ddf561bf5626c40740f0cc2088578bc35b2/LICENSE","https://github.com/sgayou/rbasefind/blob/a661118d19f0e2b282c48f2e8019d493868d4dd2/README.md"],"category":"firmware","description_en":"Python script that estimates the load address of a flat 32-bit little-endian firmware image without brute-forcing every candidate base, building on mncoppola's basefind.py and rbasefind. It searches the gaps between sorted pointer values for a run of consecutive gaps between string offsets, takes each match as a candidate base, and scores it by the share of sampled strings whose rebased address also appears as a pointer. The README's example finds the correct base of one image in about 26 seconds.","description_zh":"一个 Python 脚本，无需暴力枚举每个候选基址即可估算平面 32 位小端固件镜像的加载地址，在 mncoppola 的 basefind.py 和 rbasefind 的基础上改进而来。它在排序后指针值的相邻差值中，查找与一段相邻字符串偏移差值完全相同的连续序列，把每处匹配视为候选基址，再按抽样字符串在重定位后的地址同样作为指针出现的比例为其打分。README 中的示例约用 26 秒找出了一个镜像的正确基址。","entry_url":"https://awesomerea.org/resources/basefind2/","entry_url_zh":"https://awesomerea.org/zh/resources/basefind2/","evidence_url":"https://github.com/soyersoyer/basefind2/blob/370d0ddf561bf5626c40740f0cc2088578bc35b2/README.md","group":"tools","id":"basefind2","json_url":"https://awesomerea.org/resources/basefind2/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/basefind2/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/basefind2/index.md","name":"basefind2","name_zh":"basefind2 快速固件基址扫描器","record_type":"resource","relationship":"foundation","requirements":["The whole tool is basefind2.py; the reviewed main commit of 2022-05-02 is the last of six commits made between 2022-04-07 and 2022-05-02, and there are no releases, tags or packages. It needs only Python 3 and its standard library.","Input is a flat image supplied by the user; no firmware or samples are included. Pointers are read as little-endian 32-bit words at 4-byte alignment, with no big-endian or 64-bit option. Strings are runs of at least 10 printable ASCII characters, tabs or line breaks (-sl), a match needs 10 consecutive gaps by default (-dl), and scoring samples every 20th string (-s). The whole file is read into memory.","Output lists each candidate base with its sampled match percentage, and the analyst must choose and confirm one. The README's only example raises -dl to 40 and reports the correct base of one image at 81.64% after about 26 seconds. There are no tests or CI, and the README gives no comparison with rbasefind or basefind.py on shared images.","MIT License (2022, soyer). Analyzed firmware keeps its own terms."],"requirements_zh":["整个工具就是 basefind2.py；所审阅的 main 分支提交日期为 2022-05-02，是 2022-04-07 至 2022-05-02 间六个提交中的最后一个，没有发布版本、标签或软件包。只需 Python 3 及其标准库。","输入是使用者提供的平面镜像；仓库不含任何固件或样例。指针按 4 字节对齐的小端 32 位字读取，没有大端或 64 位选项。字符串指由至少 10 个可打印 ASCII 字符、制表符或换行符组成的连续片段（-sl），默认需有 10 个连续差值相同才算匹配（-dl），打分时每 20 个字符串抽取一个（-s）。整个文件会被读入内存。","输出列出每个候选基址及其抽样匹配百分比，需要分析人员选择并确认。README 唯一的示例把 -dl 提高到 40，约 26 秒后以 81.64% 报告出一个镜像的正确基址。项目没有测试或 CI，README 也未在相同镜像上与 rbasefind 或 basefind.py 比较。","采用 MIT 许可证（2022 年，soyer）。被分析的固件适用其自身条款。"],"targets":["firmware"],"url":"https://github.com/soyersoyer/basefind2","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/giacomoferretti/paranoid-deobfuscator/blob/028bd05fd8a74e8110d0e003b39f06d3bf597642/paranoid_deobfuscator/commands/deobfuscate.py","https://github.com/giacomoferretti/paranoid-deobfuscator/blob/028bd05fd8a74e8110d0e003b39f06d3bf597642/paranoid_deobfuscator/commands/helpers.py","https://github.com/giacomoferretti/paranoid-deobfuscator/blob/028bd05fd8a74e8110d0e003b39f06d3bf597642/paranoid_deobfuscator/paranoid/DeobfuscatorHelper.py","https://github.com/giacomoferretti/paranoid-deobfuscator/blob/028bd05fd8a74e8110d0e003b39f06d3bf597642/pyproject.toml","https://github.com/giacomoferretti/paranoid-deobfuscator/blob/028bd05fd8a74e8110d0e003b39f06d3bf597642/.github/workflows/run_tests.yml","https://github.com/giacomoferretti/paranoid-deobfuscator/blob/028bd05fd8a74e8110d0e003b39f06d3bf597642/LICENSE","https://github.com/giacomoferretti/paranoid-deobfuscator/releases/tag/v3.0.2","https://pypi.org/project/paranoid-deobfuscator/3.0.2/"],"category":"android","description_en":"Python command-line tool that recovers the strings hidden by the Paranoid and LSParanoid Android string-obfuscation plugins, so that smali code becomes readable for static analysis. It scans a smali directory for the obfuscator's string-lookup method and encoded chunk array, decodes the chunks with Python ports of the libraries' DeobfuscatorHelper and RandomHelper classes, and rewrites each lookup call in place as a const-string instruction with a marker comment. Helper commands list the recovered strings, save the chunks to a file and decode a single string from saved chunks.","description_zh":"一个 Python 命令行工具，用于还原被 Paranoid 和 LSParanoid 这两款 Android 字符串混淆插件隐藏的字符串，使 smali 代码便于静态分析。它在 smali 目录中查找混淆器的字符串查询方法和编码后的分块数组，用移植自这两个库 DeobfuscatorHelper 和 RandomHelper 类的 Python 实现解码分块，并就地把每处查询调用改写为带标记注释的 const-string 指令。辅助命令可列出还原的字符串、把分块保存到文件，以及根据已保存的分块解码单个字符串。","entry_url":"https://awesomerea.org/resources/paranoid-deobfuscator/","entry_url_zh":"https://awesomerea.org/zh/resources/paranoid-deobfuscator/","evidence_url":"https://github.com/giacomoferretti/paranoid-deobfuscator/blob/028bd05fd8a74e8110d0e003b39f06d3bf597642/README.md","group":"tools","id":"paranoid-deobfuscator","json_url":"https://awesomerea.org/resources/paranoid-deobfuscator/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/paranoid-deobfuscator/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/paranoid-deobfuscator/index.md","name":"paranoid-deobfuscator","name_zh":"paranoid-deobfuscator 字符串反混淆工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v3.0.2, published 2025-02-18 and uploaded to PyPI the same day; install it with pip or pipx. pyproject.toml requires Python 3.10+ with click 8 (8.1.7 or later) and NumPy 2 (2.1.3 or later), and CI runs pytest on Python 3.10 to 3.13 on every push. The reviewed main commit of 2025-03-26 adds only tests and a donation link after that release.","It works on a smali directory decoded from an APK or DEX file the user supplies, which the README pairs with Apktool or smali/baksmali for decoding and rebuilding, and it overwrites the smali files in place. The README supports only apps obfuscated with Paranoid v0.3.0 or later, released 25 January 2020; a commented-out README warning about Windows refers to issue #14, which is closed.","The command stops when it finds more than one candidate string-lookup method or obfuscated string array, which the source says is not supported yet, and logs a warning for lookup calls it cannot follow. It restores string constants only, not names or other obfuscation. Tests cover string encoding, smali parsing, Paranoid decoding and the issue #18 regression.","Apache-2.0 (copyright 2024 Giacomo Ferretti); the decoding modules state that they were converted from Paranoid's and LSParanoid's Java helpers. Analyzed apps keep their own terms."],"requirements_zh":["审阅时最新版本为 v3.0.2，发布于 2025-02-18，并于同日上传到 PyPI；可用 pip 或 pipx 安装。pyproject.toml 要求 Python 3.10+，依赖 click 8（8.1.7 或更高）和 NumPy 2（2.1.3 或更高）；CI 在每次推送时于 Python 3.10 至 3.13 上运行 pytest。所审阅的 main 分支 2025-03-26 提交在该版本之后只增加了测试和捐助链接。","它处理从使用者自备的 APK 或 DEX 文件解码出的 smali 目录（README 搭配 Apktool 或 smali/baksmali 进行解码和重新构建），并会就地覆盖 smali 文件。README 说明只支持用 Paranoid v0.3.0（2020 年 1 月 25 日发布）或更新版本混淆的应用；README 中已被注释掉的 Windows 警告指向 issue #14，该 issue 已关闭。","若找到多个候选的字符串查询方法或混淆字符串数组，命令会停止，源码称这种情况暂不支持；对无法跟踪的查询调用会记录警告。它只还原字符串常量，不会恢复名称或撤销其他混淆。测试覆盖字符串编码、smali 解析、Paranoid 解码以及 issue #18 的回归问题。","采用 Apache-2.0 许可证（版权 2024 Giacomo Ferretti）；解码模块注明其由 Paranoid 和 LSParanoid 的 Java 辅助类转换而来。被分析的应用适用其自身条款。"],"targets":["app"],"url":"https://github.com/giacomoferretti/paranoid-deobfuscator","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/mandiant/Ghidrathon/blob/56866ad97ab7cc207ce85542c5ec20e01a10352d/doc/building.md","https://github.com/mandiant/Ghidrathon/blob/56866ad97ab7cc207ce85542c5ec20e01a10352d/util/ghidrathon_configure.py","https://github.com/mandiant/Ghidrathon/blob/56866ad97ab7cc207ce85542c5ec20e01a10352d/util/requirements.txt","https://github.com/mandiant/Ghidrathon/blob/56866ad97ab7cc207ce85542c5ec20e01a10352d/ghidra_scripts/ghidrathon_example.py","https://github.com/mandiant/Ghidrathon/blob/56866ad97ab7cc207ce85542c5ec20e01a10352d/.github/workflows/tests.yml","https://github.com/mandiant/Ghidrathon/blob/56866ad97ab7cc207ce85542c5ec20e01a10352d/.github/workflows/build.yml","https://github.com/mandiant/Ghidrathon/blob/56866ad97ab7cc207ce85542c5ec20e01a10352d/LICENSE.txt","https://github.com/mandiant/Ghidrathon/releases/tag/v4.0.0","https://github.com/NationalSecurityAgency/ghidra/blob/1b9e58a915cf867e106495eaa2a4b18eb4971c9d/Ghidra/Configurations/Public_Release/src/global/docs/ChangeHistory.md#L1283","https://github.com/NationalSecurityAgency/ghidra/blob/1b9e58a915cf867e106495eaa2a4b18eb4971c9d/Ghidra/Features/PyGhidra/README.md"],"category":"native-analysis","description_en":"Mandiant FLARE's Ghidra extension that embeds the user's local CPython 3 interpreter in Ghidra through Jep, as an alternative to Ghidra's Jython-based Python 2.7 scripting. It adds an interactive Python 3 interpreter window, Python 3 scripts in the Script Manager and Python 3 post-scripts in headless analyzeHeadless runs, with GhidraScript state such as currentProgram() and FlatProgramAPI methods available as Python builtins. Because the configured interpreter or virtual environment is used as is, scripts can import installed packages; the README names capa, Unicorn and angr as motivating examples and shows Unicorn emulating ARM code inside Ghidra.","description_zh":"Mandiant FLARE 团队开发的 Ghidra 扩展，借助 Jep 把用户本机的 CPython 3 解释器嵌入 Ghidra，作为 Ghidra 基于 Jython 的 Python 2.7 脚本支持之外的选择。它提供交互式 Python 3 解释器窗口，可在脚本管理器中编写和运行 Python 3 脚本，也可在无界面的 analyzeHeadless 运行中执行 Python 3 后处理脚本；currentProgram() 等 GhidraScript 状态和 FlatProgramAPI 方法以 Python 内置名称的形式提供。由于直接使用所配置的解释器或虚拟环境，脚本可以导入其中已安装的包；README 以 capa、Unicorn 和 angr 为开发动机举例，并演示在 Ghidra 内用 Unicorn 模拟执行 ARM 代码。","entry_url":"https://awesomerea.org/resources/ghidrathon/","entry_url_zh":"https://awesomerea.org/zh/resources/ghidrathon/","evidence_url":"https://github.com/mandiant/Ghidrathon/blob/56866ad97ab7cc207ce85542c5ec20e01a10352d/README.md","group":"tools","id":"ghidrathon","json_url":"https://awesomerea.org/resources/ghidrathon/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ghidrathon/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghidrathon/index.md","name":"Ghidrathon","name_zh":"Ghidrathon Ghidra Python 3 脚本扩展","record_type":"resource","relationship":"foundation","requirements":["The repository is archived on GitHub and read-only. Its last commit on main dates from 2024-05-08, and the latest release, v4.0.0 of 2024-02-13, attaches one extension zip that the release workflow builds against Ghidra 11.0 and bundles with the configure script. The archive states no reason; Ghidra's own change history records that 11.3 (February 2025) integrated PyGhidra, a native CPython 3 interface whose module provides a CPython interpreter plugin and a script provider for CPython 3 GhidraScripts.","The README requires Python 3.8+, exactly Jep 4.2.0, Ghidra 10.3.2+ and Java 17+. Setup installs Jep from util/requirements.txt into the chosen interpreter or virtual environment and runs util/ghidrathon_configure.py against the Ghidra install directory, which writes a ghidrathon.save file there or under GHIDRATHON_SAVE_PATH; the zip is then installed through Ghidra's extension manager, whose version-mismatch prompt the README says may be overridden. Source builds need Gradle 7.3+ and the Jep 4.2.0 JAR downloaded into lib/.","CI built and tested only Ghidra 10.3.2 and 11.0 with Python 3.8 and 3.12 on Ubuntu, Windows and macOS, running the repository's Python tests as headless post-scripts. Jep embeds Python in the JVM through JNI, which the README notes Ghidra's developers advise against, and unlike Ghidra's Java and Jython APIs, scripts read GhidraScript state through calls such as currentProgram().","Apache-2.0 (LICENSE.txt). The repository commits Java and Python sources, an example script, Python tests and three README screenshots, and no binaries; the CI tests analyze a demangler executable taken from the downloaded Ghidra distribution."],"requirements_zh":["该仓库已在 GitHub 归档，处于只读状态。main 分支最后一次提交为 2024-05-08；最新版本 v4.0.0 发布于 2024-02-13，附带一个扩展 zip，由发布工作流针对 Ghidra 11.0 构建，并打包了配置脚本。归档未说明原因；据 Ghidra 自身的变更记录，11.3（2025 年 2 月）集成了 PyGhidra 这一原生 CPython 3 接口，其模块提供 CPython 解释器插件，以及用于 CPython 3 GhidraScript 的脚本提供程序。","README 要求 Python 3.8+、恰好 Jep 4.2.0、Ghidra 10.3.2+ 和 Java 17+。安装时先按 util/requirements.txt 把 Jep 装进选定的解释器或虚拟环境，再针对 Ghidra 安装目录运行 util/ghidrathon_configure.py，它会在该目录或 GHIDRATHON_SAVE_PATH 下写入 ghidrathon.save 文件；随后通过 Ghidra 的扩展管理器安装 zip，README 说明遇到版本不匹配提示时可选择仍然安装。从源码构建需要 Gradle 7.3+，并需把 Jep 4.2.0 JAR 下载到 lib/。","CI 仅在 Ubuntu、Windows 和 macOS 上，以 Python 3.8 和 3.12 针对 Ghidra 10.3.2 与 11.0 构建测试，并以无界面后处理脚本方式运行仓库中的 Python 测试。Jep 通过 JNI 把 Python 嵌入 JVM，README 指出 Ghidra 开发者不建议在 Ghidra 中使用 JNI；与 Ghidra 的 Java 和 Jython API 不同，脚本需通过 currentProgram() 这类函数调用读取 GhidraScript 状态。","Apache-2.0（LICENSE.txt）。仓库提交的是 Java 与 Python 源码、一个示例脚本、Python 测试和三张 README 截图，不含二进制文件；CI 测试分析的是从下载的 Ghidra 发行包中取得的 demangler 可执行文件。"],"targets":["binary"],"url":"https://github.com/mandiant/Ghidrathon","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/roncapat/Ford-Fiesta-MK5-MS-CAN-bus/blob/7b57901e7ea6a293aacb692c1895110b2ec7175c/README.md#L14-L136","https://github.com/roncapat/Ford-Fiesta-MK5-MS-CAN-bus/blob/7b57901e7ea6a293aacb692c1895110b2ec7175c/Fiesta.kcd","https://github.com/roncapat/Ford-Fiesta-MK5-MS-CAN-bus/tree/7b57901e7ea6a293aacb692c1895110b2ec7175c"],"category":"reconstruction-cases","description_en":"Documents the medium-speed CAN bus that links the 6000CD radio and the dashboard of a restyled (post-2006) Ford Fiesta MK5, worked out by tapping the bus at the radio's QuadLock connector with a Seeed CAN-BUS Shield on an Arduino Uno. The README describes 18 partly or fully decoded message IDs on the 125 kbit/s bus, with byte layouts and scaling formulas: radio text sent to the dashboard LCD over ISO-TP, station names, volume, CD track and steering-column mode and seek buttons, as well as broadcast clock, door, lock, reverse-gear, indicator, light, handbrake, airbag-lamp, pedal, RPM, speed, coolant, key-position, battery and partial VIN data. An incomplete Kayak .kcd definition encodes only the clock and gas-pedal/RPM/speed messages.","description_zh":"记录了改款（2006 年后）Ford Fiesta MK5 上连接 6000CD 收音机与仪表盘的中速 CAN 总线。作者在收音机的 QuadLock 连接器处用 Arduino Uno 加 Seeed CAN-BUS Shield 接入总线，据此推断出这些内容。README 描述了这条 125 kbit/s 总线上 18 个已部分或完全解码的报文 ID，给出字节布局和换算公式：包括收音机经 ISO-TP 发往仪表 LCD 的文字、电台名称、音量、CD 曲目以及转向柱旁的模式与搜台按键，还有广播的时钟、车门、门锁、倒挡、转向灯、灯光、手刹、安全气囊指示灯、踏板、转速、车速、冷却液温度、钥匙位置、蓄电池电压和部分 VIN 数据。附带的 Kayak .kcd 定义文件尚不完整，只编码了时钟和油门踏板／转速／车速两条报文。","entry_url":"https://awesomerea.org/resources/ford-fiesta-mk5-ms-can-case/","entry_url_zh":"https://awesomerea.org/zh/resources/ford-fiesta-mk5-ms-can-case/","evidence_url":"https://github.com/roncapat/Ford-Fiesta-MK5-MS-CAN-bus/blob/7b57901e7ea6a293aacb692c1895110b2ec7175c/README.md","group":"cases","id":"ford-fiesta-mk5-ms-can-case","json_url":"https://awesomerea.org/resources/ford-fiesta-mk5-ms-can-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/ford-fiesta-mk5-ms-can-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ford-fiesta-mk5-ms-can-case/index.md","name":"Ford Fiesta MK5 MS-CAN: decoding the dashboard and radio bus","name_zh":"Ford Fiesta MK5 MS-CAN：解码仪表盘与收音机总线","record_type":"resource","relationship":"independent-reconstruction","requirements":["Documentation-only project with 25 commits from 2020-08-22 to the reviewed master commit of 2020-09-30, and no releases or tags. It applies to a Fiesta MK5 built after 2006 (the restyled model) with the 2-DIN 6000CD radio; the README notes that the steering-column volume buttons do not appear on MS-CAN, and the decoding of some IDs is partial.","No Ford software or files are needed; reading the bus requires a CAN interface on the CANH and CANL lines at the radio's QuadLock connector, which the README says needs no 120-ohm terminator. The author used a Seeed CAN-BUS Shield V2.0 on an Arduino Uno R3, but the repository holds only the README, the Kayak .kcd file, a connector pinout image and dashboard indicator icons, with no capture logs, sniffer code or Arduino sketch.","Message layouts and formulas such as volume, track time, speed, coolant temperature and battery voltage are author-reported from the author's own car, and the ISO-TP reading of the LCD text messages is credited to a Reddit commenter. The README documents decoding of observed traffic and gives no procedure for sending frames to the car.","The repository has no license file and GitHub detects none."],"requirements_zh":["纯文档项目，共 25 个提交，时间从 2020-08-22 到所审阅的 2020-09-30 master 提交，没有发行版或标签。适用于 2006 年后生产（改款）、配备 2-DIN 6000CD 收音机的 Fiesta MK5；README 指出转向柱旁的音量键不会出现在 MS-CAN 上，部分报文 ID 只解码了一部分。","不需要任何 Ford 软件或文件；读取总线需要在收音机 QuadLock 连接器的 CANH 和 CANL 线上接入 CAN 接口，README 称无需 120 欧姆终端电阻。作者使用的是插在 Arduino Uno R3 上的 Seeed CAN-BUS Shield V2.0，但仓库只有 README、Kayak .kcd 文件、一张连接器针脚图和若干仪表指示灯图标，没有抓包记录、嗅探代码或 Arduino 程序。","报文布局以及音量、曲目时间、车速、冷却液温度和蓄电池电压等换算公式均为作者依据自己的车辆报告；LCD 文字报文采用 ISO-TP 的判断归功于一位 Reddit 评论者。README 只记录对所观察流量的解码，没有给出向车辆发送帧的步骤。","仓库没有许可证文件，GitHub 也未识别出许可证。"],"targets":["protocol"],"url":"https://github.com/roncapat/Ford-Fiesta-MK5-MS-CAN-bus","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/huuck/Katalina/blob/f8e27b9f9d2316579a22fd1e330c7b385e6de995/main.py","https://github.com/huuck/Katalina/blob/f8e27b9f9d2316579a22fd1e330c7b385e6de995/mocks.py","https://github.com/huuck/Katalina/blob/f8e27b9f9d2316579a22fd1e330c7b385e6de995/requirements.txt","https://github.com/huuck/Katalina/blob/f8e27b9f9d2316579a22fd1e330c7b385e6de995/LICENSE","https://github.com/huuck/Katalina/pull/6"],"category":"android","description_en":"Python emulator for Dalvik bytecode that its README likens to Unicorn: it parses a DEX file and executes methods one instruction at a time, substituting Python mocks for common Java and Android APIs such as String, StringBuilder, Base64, ArrayList, AES Cipher and part of reflection. Run over Android entry points, methods matching a name or one method with given arguments, it logs the strings that the code builds or decrypts, optionally as JSON, which helps recover obfuscated strings in apps and malware.","description_zh":"用 Python 编写的 Dalvik 字节码模拟器，README 将其比作面向 Dalvik 的 Unicorn：它解析 DEX 文件并逐条指令执行方法，用 Python 模拟实现替代 String、StringBuilder、Base64、ArrayList、AES Cipher 及部分反射等常见 Java 与 Android API。它可针对 Android 入口点、名称匹配的方法或带指定参数的单个方法运行，记录代码构造或解密出的字符串，并可输出为 JSON，有助于还原应用和恶意软件中被混淆的字符串。","entry_url":"https://awesomerea.org/resources/katalina/","entry_url_zh":"https://awesomerea.org/zh/resources/katalina/","evidence_url":"https://github.com/huuck/Katalina/blob/f8e27b9f9d2316579a22fd1e330c7b385e6de995/README.md","group":"tools","id":"katalina","json_url":"https://awesomerea.org/resources/katalina/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/katalina/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/katalina/index.md","name":"Katalina","name_zh":"Katalina Dalvik 字节码模拟器","record_type":"resource","relationship":"foundation","requirements":["There are no releases or tags. Development ran from May to December 2023; the reviewed main commit f8e27b9 of 2026-10-01 merges a contributed fix that makes the String.valueOf mock follow the called overload's descriptor.","Requires Python 3.10+ with the pinned requirements.txt packages, including kaitaistruct 0.10 and pycryptodome 3.18.0. main.py takes -xe for Android entry points, -xm for methods matching a name, -x for one fully qualified method with arguments, -dl to skip methods whose names contain listed words and -j for JSON output. Entry-point and name-match runs give each method a SIGALRM time limit, so README says Windows support may be broken and recommends WSL.","Input is one classes.dex from an APK the analyst already has. README lists most instructions, same-class and static calls and String and Base64 APIs as working, iterator and array APIs and cross-class instance calls as partial, and MultiDex and I/O as broken. Framework behaviour without a mock is not reproduced, and the AES mock only tries ECB and then CBC with a zero IV, so recovered strings must be checked against the code. The repository has no tests or CI.","MIT. The first commit included DEX samples, many named after Android malware families, that were removed a month later; the reviewed tree holds only the Python sources."],"requirements_zh":["没有发布版本或标签。开发集中在 2023 年 5 月至 12 月；所审阅的 main 分支提交 f8e27b9（2026-10-01）合并了一个外部贡献的修复，使 String.valueOf 的模拟实现按被调用重载的描述符分派。","需要 Python 3.10+ 以及 requirements.txt 中固定版本的依赖，包括 kaitaistruct 0.10 和 pycryptodome 3.18.0。main.py 的 -xe 执行 Android 入口点，-xm 执行名称匹配的方法，-x 以参数执行一个完整限定名的方法，-dl 跳过名称含指定词的方法，-j 输出 JSON。执行入口点和名称匹配时，每个方法都受 SIGALRM 时间限制，因此 README 称 Windows 支持可能有问题，建议使用 WSL。","输入是取自分析者已有 APK 的单个 classes.dex。README 称大多数指令、同类与静态方法调用以及 String 和 Base64 API 可用，迭代器、数组 API 和跨类实例调用部分可用，MultiDex 和 I/O 不可用。没有模拟实现的框架行为不会被复现，AES 模拟也只先后尝试 ECB 和零 IV 的 CBC 模式，因此还原出的字符串需要对照代码核实。仓库没有测试或持续集成。","采用 MIT 许可。首次提交曾包含一批 DEX 样本，其中许多以 Android 恶意软件家族命名，一个月后被删除；所审阅的代码树只有 Python 源码。"],"targets":["app"],"url":"https://github.com/huuck/Katalina","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/gdabah/distorm/blob/7a02caa1a936f0a653fc75f1aaea9bd3fa654603/include/distorm.h","https://github.com/gdabah/distorm/blob/7a02caa1a936f0a653fc75f1aaea9bd3fa654603/disOps/x86sets.py","https://github.com/gdabah/distorm/blob/7a02caa1a936f0a653fc75f1aaea9bd3fa654603/setup.py","https://github.com/gdabah/distorm/blob/7a02caa1a936f0a653fc75f1aaea9bd3fa654603/.github/workflows/py.yml","https://github.com/gdabah/distorm/tree/7a02caa1a936f0a653fc75f1aaea9bd3fa654603/examples","https://github.com/gdabah/distorm/tree/7a02caa1a936f0a653fc75f1aaea9bd3fa654603/test-deps","https://github.com/gdabah/distorm/blob/7a02caa1a936f0a653fc75f1aaea9bd3fa654603/COPYING","https://pypi.org/project/distorm3/3.5.2/","https://github.com/gdabah/distorm/releases/tag/3.5.2b"],"category":"binary-libraries","description_en":"Lightweight x86/AMD64 disassembler library in C that the README describes as a decomposer: besides formatted text, distorm_decompose returns a binary structure per instruction with its opcode, operands, prefixes, flow-control class and optionally affected CPU flags. It decodes 16-, 32- and 64-bit code, can stop at calls, returns, branches, interrupts or privileged instructions, and its generated instruction tables cover integer, x87, MMX, 3DNow!, SSE through SSE4.2 and SSE4a, AVX, FMA, AES, CLMUL, VMX and SVM sets. The repository includes the distorm3 Python module, plus example Java and .NET wrappers and sample programs for Linux, Win32 and a Windows kernel driver.","description_zh":"轻量级的 x86/AMD64 C 语言反汇编库，README 称其为“分解器”：除格式化文本外，distorm_decompose 还会为每条指令返回一个二进制结构，描述其操作码、操作数、前缀、控制流类别，并可选地给出受影响的 CPU 标志位。它可解码 16、32 和 64 位代码，可在遇到调用、返回、分支、中断或特权指令时停止，其生成的指令表涵盖整数、x87、MMX、3DNow!、SSE 至 SSE4.2 和 SSE4a、AVX、FMA、AES、CLMUL、VMX 及 SVM 指令集。仓库还包含 distorm3 Python 模块，以及 Java 和 .NET 的示例封装和面向 Linux、Win32 及 Windows 内核驱动的示例程序。","entry_url":"https://awesomerea.org/resources/distorm/","entry_url_zh":"https://awesomerea.org/zh/resources/distorm/","evidence_url":"https://github.com/gdabah/distorm/blob/7a02caa1a936f0a653fc75f1aaea9bd3fa654603/README.md","group":"tools","id":"distorm","json_url":"https://awesomerea.org/resources/distorm/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/distorm/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/distorm/index.md","name":"diStorm3","name_zh":"diStorm3 x86/AMD64 反汇编库","record_type":"resource","relationship":"foundation","requirements":["No commits on master since 2021-12-18, the reviewed commit. The latest PyPI release is distorm3 3.5.2, uploaded 2021-03-19 as a source tarball and a Windows 32-bit Python 3.7 wheel; the GitHub release list ends with 3.5.2b (2021-04-03), and setup.py on master already says 3.5.3, which is not on PyPI.","Install the Python module with pip install distorm3, which compiles the C sources, or build the C library with the Makefiles for Linux, macOS and TinyCC or the Visual Studio solution for Windows. setup.py lists Windows, macOS and Linux, and its newest Python classifier is 3.5; CI last targeted Ubuntu 18.04, Windows and macOS with Python 3.x. The README points to the GitHub wiki for API documentation.","Input is raw machine code bytes plus a code offset and decoding mode supplied by the caller; it decodes instructions only and does not parse executable formats, build control-flow graphs or lift code. The disOps scripts generate its instruction tables from the x86sets.py database.","The repository bundles a test helper executable, test-deps/yasm-1.3.0-win64.exe, which the CI workflow copies into place so the Python tests can assemble their instruction samples with yasm on Windows; no other sample binaries are committed.","BSD three-clause license (COPYING; GitHub reports it as unclassified)."],"requirements_zh":["自所审阅的提交（2021-12-18）以来 master 分支没有新的提交。PyPI 上最新版本为 distorm3 3.5.2，于 2021-03-19 上传，包括源码包和一个 Windows 32 位 Python 3.7 wheel；GitHub 发布列表止于 3.5.2b（2021-04-03），而 master 上的 setup.py 已写为 3.5.3，该版本并未发布到 PyPI。","可用 pip install distorm3 安装 Python 模块（安装时会编译 C 源码），也可用面向 Linux、macOS 和 TinyCC 的 Makefile 或 Windows 下的 Visual Studio 解决方案构建 C 库。setup.py 列出 Windows、macOS 和 Linux，最新的 Python 分类标注为 3.5；CI 最后一次针对 Ubuntu 18.04、Windows 和 macOS 以及 Python 3.x。README 指向 GitHub wiki 查看 API 文档。","输入是调用方提供的原始机器码字节、代码偏移和解码模式；它只解码指令，不解析可执行文件格式，不构建控制流图，也不做代码提升。disOps 脚本根据 x86sets.py 数据库生成其指令表。","仓库附带一个测试辅助程序 test-deps/yasm-1.3.0-win64.exe，CI 工作流在 Windows 上将其复制到位，供 Python 测试用 yasm 汇编其指令样例；除此之外未提交其他示例二进制。","BSD 三条款许可证（COPYING；GitHub 将其识别为未分类）。"],"targets":["binary"],"url":"https://github.com/gdabah/distorm","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/grandideastudio/jtagulator/blob/6a764cd87315e7823937811a5e6f11051c51be1a/CHANGES.markdown","https://github.com/grandideastudio/jtagulator/blob/6a764cd87315e7823937811a5e6f11051c51be1a/JTAGulator.spin#L2796-L2869","https://github.com/grandideastudio/jtagulator/blob/6a764cd87315e7823937811a5e6f11051c51be1a/JTAGulatorCon.spin","https://github.com/grandideastudio/jtagulator/blob/6a764cd87315e7823937811a5e6f11051c51be1a/PropOCD.spin","https://github.com/grandideastudio/jtagulator/blob/6a764cd87315e7823937811a5e6f11051c51be1a/PropSUMP.spin","https://github.com/grandideastudio/jtagulator/tree/6a764cd87315e7823937811a5e6f11051c51be1a/Hardware/Rev.%20C","https://github.com/grandideastudio/jtagulator/tags","https://expliot.io/jtagulator/"],"category":"firmware","description_en":"Joe Grand's open-source hardware tool and Parallax Propeller firmware for locating on-chip debug interfaces among an unfamiliar board's test points, vias, component pads or connectors. Driven from a serial terminal, its 24 level-shifted channels try pin permutations to identify JTAG pinouts by IDCODE or BYPASS scans, SWD pinouts by IDCODE and UART pinouts with their baud rates. With a known JTAG pinout the firmware can also read device IDs, discover instruction and data registers and map a chip's pins to boundary-scan positions with EXTEST, and other modes pass UART traffic through, act as a SUMP-compatible logic analyzer or emulate a Bus Pirate so OpenOCD can use the board as a JTAG adapter.","description_zh":"Joe Grand 开发的开源硬件工具及其 Parallax Propeller 固件，用于在陌生电路板的测试点、过孔、元件焊盘或连接器中找出片上调试接口。它通过串口终端操作，用 24 路电平转换通道逐一尝试引脚排列：以 IDCODE 或 BYPASS 扫描识别 JTAG 引脚，以 IDCODE 识别 SWD 引脚，并识别 UART 引脚及其波特率。已知 JTAG 引脚后，固件还能读取器件 ID、探测指令寄存器和数据寄存器，并用 EXTEST 把芯片引脚对应到边界扫描寄存器中的位置；其他模式可透传 UART 数据、充当兼容 SUMP 的逻辑分析仪，或模拟 Bus Pirate，让 OpenOCD 把它当作 JTAG 适配器使用。","entry_url":"https://awesomerea.org/resources/jtagulator/","entry_url_zh":"https://awesomerea.org/zh/resources/jtagulator/","evidence_url":"https://github.com/grandideastudio/jtagulator/blob/6a764cd87315e7823937811a5e6f11051c51be1a/README.markdown","group":"tools","id":"jtagulator","json_url":"https://awesomerea.org/resources/jtagulator/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/jtagulator/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/jtagulator/index.md","name":"JTAGulator","name_zh":"JTAGulator 片上调试接口识别工具","record_type":"resource","relationship":"foundation","requirements":["Firmware 1.12, tagged 2023-06-05, is the newest version; the repository publishes tags but no GitHub releases, and the README calls master a development branch whose interim commits may be unstable. Later commits, up to the reviewed one of 2026-09-02, update links and the license text and add the Rev. C hardware design files, and since July 2025 the README names EXPLIoT as maintainer and supporter.","Requires JTAGulator hardware, for which the repository commits the Rev. C design files (Altium project, Gerbers, schematic, bill of materials, assembly drawing and test procedure), a serial terminal on the host and physical wiring to the target's candidate pins. The target I/O voltage, 1.4–3.3 V, must be set before scanning, and the firmware warns that use may affect target behavior; it also warns that its front-end circuitry is incompatible with many SWD-based targets and points to hardware modifications described in the wiki.","The firmware is Spin code for the Propeller P8X32A: the README recommends Propeller Tool 1.3.2 for Windows and calls other environments untested and unsupported, while also giving OpenSpin and PropLoader commands for compiling, loading to RAM or writing to EEPROM. The repository commits the compiled image JTAGulator.eeprom (32 KB), last updated for 1.12. The OpenOCD and logic-analyzer modes need OpenOCD's Bus Pirate driver or an Openbench Logic Sniffer client, and both persist across resets and firmware updates until exited manually.","The README distributes the design under CC BY-SA 4.0 and says the JTAGulator name and logo are registered trademarks of Grand Idea Studio that may not be used on derived works without permission; the Spin source headers still state CC BY 3.0 United States, and GitHub detects no license."],"requirements_zh":["最新固件版本为 1.12，于 2023-06-05 打标签；仓库只发布标签，没有 GitHub 发行版，README 称 master 是开发分支，其间的提交可能不稳定。此后直到所审阅的 2026-09-02 提交，改动包括更新链接和许可说明，以及加入 Rev. C 硬件设计文件；README 称自 2025 年 7 月起由 EXPLIoT 负责维护和支持。","需要 JTAGulator 硬件（仓库提交了 Rev. C 的设计文件，包括 Altium 工程、Gerber 文件、原理图、物料清单、装配图和测试流程）、主机上的串口终端，以及与目标候选引脚的实际接线。扫描前必须设置目标 I/O 电压（1.4–3.3 V），固件提示使用时可能影响目标系统的行为；固件还提示其前端电路与许多基于 SWD 的目标不兼容，并指向 wiki 中介绍的硬件改装方法。","固件是面向 Propeller P8X32A 的 Spin 代码：README 推荐使用 Windows 版 Propeller Tool 1.3.2，称其他开发环境未经测试且不受支持，同时也给出了用 OpenSpin 编译、用 PropLoader 加载到 RAM 或写入 EEPROM 的命令。仓库提交了已编译的固件映像 JTAGulator.eeprom（32 KB），最后一次更新对应 1.12 版。OpenOCD 模式和逻辑分析仪模式分别需要 OpenOCD 的 Bus Pirate 驱动或 Openbench Logic Sniffer 客户端软件，这两种模式在复位和固件更新后仍会保持，只能由用户手动退出。","README 称该设计以 CC BY-SA 4.0 许可发布，JTAGulator 名称和标志是 Grand Idea Studio 的注册商标，未经许可不得用于衍生作品；而 Spin 源码文件头仍写着 CC BY 3.0 United States，GitHub 也未识别出许可证。"],"targets":["firmware"],"url":"https://github.com/grandideastudio/jtagulator","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/Sherin-SEF-AI/CanLab/blob/8aaa6fff2bdfb1099574661c415a7d07a3a6a3de/pyproject.toml","https://github.com/Sherin-SEF-AI/CanLab/blob/8aaa6fff2bdfb1099574661c415a7d07a3a6a3de/tests/real_data/README.md","https://github.com/Sherin-SEF-AI/CanLab/blob/8aaa6fff2bdfb1099574661c415a7d07a3a6a3de/canlab/sample_data/generate_sample.py","https://github.com/Sherin-SEF-AI/CanLab/blob/8aaa6fff2bdfb1099574661c415a7d07a3a6a3de/canlab/core/data/CANBOAT-NOTICE.txt","https://github.com/Sherin-SEF-AI/CanLab/blob/8aaa6fff2bdfb1099574661c415a7d07a3a6a3de/canlab/core/data/cereal/NOTICE.txt","https://github.com/Sherin-SEF-AI/CanLab/blob/8aaa6fff2bdfb1099574661c415a7d07a3a6a3de/LICENSE","https://github.com/Sherin-SEF-AI/CanLab/releases/tag/v2.0.0"],"category":"protocol-analysis","description_en":"PyQt6 desktop workstation and command-line tool for reverse-engineering CAN bus captures offline. It reads SavvyCAN/GVRET CSV, candump, pcap, Vector BLF/ASC, MDF4 and openpilot logs, then suggests counters, checksums and their algorithms, byte roles, flags, multiplexers, entropy-based field boundaries and cross-ID correlations, decodes J1939 and NMEA 2000 PGNs and reassembles multi-frame messages. A cantools-backed DBC builder checks signal definitions against the captured frames and exports DBC, openpilot DBC, CANdb++, ARXML and Wireshark Lua dissectors, and an optional MCP server offers 29 receive-only analysis tools to assistants.","description_zh":"用于离线逆向分析 CAN 总线抓包的 PyQt6 桌面工作站及命令行工具。它可读取 SavvyCAN/GVRET CSV、candump、pcap、Vector BLF/ASC、MDF4 和 openpilot 日志，进而提示计数器、校验和及其算法、字节角色、标志位、多路复用器、基于熵的字段边界和跨 ID 相关性，解码 J1939 与 NMEA 2000 PGN，并重组多帧报文。基于 cantools 的 DBC 构建器会用抓取的帧核对信号定义，可导出 DBC、openpilot DBC、CANdb++、ARXML 和 Wireshark Lua 解析器；可选的 MCP 服务器向 AI 助手提供 29 个只接收、不发送的分析工具。","entry_url":"https://awesomerea.org/resources/canlab/","entry_url_zh":"https://awesomerea.org/zh/resources/canlab/","evidence_url":"https://github.com/Sherin-SEF-AI/CanLab/blob/8aaa6fff2bdfb1099574661c415a7d07a3a6a3de/README.md","group":"tools","id":"canlab","json_url":"https://awesomerea.org/resources/canlab/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/canlab/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/canlab/index.md","name":"CanLab","name_zh":"CanLab CAN 总线逆向分析工作站","record_type":"resource","relationship":"foundation","requirements":["README calls CanLab a beta, single-author project. The reviewed commit 8aaa6ff (2026-09-23) declares version 2.1.0 in pyproject.toml, while the latest release is v2.0.0 (2026-09-15) with a Linux x86_64 build and demo videos. README stresses that the analysis is heuristic, suggests candidates rather than identifying signals, and has not been validated on many real vehicles.","Python 3.11+ on Linux, macOS or Windows (developed on 3.12), with optional extras for AI, REST, MCP, hardware adapters, MDF4 (asammdf) and openpilot logs (pycapnp); README asks for 4 GB RAM, 8 GB for the machine-learning features. Live capture uses SocketCAN, a comma.ai Panda, GVRET boards or python-can adapters; README reports one physical adapter used, a CANalyst-II, and the others only on a virtual bus.","Inputs are the user's own captures. The bundled sample is a synthetic Hyundai-style capture generated by a script, the test fixtures are a few lines each, and the real-data acceptance runs fetch public SavvyCAN, CSS Electronics and comma.ai recordings instead of committing them. The opendbc matcher downloads the commaai/opendbc index on first use, and the optional AI analysis sends the selected ID's frame statistics to the configured Anthropic, OpenAI, Groq or Ollama provider.","The application also has bench-only transmit functions behind a global ARM TX switch that is off by default and a blocked-ID list; README restricts them to isolated bench setups. The MCP tools cannot transmit.","README's Testing section reports 753 passing pytest tests (its badge still says 578), interoperability tests against can-isotp, udsoncan and can-j1939, and 99 checks over public real-world recordings; diagnostic requests were tested only against scripted responders. MIT; the NMEA 2000 table derives from CANboat (Apache-2.0) and the cereal schema from comma.ai (MIT)."],"requirements_zh":["README 称 CanLab 是单人开发的测试版项目。所审阅的提交 8aaa6ff（2026-09-23）在 pyproject.toml 中声明版本 2.1.0，而最新发布版本为 v2.0.0（2026-09-15），附 Linux x86_64 构建和演示视频。README 强调分析方法属于启发式，只提示候选结果而非确认信号，且尚未在大量真实车辆上验证。","需要 Linux、macOS 或 Windows 上的 Python 3.11+（开发使用 3.12），AI、REST、MCP、硬件适配器、MDF4（asammdf）和 openpilot 日志（pycapnp）为可选扩展；README 要求 4 GB 内存，机器学习功能建议 8 GB。实时采集可使用 SocketCAN、comma.ai Panda、GVRET 板卡或 python-can 适配器；README 称只用过一款实体适配器 CANalyst-II，其余仅在虚拟总线上验证。","分析对象是使用者自己的抓包。附带的样例是由脚本生成的合成 Hyundai 风格抓包，测试夹具每个只有几行；真实数据验收测试会下载 SavvyCAN、CSS Electronics 和 comma.ai 公开的记录，而不是把它们提交进仓库。opendbc 匹配功能首次使用时下载 commaai/opendbc 索引；可选的 AI 分析会把所选 ID 的帧统计发送给配置的 Anthropic、OpenAI、Groq 或 Ollama 服务。","该应用还具备仅限台架使用的发送功能，受默认关闭的全局 ARM TX 开关和屏蔽 ID 列表约束；README 限定只能在隔离的台架环境中使用。MCP 工具无法发送报文。","README 的测试部分报告 753 个 pytest 测试通过（徽章仍写 578），另有与 can-isotp、udsoncan 和 can-j1939 的互操作测试，以及针对公开真实记录的 99 项检查；诊断请求只在脚本模拟的应答端上测试过。采用 MIT 许可证；NMEA 2000 表源自 CANboat（Apache-2.0），cereal 模式定义来自 comma.ai（MIT）。"],"targets":["protocol"],"url":"https://github.com/Sherin-SEF-AI/CanLab","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/greatscottgadgets/facedancer/blob/9f1298856e8ec6871cca995ded3076ab89dd72cd/README.md#L55-L77","https://github.com/greatscottgadgets/facedancer/blob/9f1298856e8ec6871cca995ded3076ab89dd72cd/README.md#L98-L117","https://github.com/greatscottgadgets/facedancer/blob/9f1298856e8ec6871cca995ded3076ab89dd72cd/docs/source/using_usb_proxy.rst","https://github.com/greatscottgadgets/facedancer/blob/9f1298856e8ec6871cca995ded3076ab89dd72cd/docs/source/getting_started.rst","https://github.com/greatscottgadgets/facedancer/tree/9f1298856e8ec6871cca995ded3076ab89dd72cd/facedancer/filters","https://github.com/greatscottgadgets/facedancer/tree/9f1298856e8ec6871cca995ded3076ab89dd72cd/facedancer/devices","https://github.com/greatscottgadgets/facedancer/blob/9f1298856e8ec6871cca995ded3076ab89dd72cd/pyproject.toml","https://github.com/greatscottgadgets/facedancer/blob/9f1298856e8ec6871cca995ded3076ab89dd72cd/CHANGELOG.md","https://github.com/greatscottgadgets/facedancer/blob/9f1298856e8ec6871cca995ded3076ab89dd72cd/LICENSE","https://github.com/greatscottgadgets/facedancer/releases/tag/3.1.3","https://pypi.org/project/facedancer/3.1.3/","https://facedancer.readthedocs.io/en/latest/"],"category":"protocol-analysis","description_en":"Python library for implementing USB devices in software, with a hardware peripheral such as Cynthion or GreatFET acting as a remote-controlled USB controller attached to the target host. Its USBProxy mode sits between a real device and a host, forwarding transfers while filters log, decode or modify them for USB protocol analysis; the README notes this suits devices whose software you do not control, such as embedded systems or game consoles. Version 3 is a ground-up rewrite of the emulation core that ships keyboard, mass-storage and FTDI serial device models plus HID and logging proxy filters, and no longer runs legacy 2.9.x scripts.","description_zh":"用软件实现 USB 设备的 Python 库，借助 Cynthion、GreatFET 等硬件外设充当连接目标主机的可远程控制 USB 控制器。其 USBProxy 模式位于真实设备与主机之间转发传输，并由过滤器记录、解码或修改传输内容，用于 USB 协议分析；README 指出，这适用于无法控制其软件的设备，例如嵌入式系统或游戏主机。第 3 版从头重写了仿真核心，内置键盘、大容量存储和 FTDI 串口设备模型以及 HID 与日志代理过滤器，不再支持旧版 2.9.x 脚本。","entry_url":"https://awesomerea.org/resources/facedancer/","entry_url_zh":"https://awesomerea.org/zh/resources/facedancer/","evidence_url":"https://github.com/greatscottgadgets/facedancer/blob/9f1298856e8ec6871cca995ded3076ab89dd72cd/README.md","group":"tools","id":"facedancer","json_url":"https://awesomerea.org/resources/facedancer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/facedancer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/facedancer/index.md","name":"Facedancer","name_zh":"Facedancer USB 设备仿真与代理库","record_type":"resource","relationship":"foundation","requirements":["Needs a supported board selected with the BACKEND variable: Cynthion (cynthion), GreatFET One and other LPC4330 boards (greatfet), GoodFET-based Facedancers such as the Facedancer21 (goodfet), Raspberry Pi Raspdancer boards (raspdancer) or HydraDancer and HydraUSB3 (hydradancer). The README says MAX3420/MAX3421-based boards cannot emulate more complex devices or act as USBProxy MITM devices, and that HydraDancer boards do not support host mode.","Latest release at review: 3.1.3, published 2026-05-22 on GitHub and PyPI and identical to the reviewed main commit; pyproject.toml requires Python 3.10+ with pyusb, libusb1, pyserial, prompt-toolkit and hid-parser. The README says Facedancer 3.0 does not work on Windows and runs only on GNU/Linux, while the getting-started guide narrows the warning to Windows control hosts with GreatFET and the proxy guide says USBProxy must run as root on macOS to claim the proxied device.","USBProxy needs the real device being proxied, identified by its vendor and product IDs, and the analyst's filters decide what is forwarded, logged or changed; the README calls the proxy feature complete but in need of more documentation. The repository holds Python sources, examples, tests and documentation, with no board firmware. Emulate and proxy only hosts and devices you own or are authorized to test.","BSD-3-Clause licensed."],"requirements_zh":["需要用 BACKEND 变量选择受支持的板卡：Cynthion（cynthion）、GreatFET One 及其他 LPC4330 板卡（greatfet）、Facedancer21 等基于 GoodFET 的 Facedancer（goodfet）、树莓派 Raspdancer 板卡（raspdancer），或 HydraDancer 与 HydraUSB3（hydradancer）。README 称基于 MAX3420/MAX3421 的板卡无法仿真较复杂的设备，也不能充当 USBProxy 中间人设备，HydraDancer 板卡不支持主机模式。","审阅时最新版本为 3.1.3，于 2026-05-22 发布在 GitHub 和 PyPI，与所审阅的 main 提交相同；pyproject.toml 要求 Python 3.10+，并依赖 pyusb、libusb1、pyserial、prompt-toolkit 和 hid-parser。README 称 Facedancer 3.0 无法在 Windows 上运行、仅支持 GNU/Linux，而入门指南把这一警告限定为在 Windows 控制主机上使用 GreatFET，代理指南则称在 macOS 上须以 root 身份运行 USBProxy 才能从系统接管被代理的设备。","USBProxy 需要被代理的真实设备，并按其厂商 ID 和产品 ID 识别；由分析者编写的过滤器决定转发、记录或修改哪些内容。README 称代理功能已完成，但还需更多文档。仓库只包含 Python 源码、示例、测试和文档，不含板卡固件。只应对自己拥有或已获授权测试的主机和设备进行仿真和代理。","采用 BSD-3-Clause 许可。"],"targets":["protocol"],"url":"https://github.com/greatscottgadgets/facedancer","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/rscloura/Doldrums/blob/7430196818673ca5c5e10d65685e2b4a8de38dbb/src/main.py","https://github.com/rscloura/Doldrums/blob/7430196818673ca5c5e10d65685e2b4a8de38dbb/src/BaseConstants.py","https://github.com/rscloura/Doldrums/blob/7430196818673ca5c5e10d65685e2b4a8de38dbb/src/v2_12/Snapshot.py","https://github.com/rscloura/Doldrums/blob/7430196818673ca5c5e10d65685e2b4a8de38dbb/src/v2_12/Resolver.py","https://github.com/rscloura/Doldrums/tree/7430196818673ca5c5e10d65685e2b4a8de38dbb/tests","https://rloura.wordpress.com/2020/12/04/reversing-flutter-for-android-wip/"],"category":"android","description_en":"Python parser for the Dart AOT snapshots inside libapp.so, the compiled Dart code of an Android Flutter app. It finds the VM and isolate snapshot symbols with pyelftools, deserializes the snapshot clusters and writes a text dump of every class in the isolate snapshot, with fields, method signatures and each method's absolute code offset in libapp.so. It recovers declarations and offsets for further disassembly, not decompiled function bodies.","description_zh":"用 Python 编写的解析器，处理 Android Flutter 应用中存放编译后 Dart 代码的 libapp.so 里的 Dart AOT 快照。它借助 pyelftools 定位 VM 与 isolate 快照符号，反序列化快照中的各个簇（cluster），并把 isolate 快照中的全部类导出为文本，列出字段、方法签名以及每个方法在 libapp.so 中的绝对代码偏移。它恢复的是声明和偏移，供进一步反汇编使用，并不反编译函数体。","entry_url":"https://awesomerea.org/resources/doldrums/","entry_url_zh":"https://awesomerea.org/zh/resources/doldrums/","evidence_url":"https://github.com/rscloura/Doldrums/blob/7430196818673ca5c5e10d65685e2b4a8de38dbb/README.md","group":"tools","id":"doldrums","json_url":"https://awesomerea.org/resources/doldrums/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/doldrums/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/doldrums/index.md","name":"Doldrums","name_zh":"Doldrums Flutter/Dart 快照解析器","record_type":"resource","relationship":"foundation","requirements":["Reviewed at main commit 7430196 (2022-05-01), the last push; there are no releases, and the README calls the tool beta and still missing some deserialization routines and class information. main.py accepts only the snapshot hashes of Dart 2.10 and Dart 2.12, rejects Dart 2.13 as work in progress and any other SDK as unsupported, so apps built with newer Dart releases are out of scope.","Input is the libapp.so ELF of an Android Flutter app, with its _kDartVmSnapshot* and _kDartIsolateSnapshot* symbols. The tests directory commits Dart 2.10 libapp.so builds of a small sample counter app (package sandbox_flutter) for arm64-v8a, armv7 and x64, plus text dumps of the arm64 and x64 builds as reference output; there is no test runner.","Runs as python3 src/main.py [-v] libapp.so output with pyelftools as the only dependency; there is no packaging or declared Python version. The README notes that the verbose option works only for Dart 2.12 snapshots, and that darter is a fully tested parser for the older Dart 2.5.","The author's blog post documents the snapshot format the parser follows. No license file is present and GitHub detects none, so reuse terms are unstated."],"requirements_zh":["审阅对象为 main 分支提交 7430196（2022-05-01），也是最后一次推送；仓库没有发行版，README 称该工具仍处于 beta 阶段，尚缺部分反序列化例程和类信息。main.py 只接受 Dart 2.10 和 Dart 2.12 的快照哈希，把 Dart 2.13 视为开发中而拒绝，其他 SDK 一律视为不支持，因此用更新的 Dart 版本构建的应用不在其适用范围内。","输入为 Android Flutter 应用的 libapp.so ELF 文件，其中须带有 _kDartVmSnapshot* 与 _kDartIsolateSnapshot* 符号。tests 目录提交了一个小型示例计数器应用（包名 sandbox_flutter）的 Dart 2.10 libapp.so 构建，涵盖 arm64-v8a、armv7 和 x64，并附有 arm64 与 x64 构建的文本导出作为参考输出；仓库没有测试运行脚本。","运行方式为 python3 src/main.py [-v] libapp.so output，唯一依赖是 pyelftools；项目没有打包，也未声明 Python 版本。README 说明 verbose 选项只适用于 Dart 2.12 快照，并指出 darter 是针对更早的 Dart 2.5 且经过完整测试的解析器。","作者的博客文章记录了该解析器所依据的快照格式。仓库没有许可证文件，GitHub 也未识别出许可证，因此复用条款未予说明。"],"targets":["app","binary"],"url":"https://github.com/rscloura/Doldrums","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/platomav/BIOSUtilities/blob/f799425af93264b62a2f3c3cc5bbabf8a2226114/README.md#L7-L87","https://github.com/platomav/BIOSUtilities/blob/f799425af93264b62a2f3c3cc5bbabf8a2226114/README.md#L220-L258","https://github.com/platomav/BIOSUtilities/blob/f799425af93264b62a2f3c3cc5bbabf8a2226114/pyproject.toml","https://github.com/platomav/BIOSUtilities/blob/f799425af93264b62a2f3c3cc5bbabf8a2226114/biosutilities/__init__.py","https://github.com/platomav/BIOSUtilities/blob/f799425af93264b62a2f3c3cc5bbabf8a2226114/CHANGELOG","https://github.com/platomav/BIOSUtilities/blob/f799425af93264b62a2f3c3cc5bbabf8a2226114/LICENSE","https://github.com/platomav/BIOSUtilities/tree/f799425af93264b62a2f3c3cc5bbabf8a2226114/biosutilities","https://github.com/platomav/BIOSUtilities/commit/f799425af93264b62a2f3c3cc5bbabf8a2226114","https://pypi.org/project/biosutilities/25.7.1/"],"category":"firmware","description_en":"Python collection of 16 parsers and extractors for vendor BIOS/UEFI update formats, including AMI BIOS Guard (PFAT) and UCP, Dell PFS, Insyde iFlash/iFdPacker, Phoenix TDK Packer, Award, Fujitsu, Panasonic, Portwell, Toshiba and VAIO packages and several Apple EFI containers. Each utility checks whether an input matches its format and unpacks the firmware components, such as SPI/BIOS/UEFI, EC and ME images, plus bundled utilities into an output folder, optionally reporting structure information; an Apple EFI identifier names images from their IBIOSI tag. A main.py script tries every utility on the given files, and the biosutilities package exposes the same classes to Python.","description_zh":"用 Python 编写的厂商 BIOS/UEFI 更新格式解析与提取工具集，共 16 个工具，涵盖 AMI BIOS Guard（PFAT）与 UCP、Dell PFS、Insyde iFlash/iFdPacker、Phoenix TDK Packer、Award、富士通、松下、Portwell、东芝和 VAIO 的更新包，以及多种 Apple EFI 容器。每个工具先判断输入是否属于其格式，再将固件组件（如 SPI/BIOS/UEFI、EC、ME 镜像）及随附的实用程序解包到输出目录，并可选输出结构信息；Apple EFI 识别工具则依据 IBIOSI 标签为镜像命名。main.py 脚本会对给定文件依次尝试所有工具，biosutilities 软件包也向 Python 程序提供同样的类。","entry_url":"https://awesomerea.org/resources/biosutilities/","entry_url_zh":"https://awesomerea.org/zh/resources/biosutilities/","evidence_url":"https://github.com/platomav/BIOSUtilities/blob/f799425af93264b62a2f3c3cc5bbabf8a2226114/README.md","group":"tools","id":"biosutilities","json_url":"https://awesomerea.org/resources/biosutilities/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/biosutilities/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/biosutilities/index.md","name":"BIOSUtilities","name_zh":"BIOSUtilities 厂商 BIOS/UEFI 更新包提取工具集","record_type":"resource","relationship":"foundation","requirements":["Latest version at review: 25.07.01, published on PyPI as 25.7.1 on 2025-07-01. The reviewed main commit adds one later change, from 2026-10-18, that falls back to the system PATH when a tool is missing from the external folder. The README targets Python 3.10 to 3.13 on Windows, Linux and macOS; pyproject requires Python 3.10+ and offers pefile 2023.2.7 and dissect.util 3.20 as pinned extras.","Several utilities call external programs found on PATH or in an external folder next to the package: 7-Zip, UEFIFind and UEFIExtract from UEFITool, TianoCompress from EDK II and ToshibaComExtractor. The README says comextract must be compiled from source on Linux and TianoCompress on Linux and macOS. Decompiling Intel BIOS Guard scripts optionally uses the author's separate BIOS Guard Script Tool.","Users supply the vendor update executables, packages or images they already have. The repository holds only Python source, documentation and packaging files, with no BIOS images, sample packages or tests. The README warns that AMI PFAT components may have no explicit order, so the merged 00 -- ALL file usually is not a proper SPI/BIOS/UEFI image and trailing OEM data is left for the user to assess.","BSD-2-Clause-Patent, per LICENSE and pyproject. The README presents the collection for research and modding; extracted firmware remains under its vendors' terms."],"requirements_zh":["审阅时最新版本为 25.07.01，于 2025-07-01 以 25.7.1 发布到 PyPI。所审阅的 main 提交在此之后另有一处 2026-10-18 的修改：当 external 文件夹中缺少某个工具时，改从系统 PATH 查找。README 面向 Windows、Linux 和 macOS 上的 Python 3.10 至 3.13；pyproject 要求 Python 3.10+，并将 pefile 2023.2.7 和 dissect.util 3.20 作为固定版本的可选依赖。","部分工具需要调用 PATH 中或软件包旁 external 文件夹里的外部程序：7-Zip、UEFITool 附带的 UEFIFind 与 UEFIExtract、EDK II 的 TianoCompress，以及 ToshibaComExtractor。README 说明在 Linux 上须从源码编译 comextract，在 Linux 和 macOS 上须从源码编译 TianoCompress。反编译 Intel BIOS Guard 脚本时可选用作者另行提供的 BIOS Guard Script Tool。","使用者需自备已有的厂商更新程序、更新包或镜像。仓库只包含 Python 源码、文档和打包文件，没有 BIOS 镜像、示例更新包或测试。README 提醒 AMI PFAT 组件可能没有明确顺序，因此合并生成的 00 -- ALL 文件通常不是完整可用的 SPI/BIOS/UEFI 镜像，结构末尾的 OEM 数据也需使用者自行判断用途。","依据 LICENSE 和 pyproject 采用 BSD-2-Clause-Patent 许可。README 将该工具集定位于研究和改装用途；提取出的固件仍受各厂商条款约束。"],"targets":["firmware"],"url":"https://github.com/platomav/BIOSUtilities","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/8051Enthusiast/allyourbase/blob/78e98f7a592c5bfdb52590bdd26139202b602100/allyourbase.py","https://github.com/8051Enthusiast/allyourbase/blob/78e98f7a592c5bfdb52590bdd26139202b602100/requirements.txt","https://github.com/8051Enthusiast/allyourbase/blob/78e98f7a592c5bfdb52590bdd26139202b602100/LICENSE"],"category":"firmware","description_en":"Python script that estimates a firmware image's base address by comparing string addresses with the targets of every possible pointer, for any pointer size and either endianness. Instead of trying each base in turn, it computes the overlap as an FFT cross-correlation modulo several pairwise-coprime numbers and recovers the base with the Chinese remainder theorem, which keeps 64-bit address spaces tractable. The author keeps it small so that analysts can swap in their own heuristic, such as matching absolute call targets with the instructions that follow returns.","description_zh":"一个 Python 脚本，通过比较字符串地址与每个可能指针的目标地址来估算固件镜像的基址，支持任意指针长度和两种字节序。它不逐个尝试基址，而是在几个两两互素的模数下用 FFT 计算互相关来衡量重叠程度，再用中国剩余定理还原基址，因此也能处理 64 位地址空间。作者有意保持代码简短，方便分析者换用自己的启发式方法，例如把绝对调用的目标与返回指令之后的位置对应起来。","entry_url":"https://awesomerea.org/resources/allyourbase/","entry_url_zh":"https://awesomerea.org/zh/resources/allyourbase/","evidence_url":"https://github.com/8051Enthusiast/allyourbase/blob/78e98f7a592c5bfdb52590bdd26139202b602100/README.md","group":"tools","id":"allyourbase","json_url":"https://awesomerea.org/resources/allyourbase/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/allyourbase/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/allyourbase/index.md","name":"allyourbase","name_zh":"allyourbase 固件基址估算脚本","record_type":"resource","relationship":"foundation","requirements":["The whole tool is allyourbase.py; the reviewed main commit of 2025-03-07 only added comments to code written in April 2023, and there are no releases, tags or packages. It needs Python 3 with NumPy (requirements.txt: numpy>=1).","Input is a raw image supplied by the user; no firmware or samples are included. -l, the pointer length in bytes, is required; -e selects endianness (little by default), -a the alignment (the pointer length by default), -n the minimum string length in code points (5 by default) and -f a slack factor that trades speed and memory for accuracy. Only NUL-terminated UTF-8 strings count. The README says memory grows linearly with file size with a high constant factor, so images of tens of megabytes are the practical range.","It prints a single best offset, which may be negative, or reports that none was found; there is no candidate ranking or confidence score, and the README models stray pointer matches as noise that the slack factor lowers. The README's only example runs on /usr/bin/ls rather than a firmware image. There are no tests or CI.","MIT License (2023, 8051Enthusiast). Analyzed firmware keeps its own terms. The README calls it similar to rbasefind but gives no comparison on shared images."],"requirements_zh":["整个工具就是 allyourbase.py；所审阅的 main 分支 2025-03-07 提交只为 2023 年 4 月编写的代码添加了注释，没有发布版本、标签或软件包。需要 Python 3 及 NumPy（requirements.txt：numpy>=1）。","输入是使用者提供的原始镜像；仓库不含任何固件或样例。必须用 -l 指定以字节计的指针长度；-e 选择字节序（默认小端），-a 指定对齐（默认等于指针长度），-n 指定以码位计的最短字符串长度（默认 5），-f 是以速度和内存换取准确度的松弛系数。只统计以 NUL 结尾的 UTF-8 字符串。README 称内存占用随文件大小线性增长且常数因子较高，因此实际适用于几十 MB 的镜像。","它只输出一个最佳偏移（可能为负），或报告未找到；没有候选排序或置信度分数，README 将错误指针的偶然匹配视为噪声，可由松弛系数压低。README 唯一的示例针对 /usr/bin/ls，而非固件镜像。项目没有测试或 CI。","采用 MIT 许可证（2023 年，8051Enthusiast）。被分析的固件适用其自身条款。README 称其与 rbasefind 类似，但没有在相同镜像上进行比较。"],"targets":["firmware"],"url":"https://github.com/8051Enthusiast/allyourbase","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/0x36/ghidra_kernelcache/blob/b0961b3cdfb96e8b86c89d73fdedf84affc01c77/README.md#L13-L56","https://github.com/0x36/ghidra_kernelcache/blob/b0961b3cdfb96e8b86c89d73fdedf84affc01c77/README.md#L137-L190","https://github.com/0x36/ghidra_kernelcache/blob/b0961b3cdfb96e8b86c89d73fdedf84affc01c77/README.md#L229-L318","https://github.com/0x36/ghidra_kernelcache/blob/b0961b3cdfb96e8b86c89d73fdedf84affc01c77/KC.py","https://github.com/0x36/ghidra_kernelcache/blob/b0961b3cdfb96e8b86c89d73fdedf84affc01c77/jsymbols.py","https://github.com/0x36/ghidra_kernelcache/tree/b0961b3cdfb96e8b86c89d73fdedf84affc01c77/utils","https://github.com/0x36/ghidra_kernelcache/tree/b0961b3cdfb96e8b86c89d73fdedf84affc01c77/signatures","https://github.com/0x36/ghidra_kernelcache/blob/b0961b3cdfb96e8b86c89d73fdedf84affc01c77/LICENSE","https://github.com/Siguza/iometa/blob/2af3602e7edb72f478aa8958a6386aba846a89de/README.md"],"category":"firmware","description_en":"Ghidra script framework for reverse engineering Apple kernelcaches and kernel extensions on iOS and macOS. Starting from the C++ class information that Siguza's iometa extracts, it symbolicates the kernel, rebuilds IOKit class hierarchies, structures, namespaces and virtual tables with typed method definitions, and resolves virtual call references, either through arm64e pointer-authentication constants or with a p-code data-flow pass. Other scripts fix the externalMethod and getTargetAndMethodForIndex dispatch tables, apply XNU function signatures from header files, propagate types, load KDK DWARF symbols and copy structures between projects.","description_zh":"用于逆向分析 iOS 与 macOS 上 Apple kernelcache 和内核扩展的 Ghidra 脚本框架。它以 Siguza 的 iometa 提取的 C++ 类信息为起点，为内核恢复符号，重建 IOKit 类层次、结构体、命名空间和带类型方法定义的虚表，并通过 arm64e 指针认证常量或基于 p-code 的数据流分析解析虚函数调用引用。其他脚本可修复 externalMethod 和 getTargetAndMethodForIndex 分派表、根据头文件应用 XNU 函数签名、传播类型、加载 KDK 的 DWARF 符号，以及在项目之间复制结构体定义。","entry_url":"https://awesomerea.org/resources/ghidra-kernelcache/","entry_url_zh":"https://awesomerea.org/zh/resources/ghidra-kernelcache/","evidence_url":"https://github.com/0x36/ghidra_kernelcache/blob/b0961b3cdfb96e8b86c89d73fdedf84affc01c77/README.md","group":"tools","id":"ghidra-kernelcache","json_url":"https://awesomerea.org/resources/ghidra-kernelcache/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ghidra-kernelcache/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghidra-kernelcache/index.md","name":"ghidra_kernelcache","name_zh":"ghidra_kernelcache Apple 内核缓存分析框架","record_type":"resource","relationship":"foundation","requirements":["No releases or tags. The reviewed master commit, from 2022-01-19, is the latest. The README says the framework works on iOS 12–15 kernelcaches and on macOS 11–12 kernelcaches and single KEXTs (arm64e and x86_64). It was tested on Ghidra 10.1_PUBLIC and 10.2_DEV and is not backward compatible. Support for later Ghidra releases or for kernelcaches after iOS 15 and macOS 12 is not documented.","Installation means adding the clone to Ghidra's Script Manager directories; the scripts then appear under iOS→kernel with toolbar buttons and key shortcuts. They are Ghidra Jython scripts with Python 2 syntax. Their toolbar icons point to a logos/ folder that the repository does not include, and the README's utils/class.py corresponds to utils/ios_kc.py in the tree.","Analysts supply their own kernel images: a decompressed iOS kernelcache loaded as a single Mach-O image (the README warns against batch import), or a macOS kernel and KEXTs from their own system or KDK. Symbolication first needs the output of Siguza's separate iometa tool (MPL-2.0), which describes itself as an arm64 Darwin class dumper; jtool2 symbols are optional. The README notes that Ghidra could not parse a whole macOS kernelcache at the time and suggests initial analysis in IDA followed by an XML import, a step it leaves out of scope. Symbolicating a single KEXT first needs the kernel symbolicated into a shared Ghidra project archive.","The repository holds only Python scripts, the C++ signature files under signatures/ and README screenshots; it commits no Apple kernelcaches, KEXTs or keys. The README calls type propagation basic and likely to fail with complex casts, and says kc.process_kernel_kext() can fail on symbols Ghidra could not demangle until DemangleAllScript is run. Apache-2.0 license."],"requirements_zh":["没有发布版本或标签。所审阅的 master 提交日期为 2022-01-19，也是最新提交。README 称该框架适用于 iOS 12–15 的 kernelcache，以及 macOS 11–12 的 kernelcache 和单个 KEXT（arm64e 与 x86_64）。它在 Ghidra 10.1_PUBLIC 和 10.2_DEV 上测试过，不向后兼容。文档没有说明对更新的 Ghidra 版本或 iOS 15、macOS 12 之后 kernelcache 的支持。","安装方式是把克隆的仓库加入 Ghidra 脚本管理器的目录列表，脚本随后出现在 iOS→kernel 分类下，并带有工具栏按钮和快捷键。这些脚本是采用 Python 2 语法的 Ghidra Jython 脚本。工具栏图标指向仓库中并不存在的 logos/ 文件夹；README 提到的 utils/class.py 在代码树中对应 utils/ios_kc.py。","内核镜像由分析者自行提供：作为单个 Mach-O 镜像载入的已解压 iOS kernelcache（README 提醒不要使用批量导入），或来自自有系统或 KDK 的 macOS 内核与 KEXT。恢复符号前，需要先运行 Siguza 的独立工具 iometa（MPL-2.0），该工具自述为 arm64 Darwin 内核类信息提取工具；jtool2 符号为可选。README 指出，撰写时 Ghidra 还无法解析完整的 macOS kernelcache，建议先在 IDA 中完成初步分析，再以 XML 形式导入 Ghidra，但这一步不在其说明范围内。为单个 KEXT 恢复符号前，需要先把内核符号化结果存入共享的 Ghidra 项目归档。","仓库只包含 Python 脚本、signatures/ 下的 C++ 签名文件和 README 截图，没有提交任何 Apple kernelcache、KEXT 或密钥。README 称类型传播功能比较基础，遇到复杂类型转换时很可能失败；还说 Ghidra 无法还原某些 C++ 符号时 kc.process_kernel_kext() 可能失败，需先运行 DemangleAllScript。采用 Apache-2.0 许可。"],"targets":["binary","firmware"],"url":"https://github.com/0x36/ghidra_kernelcache","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/ZSShen/ProbeDroid/wiki/Prerequisite/470d91e6ec6e201143c73e6f33c83851c46705c9","https://github.com/ZSShen/ProbeDroid/wiki/Compile-Engine/755f938494534f068f64d504d5418be8c4babac8","https://github.com/ZSShen/ProbeDroid/wiki/Prepare-Device/8ecdb80097af7a52bf6e9adb106b90b0ba046047","https://github.com/ZSShen/ProbeDroid/wiki/Start-Instrument/0d2f309e320f8b92660c084e6502671940b50133","https://github.com/ZSShen/ProbeDroid/blob/a6dc602bc59ecd9a4398a10cfe0e27e91bc2ab7c/engine/src/org/probedroid/Instrument.java","https://github.com/ZSShen/ProbeDroid/blob/a6dc602bc59ecd9a4398a10cfe0e27e91bc2ab7c/launcher/jni/arch/proc_arm.cc","https://github.com/ZSShen/ProbeDroid/blob/a6dc602bc59ecd9a4398a10cfe0e27e91bc2ab7c/COPYING"],"category":"dynamic-analysis","description_en":"Dynamic Java-method instrumentation kit for Android 5.0 that lets analysts write their own tracing and profiling tools for apps whose source code they do not have. A launcher uses ptrace to inject the native engine library and a user-built instrumentation APK into a newly started target app, and the tool subclasses the Instrument API to hook framework or app-defined Java methods and inspect or change their arguments and return values. The README's demos use sample tools that log strings built through StringBuilder and StringBuffer and the activities and services an app starts.","description_zh":"面向 Android 5.0 的 Java 方法动态插桩工具包，让分析人员在没有应用源码的情况下自行编写跟踪和性能分析工具。启动器通过 ptrace 把原生引擎库和用户构建的插桩 APK 注入新启动的目标应用；插桩工具继承 Instrument API，钩挂系统框架或应用自定义的 Java 方法，查看或修改其参数与返回值。README 的演示使用示例工具，记录经 StringBuilder 和 StringBuffer 构造的字符串，以及应用启动的 Activity 和 Service。","entry_url":"https://awesomerea.org/resources/probedroid/","entry_url_zh":"https://awesomerea.org/zh/resources/probedroid/","evidence_url":"https://github.com/ZSShen/ProbeDroid/blob/a6dc602bc59ecd9a4398a10cfe0e27e91bc2ab7c/README.md","group":"tools","id":"probedroid","json_url":"https://awesomerea.org/resources/probedroid/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/probedroid/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/probedroid/index.md","name":"ProbeDroid","name_zh":"ProbeDroid Android 动态插桩工具包","record_type":"resource","relationship":"foundation","requirements":["No releases or tags; the reviewed master commit of 2018-12-16 only updates the project introduction, and the last code change dates from January 2017. The README calls the kit still under construction, supports only Android 5.0 on x86 and ARM armeabi-v7a devices, and says native methods cannot be instrumented yet.","The wiki pages of July 2016 list JDK and JRE 7+, Python 2.6+ for the auto.py build and deploy script, the Android SDK, the NDK for the launcher and libProbeDroid.so, and Apache Ant for the ProbeDroid.jar API; tools are written as Android Studio projects with minimum API 21 that import that jar, and no Android source tree is needed. Sample tools are under tools/ and in the separate ProbeDroidTool repository.","Running it needs a rooted Android 5.0 device or an API 21 emulator image, and the wiki has the analyst set SELinux to permissive on that test device before starting the launcher with the target package, engine library, tool APK and main class; results go to logcat. Users supply the apps they analyze.","MIT (copyright 2016 ZongXian Shen), except the AOSP-derived ART runtime and common sources under Apache-2.0 and the bundled libffi under its MIT license."],"requirements_zh":["没有发布版或标签；所审阅的 master 分支 2018-12-16 提交只更新了项目简介，最后一次代码改动在 2017 年 1 月。README 称该工具包仍在开发中，只支持 x86 和 ARM armeabi-v7a 设备上的 Android 5.0，且暂不能对原生方法插桩。","2016 年 7 月的 wiki 页面列出的依赖为 JDK 与 JRE 7+、用于运行 auto.py 构建和部署脚本的 Python 2.6+、Android SDK、用于构建启动器和 libProbeDroid.so 的 NDK，以及用于构建 ProbeDroid.jar API 的 Apache Ant；插桩工具以最低 API 21 的 Android Studio 项目编写并导入该 jar，无需 Android 源码树。示例工具位于 tools/ 目录及独立的 ProbeDroidTool 仓库。","运行需要已 root 的 Android 5.0 设备或 API 21 模拟器镜像；wiki 要求分析者先在该测试设备上把 SELinux 设为宽容模式，再用目标包名、引擎库、插桩 APK 和主类启动启动器，结果输出到 logcat。待分析的应用由使用者自备。","采用 MIT 许可证（版权 2016 ZongXian Shen），但源自 AOSP 的 ART 运行时及 common 目录部分源码采用 Apache-2.0，附带的 libffi 采用其自身的 MIT 许可证。"],"targets":["app"],"url":"https://github.com/ZSShen/ProbeDroid","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/Nightbringer21/fridump/blob/3e64ee0b0e3dbd7e1aa295077c9ba0728a2bc68f/fridump.py","https://github.com/Nightbringer21/fridump/blob/3e64ee0b0e3dbd7e1aa295077c9ba0728a2bc68f/dumper.py","https://github.com/Nightbringer21/fridump/blob/3e64ee0b0e3dbd7e1aa295077c9ba0728a2bc68f/utils.py","https://frida.re/news/2025/05/17/frida-17-0-0-released/"],"category":"dynamic-analysis","description_en":"Small Python command-line tool that attaches to a running process through Frida and writes its accessible memory ranges to files, run from a Windows, Linux or macOS host against iOS, Android or Windows applications. By default it saves ranges that are readable and writable, -r also takes read-only ones, ranges above a size limit (20 MiB unless set with --max-size) are split into chunks, and -s runs a basic strings pass that collects printable text from every dump into strings.txt. Its README presents it for penetration testers and developers.","description_zh":"一个小型 Python 命令行工具，通过 Frida 附加到正在运行的进程，把其中可访问的内存区域写入文件；可在 Windows、Linux 或 macOS 主机上运行，面向 iOS、Android 或 Windows 应用。默认只保存可读写的内存区域，-r 会连同只读区域一并保存；超过大小上限（默认 20 MiB，可用 --max-size 调整）的区域会拆分成多块；-s 会对所有转储文件做一遍简单的字符串提取，把可打印文本汇总到 strings.txt。其 README 称该工具主要面向渗透测试人员和开发者。","entry_url":"https://awesomerea.org/resources/fridump/","entry_url_zh":"https://awesomerea.org/zh/resources/fridump/","evidence_url":"https://github.com/Nightbringer21/fridump/blob/3e64ee0b0e3dbd7e1aa295077c9ba0728a2bc68f/README.md","group":"tools","id":"fridump","json_url":"https://awesomerea.org/resources/fridump/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/fridump/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fridump/index.md","name":"Fridump","name_zh":"Fridump 基于 Frida 的进程内存转储工具","record_type":"resource","relationship":"foundation","requirements":["The README calls this version 0.1 and warns that bugs are expected. The newest commit on master dates from 2019-04-25, and the repository has no tags or releases. The README reports testing only from Windows 7 and Mac OS X hosts, against an iPad Air 2 on iOS 8.2, a Galaxy Tab running CyanogenMod 4.4.4 and a Windows 7 laptop.","Run fridump.py from a clone with Python and the frida package from pip; there is no requirements file and no Frida version is pinned. Its embedded agent calls Process.enumerateRangesSync and Memory.readByteArray, legacy APIs that Frida's 17.0.0 release notes (May 2025) say are now gone, so the unmodified script appears to need an earlier Frida release.","Mobile targets need a frida-server matching the host's Frida on the device, which the README says must run as root on Android; -U selects a USB-connected device and frida-ps lists process names. Output is one raw file per memory range, named by its base address, with no structure or symbol recovery; ranges that cannot be read are skipped with a warning.","Dumps can hold credentials and personal data from the target process, so use it only on apps and devices you own or are authorized to test. The repository has no license file and GitHub detects no license, so it grants no explicit reuse terms; it contains only three Python files and the README."],"requirements_zh":["README 称当前为 0.1 版，并提醒可能存在缺陷。master 分支最新提交为 2019-04-25，仓库没有标签或发布版本。README 报告的测试仅限于以 Windows 7 和 Mac OS X 为主机，目标为运行 iOS 8.2 的 iPad Air 2、运行 CyanogenMod 4.4.4 的 Galaxy Tab 和一台 Windows 7 笔记本。","从克隆的仓库运行 fridump.py，需要 Python 和用 pip 安装的 frida 包；仓库没有依赖清单，也未固定 Frida 版本。其内嵌代理脚本调用 Process.enumerateRangesSync 和 Memory.readByteArray，而 Frida 17.0.0 的发布说明（2025 年 5 月）表示这类旧式 API 已被移除，因此未经修改的脚本看来需要更早的 Frida 版本。","移动设备上需要运行与主机 Frida 版本匹配的 frida-server，README 指出在 Android 上它必须以 root 身份运行；-U 用于选择通过 USB 连接的设备，frida-ps 可列出进程名。输出为每个内存区域一个原始文件，以其基地址命名，不做结构或符号恢复；无法读取的区域会给出警告并跳过。","转储中可能包含目标进程里的凭据和个人数据，因此只应用于自己拥有或获得授权测试的应用和设备。仓库没有许可证文件，GitHub 也未识别出许可证，因此没有明确的再使用授权；仓库仅包含三个 Python 文件和 README。"],"targets":["app","binary"],"url":"https://github.com/Nightbringer21/fridump","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/adityatelange/frida-ui/blob/4b25e28013bd142c7ef80462491e4db31d3c143f/frida_ui/server.py","https://github.com/adityatelange/frida-ui/blob/4b25e28013bd142c7ef80462491e4db31d3c143f/frida_ui/modules/codeshare.py","https://github.com/adityatelange/frida-ui/blob/4b25e28013bd142c7ef80462491e4db31d3c143f/setup.py","https://github.com/adityatelange/frida-ui/blob/4b25e28013bd142c7ef80462491e4db31d3c143f/LICENSE","https://github.com/adityatelange/frida-ui/releases/tag/v1.1.0","https://pypi.org/project/frida-ui/1.1.0/"],"category":"android","description_en":"Local browser interface for Frida aimed at Android app testing: a FastAPI server lists USB, local and remote frida-server devices with their installed apps and running processes, and lets the analyst attach to a process, spawn an app, spawn it with a script injected at launch, detach or kill it. Scripts are written in a Monaco editor or loaded from files or Frida CodeShare, whose scripts can be queued to run at spawn, and each session's console output is kept and can be exported as text.","description_zh":"面向 Android 应用测试的 Frida 本地浏览器界面：FastAPI 服务会列出通过 USB、本机或远程 frida-server 连接的设备，以及其中已安装的应用和正在运行的进程，分析者可在浏览器中附加到进程、启动应用、在启动时注入脚本，或断开、结束进程。脚本可在 Monaco 编辑器中编写，也可从本地文件或 Frida CodeShare 载入，CodeShare 脚本可排队在启动时运行；每个会话的控制台输出都会保留，并可导出为文本。","entry_url":"https://awesomerea.org/resources/frida-ui/","entry_url_zh":"https://awesomerea.org/zh/resources/frida-ui/","evidence_url":"https://github.com/adityatelange/frida-ui/blob/4b25e28013bd142c7ef80462491e4db31d3c143f/README.md","group":"tools","id":"frida-ui","json_url":"https://awesomerea.org/resources/frida-ui/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/frida-ui/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/frida-ui/index.md","name":"Frida UI","name_zh":"Frida UI 浏览器端 Frida 操作界面","record_type":"resource","relationship":"foundation","requirements":["Latest release v1.1.0, published 2026-01-18 and also on PyPI; the reviewed main commit 4b25e28 of 2026-03-08 is 16 commits ahead with layout changes, saved remote-device settings, CodeShare caching and keyboard shortcuts. Install with uv tool, pipx or pip on Python 3.7+; it depends on fastapi, uvicorn, pydantic and the frida Python package.","The device must run a frida-server whose version matches the installed frida package, reached over USB through ADB or over the network; README documents Android setup only. The analyst supplies the target app, which must already be installed on that device.","The server binds 127.0.0.1:8000 by default and its REST API has no authentication; README warns that it executes arbitrary JavaScript in target processes and should be exposed only to trusted networks and users. The Monaco editor is loaded from cdnjs, falling back to a plain text area, and CodeShare scripts are fetched from codeshare.frida.re and run unchanged, so review them before use.","MIT. README says it is an independent project, not part of or sponsored by Frida, and credits GitHub Copilot for code suggestions. The repository has no automated tests or CI."],"requirements_zh":["最新发布版本为 v1.1.0，发布于 2026-01-18，也已上架 PyPI；所审阅的 main 分支提交 4b25e28（2026-03-08）比它多 16 个提交，包括布局调整、远程设备设置保存、CodeShare 缓存和键盘快捷键。可在 Python 3.7+ 上通过 uv tool、pipx 或 pip 安装；依赖 fastapi、uvicorn、pydantic 和 frida Python 包。","设备上须运行与所装 frida 包版本一致的 frida-server，可通过 ADB 经 USB 连接，或经网络连接；README 只介绍了 Android 的配置方法。目标应用由分析者自备，且须已安装在该设备上。","服务默认绑定 127.0.0.1:8000，其 REST API 没有身份验证；README 提醒它会在目标进程中执行任意 JavaScript，只应向可信网络和用户开放。Monaco 编辑器从 cdnjs 加载，失败时退回普通文本框；CodeShare 脚本从 codeshare.frida.re 获取并原样运行，使用前应先审阅。","采用 MIT 许可。README 称这是独立项目，不属于 Frida 官方，也未获其赞助，并致谢 GitHub Copilot 提供代码建议。仓库没有自动化测试或持续集成。"],"targets":["app"],"url":"https://github.com/adityatelange/frida-ui","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/mildsunrise/darter/blob/a6498786ed0f96b2b70635f008fee62dc07796da/info/versions.md","https://github.com/mildsunrise/darter/blob/a6498786ed0f96b2b70635f008fee62dc07796da/1-introduction.ipynb","https://github.com/mildsunrise/darter/blob/a6498786ed0f96b2b70635f008fee62dc07796da/2-playground.ipynb","https://github.com/mildsunrise/darter/blob/a6498786ed0f96b2b70635f008fee62dc07796da/darter/file.py","https://github.com/mildsunrise/darter/tree/a6498786ed0f96b2b70635f008fee62dc07796da/samples","https://github.com/mildsunrise/darter/blob/a6498786ed0f96b2b70635f008fee62dc07796da/utils/timemachine_pub.js","https://github.com/mildsunrise/darter/blob/a6498786ed0f96b2b70635f008fee62dc07796da/LICENSE"],"category":"android","description_en":"Python module that parses binary Dart VM snapshots, such as the libapp.so of a release Flutter app, into a navigable graph of VM objects with back-references, including the memory structures the snapshot dumps. It reads old, AppJIT and AppAOT snapshots, usually autodetects flags and settings from the snapshot itself, extracts the snapshot blobs from app.so or .snapshot files, and its darter.asm module disassembles ARM and ARM64 code with Capstone to find references to VM objects. The README's examples include extracting an app's string table, finding where an object is used, generating call and library-dependency graphs, exporting metadata for Radare2 and deobfuscating a snapshot by matching it against a reference one.","description_zh":"用于解析二进制 Dart VM 快照（例如 Flutter 发布版应用中的 libapp.so）的 Python 模块，可把快照内容还原为带反向引用、便于浏览的 VM 对象图，连同快照中转储的内存结构一并解析。它支持旧式、AppJIT 和 AppAOT 三类快照，通常能从快照本身自动识别编译标志和设置，可从 app.so 或 .snapshot 文件中自动提取快照数据块；其 darter.asm 模块借助 Capstone 反汇编 ARM 和 ARM64 代码，查找其中对 VM 对象的引用。README 列举的用法包括提取应用的字符串表、查找某个对象在何处被使用、生成调用图和库依赖图、为 Radare2 导出元数据，以及与参考快照比对来对快照去混淆。","entry_url":"https://awesomerea.org/resources/darter/","entry_url_zh":"https://awesomerea.org/zh/resources/darter/","evidence_url":"https://github.com/mildsunrise/darter/blob/a6498786ed0f96b2b70635f008fee62dc07796da/README.md","group":"tools","id":"darter","json_url":"https://awesomerea.org/resources/darter/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/darter/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/darter/index.md","name":"darter","name_zh":"darter Dart 快照解析器","record_type":"resource","relationship":"foundation","requirements":["The README warns that the project is outdated and that snapshots from a reasonably modern Dart or Flutter version probably will not parse correctly. The parser was written against Dart SDK commit 1ef83b86ae, and info/versions.md names snapshot hash c8562f0ee0ebc38ba217c7955956d1cb as the only supported version, which its Flutter table maps to the 2019 releases v1.9.1+hotfix.2 to v1.9.1+hotfix.6. Parser code last changed in 2021; the reviewed master commit of 2026-02-03 only extends that table, now through Flutter 3.38.9, and the repository has no releases or tags.","darter is a library with no stand-alone program or CLI; the README recommends using it from Jupyter, starting with the 1-introduction and 2-playground notebooks. Most of the code has no dependencies, but parse_elf_snapshot needs pyelftools and darter.asm needs Capstone and its Python binding; no Python version or package metadata is given.","The README reports heavy testing only on AppAOT product snapshots for ARM and ARM64 and light testing on x64 AppJIT release snapshots, and the disassembly analysis supports only ARM and ARM64. Kernel AST snapshots, such as .dill files, are not supported. The README recommends practicing on a snapshot one built oneself before analyzing another; users supply the libapp.so or snapshot to study.","samples/ commits arm-app.so and arm64-app.so, which the introduction notebook describes as builds of the default Flutter app; the samples/appjit.snapshot path it shows for AppJIT input is not committed. utils/ adds Radare2-metadata and import generators and a Node script that replays the pub package registry as of a past date through a local HTTPS proxy, using a committed self-signed CA plus a pub.dartlang.org certificate and key; that certificate expired in 2022.","AGPL-3.0."],"requirements_zh":["README 警告该项目已经过时，由较新版本 Dart 或 Flutter 生成的快照很可能无法正确解析。解析器依据 Dart SDK 提交 1ef83b86ae 编写，info/versions.md 称唯一受支持的快照哈希为 c8562f0ee0ebc38ba217c7955956d1cb，其 Flutter 版本表显示它对应 2019 年发布的 v1.9.1+hotfix.2 至 v1.9.1+hotfix.6。解析器代码最后一次修改是在 2021 年；所审阅的 2026-02-03 master 提交只扩充了该版本表（现已列到 Flutter 3.38.9），仓库也没有发行版或标签。","darter 是一个库，没有独立程序或命令行界面；README 推荐在 Jupyter 中使用，先看 1-introduction，再看 2-playground 两个笔记本。大部分代码没有外部依赖，但 parse_elf_snapshot 需要 pyelftools，darter.asm 需要 Capstone 及其 Python 绑定；仓库未注明 Python 版本，也没有软件包元数据。","README 称只在 ARM 和 ARM64 的 AppAOT 产品快照上做过大量测试，在 x64 的 AppJIT 发布快照上做过少量测试，反汇编分析也只支持 ARM 和 ARM64。不支持 .dill 等 Kernel AST 快照。README 建议先用自己构建的快照练习，再分析其他快照；要研究的 libapp.so 或快照需由用户自备。","samples/ 目录提交了 arm-app.so 和 arm64-app.so，入门笔记本称它们是默认 Flutter 应用的构建产物；笔记本中用于演示 AppJIT 输入的 samples/appjit.snapshot 并未提交。utils/ 目录提供 Radare2 元数据生成器和导入文件生成器，以及一个 Node 脚本：它通过本地 HTTPS 代理模拟过去某一日期的 pub 包仓库，为此使用仓库中提交的自签名 CA 以及 pub.dartlang.org 证书和私钥，该证书已于 2022 年过期。","采用 AGPL-3.0 许可。"],"targets":["app","binary"],"url":"https://github.com/mildsunrise/darter","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/buzzer-re/ToCode/blob/216f1f9d808f0c125ef5edb5652021e9c3c96f51/eval/README.md","https://github.com/buzzer-re/ToCode/blob/216f1f9d808f0c125ef5edb5652021e9c3c96f51/pyproject.toml","https://github.com/buzzer-re/ToCode/blob/216f1f9d808f0c125ef5edb5652021e9c3c96f51/DEVELOPMENT.md","https://github.com/buzzer-re/ToCode/tree/216f1f9d808f0c125ef5edb5652021e9c3c96f51/src/tocode/backends","https://github.com/buzzer-re/ToCode/blob/216f1f9d808f0c125ef5edb5652021e9c3c96f51/src/tocode/skill/SKILL.md","https://github.com/buzzer-re/ToCode/blob/216f1f9d808f0c125ef5edb5652021e9c3c96f51/LICENSE","https://pypi.org/project/tocode-cli/0.3.2/"],"category":"agent-workflows","description_en":"Python CLI that exports a binary, IDA database, Android APK, .NET assembly or whole application folder into a source-like project tree for coding agents: recovered C (Java for APKs, C# and IL for .NET) with matching assembly and function summaries, recovered headers and types, section dumps, JSON indexes of functions, strings, imports, exports, reachability and call-graph clusters, and generated AGENTS.md and CLAUDE.md files. It drives IDA, Binary Ninja, radare2 with r2ghidra or angr, and for folders links each import to the defining file's function using the platform's loader rules. Its tocode mcp server keeps the decompiler open so an agent can record names, types and comments and re-render only the affected files.","description_zh":"一个 Python 命令行工具，可把二进制、IDA 数据库、Android APK、.NET 程序集或整个应用目录导出为供编码智能体阅读的类源码项目树：还原的 C 代码（APK 为 Java，.NET 为 C# 和 IL）及对应汇编与函数摘要、还原的头文件和类型、节区数据转储，函数、字符串、导入、导出、可达性和调用图聚类的 JSON 索引，以及生成的 AGENTS.md 和 CLAUDE.md。它可调用 IDA、Binary Ninja、配合 r2ghidra 的 radare2 或 angr；处理目录时按各平台加载器规则，把每个导入项链接到定义它的文件中的函数。其 tocode mcp 服务会保持反编译器打开，让智能体记录名称、类型和注释，并只重新生成受影响的文件。","entry_url":"https://awesomerea.org/resources/tocode/","entry_url_zh":"https://awesomerea.org/zh/resources/tocode/","evidence_url":"https://github.com/buzzer-re/ToCode/blob/216f1f9d808f0c125ef5edb5652021e9c3c96f51/README.md","group":"agents","id":"tocode","json_url":"https://awesomerea.org/resources/tocode/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/tocode/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/tocode/index.md","name":"ToCode","name_zh":"ToCode 面向智能体的二进制类源码导出工具","record_type":"resource","relationship":"independent-agent-integration","requirements":["PyPI release at review: tocode-cli 0.3.2, uploaded 2026-10-16; the reviewed main commit is a merge commit one commit ahead of tag v0.3.2. The repository was created on 2026-05-20. It needs Python 3.10+ on Windows, Linux or macOS and installs with pip or uv, or with install.sh or install.ps1 from a clone.","A decompiler backend is not bundled: IDA through the ida-domain and idapro libraries, Binary Ninja headless where the license allows it or through its built-in MCP server or an RPC bridge in a running UI, radare2 with r2ghidra, or the optional angr extra of about 450 MB, whose pseudo-C the README calls lower quality. .NET exports need a .NET 9+ runtime and download dnlib and ICSharpCode.Decompiler from nuget.org after a prompt, checked against pinned SHA-256 hashes; APKs use the droidasc package.","Supply the binaries or application folders yourself. Exports copy section data, non-code APK entries and native libraries from the input, so they are as sensitive as the analyzed files. The README warns that the Binary Ninja RPC bridge exposes the whole Python VM without authentication and must stay bound to 127.0.0.1.","The eval directory defines a blind source-recovery benchmark: nine small C programs are built with and without debug info, a headless Claude Code agent restricted to the ToCode MCP server and file tools works on the stripped build, and a judge scores names, types, an LLM grade per function, behavior on test inputs and leakage. No benchmark results are committed; tests use generated fixtures and a fake Binary Ninja module, and the repository commits no binaries.","MIT (LICENSE, pyproject.toml). tocode skill install adds a workflow skill for Claude Code and Codex."],"requirements_zh":["审阅时的 PyPI 版本为 tocode-cli 0.3.2，于 2026-10-16 上传；所审阅的 main 分支提交是 v0.3.2 标签之后的一次合并提交。仓库创建于 2026-05-20。需要 Windows、Linux 或 macOS 上的 Python 3.10+，可用 pip 或 uv 安装，也可在克隆仓库后运行 install.sh 或 install.ps1。","不附带反编译后端：可通过 ida-domain 和 idapro 库使用 IDA；在许可证允许时以无界面方式使用 Binary Ninja，或通过其内置 MCP 服务器或运行中界面里的 RPC 桥接使用；也可使用配合 r2ghidra 的 radare2，或约 450 MB 的可选 angr 扩展，README 称后者生成的伪 C 代码质量较低。导出 .NET 需要 .NET 9+ 运行时，并会在提示后从 nuget.org 下载 dnlib 和 ICSharpCode.Decompiler，按固定的 SHA-256 哈希校验；APK 使用 droidasc 包。","需自行提供二进制或应用目录。导出结果会复制输入中的节区数据、APK 非代码条目和原生库，因此其敏感程度与被分析文件相同。README 警告 Binary Ninja RPC 桥接会在无认证的情况下暴露整个 Python 虚拟机，必须只绑定到 127.0.0.1。","eval 目录定义了一项盲源码还原基准：九个小型 C 程序分别带调试信息和去符号构建，一个只能使用 ToCode MCP 服务器和文件工具的无界面 Claude Code 智能体处理去符号版本，再由评判程序对名称、类型、逐函数的 LLM 评分、测试输入上的行为以及信息泄漏打分。仓库未提交基准结果；测试使用生成的样本和模拟的 Binary Ninja 模块，仓库未提交任何二进制。","MIT 许可证（LICENSE、pyproject.toml）。tocode skill install 会为 Claude Code 和 Codex 安装工作流技能。"],"targets":["app","binary"],"url":"https://github.com/buzzer-re/ToCode","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/tenable/esp32_image_parser/blob/0c9ff48d56c8e1e65ba93213400b4d469b84c8ce/esp32_image_parser.py","https://github.com/tenable/esp32_image_parser/blob/0c9ff48d56c8e1e65ba93213400b4d469b84c8ce/esp32_firmware_reader.py","https://github.com/tenable/esp32_image_parser/blob/0c9ff48d56c8e1e65ba93213400b4d469b84c8ce/read_nvs.py","https://github.com/tenable/esp32_image_parser/blob/0c9ff48d56c8e1e65ba93213400b4d469b84c8ce/requirements.txt","https://github.com/tenable/esp32_image_parser/blob/0c9ff48d56c8e1e65ba93213400b4d469b84c8ce/symbols_dump.txt","https://github.com/tenable/esp32_image_parser/blob/0c9ff48d56c8e1e65ba93213400b4d469b84c8ce/LICENSE.md"],"category":"firmware","description_en":"Tenable's Python command-line tool, described in its repository as a toolkit for reverse engineering ESP32 firmware, that reads the partition table of an ESP32 flash dump and rebuilds an app partition such as factory or ota_0 as an Xtensa ELF file. Other actions list the partitions, dump a partition's raw bytes and parse an NVS partition's key-value entries as text or JSON; create_elf loads the app image with esptool, maps its flash, DRAM and IRAM segments to ELF sections and adds symbols from a bundled ROM symbol table.","description_zh":"Tenable 发布的 Python 命令行工具，其仓库简介称之为辅助逆向 ESP32 固件的工具包：它读取 ESP32 闪存转储中的分区表，并将 factory、ota_0 等应用分区重建为 Xtensa ELF 文件。其他操作可列出分区、导出某个分区的原始字节，并将 NVS 分区的键值条目解析为文本或 JSON；create_elf 借助 esptool 载入应用镜像，把其中的闪存、DRAM 和 IRAM 段映射为 ELF 节区，并加入仓库自带 ROM 符号表中的符号。","entry_url":"https://awesomerea.org/resources/esp32-image-parser/","entry_url_zh":"https://awesomerea.org/zh/resources/esp32-image-parser/","evidence_url":"https://github.com/tenable/esp32_image_parser/blob/0c9ff48d56c8e1e65ba93213400b4d469b84c8ce/README.md","group":"tools","id":"esp32-image-parser","json_url":"https://awesomerea.org/resources/esp32-image-parser/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/esp32-image-parser/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/esp32-image-parser/index.md","name":"esp32_image_parser","name_zh":"esp32_image_parser ESP32 固件镜像解析工具","record_type":"resource","relationship":"foundation","requirements":["No commits since 2020-02-29 and no releases or tags. Setup is pip install -r requirements.txt, which lists makeelf, esptool and hexdump without versions; the script imports esptool's module namespace and calls its LoadFirmwareImage for the original esp32 chip type.","Input is a full flash dump from the analyst's own device. The parser reads the partition table at the default 0x8000 offset, and create_elf accepts only app-type partitions and needs an output file name; segments it cannot map, such as RTC IRAM, are reported rather than converted.","The repository commits no firmware images: besides the Python scripts it holds symbols_dump.txt, a readelf-style table of about 890 symbols mostly at ESP32 ROM addresses, which create_elf reads from the current working directory into every ELF. MIT licensed (LICENSE.md)."],"requirements_zh":["自 2020-02-29 起没有新提交，也没有发布版本或标签。安装方式为 pip install -r requirements.txt，其中列出 makeelf、esptool 和 hexdump，均未指定版本；脚本直接导入 esptool 的模块命名空间，并针对初代 esp32 芯片类型调用其 LoadFirmwareImage。","输入为分析者自有设备的完整闪存转储。解析器从默认偏移 0x8000 读取分区表；create_elf 只接受应用类型分区，并需指定输出文件名；RTC IRAM 等无法映射的段只会给出提示，不会被转换。","仓库不含任何固件镜像：除 Python 脚本外，只有 symbols_dump.txt，这是一份约 890 个符号的 readelf 格式符号表，大多位于 ESP32 ROM 地址，create_elf 会从当前工作目录读取它并写入每个 ELF。采用 MIT 许可（LICENSE.md）。"],"targets":["firmware"],"url":"https://github.com/tenable/esp32_image_parser","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/RCayre/mirage/blob/b6cd39eb779a94a11ebf9f7cba4e77435d885434/setup.py","https://github.com/RCayre/mirage/blob/b6cd39eb779a94a11ebf9f7cba4e77435d885434/CHANGELOG.md","https://github.com/RCayre/mirage/blob/b6cd39eb779a94a11ebf9f7cba4e77435d885434/mirage/__init__.py","https://github.com/RCayre/mirage/tree/b6cd39eb779a94a11ebf9f7cba4e77435d885434/mirage/modules","https://github.com/RCayre/mirage/blob/b6cd39eb779a94a11ebf9f7cba4e77435d885434/mirage/modules/ble_discover.py","https://github.com/RCayre/mirage/blob/b6cd39eb779a94a11ebf9f7cba4e77435d885434/mirage/libs/ble_utils/adb.py","https://github.com/RCayre/mirage/blob/b6cd39eb779a94a11ebf9f7cba4e77435d885434/mirage/libs/wireless_utils/pcapDevice.py","https://github.com/RCayre/mirage/blob/b6cd39eb779a94a11ebf9f7cba4e77435d885434/mirage/libs/ble_utils/pcap.py","https://github.com/RCayre/mirage/blob/b6cd39eb779a94a11ebf9f7cba4e77435d885434/LICENSE.txt","https://hal.science/hal-02346074"],"category":"protocol-analysis","description_en":"Python framework from IoT-security research at LAAS-CNRS for analysing wireless communications, with lightweight protocol stacks for Bluetooth Low Energy, Bluetooth, Enhanced ShockBurst, Mosart, Zigbee, Wi-Fi and infrared that a command-line interpreter drives through chainable modules. For protocol analysis it offers per-protocol scan, information and sniffing modules, BLE ATT/GATT discovery that saves the discovered attribute table, HCI monitoring of an Android phone through its btsnoop log over ADB, PCAP reading and writing, and an experimental HackRF software-radio receive path with FSK demodulators and BLE and Zigbee decoders. Its author has deprecated it in favour of the WHAD tool suite.","description_zh":"源自 LAAS-CNRS 物联网安全研究的 Python 无线通信分析框架，内置低功耗蓝牙（BLE）、经典蓝牙、Enhanced ShockBurst、Mosart、Zigbee、Wi-Fi 和红外等轻量协议栈，由命令行解释器调用可串联的模块。用于协议分析时，它为各协议提供扫描、信息查询和嗅探模块，可发现 BLE 的 ATT/GATT 层并保存所得属性表，可通过 ADB 读取 Android 手机的 btsnoop 日志来监视 HCI 通信，支持读写 PCAP，并提供基于 HackRF 的实验性软件无线电接收路径，包含 FSK 解调器以及 BLE 和 Zigbee 解码器。作者已宣布弃用该项目，转而开发 WHAD 工具集。","entry_url":"https://awesomerea.org/resources/mirage-wireless-framework/","entry_url_zh":"https://awesomerea.org/zh/resources/mirage-wireless-framework/","evidence_url":"https://github.com/RCayre/mirage/blob/b6cd39eb779a94a11ebf9f7cba4e77435d885434/readme.md","group":"tools","id":"mirage-wireless-framework","json_url":"https://awesomerea.org/resources/mirage-wireless-framework/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/mirage-wireless-framework/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mirage-wireless-framework/index.md","name":"Mirage","name_zh":"Mirage 无线通信分析框架","record_type":"resource","relationship":"foundation","requirements":["Version 1.2 according to mirage/__init__.py; the repository has no tags or GitHub releases. The README, last edited 2025-04-13 at the reviewed commit, declares the project officially deprecated and no longer maintained and points to its successor WHAD (whad-team/whad-client); the last code change is from 2022-11-24. It installs from this source tree with setup.py, since the PyPI package named mirage is an unrelated JWST data simulator.","setup.py depends on scapy, pyusb, pyserial, pycryptodomex, keyboard, psutil, terminaltables and matplotlib, and its classifiers list Python 3.6 and Linux. Live capture needs supported radio hardware: Bluetooth HCI adapters, a BBC micro:bit running BTLEJack firmware, Nordic and Sniffle sniffers, Ubertooth, a Crazyradio PA for Enhanced ShockBurst and Mosart, an RZUSBStick for Zigbee, a Wi-Fi interface, the IRma infrared device, a ButteRFly nRF52840 dongle or a HackRF One for the experimental SDR path. Their firmware lives in separate repositories; this repository holds only Python sources and no firmware images.","Without radio hardware, PCAP files serve as input interfaces (BLE link-layer PCAPs use DLT 256), and the ADB and hcidump interfaces read HCI traffic recorded on an Android phone or Linux host. The documentation site linked from the README returned HTTP 404 at review; its Sphinx sources are on the LAAS Redmine.","The README and setup.py describe Mirage as an offensive framework whose modules and example scenarios also cover man-in-the-middle, jamming, hijacking, cloning and injection, including experimental InjectaBLE attacks. Capture only devices and networks you are authorised to observe.","MIT (LICENSE.txt, copyright 2019 Romain Cayre). The README cites SSTIC 2019 and IEEE ISSRE 2019 papers describing the framework."],"requirements_zh":["据 mirage/__init__.py，版本为 1.2；仓库没有标签或 GitHub 发布版本。README 于所审提交（2025-04-13）最后修改，宣布项目正式弃用、不再维护，并指向后继项目 WHAD（whad-team/whad-client）；最后一次代码改动在 2022-11-24。需从本源码树用 setup.py 安装，因为 PyPI 上名为 mirage 的包是无关的 JWST 数据模拟器。","setup.py 依赖 scapy、pyusb、pyserial、pycryptodomex、keyboard、psutil、terminaltables 和 matplotlib，分类信息列出 Python 3.6 与 Linux。实时采集需要受支持的无线电硬件：蓝牙 HCI 适配器、运行 BTLEJack 固件的 BBC micro:bit、Nordic 与 Sniffle 嗅探器、Ubertooth、用于 Enhanced ShockBurst 和 Mosart 的 Crazyradio PA、用于 Zigbee 的 RZUSBStick、Wi-Fi 网卡、IRma 红外设备、ButteRFly nRF52840 加密狗，或用于实验性软件无线电路径的 HackRF One。这些设备的固件在其他仓库中；本仓库只有 Python 源码，不含固件镜像。","没有无线电硬件时，可把 PCAP 文件当作输入接口（BLE 链路层 PCAP 使用 DLT 256），ADB 与 hcidump 接口则读取 Android 手机或 Linux 主机记录的 HCI 通信。README 链接的文档网站在审阅时返回 HTTP 404；其 Sphinx 源文件位于 LAAS 的 Redmine。","README 和 setup.py 称 Mirage 为攻击性框架，其模块和示例场景还涉及中间人、干扰、劫持、克隆和注入，包括实验性的 InjectaBLE 攻击。只应采集自己有权观察的设备和网络。","MIT 许可（LICENSE.txt，版权 2019 Romain Cayre）。README 引用了介绍该框架的 SSTIC 2019 和 IEEE ISSRE 2019 论文。"],"targets":["protocol"],"url":"https://github.com/RCayre/mirage","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/JeremyWhittaker/unidenr8_bluetooth/blob/46c7e1af2fa86c9a5c18f58528bea0f22b4d77dc/README.md","https://github.com/JeremyWhittaker/unidenr8_bluetooth/blob/46c7e1af2fa86c9a5c18f58528bea0f22b4d77dc/docs/SAFETY.md","https://github.com/JeremyWhittaker/unidenr8_bluetooth/blob/46c7e1af2fa86c9a5c18f58528bea0f22b4d77dc/docs/EVIDENCE.md","https://github.com/JeremyWhittaker/unidenr8_bluetooth/blob/46c7e1af2fa86c9a5c18f58528bea0f22b4d77dc/docs/CAPABILITIES.md","https://github.com/JeremyWhittaker/unidenr8_bluetooth/blob/46c7e1af2fa86c9a5c18f58528bea0f22b4d77dc/docs/HANDOFF.md","https://github.com/JeremyWhittaker/unidenr8_bluetooth/blob/46c7e1af2fa86c9a5c18f58528bea0f22b4d77dc/pyproject.toml","https://github.com/JeremyWhittaker/unidenr8_bluetooth/blob/46c7e1af2fa86c9a5c18f58528bea0f22b4d77dc/.github/workflows/ci.yml","https://github.com/JeremyWhittaker/unidenr8_bluetooth/blob/46c7e1af2fa86c9a5c18f58528bea0f22b4d77dc/LICENSE"],"category":"reconstruction-cases","description_en":"Decodes the undocumented Bluetooth Low Energy output of a Uniden R8 radar detector into a receive-only collector for a Raspberry Pi, with live telemetry, alert start/update/end events, SQLite history and optional MQTT and Home Assistant publishing. The author worked the protocol out from the wire on a real detector, building on earlier R8w findings from AegisX86/UnidenR8wlink, and grades every claim in PROTOCOL.md by its evidence: measured on this R8, seen on another model, decompiled from an app but untested, or inference. Unknown fields are carried through raw rather than given invented meanings.","description_zh":"将 Uniden R8 雷达探测器未公开的低功耗蓝牙输出解码为可在 Raspberry Pi 上运行的只读采集程序，提供实时遥测、警报开始／更新／结束事件、SQLite 历史记录，以及可选的 MQTT 与 Home Assistant 发布。作者在真实设备上直接从通信数据推断协议，并以 AegisX86/UnidenR8wlink 先前针对 R8w 的发现为基础；PROTOCOL.md 中的每项结论都按证据分级：在这台 R8 上实测、在其他型号上见到、从应用反编译但未测试，或推断。未知字段按原始数据保留，而不赋予臆造的含义。","entry_url":"https://awesomerea.org/resources/uniden-r8-ble-telemetry-case/","entry_url_zh":"https://awesomerea.org/zh/resources/uniden-r8-ble-telemetry-case/","evidence_url":"https://github.com/JeremyWhittaker/unidenr8_bluetooth/blob/46c7e1af2fa86c9a5c18f58528bea0f22b4d77dc/docs/PROTOCOL.md","group":"cases","id":"uniden-r8-ble-telemetry-case","json_url":"https://awesomerea.org/resources/uniden-r8-ble-telemetry-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/uniden-r8-ble-telemetry-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/uniden-r8-ble-telemetry-case/index.md","name":"uniden-r8-ble: reconstructing the Uniden R8 radar detector's BLE telemetry","name_zh":"uniden-r8-ble：重建 Uniden R8 雷达探测器的蓝牙遥测","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the main-branch head of 2026-09-09 (package version 0.1.0). README reports 1 Hz telemetry decoded without errors on a moving vehicle and one real Ka-band alert captured on the R8, while PROTOCOL.md still grades active-alert fields as inherited from R8w captures; it also states that the live stream carries no position, and that settings blocks remain undecoded.","Requires the user's own Uniden R8 and a Linux host with BlueZ, documented on a Raspberry Pi Zero 2 W with an optional systemd service, gpsd-connected GNSS receiver, PiSugar battery and MQTT broker. No vendor app, firmware or captures are committed; README says raw captures are kept in a git-ignored local store, and Bluetooth addresses and coordinates are redacted before publication.","Python 3.11+, with bleak as the optional BLE extra and paho-mqtt for publishing. README says the installed package sends no application commands to the detector and that an AST audit, run by selftest and in CI, checks this; commands used for the coordinate experiments were sent from separate scripts at the owner's instruction, as SAFETY.md records.","CI runs ruff and pytest on Python 3.11–3.13 plus a selftest job; README badges 754 tests, which need no hardware, broker, gpsd or network. README notes that MQTT and the dashboard have not met real hardware.","MIT license. README states the project is not affiliated with or endorsed by Uniden and is diagnostic software, not a substitute for the detector's own display or warnings. HANDOFF.md is written for a person or an agent taking over the project."],"requirements_zh":["在 2026-09-09 的 main 分支最新提交处审阅（软件包版本 0.1.0）。README 报告在行驶车辆上无差错地解码了 1 Hz 遥测，并在这台 R8 上捕获到一次真实的 Ka 波段警报；而 PROTOCOL.md 仍将活动警报字段评为来自 R8w 抓包的继承证据。文档还指出实时数据流不包含位置，设置数据块也仍未解码。","需要使用者自己的 Uniden R8，以及带 BlueZ 的 Linux 主机；文档以 Raspberry Pi Zero 2 W 为例，可选配 systemd 服务、经 gpsd 连接的 GNSS 接收器、PiSugar 电池和 MQTT 代理。仓库未收录厂商应用、固件或抓包记录；README 称原始抓包保存在被 git 忽略的本地目录中，蓝牙地址和坐标在发布前会被脱敏。","需要 Python 3.11+，bleak 作为可选的蓝牙扩展，paho-mqtt 用于发布。README 称已安装的软件包不会向探测器发送任何应用命令，并由 selftest 和 CI 中运行的 AST 审计加以检查；坐标实验所用的命令是在所有者指示下由独立脚本发送的，SAFETY.md 对此有记录。","CI 在 Python 3.11–3.13 上运行 ruff 与 pytest，并有一个 selftest 任务；README 徽章标示 754 项测试，无需硬件、代理、gpsd 或网络。README 指出 MQTT 与仪表板尚未在真实硬件上运行过。","采用 MIT 许可。README 称项目与 Uniden 无关联、未获其认可，是诊断软件，不能替代探测器自身的显示或警告。HANDOFF.md 面向接手项目的人或智能体编写。"],"targets":["protocol"],"url":"https://github.com/JeremyWhittaker/unidenr8_bluetooth","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/goretk/redress/blob/fe38d961b5d8bf0a0ebf58421527da64422a7922/go.mod","https://github.com/goretk/redress/blob/fe38d961b5d8bf0a0ebf58421527da64422a7922/Makefile","https://github.com/goretk/redress/blob/fe38d961b5d8bf0a0ebf58421527da64422a7922/LICENSE","https://github.com/goretk/redress/blob/fe38d961b5d8bf0a0ebf58421527da64422a7922/.github/workflows/gore.yml","https://github.com/goretk/redress/blob/198e6dc82f17ca6e9edb80b22a85af17f1a3b031/go.mod","https://github.com/goretk/redress/releases/tag/v1.2.98","https://github.com/goretk/gore/blob/a49d39670e6137952032277d41430bd734a06404/README.md"],"category":"native-analysis","description_en":"Command-line tool, built on the GoRE library, that recovers metadata from stripped binaries produced by the Go compiler. It reports the compiler version, build ID, GOROOT, main-package path and Go module information; lists project, standard-library and vendored packages; prints interfaces, structs and their methods as Go type declarations; and projects the source tree as packages, files and functions with estimated line ranges. Run inside radare2 through r2pipe, it adds function and type flags and analyzes main.init and main.main.","description_zh":"基于 GoRE 库的命令行工具，可从 Go 编译器生成、已剥离符号的二进制文件中恢复元数据。它能报告编译器版本、构建 ID、GOROOT、main 包路径和 Go 模块信息；列出项目包、标准库包和 vendor 包；把接口、结构体及其方法输出为 Go 类型声明；并按包、文件和函数推测源码树布局，估计各函数的行号范围。通过 r2pipe 在 radare2 中运行时，它会为函数和类型添加标记，并分析 main.init 与 main.main。","entry_url":"https://awesomerea.org/resources/redress/","entry_url_zh":"https://awesomerea.org/zh/resources/redress/","evidence_url":"https://github.com/goretk/redress/blob/fe38d961b5d8bf0a0ebf58421527da64422a7922/README.md","group":"tools","id":"redress","json_url":"https://awesomerea.org/resources/redress/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/redress/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/redress/index.md","name":"Redress","name_zh":"Redress Go 二进制分析工具","record_type":"resource","relationship":"foundation","requirements":["Reviewed at commit fe38d96 (2024-10-12) on develop, the default branch. The stable master branch is 96 commits ahead, all automated \"Update Gore version\" commits: a daily workflow bumps the GoRE dependency whenever GoRE publishes a new release, then tags and builds a release. Latest release at review: v1.2.98 (2026-10-20), built against GoRE v0.14.7, while develop's go.mod still pins v0.11.5; the README is identical on both branches.","Release archives are amd64-only builds for Linux, macOS and Windows. Source builds need Go 1.21+ according to go.mod, with Make targets for each platform; the r2 subcommand is meant to run from radare2 as #!pipe redress r2.","Input is an executable built with the Go compiler. The README's examples use a macOS cryptominer sample first reported by Malwarebytes, which the repository does not include; it commits no test binaries. GoRE recovers functions from the pclntab and types from the typelink list, fully supporting Go 1.7 and later and only partially 1.5 and 1.6, and its compiler-version detection is a string search that the GoRE README says is not perfect.","Redress is AGPL-3.0 (LICENSE). GoRE is mostly BSD-licensed, but its AGPL features such as GOROOT extraction make any build without the gore_bsd tag AGPL. Output reconstructs symbols, types and a source layout, not Go source code, and the README notes that some packages cannot be classified."],"requirements_zh":["审阅对象为默认分支 develop 上的提交 fe38d96（2024-10-12）。稳定的 master 分支领先 96 个提交，全部是自动生成的“Update Gore version”提交：一个每日工作流会在 GoRE 发布新版本时更新这项依赖，随后打标签并构建发行版。审阅时最新发行版为 v1.2.98（2026-10-20），基于 GoRE v0.14.7 构建，而 develop 的 go.mod 仍固定为 v0.11.5；两个分支的 README 完全相同。","发行包只有 Linux、macOS 和 Windows 的 amd64 构建。按 go.mod，从源码构建需要 Go 1.21+，各平台都有对应的 Make 目标；r2 子命令应在 radare2 中以 #!pipe redress r2 的方式运行。","输入为用 Go 编译器构建的可执行文件。README 的示例使用 Malwarebytes 最早报告的一个 macOS 挖矿恶意样本，仓库并未包含该样本，也没有提交任何测试二进制。GoRE 从 pclntab 恢复函数，从 typelink 列表解析类型，完整支持 Go 1.7 及以后版本，对 1.5 和 1.6 仅部分支持；其编译器版本识别依靠字符串搜索，GoRE 的 README 也承认并不完美。","Redress 采用 AGPL-3.0（LICENSE）。GoRE 大部分代码采用 BSD 许可，但其中 GOROOT 提取等功能采用 AGPL，因此不带 gore_bsd 构建标签编译的程序都须遵循 AGPL。输出重建的是符号、类型和源码布局，而非 Go 源代码；README 也提到部分包无法归类。"],"targets":["binary"],"url":"https://github.com/goretk/redress","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/nccgroup/ghidra-nanomips/blob/62ebe71bb858dd193bef9bb421e7b9888e140882/data/languages/nanomips.ldefs","https://github.com/nccgroup/ghidra-nanomips/blob/62ebe71bb858dd193bef9bb421e7b9888e140882/data/languages/nanomips.opinion","https://github.com/nccgroup/ghidra-nanomips/blob/62ebe71bb858dd193bef9bb421e7b9888e140882/data/languages/nanomips.slaspec","https://github.com/nccgroup/ghidra-nanomips/blob/62ebe71bb858dd193bef9bb421e7b9888e140882/data/languages/nanomips.sinc","https://github.com/nccgroup/ghidra-nanomips/blob/62ebe71bb858dd193bef9bb421e7b9888e140882/extension.properties","https://github.com/nccgroup/ghidra-nanomips/blob/62ebe71bb858dd193bef9bb421e7b9888e140882/LICENSE","https://github.com/nccgroup/ghidra-nanomips/releases/tag/v0.3.3","https://www.nccgroup.com/research/ghidra-nanomips-isa-module/"],"category":"native-analysis","description_en":"Ghidra processor module that adds nanoMIPS disassembly and decompilation through a SLEIGH specification of the little-endian 32-bit nanoMIPS instruction set, including its multithreading instructions. NCC Group's announcement says it was written while reverse engineering MediaTek 5G baseband firmware, implements the instructions met in that firmware and leaves some complex P-Code emulation unimplemented, yet decompiles most of the baseband code the team analyzed.","description_zh":"为 Ghidra 增加 nanoMIPS 反汇编和反编译能力的处理器模块，以 SLEIGH 规范描述小端 32 位 nanoMIPS 指令集，包括其多线程指令。NCC Group 的发布文章称，该模块是在逆向分析 MediaTek 5G 基带固件时编写的，实现了该固件中遇到的指令，部分复杂 P-Code 仿真尚未实现，但已能反编译团队分析过的大部分基带代码。","entry_url":"https://awesomerea.org/resources/ghidra-nanomips/","entry_url_zh":"https://awesomerea.org/zh/resources/ghidra-nanomips/","evidence_url":"https://github.com/nccgroup/ghidra-nanomips/blob/62ebe71bb858dd193bef9bb421e7b9888e140882/README.md","group":"tools","id":"ghidra-nanomips","json_url":"https://awesomerea.org/resources/ghidra-nanomips/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ghidra-nanomips/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghidra-nanomips/index.md","name":"ghidra-nanomips","name_zh":"ghidra-nanomips nanoMIPS 处理器模块","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.3.3, published 2025-11-06 from the reviewed main commit, with an extension zip built for Ghidra 11.4.2; v0.3.1 and v0.3.2 also target 11.4.2, while the README's build example uses Ghidra 11.0.3. For another Ghidra release, build from source with Gradle and GHIDRA_INSTALL_DIR, then add the zip through File > Install Extensions.","The module defines the single language nanomips:LE:32:default, and its importer opinion file is a commented-out template, so the language is chosen manually when importing, for example for a raw binary. The README lists the nanoMIPS32 ISA, privileged-architecture, multithreading, ELF ABI and I7200 core manuals it was written from; those documents are not included.","Release notes record p-code fixes for LWM/RESTORE, BITREVH and memory references, a compiler-spec fix for a decompiler varnode error and PC-relative address display for ADDIUPC. The repository has no tests or CI, and the specification still carries TODO notes on effective-address handling.","GPL-3.0; build.gradle keeps the Apache-2.0 header of Ghidra's extension skeleton. extension.properties names James Chambers and Robert Herrera as authors. Users supply the firmware to analyze; the announcement's MediaTek walkthrough is an illustration, not a bundled sample."],"requirements_zh":["审阅时最新版本为 v0.3.3，于 2025-11-06 基于所审阅的 main 分支提交发布，附带为 Ghidra 11.4.2 构建的扩展 zip；v0.3.1 和 v0.3.2 同样面向 11.4.2，而 README 的构建示例使用 Ghidra 11.0.3。若使用其他 Ghidra 版本，需用 Gradle 并设置 GHIDRA_INSTALL_DIR 从源码构建，再通过 File > Install Extensions 安装 zip。","模块只定义了 nanomips:LE:32:default 一种语言，导入器判定文件仍是注释掉的模板，因此导入时（例如导入原始二进制）需手动选择该语言。README 列出了编写时参考的 nanoMIPS32 指令集、特权架构、多线程、ELF ABI 以及 I7200 内核手册；仓库不含这些文档。","发布说明记录了 LWM/RESTORE、BITREVH 及内存引用的 p-code 修正、一处导致反编译器 varnode 错误的编译器规范修正，以及 ADDIUPC 的 PC 相对地址显示。仓库没有测试或 CI，规范中仍有关于有效地址处理的 TODO 注释。","采用 GPL-3.0；build.gradle 保留了 Ghidra 扩展模板的 Apache-2.0 文件头。extension.properties 署名作者为 James Chambers 和 Robert Herrera。待分析的固件需由使用者提供；发布文章中的 MediaTek 演示仅为示例，并非随附样本。"],"targets":["binary","firmware"],"url":"https://github.com/nccgroup/ghidra-nanomips","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/danielplohmann/smda/blob/04652e6662fde57d146a14d80399e2c1d128e26b/README.md#L170-L199","https://github.com/danielplohmann/smda/blob/04652e6662fde57d146a14d80399e2c1d128e26b/pyproject.toml","https://github.com/danielplohmann/smda/blob/04652e6662fde57d146a14d80399e2c1d128e26b/CHANGELOG.md","https://github.com/danielplohmann/smda/blob/04652e6662fde57d146a14d80399e2c1d128e26b/.github/workflows/ci.yml","https://github.com/danielplohmann/smda/blob/04652e6662fde57d146a14d80399e2c1d128e26b/.github/workflows/perf_benchmark.yml","https://github.com/danielplohmann/smda/blob/04652e6662fde57d146a14d80399e2c1d128e26b/AGENTS.md","https://github.com/danielplohmann/smda/blob/04652e6662fde57d146a14d80399e2c1d128e26b/tests/aarch64_macho_corpus/README.md","https://github.com/danielplohmann/smda/tree/04652e6662fde57d146a14d80399e2c1d128e26b/tests","https://github.com/danielplohmann/smda/tree/04652e6662fde57d146a14d80399e2c1d128e26b/data","https://github.com/danielplohmann/smda/blob/04652e6662fde57d146a14d80399e2c1d128e26b/LICENSE","https://github.com/danielplohmann/smda/blob/04652e6662fde57d146a14d80399e2c1d128e26b/NOTICE","https://github.com/danielplohmann/smda/releases/tag/v5.0.1","https://pypi.org/project/smda/5.0.1/"],"category":"binary-libraries","description_en":"Python recursive disassembler library built on Capstone that recovers control-flow graphs from PE, ELF and Mach-O files, .NET assemblies, raw DEX files and memory dumps with a known base address, through x86/x64, AArch64, 32-bit ARM/Thumb, CIL and Dalvik backends. Its JSON reports list functions, basic blocks, instructions and the edges between them, enriched with symbols from imports, exports, PDB, Go, Rust and Delphi metadata, referenced strings, Windows API references inferred with the ApiScout method and position-independent code hashes. Function discovery deliberately favours completeness over precision; the README names SMDA as capa's disassembler backend and MCRIT's code-analysis layer, and IDA Pro or Binary Ninja analyses can be exported into the same report format.","description_zh":"基于 Capstone 的 Python 递归反汇编库，借助 x86/x64、AArch64、32 位 ARM/Thumb、CIL 和 Dalvik 后端，从 PE、ELF、Mach-O 文件、.NET 程序集、原始 DEX 文件以及已知基址的内存转储中恢复控制流图。其 JSON 报告列出函数、基本块、指令及其间的边，并补充来自导入表、导出表、PDB、Go、Rust 与 Delphi 元数据的符号、被引用的字符串、用 ApiScout 方法推断的 Windows API 引用以及位置无关代码哈希。函数发现有意以完整性优先于精确性；README 称 SMDA 是 capa 的反汇编后端和 MCRIT 的代码分析层，IDA Pro 或 Binary Ninja 的分析结果也可导出为同一报告格式。","entry_url":"https://awesomerea.org/resources/smda/","entry_url_zh":"https://awesomerea.org/zh/resources/smda/","evidence_url":"https://github.com/danielplohmann/smda/blob/04652e6662fde57d146a14d80399e2c1d128e26b/README.md","group":"tools","id":"smda","json_url":"https://awesomerea.org/resources/smda/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/smda/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/smda/index.md","name":"SMDA","name_zh":"SMDA 递归反汇编库","record_type":"resource","relationship":"foundation","requirements":["Reviewed at the v5.0.1 release commit of 2026-10-20, which is also the latest GitHub release and PyPI version; v5.0.0 of 2026-10-16 added the 32-bit ARM backend. The CHANGELOG states that version numbers are a release counter, not semantic versioning, and pyproject.toml classifies the package as Beta.","pip install smda needs Python 3.11+ and pulls in capstone 5.0.2 or later below 6, demangle 0.6.0, dncil, dnfile, LIEF 0.16+ and purepdb. CI runs the tests on Python 3.11 to 3.14 on Ubuntu and on 3.11 on Windows and macOS. The analyze.py, batch_analyze.py and export scripts are not installed by pip and need a clone; the IDA frontend needs IDA Pro 8.4+, headless IDA export needs IDA 9.1+ with the optional ida-domain package, and Binary Ninja export needs a licensed Binary Ninja whose Python API is importable.","The README rates the intel backend as production quality and benchmarked against other disassemblers, AArch64 as matching IDA closely on its test corpora, and the ARM, CIL and Dalvik backends as recent; the managed backends are not benchmarked on obfuscated code and report file offsets rather than virtual addresses. Dalvik accepts raw single-DEX files only, not APKs, multi-dex, ODEX or CDEX, and recognized machine types such as big-endian ARM32, MIPS, PowerPC, SPARC and RISC-V have no backend. Binaries, memory dumps and IDA or Binary Ninja databases come from the analyst; for a headerless dump pass the architecture and base address, and ApiScout resolution needs WinAPI profiles matching the dumped system, of which data/ bundles Windows 7 SP1 and Windows XP SP3 profiles. The default analysis budget is 300 seconds, enforced cooperatively, a timed-out report is a lower bound, and synthesizing binaries from reports is experimental.","The tests use XOR-encoded binaries that are decoded in memory: programs built for the project, a DEX file whose classes are Apache HttpClient code (blockblast_classes_xored), and malware samples including Mirai builds for 12 architectures, Asprox, Cutwail, Bashlite, Komplex and njRAT, plus AArch64 Mach-O malware from Objective-See and Malpedia under tests/aarch64_macho_corpus, whose README forbids executing them. The CI benchmark additionally uses .github/workflows/data/malpedia.zip, a 74 MB password-protected Malpedia corpus whose password is a repository secret, so AGENTS.md says the benchmark cannot be reproduced locally.","BSD-2-Clause (LICENSE); NOTICE lists third-party parts, including rust_demangler-derived code under MIT and MSVC symbol names from LLVM's demangler tests under Apache-2.0 with the LLVM exception. AGENTS.md gives guidance to AI coding agents working on the code."],"requirements_zh":["审阅对象为 2026-10-20 的 v5.0.1 发布提交，它也是 GitHub 和 PyPI 上的最新版本；2026-10-16 的 v5.0.0 新增了 32 位 ARM 后端。CHANGELOG 说明版本号只是发布计数，并非语义化版本；pyproject.toml 将该包标为 Beta。","pip install smda 需要 Python 3.11+，并会安装 5.0.2 及以上但低于 6 的 capstone、demangle 0.6.0、dncil、dnfile、LIEF 0.16+ 和 purepdb。CI 在 Ubuntu 上用 Python 3.11 至 3.14、在 Windows 和 macOS 上用 3.11 运行测试。analyze.py、batch_analyze.py 和导出脚本不会随 pip 安装，需要克隆仓库；IDA 前端需要 IDA Pro 8.4+，无界面 IDA 导出需要 IDA 9.1+ 及可选的 ida-domain 包，Binary Ninja 导出则需要可导入其 Python API 的正版 Binary Ninja。","README 将 intel 后端评为生产级并已与其他反汇编器对比测试，称 AArch64 在其测试语料上与 IDA 的结果非常接近，ARM、CIL 和 Dalvik 后端则较新；两个托管代码后端未在混淆代码上做过基准测试，报告的是文件偏移而非虚拟地址。Dalvik 只接受原始的单个 DEX 文件，不支持 APK、多 DEX、ODEX 或 CDEX；大端 ARM32、MIPS、PowerPC、SPARC、RISC-V 等可识别的机器类型没有对应后端。二进制文件、内存转储以及 IDA 或 Binary Ninja 数据库均由分析者提供；分析无文件头的转储时应传入架构和基址，ApiScout 解析需要与被转储系统相符的 WinAPI 配置文件，data/ 目录附带 Windows 7 SP1 和 Windows XP SP3 的配置文件。默认分析预算为 300 秒，以协作方式执行，超时的报告只是下限；根据报告合成二进制文件的功能仍属实验性质。","测试使用在内存中解码的 XOR 编码二进制文件：为项目构建的程序、一个类均为 Apache HttpClient 代码的 DEX 文件（blockblast_classes_xored），以及恶意软件样本，包括 12 种架构的 Mirai 构建、Asprox、Cutwail、Bashlite、Komplex 和 njRAT，另有 tests/aarch64_macho_corpus 下来自 Objective-See 和 Malpedia 的 AArch64 Mach-O 恶意软件，其 README 禁止执行这些样本。CI 基准测试还使用 .github/workflows/data/malpedia.zip，这是一个 74 MB、带密码保护的 Malpedia 语料包，密码保存在仓库机密中，因此 AGENTS.md 说明该基准无法在本地复现。","采用 BSD-2-Clause 许可（LICENSE）；NOTICE 列出第三方部分，包括以 MIT 许可、源自 rust_demangler 的代码，以及取自 LLVM 符号还原测试、以 Apache-2.0 加 LLVM 例外许可的 MSVC 符号名。AGENTS.md 为参与开发的 AI 编程代理提供指引。"],"targets":["binary"],"url":"https://github.com/danielplohmann/smda","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/willnode/deobfuscator/blob/313ab0dcc0211e3c662514b4448153963fce22c6/src/tools.js","https://github.com/willnode/deobfuscator/blob/313ab0dcc0211e3c662514b4448153963fce22c6/src/index.js","https://github.com/willnode/deobfuscator/blob/313ab0dcc0211e3c662514b4448153963fce22c6/package.json","https://github.com/willnode/deobfuscator/blob/313ab0dcc0211e3c662514b4448153963fce22c6/.github/workflows/build.yml","https://willnode.github.io/deobfuscator/"],"category":"web-analysis","description_en":"Browser-based workbench for deobfuscating JavaScript by hand, also hosted on GitHub Pages, that pairs a Monaco editor with step-by-step rewriting and evaluation commands instead of a one-click pipeline. Formatting commands beautify the code and, on a selection or the whole file, decode escaped strings, convert hex numbers, turn bracketed property access into dot notation and rename _0x-style identifiers to short names; evaluation commands push declarations onto a code stack, evaluate a selected expression against it and substitute JSON results, replace captured variables automatically and collapse chains of aliases. The README says the process is not automatic and expects the analyst to know JavaScript.","description_zh":"一个在浏览器中手动反混淆 JavaScript 的工作台，也部署在 GitHub Pages 上，以 Monaco 编辑器搭配逐步改写和求值命令，而非一键式流程。格式化命令可美化代码，并对选区或整个文件解码转义字符串、转换十六进制数字、把方括号属性访问改为点号形式、把 _0x 式标识符改为短名称；求值命令可把声明压入代码栈，在其基础上对选中的表达式求值并用 JSON 结果替换，自动替换捕获到的变量，以及合并层层别名。README 说明这一过程并非自动完成，要求分析者熟悉 JavaScript。","entry_url":"https://awesomerea.org/resources/willnode-deobfuscator/","entry_url_zh":"https://awesomerea.org/zh/resources/willnode-deobfuscator/","evidence_url":"https://github.com/willnode/deobfuscator/blob/313ab0dcc0211e3c662514b4448153963fce22c6/README.md","group":"tools","id":"willnode-deobfuscator","json_url":"https://awesomerea.org/resources/willnode-deobfuscator/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/willnode-deobfuscator/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/willnode-deobfuscator/index.md","name":"Javascript Deobfuscator","name_zh":"willnode JavaScript 手动反混淆编辑器","record_type":"resource","relationship":"foundation","requirements":["No releases or tags; the reviewed master commit of 2023-06-29 is the latest code change, and a CI workflow builds the Vite site on each push to master and deploys it to the gh-pages branch that serves the hosted copy. Running it locally needs Node.js and npm for vite serve or vite build; package.json requires Monaco Editor ^0.39.0, js-beautify ^1.14.8 and Vite ^4.3.9 and declares no Node.js version.","The evaluation commands pass the selected code and the code stack to JavaScript's eval in the page itself, so those parts of the obfuscated script run unsandboxed in the user's browser; the README suggests keeping the browser console open. The string, number and renaming helpers, and the console-only experimental ones, work by regular expressions, and the README warns that they can corrupt complex strings and that hex renaming does not detect name collisions.","Users paste in the script they analyze, and the editor contents are kept only in the tab's sessionStorage. package.json declares MIT, but the repository has no license file and GitHub detects none."],"requirements_zh":["没有发布版或标签；所审阅的 master 分支 2023-06-29 提交是最近一次代码改动，CI 工作流在每次推送到 master 时构建 Vite 站点并部署到 gh-pages 分支，由该分支提供在线版本。本地运行需要 Node.js 和 npm 来执行 vite serve 或 vite build；package.json 依赖 Monaco Editor ^0.39.0、js-beautify ^1.14.8 和 Vite ^4.3.9，未声明 Node.js 版本。","求值命令会把选中的代码和代码栈直接交给页面中的 JavaScript eval 执行，因此混淆脚本的这些部分会在使用者的浏览器中不经沙箱运行；README 建议保持浏览器控制台打开。字符串、数字和重命名辅助功能以及只能从控制台调用的实验功能都基于正则表达式，README 提醒它们可能破坏复杂字符串，十六进制重命名也无法检测命名冲突。","待分析的脚本由使用者粘贴，编辑器内容只保存在当前标签页的 sessionStorage 中。package.json 声明 MIT，但仓库没有许可证文件，GitHub 也未检测到许可证。"],"targets":["website"],"url":"https://github.com/willnode/deobfuscator","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/zombieCraig/ICSim/blob/2b3333ef866987d8adc9c15ff15b9b9189edf85b/meson.build","https://github.com/zombieCraig/ICSim/blob/2b3333ef866987d8adc9c15ff15b9b9189edf85b/Makefile","https://github.com/zombieCraig/ICSim/blob/2b3333ef866987d8adc9c15ff15b9b9189edf85b/setup_vcan.sh","https://github.com/zombieCraig/ICSim/blob/2b3333ef866987d8adc9c15ff15b9b9189edf85b/icsim.c","https://github.com/zombieCraig/ICSim/blob/2b3333ef866987d8adc9c15ff15b9b9189edf85b/controls.c","https://github.com/zombieCraig/ICSim/blob/2b3333ef866987d8adc9c15ff15b9b9189edf85b/lib.c","https://github.com/zombieCraig/ICSim/tree/2b3333ef866987d8adc9c15ff15b9b9189edf85b/data","https://github.com/zombieCraig/ICSim/blob/2b3333ef866987d8adc9c15ff15b9b9189edf85b/LICENSE"],"category":"learning","description_en":"OpenGarages' Instrument Cluster Simulator for practising CAN bus reverse engineering on a Linux virtual CAN interface instead of a car. One SDL window draws a dashboard whose speedometer, turn signals and door-lock indicators react to the CAN frames it sniffs, while a separate controls program turns gamepad or keyboard input into those frames and replays a recorded sample of generic CAN traffic as background noise. In training mode the arbitration IDs and byte positions behind each signal are randomized from a seed shared by both programs, and the highest difficulty level adds further random data to the target messages, so learners have to find the relevant messages themselves.","description_zh":"OpenGarages 开发的仪表盘模拟器，可在 Linux 虚拟 CAN 接口上练习 CAN 总线逆向分析，而无需真车。一个 SDL 窗口绘制仪表盘，其车速表、转向灯和车门锁指示会根据它监听到的 CAN 帧变化；另一个控制程序把手柄或键盘输入转换成这些帧，并回放一段录制的通用 CAN 流量作为背景噪声。训练模式下，两个程序依据共享的随机种子打乱各信号对应的仲裁 ID 和字节位置，最高难度还会在目标报文中加入额外的随机数据，学习者必须自己找出相关报文。","entry_url":"https://awesomerea.org/resources/icsim/","entry_url_zh":"https://awesomerea.org/zh/resources/icsim/","evidence_url":"https://github.com/zombieCraig/ICSim/blob/2b3333ef866987d8adc9c15ff15b9b9189edf85b/README.md","group":"learn","id":"icsim","json_url":"https://awesomerea.org/resources/icsim/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/icsim/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/icsim/index.md","name":"ICSim (Instrument Cluster Simulator)","name_zh":"ICSim 汽车仪表盘 CAN 总线模拟器","record_type":"resource","relationship":"learning","requirements":["Reviewed at the master head of 2025-09-18, which merged a fix for canvas glitches; the changes before it, from December 2023 and January 2024, added the Meson build and cleaned up compiler warnings. There are no tags or releases, tests or CI. The default signal layout is generic, and -m bmw switches some signals to IDs that the source labels for a BMW X1.","Runs on Linux with SocketCAN: the README creates a vcan0 virtual interface by loading the can and vcan kernel modules with sudo, and setup_vcan.sh repeats those commands. Building needs SDL2, SDL2_image and can-utils, which Meson checks for through candump; controls launches canplayer to replay data/sample-can.log and reads data files from ./data/. The README suggests an Xbox-style gamepad, and the source also maps keyboard keys; its troubleshooting notes cover SDL header paths and one Arch Linux report that needed sdl2_gfx.","The repository commits lib.o, a prebuilt x86-64 ELF object for can-utils' lib.c that both the Makefile and Meson link into icsim; the README says to rebuild it from can-utils when it does not link on another architecture. It also ships data/sample-can.log, a recorded log of generic CAN traffic used as background noise, plus PNG, SVG and layered-image artwork; it includes no vehicle firmware or software.","The exercise is to sniff the simulated bus, for example with candump, and infer which IDs and bytes drive each gauge; the controls usage text calls disabling the background traffic with -X cheating for that practice. Difficulty runs from 0 to 2, with 1 as the default, and only level 2 adds random bytes.","GPL-3.0 (LICENSE; meson.build declares GPL-3). lib.c keeps the Volkswagen Group Electronic Research copyright from can-utils, offered under BSD-style terms or GPL-2.0."],"requirements_zh":["审阅基于 master 分支 2025-09-18 的最新提交，该提交合并了一处画面闪烁问题的修复；此前的改动集中在 2023 年 12 月至 2024 年 1 月，加入了 Meson 构建并清理了编译警告。仓库没有标签、发布版本、测试或 CI。默认信号布局是通用的，-m bmw 会把部分信号切换为源码中标注为 BMW X1 的 ID。","需在支持 SocketCAN 的 Linux 上运行：README 用 sudo 加载 can 和 vcan 内核模块来创建 vcan0 虚拟接口，setup_vcan.sh 中是同样的命令。构建需要 SDL2、SDL2_image 和 can-utils，Meson 通过 candump 检查后者；控制程序会调用 canplayer 回放 data/sample-can.log，并从 ./data/ 读取数据文件。README 建议使用 Xbox 式手柄，源码也映射了键盘按键；其故障排除说明涉及 SDL 头文件路径，以及一例 Arch Linux 上需要 sdl2_gfx 的报告。","仓库提交了 lib.o，这是 can-utils 中 lib.c 的预编译 x86-64 ELF 目标文件，Makefile 和 Meson 都会把它链接进 icsim；README 说明在其他架构上无法链接时，应从 can-utils 重新编译。仓库还附带 data/sample-can.log（一段录制的通用 CAN 流量，用作背景噪声）以及 PNG、SVG 和分层图像素材；不含任何车辆固件或软件。","练习方式是监听模拟总线（例如使用 candump），推断哪些 ID 和字节驱动各个仪表；控制程序的用法说明把用 -X 关闭背景流量称为这种练习中的作弊。难度分 0 到 2 级，默认为 1，只有第 2 级会加入随机字节。","GPL-3.0（LICENSE；meson.build 声明 GPL-3）。lib.c 保留了来自 can-utils 的 Volkswagen Group Electronic Research 版权声明，可按 BSD 式条款或 GPL-2.0 使用。"],"targets":["protocol"],"url":"https://github.com/zombieCraig/ICSim","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/nowsecure/frida-trace/blob/9b92c1762373dcfc7458c34fa8f5826606bbcc8b/index.js","https://github.com/nowsecure/frida-trace/blob/9b92c1762373dcfc7458c34fa8f5826606bbcc8b/package.json","https://github.com/nowsecure/frida-trace/blob/9b92c1762373dcfc7458c34fa8f5826606bbcc8b/frida-trace-tools/package.json","https://github.com/nowsecure/frida-trace/blob/9b92c1762373dcfc7458c34fa8f5826606bbcc8b/example/package.json","https://github.com/nowsecure/frida-trace/blob/9b92c1762373dcfc7458c34fa8f5826606bbcc8b/LICENSE.md","https://github.com/nowsecure/frida-trace/pull/40","https://www.npmjs.com/package/frida-trace/v/4.0.1"],"category":"dynamic-analysis","description_en":"JavaScript library for Frida agents that traces native functions from a declarative description: each function is listed with its return type and input and output arguments, including pointers, UTF-8 and UTF-16 strings and byte arrays whose length is bound to another argument or the return value, with conditions such as reading an output pointer only when the call succeeds. It resolves the functions from a module's exports or a vtable, attaches Frida's Interceptor and hands one event per call to callbacks. Helper scripts in the same repository generate trace boilerplate from C headers through libclang.","description_zh":"供 Frida 代理脚本使用的 JavaScript 库，按声明式描述跟踪原生函数：每个函数都列出返回类型及输入、输出参数，参数类型包括指针、UTF-8 与 UTF-16 字符串，以及长度绑定到其他参数或返回值的字节数组，还可设置条件，例如仅在调用成功时读取输出指针。它从模块导出表或虚函数表解析函数，挂接 Frida 的 Interceptor，并为每次调用向回调传递一个事件。同一仓库中的辅助脚本可借助 libclang 从 C 头文件生成跟踪样板代码。","entry_url":"https://awesomerea.org/resources/nowsecure-frida-trace/","entry_url_zh":"https://awesomerea.org/zh/resources/nowsecure-frida-trace/","evidence_url":"https://github.com/nowsecure/frida-trace/blob/9b92c1762373dcfc7458c34fa8f5826606bbcc8b/README.md","group":"tools","id":"nowsecure-frida-trace","json_url":"https://awesomerea.org/resources/nowsecure-frida-trace/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/nowsecure-frida-trace/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/nowsecure-frida-trace/index.md","name":"frida-trace (NowSecure library)","name_zh":"frida-trace（NowSecure 声明式跟踪库）","record_type":"resource","relationship":"foundation","requirements":["Not Frida's own frida-trace command-line tool, which shares the name. The latest npm release, 4.0.1 of 2025-06-16, matches the reviewed main commit 9b92c17 and ports the library to Frida 17; 4.0.0 of January 2024 moved it to ES modules.","It runs inside an agent script that the user writes, compiles (for example with frida-compile) and loads into a process Frida can attach to; it has no command-line interface of its own. Types cover bool, byte, short, int, pointer, byte arrays, UTF-8, UTF-16 and C strings, and the captured values are only as accurate as the signatures the user declares.","The header tools live in frida-trace-tools, version 3.3.0 in the repository and not published on npm; they need Node.js and frida-libclang, and the README still runs them from an older ./bin path. The bundled example host application and agent still depend on frida 16 and frida-trace ^3.0.0. The repository has no tests or CI.","MIT. Instrumentation needs a target process the user is entitled to inspect."],"requirements_zh":["它不是 Frida 自带的同名命令行工具 frida-trace。npm 上最新版本为 4.0.1，发布于 2025-06-16，与所审阅的 main 分支提交 9b92c17 一致，将该库移植到 Frida 17；2024 年 1 月发布的 4.0.0 改为 ES 模块。","它运行在用户自行编写、编译（例如使用 frida-compile）并加载到 Frida 可附加进程中的代理脚本里，本身没有命令行界面。支持的类型包括 bool、byte、short、int、指针、字节数组、UTF-8、UTF-16 和 C 字符串；捕获到的值是否准确，取决于用户声明的函数签名是否正确。","头文件工具位于 frida-trace-tools，仓库中的版本为 3.3.0，未发布到 npm；需要 Node.js 和 frida-libclang，而 README 仍按旧的 ./bin 路径调用它们。仓库附带的示例宿主程序与代理仍依赖 frida 16 和 frida-trace ^3.0.0。仓库没有测试或持续集成。","采用 MIT 许可。插桩所需的目标进程须是用户有权检查的进程。"],"targets":["app","binary"],"url":"https://github.com/nowsecure/frida-trace","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/bytedance/appshark/blob/487fa2175c4a6ccbfb5a330b5e3ed0081de3bfeb/doc/en/overview.md","https://github.com/bytedance/appshark/blob/487fa2175c4a6ccbfb5a330b5e3ed0081de3bfeb/doc/en/how_to_write_rules.md","https://github.com/bytedance/appshark/blob/487fa2175c4a6ccbfb5a330b5e3ed0081de3bfeb/doc/en/argument.md","https://github.com/bytedance/appshark/blob/487fa2175c4a6ccbfb5a330b5e3ed0081de3bfeb/doc/en/result.md","https://github.com/bytedance/appshark/blob/487fa2175c4a6ccbfb5a330b5e3ed0081de3bfeb/doc/en/startup.md","https://github.com/bytedance/appshark/blob/487fa2175c4a6ccbfb5a330b5e3ed0081de3bfeb/doc/en/faq.md","https://github.com/bytedance/appshark/tree/487fa2175c4a6ccbfb5a330b5e3ed0081de3bfeb/config/rules","https://github.com/bytedance/appshark/tree/487fa2175c4a6ccbfb5a330b5e3ed0081de3bfeb/config/tools/platforms","https://github.com/bytedance/appshark/blob/487fa2175c4a6ccbfb5a330b5e3ed0081de3bfeb/build.gradle.kts","https://github.com/bytedance/appshark/blob/487fa2175c4a6ccbfb5a330b5e3ed0081de3bfeb/src/main/kotlin/net/bytedance/security/app/StaticAnalyzeMain.kt","https://github.com/bytedance/appshark/blob/487fa2175c4a6ccbfb5a330b5e3ed0081de3bfeb/LICENSE","https://github.com/bytedance/appshark/releases/tag/v0.1.2"],"category":"android","description_en":"ByteDance's static taint-analysis engine for Android APKs, designed for very large apps, that scans an app against JSON rules naming entry methods, sources, sinks and sanitizers as Jimple signatures, for vulnerability and privacy-compliance review. It works on Soot's Jimple IR and reuses FlowDroid's manifest and resource parsing, but implements its own field-sensitive pointer and taint analysis. Results go to results.json, which records app, component and permission information, deep links and JavaScript bridge interfaces alongside each source-to-sink path, with an HTML page per finding.","description_zh":"字节跳动开发的 Android APK 静态污点分析引擎，面向超大型应用设计：它依据 JSON 规则扫描应用，规则以 Jimple 签名指定入口方法、源、汇和净化器，用于漏洞与隐私合规审查。它基于 Soot 的 Jimple 中间表示，并复用 FlowDroid 的清单与资源解析模块，但指针分析和污点分析均为自行实现，且区分字段。结果写入 results.json，其中记录应用、组件和权限信息、深层链接及 JavaScript 桥接接口，以及每条从源到汇的路径，每项发现另有一个 HTML 页面。","entry_url":"https://awesomerea.org/resources/appshark/","entry_url_zh":"https://awesomerea.org/zh/resources/appshark/","evidence_url":"https://github.com/bytedance/appshark/blob/487fa2175c4a6ccbfb5a330b5e3ed0081de3bfeb/README.md","group":"tools","id":"appshark","json_url":"https://awesomerea.org/resources/appshark/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/appshark/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/appshark/index.md","name":"Appshark","name_zh":"Appshark Android 静态污点分析引擎","record_type":"resource","relationship":"foundation","requirements":["Requires JDK 11; the README says it does not work on JDK 8 or JDK 16 because of dependency compatibility. ./gradlew build -x test produces AppShark-0.1.2-all.jar. Latest release at review: v0.1.2, published 2022-09-22 with prebuilt jars; the reviewed main commit, still versioned 0.1.2, is 123 commits ahead of it, including September 2026 commits that add scan resource budgets, a bounded jadx workspace and validation of untrusted rule graphs. The startup guide still links the v0.1.1 jar.","Input is the APK to analyze, named by apkPath in a JSON5 config passed to the jar, with rules taken from config/rules, which holds seven sample rules such as unZipSlip, PendingIntentMutable and ContentProviderPathTraversal. The repository bundles 18 Android SDK platform stub jars, config/tools/platforms/android-14 through android-33/android.jar (API levels 15 and 21 absent, about 18 to 47 MB each), used as the default SDK path, plus five small compiled test classes; the javaSource option runs jadx from config/tools/jadx/bin, which the repository does not include.","Findings are static source-to-sink paths whose coverage depends on the rules and settings: the argument guide says too short a maxPointerAnalyzeTime can cause false positives and negatives, and the FAQ shows a slice-mode entry missing an aliased path. The README's security notice limits the UI and server to local testing. Apache-2.0."],"requirements_zh":["需要 JDK 11；README 称由于依赖兼容性问题，它无法在 JDK 8 或 JDK 16 上运行。执行 ./gradlew build -x test 可生成 AppShark-0.1.2-all.jar。审阅时最新版本为 v0.1.2，发布于 2022-09-22，附预构建 jar；所审阅的 main 提交版本号仍为 0.1.2，但比该版本多 123 个提交，其中包括 2026 年 9 月加入扫描资源预算、受限的 jadx 工作区以及对不可信规则图进行校验的提交。入门指南仍链接 v0.1.1 的 jar。","输入为待分析的 APK，由传给 jar 的 JSON5 配置中的 apkPath 指定；规则取自 config/rules，其中有 unZipSlip、PendingIntentMutable、ContentProviderPathTraversal 等七条示例规则。仓库自带 18 个 Android SDK 平台存根 jar，即 config/tools/platforms/android-14 至 android-33/android.jar（缺 API 15 和 21，每个约 18 至 47 MB），作为默认 SDK 路径，另有五个很小的已编译测试类；javaSource 选项会从 config/tools/jadx/bin 调用 jadx，而仓库并未包含 jadx。","发现结果是静态的源到汇路径，覆盖范围取决于规则和设置：参数说明称 maxPointerAnalyzeTime 过短可能导致误报和漏报，FAQ 也举例说明切片模式的入口会漏掉别名路径。README 的安全提示称界面与服务端仅限本地测试使用。采用 Apache-2.0 许可。"],"targets":["app"],"url":"https://github.com/bytedance/appshark","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/hluwa/Wallbreaker/blob/f27f2daf2d74c000446a520c8e1c906fb416efb9/setup.py","https://github.com/hluwa/Wallbreaker/blob/f27f2daf2d74c000446a520c8e1c906fb416efb9/__init__.py","https://github.com/hluwa/Wallbreaker/blob/f27f2daf2d74c000446a520c8e1c906fb416efb9/wallbreaker/connection.py","https://github.com/hluwa/Wallbreaker/blob/f27f2daf2d74c000446a520c8e1c906fb416efb9/wallbreaker/agent/command/__init__.py","https://github.com/hluwa/Wallbreaker/blob/f27f2daf2d74c000446a520c8e1c906fb416efb9/agent/package.json","https://github.com/hluwa/Wallbreaker/blob/f27f2daf2d74c000446a520c8e1c906fb416efb9/agent/src/objectkit.ts","https://github.com/hluwa/Wallbreaker/blob/f27f2daf2d74c000446a520c8e1c906fb416efb9/makefile","https://github.com/hluwa/Wallbreaker/blob/f27f2daf2d74c000446a520c8e1c906fb416efb9/LICENSE","https://github.com/hluwa/Wallbreaker/releases/tag/1.0.3","https://pypi.org/project/wallbreaker/1.0.3/","https://frida.re/news/2025/05/17/frida-17-0-0-released/"],"category":"android","description_en":"Frida-based explorer for the live Java heap of a running Android app, loaded as an objection plugin or used through its small Python package. classsearch and objectsearch find loaded classes by pattern and live instances of a class, returning object handles; classdump prints a class's declared fields, static field values and methods, and objectdump prints an instance's field values, can view it as a superclass and lists every entry of a collection or map. Analysts use it to see the runtime data and concrete implementations that static decompilation leaves open.","description_zh":"基于 Frida 的工具，用于查看正在运行的 Android 应用的实时 Java 堆，可作为 objection 插件加载，也可通过其小型 Python 包调用。classsearch 与 objectsearch 按模式查找已加载的类，或查找某个类的存活实例并返回对象句柄；classdump 打印类声明的字段、静态字段值和方法，objectdump 打印实例的字段值，可将其按父类查看，并列出集合或映射中的全部条目。分析者借此查看静态反编译无法确定的运行时数据和具体实现。","entry_url":"https://awesomerea.org/resources/wallbreaker/","entry_url_zh":"https://awesomerea.org/zh/resources/wallbreaker/","evidence_url":"https://github.com/hluwa/Wallbreaker/blob/f27f2daf2d74c000446a520c8e1c906fb416efb9/README.md","group":"tools","id":"wallbreaker","json_url":"https://awesomerea.org/resources/wallbreaker/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/wallbreaker/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wallbreaker/index.md","name":"Wallbreaker","name_zh":"Wallbreaker Java 堆查看工具","record_type":"resource","relationship":"foundation","requirements":["Archived by its owner and read-only. Latest release at review: 1.0.3, tagged and uploaded to PyPI on 2022-05-10 with no release assets; the only later commit adds the GPL-3.0 LICENSE file (2023-03-26).","README installs objection with pip and clones the repository into objection's plugin folder, then loads it with explore -P or plugin load and runs the commands as plugin wallbreaker …. The PyPI package depends on frida and click and ships the command agent as a library; its connection helper attaches through Frida to a USB or remote device by process name or PID, and wallbreaker/main.py defines no command-line entry point. setup.py classifiers list Python 3.4–3.8 on macOS, Windows and Linux.","The target is a running Android app reachable by Frida. The bundled agent.js is compiled from the repository's own TypeScript sources with frida-compile 9 and Frida 14-era typings; it calls the global Java bridge and does not bundle frida-java-bridge, which Frida 17 (May 2025) no longer provides to ordinary scripts.","GPL-3.0. Output is a structural view of objects at one moment in one process, not decompiled source."],"requirements_zh":["仓库已由所有者归档，处于只读状态。审阅时最新版本为 1.0.3，于 2022-05-10 打标签并上传到 PyPI，没有发布附件；此后唯一的提交是添加 GPL-3.0 LICENSE 文件（2023-03-26）。","README 的用法是先用 pip 安装 objection，把仓库克隆到 objection 的插件目录，再用 explore -P 或 plugin load 加载，并以 plugin wallbreaker … 的形式运行命令。PyPI 包依赖 frida 和 click，以库的形式提供命令代理；其连接辅助函数通过 Frida 按进程名或 PID 附加到 USB 或远程设备，wallbreaker/main.py 未定义命令行入口。setup.py 的分类信息列出 macOS、Windows 和 Linux 上的 Python 3.4–3.8。","分析对象是 Frida 可连接的、正在运行的 Android 应用。随附的 agent.js 由仓库自己的 TypeScript 源码经 frida-compile 9 和 Frida 14 时期的类型定义编译而成；它调用全局 Java 桥接，没有打包 frida-java-bridge，而 Frida 17（2025 年 5 月）起普通脚本已不再自带该桥接。","GPL-3.0 许可。输出是某一进程在某一时刻的对象结构视图，而非反编译源码。"],"targets":["app"],"url":"https://github.com/hluwa/Wallbreaker","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/pawitp/protobuf-decoder/blob/7d0b5edecbbbd38c1230ba9301359cc27e373c23/src/App.jsx","https://github.com/pawitp/protobuf-decoder/blob/7d0b5edecbbbd38c1230ba9301359cc27e373c23/src/protobufDecoder.js","https://github.com/pawitp/protobuf-decoder/blob/7d0b5edecbbbd38c1230ba9301359cc27e373c23/src/protobufPartDecoder.jsx","https://github.com/pawitp/protobuf-decoder/blob/7d0b5edecbbbd38c1230ba9301359cc27e373c23/src/ProtobufPart.jsx","https://github.com/pawitp/protobuf-decoder/blob/7d0b5edecbbbd38c1230ba9301359cc27e373c23/package.json","https://github.com/pawitp/protobuf-decoder/blob/7d0b5edecbbbd38c1230ba9301359cc27e373c23/.circleci/config.yml","https://github.com/pawitp/protobuf-decoder/blob/7d0b5edecbbbd38c1230ba9301359cc27e373c23/LICENSE","https://protobuf-decoder.netlify.app/"],"category":"protocol-analysis","description_en":"Pawit Pornkitprasan's React web application for decoding Protocol Buffers data without the original .proto files, offered as a hosted page or run locally, with all decoding done in the browser. Pasted hex or base64 input, or an uploaded file, is split into a table of byte ranges, field numbers, wire types and contents: varints are shown as unsigned, two's-complement and zigzag integers, fixed32 and fixed64 values as integers and floating-point numbers, and length-delimited fields as nested messages when they parse cleanly, otherwise as UTF-8 strings or bytes. It skips a leading gRPC message header and can optionally split a stream of varint length-delimited messages.","description_zh":"Pawit Pornkitprasan 开发的 React 网页应用，用于在没有原始 .proto 文件的情况下解码 Protocol Buffers 数据；既有在线托管页面，也可在本地运行，所有解码都在浏览器中完成。粘贴的十六进制或 base64 数据（也可上传文件）会被拆分成表格，列出字节范围、字段编号、线路类型和内容：varint 同时显示为无符号整数、补码整数和 zigzag 编码整数，fixed32 和 fixed64 显示为整数和浮点数，长度分隔字段若能完整解析则显示为嵌套报文，否则显示为 UTF-8 字符串或字节。它会跳过开头的 gRPC 报文头，还可选择按 varint 长度前缀拆分连续的多条报文。","entry_url":"https://awesomerea.org/resources/pawitp-protobuf-decoder/","entry_url_zh":"https://awesomerea.org/zh/resources/pawitp-protobuf-decoder/","evidence_url":"https://github.com/pawitp/protobuf-decoder/blob/7d0b5edecbbbd38c1230ba9301359cc27e373c23/README.md","group":"tools","id":"pawitp-protobuf-decoder","json_url":"https://awesomerea.org/resources/pawitp-protobuf-decoder/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pawitp-protobuf-decoder/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pawitp-protobuf-decoder/index.md","name":"Protobuf Decoder","name_zh":"Protobuf Decoder 无定义 Protobuf 网页解码器","record_type":"resource","relationship":"foundation","requirements":["No releases or tags; package.json declares a private 0.1.0 package. The reviewed master commit of 2026-10-17 is a Dependabot dependency bump, and the most recent functional changes added file upload in 2024 and varint length-delimited input in 2025. CircleCI runs the Vitest unit tests on Node 20.11 and uploads coverage to Codecov.","The hosted page at protobuf-decoder.netlify.app needs only a browser, and the app states that all decoding is done locally in JavaScript. Running it locally needs Node.js and npm: npm install, then npm start for the Vite development server, or npm run build for a static build.","Decoding is schema-less and heuristic: field names and declared types are not recovered, each length-delimited field is guessed to be a nested message, string or bytes, the source marks repeated-field support as a TODO, and the group wire types are not handled, so decoding stops there and the remaining input is shown as left-over bytes. It only decodes; there is no editing, re-encoding or proxy integration, and users supply their own captured messages.","MIT (Copyright 2019 Pawit Pornkitprasan)."],"requirements_zh":["没有发行版或标签；package.json 声明的是私有的 0.1.0 软件包。所审阅的 2026-10-17 master 提交是 Dependabot 依赖升级，最近的功能性改动是 2024 年加入的文件上传和 2025 年加入的 varint 长度前缀输入。CircleCI 在 Node 20.11 上运行 Vitest 单元测试，并将覆盖率上传到 Codecov。","托管在 protobuf-decoder.netlify.app 的页面只需浏览器即可使用，应用说明所有解码都在本地通过 JavaScript 完成。在本地运行需要 Node.js 和 npm：先运行 npm install，再用 npm start 启动 Vite 开发服务器，或用 npm run build 生成静态构建。","解码不依赖定义文件，属于启发式推断：无法恢复字段名称和声明类型；每个长度分隔字段都要猜测是嵌套报文、字符串还是字节；源码将重复字段支持标为待办；也不处理 group 线路类型，遇到时解码会停止，剩余输入显示为未解析字节。它只负责解码，不能编辑、重新编码，也没有代理集成；待分析的报文需由用户自行获取。","采用 MIT 许可（Copyright 2019 Pawit Pornkitprasan）。"],"targets":["protocol"],"url":"https://github.com/pawitp/protobuf-decoder","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/monkbai/DNN-decompiler/blob/33227a0b34f87c490efc734d667ac56530f5074a/LICENSE","https://github.com/monkbai/DNN-decompiler/blob/33227a0b34f87c490efc734d667ac56530f5074a/COPYING","https://github.com/monkbai/DNN-decompiler/blob/33227a0b34f87c490efc734d667ac56530f5074a/operator_inference/README.md","https://github.com/monkbai/DNN-decompiler/tree/33227a0b34f87c490efc734d667ac56530f5074a/evaluation","https://github.com/monkbai/DNN-decompiler/blob/33227a0b34f87c490efc734d667ac56530f5074a/se_engine.py","https://github.com/monkbai/DNN-decompiler/blob/33227a0b34f87c490efc734d667ac56530f5074a/trace_filter.py","https://www.usenix.org/conference/usenixsecurity23/presentation/liu-zhibo","https://arxiv.org/abs/2210.01075","https://doi.org/10.5281/zenodo.7219867"],"category":"native-analysis","description_en":"Research artifact for the USENIX Security 2023 paper “Decompiling x86 Deep Neural Network Executables”. BTD decompiles x86 executables emitted by the DNN compilers TVM, Glow and NNFusion into model specifications: operator types, network topology, dimensions and parameters such as weights and biases. It splits IDA disassembly into functions, infers each operator's type with a trained classifier over assembly tokens, records Intel Pin traces filtered by taint analysis, recovers dimensions and parameters with a trace-based symbolic execution engine, then rebuilds the model in PyTorch and compares its output with the original executable.","description_zh":"USENIX Security 2023 论文《Decompiling x86 Deep Neural Network Executables》的研究产物。BTD 将 DNN 编译器 TVM、Glow 和 NNFusion 生成的 x86 可执行文件反编译为模型规格：算子类型、网络拓扑、维度以及权重和偏置等参数。它把 IDA 的反汇编结果拆分为函数，用基于汇编词元训练的分类器推断每个算子的类型，用 Intel Pin 记录执行轨迹并经污点分析过滤，借助基于轨迹的符号执行引擎恢复维度和参数，最后在 PyTorch 中重建模型，并将其输出与原可执行文件对比。","entry_url":"https://awesomerea.org/resources/btd-dnn-decompiler/","entry_url_zh":"https://awesomerea.org/zh/resources/btd-dnn-decompiler/","evidence_url":"https://github.com/monkbai/DNN-decompiler/blob/33227a0b34f87c490efc734d667ac56530f5074a/README.md","group":"tools","id":"btd-dnn-decompiler","json_url":"https://awesomerea.org/resources/btd-dnn-decompiler/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/btd-dnn-decompiler/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/btd-dnn-decompiler/index.md","name":"BTD (Bin To DNN)","name_zh":"BTD（Bin To DNN）DNN 可执行文件反编译器","record_type":"resource","relationship":"foundation","requirements":["Research artifact with no tagged releases; the reviewed master commit (2026-03-13) fixes README typos. The paper appears in the USENIX Security 2023 proceedings, arXiv 2210.01075 is the authors' 25-page extended version, and the README reports Available, Functional and Reproduced artifact-evaluation badges.","README prerequisites: Ubuntu 18.04, gcc/g++ 7.5, Python 3.6.9+ with numpy 1.19.5, torch 1.9+, torchvision 0.11.2, fastBPE and tqdm, Intel Pin 3.14, and IDA Pro 7.5 for disassembly. IDA is commercial and not included, so precomputed disassembly is supplied; the authors recommend their Docker image. Their server had 256 GB RAM, and logging and filtering traces for every executable took over a week and nearly 1 TB, so filtered traces are shipped and the rest of the evaluation takes about a day and under 120 GB.","Evaluation inputs are downloaded separately from Dropbox or the Zenodo dataset (DOI 10.5281/zenodo.7219867): 63 executables built from 7 ONNX models with Glow 2020–2022 and TVM v0.7–v0.9.dev at O0 and O3, their disassembly and filtered traces, operator-inference training data and checkpoints, and the Docker image. The repository itself commits scripts, Pin tool sources, per-executable JSON metadata and a cat test image stored as input tensors in cat.bin and cat_transpose.bin.","Scope is x86 CPU executables from the evaluated compiler versions; the main evaluation covers TVM and Glow, with NNFusion handled by separate scripts. Per-model decompilation scripts under evaluation/ serve as the interface rather than a general command-line tool.","HKUST Academic Software License (LICENSE, COPYING): academic or nonprofit researchers may use, copy and modify it for educational or academic research only, and publications must include the stated acknowledgment; GitHub reports no SPDX license."],"requirements_zh":["研究产物，没有带标签的发布版本；所审阅的 master 分支提交（2026-03-13）修正了 README 中的错别字。论文收录于 USENIX Security 2023 论文集，arXiv 2210.01075 是作者 25 页的扩展版本；README 称该产物获得 Available、Functional 和 Reproduced 三项产物评审徽章。","README 列出的前提：Ubuntu 18.04、gcc/g++ 7.5、Python 3.6.9+（含 numpy 1.19.5、torch 1.9+、torchvision 0.11.2、fastBPE 和 tqdm）、Intel Pin 3.14，以及用于反汇编的 IDA Pro 7.5。IDA 为商业软件且未随附，因此仓库直接提供预先生成的反汇编结果；作者建议使用其 Docker 镜像。作者服务器配有 256 GB 内存，为全部可执行文件记录并过滤轨迹耗时一周以上、占用近 1 TB，因此改为提供过滤后的轨迹，其余评测约需一天、占用不到 120 GB。","评测输入需从 Dropbox 或 Zenodo 数据集（DOI 10.5281/zenodo.7219867）另行下载：由 7 个 ONNX 模型经 Glow 2020–2022 与 TVM v0.7–v0.9.dev（O0 和 O3）编译出的 63 个可执行文件、其反汇编结果和过滤后的轨迹、算子推断训练数据与检查点，以及 Docker 镜像。仓库本身只提交脚本、Pin 工具源码、各可执行文件的 JSON 元数据，以及以输入张量形式存于 cat.bin 和 cat_transpose.bin 的一张猫测试图片。","适用范围是所评测编译器版本生成的 x86 CPU 可执行文件；主要评测覆盖 TVM 和 Glow，NNFusion 由单独的脚本处理。evaluation/ 下按模型编写的反编译脚本即为使用接口，并没有通用的命令行工具。","香港科技大学 Academic Software License（LICENSE、COPYING）：仅允许学术或非营利研究人员为教育或学术研究目的使用、复制和修改，发表成果时须附上指定的致谢；GitHub 未识别出 SPDX 许可证。"],"targets":["binary"],"url":"https://github.com/monkbai/DNN-decompiler","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/PabloSoage/opendash/blob/7c8d72953d8060f2dc49e606963e1d103eec64d9/README.md","https://github.com/PabloSoage/opendash/blob/7c8d72953d8060f2dc49e606963e1d103eec64d9/core/src/frame.rs","https://github.com/PabloSoage/opendash/blob/7c8d72953d8060f2dc49e606963e1d103eec64d9/core/src/h4.rs","https://github.com/PabloSoage/opendash/blob/7c8d72953d8060f2dc49e606963e1d103eec64d9/core/tests/protocol.rs","https://github.com/PabloSoage/opendash/blob/7c8d72953d8060f2dc49e606963e1d103eec64d9/.github/workflows/ci.yml","https://github.com/PabloSoage/opendash/blob/7c8d72953d8060f2dc49e606963e1d103eec64d9/LICENSE","https://github.com/PabloSoage/opendash/releases/tag/v0.4.2-beta"],"category":"reconstruction-cases","description_en":"Speaks the undocumented protocol of the Scanmatik SM3, a J2534 vehicle interface that otherwise talks only to its own Windows software, and exposes it to an Android phone as an ELM327 bridge with a diagnostics app on top. The author recovered the framing — a 16-byte header with sequence, CRC-based and sum-based check words, opcode and length — by capturing the device's bundled driver and measuring the replies, and docs/protocol.md separates what was established from what is still open. Reported results come from one Opel Astra J over five sessions with the car present.","description_zh":"直接使用 Scanmatik SM3 未公开的协议——这款 J2534 车辆接口原本只与自家 Windows 软件通信——并以 ELM327 桥接的形式提供给 Android 手机，其上还有一个诊断应用。作者通过抓取设备随附驱动的通信并测量响应，恢复了报文结构：包含序号、基于 CRC 与求和的校验字、操作码和长度的 16 字节报头；docs/protocol.md 区分了已确认与仍待解决的部分。所报告的结果来自一辆 Opel Astra J、共五次有车在场的测试。","entry_url":"https://awesomerea.org/resources/opendash-scanmatik-sm3-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/opendash-scanmatik-sm3-protocol-case/","evidence_url":"https://github.com/PabloSoage/opendash/blob/7c8d72953d8060f2dc49e606963e1d103eec64d9/docs/protocol.md","group":"cases","id":"opendash-scanmatik-sm3-protocol-case","json_url":"https://awesomerea.org/resources/opendash-scanmatik-sm3-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/opendash-scanmatik-sm3-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/opendash-scanmatik-sm3-protocol-case/index.md","name":"opendash: reconstructing the Scanmatik SM3 J2534 adapter protocol","name_zh":"opendash：重建 Scanmatik SM3 J2534 适配器协议","record_type":"resource","relationship":"independent-reconstruction","requirements":["Reviewed at the main-branch head of 2026-10-16, one README-only commit after the v0.4.2-beta release. README reports reading identification, standard OBD-II data and GM service 0x22 parameters, and module-driven streaming at about 98.7 Hz per packet, on one Opel Astra J 1.7 CDTI; the ELM327 bridge has been exercised against emulated modules but not yet against the car, and two long recordings stopped early for reasons not yet understood.","Requires the user's own Scanmatik SM3 reached over its Wi-Fi access point. Standard SAE J1979 PIDs ship with the app; richer per-brand catalogues are generated from a GM GDS2 installation the user already has, and README says they are not distributed because the data belongs to GM. No catalogue data, vendor driver, firmware or driving recordings are committed.","The app is read-only by design: README lists the diagnostic services it permits, and requests that write data, control inputs and outputs or routines, clear codes or request security access are refused before reaching the socket. One known actuator command sits behind a settings switch that requires the phone's device lock and is off by default.","Android 8.0+ app built with Gradle, AGP 9.4.1, Kotlin 2.4.20 and JDK 21. A separate Rust core implements framing, check words, ISO-TP and ELM327 handling but is not yet wired into the app, whose Kotlin bridge README says has moved ahead of it. CI runs cargo test, which replays 200 recorded writes and checks the computed check word against what the device sent, and builds the debug APK without the Rust core; Kotlin unit tests exist but are not run in CI.","GPL-3.0 (LICENSE). Scanmatik, GM, GDS2 and Opel remain trademarks of their owners."],"requirements_zh":["在 2026-10-16 的 main 分支最新提交处审阅，该提交位于 v0.4.2-beta 发布之后，只改动了 README。README 报告在一辆 Opel Astra J 1.7 CDTI 上实现了读取识别信息、标准 OBD-II 数据和 GM 0x22 服务参数，以及每个数据包约 98.7 Hz 的模块主动推流；ELM327 桥接已在模拟模块上测试，但尚未在实车上测试，另有两段长时间录制因尚不明确的原因提前中止。","需要使用者自己的 Scanmatik SM3，并通过其 Wi-Fi 热点连接。标准 SAE J1979 PID 随应用提供；更丰富的各品牌参数目录由使用者已有的 GM GDS2 安装生成，README 称因数据属于 GM 而不予分发。仓库未收录任何参数目录数据、厂商驱动、固件或行车录制数据。","应用在设计上只读：README 列出了允许的诊断服务，写入数据、控制输入输出或例程、清除故障码或请求安全访问的请求会在到达套接字前被拒绝。唯一已知的执行器命令位于设置开关之后，需要手机的设备锁验证，且默认关闭。","Android 8.0+ 应用，使用 Gradle、AGP 9.4.1、Kotlin 2.4.20 和 JDK 21 构建。另有一个独立的 Rust 核心实现报文结构、校验字、ISO-TP 与 ELM327 处理，但尚未接入应用；README 称应用中的 Kotlin 桥接已领先于它。CI 运行 cargo test（重放 200 条记录的写入，并将计算出的校验字与设备实际发送的值比对），并在不含 Rust 核心的情况下构建调试版 APK；Kotlin 单元测试虽然存在，但不在 CI 中运行。","采用 GPL-3.0 许可（LICENSE）。Scanmatik、GM、GDS2 与 Opel 仍为其权利人的商标。"],"targets":["protocol"],"url":"https://github.com/PabloSoage/opendash","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/kalil0321/reverse-api-engineer/blob/4e150176ec7c50c960d23e35bd3d2c5b82931528/pyproject.toml","https://github.com/kalil0321/reverse-api-engineer/blob/4e150176ec7c50c960d23e35bd3d2c5b82931528/CHANGELOG.md","https://github.com/kalil0321/reverse-api-engineer/blob/4e150176ec7c50c960d23e35bd3d2c5b82931528/LICENSE","https://github.com/kalil0321/reverse-api-engineer/blob/4e150176ec7c50c960d23e35bd3d2c5b82931528/src/reverse_api/prompts/engineer/system.md","https://github.com/kalil0321/reverse-api-engineer/blob/4e150176ec7c50c960d23e35bd3d2c5b82931528/.github/workflows/ci.yml","https://github.com/kalil0321/reverse-api-engineer/blob/4e150176ec7c50c960d23e35bd3d2c5b82931528/scripts/validation/README.md","https://github.com/kalil0321/reverse-api-engineer/tree/4e150176ec7c50c960d23e35bd3d2c5b82931528/examples","https://github.com/kalil0321/reverse-api-engineer/releases/tag/v0.14.0","https://pypi.org/project/reverse-api-engineer/0.14.0/"],"category":"agent-workflows","description_en":"Python CLI that turns the HTTP traffic a website actually produces into a typed API client. A browser session, driven by the user through Playwright or by an AI agent through Playwright or Chrome DevTools MCP servers or Vercel's agent-browser CLI, is recorded to a HAR file; a coding agent run through the Claude Agent SDK, OpenCode, Cursor or GitHub Copilot then reads the capture and writes a client, README and usage example in one of ten languages. A separate collector mode gathers structured JSON/CSV data with web search and fetch.","description_zh":"把网站实际产生的 HTTP 流量转换为带类型 API 客户端的 Python 命令行工具。浏览器会话可由用户通过 Playwright 操作，也可由 AI 智能体借助 Playwright 或 Chrome DevTools MCP 服务、或 Vercel 的 agent-browser 命令行来驱动，并记录为 HAR 文件；随后由经 Claude Agent SDK、OpenCode、Cursor 或 GitHub Copilot 运行的编码智能体读取该记录，以十种语言之一编写客户端、README 和用法示例。另有独立的 collector 模式，借助网页搜索与抓取收集 JSON/CSV 结构化数据。","entry_url":"https://awesomerea.org/resources/reverse-api-engineer/","entry_url_zh":"https://awesomerea.org/zh/resources/reverse-api-engineer/","evidence_url":"https://github.com/kalil0321/reverse-api-engineer/blob/4e150176ec7c50c960d23e35bd3d2c5b82931528/README.md","group":"agents","id":"reverse-api-engineer","json_url":"https://awesomerea.org/resources/reverse-api-engineer/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/reverse-api-engineer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/reverse-api-engineer/index.md","name":"Reverse API Engineer","name_zh":"Reverse API Engineer 网站 API 客户端生成智能体","record_type":"resource","relationship":"independent-agent-integration","requirements":["Reviewed at main commit 4e15017 (2026-10-26). The latest release is v0.14.0, published on GitHub and PyPI on 2026-09-23; the changelog's unreleased section adds security dependency updates. pyproject marks the project beta and requires Python 3.11+, the README supports Linux, Apple Silicon macOS and 64-bit Windows because of its cryptography dependency, and CI runs ruff, mypy and pytest on Linux, macOS and Windows with Python 3.11 to 3.13.","Agent mode launches its browser tooling through npx, so it needs Node.js; the chrome-mcp provider drives the user's real Chrome with existing sessions and cookies and needs Chrome 146+ and Node.js 20.19+. Manual mode needs the [manual] extra and a Playwright Chromium. Generation needs a model backend: the default SDK is the Claude Agent SDK with Sonnet 4.6, and the README asks for an API key for agent mode, while OpenCode starts with a free default model and can use locally installed Ollama models that support tool calling and a 64k+ context.","The input is traffic from sites the user browses. The engineer prompt tells the model to hardcode every credential, cookie, token and session value found in the HAR, so captures and generated clients must be handled as secrets. The README warns that generated code runs locally and should be reviewed before it is executed, and that sites with aggressive bot detection may block capture; generated clients call undocumented internal endpoints that can change, and their use stays subject to each site's terms.","The examples directory holds generated clients for public endpoints of Apple and Uber careers, Ashby job boards, AutoScout24 listings, IKEA's catalog and Mintlify's documentation assistant. An optional local check generates a client for a fixture website and verifies it against changed live responses. MIT license. Its RAE abbreviation stands for Reverse API Engineer."],"requirements_zh":["审阅对象为 main 分支提交 4e15017（2026-10-26）。最新版本为 v0.14.0，于 2026-09-23 同时发布在 GitHub 和 PyPI；更新日志的未发布部分新增了若干安全相关的依赖升级。pyproject 将项目标为 beta，要求 Python 3.11+；由于 cryptography 依赖的限制，README 只支持 Linux、Apple Silicon macOS 和 64 位 Windows。CI 在 Linux、macOS 和 Windows 上以 Python 3.11 至 3.13 运行 ruff、mypy 和 pytest。","智能体模式通过 npx 启动浏览器工具，因此需要 Node.js；chrome-mcp 方式会驱动用户真实的 Chrome，沿用已有会话和 Cookie，需要 Chrome 146+ 和 Node.js 20.19+。手动模式需要安装 [manual] 扩展和 Playwright Chromium。生成代码需要模型后端：默认 SDK 为 Claude Agent SDK，默认模型为 Sonnet 4.6，README 说明智能体模式需要 API 密钥；OpenCode 默认使用一个免费模型，也可使用本地已安装、支持工具调用且上下文不少于 64k 的 Ollama 模型。","输入是用户所浏览网站产生的流量。engineer 提示词要求模型把 HAR 中出现的所有凭据、Cookie、令牌和会话数据直接写入代码，因此抓包文件和生成的客户端都必须当作机密处理。README 提醒生成的代码在本地运行，执行前应先审阅，并指出反爬虫检测严格的网站可能阻止抓取；生成的客户端调用的是可能随时变化的未公开内部接口，使用时仍须遵守各网站的条款。","examples 目录收录了针对 Apple 与 Uber 招聘页面、Ashby 职位看板、AutoScout24 车源列表、IKEA 商品目录和 Mintlify 文档助手公开接口生成的客户端。另有一项可选的本地检查：为一个测试网站生成客户端，并在服务器响应改变后验证其结果。采用 MIT 许可证。其缩写 RAE 指 Reverse API Engineer。"],"targets":["website"],"url":"https://github.com/kalil0321/reverse-api-engineer","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/T14Raptor/go-fAST/blob/379695448820483158b38ed4e6860d347fc5fccc/go.mod","https://github.com/T14Raptor/go-fAST/blob/379695448820483158b38ed4e6860d347fc5fccc/.github/workflows/verify-generated.yml","https://github.com/T14Raptor/go-fAST/tree/379695448820483158b38ed4e6860d347fc5fccc/ast/ext","https://github.com/T14Raptor/go-fAST/blob/379695448820483158b38ed4e6860d347fc5fccc/parser/parser.go","https://github.com/T14Raptor/go-fAST/blob/379695448820483158b38ed4e6860d347fc5fccc/LICENSE","https://github.com/T14Raptor/go-fAST/releases/tag/v0.1.0","https://proxy.golang.org/github.com/t14raptor/go-fast/@v/v0.1.0.info","https://gofast.disasm.dev/"],"category":"web-analysis","description_en":"Go library for parsing, traversing, transforming and regenerating JavaScript abstract syntax trees, which its README presents for code analysis, obfuscation and deobfuscation. Its parser builds on goja's parsing code, a generated SWC-style visitor API supports depth-first rewriting and cloning of nodes, a resolver tracks scopes and bindings, the ext package adds node-removal, side-effect and value-inference helpers, and a generator prints JavaScript from the tree. The documentation calls it a lightweight, faster alternative to Babel that deliberately omits parent, sibling and reference maps and automated mutation helpers.","description_zh":"一个用 Go 编写的库，用于解析、遍历、转换和重新生成 JavaScript 抽象语法树，README 将其定位于代码分析以及混淆与反混淆。其解析器基于 goja 的解析代码，自动生成的 SWC 式访问者 API 支持深度优先地改写和克隆节点，解析器（resolver）跟踪作用域与绑定，ext 包提供删除节点、判断副作用和推断取值的辅助函数，代码生成器则从语法树输出 JavaScript。文档称它是比 Babel 更轻、更快的替代品，并刻意省去了父节点、兄弟节点和引用映射以及自动化的修改辅助功能。","entry_url":"https://awesomerea.org/resources/go-fast-js-ast/","entry_url_zh":"https://awesomerea.org/zh/resources/go-fast-js-ast/","evidence_url":"https://github.com/T14Raptor/go-fAST/blob/379695448820483158b38ed4e6860d347fc5fccc/README.md","group":"tools","id":"go-fast-js-ast","json_url":"https://awesomerea.org/resources/go-fast-js-ast/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/go-fast-js-ast/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/go-fast-js-ast/index.md","name":"go-fAST","name_zh":"go-fAST JavaScript 语法树库","record_type":"resource","relationship":"foundation","requirements":["Latest tag at review: v0.1.0, created 2026-07-02 and served by the Go module proxy under the lowercase module path github.com/t14raptor/go-fast; there are no GitHub releases. The reviewed master commit of 2026-10-04 is 11 commits ahead of that tag, with parser, resolver and generator fixes and a new PreserveParens parse option.","go.mod requires Go 1.24 and depends only on nukilabs/ftoa and nukilabs/unicodeid. Unit tests cover the parser, generator, resolver and statement helpers, but the only CI workflow checks that the generated union, visitor and clone files are up to date and does not run them. Guides and example visitors, such as unrolling sequence expressions and expanding variable declarations, are on the project's GitBook documentation site.","It is a library rather than a ready-made deobfuscator: users write their own visitors for the transformations they need and supply the JavaScript they analyze. The README does not state which ECMAScript versions it parses.","MIT (copyright 2024 T14Raptor); the README credits goja for parsing code and SWC for the visitor API design."],"requirements_zh":["审阅时最新标签为 v0.1.0，创建于 2026-07-02，Go 模块代理以小写模块路径 github.com/t14raptor/go-fast 提供该版本；GitHub 上没有发布版。所审阅的 master 分支 2026-10-04 提交比该标签多 11 个提交，包括解析器、作用域解析器和代码生成器的修复，以及新的 PreserveParens 解析选项。","go.mod 要求 Go 1.24，只依赖 nukilabs/ftoa 和 nukilabs/unicodeid。单元测试覆盖解析器、代码生成器、作用域解析器和语句辅助函数，但唯一的 CI 工作流只检查自动生成的 union、visitor 和 clone 文件是否最新，并不运行这些测试。使用指南和示例访问者（如展开逗号序列表达式、拆分变量声明）位于项目的 GitBook 文档站点。","它是一个库而非现成的反混淆工具：使用者需针对所需的转换自行编写访问者，并自备待分析的 JavaScript。README 未说明它能解析哪些 ECMAScript 版本。","采用 MIT 许可证（版权 2024 T14Raptor）；README 致谢 goja 提供解析代码、SWC 提供访问者 API 设计。"],"targets":["website"],"url":"https://github.com/T14Raptor/go-fAST","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/Leonezz/openbaud/blob/f3ebd8976ebeae071dbfb95a1f09c58204bbd57f/plugins/openbaud/README.md","https://github.com/Leonezz/openbaud/blob/f3ebd8976ebeae071dbfb95a1f09c58204bbd57f/plugins/openbaud/skills/openbaud/SKILL.md","https://github.com/Leonezz/openbaud/blob/f3ebd8976ebeae071dbfb95a1f09c58204bbd57f/crates/openbaud/src/mcp/tools.rs","https://github.com/Leonezz/openbaud/blob/f3ebd8976ebeae071dbfb95a1f09c58204bbd57f/examples/pv-demo/README.md","https://github.com/Leonezz/openbaud/blob/f3ebd8976ebeae071dbfb95a1f09c58204bbd57f/examples/pv-demo/protocol.md","https://github.com/Leonezz/openbaud/tree/f3ebd8976ebeae071dbfb95a1f09c58204bbd57f/examples/pv-demo/captures","https://github.com/Leonezz/openbaud/tree/f3ebd8976ebeae071dbfb95a1f09c58204bbd57f/plugins/openbaud/bin/darwin-arm64","https://github.com/Leonezz/openbaud/blob/f3ebd8976ebeae071dbfb95a1f09c58204bbd57f/Cargo.toml","https://github.com/Leonezz/openbaud/blob/f3ebd8976ebeae071dbfb95a1f09c58204bbd57f/rust-toolchain.toml","https://github.com/Leonezz/openbaud/blob/f3ebd8976ebeae071dbfb95a1f09c58204bbd57f/.github/workflows/ci.yml","https://github.com/Leonezz/openbaud/blob/f3ebd8976ebeae071dbfb95a1f09c58204bbd57f/.github/workflows/release.yml","https://github.com/Leonezz/openbaud/blob/f3ebd8976ebeae071dbfb95a1f09c58204bbd57f/LICENSE","https://github.com/Leonezz/openbaud/releases/tag/v0.3.0"],"category":"agent-mcp","description_en":"Rust MCP server and Codex plugin that gives coding agents audited access to local serial devices, from identifying ports by USB metadata and sending framed requests to recording every received and transmitted byte in lossless .obcap captures. Device behaviour confirmed during exploration is kept as YAML device profiles, typed commands and workflows that validate checksums and decode scalars, bit fields and record arrays, and the same commands can be replayed against a capture without hardware. Its worked demo decodes OBP/1, a small binary protocol the author wrote for an ESP32-S3 test board, not an existing vendor protocol.","description_zh":"以 Rust 编写的 MCP 服务器兼 Codex 插件，为编程智能体提供可审计的本地串口设备访问：按 USB 元数据识别端口、发送分帧请求，并把收发的每个字节记录到无损的 .obcap 捕获文件中。探索中确认的设备行为保存为 YAML 设备配置、类型化命令和工作流，可校验校验和并解码标量、位字段和记录数组；同样的命令还能在没有硬件时对捕获文件重放。其完整演示解码的是作者为 ESP32-S3 测试板编写的小型二进制协议 OBP/1，而非现有的厂商协议。","entry_url":"https://awesomerea.org/resources/openbaud-serial-device-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/openbaud-serial-device-mcp/","evidence_url":"https://github.com/Leonezz/openbaud/blob/f3ebd8976ebeae071dbfb95a1f09c58204bbd57f/README.md","group":"agents","id":"openbaud-serial-device-mcp","json_url":"https://awesomerea.org/resources/openbaud-serial-device-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/openbaud-serial-device-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/openbaud-serial-device-mcp/index.md","name":"OpenBaud","name_zh":"OpenBaud 串口设备 MCP 服务器","record_type":"resource","relationship":"independent-agent-integration","requirements":["A young project: the repository was created on 2026-08-23 and had 48 commits at the reviewed v0.3.0 release commit of 2026-10-09. Cargo.toml declares version 0.3.0 and rust-toolchain.toml pins Rust 1.96.0. The README and plugin guide document installation only for Codex, through codex plugin marketplace add with the stable branch or a release archive; the server itself runs as openbaud mcp over stdio, and no other MCP client is documented.","The v0.3.0 release provides plugin archives for macOS ARM64 and Intel, Linux x64 and ARM64, Windows x64 and a universal bundle, each with a SHA-256 file. The Node launcher needs Node.js 18+, and macOS binaries are ad-hoc signed but not notarized. A source checkout commits only the project's own macOS ARM64 runtime build, plugins/openbaud/bin/darwin-arm64/openbaud with a SHA-256 sidecar; other hosts build their runtime with plugins/openbaud/scripts/build-runtime and a Rust toolchain.","Requires the user's own serial or USB-serial hardware. MCP tools cover listing and opening ports, raw read, send and request, running stored commands and workflows, captures, frame diagnosis and session statistics. Raw writes and device commands are marked potentially destructive, writes go to an append-only audit log, commands declared risk: danger need explicit acknowledgement, and commands with requires preconditions are refused until the session has established that device state. The README warns that serial writes can reconfigure or actuate hardware and advises starting unknown devices read-only.","The example workspace holds a real OBP/1 request/response capture recorded from the author's ESP32-S3 board on 2026-08-24, whose radar points are generated by test firmware and flagged simulated_scene on the wire, and further captures whose notes describe a serial protocol tester sweep of AT, ELM327 OBD-II, Marlin, GPS NMEA and particulate-sensor framings. The reviewed tree contains no firmware, including that test firmware, and the media/pv directory the README cites for the demo video source is absent at this commit. CI runs Clippy, package validation, tests, native builds and MCP smoke tests on the five supported hosts.","MIT (LICENSE, Cargo.toml). The bundled skill tells agents to use OpenBaud's tools instead of ad-hoc shell serial access and to record verified behaviour as reusable commands; these are the project's own workflow rules."],"requirements_zh":["这是一个很新的项目：仓库创建于 2026-08-23，截至 2026-10-09 的所审 v0.3.0 发布提交共有 48 次提交。Cargo.toml 声明版本为 0.3.0，rust-toolchain.toml 固定使用 Rust 1.96.0。README 和插件指南只记载了面向 Codex 的安装方式，即通过 codex plugin marketplace add 使用 stable 分支或发布归档；服务器本身以 openbaud mcp 经 stdio 运行，未说明其他 MCP 客户端的用法。","v0.3.0 发布版提供 macOS ARM64 与 Intel、Linux x64 与 ARM64、Windows x64 的插件归档以及一个通用包，均附 SHA-256 文件。Node 启动器需要 Node.js 18+，macOS 二进制仅为临时签名，尚未公证。源码检出中只提交了项目自己构建的 macOS ARM64 运行时 plugins/openbaud/bin/darwin-arm64/openbaud 及其 SHA-256 附属文件；其他主机需用 plugins/openbaud/scripts/build-runtime 和 Rust 工具链自行构建。","需要用户自己的串口或 USB 串口硬件。MCP 工具涵盖列出和打开端口、原始读取、发送与请求、运行已保存的命令和工作流、捕获、帧诊断以及会话统计。原始写入和设备命令被标记为可能具有破坏性，写入会记入只追加的审计日志；声明为 risk: danger 的命令需要明确确认，带 requires 前提条件的命令在会话确立相应设备状态之前会被拒绝。README 提醒串口写入可能重新配置或驱动硬件，建议对未知设备先从只读操作开始。","示例工作区收录 2026-08-24 从作者的 ESP32-S3 开发板录得的一次真实 OBP/1 请求与响应，其中雷达点由测试固件生成，并在报文中以 simulated_scene 标明；另有若干捕获文件，其说明记载了用串口协议测试器扫描 AT、ELM327 OBD-II、Marlin、GPS NMEA 和颗粒物传感器等帧格式的过程。所审代码树不含任何固件（包括该测试固件），README 引用的演示视频源码目录 media/pv 在此提交中也不存在。CI 在五种支持的主机上运行 Clippy、打包校验、测试、原生构建和 MCP 冒烟测试。","采用 MIT 许可（LICENSE、Cargo.toml）。随附技能要求智能体使用 OpenBaud 的工具而不是临时的 shell 串口访问，并把验证过的行为记录为可复用命令；这些是项目自身的工作流规则。"],"targets":["protocol"],"url":"https://github.com/Leonezz/openbaud","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/tigard-tools/tigard/blob/0dd58e710374880a3ae988f2ddfeb46f5ec8061d/LICENSE.txt","https://github.com/tigard-tools/tigard/blob/0dd58e710374880a3ae988f2ddfeb46f5ec8061d/tigard.sch","https://github.com/tigard-tools/tigard/blob/0dd58e710374880a3ae988f2ddfeb46f5ec8061d/tigard.kicad_pcb","https://github.com/tigard-tools/tigard/releases/tag/v1.1","https://github.com/tigard-tools/tigard/releases/tag/v1.2"],"category":"firmware","description_en":"Open-hardware board built around the FTDI FT2232H that connects a computer to a target device's UART, SPI, I2C, JTAG and SWD interfaces through level shifters that operate from 1.8 to 5.5 V. One of the chip's two ports is dedicated to UART and the other is shared by the remaining interfaces; switches select the reference voltage and the SPI/JTAG or I2C/SWD wiring, and a logic-analyzer header lets an external analyzer watch the traffic. Tigard has no software of its own: it is designed to work with existing x232H tools, and the README gives settings for reading SPI flash, JTAG debugging with OpenOCD or Black Magic Debug, SWD debugging with OpenOCD, boundary scan, and iCE40 or AVR programming.","description_zh":"以 FTDI FT2232H 为核心的开源硬件板卡，通过工作电压为 1.8–5.5 V 的电平转换器，把计算机连接到目标设备的 UART、SPI、I2C、JTAG 和 SWD 接口。芯片的两个端口中，一个专用于 UART，另一个由其余接口共用；拨动开关用于选择参考电压以及 SPI/JTAG 或 I2C/SWD 接线方式，逻辑分析仪排针则可让外接分析仪观察通信。Tigard 本身不带软件，而是按现有 x232H 工具的支持方式设计；README 给出了读取 SPI 闪存、用 OpenOCD 或 Black Magic Debug 进行 JTAG 调试、用 OpenOCD 进行 SWD 调试、边界扫描，以及为 iCE40 或 AVR 编程的设置方法。","entry_url":"https://awesomerea.org/resources/tigard/","entry_url_zh":"https://awesomerea.org/zh/resources/tigard/","evidence_url":"https://github.com/tigard-tools/tigard/blob/0dd58e710374880a3ae988f2ddfeb46f5ec8061d/README.md","group":"tools","id":"tigard","json_url":"https://awesomerea.org/resources/tigard/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/tigard/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/tigard/index.md","name":"Tigard","name_zh":"Tigard 多协议硬件接口板","record_type":"resource","relationship":"foundation","requirements":["Requires a Tigard board, bought assembled from the sellers the README lists (Crowd Supply, Mouser, 1BitSquared and SecuringHardware.com) or built from the published design, plus physical access and wiring to the target. The README's hookup sequence starts with the voltage switch on VTGT and distinguishes target-powered, Tigard-powered and self-powered setups; for in-circuit SPI work it says to make sure no other device is communicating with the flash chip.","master holds the v1.1 design files for KiCad 5 (schematic, PCB, footprints, 3D models and a render), unchanged since release v1.1 of 2021-09-21 apart from README and .gitignore updates; the newest commit, from 2026-10-08, adds Black Magic Debug to the README. Release v1.2, published 2026-05-29 from a separate v1.2 branch, moves the design to KiCad 9 and attaches Tigard_v1.2.zip, and its notes state no functional difference from v1.1. The repository contains no firmware or host software.","Host tools are separate projects with FT2232H support: USB-serial drivers for UART, flashrom, pyftdi or libmpsse for SPI and I2C, OpenOCD (the README's JTAG and SWD configurations need v0.12+), Black Magic Debug, UrJTAG and the commercial, Windows-only TopJTAG for boundary scan, iceprog, and avrdude, which has built-in Tigard support from 7.1. The README notes FT2232H limits for I2C (controller mode only, no clock stretching, possible conflicts with other controllers) and reports that UrJTAG runs TCK about five times faster than requested.","CC-BY-SA 4.0 (LICENSE.txt, copyright 2020 Franklin Harding), which GitHub does not classify. The README encourages home-built boards but asks their makers to use another color, accurate USB manufacturer descriptors and serial numbers without the TG prefix. Data read from a target keeps its owner's rights."],"requirements_zh":["需要一块 Tigard 板卡：可从 README 列出的渠道（Crowd Supply、Mouser、1BitSquared 和 SecuringHardware.com）购买成品，或按公开设计自行制作；还需能物理接触目标并完成接线。README 的接线步骤要求先把电压开关置于 VTGT，并区分由目标供电、由 Tigard 供电和各自供电三种方式；在电路板上直接操作 SPI 时，README 要求确保没有其他器件同时与闪存芯片通信。","master 分支保存的是 KiCad 5 格式的 v1.1 设计文件（原理图、PCB、封装、3D 模型和渲染图），自 2021-09-21 发布 v1.1 以来，除 README 和 .gitignore 外没有改动；最新提交（2026-10-08）在 README 中加入了 Black Magic Debug。v1.2 于 2026-05-29 从独立的 v1.2 分支发布，把设计迁移到 KiCad 9 并附带 Tigard_v1.2.zip，发布说明称它与 v1.1 在功能上没有差别。仓库不含固件或主机软件。","主机端工具都是支持 FT2232H 的独立项目：UART 使用 USB 串口驱动；SPI 和 I2C 使用 flashrom、pyftdi 或 libmpsse；JTAG 和 SWD 使用 OpenOCD（README 中的配置需要 v0.12+）或 Black Magic Debug；边界扫描使用 UrJTAG，或商业的、仅限 Windows 的 TopJTAG；另有 iceprog，以及自 7.1 版起内置 Tigard 支持的 avrdude。README 指出 FT2232H 在 I2C 上的限制（仅支持控制器模式、不支持时钟延展、可能与总线上其他控制器冲突），并报告 UrJTAG 的 TCK 实际频率约为设定值的五倍。","CC-BY-SA 4.0（LICENSE.txt，版权 2020 Franklin Harding），GitHub 未能识别该许可证类别。README 鼓励自行制作板卡，但要求制作者使用不同颜色、填写准确的 USB 厂商描述符，并使用不以 TG 开头的序列号。从目标读取的数据仍归其所有者。"],"targets":["firmware","protocol"],"url":"https://github.com/tigard-tools/tigard","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/rednaga/axmlprinter/blob/5a8d3e5f37780de48a29acc280c9660e400eceb1/build.gradle","https://github.com/rednaga/axmlprinter/blob/5a8d3e5f37780de48a29acc280c9660e400eceb1/.github/workflows/gradle.yml","https://github.com/rednaga/axmlprinter/tree/5a8d3e5f37780de48a29acc280c9660e400eceb1/src/test/resources","https://github.com/rednaga/axmlprinter/blob/5a8d3e5f37780de48a29acc280c9660e400eceb1/src/main/proto/Resources.proto","https://github.com/rednaga/axmlprinter/blob/5a8d3e5f37780de48a29acc280c9660e400eceb1/LICENSE","https://github.com/rednaga/axmlprinter/releases/tag/v2.0.1","https://github.com/rednaga/axmlprinter/pull/13","https://github.com/rednaga/axmlprinter/issues/8"],"category":"android","description_en":"Java library and command-line tool that parses Android binary XML, such as the compiled AndroidManifest.xml inside an APK, and prints it as readable XML. Red Naga's near-complete rewrite of the Android4ME AXMLPrinter tolerates manipulated files seen in the wild, including out-of-order string tables and mangled start tags, and can write the classic AXML format back out. Since v2.0.0 it also reads the protobuf XML used in Android App Bundles and detects which format it was given.","description_zh":"用于解析 Android 二进制 XML（例如 APK 中编译后的 AndroidManifest.xml）并输出为可读 XML 的 Java 库和命令行工具。它是 Red Naga 对 Android4ME AXMLPrinter 几乎全部重写的版本，能够处理实际样本中被篡改的文件，包括字符串表乱序和起始标签被改写等情况，并可重新写出传统 AXML 格式。自 v2.0.0 起，它还能读取 Android App Bundle 使用的 protobuf 格式 XML，并自动识别输入格式。","entry_url":"https://awesomerea.org/resources/axmlprinter/","entry_url_zh":"https://awesomerea.org/zh/resources/axmlprinter/","evidence_url":"https://github.com/rednaga/axmlprinter/blob/5a8d3e5f37780de48a29acc280c9660e400eceb1/README.md","group":"tools","id":"axmlprinter","json_url":"https://awesomerea.org/resources/axmlprinter/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/axmlprinter/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/axmlprinter/index.md","name":"axmlprinter","name_zh":"axmlprinter Android 二进制 XML 解析器","record_type":"resource","relationship":"foundation","requirements":["Latest release v2.0.1, published 2026-03-25 with a prebuilt jar, is tagged at the reviewed master commit 5a8d3e5. v2.0.0 of 2026-01-16 added read-only protobuf support through a contributed pull request; converting between AXML and protobuf is not supported.","Build with the Gradle wrapper (./gradlew jar) into a self-contained jar run as java -jar axmlprinter-*.jar with a binary XML file and an optional output path, which applies to AXML only. CI builds and tests on JDK 17, and JitPack builds with OpenJDK 17; it depends on protobuf-java 4.34.1 and includes AOSP's Apache-2.0 aapt2 Resources.proto. Framework resource IDs are resolved only for common Android resources.","Input is a single compiled XML file the analyst has already taken from an APK or app bundle, not the archive itself. The tests include binary manifest fixtures named large_from_malware.xml and qihoo_jiagu_issue8.xml, the latter from an issue about a manifest that failed to parse, plus a smaller test.xml.","Apache-2.0, crediting Android4ME's 2008 code alongside Red Naga's."],"requirements_zh":["最新发布版本 v2.0.1 于 2026-03-25 发布并附预编译 jar，其标签正对应所审阅的 master 分支提交 5a8d3e5。2026-01-16 发布的 v2.0.0 通过外部贡献的拉取请求加入了只读的 protobuf 支持；不支持在 AXML 与 protobuf 之间转换。","用 Gradle wrapper（./gradlew jar）构建为自包含 jar，以 java -jar axmlprinter-*.jar 加二进制 XML 文件运行，可选的输出路径只适用于 AXML。CI 在 JDK 17 上构建和测试，JitPack 也使用 OpenJDK 17；依赖 protobuf-java 4.34.1，并收录 AOSP 采用 Apache-2.0 的 aapt2 Resources.proto。框架资源 ID 只能解析常见的 Android 资源。","输入是分析者已从 APK 或 App Bundle 中取出的单个编译后 XML 文件，而非安装包本身。测试附带名为 large_from_malware.xml 和 qihoo_jiagu_issue8.xml 的二进制清单文件，后者来自一个关于清单无法解析的问题报告，另有较小的 test.xml。","采用 Apache-2.0 许可，同时署名 Android4ME 2008 年的代码与 Red Naga。"],"targets":["app"],"url":"https://github.com/rednaga/axmlprinter","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/dstotijn/hetty/blob/8ca6b07b75c2df85e4890b61748f9fbccbf4443c/cmd/hetty/hetty.go","https://github.com/dstotijn/hetty/blob/8ca6b07b75c2df85e4890b61748f9fbccbf4443c/cmd/hetty/cert.go#L13-L45","https://github.com/dstotijn/hetty/tree/8ca6b07b75c2df85e4890b61748f9fbccbf4443c/pkg/proxy/intercept","https://github.com/dstotijn/hetty/tree/8ca6b07b75c2df85e4890b61748f9fbccbf4443c/pkg/filter","https://github.com/dstotijn/hetty/blob/8ca6b07b75c2df85e4890b61748f9fbccbf4443c/Makefile","https://github.com/dstotijn/hetty/blob/8ca6b07b75c2df85e4890b61748f9fbccbf4443c/go.mod","https://github.com/dstotijn/hetty/blob/8ca6b07b75c2df85e4890b61748f9fbccbf4443c/LICENSE","https://github.com/dstotijn/hetty/commit/fcf0e1c51ebbb6ea0cfb1056164ff75bc056685f","https://github.com/dstotijn/hetty/releases/tag/v0.7.0","https://hetty.xyz/docs/getting-started","https://hetty.xyz/docs/guides/intercept"],"category":"web-analysis","description_en":"Open-source HTTP toolkit for security research, which its author aims to make an alternative to Burp Suite Pro. A single Go binary runs a machine-in-the-middle HTTP proxy backed by its own generated root CA, logs proxied requests and responses in per-project databases with search filters and scope rules, and serves a web admin interface. From that interface an analyst can hold requests and responses for manual review, then edit, forward or cancel them, or copy logged requests into a Sender module to edit and resend them.","description_zh":"用于安全研究的开源 HTTP 工具包，作者希望把它做成 Burp Suite Pro 的替代品。单个 Go 程序即可运行一个使用自生成根 CA 的中间人 HTTP 代理，把经过代理的请求和响应记录到按项目划分的数据库中，支持搜索过滤和范围规则，并提供 Web 管理界面。分析者可在界面中拦下请求和响应进行人工检查，再编辑、放行或取消；也可把已记录的请求复制到 Sender 模块，修改后重新发送。","entry_url":"https://awesomerea.org/resources/hetty/","entry_url_zh":"https://awesomerea.org/zh/resources/hetty/","evidence_url":"https://github.com/dstotijn/hetty/blob/8ca6b07b75c2df85e4890b61748f9fbccbf4443c/README.md","group":"tools","id":"hetty","json_url":"https://awesomerea.org/resources/hetty/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/hetty/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hetty/index.md","name":"Hetty","name_zh":"Hetty HTTP 安全研究工具包","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.7.0, published 2022-03-29, with Linux, macOS and Windows builds for x86_64 and arm64; the README also lists Homebrew, snap and Scoop packages and Docker images. The reviewed main commit (2026-06-27) is 14 commits ahead of that release, among them the January 2025 switch from BadgerDB to a single bbolt database file (by default hetty.db in the .hetty folder of the user's home directory). The hetty.xyz getting-started guide still describes the older BadgerDB directory. The README says Hetty is under active development.","Run hetty, open the admin interface on port 8080 and create a project; only then are proxied requests logged. By default the server listens on all interfaces (:8080). On first start Hetty creates a root CA certificate and private key in that .hetty folder. To inspect HTTPS from their own browser, analysts trust that CA (hetty cert install adds it to the system trust store, and optionally to Firefox and Java) or use --chrome, which launches Chrome with the proxy settings applied and certificate errors ignored. Hetty logs only traffic from clients the analyst points at the proxy; the docs recommend the --chrome profile or a browser proxy extension over system-wide proxy settings.","Source builds need Go 1.23 and Yarn: the Makefile builds the Next.js admin interface and embeds it into the Go binary with CGO disabled. The README's link to source-build instructions is still marked as coming soon.","MIT license (© 2019–2025 Hetty Software). The README's feature list covers proxy logs with search, the request sender, interception, scope and project storage."],"requirements_zh":["审阅时最新版本为 v0.7.0，发布于 2022-03-29，提供 x86_64 和 arm64 的 Linux、macOS 及 Windows 构建；README 还列出了 Homebrew、snap、Scoop 软件包和 Docker 镜像。所审阅的 main 提交（2026-06-27）比该版本多 14 个提交，其中包括 2025 年 1 月把 BadgerDB 换成单个 bbolt 数据库文件（默认为用户主目录下 .hetty 文件夹中的 hetty.db）。hetty.xyz 的入门指南仍描述旧的 BadgerDB 目录。README 称 Hetty 仍在积极开发中。","运行 hetty 后，打开 8080 端口上的管理界面并创建项目，之后经过代理的请求才会被记录。服务默认监听所有网络接口（:8080）。首次启动时，Hetty 会在该 .hetty 文件夹中生成根 CA 证书和私钥。如需检查自己浏览器中的 HTTPS 流量，分析者需信任该 CA（hetty cert install 可将其加入系统信任库，并可选加入 Firefox 和 Java 信任库），或使用 --chrome 选项启动一个已配置代理并忽略证书错误的 Chrome。Hetty 只记录分析者设置为使用该代理的客户端流量；文档推荐使用 --chrome 配置或浏览器代理扩展，而不是系统级代理设置。","从源码构建需要 Go 1.23 和 Yarn：Makefile 先构建 Next.js 管理界面，再在禁用 CGO 的情况下把它嵌入 Go 程序。README 中源码构建说明的链接仍标注为“即将提供”。","采用 MIT 许可（© 2019–2025 Hetty Software）。README 的功能列表包括可搜索的代理日志、请求发送器、拦截、范围和项目存储。"],"targets":["website"],"url":"https://github.com/dstotijn/hetty","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/secure-software-engineering/FlowDroid/blob/9bf10349ec6fdceebbcfda2d261a1f23b9e2e439/pom.xml","https://github.com/secure-software-engineering/FlowDroid/blob/9bf10349ec6fdceebbcfda2d261a1f23b9e2e439/.gitmodules","https://github.com/secure-software-engineering/FlowDroid/blob/9bf10349ec6fdceebbcfda2d261a1f23b9e2e439/soot-infoflow-cmd/src/soot/jimple/infoflow/cmd/MainClass.java","https://github.com/secure-software-engineering/FlowDroid/blob/9bf10349ec6fdceebbcfda2d261a1f23b9e2e439/soot-infoflow-android/SourcesAndSinks.txt","https://github.com/secure-software-engineering/FlowDroid/tree/9bf10349ec6fdceebbcfda2d261a1f23b9e2e439/soot-infoflow-android/testAPKs","https://github.com/secure-software-engineering/FlowDroid/tree/9bf10349ec6fdceebbcfda2d261a1f23b9e2e439/soot-infoflow-integration/testAPKs","https://github.com/secure-software-engineering/FlowDroid/blob/9bf10349ec6fdceebbcfda2d261a1f23b9e2e439/LICENSE","https://github.com/secure-software-engineering/FlowDroid/releases/tag/v2.15.1","https://github.com/secure-software-engineering/FlowDroid/releases/tag/v2.13","https://repo1.maven.org/maven2/de/fraunhofer/sit/sse/flowdroid/soot-infoflow-cmd/2.15.1/","https://doi.org/10.1145/2594291.2594299"],"category":"android","description_en":"Static data-flow (taint) analysis for Android apps and Java programs, built on Soot and usable as a command-line tool or as Maven libraries. Given an APK, the Android SDK platforms directory and a definition of sources and sinks, it models component lifecycles and callbacks to build a call graph and reports flows from sensitive sources to sinks; the bundled SourcesAndSinks.txt is a starting point for privacy leaks, and StubDroid summaries model library methods. Options cover inter-component flows from a supplied ICC model file, path reconstruction, implicit flows, reflection and timeouts that trade precision and recall for speed, and the analysis is described in the PLDI 2014 paper “FlowDroid: precise context, flow, field, object-sensitive and lifecycle-aware taint analysis for Android apps”.","description_zh":"面向 Android 应用和 Java 程序的静态数据流（污点）分析工具，基于 Soot 构建，可作为命令行工具使用，也可作为 Maven 库集成。输入 APK、Android SDK 的 platforms 目录以及源点和汇点定义后，它会对组件生命周期和回调建模以构建调用图，并报告从敏感源点流向汇点的数据流；随附的 SourcesAndSinks.txt 可作为分析隐私泄露的起点，StubDroid 摘要则用于对库方法建模。选项涵盖依据用户提供的 ICC 模型文件分析组件间数据流、路径重建、隐式流、反射，以及用精度和召回率换取速度的超时设置；其分析方法发表于 PLDI 2014 论文《FlowDroid: precise context, flow, field, object-sensitive and lifecycle-aware taint analysis for Android apps》。","entry_url":"https://awesomerea.org/resources/flowdroid/","entry_url_zh":"https://awesomerea.org/zh/resources/flowdroid/","evidence_url":"https://github.com/secure-software-engineering/FlowDroid/blob/9bf10349ec6fdceebbcfda2d261a1f23b9e2e439/README.MD","group":"tools","id":"flowdroid","json_url":"https://awesomerea.org/resources/flowdroid/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/flowdroid/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/flowdroid/index.md","name":"FlowDroid","name_zh":"FlowDroid Android 静态污点分析工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v2.15.1, tagged 2026-02-23 and published to Maven Central under de.fraunhofer.sit.sse.flowdroid, including soot-infoflow-cmd-2.15.1-jar-with-dependencies.jar for the command line. GitHub releases since v2.14 attach no files, the last with JARs being v2.13 of 2024-04-02, and the README's Maven example still names 2.12.0. The reviewed develop commit of 2026-09-28 declares 2.16.0-SNAPSHOT.","The command line needs an APK, the Android SDK platforms directory and a sources-and-sinks file, and users supply the apps they analyze. The README says FlowDroid runs on Windows, macOS and Linux and warns that large apps can take very long; options skip static-field or exceptional flows, and additive timeouts for the data-flow, callback-collection and result stages return partial results.","Building needs Maven, a JDK and the current Soot snapshot; the README asks for JDK 11 or above, but the reviewed pom.xml compiles for Java 17 against Soot 4.8.0-SNAPSHOT. The README says the full test suite takes about 30 minutes and also needs JDK 8 with its rt.jar, the ANDROID_JARS variable and the DroidBench submodule, a separate repository of benchmark apps.","The repository commits 25 APKs as test inputs: test apps named after the cases they exercise, such as SourceToSink1.apk and ThreadRunnable.apk, under soot-infoflow-android/testAPKs and soot-infoflow-integration/testAPKs, the deliberately vulnerable InsecureBank.apk, and one hash-named APK whose manifest identifies another developer's app (com.RZStudio.cube). soot-infoflow-android/lib holds JUnit, Hamcrest and protobuf-java JARs.","LGPL-2.1; the README notes that modified versions must be shared under the LGPL. Results depend on the configuration and on the chosen sources and sinks."],"requirements_zh":["审阅时最新版本为 v2.15.1，于 2026-02-23 打标签，并以 de.fraunhofer.sit.sse.flowdroid 发布到 Maven Central，其中包括供命令行使用的 soot-infoflow-cmd-2.15.1-jar-with-dependencies.jar。自 v2.14 起 GitHub 发行版不再附带文件，最后一个附带 JAR 的是 2024-04-02 发布的 v2.13；README 中的 Maven 示例仍写着 2.12.0。所审阅的 2026-09-28 develop 提交声明版本为 2.16.0-SNAPSHOT。","命令行需要 APK、Android SDK 的 platforms 目录和源点汇点定义文件，待分析的应用需由用户自备。README 称 FlowDroid 支持 Windows、macOS 和 Linux，并提醒分析大型应用可能耗时很长；可通过选项跳过静态字段流或异常流，数据流、回调收集和结果收集三个阶段的超时可叠加设置，超时后返回部分结果。","构建需要 Maven、JDK 和最新的 Soot 快照版本；README 要求 JDK 11 及以上，但所审阅的 pom.xml 以 Java 17 为编译目标，并依赖 Soot 4.8.0-SNAPSHOT。README 称完整测试套件约需 30 分钟，另外还需要 JDK 8 及其 rt.jar、ANDROID_JARS 环境变量，以及 DroidBench 子模块（一个单独的基准测试应用仓库）。","仓库提交了 25 个 APK 作为测试输入：soot-infoflow-android/testAPKs 和 soot-infoflow-integration/testAPKs 下以所测场景命名的测试应用（如 SourceToSink1.apk、ThreadRunnable.apk），故意留有漏洞的 InsecureBank.apk，以及一个以哈希值命名、清单显示属于其他开发者应用（com.RZStudio.cube）的 APK。soot-infoflow-android/lib 中包含 JUnit、Hamcrest 和 protobuf-java 的 JAR 文件。","采用 LGPL-2.1 许可；README 说明修改后的版本必须同样以 LGPL 公开。分析结果取决于配置以及所选的源点和汇点。"],"targets":["app"],"url":"https://github.com/secure-software-engineering/FlowDroid","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/BoomerangDecompiler/boomerang/blob/411041305f90d1d7c994f67255b5c03ea8666e60/Changelog.md","https://github.com/BoomerangDecompiler/boomerang/blob/411041305f90d1d7c994f67255b5c03ea8666e60/LICENSE.TERMS","https://github.com/BoomerangDecompiler/boomerang/tree/411041305f90d1d7c994f67255b5c03ea8666e60/data/samples","https://github.com/BoomerangDecompiler/boomerang/tree/411041305f90d1d7c994f67255b5c03ea8666e60/data/signatures","https://github.com/BoomerangDecompiler/boomerang/tree/411041305f90d1d7c994f67255b5c03ea8666e60/data/ssl","https://github.com/BoomerangDecompiler/boomerang/tree/411041305f90d1d7c994f67255b5c03ea8666e60/tests","https://github.com/BoomerangDecompiler/boomerang/releases/tag/v0.5.2"],"category":"native-analysis","description_en":"Fork of the SourceForge Boomerang project, a general machine-code decompiler that translates executables into C. The README lists x86 (IA-32 only), PowerPC and ST20 code in ELF, PE, DOS MZ, DOS/4GW LE and Mach-O files; instruction semantics are defined in SSL specification files, and library signature files plus printf- and scanf-style format strings help recover types. It provides a boomerang-cli command-line tool and a Qt boomerang-gui application, with unit, regression and recompilation test suites.","description_zh":"SourceForge 上 Boomerang 项目的分支，是一款通用的机器码反编译器，可将可执行文件转换为 C 代码。README 列出的支持范围为 ELF、PE、DOS MZ、DOS/4GW LE 和 Mach-O 文件中的 x86（仅 IA-32）、PowerPC 和 ST20 代码；指令语义由 SSL 规格文件定义，库函数签名文件以及 printf、scanf 类格式字符串可辅助恢复类型。它提供 boomerang-cli 命令行工具和基于 Qt 的 boomerang-gui 图形界面，并附有单元、回归和重编译测试套件。","entry_url":"https://awesomerea.org/resources/boomerang-decompiler/","entry_url_zh":"https://awesomerea.org/zh/resources/boomerang-decompiler/","evidence_url":"https://github.com/BoomerangDecompiler/boomerang/blob/411041305f90d1d7c994f67255b5c03ea8666e60/Readme.md","group":"tools","id":"boomerang-decompiler","json_url":"https://awesomerea.org/resources/boomerang-decompiler/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/boomerang-decompiler/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/boomerang-decompiler/index.md","name":"Boomerang Decompiler","name_zh":"Boomerang 机器码反编译器","record_type":"resource","relationship":"foundation","requirements":["Inactive legacy project: the reviewed develop commit of 2020-12-28 is the repository's last push, and the Changelog still marks v0.6.0 as in development. The last release, v0.5.2 (2020-01-11), provides Linux x86_64 and Windows x64 builds, while the README recommends building develop from source.","Building needs a 64-bit OS, a C++17 compiler (GCC 7+, Clang 6+ or MSVC 2017+), CMake 3.13+, Qt5 (5.12+ known to work), Capstone 4.0.1+, GNU bison 3.3+ and flex 2.6+; Python 3 runs the regression tests, which are not supported on Windows. The README documents Linux, macOS 10.13+ with Xcode 10 and Homebrew, and Windows with Visual Studio 2017.","Supply the executable to decompile. x86 support covers 32-bit code only, the v0.6.0 development line removed SPARC support, and the generated C needs analyst review.","data/samples commits about 240 small test binaries for macOS, DOS, ELF, PowerPC, Windows and x86, most named after the test programs in tests/recompilation-tests and tests/sources, plus three Linux distribution builds of the true utility; tests/regression-tests stores the expected decompiler output for them. data/signatures holds hand-written library prototype files, not vendor headers.","BSD-style terms in LICENSE.TERMS, carried over from the University of Queensland, Sun Microsystems and the original authors; GitHub reports no SPDX match."],"requirements_zh":["已停止活跃维护的旧项目：所审阅的 develop 分支提交（2020-12-28）是仓库最后一次推送，Changelog 仍将 v0.6.0 标为开发中。最后一个版本 v0.5.2（2020-01-11）提供 Linux x86_64 和 Windows x64 构建，而 README 建议从源码构建 develop 分支。","构建需要 64 位操作系统、C++17 编译器（GCC 7+、Clang 6+ 或 MSVC 2017+）、CMake 3.13+、Qt5（已知 5.12+ 可用）、Capstone 4.0.1+、GNU bison 3.3+ 和 flex 2.6+；回归测试需 Python 3 运行，且不支持在 Windows 上运行。README 介绍了在 Linux、使用 Xcode 10 和 Homebrew 的 macOS 10.13+，以及使用 Visual Studio 2017 的 Windows 上的构建方法。","需自行提供要反编译的可执行文件。x86 支持仅限 32 位代码，v0.6.0 开发线已移除 SPARC 支持，生成的 C 代码仍需分析人员复核。","data/samples 提交了约 240 个面向 macOS、DOS、ELF、PowerPC、Windows 和 x86 的小型测试二进制，多数以 tests/recompilation-tests 和 tests/sources 中的测试程序命名，另有三个 Linux 发行版构建的 true 工具；tests/regression-tests 保存了它们的预期反编译输出。data/signatures 存放手写的库函数原型文件，并非厂商头文件。","LICENSE.TERMS 中沿用昆士兰大学、Sun Microsystems 及原作者的 BSD 风格条款；GitHub 未识别出对应的 SPDX 许可证。"],"targets":["binary"],"url":"https://github.com/BoomerangDecompiler/boomerang","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/onekey-sec/ubi_reader/blob/5f45e50c813599d689b8cf88e12e7c79dec1728f/pyproject.toml","https://github.com/onekey-sec/ubi_reader/blob/5f45e50c813599d689b8cf88e12e7c79dec1728f/LICENSE","https://github.com/onekey-sec/ubi_reader/blob/5f45e50c813599d689b8cf88e12e7c79dec1728f/ubireader/scripts/ubireader_extract_files.py","https://github.com/onekey-sec/ubi_reader/blob/5f45e50c813599d689b8cf88e12e7c79dec1728f/ubireader/ubifs/decrypt.py","https://github.com/onekey-sec/ubi_reader/blob/5f45e50c813599d689b8cf88e12e7c79dec1728f/tests/test_ubifs_output.py","https://github.com/onekey-sec/ubi_reader/blob/5f45e50c813599d689b8cf88e12e7c79dec1728f/.github/workflows/tests.yml","https://github.com/onekey-sec/ubi_reader/releases/tag/0.8.16","https://pypi.org/project/ubi-reader/0.8.16/","https://github.com/onekey-sec/unblob/blob/0f40c3c6940fa2bcfd2945f519fe8caf99e31e44/pyproject.toml"],"category":"firmware","description_en":"Python module and command-line scripts that read UBI and UBIFS images, including ones inside raw NAND dumps, by locating the first UBI or UBIFS data in a file. They extract files or whole UBI and UBIFS images, list and copy single files, display UBI headers, volume tables and the UBIFS super and master nodes, and search physical erase blocks when debugging failed extractions. ubireader_utils_info also derives the mtd-utils parameters, written as a shell script and config file, needed to rebuild an image to the same specification.","description_zh":"读取 UBI 和 UBIFS 镜像的 Python 模块与命令行脚本，通过定位文件中首个 UBI 或 UBIFS 数据来处理镜像，也适用于原始 NAND 转储。它们可提取文件或完整的 UBI、UBIFS 镜像，列出并复制单个文件，显示 UBI 头部、卷表以及 UBIFS 的超级节点和主节点，并能在提取失败时按条件搜索物理擦除块进行调试。ubireader_utils_info 还能推算出 mtd-utils 参数，生成按相同规格重建镜像所需的 shell 脚本和配置文件。","entry_url":"https://awesomerea.org/resources/ubi-reader/","entry_url_zh":"https://awesomerea.org/zh/resources/ubi-reader/","evidence_url":"https://github.com/onekey-sec/ubi_reader/blob/5f45e50c813599d689b8cf88e12e7c79dec1728f/README.md","group":"tools","id":"ubi-reader","json_url":"https://awesomerea.org/resources/ubi-reader/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ubi-reader/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ubi-reader/index.md","name":"UBI Reader","name_zh":"UBI Reader UBI/UBIFS 镜像读取工具","record_type":"resource","relationship":"foundation","requirements":["Reviewed at main commit 5f45e50 (2026-09-13). The latest release is 0.8.16, published on 2026-09-04 on GitHub and as the ubi-reader package on PyPI; pyproject lists ONEKEY and Jason Pruitt as authors, and unblob's reviewed main commit depends on ubi-reader>=0.8.15. The README's separate testing branch, with repair tools and parameter overrides for broken images, was last updated in 2018.","Requires Python 3.10+, installed from PyPI or from source with Poetry; dependencies are lzallright for LZO, zstandard and cryptography. Creating special files during extraction needs root, and socket files are skipped unless settings.py is changed. Files encrypted with an fscrypt v1 policy are decrypted only when the user supplies the master key.","Input is a UBI or UBIFS image or NAND dump that the user supplies. The repository commits no firmware or flash images; its only test checks the guard against path traversal in extracted file names, and CI runs it with pytest on Python 3.10.","Known issues in the README: the journal is not replayed, so uncommitted data is not recovered, and depending on how the NAND was dumped the data bits may not be error-corrected. Offsets and PEB or LEB sizes can be given when guessing fails. GPL-3.0 (LICENSE; pyproject says GNU GPL); extracted firmware contents keep their vendors' rights."],"requirements_zh":["审阅对象为 main 分支提交 5f45e50（2026-09-13）。最新版本为 0.8.16，于 2026-09-04 发布在 GitHub，并以 ubi-reader 包名发布到 PyPI；pyproject 列出的作者为 ONEKEY 和 Jason Pruitt，所审阅的 unblob main 提交依赖 ubi-reader>=0.8.15。README 提到的独立 testing 分支提供修复工具和用于损坏镜像的参数覆盖功能，最后更新于 2018 年。","需要 Python 3.10+，可从 PyPI 安装，或用 Poetry 从源码安装；依赖包括用于 LZO 的 lzallright、zstandard 和 cryptography。提取时创建特殊文件需要 root 权限，套接字文件默认跳过，除非修改 settings.py。采用 fscrypt v1 策略加密的文件只有在用户提供主密钥时才会被解密。","输入为用户自行提供的 UBI 或 UBIFS 镜像或 NAND 转储。仓库没有提交任何固件或闪存镜像；唯一的测试检查提取文件名时防止路径穿越的保护逻辑，CI 在 Python 3.10 上用 pytest 运行该测试。","README 列出的已知问题：不会重放日志，因此无法恢复未提交的数据；视 NAND 的转储方式而定，数据位可能未经纠错。自动推测失败时可手动指定偏移以及 PEB 或 LEB 大小。采用 GPL-3.0（LICENSE；pyproject 写作 GNU GPL）；提取出的固件内容仍归各厂商所有。"],"targets":["firmware"],"url":"https://github.com/onekey-sec/ubi_reader","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/0cyn/ktool/blob/faed829b838dc4060b7e36f90239a52cd37f2a45/pyproject.toml","https://github.com/0cyn/ktool/blob/faed829b838dc4060b7e36f90239a52cd37f2a45/src/ktool/ktool_script.py","https://github.com/0cyn/ktool/tree/faed829b838dc4060b7e36f90239a52cd37f2a45/tests/src","https://github.com/0cyn/ktool/blob/faed829b838dc4060b7e36f90239a52cd37f2a45/tests/build.ninja","https://github.com/0cyn/ktool/blob/faed829b838dc4060b7e36f90239a52cd37f2a45/.github/workflows/tests.yml","https://github.com/0cyn/ktool/blob/faed829b838dc4060b7e36f90239a52cd37f2a45/LICENSE","https://github.com/0cyn/ktool/blob/faed829b838dc4060b7e36f90239a52cd37f2a45/EXTERNAL_LICENSES/README.md","https://github.com/0cyn/ktool/releases/tag/2.0.0","https://pypi.org/project/k2l/2.0.0/","https://github.com/0cyn/ktool/actions/runs/22801141527"],"category":"native-analysis","description_en":"Pure-Python toolkit for static Mach-O and Objective-C analysis, used as the ktool command line, a terminal browser (ktool open) or a library, with no compiled dependencies. Its commands print load commands, linked libraries, symbol tables, imports and exports, Objective-C classes and protocols, Swift types, function starts and code-signing entitlements, and dump reconstructed Objective-C headers or .tbd stubs. It can also list and extract kexts from kernel caches, split and combine fat binaries, change install names and insert load commands.","description_zh":"纯 Python 编写的 Mach-O 与 Objective-C 静态分析工具包，可作为 ktool 命令行、终端浏览界面（ktool open）或程序库使用，没有需要编译的依赖。其命令可列出加载命令、链接库、符号表、导入与导出符号、Objective-C 类和协议、Swift 类型、函数起始地址以及代码签名权限（entitlements），并可导出重建的 Objective-C 头文件或 .tbd 存根。它还能列出并提取内核缓存中的 kext，拆分和合并 fat 二进制文件，修改安装名并插入加载命令。","entry_url":"https://awesomerea.org/resources/ktool/","entry_url_zh":"https://awesomerea.org/zh/resources/ktool/","evidence_url":"https://github.com/0cyn/ktool/blob/faed829b838dc4060b7e36f90239a52cd37f2a45/README.md","group":"tools","id":"ktool","json_url":"https://awesomerea.org/resources/ktool/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ktool/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ktool/index.md","name":"ktool","name_zh":"ktool Mach-O 与 Objective-C 分析工具包","record_type":"resource","relationship":"foundation","requirements":["Latest PyPI release at review: k2l 2.0.0, uploaded 2024-01-10 and also tagged on GitHub. The reviewed master head of 2026-03-07 declares version 2.1.2 in pyproject.toml, which has not been published. The README marks the terminal GUI as still in active development and lists file and img4 utilities that the reviewed command parser does not define.","Install with pip install k2l: the package requires Python 3.6.2 or later, depends on Pygments and adds windows-curses on Windows. The README reports running it on Windows, macOS, Linux (including ARM64), iOS through iSH, Android through Termux, WebAssembly and Brython. Unless KTOOL_NO_UPDATE_CHECK is set, each run asks PyPI for a newer k2l in a background thread.","Inputs are Mach-O files, fat binaries or kernel caches the user supplies; the repository commits no Mach-O binaries. tests/src holds two small Objective-C test sources, an entitlements plist and libSystem.tbd, a text-based stub of the watchOS libSystem export list of the kind found in Apple's SDKs, used to link the arm64_32 test build; tests/build.ninja compiles the test binaries locally with Xcode's clang, lipo and codesign.","The macOS GitHub Actions workflow builds those test binaries, runs tests/unit.py and exercises the insert, edit, lipo, dump and symbols commands; its run on the reviewed commit failed.","MIT (LICENSE, copyright 2021 _kritanta). EXTERNAL_LICENSES notes that the chained-fixup code is based on the author's code for Binary Ninja's Mach-O view plugin and includes an Apache-2.0 license for it."],"requirements_zh":["审阅时 PyPI 上的最新版本为 k2l 2.0.0，上传于 2024-01-10，GitHub 上也有对应标签。所审 master 分支 2026-03-07 的最新提交在 pyproject.toml 中声明版本 2.1.2，该版本尚未发布。README 注明终端图形界面仍在积极开发中，还列出了 file 和 img4 工具，但所审的命令解析代码中并未定义这两个命令。","用 pip install k2l 安装：该包要求 Python 3.6.2 或更高版本，依赖 Pygments，在 Windows 上还会安装 windows-curses。README 称可在 Windows、macOS、Linux（含 ARM64）、通过 iSH 运行的 iOS、通过 Termux 运行的 Android、WebAssembly 和 Brython 上运行。除非设置 KTOOL_NO_UPDATE_CHECK，每次运行都会在后台线程中向 PyPI 查询是否有更新的 k2l。","输入是使用者自行提供的 Mach-O 文件、fat 二进制文件或内核缓存；仓库未提交任何 Mach-O 二进制文件。tests/src 中有两个小型 Objective-C 测试源码、一个权限 plist，以及 libSystem.tbd——这是 Apple SDK 中常见的那类文本存根，列出 watchOS libSystem 的导出符号，用于链接 arm64_32 测试构建；tests/build.ninja 在本地用 Xcode 的 clang、lipo 和 codesign 编译测试二进制文件。","macOS 上的 GitHub Actions 工作流会构建这些测试二进制文件，运行 tests/unit.py，并测试 insert、edit、lipo、dump 和 symbols 命令；它在所审提交上的运行结果为失败。","MIT（LICENSE，版权 2021 _kritanta）。EXTERNAL_LICENSES 说明链式修复（chained fixup）代码基于作者为 Binary Ninja 的 Mach-O 视图插件编写的代码，并附有相应的 Apache-2.0 许可证。"],"targets":["app","binary"],"url":"https://github.com/0cyn/ktool","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/Qtty/jadx-mcp-server/blob/4e6d890d1d3753d2bb47d492a9523ef98874df85/mcp_server/jadx_mcp.py","https://github.com/Qtty/jadx-mcp-server/blob/4e6d890d1d3753d2bb47d492a9523ef98874df85/mcp_server/requirements.txt","https://github.com/Qtty/jadx-mcp-server/blob/4e6d890d1d3753d2bb47d492a9523ef98874df85/pom.xml","https://github.com/Qtty/jadx-mcp-server/blob/4e6d890d1d3753d2bb47d492a9523ef98874df85/src/main/resources/application.properties"],"category":"agent-mcp","description_en":"MCP server for Android APK analysis in which a Python FastMCP process talks to the agent over stdio and drives a long-lived local JVM daemon that embeds JADX 1.5.6 as a library, so no JADX GUI is involved and a loaded APK stays warm between sessions. Its 23 tools return classes, decompiled sources with size-capped outlines, methods, fields, smali, cross-references and callees read from a dex-derived index, type hierarchies and overrides, exported and deep-link components, the manifest and resource files, plus a whole-APK sweep for framework sink call sites grouped by impact category.","description_zh":"用于 Android APK 分析的 MCP 服务：Python FastMCP 进程通过 stdio 与智能体通信，并驱动一个常驻本地的 JVM 守护进程，后者以库的形式内嵌 JADX 1.5.6，因此无需 JADX 图形界面，已加载的 APK 也能在会话之间保持就绪。它的 23 个工具可返回类列表、超出大小上限时改为大纲的反编译源码、方法、字段、smali、基于 dex 索引的交叉引用与被调函数、类型层次与重写关系、导出组件和深层链接组件、清单与资源文件，并能在整个 APK 中按影响类别扫描框架敏感调用点。","entry_url":"https://awesomerea.org/resources/qtty-jadx-mcp-server/","entry_url_zh":"https://awesomerea.org/zh/resources/qtty-jadx-mcp-server/","evidence_url":"https://github.com/Qtty/jadx-mcp-server/blob/4e6d890d1d3753d2bb47d492a9523ef98874df85/README.md","group":"agents","id":"qtty-jadx-mcp-server","json_url":"https://awesomerea.org/resources/qtty-jadx-mcp-server/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/qtty-jadx-mcp-server/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/qtty-jadx-mcp-server/index.md","name":"JADX MCP Server (Qtty)","name_zh":"JADX MCP Server（Qtty）","record_type":"resource","relationship":"independent-agent-integration","requirements":["The repository has a single commit, dated 2026-08-20, and no releases or tags. Its GitHub description still calls it a pure-Java MCP server; README explains that the MCP layer moved to Python after concurrent tool calls hung the Java SDK's transport. Unlike JADX-AI-MCP, it uses no JADX GUI plugin.","Building needs Java 17+ (README says it is built and run on 21) and Maven 3.6+ for the Spring Boot daemon jar; the MCP layer needs Python 3.10+ with the pinned mcp 1.27.2 and httpx 0.27.2. The MCP client launches mcp_server/jadx_mcp.py, which starts the daemon on first use. The daemon binds 127.0.0.1:8765 with a 24 GB default heap and keeps one APK loaded by default; README puts a large APK at about 26 GB.","Input is an APK the analyst supplies. List and source tools are capped by default to bound response size, and README says the sink sweep is blind to reflection and to wrappers that rename the operation. The committed test fixture misc/DivaApplication.apk is the DIVA deliberately vulnerable training app; tests needing a larger production APK skip without it, and README reports 92 run and 4 skipped.","No license file: README only notes that the JADX library is Apache-2.0, so the server's own code states no reuse terms. README frames the tool for defensive security analysis and demonstrates it with Claude."],"requirements_zh":["仓库只有一次提交，日期为 2026-08-20，没有发布版本或标签。其 GitHub 简介仍称它是纯 Java 的 MCP 服务；README 解释说，由于并发工具调用会让 Java SDK 的传输层卡死，MCP 层已改用 Python。与 JADX-AI-MCP 不同，它不使用 JADX 图形界面插件。","构建 Spring Boot 守护进程 jar 需要 Java 17+（README 称在 21 上构建和运行）和 Maven 3.6+；MCP 层需要 Python 3.10+，以及固定版本的 mcp 1.27.2 和 httpx 0.27.2。MCP 客户端启动 mcp_server/jadx_mcp.py，后者在首次使用时启动守护进程。守护进程绑定 127.0.0.1:8765，默认堆上限 24 GB，默认只保留一个已加载的 APK；README 称一个大型 APK 约占 26 GB。","输入是分析者自备的 APK。列表和源码类工具默认设有上限，以控制响应大小；README 指出敏感调用扫描无法发现反射调用和改名封装的操作。仓库提交的测试样本 misc/DivaApplication.apk 是刻意含漏洞的 DIVA 练习应用；需要更大生产 APK 的测试在缺少该文件时会跳过，README 报告 92 项运行、4 项跳过。","没有许可证文件：README 只说明 JADX 库采用 Apache-2.0，因此服务本身的代码未声明复用条款。README 将其定位为防御性安全分析工具，并以 Claude 演示其用法。"],"targets":["app"],"url":"https://github.com/Qtty/jadx-mcp-server","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/ssut/payload-dumper-go/blob/c3a50ba8d784764c06143c1f82971cd81a77f9d6/README.md#L11-L25","https://github.com/ssut/payload-dumper-go/blob/c3a50ba8d784764c06143c1f82971cd81a77f9d6/README.md#L64-L102","https://github.com/ssut/payload-dumper-go/blob/c3a50ba8d784764c06143c1f82971cd81a77f9d6/CHANGELOG.md","https://github.com/ssut/payload-dumper-go/blob/c3a50ba8d784764c06143c1f82971cd81a77f9d6/go.mod","https://github.com/ssut/payload-dumper-go/blob/c3a50ba8d784764c06143c1f82971cd81a77f9d6/Dockerfile","https://github.com/ssut/payload-dumper-go/blob/c3a50ba8d784764c06143c1f82971cd81a77f9d6/payload/payload_test.go","https://github.com/ssut/payload-dumper-go/blob/c3a50ba8d784764c06143c1f82971cd81a77f9d6/payload/e2e_real_test.go","https://github.com/ssut/payload-dumper-go/blob/c3a50ba8d784764c06143c1f82971cd81a77f9d6/LICENSE","https://github.com/ssut/payload-dumper-go/releases/tag/2.1.0"],"category":"firmware","description_en":"Go command-line tool and library that extracts partition images from Android A/B OTA payloads, reading either a raw payload.bin or the OTA zip that contains it in place. It decompresses operations in parallel, can list partitions or dump only selected ones, and verifies operation data, source images and final images with SHA-256, exiting non-zero on any mismatch. Incremental (delta) payloads are applied onto previously extracted base images, and it regenerates the dm-verity hash tree and FEC parity that delta payloads omit, so the README reports bit-exact output.","description_zh":"用 Go 编写的命令行工具和库，可从 Android A/B OTA 载荷中提取分区镜像，既可读取原始 payload.bin，也可直接就地读取包含它的 OTA zip 包。它并行解压各项操作，可列出分区或只导出选定分区，并用 SHA-256 校验操作数据、源镜像和最终镜像，任何不一致都会以非零退出码结束。增量（差分）载荷会应用在先前提取的基础镜像之上，并重新生成差分载荷省略的 dm-verity 哈希树和 FEC 校验数据，因此 README 称输出可做到逐位一致。","entry_url":"https://awesomerea.org/resources/payload-dumper-go/","entry_url_zh":"https://awesomerea.org/zh/resources/payload-dumper-go/","evidence_url":"https://github.com/ssut/payload-dumper-go/blob/c3a50ba8d784764c06143c1f82971cd81a77f9d6/README.md","group":"tools","id":"payload-dumper-go","json_url":"https://awesomerea.org/resources/payload-dumper-go/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/payload-dumper-go/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/payload-dumper-go/index.md","name":"payload-dumper-go","name_zh":"payload-dumper-go Android OTA 载荷提取工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: 2.1.0, published 2026-09-23 and identical to the reviewed main commit, with prebuilt binaries for Linux (amd64, amd64 AVX2, arm64, armv7), macOS (amd64, amd64 AVX2, arm64) and Windows (amd64, amd64 AVX2, arm64) and a checksum file; the README also lists a Homebrew package. The changelog says macOS builds need macOS 13 or later since 2.0.2 moved to Go 1.27. The README requires xz on the system because decompression uses the C xz library through cgo; the Dockerfile builds with CGO and liblzma-dev.","Input is an OTA zip or payload.bin the analyst supplies; an incremental OTA also needs the base images extracted from the matching earlier full OTA, passed with -old. The README says PUFFDIFF, ZUCCHINI and LZ4DIFF delta operations are not supported yet, so affected partitions, usually system, product or system_ext, fail with an error while the rest can be extracted with -p; images written with -no-fec skip FEC and final verification and must not be flashed.","The repository commits no OTA images: its tests build synthetic payloads, and two opt-in tests read a real payload path from environment variables (E2E_PAYLOAD, DBG_PAYLOAD). The payload format follows AOSP's update_metadata.proto. Apache-2.0."],"requirements_zh":["审阅时最新版本为 2.1.0，发布于 2026-09-23，与所审阅的 main 提交相同，提供 Linux（amd64、amd64 AVX2、arm64、armv7）、macOS（amd64、amd64 AVX2、arm64）和 Windows（amd64、amd64 AVX2、arm64）预构建二进制及校验和文件；README 还列出了 Homebrew 软件包。更新日志称自 2.0.2 改用 Go 1.27 起，macOS 版本需要 macOS 13 或更高版本。README 要求系统安装 xz，因为解压通过 cgo 调用 C 版 xz 库；Dockerfile 启用 CGO 并安装 liblzma-dev 进行构建。","输入为分析者自行提供的 OTA zip 包或 payload.bin；增量 OTA 还需要从对应的前一版完整 OTA 中提取出的基础镜像，通过 -old 传入。README 称目前尚不支持 PUFFDIFF、ZUCCHINI 和 LZ4DIFF 差分操作，受影响的分区（通常是 system、product 或 system_ext）会报错失败，其余分区可用 -p 提取；使用 -no-fec 生成的镜像跳过了 FEC 和最终校验，不得刷入设备。","仓库不含任何 OTA 镜像：测试使用合成的载荷，另有两个需手动启用的测试通过环境变量（E2E_PAYLOAD、DBG_PAYLOAD）读取真实载荷路径。载荷格式依据 AOSP 的 update_metadata.proto。采用 Apache-2.0 许可。"],"targets":["firmware"],"url":"https://github.com/ssut/payload-dumper-go","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/federicodotta/Brida/blob/f3350346c10713a0bb558b9bc018a0c0e250479d/README.md#L13-L39","https://github.com/federicodotta/Brida/blob/f3350346c10713a0bb558b9bc018a0c0e250479d/README.md#L41-L89","https://github.com/federicodotta/Brida/blob/f3350346c10713a0bb558b9bc018a0c0e250479d/build.gradle","https://github.com/federicodotta/Brida/blob/f3350346c10713a0bb558b9bc018a0c0e250479d/res/bridaServicePyro.py","https://github.com/federicodotta/Brida/tree/f3350346c10713a0bb558b9bc018a0c0e250479d/Demo","https://github.com/federicodotta/Brida/blob/f3350346c10713a0bb558b9bc018a0c0e250479d/Demo/iOS/README.md","https://github.com/federicodotta/Brida/blob/f3350346c10713a0bb558b9bc018a0c0e250479d/LICENSE","https://github.com/federicodotta/Brida/releases/tag/v0.6"],"category":"dynamic-analysis","description_en":"Burp Suite extension by Federico Dotta and Piergiovanni Cipolloni that bridges Burp and Frida, so an analyst can run an app's own functions on the HTTP messages it exchanges with its backend instead of reimplementing its encryption, encoding or signing. A graphical plugin engine connects Frida-exported functions to Burp: they can process requests and responses in every Burp tool, or run from custom message-editor tabs, context-menu entries and buttons, and a Generate Stubs tool emits Java or Python code for external Burp extensions. An analysis tab shows the app's Java and Objective-C classes, methods, imports and exports as a tree, from which hooks that log arguments and return values, or replace return values, can be added; an editor holds the analyst's own Frida exports.","description_zh":"由 Federico Dotta 和 Piergiovanni Cipolloni 开发的 Burp Suite 扩展，在 Burp 与 Frida 之间架起桥梁，让分析者直接调用应用自身的函数处理它与后端交换的 HTTP 消息，而不必重新实现其中的加密、编码或签名逻辑。图形化插件引擎把 Frida 导出函数接入 Burp：既可在所有 Burp 工具中处理请求和响应，也可通过自定义消息编辑标签页、右键菜单项和按钮调用；Generate Stubs 工具还能为外部 Burp 扩展生成 Java 或 Python 代码。分析标签页以树形展示应用的 Java 和 Objective-C 类、方法以及导入导出，可从中添加挂钩，记录参数和返回值，或替换返回值；内置编辑器用于编写分析者自己的 Frida 导出函数。","entry_url":"https://awesomerea.org/resources/brida/","entry_url_zh":"https://awesomerea.org/zh/resources/brida/","evidence_url":"https://github.com/federicodotta/Brida/blob/f3350346c10713a0bb558b9bc018a0c0e250479d/README.md","group":"tools","id":"brida","json_url":"https://awesomerea.org/resources/brida/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/brida/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/brida/index.md","name":"Brida","name_zh":"Brida Burp Suite 与 Frida 桥接扩展","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v0.6, published 2025-10-23 as a single Brida_0.6.jar; the reviewed master commit is two commits ahead, adding and then removing a BApp Store description. Version 0.6 was refactored for Frida 17's JavaScript API and needs Frida 17 or later; v0.6pre, used with frida-compile 10.2.5, remains the release for older Frida versions. The README also points to Burp's BApp Store and notes that the copy there can lag behind GitHub.","Needs Burp Suite Community or Pro, Node.js and npm on the system path (the README warns that this can be hard on macOS), and the frida, frida-tools and pyro4 Python packages; a bundled Pyro4 service script connects the extension to Frida. The README says Brida supports every platform Frida does (Windows, macOS, Linux, iOS, Android and QNX). Mobile targets need a jailbroken iOS or rooted Android device running frida-server, or an app patched with the Frida gadget.","Builds use Gradle's jar task, or Maven once the bundled modified RSyntaxTextArea jar (libs/rsyntaxtextarea-2.6.1.edited.jar) is installed locally; the extension uses the legacy Burp Extender API. Demo/ holds the authors' own conference demo apps and backend (HIP2021_demo.apk, DemoHIP.ipa, DemoHITB.ipa and BridaTestAppBackend-0.0.1-SNAPSHOT.jar), demo TLS certificates and keys, and exported demo plugins. The iOS demo README asks that its backend, which logs in to MySQL as root with an empty password, run only on a firewalled system or VM.","MIT license. Brida for apps and backends the analyst owns or is authorized to test. The default Android and iOS hook collections under res/, which the README credits to various Frida CodeShare and GitHub authors."],"requirements_zh":["审阅时最新版本为 v0.6，于 2025-10-23 以单个 Brida_0.6.jar 发布；所审阅的 master 提交比它多两个提交，先添加后又删除了一段 BApp Store 简介。0.6 版针对 Frida 17 的 JavaScript API 做了重构，需要 Frida 17 或更高版本；较旧的 Frida 仍需使用 v0.6pre，并搭配 frida-compile 10.2.5。README 也提到可从 Burp 的 BApp Store 安装，但那里的版本可能落后于 GitHub。","需要 Burp Suite（Community 或 Pro 版）、已加入系统路径的 Node.js 和 npm（README 提醒在 macOS 上这一步可能比较麻烦），以及 frida、frida-tools 和 pyro4 这几个 Python 包；扩展通过附带的 Pyro4 服务脚本连接 Frida。README 称 Brida 支持 Frida 支持的所有平台（Windows、macOS、Linux、iOS、Android 和 QNX）。移动端目标需要运行 frida-server 的已越狱 iOS 或已 root 的 Android 设备，或者已打包 Frida gadget 的应用。","可用 Gradle 的 jar 任务构建；若用 Maven，需先在本地安装仓库附带的修改版 RSyntaxTextArea jar（libs/rsyntaxtextarea-2.6.1.edited.jar）。扩展使用的是旧版 Burp Extender API。Demo/ 目录收录作者自己为会议演示制作的应用和后端（HIP2021_demo.apk、DemoHIP.ipa、DemoHITB.ipa 和 BridaTestAppBackend-0.0.1-SNAPSHOT.jar）、演示用 TLS 证书和密钥，以及导出的演示插件。iOS 演示的 README 提醒，其后端以 root 身份、空密码登录 MySQL，只应在有防火墙隔离的系统或虚拟机中运行。","采用 MIT 许可。分析者自有或已获授权测试的应用和后端。README 注明这些代码来自多位 Frida CodeShare 和 GitHub 作者。"],"targets":["app","protocol"],"url":"https://github.com/federicodotta/Brida","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/1egoman/debundle/blob/67531ffe13c3a78db08b51dd37f7ba9c4f77e98c/DOCS.md","https://github.com/1egoman/debundle/blob/67531ffe13c3a78db08b51dd37f7ba9c4f77e98c/package.json","https://github.com/1egoman/debundle/blob/67531ffe13c3a78db08b51dd37f7ba9c4f77e98c/.travis.yml","https://github.com/1egoman/debundle/blob/67531ffe13c3a78db08b51dd37f7ba9c4f77e98c/src/decoders/webpack.js","https://github.com/1egoman/debundle/tree/67531ffe13c3a78db08b51dd37f7ba9c4f77e98c/test_bundles","https://github.com/1egoman/debundle/blob/67531ffe13c3a78db08b51dd37f7ba9c4f77e98c/test_bundles/run_test.sh","https://github.com/1egoman/debundle/blob/67531ffe13c3a78db08b51dd37f7ba9c4f77e98c/src/extern/replace-method/LICENSE.md","https://www.npmjs.com/package/debundle/v/0.5.4"],"category":"web-analysis","description_en":"Node.js command-line tool that unpacks JavaScript bundles produced by Browserify or Webpack back into a tree of module files, so a bundle can be read file by file instead of as one script. A JSON configuration gives the bundle type, the entry-point module and optional knownPaths that map numeric module IDs to output files or node_modules packages, and it can rewrite a minifier's renamed require identifier inline or through a variable so the output can be rebundled or run in Node. The README says it was built to learn how bundles are structured for a reverse-engineering project and that debundling is lossy: package.json settings and Webpack module names are not recovered, and minified code stays minified.","description_zh":"Node.js 命令行工具，可把 Browserify 或 Webpack 生成的 JavaScript 打包文件还原为按模块拆分的文件树，便于逐个文件阅读，而不必面对一整个脚本。JSON 配置文件指定打包类型、入口模块，以及可选的 knownPaths（把数字模块 ID 映射为输出文件或 node_modules 中的包路径）；它还能以内联或变量方式改写被压缩工具重命名的 require 标识符，使输出可重新打包或在 Node 中运行。README 称该工具是作者为一个逆向工程项目了解打包结构而编写的，并指出拆包是有损的：无法恢复 package.json 设置和 Webpack 模块名称，压缩过的代码拆出后仍是压缩状态。","entry_url":"https://awesomerea.org/resources/debundle/","entry_url_zh":"https://awesomerea.org/zh/resources/debundle/","evidence_url":"https://github.com/1egoman/debundle/blob/67531ffe13c3a78db08b51dd37f7ba9c4f77e98c/README.md","group":"tools","id":"debundle","json_url":"https://awesomerea.org/resources/debundle/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/debundle/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/debundle/index.md","name":"debundle","name_zh":"debundle JavaScript 打包文件拆包工具","record_type":"resource","relationship":"foundation","requirements":["The README calls this a research project that is no longer maintained and says it works in a laboratory environment most of the time but often fails on real-world bundles. The reviewed master commit dates from 2018-06-16; npm's latest debundle release is 0.5.4 of 2017-09-12, newer than the repository's v0.5.3 tag and package.json, and unfinished v2 branches were last updated in 2020.","Installs with npm i -g debundle and runs as debundle -i <bundle> -o <directory> -c <config>. package.json requires Node 6 or newer, .nvmrc and the Travis CI configuration use Node 6, and the dependencies date from that period, such as acorn 4 and recast 0.5.","Only Browserify bundles and Webpack bundles whose modules are passed as an array are decoded: the Webpack decoder aborts when the module list is not an array, and other bundlers are not officially supported, although the moduleAst option can point to a module list with the same layout. Webpack output files are named after module IDs unless knownPaths names them.","test_bundles/ holds four small sample bundles with their configurations and original sources, which CI debundles with test_bundles/run_test.sh; the comparison with the original sources is commented out, so CI only checks that debundling finishes. Users supply the bundles to unpack, and the README's legal note warns that some terms of service forbid reverse engineering.","package.json and the npm package declare ISC, but the repository has no license file and GitHub detects none; src/extern/replace-method is a vendored MIT-licensed module by Hugh Kennedy."],"requirements_zh":["README 称这是一个已不再维护的研究项目，在实验环境中大多能正常工作，但处理真实环境中的打包文件时经常失败。所审阅的 master 提交日期为 2018-06-16；npm 上 debundle 的最新版本是 2017-09-12 发布的 0.5.4，比仓库的 v0.5.3 标签和 package.json 中的版本更新；未完成的 v2 分支最后更新于 2020 年。","通过 npm i -g debundle 安装，运行方式为 debundle -i <打包文件> -o <输出目录> -c <配置文件>。package.json 要求 Node 6 及以上，.nvmrc 和 Travis CI 配置使用 Node 6，依赖也是同一时期的版本，如 acorn 4 和 recast 0.5。","只能解析 Browserify 打包文件，以及以数组形式传入模块的 Webpack 打包文件：模块列表不是数组时 Webpack 解码器会中止；其他打包工具未获官方支持，但可用 moduleAst 选项指向布局相同的模块列表。除非在 knownPaths 中指定名称，Webpack 拆出的文件以模块 ID 命名。","test_bundles/ 目录包含四个小型示例打包文件及其配置和原始源码，CI 通过 test_bundles/run_test.sh 对它们执行拆包；与原始源码比对的部分已被注释掉，因此 CI 只检查拆包能否完成。待拆包的文件需由用户自备，README 的法律提示还提醒，部分服务条款禁止逆向工程。","package.json 和 npm 软件包声明采用 ISC 许可，但仓库没有许可证文件，GitHub 也未识别出许可证；src/extern/replace-method 是随附的 MIT 许可模块，作者为 Hugh Kennedy。"],"targets":["website"],"url":"https://github.com/1egoman/debundle","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/CYB3RMX/Qu1cksc0pe/blob/180d44f44725bbce0296dc5346554fcf8852bbb2/setup.sh","https://github.com/CYB3RMX/Qu1cksc0pe/blob/180d44f44725bbce0296dc5346554fcf8852bbb2/setup.ps1","https://github.com/CYB3RMX/Qu1cksc0pe/blob/180d44f44725bbce0296dc5346554fcf8852bbb2/requirements.txt","https://github.com/CYB3RMX/Qu1cksc0pe/blob/180d44f44725bbce0296dc5346554fcf8852bbb2/Dockerfile","https://github.com/CYB3RMX/Qu1cksc0pe/blob/180d44f44725bbce0296dc5346554fcf8852bbb2/Systems/Multiple/multiple.conf","https://github.com/CYB3RMX/Qu1cksc0pe/blob/180d44f44725bbce0296dc5346554fcf8852bbb2/Modules/hashScanner.py","https://github.com/CYB3RMX/Qu1cksc0pe/blob/180d44f44725bbce0296dc5346554fcf8852bbb2/Modules/analysis/linux/linux_emulator.py","https://github.com/CYB3RMX/Qu1cksc0pe/blob/180d44f44725bbce0296dc5346554fcf8852bbb2/Modules/mcp_server.py","https://github.com/CYB3RMX/Qu1cksc0pe/blob/180d44f44725bbce0296dc5346554fcf8852bbb2/.mcp.json","https://github.com/CYB3RMX/Qu1cksc0pe/tree/180d44f44725bbce0296dc5346554fcf8852bbb2/Systems/Windows","https://github.com/CYB3RMX/Qu1cksc0pe/blob/180d44f44725bbce0296dc5346554fcf8852bbb2/LICENSE"],"category":"native-analysis","description_en":"All-in-one malware triage tool that statically analyses Windows PE, Linux ELF (including Go binaries), macOS Mach-O and Android APK, JAR and DEX files as well as Office and PDF documents, scripts, shortcuts, archives, e-mails and PCAPs, reporting imports and API categories, sections, strings and IOCs, packers, embedded executables, Android permission risk, YARA matches and, for Windows and Linux, MITRE ATT&CK mappings. VBA/VBScript, JavaScript and PowerShell are run through bounded in-memory emulators instead of being executed, and --watch modes monitor live Windows, Linux and Android processes. A CLI, a Flask web UI and an MCP server expose the analyses, with optional LLM summaries of the JSON reports.","description_zh":"一体化恶意软件初筛工具，可对 Windows PE、Linux ELF（含 Go 二进制）、macOS Mach-O 和 Android APK、JAR、DEX 文件，以及 Office 与 PDF 文档、脚本、快捷方式、压缩包、电子邮件和 PCAP 做静态分析，报告导入表与 API 分类、节区、字符串与 IOC、加壳器、内嵌可执行文件、Android 权限风险和 YARA 匹配，并为 Windows 与 Linux 程序给出 MITRE ATT&CK 映射。VBA/VBScript、JavaScript 和 PowerShell 交由有界的内存内模拟器处理，而不会真正执行；--watch 模式可监视 Windows、Linux 和 Android 上运行中的进程。分析功能可通过命令行、Flask 网页界面和 MCP 服务器调用，还可选择用大语言模型总结 JSON 报告。","entry_url":"https://awesomerea.org/resources/qu1cksc0pe/","entry_url_zh":"https://awesomerea.org/zh/resources/qu1cksc0pe/","evidence_url":"https://github.com/CYB3RMX/Qu1cksc0pe/blob/180d44f44725bbce0296dc5346554fcf8852bbb2/README.md","group":"tools","id":"qu1cksc0pe","json_url":"https://awesomerea.org/resources/qu1cksc0pe/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/qu1cksc0pe/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/qu1cksc0pe/index.md","name":"Qu1cksc0pe","name_zh":"Qu1cksc0pe 恶意软件分析工具","record_type":"resource","relationship":"foundation","requirements":["Actively developed from the master branch with no tags or GitHub releases; the reviewed commit of 2026-09-18 adds live-memory YARA/IOC scanning, Windows injection and hollowing checks and expanded Android dynamic analysis. README recommends Parrot OS, Kali Linux or Windows 10/11; Mach-O and Go binaries are analysed statically only.","README has users clone the repository into a Python virtual environment and run setup.sh (apt-get or pacman hosts) or setup.ps1 on Windows. Setup installs requirements.txt, which pins androguard 3.4.0a1, yara-python 4.5.0 and unicorn 2.1.4 and adds lief, pefile, oletools, frida-tools, docker, flask and mcp>=2.0.0, plus adb, binutils strings, unzip, 7-Zip, JADX 1.5.3 in a sc0pe_Base folder in the home directory and Ollama with its configured model. A Dockerfile based on Ubuntu 22.04 runs the CLI against a mounted file. Hash scans download the HashDB SQLite database from the separate CYB3RMX/MalwareHashDB repository, and VirusTotal lookups need the user's own API key.","Inputs are the analyst's own suspicious files. The repository ships detection data, about 300 YARA rule files, Android Frida scripts and API and ATT&CK mapping tables, plus a bundled dnlib 3.6.0 .NET library (Systems/Windows/dnlib.dll, from the open-source de4dot project) that the reviewed scripts do not reference by name; it contains no malware samples. Static analysis and the script emulators do not run samples, but Linux binary emulation runs them under qemu-user in a network-disabled Docker container, falling back to host qemu when Docker is unavailable, and the --watch modes attach to live processes on the host or a connected Android device. Handle samples only on an isolated analysis machine.","--ai sends a report to Ollama by default; the shipped multiple.conf names the cloud-tagged kimi-k2.5:cloud model, for which setup.ps1 suggests ollama signin, and Claude, OpenAI, DeepSeek, Kimi and GLM backends are opt-in through --ai_provider, in which case report data leaves the machine. The MCP server (--mcp) exposes 14 tools over streamable HTTP on 127.0.0.1:8765 by default, or over stdio, and a bundled .mcp.json registers it for Claude Code. Family candidates, emulation traces and AI summaries are heuristic findings for analyst review.","GPL-3.0."],"requirements_zh":["项目在 master 分支上持续开发，没有标签或 GitHub 发布版本；所审提交（2026-09-18）新增了实时内存 YARA/IOC 扫描、Windows 注入与镂空检测，并扩展了 Android 动态分析。README 推荐 Parrot OS、Kali Linux 或 Windows 10/11；Mach-O 和 Go 二进制仅支持静态分析。","README 要求克隆仓库、在 Python 虚拟环境中运行 setup.sh（适用于 apt-get 或 pacman 系统），Windows 上则运行 setup.ps1。安装脚本会安装 requirements.txt，其中固定 androguard 3.4.0a1、yara-python 4.5.0 和 unicorn 2.1.4，并包含 lief、pefile、oletools、frida-tools、docker、flask 和 mcp>=2.0.0；另外还会安装 adb、binutils 的 strings、unzip、7-Zip、安装在用户主目录下 sc0pe_Base 文件夹中的 JADX 1.5.3，以及 Ollama 和配置中的模型。基于 Ubuntu 22.04 的 Dockerfile 可对挂载的文件运行命令行。哈希扫描会从独立的 CYB3RMX/MalwareHashDB 仓库下载 HashDB SQLite 数据库，VirusTotal 查询需要使用者自己的 API 密钥。","输入是分析者自己的可疑文件。仓库附带检测数据，包括约 300 个 YARA 规则文件、Android Frida 脚本以及 API 与 ATT&CK 映射表，另附一份 dnlib 3.6.0 .NET 库（Systems/Windows/dnlib.dll，来自开源的 de4dot 项目），所审脚本均未按名称引用它；仓库不含恶意软件样本。静态分析和脚本模拟器不会运行样本，但 Linux 二进制模拟会在禁用网络的 Docker 容器中用 qemu-user 运行样本，没有 Docker 时退回到宿主机上的 qemu；--watch 模式则附加到宿主机或所连 Android 设备上的运行中进程。只应在隔离的分析机器上处理样本。","--ai 默认把报告交给 Ollama；随附的 multiple.conf 指定带 cloud 标记的 kimi-k2.5:cloud 模型，setup.ps1 为此建议执行 ollama signin；Claude、OpenAI、DeepSeek、Kimi 和 GLM 后端需通过 --ai_provider 主动选择，此时报告数据会离开本机。MCP 服务器（--mcp）默认通过 127.0.0.1:8765 上的 streamable HTTP 提供 14 个工具，也可用 stdio；随附的 .mcp.json 会为 Claude Code 注册该服务器。家族候选、模拟轨迹和 AI 总结都属于启发式结果，需要分析者复核。","GPL-3.0 许可。"],"targets":["app","binary"],"url":"https://github.com/CYB3RMX/Qu1cksc0pe","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/rpp0/gr-lora/blob/90343d45a3c73c84d32d74b8603b6c01de025b08/CMakeLists.txt","https://github.com/rpp0/gr-lora/blob/90343d45a3c73c84d32d74b8603b6c01de025b08/lib/CMakeLists.txt","https://github.com/rpp0/gr-lora/blob/90343d45a3c73c84d32d74b8603b6c01de025b08/grc/lora_receiver.block.yml","https://github.com/rpp0/gr-lora/blob/90343d45a3c73c84d32d74b8603b6c01de025b08/lib/decoder_impl.cc","https://github.com/rpp0/gr-lora/blob/90343d45a3c73c84d32d74b8603b6c01de025b08/apps/lora_receive_file_nogui.py","https://github.com/rpp0/gr-lora/blob/90343d45a3c73c84d32d74b8603b6c01de025b08/docker/Dockerfile","https://github.com/rpp0/gr-lora/blob/90343d45a3c73c84d32d74b8603b6c01de025b08/.travis.yml","https://github.com/rpp0/gr-lora/tree/90343d45a3c73c84d32d74b8603b6c01de025b08/docs/test-results","https://github.com/rpp0/gr-lora/blob/90343d45a3c73c84d32d74b8603b6c01de025b08/LICENSE"],"category":"protocol-analysis","description_en":"GNU Radio out-of-tree module by Pieter Robyns and co-authors for receiving and decoding LoRa physical-layer frames with a software-defined radio, implementing the modulation features described in patents and blog posts. Its receiver channelizes the input, detects and synchronizes to LoRa chirps with clock-drift correction, and decodes symbols through Gray mapping, deinterleaving, dewhitening and Hamming decoding into header and payload bytes, which a message socket sink can forward over UDP port 40868. The bundled flowgraphs decode recorded traces or live captures, and the README lists HackRF One, USRP B201, RTL-SDR and LimeSDR as tested receivers.","description_zh":"由 Pieter Robyns 等人开发的 GNU Radio 树外模块，借助软件定义无线电接收并解码 LoRa 物理层帧，实现了专利和博客文章中描述的调制特性。其接收器先对输入进行信道化，检测 LoRa 线性调频信号并与之同步、校正时钟漂移，再经格雷映射、解交织、去白化和汉明译码把符号还原为报头和载荷字节；消息套接字汇点可把结果通过 UDP 端口 40868 转发。附带的流图可解码录制的信号或实时采集的信号，README 列出 HackRF One、USRP B201、RTL-SDR 和 LimeSDR 为经过测试的接收设备。","entry_url":"https://awesomerea.org/resources/gr-lora/","entry_url_zh":"https://awesomerea.org/zh/resources/gr-lora/","evidence_url":"https://github.com/rpp0/gr-lora/blob/90343d45a3c73c84d32d74b8603b6c01de025b08/README.md","group":"tools","id":"gr-lora","json_url":"https://awesomerea.org/resources/gr-lora/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/gr-lora/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/gr-lora/index.md","name":"gr-lora","name_zh":"gr-lora LoRa 物理层解码模块","record_type":"resource","relationship":"foundation","requirements":["The newest commit on master, from 2021-12-10, merged a port to GNU Radio 3.9: CMake requests GNU Radio 3.9, the Python bindings use pybind11, and the library links liquid-dsp and log4cpp. The README was not updated for the port and still lists Python 2, SWIG and wx dependencies, and its Docker image installs python2 packages on an unpinned Arch Linux base; the Travis CI configuration builds GNU Radio maint-3.8. A gr3.7 branch keeps the older code.","Input is IQ samples from an SDR or a recorded file. The receiver block takes sample rate, center frequency, channel list, bandwidth, spreading factor, coding rate, implicit-header, CRC and reduced-rate settings that must match the transmission. apps/lora_receive_file_nogui.py offers to download an example 868.1 MHz SF7 trace from the authors' university server, and further traces are in the separate gr-lora-samples repository. The README lists LoPy, Dragino HAT, Adafruit Feather 32u4, Microchip RN2483 and SX1276 boards as tested transmitters.","The README states that payload and header CRCs are not checked and that several channels cannot be decoded at once; its changelog marks version 0.7's downlink, reduced-rate implicit-header and arbitrary-bandwidth support as experimental. The newest version tag is v0.6.2, so 0.7 exists only on master. docs/test-results holds the authors' decoding rates from suites rerun on 2021-12-01 during the port, such as 100% on the short USRP traces, and the author considers LoRa fully reverse engineered as of version 0.6, citing close to 100% accuracy on clear signals; these are author-reported results.","GPL-3.0 (LICENSE). The README asks research users to cite the Zenodo record 10.5281/zenodo.853201. It covers the LoRa physical layer only."],"requirements_zh":["master 分支最新提交（2021-12-10）合并了向 GNU Radio 3.9 的移植：CMake 要求 GNU Radio 3.9，Python 绑定改用 pybind11，库链接 liquid-dsp 和 log4cpp。README 未随移植更新，仍列出 Python 2、SWIG 和 wx 依赖，其 Docker 镜像在未固定版本的 Arch Linux 基础镜像上安装 python2 软件包；Travis CI 配置构建的是 GNU Radio maint-3.8。gr3.7 分支保留了旧代码。","输入为来自 SDR 或录制文件的 IQ 采样。接收器模块的采样率、中心频率、信道列表、带宽、扩频因子、编码率、隐式报头、CRC 和低速率模式等参数必须与发射端一致。apps/lora_receive_file_nogui.py 可从作者所在大学的服务器下载一段 868.1 MHz、SF7 的示例信号，更多信号样本见独立的 gr-lora-samples 仓库。README 列出 LoPy、Dragino HAT、Adafruit Feather 32u4、Microchip RN2483 和 SX1276 板卡为经过测试的发射设备。","README 说明不校验载荷和报头的 CRC，也不能同时解码多个信道；其更新日志把 0.7 版的下行链路、隐式报头低速率模式和任意带宽支持标为实验性功能。最新的版本标签是 v0.6.2，因此 0.7 版只存在于 master 分支。docs/test-results 收录了作者在移植期间于 2021-12-01 重新运行测试集得到的解码率，例如短 USRP 信号样本为 100%；作者还认为自 0.6 版起 LoRa 已被完全逆向，理由是信号清晰时解码准确率接近 100%。这些都是作者报告的结果。","GPL-3.0（LICENSE）。README 请研究用户引用 Zenodo 记录 10.5281/zenodo.853201。它只涉及 LoRa 物理层。"],"targets":["protocol"],"url":"https://github.com/rpp0/gr-lora","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/JG91/CNNPRE/blob/c7679ee4fb20fd7c3ff712b3e1287bdbbf171421/cnnpre.ipynb","https://github.com/JG91/CNNPRE/tree/c7679ee4fb20fd7c3ff712b3e1287bdbbf171421/Data","https://github.com/JG91/CNNPRE/tree/c7679ee4fb20fd7c3ff712b3e1287bdbbf171421/PCAP","https://doi.org/10.1109/ACCESS.2023.3325391"],"category":"protocol-analysis","description_en":"Research code and data for CNNPRE, a message-type identification method for protocol reverse engineering by Javad Garshasbi and Mehdi Teimouri, published in IEEE Access in 2023. A single Colab notebook turns each message's padded bit string into a resized grayscale image, extracts features with an ImageNet-pretrained ResNet50 as transfer learning, adds message direction and length-group encodings, reduces the features with UMAP and clusters messages with agglomerative clustering and HDBSCAN, scoring each clustering against labelled message types. Preprocessed message datasets for twelve protocols, from ARP and DNS to SMTP and GSM, accompany the notebook.","description_zh":"CNNPRE 的研究代码与数据。CNNPRE 是 Javad Garshasbi 与 Mehdi Teimouri 于 2023 年发表在 IEEE Access 上、用于协议逆向工程的报文类型识别方法。仓库中唯一的 Colab 笔记本把每条报文补齐后的比特串转为缩放的灰度图像，借助在 ImageNet 上预训练的 ResNet50 进行迁移学习以提取特征，加入报文方向和长度分组编码，用 UMAP 降维后再以凝聚聚类和 HDBSCAN 对报文聚类，并将各聚类结果与已标注的报文类型比较评分。笔记本附有从 ARP、DNS 到 SMTP、GSM 等十二种协议的预处理报文数据集。","entry_url":"https://awesomerea.org/resources/cnnpre/","entry_url_zh":"https://awesomerea.org/zh/resources/cnnpre/","evidence_url":"https://github.com/JG91/CNNPRE/blob/c7679ee4fb20fd7c3ff712b3e1287bdbbf171421/README.md","group":"learn","id":"cnnpre","json_url":"https://awesomerea.org/resources/cnnpre/record.json","kind":"research","markdown_url":"https://awesomerea.org/resources/cnnpre/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cnnpre/index.md","name":"CNNPRE (IEEE Access 2023)","name_zh":"CNNPRE：基于 CNN 的协议逆向方法（IEEE Access 2023）","record_type":"resource","relationship":"learning","requirements":["Paper: Javad Garshasbi and Mehdi Teimouri, “CNNPRE: A CNN-Based Protocol Reverse Engineering Method,” IEEE Access, vol. 11, pp. 116255–116268, 2023, DOI 10.1109/ACCESS.2023.3325391; Crossref lists it under CC BY-NC-ND 4.0. The repository was reviewed at its 2026-01-13 head, a README update; the notebook last changed on 2023-07-06, and there are no releases.","The only code is cnnpre.ipynb, written for Google Colab. It pip-installs umap-learn and hdbscan, apt-installs TeX Live and pandoc for a PDF export, and otherwise relies on Colab's preinstalled TensorFlow, scikit-learn, OpenCV, pandas and yellowbrick without pinned versions. It downloads ImageNet ResNet50 weights, reads one hard-coded CSV (GSM5000-hex.csv) with a message count that must be edited for other datasets, and its last cells mount Google Drive to convert the notebook. There is no package, command-line tool or test.","Inputs are message-level CSVs with direction, labelled message type and each message as hex and bit strings. Data/ holds preprocessed CSVs for ARP, DHCP, DNS, FTP, GSM, HTTP, ICMP, NBNS, NTP, POP, SMTP and Syslog, PCAP/ holds the GSM capture 44CON-gsm-uplink-downlink-sim-example.pcap, and the README names the public WRCCDC 2021 regional competition captures as the other source. No PCAP-to-CSV preprocessing script is included, so a new protocol needs its own conversion, and the notebook's evaluation metrics need ground-truth message types.","The notebook covers message-type clustering only, not field, semantic or state-machine inference. Its results labelled K-Means take the cluster count from a K-means elbow search but cluster with agglomerative clustering, and the saved outputs show one GSM run. Accuracy figures are the paper's.","GitHub detects no license and the repository has no license file, so the code and preprocessed datasets state no reuse terms; the paper's license covers the article, not the repository, and the captures keep their sources' terms."],"requirements_zh":["论文：Javad Garshasbi、Mehdi Teimouri，《CNNPRE: A CNN-Based Protocol Reverse Engineering Method》，IEEE Access 第 11 卷，第 116255–116268 页，2023 年，DOI 10.1109/ACCESS.2023.3325391；Crossref 标注其采用 CC BY-NC-ND 4.0 许可。仓库审阅对象为 2026-01-13 的最新提交（一次 README 更新）；笔记本最后修改于 2023-07-06，没有发布版本。","唯一的代码是为 Google Colab 编写的 cnnpre.ipynb。它用 pip 安装 umap-learn 和 hdbscan，用 apt 安装 TeX Live 与 pandoc 以导出 PDF，其余依赖 Colab 预装的 TensorFlow、scikit-learn、OpenCV、pandas 和 yellowbrick，均未固定版本。它会下载 ImageNet 预训练的 ResNet50 权重，读取写死的 CSV 文件（GSM5000-hex.csv），换用其他数据集时需修改报文数量，最后几个单元格还会挂载 Google Drive 来转换笔记本。没有软件包、命令行工具或测试。","输入是按报文组织的 CSV，包含方向、已标注的报文类型以及每条报文的十六进制和比特串。Data/ 收录 ARP、DHCP、DNS、FTP、GSM、HTTP、ICMP、NBNS、NTP、POP、SMTP 和 Syslog 的预处理 CSV，PCAP/ 收录 GSM 捕获文件 44CON-gsm-uplink-downlink-sim-example.pcap，README 指出其余数据来源是公开的 WRCCDC 2021 地区赛流量。仓库未提供从 PCAP 转换为 CSV 的预处理脚本，因此新协议需要自行转换，而笔记本的评估指标还需要真实的报文类型标注。","笔记本只涉及报文类型聚类，不包括字段、语义或状态机推断。其中标为 K-Means 的结果用 K-means 肘部法确定聚类数，实际却用凝聚聚类完成聚类；保存的输出只显示一次 GSM 运行。准确率数据来自论文。","GitHub 未检测到许可证，仓库也没有许可证文件，因此代码和预处理数据集均未声明复用条款；论文的许可只适用于文章本身，不适用于仓库，捕获流量遵循其来源的条款。"],"targets":["protocol"],"url":"https://github.com/JG91/CNNPRE","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/gcla/termshark/blob/e8a1ec6e4f2d517f646d3bba35a2ec4926e0202c/docs/UserGuide.md","https://github.com/gcla/termshark/blob/e8a1ec6e4f2d517f646d3bba35a2ec4926e0202c/docs/UserGuide.md#L87-L195","https://github.com/gcla/termshark/blob/e8a1ec6e4f2d517f646d3bba35a2ec4926e0202c/docs/UserGuide.md#L313-L360","https://github.com/gcla/termshark/blob/e8a1ec6e4f2d517f646d3bba35a2ec4926e0202c/docs/Packages.md","https://github.com/gcla/termshark/blob/e8a1ec6e4f2d517f646d3bba35a2ec4926e0202c/CHANGELOG.md","https://github.com/gcla/termshark/blob/e8a1ec6e4f2d517f646d3bba35a2ec4926e0202c/go.mod","https://github.com/gcla/termshark/blob/e8a1ec6e4f2d517f646d3bba35a2ec4926e0202c/LICENSE","https://github.com/gcla/termshark/releases/tag/v2.4.0"],"category":"protocol-analysis","description_en":"Graham Clark's terminal user interface for tshark, inspired by Wireshark and aimed at inspecting captures on a remote machine, for example over SSH, without copying them back to a desktop. It reads pcap files, fifos or standard input, or captures live from one or more interfaces, and shows a packet list filtered with Wireshark display filters next to the dissected packet structure and a hex view. Analysis views reassemble TCP and UDP streams with search and client- or server-only display, list Ethernet, IPv4, IPv6, UDP and TCP conversations that can be turned into display filters, and search packet contents; Wireshark-style profiles can reuse a linked Wireshark profile's packet colors.","description_zh":"Graham Clark 开发的 tshark 终端界面，设计上参考 Wireshark，便于在远程机器上（例如通过 SSH）直接检查抓包文件，而不必先拷回桌面。它可读取 pcap 文件、fifo 或标准输入，也可从一个或多个网络接口实时抓包；界面在按 Wireshark 显示过滤器筛选的数据包列表旁，同时显示解析后的数据包结构和十六进制视图。分析视图可以重组 TCP 和 UDP 流，支持搜索并可只看客户端或服务端数据；还能列出 Ethernet、IPv4、IPv6、UDP 和 TCP 会话并据此生成显示过滤器，以及搜索数据包内容。类似 Wireshark 的配置方案可以关联 Wireshark 配置，沿用其中的数据包着色规则。","entry_url":"https://awesomerea.org/resources/termshark/","entry_url_zh":"https://awesomerea.org/zh/resources/termshark/","evidence_url":"https://github.com/gcla/termshark/blob/e8a1ec6e4f2d517f646d3bba35a2ec4926e0202c/README.md","group":"tools","id":"termshark","json_url":"https://awesomerea.org/resources/termshark/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/termshark/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/termshark/index.md","name":"termshark","name_zh":"termshark tshark 终端界面","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: v2.4.0, published 2022-07-11, with builds for Linux (x64, arm64, armv6), macOS (x64, arm64), FreeBSD, NetBSD, OpenBSD and Windows x64. The README also lists Arch, Debian, FreeBSD, Homebrew, MacPorts, Kali, NixOS, Snapcraft, Termux and Ubuntu packages. The reviewed master commit (2022-11-01) is 14 commits ahead of that release, including unreleased hex-view navigation changes, and master has had no commits since.","tshark from Wireshark, version 1.10.2 or later, must be on PATH at run time, because termshark relies on it for all packet analysis; protocol coverage is therefore whatever the installed tshark dissects. Live capture uses dumpcap and works only where the user is permitted to capture. By default, captured packets are saved in the user's cache directory (.cache/termshark/pcaps on Linux), or to a file given with -w. Copying packets to the clipboard over SSH needs X11 forwarding or a custom copy command.","Builds as a single Go executable with go install (module github.com/gcla/termshark/v2; go.mod declares Go 1.13). Besides theme files, the repository commits only small test captures (pkg/pcap/testdata and scripts/pcaps/telnet-cooked.pcap).","MIT license. The README notes that tshark has many features termshark does not expose yet."],"requirements_zh":["审阅时最新版本为 v2.4.0，发布于 2022-07-11，提供 Linux（x64、arm64、armv6）、macOS（x64、arm64）、FreeBSD、NetBSD、OpenBSD 和 Windows x64 构建。README 还列出了 Arch、Debian、FreeBSD、Homebrew、MacPorts、Kali、NixOS、Snapcraft、Termux 和 Ubuntu 软件包。所审阅的 master 提交（2022-11-01）比该版本多 14 个提交，其中包括尚未发布的十六进制视图导航改进；此后 master 再无新提交。","运行时需要 PATH 中有 Wireshark 的 tshark（1.10.2 或更高版本），因为 termshark 的全部数据包分析都依赖它，能解析哪些协议也取决于所安装的 tshark。实时抓包使用 dumpcap，只能在用户有抓包权限的环境中进行。抓到的数据包默认保存在用户的缓存目录中（Linux 上为 .cache/termshark/pcaps），也可用 -w 指定文件。通过 SSH 把数据包复制到剪贴板时，需要 X11 转发或自定义复制命令。","可用 go install 构建为单个 Go 可执行文件（模块为 github.com/gcla/termshark/v2，go.mod 声明 Go 1.13）。除主题文件外，仓库只提交了少量小型测试抓包文件（pkg/pcap/testdata 和 scripts/pcaps/telnet-cooked.pcap）。","采用 MIT 许可。README 指出，tshark 的许多功能 termshark 尚未提供。"],"targets":["protocol"],"url":"https://github.com/gcla/termshark","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/nmatt0/mithril/blob/3f5bf55f9481b6447f4a8fb410862baff55b07f8/CMakeLists.txt","https://github.com/nmatt0/mithril/blob/3f5bf55f9481b6447f4a8fb410862baff55b07f8/THIRD_PARTY.md","https://github.com/nmatt0/mithril/blob/3f5bf55f9481b6447f4a8fb410862baff55b07f8/docs/engine-design.md","https://github.com/nmatt0/mithril/blob/3f5bf55f9481b6447f4a8fb410862baff55b07f8/docs/boot-security.md","https://github.com/nmatt0/mithril/blob/3f5bf55f9481b6447f4a8fb410862baff55b07f8/docs/key-weakness.md","https://github.com/nmatt0/mithril/blob/3f5bf55f9481b6447f4a8fb410862baff55b07f8/docs/cve-join.md","https://github.com/nmatt0/mithril/blob/3f5bf55f9481b6447f4a8fb410862baff55b07f8/src/cveupdate.cpp","https://github.com/nmatt0/mithril/blob/3f5bf55f9481b6447f4a8fb410862baff55b07f8/tests/test_der_keys.py","https://github.com/nmatt0/mithril/blob/3f5bf55f9481b6447f4a8fb410862baff55b07f8/LICENSE","https://github.com/nmatt0/mithril/releases/tag/v0.4.0"],"category":"firmware","description_en":"Offline C++ scanner for the contents of firmware and IoT software, pointed at a single file or an already unpacked root filesystem, that reports embedded secrets, a software bill of materials, known CVEs, open-source licenses, boot-security configuration and weak or publicly known keys, each finding with its evidence and a confidence level. Its SBOM also recovers components from ELF version banners, libc filenames and the kernel banner in stripped images and is written as CycloneDX and SPDX, while the CVE pass joins it against a local OSV and NVD mirror annotated with CISA KEV and EPSS. It does not unpack images; the author's companion tool moria handles identification and extraction.","description_zh":"离线运行的 C++ 扫描器，用于分析固件和物联网软件的内容，可指向单个文件或已解包的根文件系统，报告其中嵌入的机密信息、软件物料清单（SBOM）、已知 CVE、开源许可证、启动安全配置，以及强度不足或私钥已公开的密钥，每项发现都附带证据和置信度。其 SBOM 还能在已剥离符号的镜像中，从 ELF 版本标识、libc 文件名和内核标识中识别组件，并输出为 CycloneDX 和 SPDX；CVE 检查则将 SBOM 与本地的 OSV 和 NVD 镜像比对，并标注 CISA KEV 与 EPSS 信息。它本身不解包镜像，识别和提取由作者的配套工具 moria 完成。","entry_url":"https://awesomerea.org/resources/mithril-iot-scanner/","entry_url_zh":"https://awesomerea.org/zh/resources/mithril-iot-scanner/","evidence_url":"https://github.com/nmatt0/mithril/blob/3f5bf55f9481b6447f4a8fb410862baff55b07f8/README.md","group":"tools","id":"mithril-iot-scanner","json_url":"https://awesomerea.org/resources/mithril-iot-scanner/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/mithril-iot-scanner/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mithril-iot-scanner/index.md","name":"mithril","name_zh":"mithril 物联网固件静态扫描器","record_type":"resource","relationship":"foundation","requirements":["A young, fast-moving project: the repository was created on 2026-09-07, and v0.4.0, published 2026-10-22, is the latest release at review, with Linux x86_64 and arm64 and macOS arm64 archives plus Debian packages for amd64 and arm64; the reviewed commit is the merge of that release.","Source builds need CMake 3.20+ and a C++20 compiler and link no third-party libraries; flake.nix, package.nix and Debian packaging are included. Input is a firmware file or a directory already extracted by moria or another unpacker; the --boot pass also reads a raw AMI or EDK2 BIOS image to report UEFI Secure Boot posture.","Scans make no network calls. The CVE pass needs a local mirror in .local/share/mithril under the home directory (or $MITHRIL_DB), downloaded once with --fetch-db from the project's weekly rebuilt db-latest release and checked against published SHA-256 sums (needs curl), or rebuilt from OSV.dev, NVD, CISA KEV, EPSS and the optional kernel.org feed with --update-db. README notes that the kernel checklist is curated rather than exhaustive, so an empty kernel result does not mean the kernel is clean, and that secret findings are well-formed matches, never confirmed live credentials.","The compiled-in key corpora are built from public keys and certificates vendored under data/: the public halves of rapid7 ssh-badkeys, the Vagrant insecure public key, eMudhra intermediate CA certificates, AOSP test-key public halves and the PKfail AMI test Platform Key certificate. THIRD_PARTY.md states that no private-key material is stored, and the key tests generate their keys with openssl at run time.","MIT; the vendored key data keeps its upstream MIT or Apache-2.0 terms, and the mirrored vulnerability feeds belong to their sources."],"requirements_zh":["这是一个很新、更新很快的项目：仓库创建于 2026-09-07，审阅时最新版本为 v0.4.0，发布于 2026-10-22，提供 Linux x86_64 与 arm64、macOS arm64 压缩包，以及 amd64 与 arm64 的 Debian 软件包；所审提交即该版本的合并提交。","从源码构建需要 CMake 3.20+ 和支持 C++20 的编译器，不链接任何第三方库；仓库附带 flake.nix、package.nix 和 Debian 打包文件。输入是固件文件，或已由 moria 或其他解包工具提取的目录；--boot 检查还可读取原始的 AMI 或 EDK2 BIOS 镜像，报告 UEFI 安全启动状态。","扫描过程不发起网络请求。CVE 检查需要位于用户主目录下 .local/share/mithril（或 $MITHRIL_DB 指定位置）的本地镜像：可用 --fetch-db 从项目每周重建的 db-latest 发布下载一次，并按公布的 SHA-256 校验（需要 curl），也可用 --update-db 从 OSV.dev、NVD、CISA KEV、EPSS 及可选的 kernel.org 数据源自行重建。README 指出内核检查清单经过筛选而非穷尽，内核结果为空并不代表内核没有漏洞；机密信息的发现只表示格式正确，从不确认凭据仍然有效。","编译进程序的密钥语料库由 data/ 下附带的公钥和证书生成：rapid7 ssh-badkeys 的公钥部分、Vagrant 不安全公钥、eMudhra 中间 CA 证书、AOSP 测试密钥的公钥部分，以及 PKfail AMI 测试平台密钥（Platform Key）证书。THIRD_PARTY.md 声明仓库不存放任何私钥材料，密钥相关测试在运行时用 openssl 生成所需密钥。","MIT 许可；附带的密钥数据沿用上游的 MIT 或 Apache-2.0 条款，镜像的漏洞数据归各数据源所有。"],"targets":["firmware"],"url":"https://github.com/nmatt0/mithril","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/BatchDrake/SigDigger/blob/70f688bb1ee7532fd45df079f753f7f92e841c08/doc/SigDigger_User_Manual.pdf","https://github.com/BatchDrake/SigDigger/blob/70f688bb1ee7532fd45df079f753f7f92e841c08/SigDigger.pro","https://github.com/BatchDrake/SigDigger/blob/70f688bb1ee7532fd45df079f753f7f92e841c08/LICENSE","https://github.com/BatchDrake/SigDigger/releases/tag/v0.3.0","https://github.com/BatchDrake/SigDigger/releases/tag/latest"],"category":"protocol-analysis","description_en":"Qt graphical digital signal analyzer by Gonzalo José Carracedo Carballal, built on his Suscan and Sigutils libraries; its user manual names reverse engineering of radio signals with unknown parameters as the main use. It receives from SoapySDR-supported SDRs or plays back recorded I/Q and WAV files, shows spectrum and waterfall views, and lets analysts measure captured stretches in a time window with carrier recovery, transforms and symbol sampling. Inspector tabs run user-tunable PSK, FSK and ASK demodulators with parameter estimation and can forward demodulated samples; it also decodes analog video and previews AM, FM and SSB audio.","description_zh":"由 Gonzalo José Carracedo Carballal 开发的 Qt 图形化数字信号分析器，基于他编写的 Suscan 与 Sigutils 库；用户手册称其主要用途是对参数未知的无线电信号进行逆向分析。它可从 SoapySDR 支持的 SDR 设备接收信号，或回放录制的 I/Q 与 WAV 文件，提供频谱和瀑布图视图，并可在时间窗口中测量截取的片段，支持载波恢复、变换和符号采样。检查器（inspector）标签页运行可由用户调节的 PSK、FSK 和 ASK 解调器，提供参数估计，并可转发解调后的样本；它还能解码模拟视频，并预听 AM、FM 和 SSB 音频。","entry_url":"https://awesomerea.org/resources/sigdigger/","entry_url_zh":"https://awesomerea.org/zh/resources/sigdigger/","evidence_url":"https://github.com/BatchDrake/SigDigger/blob/70f688bb1ee7532fd45df079f753f7f92e841c08/README.md","group":"tools","id":"sigdigger","json_url":"https://awesomerea.org/resources/sigdigger/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/sigdigger/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sigdigger/index.md","name":"SigDigger","name_zh":"SigDigger 数字信号分析器","record_type":"resource","relationship":"foundation","requirements":["Reviewed at master commit 70f688b (2026-02-11); the README says SigDigger, SuWidgets, Suscan and Sigutils all keep their latest working changes on master. The last stable release is v0.3.0 (2022-07-05, with an x86-64 Linux AppImage and a macOS DMG); a rolling pre-release tagged latest, rebuilt on 2025-04-08, provides a 0.3.0 Linux AppImage and a Windows zip. The bundled user manual is version 0.3.0, dated 2022-06-27, and calls itself a draft.","The README targets GNU/Linux and macOS: Linux users can run the AppImage (the manual asks for glibc 2.27 or newer), macOS DMGs are made on request, and the README says reproducible Windows builds with all DLL dependencies are not currently possible, leaving Windows users to build from source. Source builds install Sigutils and Suscan (CMake), then SuWidgets and SigDigger (qmake with Qt 5.9+ or Qt 6), in that order; SigDigger.pro also links FFTW through pkg-config. The README also offers the author's blsd script, which builds everything in a local directory.","Live analysis needs an SDR receiver supported by SoapySDR; without one, recorded RF/IF data can be loaded from WAV or raw complex-float I/Q files. The repository commits no signal recordings. Plugins such as AmateurDSN, APTPlugin, AntSDRPlugin and ZeroMQPlugin live in separate repositories.","LGPL-3.0 (LICENSE); the README says the spectrum widget is Gqrx's plotter with modifications. The manual describes symbol decision as human-guided, so recovered symbols and any protocol interpretation remain the analyst's work."],"requirements_zh":["审阅对象为 master 分支提交 70f688b（2026-02-11）；README 说明 SigDigger、SuWidgets、Suscan 和 Sigutils 都把最新可用的改动保存在 master 分支。最近的稳定版为 v0.3.0（2022-07-05，提供 x86-64 Linux AppImage 和 macOS DMG）；标签为 latest 的滚动预发布版于 2025-04-08 重新构建，提供 0.3.0 版 Linux AppImage 和 Windows 压缩包。仓库附带的用户手册为 0.3.0 版，日期为 2022-06-27，并自称仍是草稿。","README 面向 GNU/Linux 和 macOS：Linux 用户可直接运行 AppImage（手册要求 glibc 2.27 或更新版本），macOS DMG 按需制作；README 称目前无法以可复现的方式制作包含全部 DLL 依赖的 Windows 构建，Windows 用户需自行从源码构建。从源码构建须依次安装 Sigutils 和 Suscan（CMake），再构建 SuWidgets 和 SigDigger（qmake，需 Qt 5.9+ 或 Qt 6）；SigDigger.pro 还通过 pkg-config 链接 FFTW。README 另外提供作者的 blsd 脚本，可在本地目录中完成全部构建。","实时分析需要 SoapySDR 支持的 SDR 接收设备；没有设备时，可从 WAV 或原始复数浮点 I/Q 文件载入录制的射频/中频数据。仓库没有提交任何信号录制文件。AmateurDSN、APTPlugin、AntSDRPlugin 和 ZeroMQPlugin 等插件位于单独的仓库。","采用 LGPL-3.0（LICENSE）；README 说明其频谱控件是经过修改的 Gqrx 绘图控件。手册指出符号判决需由人工引导，因此恢复出的符号及其协议含义仍需分析人员自行判断。"],"targets":["protocol"],"url":"https://github.com/BatchDrake/SigDigger","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/dpnishant/appmon/blob/f753c4d287cd752fe926d2087236a98c3810d3e4/requirements.txt","https://github.com/dpnishant/appmon/blob/f753c4d287cd752fe926d2087236a98c3810d3e4/appmon.py","https://github.com/dpnishant/appmon/tree/f753c4d287cd752fe926d2087236a98c3810d3e4/scripts","https://github.com/dpnishant/appmon/blob/f753c4d287cd752fe926d2087236a98c3810d3e4/apk_builder/apk_builder.py","https://github.com/dpnishant/appmon/blob/f753c4d287cd752fe926d2087236a98c3810d3e4/apk_builder/getlibs.sh","https://github.com/dpnishant/appmon/blob/f753c4d287cd752fe926d2087236a98c3810d3e4/ipa_installer/ipa_installer.py","https://github.com/dpnishant/appmon/tree/f753c4d287cd752fe926d2087236a98c3810d3e4/ipa_installer/release","https://github.com/dpnishant/appmon/blob/f753c4d287cd752fe926d2087236a98c3810d3e4/LICENSE","https://github.com/dpnishant/appmon/wiki/4.a-Setup-Host/84516f44cf5ca37f669c8c8429d6cb46c10f0a7e","https://github.com/dpnishant/appmon/wiki/6.-Usage-Guide:-AppMon-Sniffer/4dc32e5740fdfad523d71fa9e6862bd34d0c1c83","https://frida.re/news/2025/05/17/frida-17-0-0-released/"],"category":"dynamic-analysis","description_en":"Frida-based framework by Nishant Das Patnaik, shown at Black Hat Arsenal 2016, for watching the system API calls that native macOS, iOS and Android apps make. Its Sniffer attaches to or spawns an app, loads hook scripts from a bundled library covering areas such as crypto, keychain, files, SQLite, HTTP, IPC and WebView, and records each intercepted call in a per-app SQLite database that a local Flask web interface displays. Further components trace Java classes, methods and argument types in Android apps and repackage IPAs or APKs with Frida Gadget so they can be inspected on non-jailbroken or non-rooted devices.","description_zh":"基于 Frida 的框架，由 Nishant Das Patnaik 开发，曾在 2016 年 Black Hat Arsenal 展示，用于观察 macOS、iOS 和 Android 原生应用发起的系统 API 调用。其 Sniffer 组件可附加到应用或启动应用，加载内置脚本库中的挂钩脚本（涵盖加密、钥匙串、文件、SQLite、HTTP、IPC 和 WebView 等方面），并把每次截获的调用记录到按应用划分的 SQLite 数据库中，由本地 Flask 网页界面展示。其他组件可追踪 Android 应用中的 Java 类、方法及参数类型，并可把 IPA 或 APK 与 Frida Gadget 一起重新打包，以便在未越狱或未 root 的设备上进行检查。","entry_url":"https://awesomerea.org/resources/appmon/","entry_url_zh":"https://awesomerea.org/zh/resources/appmon/","evidence_url":"https://github.com/dpnishant/appmon/blob/f753c4d287cd752fe926d2087236a98c3810d3e4/README.md","group":"tools","id":"appmon","json_url":"https://awesomerea.org/resources/appmon/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/appmon/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/appmon/index.md","name":"AppMon","name_zh":"AppMon 基于 Frida 的应用 API 监控框架","record_type":"resource","relationship":"foundation","requirements":["The repository is archived on GitHub and read-only. Its last commit on master, from 2022-11-08, changed the Frida release URL in apk_builder/getlibs.sh, and there are no releases. The usage documentation lives in the project wiki, last edited in 2019; the GitHub Pages site only links to it.","requirements.txt pins frida 12.2.6 (September 2018), Flask 1.0.2, Werkzeug 0.15.3 and other packages of that period. The hook scripts rely on Frida's Java and ObjC bridges and on legacy calls such as Module.findExportByName and Memory.readUtf8String, which Frida 17.0.0's release notes (May 2025) say are no longer bundled or have been removed, so current Frida releases are unlikely to work without changes.","The wiki's host setup covers macOS and Ubuntu or Kali Linux, with Android command-line tools on Linux. Jailbroken iOS and rooted Android devices run frida-server. For other devices the IPA Installer injects the committed ipa_installer/release/FridaGadget.dylib (about 14 MB) and re-signs the app with the user's iOS developer provisioning profile, while the APK Builder adds Frida Gadget libraries that getlibs.sh downloads and re-signs the APK with apk_builder/appmon.keystore, a shared key committed with a fixed password. Use these only on apps and devices you are permitted to test.","The README also lists an Intruder component that changes API-call data to alter an app's behavior. Apache-2.0 (LICENSE)."],"requirements_zh":["该仓库已在 GitHub 归档，处于只读状态。master 分支最后一次提交（2022-11-08）修改了 apk_builder/getlibs.sh 中的 Frida 发布地址，仓库没有发布版本。使用文档在项目 wiki 中，最后编辑于 2019 年；GitHub Pages 站点只提供指向 wiki 的链接。","requirements.txt 固定了 frida 12.2.6（2018 年 9 月）、Flask 1.0.2、Werkzeug 0.15.3 等同一时期的软件包。挂钩脚本依赖 Frida 的 Java 和 ObjC 桥接，以及 Module.findExportByName、Memory.readUtf8String 等旧式调用；Frida 17.0.0 的发布说明（2025 年 5 月）表示这些桥接已不再随运行时打包、这些旧 API 已被移除，因此当前的 Frida 版本不经修改很可能无法使用。","wiki 中的主机配置涵盖 macOS 以及 Ubuntu 或 Kali Linux，Linux 上还需 Android 命令行工具。已越狱的 iOS 和已 root 的 Android 设备上运行 frida-server。对于其他设备，IPA Installer 会注入仓库中提交的 ipa_installer/release/FridaGadget.dylib（约 14 MB），并用使用者的 iOS 开发者描述文件重新签名应用；APK Builder 则加入由 getlibs.sh 下载的 Frida Gadget 库，并用 apk_builder/appmon.keystore 重新签名 APK——这是随仓库提交、密码固定的共用密钥。这些功能只应用于获准测试的应用和设备。","README 还列出一个 Intruder 组件，用于修改 API 调用数据以改变应用行为。Apache-2.0（LICENSE）。"],"targets":["app"],"url":"https://github.com/dpnishant/appmon","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/tihmstar/img4tool/blob/bb2d63494c58993f5c8ce2ed7df207ab1063587b/img4tool/main.cpp#L44-L199","https://github.com/tihmstar/img4tool/blob/bb2d63494c58993f5c8ce2ed7df207ab1063587b/img4tool/img4tool.cpp","https://github.com/tihmstar/img4tool/blob/bb2d63494c58993f5c8ce2ed7df207ab1063587b/img4tool/lzssdec.c#L1-L8","https://github.com/tihmstar/img4tool/blob/bb2d63494c58993f5c8ce2ed7df207ab1063587b/configure.ac","https://github.com/tihmstar/img4tool/blob/bb2d63494c58993f5c8ce2ed7df207ab1063587b/.github/workflows/main.yml","https://github.com/tihmstar/img4tool/blob/bb2d63494c58993f5c8ce2ed7df207ab1063587b/LICENSE","https://github.com/tihmstar/img4tool/releases/tag/218"],"category":"firmware","description_en":"tihmstar's command-line tool and C++ library for Apple's IMG4 firmware container format. It prints the ASN.1 contents of IMG4 files, IM4P payload containers and IM4M signing manifests, including payload types, descriptions and key bags, and extracts IM4P or IM4M parts from IMG4 or SHSH files and payloads from IM4P files, decompressing LZSS or BVX2 (LZFSE) data and decrypting it when given an IV and key. It can also check an IM4M ticket or a signed IMG4 against a BuildManifest, convert IM4M files to SHSH, and build or rename containers for restore tooling.","description_zh":"tihmstar 开发的命令行工具和 C++ 库，用于处理 Apple 的 IMG4 固件容器格式。它可以打印 IMG4 文件、IM4P 载荷容器和 IM4M 签名清单的 ASN.1 内容，包括载荷类型、描述和密钥包（KBAG）；也可从 IMG4 或 SHSH 文件中提取 IM4P 或 IM4M、从 IM4P 中提取载荷，自动解压 LZSS 或 BVX2（LZFSE）压缩数据，并在提供 IV 和密钥时解密。此外，它能根据 BuildManifest 校验 IM4M 票据或已签名的 IMG4，把 IM4M 转换为 SHSH，并为恢复工具构建或重命名容器。","entry_url":"https://awesomerea.org/resources/img4tool/","entry_url_zh":"https://awesomerea.org/zh/resources/img4tool/","evidence_url":"https://github.com/tihmstar/img4tool/blob/bb2d63494c58993f5c8ce2ed7df207ab1063587b/README.md","group":"tools","id":"img4tool","json_url":"https://awesomerea.org/resources/img4tool/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/img4tool/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/img4tool/index.md","name":"img4tool","name_zh":"img4tool Apple IMG4 容器工具","record_type":"resource","relationship":"foundation","requirements":["Latest release at review: build 218, published 2026-01-29, which provides the CI's macOS and Ubuntu buildroot archives rather than packaged installers. The reviewed master commit (merged 2026-08-20) is two commits ahead of it, merging a fix to the generator argument. The version number is the repository's commit count.","Source builds use autoconf, automake, libtool and pkg-config with a C++11 compiler and require tihmstar's libgeneral. libplist-2.0 (for SHSH reading, verification and conversion) and a crypto backend (OpenSSL, or CommonCrypto on macOS) for decryption and payload hash checks are optional; without one, decryption fails and verification warns that it cannot check payload hashes. BVX2 support needs Apple's libcompression or liblzfse, and an optional libfwkeyfetch build adds a key-lookup option.","Input files are the user's own IMG4, IM4P, IM4M or SHSH files and BuildManifests. The repository is source only and commits no Apple firmware, tickets or keys, and decrypting a payload requires an IV and key that the user supplies. The bundled LZSS decoder (lzssdec.c) is adapted, per its header, from Jonathan Levin's joker code.","LGPL-3.0 license. Container creation, renaming and the IM4R generator option exist for restore workflows."],"requirements_zh":["审阅时最新版本为 build 218，发布于 2026-01-29，提供的是 CI 生成的 macOS 和 Ubuntu buildroot 压缩包，而非打包好的安装程序。所审阅的 master 提交（2026-08-20 合并）比它多两个提交，合并了一项 generator 参数修复。版本号即仓库的提交总数。","从源码构建需要 autoconf、automake、libtool、pkg-config 和支持 C++11 的编译器，并依赖 tihmstar 的 libgeneral。libplist-2.0（用于读取 SHSH、校验和格式转换）以及用于解密和载荷哈希校验的加密后端（OpenSSL，macOS 上也可用 CommonCrypto）均为可选依赖；缺少加密后端时无法解密，校验也会提示无法检查载荷哈希。BVX2 支持需要 Apple 的 libcompression 或 liblzfse；可选的 libfwkeyfetch 构建会增加一个密钥查询选项。","输入文件为使用者自有的 IMG4、IM4P、IM4M 或 SHSH 文件以及 BuildManifest。仓库只有源码，没有提交任何 Apple 固件、票据或密钥；解密载荷所需的 IV 和密钥须由使用者自行提供。按文件头说明，附带的 LZSS 解码器（lzssdec.c）改编自 Jonathan Levin 的 joker 代码。","采用 LGPL-3.0 许可。容器创建、重命名和 IM4R generator 选项服务于恢复流程。"],"targets":["firmware"],"url":"https://github.com/tihmstar/img4tool","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-03","additional_evidence_urls":["https://github.com/seemoo-lab/owl/blob/0ee3263f944ea721c355f826aa90d636d012a512/CMakeLists.txt","https://github.com/seemoo-lab/owl/blob/0ee3263f944ea721c355f826aa90d636d012a512/.gitmodules","https://github.com/seemoo-lab/owl/blob/0ee3263f944ea721c355f826aa90d636d012a512/daemon/owl.c","https://github.com/seemoo-lab/owl/blob/0ee3263f944ea721c355f826aa90d636d012a512/src/frame.h","https://github.com/seemoo-lab/owl/tree/0ee3263f944ea721c355f826aa90d636d012a512/tests","https://github.com/seemoo-lab/owl/blob/0ee3263f944ea721c355f826aa90d636d012a512/.github/workflows/test.yml","https://github.com/seemoo-lab/owl/blob/0ee3263f944ea721c355f826aa90d636d012a512/COPYING","https://doi.org/10.1145/3241539.3241566"],"category":"reconstruction-cases","description_en":"Reimplements Apple Wireless Direct Link (AWDL), the proprietary Wi-Fi ad hoc protocol Apple devices use for peer-to-peer links such as AirDrop, as a user-space C daemon for Linux and macOS; the README calls it the result of reverse engineering by the Open Wireless Link project at TU Darmstadt's SEEMOO lab. OWL runs the master election, synchronises availability windows and the channel sequence, parses and crafts AWDL action and data frames, and provides an awdl0 virtual interface with a link-local IPv6 address, so unmodified IPv6 programs such as SEEMOO's OpenDrop AirDrop client can reach Apple devices. The authors describe the recovered protocol in a MobiCom 2018 paper.","description_zh":"以用户态 C 守护进程在 Linux 和 macOS 上重新实现 Apple 无线直连（AWDL）——Apple 设备用于 AirDrop 等点对点连接的专有 Wi-Fi 自组网协议；README 称其为达姆施塔特工业大学 SEEMOO 实验室 Open Wireless Link 项目逆向工程的成果。OWL 执行主节点选举，同步可用窗口和信道序列，解析并构造 AWDL 动作帧与数据帧，并提供带链路本地 IPv6 地址的 awdl0 虚拟网络接口，使未经修改的 IPv6 程序（如 SEEMOO 的 AirDrop 客户端 OpenDrop）能够与 Apple 设备通信。作者在 MobiCom 2018 论文中描述了还原出的协议。","entry_url":"https://awesomerea.org/resources/owl-awdl-open-implementation-case/","entry_url_zh":"https://awesomerea.org/zh/resources/owl-awdl-open-implementation-case/","evidence_url":"https://github.com/seemoo-lab/owl/blob/0ee3263f944ea721c355f826aa90d636d012a512/README.md","group":"cases","id":"owl-awdl-open-implementation-case","json_url":"https://awesomerea.org/resources/owl-awdl-open-implementation-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/owl-awdl-open-implementation-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/owl-awdl-open-implementation-case/index.md","name":"OWL: an open Apple Wireless Direct Link implementation","name_zh":"OWL：开源的 Apple 无线直连（AWDL）实现","record_type":"resource","relationship":"independent-reconstruction","requirements":["Archived; the README calls OWL experimental and no longer maintained, says it does not support all AWDL features and may be incompatible with later AWDL versions, and states no affiliation with or endorsement by Apple. The last code change is a January 2022 buffer-overread fix; the 2026-08-17 and 2026-10-12 commits only replaced links to the former owlink website, which the README says is no longer associated with the project. There are no tags or releases.","Needs a Wi-Fi card with active monitor mode and frame injection, used directly: the authors developed and tested with an Atheros AR9280, and virtual machines without USB or PCIe passthrough and WSL are not supported. OWL runs with sudo on one wireless interface, which it then uses only for AWDL, so no access-point connection can run alongside it; channels 6, 44 and 149 are available subject to the local regulatory domain, and OWL can only monitor when it cannot use the chosen channel.","Builds with CMake 3.5+ and a C compiler against libpcap, libev and, on Linux, libnl; on macOS it uses CoreWLAN and needs a tun/tap driver such as tuntaposx. googletest and the radiotap library are git submodules. The workflow on ubuntu-latest and macos-latest builds the code and runs the googletest suite for frame-buffer parsing, election, peers and synchronisation; interoperation with Apple devices is the authors' report.","Nothing from Apple is needed to build it, and the repository holds only source code, tests, build files and an architecture diagram; using it requires nearby Apple devices with AWDL. README lists known gaps: static election metric and counter values, a channel sequence fixed at start-up because adapting it would need a better understanding of Apple's implementation, and no concurrent AP connection. It also cites the group's MobiCom 2018 protocol paper and demo and a USENIX Security 2019 security analysis of AWDL.","GPL-3.0 (COPYING); AWDL and AirDrop remain Apple's proprietary technology."],"requirements_zh":["仓库已归档；README 称 OWL 是实验性软件、已不再维护，并未支持 AWDL 的全部功能，可能与之后的 AWDL 版本不兼容，同时声明与 Apple 无关联、未获其认可。最后一次代码改动是 2022 年 1 月修复缓冲区越界读取；2026-08-17 和 2026-10-12 的提交只是替换了指向原 owlink 网站的链接，README 说明该网站已与本项目无关。仓库没有标签或发布版本。","需要支持主动监听模式和帧注入、且可直接访问的 Wi-Fi 网卡：作者使用 Atheros AR9280 开发和测试；不支持未做 USB 或 PCIe 直通的虚拟机，也不支持 WSL。OWL 需以 sudo 在一个无线接口上运行，运行后该接口只用于 AWDL，因此不能同时连接接入点；可用信道为 6、44 和 149，具体取决于当地的无线电管理规定，无法使用所选信道时 OWL 只能监听。","使用 CMake 3.5+ 和 C 编译器构建，依赖 libpcap、libev，Linux 上还需 libnl；macOS 上使用 CoreWLAN，并需要 tuntaposx 等 tun/tap 驱动。googletest 和 radiotap 库以 git 子模块引入。ubuntu-latest 与 macos-latest 上的工作流会构建代码并运行 googletest 测试，覆盖帧缓冲区解析、选举、对端管理和同步；与 Apple 设备的互通情况来自作者报告。","构建时不需要任何 Apple 文件，仓库只包含源代码、测试、构建文件和一张架构图；实际使用需要附近有启用 AWDL 的 Apple 设备。README 列出的已知不足包括：选举指标和计数器取静态值；信道序列在启动时固定，因为动态调整需要进一步了解 Apple 的实现；不能同时连接接入点。README 还引用了该团队的 MobiCom 2018 协议论文及演示，以及一篇 USENIX Security 2019 的 AWDL 安全分析论文。","GPL-3.0 许可（COPYING）；AWDL 和 AirDrop 仍是 Apple 的专有技术。"],"targets":["protocol"],"url":"https://github.com/seemoo-lab/owl","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-04","additional_evidence_urls":["https://github.com/bradleyjkemp/grpc-tools/blob/928b1b952d0d1345f0ef8fd2702e2df5240068bd/grpc-dump/README.md","https://github.com/bradleyjkemp/grpc-tools/blob/928b1b952d0d1345f0ef8fd2702e2df5240068bd/grpc-proxy/README.md","https://github.com/bradleyjkemp/grpc-tools/blob/928b1b952d0d1345f0ef8fd2702e2df5240068bd/grpc-replay/README.md","https://github.com/bradleyjkemp/grpc-tools/blob/928b1b952d0d1345f0ef8fd2702e2df5240068bd/grpc-fixture/README.md","https://github.com/bradleyjkemp/grpc-tools/blob/928b1b952d0d1345f0ef8fd2702e2df5240068bd/CHANGELOG.md","https://github.com/bradleyjkemp/grpc-tools/blob/928b1b952d0d1345f0ef8fd2702e2df5240068bd/go.mod","https://github.com/bradleyjkemp/grpc-tools/blob/928b1b952d0d1345f0ef8fd2702e2df5240068bd/.goreleaser.yml","https://github.com/bradleyjkemp/grpc-tools/blob/928b1b952d0d1345f0ef8fd2702e2df5240068bd/LICENSE","https://github.com/bradleyjkemp/grpc-tools/tree/928b1b952d0d1345f0ef8fd2702e2df5240068bd/integration_test","https://github.com/bradleyjkemp/grpc-tools/releases/tag/v0.2.6"],"category":"protocol-analysis","description_en":"Bradley Kemp's suite of gRPC debugging tools, described as Fiddler or Charles for gRPC. grpc-dump runs as a local HTTP(S) proxy that logs every gRPC and gRPC-Web call an application makes as a JSON stream with service and method names, metadata, any error status and each message both raw and parsed; without the .proto files it decodes messages heuristically. grpc-replay re-sends the recorded requests and checks the server's responses, grpc-fixture answers clients from a saved dump, and the grpc-proxy Go library underlies them.","description_zh":"Bradley Kemp 编写的一套 gRPC 调试工具，自称相当于 gRPC 版的 Fiddler 或 Charles。grpc-dump 作为本地 HTTP(S) 代理运行，把应用发出的每次 gRPC 与 gRPC-Web 调用记录为 JSON 流，包含服务名、方法名、元数据、可能出现的错误状态，以及每条消息的原始与解析形式；没有 .proto 文件时，它会以启发式方法解码消息。grpc-replay 重新发送记录下的请求并核对服务器响应，grpc-fixture 用保存的转储应答客户端，它们都构建在 grpc-proxy Go 库之上。","entry_url":"https://awesomerea.org/resources/grpc-tools/","entry_url_zh":"https://awesomerea.org/zh/resources/grpc-tools/","evidence_url":"https://github.com/bradleyjkemp/grpc-tools/blob/928b1b952d0d1345f0ef8fd2702e2df5240068bd/README.md","group":"tools","id":"grpc-tools","json_url":"https://awesomerea.org/resources/grpc-tools/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/grpc-tools/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/grpc-tools/index.md","name":"grpc-tools","name_zh":"grpc-tools gRPC 流量调试工具集","record_type":"resource","relationship":"foundation","requirements":["Reviewed at master commit 928b1b9 (2023-11-14), the last push. The latest release is v0.2.6 (2020-06-30), and master has six later commits, mostly dependency bumps plus a 64 MB message-size limit. The README calls the tools alpha and warns of breaking changes between releases.","Install through the author's Homebrew tap, the release zips (amd64 builds for Linux, macOS and Windows) or go install; go.mod declares Go 1.13 and requires grpc-go v1.26.0, golang/protobuf v1.4.2 and protoreflect v1.7.0. The application under test must be pointed at the proxy, and the README notes that clients connecting to localhost usually ignore proxy settings; the system_proxy option is documented for macOS.","Clients that expect TLS need a certificate they trust for the intercepted domains; the README recommends mkcert-generated certificates installed on the user's own machine. Supplying .proto roots or descriptors gives exact decoding instead of the heuristic one. The integration tests use a small test.proto and their own recorded dump and fixture files; CircleCI configuration is included.","MIT license. Dumps contain full message contents and metadata, including any credentials in headers, so they should be treated as sensitive."],"requirements_zh":["审阅对象为 master 分支提交 928b1b9（2023-11-14），也是最后一次推送。最新发行版为 v0.2.6（2020-06-30），master 在其后另有六个提交，主要是依赖升级，另将消息大小上限提高到 64 MB。README 称这些工具仍处于 alpha 阶段，并提醒各版本之间可能有不兼容的改动。","可通过作者的 Homebrew tap、发行版压缩包（Linux、macOS 和 Windows 的 amd64 构建）或 go install 安装；go.mod 声明 Go 1.13，并要求 grpc-go v1.26.0、golang/protobuf v1.4.2 和 protoreflect v1.7.0。被测应用需要指向该代理；README 提醒，连接 localhost 的客户端通常会忽略代理设置。system_proxy 选项的说明针对 macOS。","要求 TLS 的客户端需要信任为被拦截域名准备的证书；README 推荐用 mkcert 生成证书，并安装在用户自己的机器上。提供 .proto 根目录或描述符后可以精确解码，而不必依赖启发式解码。集成测试使用一个小型 test.proto 以及项目自己录制的转储和 fixture 文件；仓库附带 CircleCI 配置。","采用 MIT 许可证。转储包含完整的消息内容和元数据，其中也包括请求头里的凭据，因此应作为敏感数据处理。"],"targets":["app","protocol"],"url":"https://github.com/bradleyjkemp/grpc-tools","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-04","additional_evidence_urls":["https://github.com/mindedsecurity/JStillery/blob/512e9af2a54eb4592bf6fa6ac8483ceeb5726b03/package.json","https://github.com/mindedsecurity/JStillery/blob/512e9af2a54eb4592bf6fa6ac8483ceeb5726b03/jstillery_cli.js","https://github.com/mindedsecurity/JStillery/blob/512e9af2a54eb4592bf6fa6ac8483ceeb5726b03/src/jstiller.js","https://github.com/mindedsecurity/JStillery/blob/512e9af2a54eb4592bf6fa6ac8483ceeb5726b03/server/server.js","https://github.com/mindedsecurity/JStillery/blob/512e9af2a54eb4592bf6fa6ac8483ceeb5726b03/server/server_config.json","https://github.com/mindedsecurity/JStillery/blob/512e9af2a54eb4592bf6fa6ac8483ceeb5726b03/tests/tests.js","https://github.com/mindedsecurity/JStillery/tree/512e9af2a54eb4592bf6fa6ac8483ceeb5726b03/tests/tests_OK","https://github.com/mindedsecurity/JStillery/blob/512e9af2a54eb4592bf6fa6ac8483ceeb5726b03/LICENSE","https://blog.mindedsecurity.com/2015/10/advanced-js-deobfuscation-via-ast-and.html","https://nodejs.org/api/vm.html"],"category":"web-analysis","description_en":"Minded Security's JavaScript deobfuscator, which Stefano Di Paola forked from esdeobfuscate in 2015, simplifies scripts by partial evaluation on an esprima AST. It folds constant and string expressions, propagates known values through variables and pure function calls, evaluates calls to built-in String, Array and Number methods and atob/btoa, and parses string arguments passed to eval back into code. It runs as a command-line tool on a file or stdin, as an Express server with a web UI and a REST endpoint, or as a browserified library.","description_zh":"Minded Security 的 JavaScript 反混淆工具，由 Stefano Di Paola 于 2015 年从 esdeobfuscate 分支而来，在 esprima 语法树上通过部分求值简化脚本。它会折叠常量和字符串表达式，经由变量和纯函数调用传播已知值，对内置 String、Array、Number 方法以及 atob/btoa 的调用求值，并把传给 eval 的字符串参数重新解析为代码。它可作为命令行工具处理文件或标准输入，也可作为带网页界面和 REST 接口的 Express 服务运行，或作为经 browserify 打包的库使用。","entry_url":"https://awesomerea.org/resources/jstillery/","entry_url_zh":"https://awesomerea.org/zh/resources/jstillery/","evidence_url":"https://github.com/mindedsecurity/JStillery/blob/512e9af2a54eb4592bf6fa6ac8483ceeb5726b03/README.md","group":"tools","id":"jstillery","json_url":"https://awesomerea.org/resources/jstillery/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/jstillery/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/jstillery/index.md","name":"JStillery","name_zh":"JStillery JavaScript 部分求值反混淆工具","record_type":"resource","relationship":"foundation","requirements":["The newest commit on master dates from 2019-04-22, and there are no releases or tags. The 2015 Minded Security blog post that the README links describes JStillery as an internal tool used, among other things, to analyze JavaScript malware samples and normalize scripts for classification. The README also links a hosted REPL at mindedsecurity.github.io/jstillery.","Needs Node.js and npm install; package.json declares no Node.js version and leaves esprima, escodegen and esmangle unpinned, and no lockfile is committed, so each install takes their latest releases. The CLI prints the original and the deobfuscated code. npm run build_server copies the web UI and browserifies the library, and npm run start_server then serves the UI and a /deobfuscate endpoint on port 3001, with server_config.json allowing any origin by default.","Partial evaluation is on by default (the USE_PARTIAL environment variable turns it off only when set to an empty string) and passes selected expressions from the input to Node's vm.runInNewContext. Node's documentation says the vm module is not a security mechanism, so analyze untrusted samples in an isolated environment.","JStillery predates the newer deobfuscators, such as webcrack, javascript-deobfuscator and the Obfuscator.io Deobfuscator, and its documentation does not mention bundle unpacking, string-array decoding or control-flow unflattening. The mocha suite in tests/ compares output for samples including JSFuck, aaencode, jjencode and Dean Edwards' packer with stored expected results, some of which remain only partly simplified.","LICENSE and the README state GPL-3.0, while both package.json files declare ISC; src/jstiller.js keeps the BSD-style notice of esdeobfuscate. The web UI vendors jQuery, Bootstrap, CodeMirror, Font Awesome and js-beautify."],"requirements_zh":["master 分支最新提交为 2019-04-22，仓库没有发布版本或标签。README 链接的 2015 年 Minded Security 博客文章称，JStillery 是一款内部工具，用途之一是分析 JavaScript 恶意软件样本、对脚本做规范化以便分类。README 还链接了托管在 mindedsecurity.github.io/jstillery 的在线 REPL。","需要 Node.js 并执行 npm install；package.json 未声明 Node.js 版本，esprima、escodegen 和 esmangle 也未固定版本，且仓库没有锁文件，因此每次安装都会取它们的最新版本。命令行工具会输出原始代码和反混淆后的代码。npm run build_server 会复制网页界面并用 browserify 打包库，随后 npm run start_server 在 3001 端口提供网页界面和 /deobfuscate 接口；server_config.json 默认允许任意来源跨域访问。","部分求值默认开启（只有把 USE_PARTIAL 环境变量设为空字符串时才会关闭），会把输入中选定的表达式交给 Node 的 vm.runInNewContext 执行。Node 文档说明 vm 模块不是安全机制，因此应在隔离环境中分析不可信样本。","JStillery 早于较新反混淆工具，例如 webcrack、javascript-deobfuscator 和 Obfuscator.io Deobfuscator；其文档未提及解包打包文件、解码字符串数组或还原控制流平坦化。tests/ 中的 mocha 测试把 JSFuck、aaencode、jjencode 和 Dean Edwards packer 等样本的输出与保存的预期结果比对，其中部分预期结果仍只是部分简化。","LICENSE 和 README 均声明 GPL-3.0，而两个 package.json 文件都声明 ISC；src/jstiller.js 保留了 esdeobfuscate 的 BSD 式许可声明。网页界面内置了 jQuery、Bootstrap、CodeMirror、Font Awesome 和 js-beautify。"],"targets":["website"],"url":"https://github.com/mindedsecurity/JStillery","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-04","additional_evidence_urls":["https://github.com/google/enjarify/blob/f2db0563aa83885ce6e6acd5b7dc9a8a1a1e1987/enjarify/main.py","https://github.com/google/enjarify/blob/f2db0563aa83885ce6e6acd5b7dc9a8a1a1e1987/enjarify.sh","https://github.com/google/enjarify/blob/f2db0563aa83885ce6e6acd5b7dc9a8a1a1e1987/enjarify.bat","https://github.com/google/enjarify/blob/f2db0563aa83885ce6e6acd5b7dc9a8a1a1e1987/enjarify/runtests.py","https://github.com/google/enjarify/tree/f2db0563aa83885ce6e6acd5b7dc9a8a1a1e1987/tests","https://github.com/google/enjarify/blob/f2db0563aa83885ce6e6acd5b7dc9a8a1a1e1987/LICENSE.txt","https://github.com/google/enjarify/releases/tag/1.0.3","https://github.com/Storyyeller/enjarify/tree/6364dfb30f7862873b84ec5fad1d1286c526ba0b"],"category":"android","description_en":"Pure-Python 3 translator from Dalvik bytecode to equivalent Java bytecode, so Java analysis tools and decompilers can be applied to Android apps: given an APK, with every DEX file of a multidex APK combined into one jar, or a single DEX file, it writes a jar of class files. Its README contrasts it with dex2jar and lists edge cases it handles, such as Unicode class names, constants used as several types, implicit casts, exception handlers that jump into normal control flow, very long methods and classes that reference too many constants. By default it also applies readability optimizations such as copy propagation and unused-value removal.","description_zh":"用纯 Python 3 编写的转换工具，把 Dalvik 字节码转换为等价的 Java 字节码，使 Java 分析工具和反编译器可以用于 Android 应用：输入 APK（多 dex APK 中的所有 DEX 文件会合并到同一个 jar）或单个 DEX 文件，即可输出由 class 文件组成的 jar。README 将其与 dex2jar 对比，并列出它能处理的边缘情况，例如 Unicode 类名、被当作多种类型使用的常量、隐式类型转换、跳入正常控制流的异常处理器、超长方法，以及引用常量过多的类。默认还会进行复制传播、删除未使用值等提高可读性的优化。","entry_url":"https://awesomerea.org/resources/enjarify/","entry_url_zh":"https://awesomerea.org/zh/resources/enjarify/","evidence_url":"https://github.com/google/enjarify/blob/f2db0563aa83885ce6e6acd5b7dc9a8a1a1e1987/README.md","group":"tools","id":"enjarify","json_url":"https://awesomerea.org/resources/enjarify/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/enjarify/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/enjarify/index.md","name":"Enjarify","name_zh":"Enjarify Dalvik 转 Java 字节码工具","record_type":"resource","relationship":"foundation","requirements":["Archived. Latest release at review: 1.0.3, published 2016-12-20 with no assets; the last commit is from 2017-01-30. The README says this repository may be out of date and that future development moved to Storyyeller/enjarify, whose master branch is 15 commits ahead, with its last commit on 2020-03-07.","Runs from a clone with Python 3 and no other dependencies. enjarify.sh prefers PyPy3, which the README calls much faster than CPython, and enjarify.bat always calls python3. Input is the analyst's own APK or DEX file; the output defaults to [inputname]-enjarify.jar, -o sets the name, -f allows overwriting and --fast skips the optimizations.","Optional metadata such as source-file attributes, line numbers and annotations is not translated, and the README notes contrived cases that cannot be translated because of Android or Java limits. The output is bytecode, so reading it as source needs a separate Java decompiler. runtests.py translates the bundled fixtures, small classes.dex files with their smali sources and expected outputs in tests/test1 to tests/test7, adds the small Android API stub classes from tests/stubs and runs the result with java.","Apache-2.0; the README states that it is not an official Google product."],"requirements_zh":["仓库已归档。审阅时最新版本为 1.0.3，发布于 2016-12-20，没有附件；最后一次提交在 2017-01-30。README 指出本仓库可能已过时，后续开发转到 Storyyeller/enjarify；该仓库的 master 分支领先 15 个提交，最后一次提交在 2020-03-07。","从克隆的仓库直接用 Python 3 运行，无需其他依赖。enjarify.sh 优先使用 PyPy3（README 称其比 CPython 快得多），enjarify.bat 则始终调用 python3。输入是分析者自己的 APK 或 DEX 文件；输出默认为 [输入文件名]-enjarify.jar，-o 指定文件名，-f 允许覆盖，--fast 跳过优化。","不会转换源文件属性、行号和注解等可选元数据；README 还提到少数刻意构造的情况受 Android 或 Java 自身限制而无法转换。输出的是字节码，要阅读源码需另用 Java 反编译器。runtests.py 会转换随附的测试夹具（tests/test1 至 tests/test7 中的小型 classes.dex 及其 smali 源码和预期输出），加入 tests/stubs 中的小型 Android API 桩类，再用 java 运行结果。","Apache-2.0 许可；README 声明它不是 Google 的官方产品。"],"targets":["app"],"url":"https://github.com/google/enjarify","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-04","additional_evidence_urls":["https://github.com/airbus-cert/Yagi/blob/6fc4787bf3dcb8480be5bf990662b30bf9130d53/CHANGELOG.md","https://github.com/airbus-cert/Yagi/blob/6fc4787bf3dcb8480be5bf990662b30bf9130d53/.gitmodules","https://github.com/airbus-cert/Yagi/blob/6fc4787bf3dcb8480be5bf990662b30bf9130d53/CMakeLists.txt","https://github.com/airbus-cert/Yagi/tree/6fc4787bf3dcb8480be5bf990662b30bf9130d53/tests","https://github.com/airbus-cert/Yagi/blob/6fc4787bf3dcb8480be5bf990662b30bf9130d53/.github/workflows/unittests.yml","https://github.com/airbus-cert/Yagi/blob/6fc4787bf3dcb8480be5bf990662b30bf9130d53/LICENSE","https://github.com/airbus-cert/Yagi/releases/tag/v1.5.0","https://github.com/airbus-cert/Yagi/releases/tag/v1.4.0"],"category":"native-analysis","description_en":"Airbus CERT plugin that embeds Ghidra's native decompiler in IDA Pro and IDA Free: pressing F3 on a function shows Ghidra's C output inside IDA, and edits made there, covering global symbols such as function prototypes and the names and types of stack and register variables, are saved to the IDA database. The README lists x86, x86-64, ARM, AArch64, PowerPC, MIPS, SPARC, AVR8, 6502, Z80 and eBPF as supported, while other Ghidra processors such as Dalvik, JVM, RISC-V and 68000 are not yet enabled.","description_zh":"Airbus CERT 开发的插件，把 Ghidra 的原生反编译器嵌入 IDA Pro 和 IDA Free：在函数上按 F3 即可在 IDA 中查看 Ghidra 生成的 C 代码，在其中所做的修改（包括函数原型等全局符号，以及栈变量和寄存器变量的名称与类型）会保存到 IDA 数据库。README 列出已支持 x86、x86-64、ARM、AArch64、PowerPC、MIPS、SPARC、AVR8、6502、Z80 和 eBPF，而 Dalvik、JVM、RISC-V、68000 等其他 Ghidra 处理器尚未启用。","entry_url":"https://awesomerea.org/resources/yagi-ghidra-decompiler-for-ida/","entry_url_zh":"https://awesomerea.org/zh/resources/yagi-ghidra-decompiler-for-ida/","evidence_url":"https://github.com/airbus-cert/Yagi/blob/6fc4787bf3dcb8480be5bf990662b30bf9130d53/README.md","group":"tools","id":"yagi-ghidra-decompiler-for-ida","json_url":"https://awesomerea.org/resources/yagi-ghidra-decompiler-for-ida/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/yagi-ghidra-decompiler-for-ida/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/yagi-ghidra-decompiler-for-ida/index.md","name":"Yagi","name_zh":"Yagi：IDA 中的 Ghidra 反编译器","record_type":"resource","relationship":"foundation","requirements":["Inactive since its latest release, v1.5.0 (2022-08-04), which adds eBPF and IDA 7.7 support and ships Windows MSI installers for IDA 7.6, IDA 7.7 and IDA Freeware; the last Linux installers (.sh and .tar.gz for IDA 7.5, 7.6 and Freeware) are in v1.4.0 (2021-12-20). No builds for IDA 8 or later are published. The default branch is main; an older master branch stops in 2021.","Source builds need a recursive clone, whose submodules are Airbus CERT's Ghidra fork on its fix-memory-access-violation branch (pinned at the Ghidra 10.1 release commit), eBPF-for-Ghidra and cylance/eBPF_processor. They also need CMake 3.11+, a C++ compiler (Visual Studio on Windows), flex and bison for the SLEIGH grammar, WiX for the Windows installer, and the Hex-Rays IDA SDK matching the user's IDA version, which the repository does not include.","The workflows build on a self-hosted Windows runner against a locally installed IDA 7.6 SDK. Their googletest unit tests decompile machine-code byte arrays written into the test sources for x86 (16-, 32- and 64-bit), ARM, MIPS, PowerPC, SPARC, 6502 and Z80, using mocked IDA loader, symbol and type interfaces. README TODOs include enum types, AArch64 function-end rules and changing constant types.","Apache-2.0; Ghidra's decompiler keeps its own Apache-2.0 terms, and IDA and its SDK are Hex-Rays products under their own licenses."],"requirements_zh":["自最新版本 v1.5.0（2022-08-04）后即无更新；该版本新增 eBPF 和 IDA 7.7 支持，提供适用于 IDA 7.6、IDA 7.7 和 IDA Freeware 的 Windows MSI 安装包；最后的 Linux 安装包（适用于 IDA 7.5、7.6 和 Freeware 的 .sh 与 .tar.gz）见 v1.4.0（2021-12-20）。没有发布适用于 IDA 8 及以后版本的构建。默认分支为 main；较旧的 master 分支停在 2021 年。","从源码构建需要递归克隆，子模块包括 Airbus CERT 维护的 Ghidra 分支（fix-memory-access-violation 分支，固定在 Ghidra 10.1 发布提交）、eBPF-for-Ghidra 和 cylance/eBPF_processor。另外需要 CMake 3.11+、C++ 编译器（Windows 上为 Visual Studio）、用于解析 SLEIGH 语法的 flex 和 bison、用于生成 Windows 安装包的 WiX，以及与使用者 IDA 版本对应的 Hex-Rays IDA SDK；仓库不包含该 SDK。","工作流在自托管的 Windows 运行器上，基于本地安装的 IDA 7.6 SDK 构建。其 googletest 单元测试通过模拟的 IDA 加载器、符号和类型接口，反编译直接写在测试源码中的机器码字节数组，覆盖 x86（16、32、64 位）、ARM、MIPS、PowerPC、SPARC、6502 和 Z80。README 的待办事项包括枚举类型、AArch64 函数结尾规则以及修改常量类型。","Apache-2.0 许可；Ghidra 反编译器沿用其自身的 Apache-2.0 条款，IDA 及其 SDK 是 Hex-Rays 的产品，各有许可条款。"],"targets":["binary"],"url":"https://github.com/airbus-cert/Yagi","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-04","additional_evidence_urls":["https://github.com/CapacitorSet/box-js/blob/f4bb9942f73e1b6eede149103fa074e0d408a6a7/package.json","https://github.com/CapacitorSet/box-js/blob/f4bb9942f73e1b6eede149103fa074e0d408a6a7/RELEASE_NOTES.txt","https://github.com/CapacitorSet/box-js/blob/f4bb9942f73e1b6eede149103fa074e0d408a6a7/integrations/README.md","https://github.com/CapacitorSet/box-js/blob/f4bb9942f73e1b6eede149103fa074e0d408a6a7/integrations/docker/Dockerfile","https://github.com/CapacitorSet/box-js/blob/f4bb9942f73e1b6eede149103fa074e0d408a6a7/decoder.c","https://github.com/CapacitorSet/box-js/tree/f4bb9942f73e1b6eede149103fa074e0d408a6a7/emulator","https://github.com/CapacitorSet/box-js/blob/f4bb9942f73e1b6eede149103fa074e0d408a6a7/LICENSE","https://www.npmjs.com/package/box-js/v/1.9.29"],"category":"web-analysis","description_en":"Node.js utility for studying malicious JavaScript that runs a sample inside an emulated Windows JScript environment, with WScript, ActiveX, filesystem, registry, WMI and HTTP objects emulated and source rewriting that exposes eval calls and conditional-compilation code. Each analysis writes a results folder with the URLs requested and those that led to an executable payload, every code snippet executed (JavaScript, cmd.exe and PowerShell), files written with their types and hashes, and a list of IOCs; by default downloads are answered with simulated 404 errors so that fallback sites are revealed. Batch runs, an optional prepended file of browser-object stubs, a Docker image, a REST API and export to VirusTotal or Cuckoo support triage at scale.","description_zh":"用于研究恶意 JavaScript 的 Node.js 工具：在模拟的 Windows JScript 环境中运行样本，模拟 WScript、ActiveX、文件系统、注册表、WMI 和 HTTP 对象，并通过改写源码暴露 eval 调用和条件编译代码。每次分析都会生成结果文件夹，记录请求过的 URL 及其中导致可执行载荷的 URL、执行过的每段代码（JavaScript、cmd.exe 和 PowerShell 命令）、写入的文件及其类型和哈希，以及 IOC 列表；默认情况下，下载请求会收到模拟的 404 错误，以暴露样本的备用站点。支持批量分析、可选预置的浏览器对象桩代码文件、Docker 镜像、REST API，以及导出到 VirusTotal 或 Cuckoo，便于大规模初筛。","entry_url":"https://awesomerea.org/resources/box-js/","entry_url_zh":"https://awesomerea.org/zh/resources/box-js/","evidence_url":"https://github.com/CapacitorSet/box-js/blob/f4bb9942f73e1b6eede149103fa074e0d408a6a7/README.md","group":"tools","id":"box-js","json_url":"https://awesomerea.org/resources/box-js/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/box-js/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/box-js/index.md","name":"box.js","name_zh":"box.js 恶意 JavaScript 分析工具","record_type":"resource","relationship":"foundation","requirements":["Latest npm release at review: 1.9.29, published 2026-07-02 alongside the reviewed master commit, which adapts the sandbox to the latest vm2 package; RELEASE_NOTES.txt numbers the same releases 1.19.x. Recent development is by Kirk Sayre through pull requests. Installs with npm install box-js --global; package.json declares Node.js 6 or later and depends on vm2 >=3.9.19, jsdom 16, acorn and escodegen, and the READMEs list REMnux and BlackArch packages and Cuckoo, CAPE and IntelOwl integrations.","Input is the analyst's own sample file or folder of samples; the repository ships no malware samples, only emulator code, a generated Windows process list (emulator/processes.json), source-rewriting patches and a mocha test file. Encoded .jse files must first be decoded with the bundled decoder.c, MrBrownstone's 2000–2005 Script Encoder decoder, compiled with a C compiler; VBScript is not parsed as input.","Samples run inside vm2, with a 10-second default timeout; --dangerous-vm switches to Node's vm module, which the README says can be broken. --download makes real requests to the URLs a sample contacts, so leave it off unless the network is isolated. The README recommends a temporary Docker container for further isolation; integrations/docker/Dockerfile is based on node:8-alpine, and the REST API server needs a user who can start Docker containers.","Emulation is incomplete by design: unsupported ActiveX objects or methods stop the analysis until someone implements them, and samples with environment or date checks may show no behaviour. MIT; decoder.c keeps its author's notice."],"requirements_zh":["审阅时 npm 最新版本为 1.9.29，于 2026-07-02 与所审 master 提交同时发布；该提交使沙箱适配最新的 vm2 包。RELEASE_NOTES.txt 将同一批版本编号为 1.19.x。近期开发由 Kirk Sayre 通过拉取请求进行。可用 npm install box-js --global 安装；package.json 声明需要 Node.js 6 或更高版本，依赖 vm2 >=3.9.19、jsdom 16、acorn 和 escodegen；README 列出 REMnux 与 BlackArch 软件包，以及 Cuckoo、CAPE 和 IntelOwl 集成。","输入是分析者自己的样本文件或样本文件夹；仓库不含恶意软件样本，只有模拟器代码、生成的 Windows 进程列表（emulator/processes.json）、源码改写补丁和一个 mocha 测试文件。编码过的 .jse 文件需先用随附的 decoder.c（MrBrownstone 于 2000–2005 年编写的 Script Encoder 解码器，用 C 编译器编译）解码；不支持以 VBScript 作为输入。","样本在 vm2 中运行，默认超时 10 秒；--dangerous-vm 会改用 Node 的 vm 模块，README 称该沙箱可被突破。--download 会向样本访问的 URL 发出真实请求，除非网络已隔离，否则不要启用。README 建议在临时 Docker 容器中运行以进一步隔离；integrations/docker/Dockerfile 基于 node:8-alpine，REST API 服务器要求运行用户能够启动 Docker 容器。","模拟本身并不完整：遇到尚未支持的 ActiveX 对象或方法时，分析会停止，直到有人实现它们；带有环境或日期检查的样本可能不表现出任何行为。MIT 许可；decoder.c 保留其作者的声明。"],"targets":["website"],"url":"https://github.com/CapacitorSet/box-js","verification":"source-reviewed","verified_at":"2026-10-27"},{"added_at":"2026-11-04","additional_evidence_urls":["https://github.com/emirmrkaljevic/usb-rea/blob/3b77ccbe3b2c87e344a507937ac3c4a1b2a35eb1/docs/VALIDATION.md","https://github.com/emirmrkaljevic/usb-rea/blob/3b77ccbe3b2c87e344a507937ac3c4a1b2a35eb1/docs/case-study-hydro-platinum.md","https://github.com/emirmrkaljevic/usb-rea/blob/3b77ccbe3b2c87e344a507937ac3c4a1b2a35eb1/tests/data/SOURCES.md","https://github.com/emirmrkaljevic/usb-rea/blob/3b77ccbe3b2c87e344a507937ac3c4a1b2a35eb1/.github/workflows/ci.yml","https://github.com/emirmrkaljevic/usb-rea/blob/3b77ccbe3b2c87e344a507937ac3c4a1b2a35eb1/src/usb_rea/capture.py","https://github.com/emirmrkaljevic/usb-rea/blob/3b77ccbe3b2c87e344a507937ac3c4a1b2a35eb1/src/usb_rea/replay.py","https://github.com/emirmrkaljevic/usb-rea/blob/3b77ccbe3b2c87e344a507937ac3c4a1b2a35eb1/pyproject.toml","https://github.com/emirmrkaljevic/usb-rea/blob/3b77ccbe3b2c87e344a507937ac3c4a1b2a35eb1/LICENSE","https://github.com/emirmrkaljevic/usb-rea/releases/tag/v0.7.7","https://pypi.org/project/usb-rea/0.7.7/"],"category":"agent-mcp","description_en":"Python CLI and stdio MCP server for inferring the USB protocol of a device whose only control software is a vendor app. While the user clicks through the app, it captures traffic with usbmon or USBPcap, takes a label for each action, diffs the packets per action and infers message layouts: constant bytes, rolling counters, scaled 8- to 32-bit values, lookup tables, packed bit fields and sum, XOR or CRC checksums. It also decodes device replies, handshakes with session tokens and image streams sent to device screens, links each inferred field to Wireshark frame numbers in a report, and generates a pyusb driver and a Wireshark Lua dissector.","description_zh":"Python 命令行工具与 stdio MCP 服务器，用于推断只配有厂商应用的 USB 设备所用的协议。使用者在厂商应用中逐项操作时，它通过 usbmon 或 USBPcap 抓取流量，为每次操作记录标签，按操作比对数据包并推断消息格式：固定字节、滚动计数器、带缩放的 8 至 32 位数值、查找表、打包位字段，以及求和、异或或 CRC 校验。它还能解码设备回复、带会话令牌的握手和发往设备屏幕的图像流，在报告中把每个推断出的字段关联到 Wireshark 帧号，并生成 pyusb 驱动和 Wireshark Lua 解析器。","entry_url":"https://awesomerea.org/resources/usb-rea/","entry_url_zh":"https://awesomerea.org/zh/resources/usb-rea/","evidence_url":"https://github.com/emirmrkaljevic/usb-rea/blob/3b77ccbe3b2c87e344a507937ac3c4a1b2a35eb1/README.md","group":"agents","id":"usb-rea","json_url":"https://awesomerea.org/resources/usb-rea/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/usb-rea/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/usb-rea/index.md","name":"usb-rea","name_zh":"usb-rea：USB 设备协议推断命令行工具与 MCP 服务器","record_type":"resource","relationship":"independent-agent-integration","requirement_facets":["prerequisites","limits","testing","license","attribution"],"requirements":["Python 3.10+, with pyusb and the MCP SDK as dependencies; version 0.7.7 (released 2026-11-01) is on PyPI. Live capture needs Linux usbmon with dumpcap or tshark, or USBPcap on Windows; offline analysis reads pcap or pcapng files whose actions are marked with timestamps or listed in order with a pause between clicks. The user supplies the device and its vendor app, and the README says the tool only analyzes traffic of devices the user owns.","The README marks the project alpha and lists limits per feature, among them one-byte modes, unsigned 32-bit readings, handshake tokens that must be copied verbatim and image streams of at least three frames. Sending packets to hardware through the replay command or MCP tool requires explicit confirmation.","CI runs pytest on Python 3.10, 3.12 and 3.13, including tshark checks of the generated dissectors. docs/VALIDATION.md uses synthetic devices, captures synthesized from liquidctl's Kraken X and Hydro H100i Platinum drivers and rivalcfg's Rival 100 driver as ground truth, and two Wireshark sample captures downloaded on demand; one user-shared ASUS TUF Gaming LC III LCD capture is stored trimmed, with its image data zeroed. Emulated-gadget tests and real-hardware case studies remain open roadmap items.","MIT per LICENSE and pyproject.toml.","The README expands the name as “Reverse Engineer any USB gadget”."],"requirements_zh":["需要 Python 3.10+，依赖 pyusb 与 MCP SDK；0.7.7 版（2026-11-01 发布）已发布到 PyPI。实时抓包需要 Linux 的 usbmon 加 dumpcap 或 tshark，或 Windows 上的 USBPcap；离线分析读取 pcap 或 pcapng 文件，其中各项操作需带时间戳标记，或按顺序列出且每次点击之间留有停顿。设备及其厂商应用由使用者自备，README 称该工具只分析使用者自有设备的流量。","README 将项目标为 alpha 阶段，并逐项列出功能局限，其中包括模式只能占一个字节、32 位读数不按有符号数处理、握手令牌必须原样复制，以及图像流至少需要三帧。通过 replay 命令或 MCP 工具向硬件发送数据包需要明确确认。","CI 在 Python 3.10、3.12 和 3.13 上运行 pytest，其中包括用 tshark 检查生成的解析器。docs/VALIDATION.md 使用的基准包括合成设备、依据 liquidctl 的 Kraken X 与 Hydro H100i Platinum 驱动及 rivalcfg 的 Rival 100 驱动合成的抓包，以及按需下载的两个 Wireshark 示例抓包；仓库还保存了一份用户分享的 ASUS TUF Gaming LC III LCD 抓包，已裁剪并将图像数据清零。模拟 USB 设备测试和真实硬件案例仍是路线图上的未完成项。","依 LICENSE 与 pyproject.toml 采用 MIT 许可。","README 把名称解释为“Reverse Engineer any USB gadget”（逆向任意 USB 设备）。"],"targets":["protocol"],"url":"https://github.com/emirmrkaljevic/usb-rea","verification":"source-reviewed","verified_at":"2026-11-02"},{"added_at":"2026-11-04","additional_evidence_urls":["https://github.com/ViRb3/magisk-frida/blob/1f4003ac218cbd43b082673cd4243bba04ada019/TROUBLESHOOTING.md","https://github.com/ViRb3/magisk-frida/blob/1f4003ac218cbd43b082673cd4243bba04ada019/.github/workflows/main.yml","https://github.com/ViRb3/magisk-frida/blob/1f4003ac218cbd43b082673cd4243bba04ada019/build.py","https://github.com/ViRb3/magisk-frida/blob/1f4003ac218cbd43b082673cd4243bba04ada019/base/customize.sh","https://github.com/ViRb3/magisk-frida/blob/1f4003ac218cbd43b082673cd4243bba04ada019/base/utils.sh","https://github.com/ViRb3/magisk-frida/blob/1f4003ac218cbd43b082673cd4243bba04ada019/base/action.sh","https://github.com/ViRb3/magisk-frida/releases/tag/17.25.1-1","https://github.com/frida/frida/blob/783c61434b1936b0b708bcdfb110cf8df1ba730c/COPYING"],"category":"android","description_en":"Magisk, KernelSU and APatch module that installs frida-server on a rooted Android device and starts it at boot, so Frida clients can attach for dynamic instrumentation without starting the server by hand. A daily GitHub Actions job checks for a new Frida release, downloads Frida's official frida-server builds for arm64, arm, x86 and x86_64, and publishes a matching module ZIP with an updater.json for updates from the root manager. The server listens on 127.0.0.1:27042 unless another port is written to a file in the module directory, and the module's action button starts or stops it.","description_zh":"Magisk、KernelSU 与 APatch 模块，在已 root 的 Android 设备上安装 frida-server 并在开机时启动，Frida 客户端无需手动启动服务即可连接进行动态插桩。GitHub Actions 每天检查 Frida 是否有新版本，下载 Frida 官方为 arm64、arm、x86 和 x86_64 构建的 frida-server，并发布对应的模块 ZIP 及供 root 管理器更新使用的 updater.json。服务默认监听 127.0.0.1:27042，可在模块目录的文件中写入其他端口；模块的操作按钮可启动或停止服务。","entry_url":"https://awesomerea.org/resources/magisk-frida/","entry_url_zh":"https://awesomerea.org/zh/resources/magisk-frida/","evidence_url":"https://github.com/ViRb3/magisk-frida/blob/1f4003ac218cbd43b082673cd4243bba04ada019/README.md","group":"tools","id":"magisk-frida","json_url":"https://awesomerea.org/resources/magisk-frida/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/magisk-frida/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/magisk-frida/index.md","name":"MagiskFrida","name_zh":"MagiskFrida 开机自启 frida-server 的 root 模块","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","scope","testing","license"],"requirements":["Needs a rooted Android device with Magisk, KernelSU or APatch on arm64, arm, x86 or x86_64; the README says to install MagiskFrida.zip from the GitHub releases rather than the obsolete Magisk modules repository. The troubleshooting guide asks for a working adb shell, a stable, up-to-date Magisk with MagiskHide disabled and an AOSP-based ROM. Building the ZIP yourself needs uv and Python (CI uses 3.13) and downloads frida-server from Frida's GitHub releases.","Release versions follow the bundled Frida version; at review the latest was 17.25.1-1 (2026-11-01), built the day Frida published 17.25.1. The module only installs and supervises frida-server: instrumentation runs through Frida's own clients and scripts.","The CI workflow builds and publishes the ZIP; the repository has no test suite.","The repository has no license file and GitHub detects no license, so it states no reuse terms for its scripts. The bundled frida-server binaries are Frida's official builds under the wxWindows Library Licence."],"requirements_zh":["需要已通过 Magisk、KernelSU 或 APatch 获取 root 的 Android 设备，架构为 arm64、arm、x86 或 x86_64；README 要求从 GitHub Release 安装 MagiskFrida.zip，而不是已过时的 Magisk 模块仓库。故障排查指南要求 adb shell 可正常使用、Magisk 为稳定的最新版本且已关闭 MagiskHide，并使用基于 AOSP 的 ROM。自行构建 ZIP 需要 uv 和 Python（CI 使用 3.13），并会从 Frida 的 GitHub Release 下载 frida-server。","发布版本号跟随所打包的 Frida 版本；审阅时最新版为 17.25.1-1（2026-11-01），与 Frida 发布 17.25.1 同日构建。该模块只负责安装和维持 frida-server 运行：插桩本身通过 Frida 自己的客户端和脚本完成。","CI 工作流负责构建并发布 ZIP；仓库没有测试套件。","仓库没有许可证文件，GitHub 也未检测到许可证，因此其脚本未声明任何复用条款。打包的 frida-server 二进制文件是 Frida 官方构建，采用 wxWindows Library Licence。"],"targets":["app"],"url":"https://github.com/ViRb3/magisk-frida","verification":"source-reviewed","verified_at":"2026-11-02"},{"added_at":"2026-11-04","additional_evidence_urls":["https://github.com/0xdea/frida-scripts/blob/987ba480812033bbe3a9d2262a9764e1a4ed8547/raptor_frida_android_trace.js","https://github.com/0xdea/frida-scripts/blob/987ba480812033bbe3a9d2262a9764e1a4ed8547/raptor_frida_ios_trace.js","https://github.com/0xdea/frida-scripts/blob/987ba480812033bbe3a9d2262a9764e1a4ed8547/raptor_frida_linux_trace.js","https://github.com/0xdea/frida-scripts/blob/987ba480812033bbe3a9d2262a9764e1a4ed8547/raptor_frida_android_enum.js","https://github.com/0xdea/frida-scripts/blob/987ba480812033bbe3a9d2262a9764e1a4ed8547/CHANGELOG.md","https://github.com/0xdea/frida-scripts/blob/987ba480812033bbe3a9d2262a9764e1a4ed8547/LICENSE","https://github.com/0xdea/frida-scripts/releases/tag/v0.2"],"category":"dynamic-analysis","description_en":"Marco Ivaldi's (raptor) collection of Frida JavaScript instrumentation scripts for reverse engineering mobile apps and Linux programs. The main Android and iOS tracers hook Java or Objective-C classes and methods selected by name, wildcard or regular expression, plus native functions matched by Frida ApiResolver patterns such as exports:*!open*, and log each call's arguments and return value; they can also print backtraces. Companion scripts enumerate loaded classes and methods, and a Linux pair traces and enumerates functions in an ELF binary and its shared libraries.","description_zh":"Marco Ivaldi（raptor）编写的 Frida JavaScript 插桩脚本集，用于逆向移动应用和 Linux 程序。主力 Android 与 iOS 追踪脚本按名称、通配符或正则表达式挂钩 Java 或 Objective-C 的类与方法，并通过 exports:*!open* 等 Frida ApiResolver 模式匹配原生函数，记录每次调用的参数与返回值，并可输出调用栈。配套脚本可枚举已加载的类与方法；另有一对 Linux 脚本用于追踪并枚举 ELF 二进制文件及其共享库中的函数。","entry_url":"https://awesomerea.org/resources/raptor-frida-scripts/","entry_url_zh":"https://awesomerea.org/zh/resources/raptor-frida-scripts/","evidence_url":"https://github.com/0xdea/frida-scripts/blob/987ba480812033bbe3a9d2262a9764e1a4ed8547/README.md","group":"tools","id":"raptor-frida-scripts","json_url":"https://awesomerea.org/resources/raptor-frida-scripts/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/raptor-frida-scripts/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/raptor-frida-scripts/index.md","name":"frida-scripts (0xdea)","name_zh":"frida-scripts（0xdea）Frida 移动应用与 Linux 追踪脚本集","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","testing","license"],"requirements":["Load a script with Frida's CLI from frida-tools, for example frida -U -f <package> -l raptor_frida_android_trace.js for an app on a USB-connected device, after uncommenting or editing the usage examples at the end of the script. Mobile use needs a device that Frida can instrument; the iOS tracer's header records a jailbroken iPhone 8 on iOS 16.5.","Version 0.2 (2025-10-02) ported the main tracers to Frida 17. Script headers record Frida 17.3.2 on Android 11 and iOS 16.5 and Frida 17.2.1 on Ubuntu, while the android-snippets and ios-snippets directories were tested only with Frida before 17.0.0. The README warns that the iOS and Android scripts may need tweaking and points to Brida as a maintained project that includes some of them.","The repository has no automated tests or CI, and its TODO lists extensive testing with real-world apps.","MIT per LICENSE."],"requirements_zh":["使用 frida-tools 中的 Frida 命令行加载脚本，例如对 USB 连接设备上的应用运行 frida -U -f <package> -l raptor_frida_android_trace.js；运行前需取消注释或修改脚本末尾的用法示例。移动端使用需要 Frida 能够插桩的设备；iOS 追踪脚本的文件头记录的测试设备是一台越狱的 iPhone 8（iOS 16.5）。","0.2 版（2025-10-02）将主力追踪脚本移植到 Frida 17。脚本文件头记录的测试环境为 Android 11 和 iOS 16.5 上的 Frida 17.3.2，以及 Ubuntu 上的 Frida 17.2.1；android-snippets 和 ios-snippets 目录中的片段只在 Frida 17.0.0 之前的版本上测试过。README 提醒 iOS 与 Android 脚本可能需要调整，并推荐收录了其中部分脚本、维护更积极的 Brida 项目。","仓库没有自动化测试或 CI，其 TODO 列出了用真实应用进行充分测试。","依 LICENSE 采用 MIT 许可。"],"targets":["app","binary"],"url":"https://github.com/0xdea/frida-scripts","verification":"source-reviewed","verified_at":"2026-11-02"},{"added_at":"2026-11-04","additional_evidence_urls":["https://github.com/Perfare/Zygisk-Il2CppDumper/blob/ede65d18a795882e37a2d988943d77a72d132c5d/module/src/main/cpp/il2cpp_dump.cpp","https://github.com/Perfare/Zygisk-Il2CppDumper/blob/ede65d18a795882e37a2d988943d77a72d132c5d/module/src/main/cpp/hack.cpp","https://github.com/Perfare/Zygisk-Il2CppDumper/blob/ede65d18a795882e37a2d988943d77a72d132c5d/module/src/main/cpp/main.cpp","https://github.com/Perfare/Zygisk-Il2CppDumper/blob/ede65d18a795882e37a2d988943d77a72d132c5d/module/src/main/cpp/game.h","https://github.com/Perfare/Zygisk-Il2CppDumper/blob/ede65d18a795882e37a2d988943d77a72d132c5d/.github/workflows/build.yml","https://github.com/Perfare/Zygisk-Il2CppDumper/blob/ede65d18a795882e37a2d988943d77a72d132c5d/module/build.gradle","https://github.com/Perfare/Zygisk-Il2CppDumper/blob/ede65d18a795882e37a2d988943d77a72d132c5d/module.gradle","https://github.com/Perfare/Zygisk-Il2CppDumper/blob/ede65d18a795882e37a2d988943d77a72d132c5d/LICENSE","https://github.com/Perfare/Zygisk-Il2CppDumper/blob/ede65d18a795882e37a2d988943d77a72d132c5d/module/src/main/cpp/xdl/xdl.c"],"category":"game-analysis","description_en":"Zygisk module by Perfare, the Il2CppDumper author, that dumps type metadata from inside a Unity IL2CPP Android app while it runs. Built for one package name, it waits for the app to load libil2cpp.so, resolves the runtime's il2cpp API exports, walks the classes of every loaded assembly and writes dump.cs to the app's files directory, listing namespaces, classes, interfaces and enums with field offsets, properties and method signatures annotated with RVA and virtual addresses. On x86 devices running an ARM build of the app, it loads its ARM library through the Houdini native bridge.","description_zh":"由 Il2CppDumper 作者 Perfare 编写的 Zygisk 模块，在 Unity IL2CPP Android 应用运行时从进程内部导出类型元数据。模块针对单个包名构建，等待应用加载 libil2cpp.so 后解析运行时导出的 il2cpp API，遍历每个已加载程序集中的类，并把 dump.cs 写入应用的 files 目录，其中列出命名空间、类、接口和枚举，以及带偏移量的字段、属性和标注 RVA 与虚拟地址的方法签名。对于在 x86 设备上运行的 ARM 版应用，它会通过 Houdini 原生桥加载自己的 ARM 库。","entry_url":"https://awesomerea.org/resources/zygisk-il2cppdumper/","entry_url_zh":"https://awesomerea.org/zh/resources/zygisk-il2cppdumper/","evidence_url":"https://github.com/Perfare/Zygisk-Il2CppDumper/blob/ede65d18a795882e37a2d988943d77a72d132c5d/README.md","group":"tools","id":"zygisk-il2cppdumper","json_url":"https://awesomerea.org/resources/zygisk-il2cppdumper/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/zygisk-il2cppdumper/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/zygisk-il2cppdumper/index.md","name":"Zygisk-Il2CppDumper","name_zh":"Zygisk-Il2CppDumper 运行时导出 IL2CPP 元数据的 Zygisk 模块","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","testing","license"],"requirements":["Needs a rooted Android device with Magisk v24 or later and Zygisk enabled, and an app the user supplies that uses Unity's IL2CPP backend. There are no published releases: the module is built for one package name, either by running the repository's manual Build workflow in a fork with that name or by editing GamePackageName in game.h and running the Gradle task :module:assembleRelease (NDK 25.2.9519653; CI uses Java 11), then installed through Magisk. dump.cs appears under /data/data/<package>/files/ once the app starts.","It writes only dump.cs; unlike the desktop Il2CppDumper, it produces no dummy assemblies or disassembler scripts. The latest master commit is from 2023-05-22, with the module at v1.2.0.","The repository has no tests, and its only CI workflow builds the module on manual dispatch.","MIT per LICENSE, whose copyright line names Rikka; the bundled xDL symbol-lookup library carries its own MIT notice from the HexHacking Team."],"requirements_zh":["需要已安装 Magisk v24 或更高版本并开启 Zygisk 的 root Android 设备，以及使用者自备、采用 Unity IL2CPP 后端的应用。项目没有发布版本：模块需针对单个包名构建，可在复刻的仓库中用该包名手动运行 Build 工作流，或修改 game.h 中的 GamePackageName 后运行 Gradle 任务 :module:assembleRelease（NDK 25.2.9519653；CI 使用 Java 11），再通过 Magisk 安装。应用启动后，dump.cs 会出现在 /data/data/<package>/files/ 下。","它只生成 dump.cs；与桌面版 Il2CppDumper 不同，它不会生成虚拟程序集或反汇编器脚本。master 分支最新提交为 2023-05-22，模块版本为 v1.2.0。","仓库没有测试，唯一的 CI 工作流只在手动触发时构建模块。","依 LICENSE 采用 MIT 许可，版权行署名为 Rikka；附带的 xDL 符号查找库保留 HexHacking Team 的 MIT 声明。"],"targets":["app","game"],"url":"https://github.com/Perfare/Zygisk-Il2CppDumper","verification":"source-reviewed","verified_at":"2026-11-02"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/winsiderss/systeminformer/blob/999fe5ef6a554f55d8e7df43903eb31ca530377e/KSystemInformer/README.md","https://github.com/winsiderss/systeminformer/blob/999fe5ef6a554f55d8e7df43903eb31ca530377e/CHANGELOG.txt","https://github.com/winsiderss/systeminformer/blob/999fe5ef6a554f55d8e7df43903eb31ca530377e/plugins/AgentTools/main.c#L58-L75","https://github.com/winsiderss/systeminformer/blob/999fe5ef6a554f55d8e7df43903eb31ca530377e/plugins/AgentTools/options.c#L1044-L1060","https://github.com/winsiderss/systeminformer/blob/999fe5ef6a554f55d8e7df43903eb31ca530377e/LICENSE.txt","https://github.com/winsiderss/systeminformer/releases/tag/v4.0.26241.138","https://systeminformer.com/"],"category":"dynamic-analysis","description_en":"Windows process viewer and system inspector, formerly Process Hacker, for examining running programs and the system around them. It gives a highlighted overview of system activity, searches the handles and loaded DLLs of processes to find which one is using a file, shows active network connections and real-time disk access, displays stack traces with kernel-mode, WOW64 and .NET support, and creates, edits and controls services. Version 4.0 adds a Process Monitor that logs process, thread, image, registry, file, handle and silo events from its kernel driver, and plugins add .NET assembly and performance tabs, a window explorer and Hybrid Analysis lookups.","description_zh":"Windows 进程查看与系统检查工具，前身为 Process Hacker，用于检查运行中的程序及其所在的系统环境。它以高亮方式概览系统活动，可在各进程的句柄和已加载 DLL 中搜索，找出正在占用某个文件的进程，显示活动网络连接和实时磁盘访问，查看支持内核模式、WOW64 和 .NET 的详细调用栈，并能创建、编辑和控制服务。4.0 版新增 Process Monitor，借助内核驱动实时记录进程、线程、映像、注册表、文件、句柄和 silo 事件；插件还提供 .NET 程序集与性能页、窗口浏览器和 Hybrid Analysis 在线查询。","entry_url":"https://awesomerea.org/resources/system-informer/","entry_url_zh":"https://awesomerea.org/zh/resources/system-informer/","evidence_url":"https://github.com/winsiderss/systeminformer/blob/999fe5ef6a554f55d8e7df43903eb31ca530377e/README.md","group":"tools","id":"system-informer","json_url":"https://awesomerea.org/resources/system-informer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/system-informer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/system-informer/index.md","name":"System Informer","name_zh":"System Informer 进程与系统检查工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","scope","license"],"requirements":["Windows 10 or later, 32-bit or 64-bit, per the README. Release at review: v4.0.26241.138, published 2026-08-29 as the first 4.0 release; the reviewed master commit is 874 commits ahead of it. Building from source needs Visual Studio 2022 or later and the build_init.cmd and build_release.cmd scripts in build/.","The KSystemInformer kernel driver gives its broader inspection only to verified callers: binaries loaded into System Informer need a .sig from the build's key pair or a Microsoft or anti-malware vendor signature, and loading an unsigned third-party plugin restricts driver access. Builds signed with a developer's own key need debug and test-signing mode, with Secure Boot disabled where applicable.","The Agent Tools plugin is on the master branch only, not in the 4.0 release; its source describes it as exposing System Informer's process data and actions to AI agents over the Model Context Protocol. It is off by default, asks to confirm connections by default and offers stdio setup commands for clients such as Claude Code and Codex CLI. The OnlineChecks plugin's Hybrid Analysis lookups are opt-in with per-service API keys and can optionally submit unknown files.","MIT per LICENSE.txt and the README."],"requirements_zh":["据 README，需要 Windows 10 或更高版本（32 位或 64 位）。审阅时的版本为 v4.0.26241.138，于 2026-08-29 发布，是 4.0 系列的首个版本；所审阅的 master 分支提交比它多 874 个提交。从源码构建需要 Visual Studio 2022 或更高版本，并使用 build 目录中的 build_init.cmd 和 build_release.cmd 脚本。","KSystemInformer 内核驱动只向经过验证的调用方开放更深入的检查能力：加载到 System Informer 中的二进制文件须带有由构建密钥对生成的 .sig 文件，或具备 Microsoft 或反恶意软件厂商的签名；加载未签名的第三方插件会限制对驱动的访问。使用开发者自有密钥签名的构建需要开启调试和测试签名模式，必要时还须关闭安全启动。","Agent Tools 插件只存在于 master 分支，不在 4.0 版本中；其源码说明它通过 Model Context Protocol 向 AI 智能体提供 System Informer 的进程数据和操作。该插件默认关闭，默认需要确认连接，并为 Claude Code、Codex CLI 等客户端提供 stdio 配置命令。OnlineChecks 插件的 Hybrid Analysis 查询须手动开启并按服务配置 API 密钥，还可选择提交未知文件。","依 LICENSE.txt 与 README 采用 MIT 许可。"],"targets":["binary"],"url":"https://github.com/winsiderss/systeminformer","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/gchq/CyberChef/blob/d4d96c6c3d2597fef836d81bfc04617d97c681a5/src/core/config/Categories.json","https://github.com/gchq/CyberChef/blob/d4d96c6c3d2597fef836d81bfc04617d97c681a5/LICENSE","https://github.com/gchq/CyberChef/releases/tag/v11.5.0","https://gchq.github.io/CyberChef/"],"category":"native-analysis","description_en":"GCHQ's browser-based workbench for decoding, decrypting, decompressing, parsing and carving data by chaining operations into a recipe, with all processing done client-side. The pinned operation catalogue lists 506 operations, among them XOR brute force, AES, DES and Blowfish decryption, x86 and ARM disassembly, ELF info, file-type detection, file extraction, entropy and strings, YARA rules, Protobuf decoding and Ethernet, IPv4, TCP and UDP header parsing. The Magic operation tries to detect nested encodings automatically, and breakpoints step through a recipe one operation at a time to show the data at each stage.","description_zh":"GCHQ 开发的浏览器端数据处理工具，把多个操作串成“配方”（recipe），对数据进行解码、解密、解压、解析和提取，所有处理都在本地浏览器中完成。所固定版本的操作目录列出 506 个操作，包括 XOR 暴力破解、AES/DES/Blowfish 解密、x86 与 ARM 反汇编、ELF 信息解析、文件类型识别、文件提取、熵与字符串分析、YARA 规则匹配、Protobuf 解码，以及以太网帧和 IPv4、TCP、UDP 报头解析。Magic 操作会尝试自动识别多层嵌套编码；在配方中设置断点后，可逐个操作执行，查看数据在每一步的变化。","entry_url":"https://awesomerea.org/resources/cyberchef/","entry_url_zh":"https://awesomerea.org/zh/resources/cyberchef/","evidence_url":"https://github.com/gchq/CyberChef/blob/d4d96c6c3d2597fef836d81bfc04617d97c681a5/README.md","group":"tools","id":"cyberchef","json_url":"https://awesomerea.org/resources/cyberchef/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/cyberchef/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cyberchef/index.md","name":"CyberChef","name_zh":"CyberChef 数据解码与分析工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Use the hosted app at gchq.github.io/CyberChef, a full copy downloaded from the app, the ghcr.io/gchq/cyberchef Docker image or a Node.js v24 build (npm install, then npm start or npm run build); the README lists Chrome 50+ and Firefox 38+ as supported browsers. Release at review: v11.5.0, published 2026-09-18; the reviewed master commit is newer.","Inputs and recipes stay in the browser and are not sent to the web server. Files of up to about 2 GB load, depending on the browser, and some operations can take a very long time on that much data; Auto Bake can be turned off for large inputs.","Apache-2.0, under Crown Copyright; contributions require signing the GCHQ Contributor Licence Agreement."],"requirements_zh":["可直接使用托管在 gchq.github.io/CyberChef 的网页版、从应用中下载的完整副本、ghcr.io/gchq/cyberchef Docker 镜像，或用 Node.js v24 自行构建（先 npm install，再 npm start 或 npm run build）；README 列出支持的浏览器为 Chrome 50+ 和 Firefox 38+。审阅时的版本为 v11.5.0，于 2026-09-18 发布；所审阅的 master 分支提交比它更新。","输入数据和配方都留在浏览器中，不会发送到网站服务器。可加载约 2 GB 以内的文件（视浏览器而定），但部分操作处理这么大的数据可能非常耗时；输入较大时可关闭 Auto Bake 自动执行。","采用 Apache-2.0 许可，受英国皇家版权（Crown Copyright）保护；提交贡献须签署 GCHQ 贡献者许可协议。"],"targets":["binary","protocol"],"url":"https://github.com/gchq/CyberChef","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/VirusTotal/yara/blob/6d47342e825e59f5d8f20874d0778332bcec83a6/docs/gettingstarted.rst","https://github.com/VirusTotal/yara/blob/6d47342e825e59f5d8f20874d0778332bcec83a6/docs/commandline.rst","https://github.com/VirusTotal/yara/blob/6d47342e825e59f5d8f20874d0778332bcec83a6/docs/modules/pe.rst","https://github.com/VirusTotal/yara/blob/6d47342e825e59f5d8f20874d0778332bcec83a6/docs/modules/elf.rst","https://github.com/VirusTotal/yara/blob/6d47342e825e59f5d8f20874d0778332bcec83a6/docs/modules/math.rst","https://github.com/VirusTotal/yara/blob/6d47342e825e59f5d8f20874d0778332bcec83a6/docs/modules/cuckoo.rst","https://github.com/VirusTotal/yara/blob/6d47342e825e59f5d8f20874d0778332bcec83a6/COPYING","https://github.com/VirusTotal/yara/releases/tag/v4.6.0","https://github.com/VirusTotal/yara-x/blob/1bda5fc3cbd05c937bcedc63a662f513b7490c4d/README.md","https://virustotal.github.io/yara-x/blog/yara-x-is-stable/"],"category":"native-analysis","description_en":"VirusTotal's pattern-matching tool for identifying and classifying files such as malware samples with rules that combine text, hex and regular-expression strings with a Boolean condition. It scans a file, a folder or a running process from the command line, through the libyara C API or from Python with yara-python. Modules expose parsed structure to rules: pe and elf expose most fields of PE and ELF headers, dotnet adds .NET metadata, math adds calculations such as entropy, and the optional magic and cuckoo modules add libmagic file types and Cuckoo sandbox behavior reports.","description_zh":"VirusTotal 推出的模式匹配工具，用规则识别和归类恶意软件样本等文件；每条规则由文本、十六进制和正则表达式字符串加一个布尔条件组成。可通过命令行、libyara C API 或 Python 扩展 yara-python 扫描单个文件、文件夹或运行中的进程。各模块向规则提供解析后的结构信息：pe 和 elf 模块提供 PE 与 ELF 头部的大部分字段，dotnet 模块提供 .NET 元数据，math 模块提供熵等计算，可选的 magic 和 cuckoo 模块则提供 libmagic 文件类型和 Cuckoo 沙箱行为报告数据。","entry_url":"https://awesomerea.org/resources/yara/","entry_url_zh":"https://awesomerea.org/zh/resources/yara/","evidence_url":"https://github.com/VirusTotal/yara/blob/6d47342e825e59f5d8f20874d0778332bcec83a6/README.md","group":"tools","id":"yara","json_url":"https://awesomerea.org/resources/yara/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/yara/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/yara/index.md","name":"YARA","name_zh":"YARA 文件模式匹配与分类工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Runs on Windows, Linux and macOS; release at review: v4.6.0, published 2026-10-27. Source builds need automake, libtool, make, gcc and pkg-config. Features that depend on OpenSSL are enabled only when OpenSSL is installed, and the cuckoo (Jansson) and magic (libmagic) modules are compiled only with --enable-cuckoo or --enable-magic; vcpkg also packages YARA.","The README marks YARA as in maintenance mode; the YARA-X README says YARA still receives bug fixes and minor features, while new modules and large features go only into YARA-X. The command-line documentation warns that compiled rules from untrusted sources can lead to the execution of malicious code; since YARA 3.9 they load only with -C.","BSD-3-Clause per COPYING."],"requirements_zh":["支持 Windows、Linux 和 macOS；审阅时的版本为 v4.6.0，于 2026-10-27 发布。从源码构建需要 automake、libtool、make、gcc 和 pkg-config。依赖 OpenSSL 的功能只在系统已安装 OpenSSL 时启用；cuckoo（依赖 Jansson）和 magic（依赖 libmagic）模块须分别以 --enable-cuckoo 或 --enable-magic 编译才会包含。也可通过 vcpkg 安装 YARA。","README 标明 YARA 已进入维护模式；YARA-X 的 README 称 YARA 仍会获得缺陷修复和小功能更新，但新模块和大型功能只会加入 YARA-X。命令行文档警告，来自不可信来源的已编译规则可能导致恶意代码被执行；自 YARA 3.9 起，加载已编译规则必须显式加上 -C 参数。","依 COPYING 采用 BSD-3-Clause 许可。"],"targets":["binary"],"url":"https://github.com/VirusTotal/yara","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/cheat-engine/cheat-engine/blob/ec45d5f47f92a239ba0bf51ec5d04a7509c3fd37/Cheat%20Engine/release/readme.txt","https://github.com/cheat-engine/cheat-engine/releases/tag/7.5","https://www.cheatengine.org/aboutce.php","https://www.cheatengine.org/"],"category":"dynamic-analysis","description_en":"Memory scanner, debugger, disassembler and assembler for inspecting and changing running games and other applications; its README calls it a development environment focused on modding games and applications for personal use. The project site lists a memory scanner for finding the variables a game uses, a debugger, disassembler, assembler, speedhack, trainer maker, Direct3D manipulation and system inspection tools, and the README's build notes add Mono, .NET and Java runtime inspection, a VEH debugger interface, Lua and C code in scripts and an optional kernel-mode driver.","description_zh":"集内存扫描、调试、反汇编和汇编于一体的工具，用于检查和修改运行中的游戏及其他应用；README 称其为专注于游戏和应用改造（仅供个人使用）的开发环境。项目网站列出的功能包括：快速扫描游戏所用变量的内存扫描器，以及调试器、反汇编器、汇编器、变速（speedhack）、修改器（trainer）制作、Direct3D 操控和系统检查工具；README 中的构建说明还提到 Mono、.NET 和 Java 运行时检查、VEH 调试器接口、在脚本中嵌入 Lua 与 C 代码，以及可选的内核模式驱动。","entry_url":"https://awesomerea.org/resources/cheat-engine/","entry_url_zh":"https://awesomerea.org/zh/resources/cheat-engine/","evidence_url":"https://github.com/cheat-engine/cheat-engine/blob/ec45d5f47f92a239ba0bf51ec5d04a7509c3fd37/README.md","group":"tools","id":"cheat-engine","json_url":"https://awesomerea.org/resources/cheat-engine/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/cheat-engine/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cheat-engine/index.md","name":"Cheat Engine","name_zh":"Cheat Engine 游戏与应用内存分析调试工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","scope","license"],"requirements":["The site's news of 2026-05-29 says Cheat Engine 7.7 was released for Windows, Mac and Linux to Patreon supporters first, followed by a public Windows installer. The newest GitHub release is 7.5 (2023-02-23), which attaches no binaries, and the reviewed master commit dates from 2025-04-19.","Building needs Lazarus 2.2.2 for 64-bit Windows with its i386 cross-compiler for the main project and Visual Studio (usually 2017) for the .sln helper projects, such as the Mono, .NET and Java data collectors. Kernel-mode functions need the DBK driver built without a signature, then booting with unsigned-driver support or signing the driver yourself.","The site describes it as made for modifying single-player games without an internet connection, says it will most likely not work on online games, requires users to be 18 or older, calls it for private and educational purposes and asks users not to violate a game's or application's EULA or terms of service.","The repository has no top-level license file and GitHub detects no license; the site says the source code is visible so that anyone can compile their own version. Bundled components such as tcclib carry their own license files."],"requirements_zh":["据网站 2026-05-29 的公告，Cheat Engine 7.7 先面向 Patreon 赞助者发布了 Windows、Mac 和 Linux 版本，随后推出公开的 Windows 安装包。GitHub 上最新的发布版本是 7.5（2023-02-23），未附带二进制文件；所审阅的 master 分支提交日期为 2025-04-19。","构建主项目需要 64 位 Windows 版 Lazarus 2.2.2 及其 i386 交叉编译器；Mono、.NET 和 Java 数据采集器等 .sln 辅助项目需要 Visual Studio（通常为 2017 版）。内核模式功能需要编译不带签名的 DBK 驱动，然后以允许未签名驱动的方式启动系统，或自行为驱动签名。","网站说明它用于修改无需联网的单机游戏，对联网游戏大多无效；要求使用者年满 18 岁，声明其仅供个人和学习用途，并提醒使用者不要违反游戏或应用的最终用户许可协议（EULA）或服务条款。","仓库根目录没有许可证文件，GitHub 也未识别出许可证；网站称源码公开可见，任何人都可以自行编译。tcclib 等随附组件带有各自的许可证文件。"],"targets":["binary","game"],"url":"https://github.com/cheat-engine/cheat-engine","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Rurik/Noriben/blob/4c84a98601fd7a9559c8b225b5968159efb7dcc0/Noriben.py#L1410-L1465","https://github.com/Rurik/Noriben/blob/4c84a98601fd7a9559c8b225b5968159efb7dcc0/Noriben.config","https://github.com/Rurik/Noriben/blob/4c84a98601fd7a9559c8b225b5968159efb7dcc0/LICENSE","https://github.com/Rurik/Noriben/releases/tag/2.1.0"],"category":"dynamic-analysis","description_en":"Python script that drives Sysinternals Process Monitor to record what a program does while it runs, filters out routine system activity and writes a text report of the processes it created and its file, registry and network activity. It works as a lightweight malware sandbox and can also log events while the analyst runs a sample by hand, with command-line options, user interaction or under a debugger; created files can be scanned with YARA rules and their hashes looked up on VirusTotal. Version 2.1.0 adds DLL-load monitoring, an ASCII process tree and JSON output, and NoribenSandbox.py automates runs inside a guest VM.","description_zh":"调用 Sysinternals Process Monitor 记录程序运行时行为的 Python 脚本，会滤除常规系统活动，并生成文本报告，列出程序创建的进程及其文件、注册表和网络活动。它可以当作轻量级恶意软件沙箱使用，也能在分析人员手动运行样本时记录事件，例如样本需要特定命令行参数、需要用户交互，或在调试器中单步执行时。新建的文件可用 YARA 规则扫描，其哈希值可在 VirusTotal 上查询。2.1.0 版新增 DLL 加载监控、ASCII 进程树和 JSON 输出；NoribenSandbox.py 可在客户机虚拟机中自动完成分析流程。","entry_url":"https://awesomerea.org/resources/noriben/","entry_url_zh":"https://awesomerea.org/zh/resources/noriben/","evidence_url":"https://github.com/Rurik/Noriben/blob/4c84a98601fd7a9559c8b225b5968159efb7dcc0/README.md","group":"tools","id":"noriben","json_url":"https://awesomerea.org/resources/noriben/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/noriben/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/noriben/index.md","name":"Noriben","name_zh":"Noriben 基于 Procmon 的恶意软件行为分析脚本","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","scope","limits","testing","license"],"requirements":["Python 3 and Sysinternals procmon.exe or procmon64.exe on the Windows analysis machine; yara-python is optional for --yara scans and requests for VirusTotal lookups. Release at review: 2.1.0, published 2026-11-03, whose tag is the reviewed main commit.","The README's sandbox workflow runs a sample in a VM, copies the results off and reverts before the next sample. NoribenSandbox.py starts a predefined VM snapshot, copies in the sample, runs Noriben and retrieves a ZIP report and a screenshot; the README says this front end currently runs on macOS hosts.","With a VirusTotal API key it looks up file hashes; uploading every created file to VirusTotal happens only when virustotal_upload is set to True in Noriben.config, which defaults to False.","The 2.1.0 notes add large-scale unit testing, developed with AI assistance; the README runs tests/unit_tester.ps1 through Noriben in a Windows VM with Procmon module loads enabled.","Apache-2.0 per the README and LICENSE."],"requirements_zh":["Windows 分析机上需要 Python 3 以及 Sysinternals 的 procmon.exe 或 procmon64.exe；使用 --yara 扫描需另装 yara-python，查询 VirusTotal 需要 requests。审阅时的版本为 2.1.0，于 2026-11-03 发布，其标签即所审阅的 main 分支提交。","README 描述的沙箱流程是在虚拟机中运行样本、取回结果，并在分析下一个样本前恢复快照。NoribenSandbox.py 会启动预设的虚拟机快照，复制样本进去，运行 Noriben，再取回 ZIP 格式的报告和截图；README 称这个前端目前在 macOS 主机上运行。","配置 VirusTotal API 密钥后，它会查询文件哈希；只有在 Noriben.config 中把 virustotal_upload 设为 True（默认为 False）时，才会把所有新建文件上传到 VirusTotal。","2.1.0 版的发布说明提到新增了大规模单元测试，并说明是在 AI 辅助下开发的；README 给出的测试方法是在启用了 Procmon 模块加载记录的 Windows 虚拟机中，通过 Noriben 运行 tests/unit_tester.ps1。","依 README 与 LICENSE 采用 Apache-2.0 许可。"],"targets":["binary"],"url":"https://github.com/Rurik/Noriben","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/qemu/qemu/blob/f71afb409a87c4ecd0f9d63a5963eb645dfab780/README.rst","https://gitlab.com/qemu-project/qemu/-/blob/f71afb409a87c4ecd0f9d63a5963eb645dfab780/docs/system/gdb.rst","https://gitlab.com/qemu-project/qemu/-/blob/f71afb409a87c4ecd0f9d63a5963eb645dfab780/docs/about/emulation.rst","https://gitlab.com/qemu-project/qemu/-/blob/f71afb409a87c4ecd0f9d63a5963eb645dfab780/docs/user/main.rst","https://gitlab.com/qemu-project/qemu/-/blob/f71afb409a87c4ecd0f9d63a5963eb645dfab780/LICENSE","https://www.qemu.org/docs/master/"],"category":"dynamic-analysis","description_en":"Machine and user-space emulator that runs code built for one CPU architecture on another through its TCG dynamic translator. System emulation boots a complete emulated machine, such as an ARMv7 board on an x86_64 PC, and user-mode emulation runs Linux or BSD binaries built for another ABI by translating their system calls. For analysis, its gdbstub lets GDB stop the guest, examine registers and memory and set breakpoints and watchpoints, TCG plugins passively instrument execution down to single instructions and memory accesses (bundled examples count instructions, trace system calls and log execution), and system emulation supports deterministic record/replay debugging.","description_zh":"机器级与用户态模拟器，借助 TCG 动态翻译，在一种 CPU 架构上运行为另一种架构编译的代码。系统模拟可完整模拟一台机器，例如在 x86_64 PC 上运行 ARMv7 开发板；用户态模拟则通过转换系统调用，直接运行为其他 ABI 编译的 Linux 或 BSD 程序。在分析方面，gdbstub 允许用 GDB 暂停客户机、查看寄存器和内存、设置断点与观察点；TCG 插件能以被动方式插桩，粒度可细到单条指令和每次内存访问（自带示例可统计指令数、跟踪系统调用和记录执行过程）；系统模拟还支持确定性执行，便于录制/回放调试。","entry_url":"https://awesomerea.org/resources/qemu/","entry_url_zh":"https://awesomerea.org/zh/resources/qemu/","evidence_url":"https://gitlab.com/qemu-project/qemu/-/blob/f71afb409a87c4ecd0f9d63a5963eb645dfab780/README.rst","group":"tools","id":"qemu","json_url":"https://awesomerea.org/resources/qemu/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/qemu/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/qemu/index.md","name":"QEMU","name_zh":"QEMU 机器与用户态模拟器","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Builds on modern Linux, macOS, Windows through the Mingw64 toolchain and other Unix hosts (mkdir build, ../configure, make). The upstream repository is gitlab.com/qemu-project/qemu; GitHub carries a read-only mirror that asks users to take release tarballs from the QEMU website. The newest tag at review was v11.1.3, on a commit dated 2026-10-28.","User-mode emulation covers only the Linux and BSD system-call interfaces and emulates no hardware, and each guest architecture supports system emulation, user mode or both. TCG plugins observe guest state without changing it, and the bundled syscall plugin works only in user mode. With KVM or Xen, the hypervisor runs the CPU while QEMU provides emulated hardware.","QEMU as a whole is released under GPL-2.0; the LICENSE file gives component details."],"requirements_zh":["可在主流 Linux、macOS、通过 Mingw64 工具链的 Windows 以及其他多种 Unix 系统上构建（mkdir build、../configure、make）。上游仓库为 gitlab.com/qemu-project/qemu；GitHub 上的是只读镜像，并建议用户从 QEMU 官网获取发布源码包。审阅时最新的标签为 v11.1.3，所在提交的日期为 2026-10-28。","用户态模拟只支持 Linux 和 BSD 的系统调用接口，不模拟任何硬件；各客户机架构分别支持系统模拟、用户态模拟或两者兼有。TCG 插件只观察客户机状态而不修改它，自带的系统调用插件仅适用于用户态模式。配合 KVM 或 Xen 使用时，由虚拟机监控器执行 CPU 指令，QEMU 负责提供模拟硬件。","QEMU 整体采用 GPL-2.0 许可，各组件的许可细节见 LICENSE 文件。"],"targets":["binary","firmware"],"url":"https://www.qemu.org/","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/HexFiend/HexFiend/blob/32cb2ef78d2ff3bc6ecf326a6b19eeebb2945c13/templates/Tutorial.md","https://github.com/HexFiend/HexFiend/blob/32cb2ef78d2ff3bc6ecf326a6b19eeebb2945c13/templates/Reference.md","https://github.com/HexFiend/HexFiend/tree/32cb2ef78d2ff3bc6ecf326a6b19eeebb2945c13/templates","https://github.com/HexFiend/HexFiend/blob/32cb2ef78d2ff3bc6ecf326a6b19eeebb2945c13/templates/Disassembly/6502.tcl","https://github.com/HexFiend/HexFiend/blob/32cb2ef78d2ff3bc6ecf326a6b19eeebb2945c13/License.txt","https://github.com/HexFiend/HexFiend/releases/tag/v2.18.1","https://hexfiend.github.io/HexFiend/ReleaseNotes.html"],"category":"native-analysis","description_en":"Open-source macOS hex editor that inspects and edits binary files of any size without loading them into memory. It supports insertions and deletions, fast search and a data inspector that reads integers and floating-point values as signed or unsigned and big- or little-endian. File > Compare shows the differences between two files while accounting for inserted or deleted bytes, and Tcl binary templates display a file's structure next to its bytes; bundled templates cover COFF, ELF, Mach-O and MS-DOS EXE headers, 6502 disassembly and Commodore 64 PRG files, plus archives, file systems, partition tables and media formats. Its hex and data views are also available as an embeddable framework.","description_zh":"开源的 macOS 十六进制编辑器，无需把文件载入内存即可查看和编辑任意大小的二进制文件。它支持插入与删除字节和快速搜索，数据检查器可按有符号或无符号、大端或小端解读整数和浮点数。通过 File > Compare 可比较两个文件，并考虑插入或删除字节带来的偏移；用 Tcl 编写的二进制模板会在字节旁显示文件结构，自带模板涵盖 COFF、ELF、Mach-O 和 MS-DOS EXE 文件头、6502 反汇编、Commodore 64 PRG 文件，以及压缩包、文件系统、分区表和媒体格式。其十六进制视图和数据视图还以可嵌入框架的形式提供。","entry_url":"https://awesomerea.org/resources/hex-fiend/","entry_url_zh":"https://awesomerea.org/zh/resources/hex-fiend/","evidence_url":"https://github.com/HexFiend/HexFiend/blob/32cb2ef78d2ff3bc6ecf326a6b19eeebb2945c13/README.md","group":"tools","id":"hex-fiend","json_url":"https://awesomerea.org/resources/hex-fiend/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/hex-fiend/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hex-fiend/index.md","name":"Hex Fiend","name_zh":"Hex Fiend macOS 十六进制编辑器","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["macOS 10.14.6 or later, required since v2.17. Release at review: v2.18.1, published 2025-03-16; the reviewed master commit is dated 2025-06-29. Custom templates are .tcl files in the app's Templates folder under Application Support.","Binary templates arrived in v2.9 and are written in Tcl, which ships with macOS. Since v2.17 templates can declare file types for automatic selection, but the release notes say most built-in templates do not yet set this information.","BSD-2-Clause per License.txt."],"requirements_zh":["自 v2.17 起需要 macOS 10.14.6 或更高版本。审阅时的版本为 v2.18.1，于 2025-03-16 发布；所审阅的 master 分支提交日期为 2025-06-29。自定义模板是放在应用 Application Support 目录下 Templates 文件夹中的 .tcl 文件。","二进制模板功能从 v2.9 开始提供，用 macOS 自带的 Tcl 语言编写。自 v2.17 起，模板可声明适用的文件类型以便自动选择，但发布说明指出大多数内置模板尚未填写这些信息。","依 License.txt 采用 BSD-2-Clause 许可。"],"targets":["binary"],"url":"https://github.com/HexFiend/HexFiend","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/x64dbg/ScyllaHide/blob/baa5c8e853ace2bee752631f27fdfe5b271d92f6/Documentation/ScyllaHideDocumentation.tex","https://github.com/x64dbg/ScyllaHide/blob/baa5c8e853ace2bee752631f27fdfe5b271d92f6/LICENSE","https://github.com/x64dbg/ScyllaHide/releases/tag/v1.4","https://github.com/x64dbg/ScyllaHide/releases/download/docs-2019-05-17/ScyllaHide.pdf"],"category":"dynamic-analysis","description_en":"User-mode (ring 3) anti-anti-debug library for 32- and 64-bit Windows programs that hooks system functions so the program being debugged cannot detect the debugger. Its documentation covers options for PEB debug flags such as BeingDebugged, NtGlobalFlag and heap flags, threads hidden with ThreadHideFromDebugger, debugger windows and processes found through window and process-list queries, invalid-handle NtClose checks, input blocking, timing checks, hardware-breakpoint detection and exception-based checks; extra options inject DLLs, prevent thread creation and dump processes started RunPE-style. Plugins integrate it with x64dbg, OllyDbg v1 and v2, IDA and TitanEngine, and the standalone InjectorCLI injects its hook library into a process under any debugger.","description_zh":"面向 32 位和 64 位 Windows 程序的用户态（ring 3）反反调试库，通过挂钩系统函数，让被调试程序察觉不到调试器。其文档逐项说明各个选项：处理 BeingDebugged、NtGlobalFlag 和堆标志等 PEB 调试标志，应对借助 ThreadHideFromDebugger 隐藏的线程，在窗口查询和进程列表中隐藏调试器的窗口与进程，应对以无效句柄调用 NtClose 的检测，以及输入屏蔽、计时检测、硬件断点检测和基于异常的检测；附加选项可注入 DLL、阻止创建线程，并转储以 RunPE 方式启动的进程。它以插件形式集成到 x64dbg、OllyDbg v1/v2、IDA 和 TitanEngine，也可用独立的 InjectorCLI 把钩子库注入到任意调试器下的进程。","entry_url":"https://awesomerea.org/resources/scyllahide/","entry_url_zh":"https://awesomerea.org/zh/resources/scyllahide/","evidence_url":"https://github.com/x64dbg/ScyllaHide/blob/baa5c8e853ace2bee752631f27fdfe5b271d92f6/README.md","group":"tools","id":"scyllahide","json_url":"https://awesomerea.org/resources/scyllahide/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/scyllahide/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/scyllahide/index.md","name":"ScyllaHide","name_zh":"ScyllaHide 用户态反反调试库","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Windows; release at review: v1.4, published 2023-03-24, with the reviewed master commit dated 2023-07-29. Plugins cover x64dbg, OllyDbg v1 and v2, TitanEngine v2 and IDA; the README lists the IDA v6 plugin as not supported and says PE x64 debugging is fully supported with the x64dbg and IDA plugins.","It works only in user mode, and the README points to TitanHide for kernel-mode (ring 0) anti-anti-debug. Each option targets specific anti-debug checks: the documentation advises enabling the timing, hardware-breakpoint, thread-prevention and NtYieldExecution options only when needed, and using the RunPE unpacker, which terminates and dumps newly created processes, only inside a virtual machine.","GPL-3.0. The project is a fork of the original ScyllaHide repository on Bitbucket; the full manual is a PDF attached to the docs-2019-05-17 release, and its LaTeX source is in Documentation/."],"requirements_zh":["需要 Windows；审阅时的版本为 v1.4，于 2023-03-24 发布，所审阅的 master 分支提交日期为 2023-07-29。插件覆盖 x64dbg、OllyDbg v1 和 v2、TitanEngine v2 以及 IDA；README 注明 IDA v6 插件已不再支持，并表示借助 x64dbg 和 IDA 插件可完整支持 PE x64 程序调试。","它只在用户态工作，README 建议需要内核态（ring 0）反反调试时改用 TitanHide。每个选项针对特定的反调试检测：文档建议计时、硬件断点保护、阻止线程创建和 NtYieldExecution 等选项只在确有需要时启用，并且只在虚拟机中使用会终止并转储新建进程的 RunPE 脱壳选项。","采用 GPL-3.0 许可。项目派生自 Bitbucket 上原始的 ScyllaHide 仓库；完整手册是附在 docs-2019-05-17 发布中的 PDF，其 LaTeX 源文件位于 Documentation/ 目录。"],"targets":["binary"],"url":"https://github.com/x64dbg/ScyllaHide","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/VirusTotal/yara-x/blob/1bda5fc3cbd05c937bcedc63a662f513b7490c4d/site/content/docs/intro/yara_vs_yara-x.md","https://github.com/VirusTotal/yara-x/blob/1bda5fc3cbd05c937bcedc63a662f513b7490c4d/site/content/docs/intro/installation.md","https://github.com/VirusTotal/yara-x/blob/1bda5fc3cbd05c937bcedc63a662f513b7490c4d/site/content/docs/intro/language_server.md","https://github.com/VirusTotal/yara-x/tree/1bda5fc3cbd05c937bcedc63a662f513b7490c4d/site/content/docs/modules","https://github.com/VirusTotal/yara-x/blob/1bda5fc3cbd05c937bcedc63a662f513b7490c4d/site/content/docs/api/python.md","https://github.com/VirusTotal/yara-x/blob/1bda5fc3cbd05c937bcedc63a662f513b7490c4d/site/content/docs/api/go.md","https://github.com/VirusTotal/yara-x/blob/1bda5fc3cbd05c937bcedc63a662f513b7490c4d/LICENSE","https://github.com/VirusTotal/yara-x/releases/tag/v1.23.0"],"category":"native-analysis","description_en":"VirusTotal's Rust rewrite of YARA for identifying and classifying files with pattern-matching rules. It is meant to replace YARA, with more detailed error reports, faster regular-expression and hex-pattern matching and a more capable command line. Rules keep YARA's syntax of text, hex and regular-expression patterns joined by a Boolean condition, and modules parse PE, ELF, Mach-O, .NET, Android DEX, Chrome CRX and Windows LNK files; the CLI can also print a module's parsed output as JSON or YAML without any rule, which makes it usable as a file-dissection tool. Rust, C, Go and Python APIs, a rule formatter and a language server with a Visual Studio Code extension are included.","description_zh":"VirusTotal 用 Rust 重写的 YARA，以模式匹配规则识别和归类文件。它的目标是取代 YARA，提供更详细的错误报告、更快的正则表达式与十六进制模式匹配，以及功能更强的命令行。规则沿用 YARA 的语法，即文本、十六进制和正则表达式模式加布尔条件；各模块可解析 PE、ELF、Mach-O、.NET、Android DEX、Chrome CRX 和 Windows LNK 文件。命令行无需任何规则即可把模块的解析结果输出为 JSON 或 YAML，因此也能当作文件结构剖析工具使用。项目提供 Rust、C、Go 和 Python API、规则格式化工具，以及带 Visual Studio Code 扩展的语言服务器。","entry_url":"https://awesomerea.org/resources/yara-x/","entry_url_zh":"https://awesomerea.org/zh/resources/yara-x/","evidence_url":"https://github.com/VirusTotal/yara-x/blob/1bda5fc3cbd05c937bcedc63a662f513b7490c4d/README.md","group":"tools","id":"yara-x","json_url":"https://awesomerea.org/resources/yara-x/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/yara-x/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/yara-x/index.md","name":"YARA-X","name_zh":"YARA-X Rust 版 YARA 模式匹配工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Pre-built binaries for Linux, macOS and Windows come with each release; macOS users can install it with Homebrew and Python users with pip install yara-x. Building needs a recent Rust toolchain (cargo install --path cli), and the Go library builds on the C API. Release at review: v1.23.0, published 2026-11-05.","Its comparison page says the C/C++, Python and Go APIs are not compatible with YARA's and that process scanning is not implemented yet; a separate page lists rule-level differences. The README calls YARA-X mature and stable and says VirusTotal runs it in production.","BSD-3-Clause per LICENSE; contributions need Google's Contributor License Agreement."],"requirements_zh":["每个发布版本都附有 Linux、macOS 和 Windows 预编译程序；macOS 用户可用 Homebrew 安装，Python 用户可用 pip install yara-x 安装。从源码构建需要较新的 Rust 工具链（cargo install --path cli），Go 库基于 C API 构建。审阅时的版本为 v1.23.0，于 2026-11-05 发布。","对比文档指出，其 C/C++、Python 和 Go API 与 YARA 的不兼容，进程扫描功能也尚未实现；另有专页列出规则层面的差异。README 称 YARA-X 已经成熟稳定，VirusTotal 已在生产环境中使用。","依 LICENSE 采用 BSD-3-Clause 许可；提交贡献须签署 Google 贡献者许可协议（CLA）。"],"targets":["binary"],"url":"https://github.com/VirusTotal/yara-x","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/de4dot/de4dot/tree/b7d5728fc0c82fb0ad758e3a4c0fbb70368a4853","https://github.com/de4dot/de4dot/blob/b7d5728fc0c82fb0ad758e3a4c0fbb70368a4853/COPYING"],"category":"dotnet","description_en":"Open-source .NET deobfuscator and unpacker that tries to restore a packed and obfuscated assembly to almost its original form. Depending on the obfuscator, it decrypts strings, constants, methods, resources and embedded assemblies statically or dynamically, removes proxy methods, junk classes and tamper-detection and anti-debug code, devirtualizes virtualized code, deobfuscates control flow and renames symbols to readable names; it can also just detect which obfuscator was used. The README lists 19 supported obfuscators and packers, among them Dotfuscator, .NET Reactor, Eazfuscator.NET and SmartAssembly.","description_zh":"开源的 .NET 反混淆与脱壳工具，尝试把加壳、混淆过的程序集恢复到接近原始的状态。视混淆器而定，它能以静态或动态方式解密字符串、常量、方法、资源和内嵌程序集，移除代理方法、垃圾类以及防篡改和反调试代码，还原被虚拟化的代码和被打乱的控制流，并把符号重命名为可读名称；也可以只检测程序集使用了哪种混淆器。README 列出 19 种受支持的混淆器和加壳工具，包括 Dotfuscator、.NET Reactor、Eazfuscator.NET 和 SmartAssembly。","entry_url":"https://awesomerea.org/resources/de4dot/","entry_url_zh":"https://awesomerea.org/zh/resources/de4dot/","evidence_url":"https://github.com/de4dot/de4dot/blob/b7d5728fc0c82fb0ad758e3a4c0fbb70368a4853/README.md","group":"tools","id":"de4dot","json_url":"https://awesomerea.org/resources/de4dot/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/de4dot/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/de4dot/index.md","name":"de4dot","name_zh":"de4dot .NET 反混淆与脱壳工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","limits","license"],"requirements":["The repository was archived on GitHub after its last commit on 2020-08-29 and has no GitHub releases; the README points to CI builds for binaries. Source builds use the .NET Framework or .NET Core solution and need dnlib, which de4dot uses to read and write assemblies.","Original symbol names usually cannot be restored, and XAML is not renamed, so WPF or Silverlight assemblies may need --dont-rename. The README offers no support and says newer obfuscator versions may require updating de4dot yourself.","For some obfuscators, and for dynamic string decryption, it loads the assembly and its dependencies into memory and executes them, so the README advises a safe sandbox for suspected malware.","GPL-3.0 (COPYING); bundled libraries such as dnlib, SharpZipLib, QuickLZ and LZMA keep their own license files."],"requirements_zh":["该仓库在 2020-08-29 最后一次提交后已在 GitHub 上归档，没有 GitHub 发布版本；README 指引用户从 CI 构建获取二进制文件。从源码构建可使用 .NET Framework 或 .NET Core 解决方案，并需要 de4dot 用于读写程序集的 dnlib 库。","原始符号名通常无法恢复，XAML 也不会被重命名，因此 WPF 或 Silverlight 程序集可能需要加 --dont-rename 参数。README 声明不提供支持，并表示遇到新版混淆器时可能需要自行更新 de4dot。","处理部分混淆器以及进行动态字符串解密时，它会把程序集及其依赖加载到内存中执行，因此 README 建议在安全的沙箱环境中处理疑似恶意软件。","采用 GPL-3.0 许可（COPYING）；dnlib、SharpZipLib、QuickLZ 和 LZMA 等随附库各有其许可证文件。"],"targets":["app"],"url":"https://github.com/de4dot/de4dot","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/ReClassNET/ReClass.NET/blob/a02fcb9bd669c8f81facd3ee9ad57cdcbf2cc0e1/LICENSE","https://github.com/ReClassNET/ReClass.NET/releases/tag/v1.2"],"category":"dynamic-analysis","description_en":"Memory structure editor for reconstructing the classes and data structures of a running x86 or x64 process, a .NET port of ReClass with many additions. Users lay out memory as typed nodes, such as integers, floats, vectors and matrices, text, pointers, arrays, unions, virtual tables and function pointers, with automatic node dissection, highlighting of changed memory, types from PDB debug symbols and RTTI class names, then generate C++ or C# code from the result. It also offers a memory viewer and scanner, a module and section dumper, a debugger that finds what writes to or accesses an address, and plugins that can supply other memory-access methods or game-specific class information, such as for Frostbite games.","description_zh":"用于重建运行中 x86 或 x64 进程内类与数据结构的内存结构编辑器，是 ReClass 移植到 .NET 平台并大量扩展后的版本。使用者把内存布局成带类型的节点，如整数、浮点数、向量与矩阵、文本、指针、数组、联合体、虚函数表和函数指针，可自动剖析节点、高亮变化的内存、读取 PDB 调试符号中的类型和 RTTI 类名，再根据结果生成 C++ 或 C# 代码。它还提供内存查看器和扫描器、模块与节区转储、可找出哪些代码写入或访问某个地址的调试器，以及能提供其他内存访问方式或游戏专用类信息（例如 Frostbite 游戏）的插件。","entry_url":"https://awesomerea.org/resources/reclass-net/","entry_url_zh":"https://awesomerea.org/zh/resources/reclass-net/","evidence_url":"https://github.com/ReClassNET/ReClass.NET/blob/a02fcb9bd669c8f81facd3ee9ad57cdcbf2cc0e1/README.md","group":"tools","id":"reclass-net","json_url":"https://awesomerea.org/resources/reclass-net/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/reclass-net/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/reclass-net/index.md","name":"ReClass.NET","name_zh":"ReClass.NET 进程内存结构重建工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","scope","license"],"requirements":["Releases ship x86 and x64 builds with a launcher that picks between them, and the README lists Linux support tested on Ubuntu 18.04. Release at review: v1.2, published 2019-04-15; the reviewed master commit dates from 2023-07-03. Compiling needs Visual Studio 2019, and the Linux native core library needs WSL, plus g++-multilib for cross-platform builds.","It imports ReClass 2007–2016, ReClass QT, Cheat Engine and CrySearch files. Plugins are installed by copying them into the Plugins folder; the README says the Unreal plugin is no longer available.","MIT per LICENSE."],"requirements_zh":["发布包含 x86 和 x64 两个版本，并附有自动选择版本的启动器；README 还列出 Linux 支持（在 Ubuntu 18.04 上测试）。审阅时的版本为 v1.2，于 2019-04-15 发布；所审阅的 master 分支提交日期为 2023-07-03。编译需要 Visual Studio 2019，Linux 原生核心库需要 WSL，跨平台（x86/x64）构建还需 g++-multilib。","可导入 ReClass 2007–2016、ReClass QT、Cheat Engine 和 CrySearch 的文件。插件只需复制到 Plugins 文件夹即可安装；README 注明 Unreal 插件已无法获取。","依 LICENSE 采用 MIT 许可。"],"targets":["binary","game"],"url":"https://github.com/ReClassNET/ReClass.NET","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/google/android-classyshark/blob/78ddba71b0d869cc6283f8cdbb2061b6e57a3781/CommandLine.pdf","https://github.com/google/android-classyshark/blob/78ddba71b0d869cc6283f8cdbb2061b6e57a3781/LICENSE.txt","https://github.com/google/android-classyshark/releases/tag/8.2"],"category":"android","description_en":"Google's standalone browser for Android executables and libraries that shows class interfaces and members, dex counts and dependencies. It opens .dex, .aar and .so libraries, .apk, .jar and .class executables and Android binary XML files such as AndroidManifest, resources and layouts, and it can export what it shows as text.","description_zh":"Google 推出的独立 Android 可执行文件与库浏览工具，可显示类接口与成员、dex 计数和依赖关系。它能打开 .dex、.aar 和 .so 库，.apk、.jar 和 .class 可执行文件，以及 AndroidManifest、资源和布局等 Android 二进制 XML 文件，并可把显示的内容导出为文本。","entry_url":"https://awesomerea.org/resources/classyshark/","entry_url_zh":"https://awesomerea.org/zh/resources/classyshark/","evidence_url":"https://github.com/google/android-classyshark/blob/78ddba71b0d869cc6283f8cdbb2061b6e57a3781/README.md","group":"tools","id":"classyshark","json_url":"https://awesomerea.org/resources/classyshark/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/classyshark/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/classyshark/index.md","name":"ClassyShark","name_zh":"ClassyShark Android 二进制浏览工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Runs as a JAR (java -jar ClassyShark.jar) on a Java runtime; Arch Linux users can install a prebuilt JAR from the AUR. The latest release is 8.2, published 2018-07-25, and the repository was archived on GitHub after its last commit on 2023-05-19.","The README marks its API finder as work in progress; a command-line reference ships as CommandLine.pdf in the repository.","Apache-2.0 per LICENSE.txt and the README."],"requirements_zh":["以 JAR 形式运行（java -jar ClassyShark.jar），需要 Java 运行环境；Arch Linux 用户可从 AUR 安装预编译的 JAR。最新版本为 8.2，于 2018-07-25 发布；仓库在 2023-05-19 最后一次提交后已在 GitHub 上归档。","README 注明 API 查找功能仍在开发中；仓库中的 CommandLine.pdf 是命令行参考文档。","依 LICENSE.txt 与 README 采用 Apache-2.0 许可。"],"targets":["app"],"url":"https://github.com/google/android-classyshark","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/RPISEC/Malware/tree/bbd48df47d709a702b9345e5d38cee16af3b37bd/Labs","https://github.com/RPISEC/Malware/tree/bbd48df47d709a702b9345e5d38cee16af3b37bd/Lectures","https://github.com/RPISEC/Malware/releases/tag/v1.0_release"],"category":"learning","description_en":"Materials from the student-run Malware Analysis course that RPISEC taught at Rensselaer Polytechnic Institute in Fall 2015, built around the book Practical Malware Analysis. Twelve lectures run from basic static and dynamic analysis, x86 and IDA through Windows internals, malware behavior, data encoding, covert launching, anti-disassembly, anti-VM and anti-debugging, and packing and unpacking to the Windows kernel and rootkit techniques, with ten labs and four projects that include runtime process manipulation, unpacking automation and an APT sample analysis.","description_zh":"RPISEC 学生团队 2015 年秋季在伦斯勒理工学院（Rensselaer Polytechnic Institute）开设的恶意软件分析课程资料，课程以《Practical Malware Analysis》一书为主线。12 讲内容从基础静态与动态分析、x86 与 IDA 讲起，经过 Windows 内部机制、恶意软件行为、数据编码、隐蔽启动、反反汇编、反虚拟机与反调试、加壳与脱壳，一直讲到 Windows 内核和 rootkit 技术；另有 10 个实验和 4 个项目，涉及运行时进程操控、自动化脱壳和 APT 样本分析。","entry_url":"https://awesomerea.org/resources/rpisec-malware-analysis-course/","entry_url_zh":"https://awesomerea.org/zh/resources/rpisec-malware-analysis-course/","evidence_url":"https://github.com/RPISEC/Malware/blob/bbd48df47d709a702b9345e5d38cee16af3b37bd/README.md","group":"learn","id":"rpisec-malware-analysis-course","json_url":"https://awesomerea.org/resources/rpisec-malware-analysis-course/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/rpisec-malware-analysis-course/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rpisec-malware-analysis-course/index.md","name":"RPISEC Malware Analysis course (CSCI 4976)","name_zh":"RPISEC 恶意软件分析课程（CSCI 4976）","record_type":"resource","relationship":"learning","requirement_facets":["prerequisites","limits","license"],"requirements":["The course expected working C/C++ and some assembly experience, and students read the matching book chapters before each lecture. It used a Windows 7 32-bit analysis VM, which is not distributed; the v1.0_release (2016-01-14) packages installers for the free tools used, such as IDA Free, OllyDbg, WinDbg, the Sysinternals Suite, PEiD, Regshot and Wireshark.","Most lab and project samples are real malware, stored in ZIP archives encrypted with the password infected; the README says to keep them inside a proper analysis environment. Lectures were not recorded, and slides covering book material are outlines.","The repository has no license file and GitHub detects no license; the reviewed master commit dates from 2017-05-11."],"requirements_zh":["课程要求学员具备 C/C++ 实用知识和一定的汇编经验，并在每次课前阅读书中相应章节。课程使用 Windows 7 32 位分析虚拟机，但该虚拟机不对外分发；v1.0_release（2016-01-14）打包了课程所用免费工具的安装程序，如 IDA Free、OllyDbg、WinDbg、Sysinternals Suite、PEiD、Regshot 和 Wireshark。","实验和项目中的样本大多是真实的恶意软件，存放在以 infected 为密码加密的 ZIP 压缩包中；README 要求只在合适的分析环境中处理。课程未录制视频，涉及书中内容的幻灯片仅为提纲。","仓库没有许可证文件，GitHub 也未识别出许可证；所审阅的 master 分支提交日期为 2017-05-11。"],"targets":["binary"],"url":"https://github.com/RPISEC/Malware","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/corkami/pics/blob/669facbb0b6a977f959ae6473b8346e98cf23f53/binary/README.md","https://github.com/corkami/pics/tree/669facbb0b6a977f959ae6473b8346e98cf23f53/binary/pe101"],"category":"learning","description_en":"Collection of posters and diagrams that dissect file formats byte by byte, published as PNG and PDF images. The binary posters cover executables (ELF, DOS COM and EXE, NE, LE, PE, Mach-O and fat Mach-O, Java class, Dalvik DEX, Python bytecode, SWF, GameCube/Wii DOL and Switch NRO) along with image, video, archive, document, sound and serialization formats, x86 and x64 opcode charts and Dalvik, JVM and .NET opcode tables. The more detailed 101 series explains PE, ELF, Mach-O, ZIP, Java class, PDF, COM and WAV files and includes Inkscape sources and proof-of-concept files.","description_zh":"逐字节剖析各类文件格式的海报与图解合集，以 PNG 和 PDF 图片发布。二进制海报涵盖可执行文件（ELF、DOS COM 与 EXE、NE、LE、PE、Mach-O 及 fat Mach-O、Java class、Dalvik DEX、Python 字节码、SWF、GameCube/Wii DOL 和 Switch NRO），以及图像、视频、压缩包、文档、音频和序列化格式，另有 x86 与 x64 操作码图表和 Dalvik、JVM、.NET 操作码表。讲解更详细的 101 系列介绍 PE、ELF、Mach-O、ZIP、Java class、PDF、COM 和 WAV 文件，并附 Inkscape 源文件和概念验证文件。","entry_url":"https://awesomerea.org/resources/corkami-pics/","entry_url_zh":"https://awesomerea.org/zh/resources/corkami-pics/","evidence_url":"https://github.com/corkami/pics/blob/669facbb0b6a977f959ae6473b8346e98cf23f53/README.md","group":"learn","id":"corkami-pics","json_url":"https://awesomerea.org/resources/corkami-pics/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/corkami-pics/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/corkami-pics/index.md","name":"Corkami pics","name_zh":"Corkami 文件格式图解海报集","record_type":"resource","relationship":"learning","requirement_facets":["prerequisites","scope","license"],"requirements":["Images and PDFs to view in a browser or image viewer; nothing needs installing. The repository has no releases, and the reviewed master commit dates from 2024-02-18.","Besides the file-format posters, the repository holds general posters, tracings and outlines that are not about file formats.","The repository has no license file and GitHub detects no license, so reuse terms are not stated."],"requirements_zh":["内容为可在浏览器或图片查看器中打开的图片和 PDF，无需安装任何软件。仓库没有发布版本，所审阅的 master 分支提交日期为 2024-02-18。","除文件格式海报外，仓库中还有与文件格式无关的普通海报、描摹图和轮廓图。","仓库没有许可证文件，GitHub 也未识别出许可证，因此未说明再利用条款。"],"targets":["binary"],"url":"https://github.com/corkami/pics","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/keystone-engine/keypatch/blob/e7ecb93a4d242e83b9356b8258108773464646d4/TUTORIAL.md","https://github.com/keystone-engine/keypatch/blob/e7ecb93a4d242e83b9356b8258108773464646d4/keypatch.py#L105-L118","https://github.com/keystone-engine/keypatch/blob/e7ecb93a4d242e83b9356b8258108773464646d4/COPYING","https://github.com/keystone-engine/keypatch/releases/tag/2.1"],"category":"native-analysis","description_en":"IDA Pro plugin built on the Keystone assembler engine that patches a binary from typed assembly, fills an address range with instructions or raw bytes and searches the loaded binary for assembly instructions. It assembles Arm, Arm64, Hexagon, MIPS, PowerPC, SPARC, SystemZ and 16-, 32- and 64-bit x86 code, shows the encoding while you type, can pad with NOPs up to the next instruction boundary, keeps the original instruction in an IDA comment and can undo the last patch.","description_zh":"基于 Keystone 汇编引擎的 IDA Pro 插件：可直接输入汇编指令修补二进制文件，用指令或原始字节填充一段地址范围，并在已加载的二进制文件中搜索汇编指令。它支持 Arm、Arm64、Hexagon、MIPS、PowerPC、SPARC、SystemZ 以及 16/32/64 位 x86，输入时即时显示编码，可用 NOP 填充到下一条指令边界，在 IDA 注释中保留原指令，并可撤销上一次修补。","entry_url":"https://awesomerea.org/resources/keypatch/","entry_url_zh":"https://awesomerea.org/zh/resources/keypatch/","evidence_url":"https://github.com/keystone-engine/keypatch/blob/e7ecb93a4d242e83b9356b8258108773464646d4/README.md","group":"tools","id":"keypatch","json_url":"https://awesomerea.org/resources/keypatch/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/keypatch/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/keypatch/index.md","name":"Keypatch","name_zh":"Keypatch IDA Pro 汇编修补插件","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Needs IDA Pro on Windows, macOS or Linux with the Keystone engine and its Python binding plus the six module; keypatch.py is copied into IDA's plugins folder. The README confirms IDA Pro 6.4 to 7.5, and the reviewed master commit (2024-09-06) adds IDA 9.0 API changes. The latest tagged release is 2.1 (2017-01-17), while the code reports version 2.2.","Patches change only the IDA database until Edit | Patch program | Apply patches to input file writes them to the original binary.","GPL-2.0 per COPYING."],"requirements_zh":["需要在 Windows、macOS 或 Linux 上安装 IDA Pro，以及 Keystone 引擎及其 Python 绑定和 six 模块；把 keypatch.py 复制到 IDA 的插件目录即可。README 确认支持 IDA Pro 6.4 至 7.5，所审阅的 master 分支提交（2024-09-06）加入了适配 IDA 9.0 API 的修改。最新的标签版本为 2.1（2017-01-17），代码中标注的版本则为 2.2。","修补默认只写入 IDA 数据库，需通过 Edit | Patch program | Apply patches to input file 才会写回原始二进制文件。","依 COPYING 采用 GPL-2.0 许可。"],"targets":["binary"],"url":"https://github.com/keystone-engine/keypatch","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/eteran/edb-debugger/wiki/Home/6fd2f5ed1cebbca1b17cde6ec118d810faf3e810","https://github.com/eteran/edb-debugger/wiki/Interface/996f7b95c2f999f19806ce757853b0ff96702d32","https://github.com/eteran/edb-debugger/blob/b8640ebd2f7f32839f6cbb53c7faf4374c329acd/COPYING","https://github.com/eteran/edb-debugger/releases/tag/1.5.0"],"category":"dynamic-analysis","description_en":"Qt-based graphical debugger for AArch32, x86 and x86-64 programs, inspired by OllyDbg, with Linux as its only officially supported platform. Its interface docks disassembly, register, stack and data views, adds a memory-regions window, process attaching, symbols, an expression syntax and an analysis bar similar to IDA Pro's, and its default plugins include Analyzer, Assembler, BinarySearcher, BreakpointManager, FunctionFinder, HardwareBreakpoints, HeapAnalyzer, OpcodeSearcher, ROPTool and SymbolViewer.","description_zh":"基于 Qt 的图形化调试器，受 OllyDbg 启发，支持 AArch32、x86 和 x86-64 程序，目前只正式支持 Linux。界面可停靠反汇编、寄存器、栈和数据视图，并提供内存区域窗口、附加到进程、符号支持、表达式语法，以及类似 IDA Pro 的分析条；默认插件包括 Analyzer、Assembler、BinarySearcher、BreakpointManager、FunctionFinder、HardwareBreakpoints、HeapAnalyzer、OpcodeSearcher、ROPTool 和 SymbolViewer。","entry_url":"https://awesomerea.org/resources/edb-debugger/","entry_url_zh":"https://awesomerea.org/zh/resources/edb-debugger/","evidence_url":"https://github.com/eteran/edb-debugger/blob/b8640ebd2f7f32839f6cbb53c7faf4374c329acd/README.md","group":"tools","id":"edb-debugger","json_url":"https://awesomerea.org/resources/edb-debugger/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/edb-debugger/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/edb-debugger/index.md","name":"edb-debugger","name_zh":"edb-debugger 图形化调试器","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","scope","license"],"requirements":["Linux is the only officially supported platform; FreeBSD, OpenBSD, macOS and Windows ports are underway with varying functionality. Building needs a C++17 GCC or Clang, Qt 5.15+ or 6.8+, Capstone 3.0+ and optionally Graphviz 2.38+, using CMake on a recursive clone so that the submodules are fetched.","Release at review: 1.5.0, published 2024-03-22 and the last version to support Linux kernels older than 3.0; new development targets kernel 3.0 and newer and will be released as 2.0.0. The reviewed master commit is dated 2026-10-27.","GPL-2.0 per COPYING."],"requirements_zh":["目前只正式支持 Linux；FreeBSD、OpenBSD、macOS 和 Windows 版本正在移植，功能完整度不一。构建需要支持 C++17 的 GCC 或 Clang、Qt 5.15+ 或 6.8+、Capstone 3.0+，Graphviz 2.38+ 为可选；使用 CMake 构建，并须递归克隆仓库以获取子模块。","审阅时的版本为 1.5.0，于 2024-03-22 发布，也是最后一个支持 3.0 以前 Linux 内核的版本；后续开发面向 3.0 及更新的内核，将以 2.0.0 发布。所审阅的 master 分支提交日期为 2026-10-27。","依 COPYING 采用 GPL-2.0 许可。"],"targets":["binary"],"url":"https://github.com/eteran/edb-debugger","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/google/binnavi/blob/4cfdd91cdda2a6150f537df91a8c4221ae50bb6d/LICENSE","https://github.com/google/binnavi/releases/tag/v6.1.0"],"category":"native-analysis","description_en":"Google's open-sourced binary analysis IDE for inspecting, navigating, editing and annotating the control-flow graphs and call graphs of disassembled code. It also collects and combines execution traces and keeps track of analysis results among a group of analysts. Disassemblies come from IDA Pro through a bundled export plugin that writes the PostgreSQL database BinNavi uses for disassemblies, comments and traces; the README notes that no exporter exists yet for other disassemblers.","description_zh":"Google 开源的二进制分析 IDE，可查看、浏览、编辑和注释反汇编代码的控制流图与调用图。它还能收集并合并执行跟踪，帮助分析团队共同跟踪分析结果。反汇编数据由随附的 IDA Pro 导出插件写入 PostgreSQL 数据库，BinNavi 用该数据库存储反汇编、注释和跟踪记录；README 指出目前还没有面向其他反汇编器的导出工具。","entry_url":"https://awesomerea.org/resources/binnavi/","entry_url_zh":"https://awesomerea.org/zh/resources/binnavi/","evidence_url":"https://github.com/google/binnavi/blob/4cfdd91cdda2a6150f537df91a8c4221ae50bb6d/README.md","group":"tools","id":"binnavi","json_url":"https://awesomerea.org/resources/binnavi/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/binnavi/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binnavi/index.md","name":"BinNavi","name_zh":"BinNavi 二进制分析 IDE","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Needs Java 11 or later, a reachable PostgreSQL database and IDA Pro to import disassemblies. It builds from source with Maven and Ant (mvn dependency:copy-dependencies, then ant build-binnavi-fat-jar); the Gradle build is experimental. GitHub releases include BinNavi 6.1 (2016-03-17) and a historical 1.2 version published in 2017.","The README says the project is no longer under active development, and the repository was archived on GitHub after its last commit on 2020-10-23. Graph display uses the commercial yFiles library: the repository ships a pre-built, obfuscated yfileswrap JAR, and changing the yfileswrap packages needs a yFiles license.","Apache-2.0, apart from the yFiles dependency."],"requirements_zh":["需要 Java 11 或更高版本、可访问的 PostgreSQL 数据库，以及用于导入反汇编的 IDA Pro。可用 Maven 和 Ant 从源码构建（先 mvn dependency:copy-dependencies，再 ant build-binnavi-fat-jar），Gradle 构建仍属实验性质。GitHub 发布包括 BinNavi 6.1（2016-03-17）和 2017 年发布的历史版本 1.2。","README 声明项目已不再积极开发，仓库在 2020-10-23 最后一次提交后已在 GitHub 上归档。图形显示依赖商业库 yFiles：仓库附带预先构建并混淆过的 yfileswrap JAR，修改 yfileswrap 相关包则需要 yFiles 许可证。","除 yFiles 依赖外，采用 Apache-2.0 许可。"],"targets":["binary"],"url":"https://github.com/google/binnavi","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/mandiant/flare-emu/blob/6688c3270d9847c1b96ffcae00f58c0c85ab1a7e/flare_emu.py#L13","https://github.com/mandiant/flare-emu/blob/6688c3270d9847c1b96ffcae00f58c0c85ab1a7e/LICENSE-APACHE.TXT","https://github.com/mandiant/flare-emu/releases/tag/2025-08-14"],"category":"binary-libraries","description_en":"Mandiant FLARE Python library that pairs IDA Pro, Rizin or Radare2 with the Unicorn emulator so analysts can script emulation of the binary they are analyzing, for 32- and 64-bit x86, ARM and ARM64. Its interfaces emulate an instruction range or function with chosen register and stack values, force execution down the branches needed to reach target addresses or every cross-reference to a function, walk all paths through a function, run a standalone byte blob, or emulate from an address until nothing is left, with hooks on instructions and calls. A common use in its README is decrypting malware strings by emulating the decryption routine at each call site and commenting the results.","description_zh":"Mandiant FLARE 团队的 Python 库，把 IDA Pro、Rizin 或 Radare2 与 Unicorn 模拟器结合起来，让分析人员能以脚本方式模拟执行正在分析的二进制代码，支持 32/64 位 x86、ARM 和 ARM64。它提供的接口可在指定寄存器和栈值下模拟一段指令或一个函数，强制走到目标地址或某函数全部交叉引用所需的分支，遍历函数的所有路径，单独运行一段字节，或从某个地址一直模拟到没有代码可执行为止，并支持指令级和调用级钩子。README 中的常见用法是在每个调用点模拟恶意软件的字符串解密函数，并把解密结果写成注释。","entry_url":"https://awesomerea.org/resources/flare-emu/","entry_url_zh":"https://awesomerea.org/zh/resources/flare-emu/","evidence_url":"https://github.com/mandiant/flare-emu/blob/6688c3270d9847c1b96ffcae00f58c0c85ab1a7e/README.md","group":"tools","id":"flare-emu","json_url":"https://awesomerea.org/resources/flare-emu/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/flare-emu/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/flare-emu/index.md","name":"flare-emu","name_zh":"flare-emu 二进制分析框架模拟执行库","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Needs Unicorn and its Python bindings plus IDA Pro 7.x or later (older IDA APIs are not supported), Rizin with rzpipe, or Radare2 with r2pipe; the README also shows use through IDA's idalib. Installation means copying flare_emu.py, the framework module and flare_emu_hooks.py into IDA's python directory or onto Python's import path.","The repository was archived on GitHub after a final release tagged 2025-08-14, which has no notes. With Rizin it runs as a command-line script or in a Python shell.","Apache-2.0 per LICENSE-APACHE.TXT."],"requirements_zh":["需要 Unicorn 及其 Python 绑定，并配合 IDA Pro 7.x 或更高版本（不兼容更早的 IDA API）、带 rzpipe 的 Rizin，或带 r2pipe 的 Radare2；README 还介绍了通过 IDA 的 idalib 使用的方法。安装方式是把 flare_emu.py、对应框架的模块和 flare_emu_hooks.py 复制到 IDA 的 python 目录，或放到 Python 的模块搜索路径中。","仓库在最后一个发布（标签 2025-08-14，无发布说明）之后已在 GitHub 上归档。配合 Rizin 使用时，它以命令行脚本或在 Python shell 中运行。","依 LICENSE-APACHE.TXT 采用 Apache-2.0 许可。"],"targets":["binary"],"url":"https://github.com/mandiant/flare-emu","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://docs.hex-rays.com/release-notes/9_5","https://docs.hex-rays.com/release-notes/9_5#game-consoles-playstation-3-xbox-360-wii-u-and-playstation-portable","https://hex-rays.com/blog/ida-9.5-release","https://docs.hex-rays.com/getting-started/install-ida","https://docs.hex-rays.com/getting-started/decompiler-availability-by-edition","https://hex-rays.com/ida-free","https://hex-rays.com/ida-home","https://docs.hex-rays.com/core/disassembler/specification/supported-processors","https://docs.hex-rays.com/core/disassembler/specification/supported-file-formats","https://docs.hex-rays.com/core/debugger/concepts/remote-debugging"],"category":"native-analysis","description_en":"Hex-Rays' commercial interactive disassembler, decompiler and debugger, which turns compiled code for more than 70 processor families into annotated, cross-referenced assembly and decompiled pseudocode. Its 15 decompilers cover 32- and 64-bit x86, ARM, MIPS, PowerPC and RISC-V as well as ARC, V850, TriCore, Hexagon and Android DEX; the Dalvik decompiler, new in IDA 9.5 alongside TriCore and Hexagon, renders DEX bytecode as Java pseudocode. Documented loaders include PE, ELF and Mach-O with Apple dyld shared caches and kernelcaches, DEX, UEFI firmware images, WebAssembly modules and console formats such as Xbox XBE, N64, SNES ROM and PlayStation PSX executables, and the processor list names console CPUs from the NES and Game Boy to the PlayStation 3 Cell, Xbox 360 Xenon and PSP Allegrex. The debugger runs locally or through remote debug servers for Windows, Linux, macOS and Android, and analysis can be scripted with IDAPython, IDC and the C++ SDK, run without a GUI through the idalib library, or driven from MCP clients through IDA MCP.","description_zh":"Hex-Rays 推出的商业交互式反汇编器、反编译器与调试器，可将 70 多个处理器家族的已编译代码转为带注释和交叉引用的汇编代码及反编译伪代码。其 15 款反编译器覆盖 32 位与 64 位的 x86、ARM、MIPS、PowerPC 和 RISC-V，以及 ARC、V850、TriCore、Hexagon 和 Android DEX；其中 Dalvik、TriCore 和 Hexagon 反编译器为 IDA 9.5 新增，Dalvik 反编译器可把 DEX 字节码还原为 Java 伪代码。文档列出的加载器支持 PE、ELF、Mach-O（含 Apple dyld 共享缓存和 kernelcache）、DEX、UEFI 固件镜像、WebAssembly 模块，以及 Xbox XBE、N64、SNES ROM 和 PlayStation PSX 可执行文件等游戏机格式；处理器列表也涵盖从 NES、Game Boy 到 PlayStation 3 的 Cell、Xbox 360 的 Xenon 和 PSP 的 Allegrex 等游戏机 CPU。调试器既可本地调试，也可通过远程调试服务器调试 Windows、Linux、macOS 和 Android 目标；分析可用 IDAPython、IDC 和 C++ SDK 编写脚本，借助 idalib 库在无图形界面的环境中运行，或通过 IDA MCP 交由 MCP 客户端驱动。","entry_url":"https://awesomerea.org/resources/ida-pro/","entry_url_zh":"https://awesomerea.org/zh/resources/ida-pro/","evidence_url":"https://hex-rays.com/ida-pro","group":"tools","id":"ida-pro","json_url":"https://awesomerea.org/resources/ida-pro/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ida-pro/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ida-pro/index.md","name":"IDA Pro","name_zh":"IDA Pro 交互式反汇编、反编译与调试工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","license","license","limits"],"requirements":["Release at review: IDA 9.5 (build 9.5.261026), announced 2026-10-26. Hosts: macOS 12+ (x64 or ARM64); x64 Windows 10 1607+ for the GUI, Windows 7+ for text-mode or headless use; 64-bit Linux, where the installation guide names CentOS 7 or Ubuntu 16.04 and the IDA Free page glibc 2.28 (Debian 10, Ubuntu 18.10, RHEL 8) on x86-64 or ARM64. IDAPython needs Python 3.11+.","Commercial, sold only as yearly subscriptions; perpetual licenses ended on 2024-09-30, and those bought earlier keep working for the version purchased. IDA Pro Essential has two cloud decompilers from one family, Expert two, four or six local ones and Ultimate all local ones, on Named, Computer or Floating licenses; IDA Pro Headless is an OEM license for servers, CI and embedding in products.","IDA Free and IDA Home are Named licenses for non-commercial use only. Free disassembles only x86 and x86-64, decompiles them in the cloud and debugs locally on x86/x64; Home has 70+ disassemblers, 11 cloud decompilers (32- and 64-bit x86, ARM, MIPS, PowerPC and RISC-V, plus Android DEX) and local or GDB-server debugging. Cloud decompilers need an Internet connection.","The IDA 9.5 release notes say the Dalvik decompiler does not rebuild try-with-resources, can emit output that is not valid Java and gives obfuscated files no special treatment, and that the new UEFI plugin focuses on the DXE environment and is still being refined."],"requirements_zh":["审阅时的版本为 IDA 9.5（构建号 9.5.261026），于 2026-10-26 发布。宿主系统：macOS 12 及以上（x64 或 ARM64）；图形界面需 x64 Windows 10 1607 及以上，文本界面或无界面使用需 Windows 7 及以上；64 位 Linux 方面，安装指南列出 CentOS 7 或 Ubuntu 16.04，IDA Free 页面则要求 x86-64 或 ARM64 上的 glibc 2.28（Debian 10、Ubuntu 18.10、RHEL 8）。IDAPython 需要 Python 3.11 及以上。","商业软件，仅按年订阅销售；永久许可已于 2024-09-30 停售，此前购买的永久许可仍可继续使用所购版本。IDA Pro Essential 含同一家族的两款云端反编译器，Expert 含两款、四款或六款本地反编译器，Ultimate 含全部本地反编译器，许可类型可选 Named、Computer 或 Floating；IDA Pro Headless 是面向服务器、CI 和产品内嵌的 OEM 许可。","IDA Free 和 IDA Home 均为 Named 许可，仅限非商业用途。Free 只能反汇编 x86 和 x86-64，通过云端反编译，并只能在本地调试 x86/x64 程序；Home 提供 70 多种反汇编器、11 款云端反编译器（32 位与 64 位的 x86、ARM、MIPS、PowerPC 和 RISC-V，以及 Android DEX），支持本地调试和 GDB server 远程调试。云端反编译器需要联网。","IDA 9.5 发布说明指出，Dalvik 反编译器不会重建 try-with-resources，输出不一定是合法的 Java，也不会对混淆文件做特殊处理；新的 UEFI 插件目前侧重 DXE 环境，仍在持续完善。"],"targets":["app","binary","firmware","game"],"url":"https://hex-rays.com/ida-pro","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://binary.ninja/features/","https://binary.ninja/purchase/","https://binary.ninja/free/","https://binary.ninja/faq/","https://docs.binary.ninja/about/requirements.html","https://docs.binary.ninja/guide/firmwareninja.html","https://docs.binary.ninja/guide/efiresolver.html","https://docs.binary.ninja/guide/debugger/index.html","https://binary.ninja/2026/09/03/binary-ninja-6.0-krypton.html","https://binary.ninja/2026/10/20/6.0-release-2.html","https://github.com/Vector35/binaryninja-api/releases/tag/stable/6.0.10905"],"category":"native-analysis","description_en":"Vector 35's commercial interactive disassembler, decompiler and debugger, whose decompiler is built on the BNIL family of intermediate languages and shows either C or BNIL for every officially supported architecture. Depending on the edition it decompiles x86/x86-64, ARMv7/Thumb2, AArch64, PowerPC, MIPS, RISC-V, MSP430, 6502, nanoMIPS, TriCore, C-SKY, M·CORE, Hexagon, NDS32 and TMS320C6x, and it loads raw binaries and PE/COFF, ELF, Mach-O, TE, Intel HEX, Motorola S-Record, TI-TXT, MD1ROM and VxWorks files. C++, Python and Rust APIs automate analysis inside or outside the UI; the open-source debugger runs locally or remotely on Windows, Linux and macOS and also connects to GDB, LLDB and iOS debugserver targets; patches can be made by editing assembly, in the hex editor or with the bundled SCC compiler; and 6.0 added an MCP server. Ultimate adds Firmware Ninja for embedded firmware, which finds code and data regions by entropy and detects memory-mapped I/O accesses, while the EFI Resolver workflow types protocol usage in UEFI PEI, DXE and SMM modules.","description_zh":"Vector 35 推出的商业交互式反汇编器、反编译器与调试器，其反编译器建立在 BNIL 中间语言家族之上，可为所有官方支持的架构输出 C 或 BNIL。视版本不同，它可反编译 x86/x86-64、ARMv7/Thumb2、AArch64、PowerPC、MIPS、RISC-V、MSP430、6502、nanoMIPS、TriCore、C-SKY、M·CORE、Hexagon、NDS32 和 TMS320C6x，并能加载原始二进制以及 PE/COFF、ELF、Mach-O、TE、Intel HEX、Motorola S-Record、TI-TXT、MD1ROM 和 VxWorks 文件。C++、Python 和 Rust API 可在界面内外自动化分析；开源调试器可在 Windows、Linux 和 macOS 上本地或远程调试，也能连接 GDB、LLDB 和 iOS debugserver 目标；补丁可通过直接修改汇编、十六进制编辑器或内置的 SCC 编译器完成；6.0 版还加入了 MCP 服务器。Ultimate 版另含面向嵌入式固件的 Firmware Ninja，可按熵值识别代码与数据区域并检测对内存映射 I/O 的访问；EFI Resolver 工作流则为 UEFI 的 PEI、DXE 和 SMM 模块中的协议调用补全类型信息。","entry_url":"https://awesomerea.org/resources/binary-ninja/","entry_url_zh":"https://awesomerea.org/zh/resources/binary-ninja/","evidence_url":"https://binary.ninja/","group":"tools","id":"binary-ninja","json_url":"https://awesomerea.org/resources/binary-ninja/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/binary-ninja/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binary-ninja/index.md","name":"Binary Ninja","name_zh":"Binary Ninja 交互式反汇编、反编译与二进制分析平台","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","license","license","limits"],"requirements":["Stable release at review: 6.0.10905 (6.0 Release 2, 2026-10-20), a bug-fix update to 6.0 (2026-09-03). One license covers Linux, macOS and Windows; tested hosts are Ubuntu 24.04/26.04 and macOS 15/26 (x64 or arm64) and Windows 10/11 (x64); minimums: 2 GHz multi-core CPU, 8 GB RAM, 4 GB disk. Needs Python 3.10+.","Four editions: Free, Non-Commercial (Personal, non-commercial use only), Commercial and Ultimate. Paid licenses include a year of updates; versions released during support keep working after it. Online purchases are named licenses (one person, several machines). Only Commercial and Ultimate run plugins headlessly (import binaryninja without the GUI); Non-Commercial uses the API only from GUI-loaded plugins or the Python console.","By edition, Free decompiles x86, x86-64, ARMv7, Thumb2 and AArch64; Non-Commercial and Commercial add PowerPC, MIPS, RISC-V, MSP430, 6502 and the MD1ROM loader; only Ultimate decompiles nanoMIPS, TriCore, C-SKY, M·CORE, Hexagon, NDS32 and TMS320C6x and has the VxWorks loader, Firmware Ninja, Binary Similarity and Ghidra Export.","Free (non-commercial use or commercial evaluation) has no API or plugins and only disassembly, HLIL and Pseudo C views. The free browser-based Binary Ninja Cloud supports all architectures but requires uploading binaries to Vector 35, reads only PE, Mach-O and ELF, lacks API and plugins and has strict performance limits."],"requirements_zh":["审阅时的稳定版为 6.0.10905（6.0 Release 2，2026-10-20），是对 6.0（2026-09-03）的错误修复更新。一份许可同时涵盖 Linux、macOS 和 Windows；经测试的宿主系统为 Ubuntu 24.04/26.04 和 macOS 15/26（x64 或 arm64）以及 Windows 10/11（x64）；最低配置为 2 GHz 多核 CPU、8 GB 内存和 4 GB 磁盘空间。另需 Python 3.10 及以上。","共四个版本：Free、Non-Commercial（即 Personal，仅限非商业用途）、Commercial 和 Ultimate。付费许可含一年更新，到期后仍可继续使用支持期内发布的版本；在线购买的均为 named 许可，供一人在多台机器上使用。只有 Commercial 和 Ultimate 能以无界面方式运行插件（脱离图形界面 import binaryninja）；Non-Commercial 只能通过图形界面加载的插件或 Python 控制台使用 API。","按版本划分：Free 可反编译 x86、x86-64、ARMv7、Thumb2 和 AArch64；Non-Commercial 与 Commercial 增加 PowerPC、MIPS、RISC-V、MSP430、6502 以及 MD1ROM 加载器；对 nanoMIPS、TriCore、C-SKY、M·CORE、Hexagon、NDS32 和 TMS320C6x 的反编译，以及 VxWorks 加载器、Firmware Ninja、Binary Similarity 和 Ghidra Export，仅 Ultimate 提供。","Free（用于非商业用途或商业评估）不支持 API 或插件，只提供反汇编、HLIL 和 Pseudo C 视图。基于浏览器的免费 Binary Ninja Cloud 支持所有架构，但须把二进制上传给 Vector 35，只能读取 PE、Mach-O 和 ELF，不支持 API 和插件，且有严格的性能限制。"],"targets":["binary","firmware"],"url":"https://binary.ninja/","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://www.hopperapp.com/download.html","https://www.hopperapp.com/faq.html","https://www.hopperapp.com/rss/html_changelog.php","https://www.hopperapp.com/license_agreement.html","https://www.hopperapp.com/tutorial.html"],"category":"native-analysis","description_en":"Cryptic Apps' commercial disassembler, decompiler and debugger for macOS and Linux, which reads Mach-O (macOS and iOS), PE and ELF executables built for 32- and 64-bit Intel, ARMv6, ARMv7, ARM64 and PowerPC processors. Each procedure can be viewed as assembly, as an interactive control-flow graph that exports to PDF or as C-like pseudocode, with Swift name demangling and extraction of Objective-C selectors and messages, and binaries can be patched through the hex editor, the built-in assembler or Python. Debugging of Mac applications uses LLDB or GDB, Python scripts reach most features, an SDK adds file-format parsers and CPU backends, and Hopper 6 brought a new decompiler and an MCP server for LLM clients.","description_zh":"Cryptic Apps 推出的商业反汇编器、反编译器与调试器，运行于 macOS 和 Linux，可读取面向 32/64 位 Intel、ARMv6、ARMv7、ARM64 和 PowerPC 处理器构建的 Mach-O（macOS 与 iOS）、PE 和 ELF 可执行文件。每个函数都能以汇编、可导出为 PDF 的交互式控制流图或类 C 伪代码呈现，并能还原 Swift 修饰名、提取 Objective-C 选择器与消息；还可通过十六进制编辑器、内置汇编器或 Python 修改二进制。调试 Mac 应用时可使用 LLDB 或 GDB；Python 脚本可调用大部分功能，SDK 可扩展文件格式解析器和 CPU 后端；Hopper 6 推出了新的反编译器以及供大语言模型客户端使用的 MCP 服务器。","entry_url":"https://awesomerea.org/resources/hopper-disassembler/","entry_url_zh":"https://awesomerea.org/zh/resources/hopper-disassembler/","evidence_url":"https://www.hopperapp.com/","group":"tools","id":"hopper-disassembler","json_url":"https://awesomerea.org/resources/hopper-disassembler/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/hopper-disassembler/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hopper-disassembler/index.md","name":"Hopper Disassembler","name_zh":"Hopper Disassembler macOS/Linux 反汇编与反编译工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","license","limits","limits"],"requirements":["Version at review: 6.6.1, released 2026-10-29. The Mac build is a Universal Binary for Intel and Apple Silicon and requires macOS 12.4 or later; 5.19.6 is the last version for macOS 10.13 to 11. The Linux build needs a 64-bit Intel processor and is tested only on Ubuntu 24.04, Fedora 41 and Arch Linux (DEB, RPM and tar.xz packages). There is no Windows version.","Commercial, with a per-user Personal License or a hardware-bound Computer License and no restriction on commercial use. Licenses are permanent and include one year of updates; after the update plan lapses, Hopper is limited to the last version released during it, and another year can be bought from within the application.","The free demo has all analysis features but cannot save or export disassembly or modified binaries, disables the debugger backend and limits sessions to 30 minutes.","Hopper cannot read iOS apps taken from an iTunes library, which are encrypted with FairPlay DRM, until the user removes the DRM. Its pseudocode is usually not directly compilable, and the tutorial warns that code wrongly judged unreachable can drop out of it."],"requirements_zh":["审阅时的版本为 6.6.1，发布于 2026-10-29。Mac 版是兼容 Intel 与 Apple Silicon 的通用二进制，需要 macOS 12.4 或更高版本；5.19.6 是支持 macOS 10.13 至 11 的最后一个版本。Linux 版需要 64 位 Intel 处理器，仅在 Ubuntu 24.04、Fedora 41 和 Arch Linux 上测试过（提供 DEB、RPM 和 tar.xz 包）。没有 Windows 版。","商业软件，可选按用户授权的 Personal License 或绑定硬件的 Computer License，商业用途不受限制。许可永久有效并含一年更新；更新计划到期后只能使用其有效期内发布的最后一个版本，可在应用内再购买一年更新。","免费演示版包含全部分析功能，但不能保存或导出反汇编结果及修改后的二进制，调试器后端被禁用，每次会话限 30 分钟。","取自 iTunes 资料库的 iOS 应用经过 FairPlay DRM 加密，在使用者去除 DRM 之前 Hopper 无法读取。其伪代码通常不能直接编译，教程也提醒，被误判为不可达的代码可能从伪代码中消失。"],"targets":["app","binary"],"url":"https://www.hopperapp.com/","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://www.pnfsoftware.com/jeb/android","https://www.pnfsoftware.com/jeb/community-edition","https://www.pnfsoftware.com/jeb/buy","https://www.pnfsoftware.com/jeb/demo","https://www.pnfsoftware.com/jeb/plc","https://www.pnfsoftware.com/jeb/changelog","https://www.pnfsoftware.com/jeb/manual/","https://www.pnfsoftware.com/jeb/manual/faq/","https://www.pnfsoftware.com/jeb/LICENSE.TXT"],"category":"android","description_en":"PNF Software's commercial reverse-engineering platform for Android apps and native code, combining a Dalvik decompiler and Android debuggers with disassemblers and decompilers for x86, ARM, MIPS and RISC-V machine code. For APKs it decompiles multi-dex Dalvik bytecode to Java, reconstructs resources and obfuscated XML, cleans up obfuscated code with optimizers that decrypt content and undo reflection, and debugs Dalvik and native ARM or Intel code in one session, stepping from Dalvik into JNI methods. Modules in JEB Pro also decompile WebAssembly, Ethereum EVM contracts (to Solidity-like code), Siemens S7-300/400 PLC blocks and Nvidia SASS GPU code and analyze PDF documents, and its loaders read PE, ELF, Mach-O, Intel HEX and raw (headless) firmware images. The JEB API lets Java and Python scripts, back-end plugins and custom headless clients automate analysis, and JEB also exposes an MCP server for AI agents.","description_zh":"PNF Software 推出的商业逆向工程平台，面向 Android 应用和原生代码，集 Dalvik 反编译器、Android 调试器以及 x86、ARM、MIPS、RISC-V 机器码的反汇编器与反编译器于一体。处理 APK 时，它能将多 dex 的 Dalvik 字节码反编译为 Java，重建资源和经过混淆的 XML，用可自动解密内容、消除反射调用的优化器清理混淆代码，并在同一会话中调试 Dalvik 与原生 ARM 或 Intel 代码，可从 Dalvik 单步进入 JNI 方法。JEB Pro 的模块还能反编译 WebAssembly、以太坊 EVM 合约（输出类 Solidity 代码）、西门子 S7-300/400 PLC 程序块和 Nvidia SASS GPU 代码，并分析 PDF 文档；其加载器可读取 PE、ELF、Mach-O、Intel HEX 以及无容器格式（headless）的固件镜像。借助 JEB API，可用 Java 和 Python 编写脚本、后端插件和自定义无界面客户端来自动化分析；JEB 还提供面向 AI 智能体的 MCP 服务器。","entry_url":"https://awesomerea.org/resources/jeb-decompiler/","entry_url_zh":"https://awesomerea.org/zh/resources/jeb-decompiler/","evidence_url":"https://www.pnfsoftware.com/jeb/","group":"tools","id":"jeb-decompiler","json_url":"https://awesomerea.org/resources/jeb-decompiler/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/jeb-decompiler/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/jeb-decompiler/index.md","name":"JEB Decompiler","name_zh":"JEB Decompiler Android 与原生代码逆向平台","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","license","license","limits"],"requirements":["Version at review: JEB 5.48, released 2026-10-07. Needs a 64-bit JDK 21+ (JDK 23 at most and Oracle or OpenJDK builds recommended); the GUI client runs on Windows, Linux (GTK) and macOS on x64 or arm64. Packages are per-user zip archives sent by email; license keys derive from machine identifiers.","Time-based commercial licenses only, none perpetual: JEB Android (per user, non-professional users, Android apps only), JEB Pro (per user, all modules), JEB Pro Floating (per seat) and JEB Pro OEM (per server, back-end or SaaS use). After a non-OEM subscription expires, existing JDB2 projects still open but new ones cannot be created; per the buy page, only Pro licenses work offline.","JEB Community Edition is free, with most disassemblers and file analyzers and the x86/x86-64 decompilers, but per the features matrix no Dalvik decompiler or debugger, headless launcher or offline use; the EULA sets separate terms for it. JEB Demo has all modules for evaluation but decompiles only part of the code, cannot save or load projects or use the clipboard, and has time-limited sessions that need an Internet connection.","Stated limits: RISC-V support lacks RV128, RVE, vector/SIMD extensions and floating-point decompilation; the S7 decompiler cannot process all MC7 code or S7-1200/1500 blocks; debugging apps that disallow it works on ARMv7 only; command-line Python scripts need a Pro or CE license."],"requirements_zh":["审阅时的版本为 JEB 5.48，发布于 2026-10-07。需要 64 位 JDK 21 及以上（不建议高于 JDK 23，推荐 Oracle 或 OpenJDK 构建）；GUI 客户端可在 x64 或 arm64 的 Windows、Linux（GTK）和 macOS 上运行。软件包是按用户生成、通过电子邮件交付的 zip 压缩包；许可证密钥由机器标识派生。","仅提供按期限计费的商业许可，没有永久许可：JEB Android（按用户授权，面向非专业用户，仅限 Android 应用）、JEB Pro（按用户授权，含全部模块）、JEB Pro Floating（按席位授权）和 JEB Pro OEM（按服务器授权，用于后端或 SaaS）。非 OEM 订阅到期后仍可打开已有的 JDB2 项目，但不能新建项目；购买页显示只有 Pro 系列许可可以离线使用。","JEB Community Edition 免费，含大部分反汇编器和文件分析器以及 x86/x86-64 反编译器，但按功能对照表，它不含 Dalvik 反编译器和调试器、无界面启动器，也不能离线使用；EULA 为其另行规定了条款。JEB Demo 含全部模块供评估，但只能反编译部分代码，不能保存或加载项目，不能使用剪贴板，会话有时间限制且需要联网。","文档列出的局限：RISC-V 支持不含 RV128、RVE、向量/SIMD 扩展和浮点指令反编译；S7 反编译器无法处理所有 MC7 代码，也不支持 S7-1200/1500 的程序块；调试不允许调试的应用仅限 ARMv7 平台；从命令行运行 Python 脚本需要 Pro 或 CE 许可。"],"targets":["app","binary","firmware"],"url":"https://www.pnfsoftware.com/jeb/","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/debugger-download-tools","https://learn.microsoft.com/en-us/windows-hardware/drivers/debuggercmds/windbg-overview","https://learn.microsoft.com/en-us/windows-hardware/drivers/debuggercmds/windbg-release-notes","https://learn.microsoft.com/en-us/windows-hardware/drivers/debuggercmds/time-travel-debugging-overview","https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/debuggers-in-the-debugging-tools-for-windows-package","https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/getting-started-with-windows-debugging","https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/analyzing-a-user-mode-dump-file","https://learn.microsoft.com/en-us/windows-hardware/drivers/debuggercmds/windbg-kernel-mode-preview","https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/linux-dwarf-symbols","https://learn.microsoft.com/en-us/windows-hardware/drivers/debuggercmds/windbg-mcp-overview","https://learn.microsoft.com/en-us/legal/windows-sdk/windbg-software-license-terms","https://apps.microsoft.com/detail/9pgjgd53tn86"],"category":"dynamic-analysis","description_en":"Microsoft's WinDbg debugger and the Debugging Tools for Windows, documented on Microsoft Learn, for debugging live user-mode and kernel-mode code, analyzing crash dumps and examining CPU registers and memory. The current app keeps the engine, commands and extensions of WinDbg (Classic) and adds Time Travel Debugging, which records a user-mode process and replays it in both directions, JavaScript and NatVis scripting and Linux ELF dump analysis; since 1.2610.1001.0 it also offers WinDbg MCP for supported AI clients.","description_zh":"微软的 WinDbg 调试器及 Debugging Tools for Windows 工具包，文档发布于 Microsoft Learn，用于调试运行中的用户态和内核态代码、分析崩溃转储，以及检查 CPU 寄存器和内存。当前的 WinDbg 应用沿用 WinDbg (Classic) 的调试引擎、命令和扩展，并新增时间旅行调试（Time Travel Debugging，可录制用户态进程并向前、向后回放）、JavaScript 与 NatVis 脚本和 Linux ELF 转储分析；自 1.2610.1001.0 版起还提供面向受支持 AI 客户端的 WinDbg MCP。","entry_url":"https://awesomerea.org/resources/windbg/","entry_url_zh":"https://awesomerea.org/zh/resources/windbg/","evidence_url":"https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/","group":"tools","id":"windbg","json_url":"https://awesomerea.org/resources/windbg/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/windbg/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/windbg/index.md","name":"WinDbg","name_zh":"WinDbg Windows 调试器","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","license","limits","limits"],"requirements":["WinDbg installs from Microsoft's installer, the Microsoft Store or winget on x64 or ARM64 Windows 11 or Windows 10 1607 and later, not Windows 10/11 S, and direct and Store installs self-update; the release notes, updated 2026-11-05, list 1.2611.4001.0 as newest.","Debugging Tools for Windows (WinDbg Classic and the KD, NTKD, CDB and NTSD console debuggers) ships with the WDK or Windows SDK or as an SDK-only install, with archived SDKs for older Windows. Kernel debugging typically needs a second machine or VM, local kernel debugging and TTD need elevation, and full analysis needs symbols, which for commercial code depend on the vendor.","Free in the Microsoft Store under Microsoft's proprietary WinDbg license terms (updated 2026-10-08): the software is licensed, not sold, may not be redistributed and may send usage data to Microsoft.","TTD records user-mode processes only, and not protected ones such as PPL; recording is typically 10–20x slower, traces can reach several gigabytes in minutes, with index files about twice as large, and may hold personal or security data; anti-virus software can interfere.","WinDbg MCP officially supports GitHub Copilot in Visual Studio Code and GitHub Copilot CLI, one client per session; clients may send debugger context to their model service, AI findings are not authoritative, and default secure mode blocks high-risk commands such as .shell."],"requirements_zh":["WinDbg 可通过微软安装程序、Microsoft Store 或 winget 安装，支持 x64 或 ARM64 架构的 Windows 11 及 Windows 10 1607 以上版本，不支持 Windows 10/11 S；直接安装或经 Store 安装的版本会自动更新。发行说明（2026-11-05 更新）列出的最新版本为 1.2611.4001.0。","Debugging Tools for Windows（含 WinDbg (Classic) 及 KD、NTKD、CDB、NTSD 控制台调试器）随 WDK 或 Windows SDK 提供，也可在 SDK 安装程序中只选此组件单独安装，旧版 Windows 则使用归档中的对应 SDK。内核调试通常需要另一台计算机或虚拟机，本地内核调试和 TTD 需以提升的权限运行，完整分析还需要符号文件，商业软件的符号能否获得取决于厂商。","在 Microsoft Store 中免费提供，采用微软专有的 WinDbg 软件许可条款（2026-10-08 更新）：软件仅授予使用许可而非出售，禁止再分发，并可能把使用数据发送给微软。","TTD 只能录制用户态进程，且不能录制 PPL 等受保护进程；录制时通常会慢 10 至 20 倍，几分钟内跟踪文件就可能达到数 GB，索引文件通常还要大一倍，且可能包含个人身份或安全相关信息；杀毒软件可能干扰录制。","WinDbg MCP 官方支持 Visual Studio Code 中的 GitHub Copilot 和 GitHub Copilot CLI，每个会话同时只能连接一个客户端；客户端可能把调试器上下文发送给其模型服务，AI 给出的结论并不权威，默认开启的安全模式会阻止 .shell 等高风险命令。"],"targets":["binary"],"url":"https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://www.sweetscape.com/010editor/release_notes.html","https://www.sweetscape.com/download/010editor/","https://www.sweetscape.com/support/kb/kb1042.html","https://www.sweetscape.com/store/","https://www.sweetscape.com/010editor/manual/License.htm","https://www.sweetscape.com/010editor/manual/Introduction.htm","https://www.sweetscape.com/010editor/templates.html","https://www.sweetscape.com/010editor/features.html","https://www.sweetscape.com/010editor/manual/Disassembler.htm","https://www.sweetscape.com/010editor/manual/EditingProcesses.htm","https://www.sweetscape.com/010editor/repository/templates/"],"category":"native-analysis","description_en":"SweetScape Software's commercial hex and text editor whose Binary Templates, C/C++-like struct definitions with control flow and functions, parse binary files into hierarchical, editable structures. Templates can run when a file opens and are shared through an online repository, scripts with C/C++-like syntax automate edits and batch runs, and the tools include a Capstone-based disassembler for x86, ARM, MIPS, PowerPC and other code, byte-by-byte comparison, checksums and hashes, and editing of drives and, on Windows, process memory.","description_zh":"SweetScape Software 推出的商业十六进制与文本编辑器，其 Binary Templates 采用类似 C/C++ 结构体、可含控制流语句和函数的写法，将二进制文件解析为可编辑的层级结构。模板可在打开文件时自动运行，并能通过在线仓库分享；语法类似 C/C++ 的脚本可自动完成编辑和批处理；工具还包括基于 Capstone、支持 x86、ARM、MIPS、PowerPC 等架构的反汇编器、逐字节比较、校验和与哈希计算，以及磁盘和 Windows 进程内存编辑。","entry_url":"https://awesomerea.org/resources/010-editor/","entry_url_zh":"https://awesomerea.org/zh/resources/010-editor/","evidence_url":"https://www.sweetscape.com/010editor/","group":"tools","id":"010-editor","json_url":"https://awesomerea.org/resources/010-editor/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/010-editor/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/010-editor/index.md","name":"010 Editor","name_zh":"010 Editor 十六进制与文本编辑器","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","license","limits","limits"],"requirements":["Version 17.0.1, released 2026-11-04, has 64-bit builds for Windows 11/10, macOS 10.14 to 27 on ARM and Intel, and Ubuntu 18.04 to 26.04, plus 32-bit Windows and Linux builds and a portable Windows build. Version 10 dropped Windows XP, macOS 10.7–10.11 and Ubuntu 10.04–14.04, where older releases still run.","Commercial: the evaluation version works for 30 days, after which a license must be bought. Licenses are per user and perpetual, with a year of free upgrades and support, and come as commercial or lower-priced home/academic licenses; the EULA bars home/academic licenses from commercial use, except for members of registered non-profits, and from government or military organizations.","The disassembler only converts bytes to assembly: the manual says 010 Editor cannot execute the result and points to a separate emulator or debugger. Process editing is Windows-only, and the manual warns that incorrect process edits can make programs misbehave or crash the system.","Only ZIP, BMP and WAV templates ship with the editor; templates in the online repository are written and submitted by other users."],"requirements_zh":["17.0.1 版发布于 2026-11-04，提供 Windows 11/10、macOS 10.14 至 27（ARM 与 Intel）和 Ubuntu 18.04 至 26.04 的 64 位版本，以及 Windows 和 Linux 的 32 位版本和 Windows 便携版。第 10 版起不再支持 Windows XP、macOS 10.7–10.11 和 Ubuntu 10.04–14.04，这些系统上仍可运行旧版本。","商业软件：评估版可使用 30 天，期满后须购买许可证。许可证按用户计、永久有效，并含一年免费升级与技术支持，分为商业许可和价格较低的家庭/学术许可；EULA 规定家庭/学术许可证不得用于商业目的（注册非营利组织成员除外），也不得在政府或军事机构中使用。","反汇编器只负责把字节转换为汇编代码：手册说明 010 Editor 无法执行反汇编结果，需另用模拟器或调试器。进程编辑仅支持 Windows，手册还警告错误编辑进程可能导致程序运行异常或系统崩溃。","编辑器只自带 ZIP、BMP 和 WAV 模板；在线仓库中的模板由其他用户编写并提交。"],"targets":["binary"],"url":"https://www.sweetscape.com/010editor/","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://www.winitor.com/download","https://www.winitor.com/download2","https://www.winitor.com/pro","https://www.winitor.com/tools/pestudio/current/pestudio-features.pdf","https://www.winitor.com/tools/pestudio/current/pestudio-licensing.pdf","https://www.winitor.com/tools/pestudio/changes.log"],"category":"native-analysis","description_en":"Winitor's Windows tool for initial malware assessment, which statically inspects Windows executable files and reports key indicators such as hard-coded URLs and IP addresses, flagged imports, resources and overlay data. The free basic edition also detects file signatures, debug information and TLS callbacks, computes entropy and imphash, shows the rich header and .NET metadata and looks up VirusTotal scores by hash; pestudio-pro adds MITRE ATT&CK mapping, XML reports and the pestudiox.exe command-line version.","description_zh":"Winitor 推出的 Windows 恶意软件初步评估工具，以静态方式检查 Windows 可执行文件，报告硬编码的 URL 和 IP 地址、被标记的导入函数、资源及附加数据（overlay）等关键指标。免费的基础版还能识别文件签名、调试信息和 TLS 回调，计算熵值与 imphash，显示 rich header 和 .NET 元数据，并凭哈希查询 VirusTotal 评分；pestudio-pro 另提供 MITRE ATT&CK 映射、XML 报告和命令行版本 pestudiox.exe。","entry_url":"https://awesomerea.org/resources/pestudio/","entry_url_zh":"https://awesomerea.org/zh/resources/pestudio/","evidence_url":"https://www.winitor.com/","group":"tools","id":"pestudio","json_url":"https://awesomerea.org/resources/pestudio/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pestudio/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pestudio/index.md","name":"pestudio","name_zh":"pestudio 恶意软件初步评估工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","license","limits"],"requirements":["Version 9.61, whose feature and licensing sheets are dated March 2025, ships as a ZIP that needs no installation; the download page says it is fully portable, does not alter the system it runs on and runs on any Windows system.","The free basic edition may be used only in a private context for occasional malware static analysis, not in a professional or corporate environment. pestudio-pro is sold as a one-year license per user that includes free updates, is not renewed automatically and is delivered as a password-protected ZIP.","VirusTotal lookups send only the file's MD5 hash, never the sample, and an XML switch disables them; searching VirusTotal by imphash needs a VirusTotal Intelligence account. The software is provided as-is without warranty, and its bundled XML files may not be used outside pestudio without the author's permission."],"requirements_zh":["9.61 版的功能表和许可说明均注明 2025 年 3 月，以 ZIP 包形式提供，无需安装；下载页称它完全便携、不会改动所运行的系统，可在任何 Windows 系统上运行。","免费的基础版只能在私人场合用于偶尔的恶意软件静态分析，不得用于专业或企业环境。pestudio-pro 按用户出售一年期许可，许可期内免费更新，到期不会自动续订，以带密码的 ZIP 包交付。","查询 VirusTotal 时只提交文件的 MD5 哈希，绝不上传样本本身，并可通过 XML 开关完全关闭；按 imphash 搜索 VirusTotal 需要 VirusTotal Intelligence 账户。软件按“原样”提供、不作任何担保，随附的 XML 文件未经作者许可不得在 pestudio 之外使用。"],"targets":["binary"],"url":"https://www.winitor.com/","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://www.ollydbg.de/version2.html","https://www.ollydbg.de/download.htm","https://www.ollydbg.de/requires.htm","https://www.ollydbg.de/odbg64.html","https://www.ollydbg.de/faq.htm"],"category":"dynamic-analysis","description_en":"32-bit assembler-level analyzing debugger for Windows that emphasizes binary code analysis for programs without source; its site says development is frozen, and the newest version it lists is 2.01 of 27 September 2013. Its analysis recognizes procedures, loops, API calls, switches, tables, constants and strings and decodes calls to more than 1,900 standard API and 400 C functions; it attaches to running programs, debugs DLLs directly, sets conditional, logging, memory and hardware breakpoints and writes patches back to the executable.","description_zh":"面向 Windows 的 32 位汇编级分析型调试器，侧重二进制代码分析，适用于没有源码的程序；其网站称开发已冻结，列出的最新版本是 2013 年 9 月 27 日发布的 2.01。它能识别过程、循环、API 调用、switch 结构、表、常量和字符串，解码对 1900 多个标准 API 和 400 个 C 函数的调用；还可附加到运行中的程序、直接调试 DLL，设置条件、日志、内存和硬件断点，并把补丁写回可执行文件。","entry_url":"https://awesomerea.org/resources/ollydbg/","entry_url_zh":"https://awesomerea.org/zh/resources/ollydbg/","evidence_url":"https://www.ollydbg.de/viewer.htm","group":"tools","id":"ollydbg","json_url":"https://awesomerea.org/resources/ollydbg/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ollydbg/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ollydbg/index.md","name":"OllyDbg","name_zh":"OllyDbg Windows 32 位调试器","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license","limits"],"requirements":["Version 2.01 (27 September 2013) is the newest the site lists, and 1.10 is offered as the final 1.x version. The requirements page lists Windows 95, 98, NT 4.0 SP2 or later, or Windows 2000 and later, and says debugging on NT or 2000 may need administrative rights; the 2.x notes say version 2 does not run on Windows 95 or 98.","OllyDbg is a 32-bit debugger. The 64-bit version is offered only as incomplete, and its latest progress note, of 5 February 2014, put the debugging engine at 70% and analysis at 15%.","Shareware that may be downloaded and used for free; the FAQ says it is rated shareware for copyright reasons only. The download page's agreement covers only version 1.10 and its Plugin Development Kit: permanent or commercial use needs a free registration, the software comes as is, and copies may be shared only complete, unchanged and without a fee. Disassembler 2.01 is released under GPL v3.","The download page warns that many vendors forbid disassembling, decompiling or reverse engineering their programs, including third-party and system libraries, and suggests asking a lawyer whether fair use applies."],"requirements_zh":["网站列出的最新版本为 2.01（2013 年 9 月 27 日），1.10 则作为 1.x 系列的最终版提供。系统要求页列出 Windows 95、98、NT 4.0 SP2 及以上或 Windows 2000 及更高版本，并指出在 NT 或 2000 上调试程序可能需要管理员权限；2.x 版说明称第 2 版无法在 Windows 95 和 98 上运行。","OllyDbg 是 32 位调试器。64 位版本仅以未完成状态提供，其最新进度说明（2014 年 2 月 5 日）称调试引擎完成 70%、分析功能完成 15%。","属于共享软件，但可免费下载使用；FAQ 说明标为共享软件只是出于版权原因。下载页的许可协议只适用于 1.10 版及其插件开发包（Plugin Development Kit）：长期或商业使用须免费注册，软件按“原样”提供，复制分发时必须完整、不作改动且不得收费。Disassembler 2.01 以 GPL v3 发布。","下载页提醒，许多软件厂商明确禁止对其程序进行反汇编、反编译或逆向工程，这一限制也涵盖第三方库和系统库，并建议就是否适用“合理使用”咨询律师。"],"targets":["binary"],"url":"https://www.ollydbg.de/","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/mikesiko/PracticalMalwareAnalysis-Labs/blob/5f55de02a10748247f7511dafaaf18a37d332ff5/README.md"],"category":"learning","description_en":"No Starch Press book, published in February 2012, that teaches hands-on malware analysis from basic static and dynamic techniques in virtual machines through x86 disassembly with IDA Pro, debugging with OllyDbg and kernel debugging with WinDbg. Later chapters cover malicious Windows programs, covert launching, data encoding, network signatures, anti-disassembly, anti-debugging and anti-VM techniques, unpacking, shellcode, C++ and 64-bit malware, and hands-on labs with solutions have readers dissect malware samples.","description_zh":"No Starch Press 于 2012 年 2 月出版的书籍，以动手实践的方式讲解恶意软件分析：从在虚拟机中运用基础静态与动态分析技术入手，进而讲解用 IDA Pro 进行 x86 反汇编、用 OllyDbg 调试以及用 WinDbg 进行内核调试。后续章节涵盖恶意 Windows 程序、隐蔽启动、数据编码、网络特征、反反汇编、反调试与反虚拟机技术、脱壳、shellcode、C++ 和 64 位恶意软件；书中配有附解答的动手实验，让读者剖析恶意软件样本。","entry_url":"https://awesomerea.org/resources/practical-malware-analysis/","entry_url_zh":"https://awesomerea.org/zh/resources/practical-malware-analysis/","evidence_url":"https://nostarch.com/malware","group":"learn","id":"practical-malware-analysis","json_url":"https://awesomerea.org/resources/practical-malware-analysis/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/practical-malware-analysis/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/practical-malware-analysis/index.md","name":"Practical Malware Analysis","name_zh":"《Practical Malware Analysis》恶意软件分析实战指南","record_type":"resource","relationship":"learning","requirement_facets":["prerequisites","prerequisites","limits","limits"],"requirements":["An 800-page book, sold in print with a free ebook or as a PDF, Mobi and ePub ebook. Chapter 12, the detailed table of contents and the index are free PDFs, and an errata PDF is posted.","Following the book needs a safe virtual analysis environment, which it teaches readers to set up, and the analysis tools it covers, such as IDA Pro, OllyDbg and WinDbg.","The publisher's “Download the labs” link leads to a GitHub repository offering the lab binaries as a self-extracting archive or a password-protected 7-Zip file. Its README warns that the binaries contain malicious code that should not be installed or run without first setting up a safe environment, and that, like real malware, some may crash, leak memory or behave unexpectedly.","The labs target Windows XP: many work on newer Windows but some do not, and a separate archive holds labs rebuilt for Windows 7 whose results differ from the book's answers."],"requirements_zh":["全书 800 页，有纸质版（附赠电子书）和 PDF、Mobi、ePub 电子版。第 12 章、详细目录和索引可免费下载 PDF，出版社还发布了勘误表 PDF。","跟随书中内容操作需要一个安全的虚拟分析环境（书中会教读者搭建），以及书中讲到的 IDA Pro、OllyDbg 和 WinDbg 等分析工具。","出版社页面上的“Download the labs”链接指向一个 GitHub 仓库，实验二进制文件以自解压包或带密码的 7-Zip 压缩包形式提供。其 README 警告这些二进制文件含有恶意代码，未先搭建安全环境就不应安装或运行；与真实恶意软件一样，其中一些可能崩溃、内存泄漏或出现其他意外行为。","实验以 Windows XP 为目标平台：许多实验在更新的 Windows 上也能运行，但有些不行；另有单独的压缩包收录为 Windows 7 重写的实验，其结果与书中答案不同。"],"targets":["binary"],"url":"https://nostarch.com/malware","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/nesrak1/UABEA/blob/057e2f6ae67ebc94a38faca9f946f8577162fa99/UABEAvalonia/UABEAvalonia.csproj","https://github.com/nesrak1/UABEA/blob/057e2f6ae67ebc94a38faca9f946f8577162fa99/UABEAvalonia/Workspace/UnityContainer.cs","https://github.com/nesrak1/UABEA/tree/057e2f6ae67ebc94a38faca9f946f8577162fa99","https://github.com/nesrak1/UABEA/blob/057e2f6ae67ebc94a38faca9f946f8577162fa99/license","https://github.com/nesrak1/UABEA/releases/tag/v8"],"category":"game-analysis","description_en":"Cross-platform reader and writer for the asset bundles and serialized asset files of Unity games, originally based on, though not a fork of, the archived UABE. Its README presents it as a modding and research tool rather than an extractor and points users who only want to extract assets to AssetRipper or AssetStudio; it opens bundles from Unity's Addressables system, whose CRC checks must be cleared with a separate tool before edited bundles load. It builds on AssetsTools.NET with Cpp2IL and Mono.Cecil, and the repository includes texture, audio-clip, font and text-asset plugins.","description_zh":"跨平台的 Unity 游戏资源包（asset bundle）与序列化资源文件读写工具，最初参照已归档的 UABE 编写，但并非其分支。README 将它定位为改造（modding）与研究工具而非提取工具，只想提取资源的用户可改用 AssetRipper 或 AssetStudio；它能打开 Unity Addressables 系统使用的资源包，但修改后的资源包须先用另一个工具清除 CRC 校验才能加载。它基于 AssetsTools.NET，并借助 Cpp2IL 和 Mono.Cecil；仓库中还附有纹理、音频片段、字体和文本资源插件。","entry_url":"https://awesomerea.org/resources/uabea/","entry_url_zh":"https://awesomerea.org/zh/resources/uabea/","evidence_url":"https://github.com/nesrak1/UABEA/blob/057e2f6ae67ebc94a38faca9f946f8577162fa99/readme.md","group":"tools","id":"uabea","json_url":"https://awesomerea.org/resources/uabea/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/uabea/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/uabea/index.md","name":"UABEA","name_zh":"UABEA Unity 资源包读写工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Windows and Linux builds come from the releases or from nightly CI artifacts, and the project targets .NET 8. Release at review: v8, published 2024-11-03; the reviewed master commit dates from 2026-05-11. The README also points to UABEANext, a successor with docking and multi-bundle opening that is still a work in progress.","Bundles that belong to Addressables need their CRC checks cleared with the separate AddressablesTools patchcrc command before edited bundles are used, as the README describes.","MIT per the license file; bundled libraries keep their own terms, including the PVRTexTool license for PVRTexLib, zlib for Unity crnlib and CC BY 4.0 for Font Awesome."],"requirements_zh":["Windows 和 Linux 版本可从发布页或每夜 CI 构建获取，项目面向 .NET 8。审阅时的版本为 v8，于 2024-11-03 发布；所审阅的 master 分支提交日期为 2026-05-11。README 还介绍了后继项目 UABEANext，它支持停靠式界面和同时打开多个资源包，仍在开发中。","按 README 的说明，属于 Addressables 的资源包在修改后使用前，须用独立的 AddressablesTools 中的 patchcrc 命令清除 CRC 校验。","依 license 文件采用 MIT 许可；随附库各有其许可条款，例如 PVRTexLib 采用 PVRTexTool 许可、Unity crnlib 采用 zlib 许可、Font Awesome 采用 CC BY 4.0 许可。"],"targets":["game"],"url":"https://github.com/nesrak1/UABEA","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/gaasedelen/tenet/blob/62c0bec073fcbb31c5be52c9ea236b6ea2bcc418/tracers/README.md","https://github.com/gaasedelen/tenet/blob/62c0bec073fcbb31c5be52c9ea236b6ea2bcc418/LICENSE","https://github.com/gaasedelen/tenet/releases/tag/v0.2.0"],"category":"dynamic-analysis","description_en":"IDA Pro plugin for exploring execution traces of a binary: it loads an externally recorded trace and lets the analyst step forwards and backwards through time while the disassembly shows the execution flow in both directions. Execution, memory and region breakpoints mark every execution of an instruction or every read and write of an address or range along a trace timeline, register seeking jumps to the instruction that set a register's value, and a timestamp shell seeks to a position or percentage of the trace.","description_zh":"用于浏览二进制程序执行跟踪的 IDA Pro 插件：载入外部录制的跟踪后，分析人员可沿时间轴向前或向后单步，反汇编视图会标出前后两个方向的执行流。执行断点、内存断点和区域断点可在跟踪时间轴上标出某条指令的每次执行，或某个地址、某段内存的每次读写；寄存器回溯可直接跳到设置该寄存器当前值的指令；时间戳命令行可跳转到跟踪中的指定位置或百分比处。","entry_url":"https://awesomerea.org/resources/tenet/","entry_url_zh":"https://awesomerea.org/zh/resources/tenet/","evidence_url":"https://github.com/gaasedelen/tenet/blob/62c0bec073fcbb31c5be52c9ea236b6ea2bcc418/README.md","group":"tools","id":"tenet","json_url":"https://awesomerea.org/resources/tenet/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/tenet/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/tenet/index.md","name":"Tenet","name_zh":"Tenet IDA Pro 执行跟踪浏览插件","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","limits","license"],"requirements":["IDA Pro 7.5 or newer on Windows, macOS or Linux; Tenet is a pure Python 3 plugin with no third-party dependencies, installed by copying the repository's plugins folder into IDA's user plugin directory. Release at review: v0.2.0, published 2021-09-14, whose tag is the reviewed master commit.","Tenet only reads traces in its own text format, which records general-purpose register changes and memory reads and writes; a separate tracer must record them, and the repository's Intel Pin tracer for Windows and Linux user-mode programs and its QEMU tracer are marked experimental.","It loads only x86 and AMD64 traces, and its pure-Python reader gives no guarantee that traces of more than 10 million instructions stay reasonable to navigate.","MIT per LICENSE."],"requirements_zh":["需要 Windows、macOS 或 Linux 上的 IDA Pro 7.5 或更高版本；Tenet 是纯 Python 3 插件，不依赖任何第三方库，把仓库中 plugins 文件夹的内容复制到 IDA 的用户插件目录即可安装。审阅时的版本为 v0.2.0，于 2021-09-14 发布，其标签即所审阅的 master 分支提交。","Tenet 只读取自身文本格式的跟踪文件，其中记录通用寄存器的变化以及内存读写；跟踪需由单独的跟踪器录制，仓库附带的 Intel Pin 跟踪器（面向 Windows 和 Linux 用户态程序）和 QEMU 跟踪器都标为实验性质。","它只能载入 x86 和 AMD64 跟踪，纯 Python 实现的读取器不保证能流畅浏览超过 1000 万条指令的跟踪。","依 LICENSE 采用 MIT 许可。"],"targets":["binary"],"url":"https://github.com/gaasedelen/tenet","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/polymorf/findcrypt-yara/blob/044644b9c52ae3e7b2305bac15b0c12c9e31a282/findcrypt3.py#L178-L212","https://github.com/polymorf/findcrypt-yara/blob/044644b9c52ae3e7b2305bac15b0c12c9e31a282/findcrypt3.rules","https://github.com/polymorf/findcrypt-yara/blob/044644b9c52ae3e7b2305bac15b0c12c9e31a282/LICENSE"],"category":"native-analysis","description_en":"IDA Pro plugin that scans the loaded database with YARA rules for cryptographic constants and similar signatures, lists the matches in a results window and names each matching address after its rule. Its bundled findcrypt3.rules has 126 rules covering constants and tables of hash, cipher and checksum algorithms such as MD5, SHA-1, SHA-256, SHA-512, RIPEMD-160, Whirlpool, DES, Blowfish, RC6, TEA and CRC32, big-number and prime constants, crypto API names and functions of libraries such as OpenSSL, Crypto++, MIRACL and FGint; users can add their own .rules files.","description_zh":"IDA Pro 插件，用 YARA 规则在已加载的数据库中扫描密码学常量等特征，在结果窗口中列出匹配项，并按规则名为每个匹配地址命名。随附的 findcrypt3.rules 包含 126 条规则，涵盖 MD5、SHA-1、SHA-256、SHA-512、RIPEMD-160、Whirlpool、DES、Blowfish、RC6、TEA 和 CRC32 等哈希、加密与校验算法的常量和查找表，大数与素数常量，加密 API 名称，以及 OpenSSL、Crypto++、MIRACL 和 FGint 等库中的函数；用户还可添加自己的 .rules 文件。","entry_url":"https://awesomerea.org/resources/findcrypt-yara/","entry_url_zh":"https://awesomerea.org/zh/resources/findcrypt-yara/","evidence_url":"https://github.com/polymorf/findcrypt-yara/blob/044644b9c52ae3e7b2305bac15b0c12c9e31a282/README.md","group":"tools","id":"findcrypt-yara","json_url":"https://awesomerea.org/resources/findcrypt-yara/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/findcrypt-yara/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/findcrypt-yara/index.md","name":"findcrypt-yara","name_zh":"findcrypt-yara IDA Pro 密码学常量识别插件","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","scope","license"],"requirements":["IDA Pro with IDAPython and the yara-python package; the README warns against installing the yara pip package, which is not compatible. Custom rule files go in .idapro/plugins/findcrypt-yara/ under the home directory on Linux and macOS, or in the Hex-Rays IDA Pro plugin folder under %APPDATA% on Windows.","The repository has no releases; the plugin reports version 0.2 with the default hotkey Ctrl-Alt-F, and the reviewed master commit is dated 2024-11-19.","BSD-3-Clause per LICENSE."],"requirements_zh":["需要带 IDAPython 的 IDA Pro 和 yara-python 包；README 提醒不要安装与该插件不兼容的 yara pip 包。自定义规则文件在 Linux 和 macOS 上放在主目录下的 .idapro/plugins/findcrypt-yara/，在 Windows 上放在 %APPDATA% 下 Hex-Rays IDA Pro 的插件目录中。","仓库没有发布版本；插件自身标注的版本为 0.2，默认快捷键为 Ctrl-Alt-F，所审阅的 master 分支提交日期为 2024-11-19。","依 LICENSE 采用 BSD-3-Clause 许可。"],"targets":["binary"],"url":"https://github.com/polymorf/findcrypt-yara","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/danigargu/deREferencing/blob/797a6156b538f3374de1147c8fe68788ec2d9020/LICENSE","https://github.com/danigargu/deREferencing/releases/tag/v2026.09.03"],"category":"dynamic-analysis","description_en":"IDA Pro plugin that adds register and stack views to the debugger in which pointers are dereferenced and colored, similar to the context displays of GDB plugins such as PEDA, GEF and pwndbg. It supports x86, x86-64, ARM, ARM64, MIPS32 and MIPS64; both views open from Debugger > Debugger Windows or with Alt-Shift-D and Alt-Shift-E, and a saved desktop layout reopens them in later debugging sessions.","description_zh":"为 IDA Pro 调试器新增寄存器视图和栈视图的插件，视图中会显示解引用后的指针并加以着色，效果类似 PEDA、GEF、pwndbg 等 GDB 插件的上下文显示。它支持 x86、x86-64、ARM、ARM64、MIPS32 和 MIPS64；两个视图可从 Debugger > Debugger Windows 菜单或用 Alt-Shift-D、Alt-Shift-E 快捷键打开，保存桌面布局后，之后的调试会话会自动重新打开它们。","entry_url":"https://awesomerea.org/resources/dereferencing/","entry_url_zh":"https://awesomerea.org/zh/resources/dereferencing/","evidence_url":"https://github.com/danigargu/deREferencing/blob/797a6156b538f3374de1147c8fe68788ec2d9020/README.md","group":"tools","id":"dereferencing","json_url":"https://awesomerea.org/resources/dereferencing/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dereferencing/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dereferencing/index.md","name":"deREferencing","name_zh":"deREferencing IDA Pro 寄存器与栈视图插件","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","scope","license"],"requirements":["IDA Pro 7.1 or later. Install it with hcli plugin install dereferencing, or copy dereferencing.py and the dereferencing folder into IDA's plugin directory (.idapro/plugins under the home directory on Linux and macOS, %AppData%\\Hex-Rays\\IDA Pro\\plugins on Windows). Release at review: v2026.09.03, published 2026-09-03, whose tag is the reviewed master commit.","Options are changed in the plugin's config.py file.","GPL-3.0 per LICENSE."],"requirements_zh":["需要 IDA Pro 7.1 或更高版本。可用 hcli plugin install dereferencing 安装，也可手动把 dereferencing.py 和 dereferencing 文件夹复制到 IDA 的插件目录（Linux 和 macOS 为主目录下的 .idapro/plugins，Windows 为 %AppData%\\Hex-Rays\\IDA Pro\\plugins）。审阅时的版本为 v2026.09.03，于 2026-09-03 发布，其标签即所审阅的 master 分支提交。","配置选项在插件的 config.py 文件中修改。","依 LICENSE 采用 GPL-3.0 许可。"],"targets":["binary"],"url":"https://github.com/danigargu/deREferencing","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/patois/HexraysToolbox/blob/d04869a3d6098a4ae4f60989d455d4bf3e572bad/hxtb.py","https://github.com/patois/HexraysToolbox/tree/d04869a3d6098a4ae4f60989d455d4bf3e572bad/hxtbshell_queries","https://github.com/patois/HexraysToolbox/blob/d04869a3d6098a4ae4f60989d455d4bf3e572bad/LICENSE"],"category":"native-analysis","description_en":"IDAPython scripts that find code patterns in Hex-Rays decompiler output, independent of the binary's processor architecture, by running user-written lambda queries over the decompiled ctree. Queries run from the hxtb-shell GUI inside IDA, from IDAPython through functions such as find_expr() and find_item(), from interactive command-line helpers or in batch mode over a set of files. The README's use cases include finding vulnerabilities and their variants, locating code patterns from previously reversed executables in newly decompiled code, malware variant analysis and finding patterns across binaries built for different architectures.","description_zh":"一组 IDAPython 脚本，通过对反编译得到的 ctree 运行用户编写的 lambda 查询，在 Hex-Rays 反编译输出中查找代码模式，与二进制文件的处理器架构无关。查询可在 IDA 内的 hxtb-shell 图形界面中运行，也可在 IDAPython 中通过 find_expr()、find_item() 等函数调用，或借助交互式命令行辅助函数运行，还能以批处理方式对一组文件执行。README 列出的用途包括查找漏洞及其变种、在新反编译的代码中定位此前逆向过的程序里的代码模式、恶意软件变种分析，以及在为不同架构编译的二进制文件之间查找相同模式。","entry_url":"https://awesomerea.org/resources/hexrays-toolbox/","entry_url_zh":"https://awesomerea.org/zh/resources/hexrays-toolbox/","evidence_url":"https://github.com/patois/HexraysToolbox/blob/d04869a3d6098a4ae4f60989d455d4bf3e572bad/Readme.md","group":"tools","id":"hexrays-toolbox","json_url":"https://awesomerea.org/resources/hexrays-toolbox/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/hexrays-toolbox/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hexrays-toolbox/index.md","name":"HexRays Toolbox","name_zh":"HexRays Toolbox 反编译代码模式查询脚本","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","scope","license"],"requirements":["Needs a valid IDA license and a valid Hex-Rays decompiler license for each target architecture. The repository has no releases; the reviewed master commit dates from 2023-06-20.","Example queries for hxtb-shell are in the hxtbshell_queries folder, and the shell also accepts Python expressions copied from the context viewer of the separate HRDevHelper plugin.","CC0-1.0 per LICENSE."],"requirements_zh":["需要有效的 IDA 许可证，以及每种目标架构对应的有效 Hex-Rays 反编译器许可证。仓库没有发布版本，所审阅的 master 分支提交日期为 2023-06-20。","hxtb-shell 的示例查询位于 hxtbshell_queries 文件夹；该界面也接受从另一款插件 HRDevHelper 的上下文查看器中复制的 Python 表达式。","依 LICENSE 采用 CC0-1.0 许可。"],"targets":["binary"],"url":"https://github.com/patois/HexraysToolbox","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/0xgalz/Virtuailor/blob/f5e20a021e31d4fdc40bf7fa531c8038ba240095/Main.py","https://github.com/0xgalz/Virtuailor/blob/f5e20a021e31d4fdc40bf7fa531c8038ba240095/LICENSE"],"category":"dynamic-analysis","description_en":"IDAPython tool that reconstructs C++ virtual tables in IDA Pro for 32- and 64-bit Intel and AArch64 code by observing indirect calls while the program runs under IDA's debugger. Its static part finds indirect calls and hooks the assignment of their targets with conditional breakpoints; when those breakpoints hit, the dynamic part creates vtable structures, renames vtables and virtual functions, adds structure offsets to the call instructions and cross-references from each indirect call to the virtual functions it reached, and for AArch64 firmware tries to fix undefined vtables and their functions.","description_zh":"在 IDA Pro 中重建 C++ 虚函数表的 IDAPython 工具，适用于 32/64 位 Intel 和 AArch64 代码，通过在 IDA 调试器中运行程序并观察间接调用来完成。静态部分负责找出间接调用，并用条件断点挂钩其调用目标的赋值；断点命中后，动态部分会创建虚表结构体、重命名虚表和虚函数、为调用指令加上结构体偏移，并从每个间接调用添加指向其实际调用的虚函数的交叉引用；对 AArch64 固件，它还会尝试修复未定义的虚表及相关函数。","entry_url":"https://awesomerea.org/resources/virtuailor/","entry_url_zh":"https://awesomerea.org/zh/resources/virtuailor/","evidence_url":"https://github.com/0xgalz/Virtuailor/blob/f5e20a021e31d4fdc40bf7fa531c8038ba240095/README.md","group":"tools","id":"virtuailor","json_url":"https://awesomerea.org/resources/virtuailor/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/virtuailor/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/virtuailor/index.md","name":"Virtuailor","name_zh":"Virtuailor IDA Pro C++ 虚表重建工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["IDA Pro 7.0 to 7.5: the master branch targets 7.5, and IDA versions older than 7.4 need the beforeIDA-7.4 branch. Run Main.py through File > Run script, ideally after taking an IDB snapshot as the README recommends, then exercise the program under IDA's debugger; AArch64 targets can be debugged through a remote GDB server. The repository has no releases; the reviewed master commit dates from 2020-06-06.","Only vtables used by virtual calls that are hit at run time are reconstructed, and the README says some breakpoints may be missed.","GPL-3.0 per LICENSE."],"requirements_zh":["支持 IDA Pro 7.0 至 7.5：master 分支面向 7.5，7.4 以前的 IDA 版本需改用 beforeIDA-7.4 分支。通过 File > Run script 运行 Main.py（README 建议先为 IDB 创建快照），再在 IDA 调试器中运行并操作目标程序；AArch64 目标可通过远程 GDB 服务器调试。仓库没有发布版本，所审阅的 master 分支提交日期为 2020-06-06。","只会重建运行时实际命中的虚调用所用的虚表；README 也提到部分断点可能遗漏。","依 LICENSE 采用 GPL-3.0 许可。"],"targets":["binary","firmware"],"url":"https://github.com/0xgalz/Virtuailor","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/ThunderCls/xAnalyzer/tree/09b7742ecf8e4beb2a2818371f0f25c8ded917db/apis_def","https://github.com/ThunderCls/xAnalyzer/blob/09b7742ecf8e4beb2a2818371f0f25c8ded917db/LICENSE","https://github.com/ThunderCls/xAnalyzer/releases/tag/2.5.12"],"category":"dynamic-analysis","description_en":"x64dbg plugin that annotates the static code of the debugged x86 or x64 executable with function-call, argument and loop analysis. It adds argument and type information from over 13,000 API definitions for almost 200 DLLs, handles undefined and register-based calls generically and detects loops automatically. Analysis runs on a selection, a function or a whole module from menus or the xanal commands, can run automatically at the entry point like OllyDbg's initial analysis, and users can extend its .api and header definition files.","description_zh":"x64dbg 插件，为被调试的 x86 或 x64 可执行文件的静态代码添加函数调用、参数和循环分析注释。它依据覆盖近 200 个 DLL、超过 13,000 个 API 的定义补充参数和类型信息，对未定义的调用和基于寄存器的调用做通用处理，并自动识别循环。分析可通过菜单或 xanal 命令作用于选中范围、单个函数或整个模块，也可像 OllyDbg 的初始分析那样在到达入口点时自动执行；用户还可以自行扩充其 .api 定义文件和头文件。","entry_url":"https://awesomerea.org/resources/xanalyzer/","entry_url_zh":"https://awesomerea.org/zh/resources/xanalyzer/","evidence_url":"https://github.com/ThunderCls/xAnalyzer/blob/09b7742ecf8e4beb2a2818371f0f25c8ded917db/README.md","group":"tools","id":"xanalyzer","json_url":"https://awesomerea.org/resources/xanalyzer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/xanalyzer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/xanalyzer/index.md","name":"xAnalyzer","name_zh":"xAnalyzer x64dbg 代码分析插件","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Needs x64dbg; copy xAnalyzer.dp32 or xAnalyzer.dp64 and the extracted apis_def folder into the matching x64dbg plugin directory. Release at review: 2.5.12, published 2025-08-13, the same day as the reviewed master commit.","The README lists known limits: the first undefined call with generic arguments in a function is not processed unless a jump precedes it, nested calls work correctly only in some cases, loops are detected only within function boundaries and can be misdetected around unconditional jumps, and extended analysis can take much longer and use large amounts of RAM.","MIT per LICENSE."],"requirements_zh":["需要 x64dbg；把 xAnalyzer.dp32 或 xAnalyzer.dp64 以及解压后的 apis_def 文件夹复制到 x64dbg 对应的插件目录。审阅时的版本为 2.5.12，于 2025-08-13 发布，与所审阅的 master 分支提交同一天。","README 列出的已知局限：函数中第一个带通用参数的未定义调用不会被处理，除非其前面有跳转；嵌套调用只在部分情况下能正确处理；循环只在函数边界内识别，遇到无条件跳转时可能误判；扩展分析可能耗时大增并占用大量内存。","依 LICENSE 采用 MIT 许可。"],"targets":["binary"],"url":"https://github.com/ThunderCls/xAnalyzer","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Perfare/AssetStudio/blob/d158e864b556b5970709c2a52e47944d53aa98a2/LICENSE","https://github.com/Perfare/AssetStudio/releases/tag/v0.16.47"],"category":"game-analysis","description_en":"Tool for exploring, extracting and exporting the assets and asset bundles of Unity versions 3.4 to 2022.1. It converts Texture2D and Sprite images to PNG, TGA, JPEG or BMP and AudioClip to MP3, OGG, WAV, M4A or FSB, with FSB-to-WAV conversion, and exports fonts, meshes as OBJ, text assets, shaders, movie and video clips and MonoBehaviour data as JSON; models export from the scene hierarchy, and Animators export to FBX with their bound AnimationClips. MonoBehaviour export asks for the folder holding the assemblies, such as Managed, or, for IL2CPP builds, the dummy DLLs that Il2CppDumper generates.","description_zh":"用于浏览、提取和导出 Unity 3.4 至 2022.1 版本资源与资源包（asset bundle）的工具。它可把 Texture2D 和 Sprite 图像转换为 PNG、TGA、JPEG 或 BMP，把 AudioClip 转换为 MP3、OGG、WAV、M4A 或 FSB（并支持将 FSB 转为 WAV），还能导出字体、OBJ 格式网格、文本资源、着色器、影片与视频片段，以及 JSON 格式的 MonoBehaviour 数据；模型可从场景层级中导出，Animator 可连同绑定的 AnimationClip 导出为 FBX。导出 MonoBehaviour 时需要指定程序集所在目录（如 Managed 文件夹），IL2CPP 构建则需改选 Il2CppDumper 生成的 dummy DLL 目录。","entry_url":"https://awesomerea.org/resources/assetstudio/","entry_url_zh":"https://awesomerea.org/zh/resources/assetstudio/","evidence_url":"https://github.com/Perfare/AssetStudio/blob/d158e864b556b5970709c2a52e47944d53aa98a2/README.md","group":"tools","id":"assetstudio","json_url":"https://awesomerea.org/resources/assetstudio/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/assetstudio/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/assetstudio/index.md","name":"AssetStudio","name_zh":"AssetStudio Unity 资源浏览与导出工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Builds target .NET Framework 4.7.2, .NET Desktop Runtime 5.0 or .NET Desktop Runtime 6.0. Building needs Visual Studio 2022 or newer, and the native FBX exporter needs Autodesk's FBX SDK 2020.2.1. The latest release is v0.16.47 (2022-06-16), and the repository is archived on GitHub.","Loading asset bundles decompresses and reads them in memory, which can use a large amount of memory; the README suggests extracting them to a folder first and reading them from there.","The README states that neither the repository, the tool nor its owner is affiliated with, sponsored or authorized by Unity Technologies. MIT per LICENSE; the bundled texture decoders come from separately licensed open-source projects."],"requirements_zh":["构建版本分别面向 .NET Framework 4.7.2、.NET Desktop Runtime 5.0 和 .NET Desktop Runtime 6.0。从源码构建需要 Visual Studio 2022 或更新版本，原生 FBX 导出组件还需要 Autodesk FBX SDK 2020.2.1。最新发布版本为 v0.16.47（2022-06-16），仓库已在 GitHub 上归档。","加载资源包时会在内存中解压并读取，可能占用大量内存；README 建议先把资源包提取到文件夹，再从那里读取。","README 声明该仓库、工具及其所有者均与 Unity Technologies 无关联，也未获其赞助或授权。依 LICENSE 采用 MIT 许可；随附的纹理解码器来自各自另有许可的开源项目。"],"targets":["game"],"url":"https://github.com/Perfare/AssetStudio","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/snare/voltron/blob/be9e54b109380a21e4ec7ec9b3ecc9d4a7fd6529/install.sh","https://github.com/snare/voltron/blob/be9e54b109380a21e4ec7ec9b3ecc9d4a7fd6529/LICENSE","https://github.com/snare/voltron/releases/tag/v0.1.8"],"category":"dynamic-analysis","description_en":"Extensible Python debugger UI toolkit that attaches utility views to LLDB, GDB, VDB and WinDbg/CDB sessions. Each view retrieves data from the debugger host and can run in its own terminal, so users can assemble a custom debugger interface; built-in views cover registers, disassembly, stack, memory, breakpoints and backtrace, and any debugger command can be split off into a view highlighted with a chosen Pygments lexer. The views complement the debugger's command line rather than replace it.","description_zh":"可扩展的 Python 调试器界面工具包，能为 LLDB、GDB、VDB 和 WinDbg/CDB 会话附加实用视图。每个视图从调试器宿主获取数据，并可在单独的终端中运行，使用者可借此组合出自己的调试界面；内置视图涵盖寄存器、反汇编、栈、内存、断点和调用栈回溯，任意调试器命令都能拆分成独立视图，并用指定的 Pygments 词法分析器高亮显示。这些视图是对调试器命令行的补充，而不是替代。","entry_url":"https://awesomerea.org/resources/voltron/","entry_url_zh":"https://awesomerea.org/zh/resources/voltron/","evidence_url":"https://github.com/snare/voltron/blob/be9e54b109380a21e4ec7ec9b3ecc9d4a7fd6529/README.md","group":"tools","id":"voltron","json_url":"https://awesomerea.org/resources/voltron/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/voltron/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/voltron/index.md","name":"Voltron","name_zh":"Voltron 调试器界面扩展工具包","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","scope","license"],"requirements":["Runs on macOS, Linux and Windows; WinDbg/CDB support goes through PyKD and is described as fairly new. The install script fully supports only macOS and Debian derivatives, and the debugger's init file (.lldbinit or .gdbinit) loads Voltron's entry.py. Architecture support differs by debugger: x86 and x86_64 with all four, ARM except with WinDbg, ARM64 only with LLDB and PowerPC only with GDB.","The newest release is the v0.1.8 pre-release of 2025-01-30, following v0.1.7 from 2016; the reviewed master commit is from the same day as v0.1.8.","MIT per LICENSE."],"requirements_zh":["可在 macOS、Linux 和 Windows 上运行；WinDbg/CDB 支持通过 PyKD 实现，README 称这部分支持仍较新。安装脚本只完整支持 macOS 和 Debian 系发行版，调试器的初始化文件（.lldbinit 或 .gdbinit）需加载 Voltron 的 entry.py。各调试器支持的架构不同：x86 和 x86_64 四种调试器都支持，ARM 除 WinDbg 外都支持，ARM64 仅 LLDB 支持，PowerPC 仅 GDB 支持。","最新发布是 2025-01-30 的 v0.1.8 预发布版，上一个版本是 2016 年的 v0.1.7；所审阅的 master 分支提交与 v0.1.8 同一天。","依 LICENSE 采用 MIT 许可。"],"targets":["binary"],"url":"https://github.com/snare/voltron","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/lifting-bits/remill/blob/56918a8c2554088e93389e97d292f4035286506c/docs/LIFE_OF_AN_INSTRUCTION.md","https://github.com/lifting-bits/remill/blob/56918a8c2554088e93389e97d292f4035286506c/docs/DESIGN.md","https://github.com/lifting-bits/remill/blob/56918a8c2554088e93389e97d292f4035286506c/LICENSE","https://github.com/lifting-bits/remill/releases/tag/v6.0.1"],"category":"binary-libraries","description_en":"Static binary translation library that lifts AArch64, SPARC32, SPARC64, x86 and amd64 machine code, including AVX and AVX512, into LLVM bitcode, with AArch32 support underway. It focuses on lifting individual instructions accurately and is meant as a library for other tools such as McSema; its documentation walks through how an instruction is lifted, how instruction semantics are implemented and the overall design.","description_zh":"静态二进制翻译库，可把 AArch64、SPARC32、SPARC64、x86 和 amd64 机器码（包括 AVX 与 AVX512 指令）提升为 LLVM bitcode，AArch32 支持正在开发中。它专注于准确提升单条指令，定位是供 McSema 等其他工具调用的库；文档逐步介绍了一条指令如何被提升、如何实现指令语义以及整体设计。","entry_url":"https://awesomerea.org/resources/remill/","entry_url_zh":"https://awesomerea.org/zh/resources/remill/","evidence_url":"https://github.com/lifting-bits/remill/blob/56918a8c2554088e93389e97d292f4035286506c/README.md","group":"tools","id":"remill","json_url":"https://awesomerea.org/resources/remill/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/remill/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/remill/index.md","name":"Remill","name_zh":"Remill 机器码到 LLVM bitcode 提升库","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","license"],"requirements":["Supported on Linux and tested on Ubuntu 22.04; it also works on macOS, and Windows support is experimental. Building uses the superbuild in dependencies/ with CMake 3.21+, Ninja, LLVM and Clang 15+, Intel XED, Google Flags, Log and Test and Python 3, and Linux builds can also run in Docker. Release at review: v6.0.1, published 2026-04-21; the reviewed master commit dates from 2026-08-27.","Apache-2.0 per LICENSE."],"requirements_zh":["正式支持 Linux，并在 Ubuntu 22.04 上测试；也可在 macOS 上使用，Windows 支持仍属实验性质。构建使用 dependencies/ 中的 superbuild，需要 CMake 3.21+、Ninja、LLVM 与 Clang 15+、Intel XED、Google Flags/Log/Test 和 Python 3，Linux 版本也可在 Docker 中构建。审阅时的版本为 v6.0.1，于 2026-04-21 发布；所审阅的 master 分支提交日期为 2026-08-27。","依 LICENSE 采用 Apache-2.0 许可。"],"targets":["binary"],"url":"https://github.com/lifting-bits/remill","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/radareorg/iaito/blob/a043f93e727a76d12496858fafa782ec2da65145/COPYING","https://github.com/radareorg/iaito/releases/tag/6.2.2"],"category":"native-analysis","description_en":"Official Qt-based graphical interface for the radare2 reverse-engineering framework, aiming for parity with radare2's commands, features and keybindings so that existing r2 plugins and scripts keep working. Its README lists forensics, binary diffing and binary patching alongside disassembly; iaito was the original name before the project was forked as Cutter.","description_zh":"radare2 逆向工程框架的官方图形界面，基于 Qt 构建，力求在命令、功能和快捷键上与 radare2 保持一致，现有的 r2 插件和脚本都能继续使用。README 列出的功能除反汇编外，还包括取证分析、二进制对比和二进制修补；iaito 是该项目被分叉为 Cutter 之前的原名。","entry_url":"https://awesomerea.org/resources/iaito/","entry_url_zh":"https://awesomerea.org/zh/resources/iaito/","evidence_url":"https://github.com/radareorg/iaito/blob/a043f93e727a76d12496858fafa782ec2da65145/README.md","group":"tools","id":"iaito","json_url":"https://awesomerea.org/resources/iaito/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/iaito/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/iaito/index.md","name":"iaito","name_zh":"iaito radare2 官方图形界面","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","license"],"requirements":["Needs radare2 and Qt 5 or Qt 6. CI builds and releases cover Linux, macOS and Windows, Linux and WSL users can install it from Flathub (org.radare.iaito), and on macOS the app may need its signature fixed with xattr and codesign as the README shows. Release at review: 6.2.2, published 2026-09-06; the reviewed master commit dates from 2026-11-05.","GPL-3.0 per COPYING."],"requirements_zh":["需要 radare2 以及 Qt 5 或 Qt 6。CI 构建和发布版本涵盖 Linux、macOS 和 Windows，Linux 与 WSL 用户可从 Flathub 安装（org.radare.iaito）；在 macOS 上可能需要按 README 的说明用 xattr 和 codesign 修复应用签名。审阅时的版本为 6.2.2，于 2026-09-06 发布；所审阅的 master 分支提交日期为 2026-11-05。","依 COPYING 采用 GPL-3.0 许可。"],"targets":["binary"],"url":"https://github.com/radareorg/iaito","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/REhints/HexRaysCodeXplorer/tree/dc48267360ca06c494b234f30f6764499c27c1e9/src","https://github.com/REhints/HexRaysCodeXplorer/releases/tag/2.1"],"category":"native-analysis","description_en":"Hex-Rays decompiler plugin for navigating and reconstructing C++ code in IDA's pseudocode window. It reconstructs C++ object types from a selected pointer variable into IDA's local types, identifies virtual function tables and generates structures for them, lets the analyst click through virtual calls once objects are typed, visualizes a function's ctree as a graph, jumps from a pseudocode line to its disassembly and dumps ctrees and types to files. Its Object Explorer lists vtables with cross-references and RTTI parsing, and a batch mode processes many files without user interaction.","description_zh":"用于在 IDA 伪代码窗口中浏览和重建 C++ 代码的 Hex-Rays 反编译器插件。它能根据选中的指针变量重建 C++ 对象类型并存入 IDA 本地类型，识别虚函数表并为其生成结构体，在对象类型确定后可直接点击跳转到虚函数调用，以图形方式展示函数的 ctree，从伪代码行跳转到对应的反汇编，并把 ctree 和类型导出到文件。其 Object Explorer 可列出虚表及其交叉引用并解析 RTTI，批处理模式可在无人干预的情况下处理大量文件。","entry_url":"https://awesomerea.org/resources/hexrays-codexplorer/","entry_url_zh":"https://awesomerea.org/zh/resources/hexrays-codexplorer/","evidence_url":"https://github.com/REhints/HexRaysCodeXplorer/blob/dc48267360ca06c494b234f30f6764499c27c1e9/README.md","group":"tools","id":"hexrays-codexplorer","json_url":"https://awesomerea.org/resources/hexrays-codexplorer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/hexrays-codexplorer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hexrays-codexplorer/index.md","name":"HexRaysCodeXplorer","name_zh":"HexRaysCodeXplorer C++ 代码重建插件","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","license"],"requirements":["Written in C/C++ for x86/x64 IDA with the Hex-Rays decompiler on Windows, Linux and macOS; the README says only the latest IDA and decompiler versions are tested. The newest GitHub release is 2.1, the IDA 7 edition, from 2018-03-14; the reviewed master commit dates from 2025-11-25.","The repository has no license file and GitHub detects no license."],"requirements_zh":["以 C/C++ 编写，适用于 Windows、Linux 和 macOS 上带 Hex-Rays 反编译器的 x86/x64 IDA；README 说明只在最新版本的 IDA 和反编译器上测试。GitHub 上最新的发布是 2018-03-14 的 2.1 版（IDA 7 版本），所审阅的 master 分支提交日期为 2025-11-25。","仓库没有许可证文件，GitHub 也未识别出许可证。"],"targets":["binary"],"url":"https://github.com/REhints/HexRaysCodeXplorer","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/vgmstream/vgmstream/blob/6802153425adde134e49394fc653455166d7d2f2/doc/FORMATS.md","https://github.com/vgmstream/vgmstream/blob/6802153425adde134e49394fc653455166d7d2f2/doc/TXTH.md","https://github.com/vgmstream/vgmstream/blob/6802153425adde134e49394fc653455166d7d2f2/COPYING","https://github.com/vgmstream/vgmstream/releases/tag/r2168"],"category":"game-analysis","description_en":"Library and tools that decode streamed, prerecorded video game audio in hundreds of formats and codecs, from common game engine files to single-game codecs, including looped music, subsongs, companion files, custom containers and encryption keys. TXTH text descriptors add support for further formats, including raw audio, and TXTP files set per-file options such as forced looping or merging files. It ships as the vgmstream-cli decoder, which converts supported files to WAV, the vgmstream123 player and plugins for Winamp, foobar2000, XMPlay and Audacious, and an online web player is available at vgmstream.org.","description_zh":"用于解码电子游戏中流式预录音频的库与工具，支持数百种格式和编解码器，从常见的游戏引擎文件到单款游戏专用的编解码器，并能处理循环音乐、子曲目、配套文件、自定义容器和加密密钥。借助 TXTH 文本描述文件可为更多格式（包括原始音频）添加支持，TXTP 文件则可为单个文件设置强制循环、合并多个文件等选项。它提供 vgmstream-cli 解码器（可把受支持的文件转换为 WAV）、vgmstream123 播放器，以及 Winamp、foobar2000、XMPlay 和 Audacious 插件，vgmstream.org 上还有在线网页播放器。","entry_url":"https://awesomerea.org/resources/vgmstream/","entry_url_zh":"https://awesomerea.org/zh/resources/vgmstream/","evidence_url":"https://github.com/vgmstream/vgmstream/blob/6802153425adde134e49394fc653455166d7d2f2/README.md","group":"tools","id":"vgmstream","json_url":"https://awesomerea.org/resources/vgmstream/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/vgmstream/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/vgmstream/index.md","name":"vgmstream","name_zh":"vgmstream 游戏音频格式解码库","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","license"],"requirements":["Numbered releases are on GitHub and nightly builds on vgmstream.org; release at review: r2168, published 2026-10-25, and the reviewed master commit dates from 2026-11-05. Users supply the game audio files; doc/FORMATS.md lists the supported formats.","An ISC-style permissive license in COPYING, with portions under their own copyright notices."],"requirements_zh":["带编号的发布版本在 GitHub 上，每夜构建在 vgmstream.org 上；审阅时的版本为 r2168，于 2026-10-25 发布，所审阅的 master 分支提交日期为 2026-11-05。游戏音频文件由使用者自备；doc/FORMATS.md 列出了受支持的格式。","采用 COPYING 中的 ISC 式宽松许可，部分代码另附各自的版权声明。"],"targets":["game"],"url":"https://github.com/vgmstream/vgmstream","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/vm03/payload_dumper/blob/2f0a964b8b77c6244e3e12735f85539c938f9c97/payload_dumper.py","https://github.com/vm03/payload_dumper/blob/2f0a964b8b77c6244e3e12735f85539c938f9c97/requirements.txt"],"category":"firmware","description_en":"Python script that extracts the partition images, such as boot.img and system.img, from the payload.bin inside an Android OTA update package. It handles full OTAs directly and incremental OTAs with --diff by applying the update to original images that the user copies from a full OTA or dumps from the device, and it can also run from a Docker image.","description_zh":"从 Android OTA 更新包内的 payload.bin 中提取 boot.img、system.img 等分区镜像的 Python 脚本。完整 OTA 可直接提取；增量 OTA 则需加 --diff，并由使用者提供从完整 OTA 中取得或从设备上转储的原始镜像，脚本会在其基础上应用更新。它也可以通过 Docker 镜像运行。","entry_url":"https://awesomerea.org/resources/payload-dumper/","entry_url_zh":"https://awesomerea.org/zh/resources/payload-dumper/","evidence_url":"https://github.com/vm03/payload_dumper/blob/2f0a964b8b77c6244e3e12735f85539c938f9c97/README.md","group":"tools","id":"payload-dumper","json_url":"https://awesomerea.org/resources/payload-dumper/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/payload-dumper/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/payload-dumper/index.md","name":"payload dumper","name_zh":"payload dumper Android OTA 分区镜像提取工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","scope","license"],"requirements":["Python 3.6 or later with the protobuf package from requirements.txt; the user supplies the OTA package's payload.bin. The README says the script was tested on Yandex Amber OTAs, both full and incremental, under Linux and may also work on Windows.","The repository has no releases, and the reviewed master commit dates from 2025-04-18.","The repository has no license file and GitHub detects no license."],"requirements_zh":["需要 Python 3.6 或更高版本，以及 requirements.txt 中的 protobuf 包；OTA 更新包中的 payload.bin 由使用者自备。README 称该脚本已在 Linux 上用 Yandex Amber 的完整和增量 OTA 测试，在 Windows 上也可能可用。","仓库没有发布版本，所审阅的 master 分支提交日期为 2025-04-18。","仓库没有许可证文件，GitHub 也未识别出许可证。"],"targets":["firmware"],"url":"https://github.com/vm03/payload_dumper","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/hasherezade/malware_training_vol1/tree/acf72d45009140fed514c1dfa429122f01a2f6c0/exercises","https://github.com/hasherezade/malware_training_vol1/tree/acf72d45009140fed514c1dfa429122f01a2f6c0/slides"],"category":"learning","description_en":"Slides and exercises for a Windows malware analysis training that builds an understanding of common malware techniques through programming, reverse engineering and Windows internals, and shows how analysis tools are used for particular goals. Module 1 covers compilation, the PE format, processes, WoW64, shellcode and PE loaders; module 2 introduces malware missions and tactics, hooking, persistence and banking trojans; module 3 introduces evasion and self-defence and fingerprinting, with obfuscation, anti-hooking, deobfuscation and kernel-mode components planned.","description_zh":"一套 Windows 恶意软件分析培训的幻灯片与练习，通过编程、逆向工程和 Windows 内部机制帮助学员理解常见的恶意软件技术，并演示如何用各种分析工具达成特定分析目标。第 1 单元涵盖编译、PE 格式、进程、WoW64、shellcode 和 PE 加载器；第 2 单元介绍恶意软件的目标与战术、挂钩、持久化和银行木马；第 3 单元介绍规避与自我保护以及指纹识别，混淆、反挂钩、反混淆和内核态组件等内容尚在计划中。","entry_url":"https://awesomerea.org/resources/malware-training-vol1/","entry_url_zh":"https://awesomerea.org/zh/resources/malware-training-vol1/","evidence_url":"https://github.com/hasherezade/malware_training_vol1/blob/acf72d45009140fed514c1dfa429122f01a2f6c0/README.md","group":"learn","id":"malware-training-vol1","json_url":"https://awesomerea.org/resources/malware-training-vol1/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/malware-training-vol1/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/malware-training-vol1/index.md","name":"Windows Malware Analysis training, volume 1 (malware_training_vol1)","name_zh":"Windows 恶意软件分析培训第一卷（malware_training_vol1）","record_type":"resource","relationship":"learning","requirement_facets":["prerequisites","limits","license"],"requirements":["Aimed at people who already know the basics of programming and reverse engineering and want to enter Windows malware analysis. Slides are in slides/ and exercises in exercises/.","The README marks the material as a work in progress: several topics still lack slides or exercises. The reviewed main commit dates from 2024-07-01.","Published under the Creative Commons Attribution 4.0 license, per the README; the repository has no license file."],"requirements_zh":["面向已掌握编程和逆向工程基础、希望进入 Windows 恶意软件分析领域的读者。幻灯片位于 slides/，练习位于 exercises/。","README 标明这套材料仍在编写中：有几个主题尚无幻灯片或练习。所审阅的 main 分支提交日期为 2024-07-01。","据 README 采用知识共享署名 4.0（CC BY 4.0）许可；仓库中没有许可证文件。"],"targets":["binary"],"url":"https://github.com/hasherezade/malware_training_vol1","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/P4nda0s/IDA-NO-MCP/blob/2a48a91da706eb778761bfd47e5bb9dde8b651fb/README.md","https://github.com/P4nda0s/IDA-NO-MCP/tree/2a48a91da706eb778761bfd47e5bb9dde8b651fb"],"category":"agent-workflows","description_en":"IDA Pro exporter that turns an analyzed binary into plain files for AI coding tools such as Cursor or Claude Code instead of serving it over MCP. It writes each decompiled function as a .c file, or as .asm when decompilation fails, under a header listing its name, address, callers and callees, along with the string, import and export tables, 1 MB hexdump chunks of every segment and logs of fallbacks, failures and skipped library functions. It ships as an IDA plugin (Export for AI, Ctrl-Shift-E) for small and medium files and as a Rust command-line binary for large or batch exports, which can skip IDA's auto-analysis.","description_zh":"IDA Pro 导出工具，不走 MCP，而是把分析好的二进制导出为普通文件，交给 Cursor、Claude Code 等 AI 编程工具使用。它把每个反编译成功的函数写成一个 .c 文件（反编译失败时改为 .asm），文件头列出函数名、地址、调用者和被调用者；同时导出字符串表、导入表和导出表，按 1 MB 分块输出各段内存的十六进制转储，并记录回退、失败和被跳过的库函数。它提供两种形态：适合中小文件的 IDA 插件（Export for AI，快捷键 Ctrl-Shift-E），以及适合大文件或批量导出、可跳过 IDA 自动分析的 Rust 命令行程序。","entry_url":"https://awesomerea.org/resources/ida-no-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/ida-no-mcp/","evidence_url":"https://github.com/P4nda0s/IDA-NO-MCP/blob/2a48a91da706eb778761bfd47e5bb9dde8b651fb/README_EN.md","group":"agents","id":"ida-no-mcp","json_url":"https://awesomerea.org/resources/ida-no-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/ida-no-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ida-no-mcp/index.md","name":"IDA NO MCP","name_zh":"IDA NO MCP：面向 AI 编程工具的 IDA 反编译导出工具","record_type":"resource","relationship":"independent-agent-integration","requirement_facets":["prerequisites","limits","license"],"requirements":["The plugin, oldpython/INP.py, goes into IDA's plugins directory (%APPDATA%\\Hex-Rays\\IDA Pro\\plugins on Windows, .idapro/plugins under the home directory on Linux and macOS). The Rust binary needs a local IDA Pro 9.x, whose non-redistributable libida and libidalib libraries it links at run time, plus LLVM/Clang for bindgen; it must be built natively on each platform, with an idalib crate version that matches the IDA release, such as idalib 0.9.0 for IDA 9.3sp1.","The Chinese README says the in-IDA plugin can hang on files of 100 MB or more, which the standalone binary's --skip-analysis option avoids. The repository has no releases, and the reviewed main commit dates from 2026-07-26.","The repository has no license file and GitHub detects no license."],"requirements_zh":["插件 oldpython/INP.py 需放入 IDA 的插件目录（Windows 为 %APPDATA%\\Hex-Rays\\IDA Pro\\plugins，Linux 和 macOS 为主目录下的 .idapro/plugins）。Rust 版程序需要本机安装 IDA Pro 9.x，运行时链接其不可再分发的 libida 和 libidalib 库，并需要 LLVM/Clang 供 bindgen 使用；必须在各平台上原生构建，且 idalib crate 版本须与 IDA 版本匹配，例如 IDA 9.3sp1 对应 idalib 0.9.0。","中文 README 指出，IDA 内的插件处理 100 MB 以上的文件时可能卡死，独立程序的 --skip-analysis 选项可以避开这一问题。仓库没有发布版本，所审阅的 main 分支提交日期为 2026-07-26。","仓库没有许可证文件，GitHub 也未识别出许可证。"],"targets":["binary"],"url":"https://github.com/P4nda0s/IDA-NO-MCP","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/blacktop/ida-mcp-rs/blob/7a81b9a41d3c7d7b7c62547929b8c46f38a5c54a/LICENSE","https://github.com/blacktop/ida-mcp-rs/releases/tag/v9.5.0"],"category":"agent-mcp","description_en":"Headless MCP server written in Rust that drives IDA Pro through idalib, so agents such as Claude Code, Codex CLI, Gemini CLI or Cursor can open and analyze binaries without the IDA GUI. Apple targets are single tool calls, including universal Mach-O slice selection, dSYM/DWARF loading and dyld_shared_cache module loading; a 28-tool lean profile sits beside the full tool set, run_script executes IDAPython and returns JSON, and editing tools such as rename, comments, patches and type application each take exactly one address or exact symbol name. save_idb writes checkpoints, and crashed or wedged IDA workers are replaced automatically.","description_zh":"用 Rust 编写的无界面 MCP 服务器，通过 idalib 驱动 IDA Pro，让 Claude Code、Codex CLI、Gemini CLI、Cursor 等智能体无需 IDA 图形界面即可打开和分析二进制文件。针对 Apple 目标的操作只需一次工具调用，包括选择通用 Mach-O 中的架构切片、加载 dSYM/DWARF 以及从 dyld_shared_cache 加载模块；除完整工具集外还提供 28 个工具的精简配置，run_script 可执行 IDAPython 并以 JSON 返回结果；重命名、注释、补丁和类型应用等修改类工具每次只接受一个地址或精确的符号名。save_idb 可写入检查点，崩溃或卡死的 IDA 工作进程会被自动替换。","entry_url":"https://awesomerea.org/resources/ida-mcp-rs/","entry_url_zh":"https://awesomerea.org/zh/resources/ida-mcp-rs/","evidence_url":"https://github.com/blacktop/ida-mcp-rs/blob/7a81b9a41d3c7d7b7c62547929b8c46f38a5c54a/README.md","group":"agents","id":"ida-mcp-rs","json_url":"https://awesomerea.org/resources/ida-mcp-rs/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/ida-mcp-rs/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ida-mcp-rs/index.md","name":"ida-mcp-rs","name_zh":"ida-mcp-rs 无界面 IDA Pro MCP 服务器","record_type":"resource","relationship":"independent-agent-integration","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["Needs a released IDA Pro 9.5 with a valid license on the same host architecture, a Hex-Rays decompiler for the target processor for pseudocode tools and working IDAPython for run_script; IDA's first-launch setup, including license acceptance, must be completed by the user. Server versions follow IDA versions (v9.5.x for IDA 9.5, with Homebrew casks for 9.2 to 9.4), and the IDA 9.5 beta runtime is not compatible with the stable server.","Installs through Homebrew, Scoop, Nix or release archives for macOS, Linux and Windows on ARM64 and x86_64; the binary loads IDA's libida and libidalib at run time from standard install paths or IDADIR and library-path variables. Release at review: v9.5.0, published 2026-11-01 and validated with IDA 9.5.261026 on macOS, Linux and Windows ARM64.","MIT per LICENSE."],"requirements_zh":["需要已正式发布、带有效许可证且与宿主架构相同的 IDA Pro 9.5；使用伪代码工具需有对应目标处理器的 Hex-Rays 反编译器，使用 run_script 需 IDAPython 可正常工作；还须由用户自行完成 IDA 的首次启动设置（包括阅读并接受许可协议）。服务器版本与 IDA 版本对应（IDA 9.5 用 v9.5.x，9.2 至 9.4 另有 Homebrew 版本），IDA 9.5 测试版运行时与正式版服务器不兼容。","可通过 Homebrew、Scoop、Nix 或发布页压缩包安装，提供 macOS、Linux 和 Windows 的 ARM64 与 x86_64 版本；程序在运行时从 IDA 标准安装路径，或通过 IDADIR 及库路径环境变量加载 libida 和 libidalib。审阅时的版本为 v9.5.0，于 2026-11-01 发布，已在 macOS、Linux 和 Windows 的 ARM64 平台上用 IDA 9.5.261026 验证。","依 LICENSE 采用 MIT 许可。"],"targets":["binary"],"url":"https://github.com/blacktop/ida-mcp-rs","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/MeroZemory/ida-multi-mcp/blob/8ff883109fc3ce614d1e59718a53b02a0634c542/pyproject.toml","https://github.com/MeroZemory/ida-multi-mcp/blob/8ff883109fc3ce614d1e59718a53b02a0634c542/docs/installation.md"],"category":"agent-mcp","description_en":"MCP server that lets an agent analyze several IDA Pro databases at once through one endpoint. Each database with its plugin registers itself when opened and headless idalib sessions can be added, and a router exposes up to 76 tools for triage, decompilation and disassembly, cross-references and call graphs, search, types, renaming, comments and patching, plus analysis-wait gating so agents can wait for IDA's auto-analysis to settle; its IDA tool implementations come from the ida-pro-mcp project. Function-similarity search compares functions within or across binaries using name-independent instruction MinHash, API, string and constant anchors and control-flow shape, with optional local neural recall, and nothing is uploaded.","description_zh":"让智能体通过同一个端点同时分析多个 IDA Pro 数据库的 MCP 服务器。装有其插件的数据库在打开时会自动注册，也可加入无界面的 idalib 会话；路由器最多提供 76 个工具，涵盖初步分析、反编译与反汇编、交叉引用与调用图、搜索、类型、重命名、注释和补丁，并提供等待自动分析完成的机制，让智能体在 IDA 分析稳定后再下结论；其 IDA 工具实现来自 ida-pro-mcp 项目。函数相似度搜索可在单个二进制内或跨二进制比较函数，依据不依赖函数名的指令 MinHash、API/字符串/常量锚点和控制流结构，并可选用本地神经网络召回，不会上传任何数据。","entry_url":"https://awesomerea.org/resources/ida-multi-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/ida-multi-mcp/","evidence_url":"https://github.com/MeroZemory/ida-multi-mcp/blob/8ff883109fc3ce614d1e59718a53b02a0634c542/README.md","group":"agents","id":"ida-multi-mcp","json_url":"https://awesomerea.org/resources/ida-multi-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/ida-multi-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ida-multi-mcp/index.md","name":"ida-multi-mcp","name_zh":"ida-multi-mcp 多实例 IDA Pro MCP 服务器","record_type":"resource","relationship":"independent-agent-integration","requirement_facets":["prerequisites","limits","license"],"requirements":["Needs Python 3.11 or later and IDA Pro 8.5 or later (9.1 or later recommended); IDA 9.0 SP0 (build 240925) is not supported. The package must be installed for both the terminal's Python and IDA's Python, and headless idalib sessions need IDA Pro, because IDA Home and IDA Free do not ship idalib. The repository has no releases; pyproject.toml declares version 0.1.0, and the reviewed main commit dates from 2026-09-19.","The README lists limits: the router binds to localhost only and speaks only stdio, calls to the same IDA instance still run one at a time, cancellation is not forwarded to IDA, and resources need manual routing. Renames, retypes and comments stay in memory until idb_save is called. The optional neural recall downloads its model on demand.","MIT per the README and pyproject.toml; the repository has no LICENSE file."],"requirements_zh":["需要 Python 3.11 或更高版本，以及 IDA Pro 8.5 或更高版本（推荐 9.1 及以上）；不支持 IDA 9.0 SP0（构建号 240925）。软件包须同时安装到终端所用的 Python 和 IDA 自带的 Python 中；无界面的 idalib 会话需要 IDA Pro，因为 IDA Home 和 IDA Free 不含 idalib。仓库没有发布版本，pyproject.toml 标注的版本为 0.1.0，所审阅的 main 分支提交日期为 2026-09-19。","README 列出的局限：路由器只绑定本机回环地址、只支持 stdio 传输，对同一个 IDA 实例的调用仍须排队执行，取消请求不会转发给 IDA，资源（resources）需手动路由。重命名、修改类型和注释在调用 idb_save 之前只保存在内存中。可选的神经网络召回功能会按需下载模型。","依 README 和 pyproject.toml 采用 MIT 许可；仓库中没有 LICENSE 文件。"],"targets":["binary"],"url":"https://github.com/MeroZemory/ida-multi-mcp","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Wasdubya/x64dbgMCP/tree/e7474e57d34aacf533d29e5778361637afef936a/src","https://github.com/Wasdubya/x64dbgMCP/blob/e7474e57d34aacf533d29e5778361637afef936a/LICENSE.txt","https://github.com/Wasdubya/x64dbgMCP/releases/tag/build1.1"],"category":"agent-mcp","description_en":"MCP server that connects LLM clients to the x64dbg and x32dbg debuggers through a native plugin and a Python MCP script. It exposes more than 40 tools built on the x64dbg SDK and was tested with Claude and Cursor; agents can query registers, search byte patterns in a module and drive debugging sessions. The README advises giving the model the executable's full path so it can restart a crashed or hung target through the command-execution tool, and starting from GetModuleBase so that queries use valid addresses.","description_zh":"通过原生插件和 Python MCP 脚本把 LLM 客户端连接到 x64dbg 与 x32dbg 调试器的 MCP 服务器。它提供 40 多个基于 x64dbg SDK 的工具，已用 Claude 和 Cursor 测试；智能体可以查询寄存器、在模块中搜索字节模式并控制调试会话。README 建议把可执行文件的完整路径告诉模型，以便它在目标崩溃或卡住时通过命令执行工具重新启动，并建议从 GetModuleBase 开始，以确保查询使用有效地址。","entry_url":"https://awesomerea.org/resources/x64dbgmcp/","entry_url_zh":"https://awesomerea.org/zh/resources/x64dbgmcp/","evidence_url":"https://github.com/Wasdubya/x64dbgMCP/blob/e7474e57d34aacf533d29e5778361637afef936a/README.md","group":"agents","id":"x64dbgmcp","json_url":"https://awesomerea.org/resources/x64dbgmcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/x64dbgmcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/x64dbgmcp/index.md","name":"x64dbg MCP (x64dbgMCP)","name_zh":"x64dbg MCP（x64dbgMCP）调试器 MCP 服务器","record_type":"resource","relationship":"independent-agent-integration","requirement_facets":["prerequisites","license"],"requirements":["Needs x64dbg: copy the .dp64 or .dp32 plugin into x64dbg's plugins folder, then register src/x64dbgmcp.py, which needs pip install mcp requests, as the MCP server in the client configuration. Building the plugins needs CMake and MSVC. Release at review: build1.1 (2026-03-15); the README recommends building from source for the latest features, and the reviewed main commit dates from 2026-06-05.","GPL-3.0 per LICENSE.txt."],"requirements_zh":["需要 x64dbg：把 .dp64 或 .dp32 插件复制到 x64dbg 的插件目录，再在客户端配置中把 src/x64dbgmcp.py 注册为 MCP 服务器（需先 pip install mcp requests）。编译插件需要 CMake 和 MSVC。审阅时的版本为 build1.1（2026-03-15）；README 建议从源码构建以获得最新功能，所审阅的 main 分支提交日期为 2026-06-05。","依 LICENSE.txt 采用 GPL-3.0 许可。"],"targets":["binary"],"url":"https://github.com/Wasdubya/x64dbgMCP","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/allthingsida/idasql/blob/6212ece62569bcb88d9c28544e4ef71a64ed2d53/LICENSE","https://github.com/allthingsida/idasql/releases/tag/v0.0.19"],"category":"agent-workflows","description_en":"SQL interface to IDA Pro databases that exposes a binary's analysis as more than 30 live virtual tables for agents and scripts. The tables cover functions, segments, names, imports, cross-references, basic blocks, instructions, strings, types, decompilation and annotations, and part of the database can be edited through them. It runs as a standalone CLI that can open raw binaries through idalib, as a plugin in IDA's command-line dropdown, as an HTTP REST or MCP server, or through a skills plugin for Claude Code, GitHub Copilot CLI and Codex, and it can work across several databases at once.","description_zh":"IDA Pro 数据库的 SQL 接口，把二进制的分析结果以 30 多张实时虚拟表的形式提供给智能体和脚本。这些表涵盖函数、段、名称、导入、交叉引用、基本块、指令、字符串、类型、反编译结果和注释，部分数据库内容也可通过它们修改。它可作为独立命令行程序运行（可借助 idalib 打开原始二进制文件），也可作为 IDA 命令行下拉菜单中的插件、HTTP REST 服务器或 MCP 服务器使用，还能通过面向 Claude Code、GitHub Copilot CLI 和 Codex 的技能插件使用，并支持同时处理多个数据库。","entry_url":"https://awesomerea.org/resources/idasql/","entry_url_zh":"https://awesomerea.org/zh/resources/idasql/","evidence_url":"https://github.com/allthingsida/idasql/blob/6212ece62569bcb88d9c28544e4ef71a64ed2d53/README.md","group":"agents","id":"idasql","json_url":"https://awesomerea.org/resources/idasql/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/idasql/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/idasql/index.md","name":"IDASQL","name_zh":"IDASQL IDA Pro 数据库 SQL 接口","record_type":"resource","relationship":"independent-agent-integration","requirement_facets":["prerequisites","scope","license"],"requirements":["Needs IDA Pro with its directory on PATH and the idasql release artifact built for the installed IDA version (ida92, ida93 or ida94); plugin binaries are SDK-version-specific. The HCLI-compatible plugin archive covers Windows x86-64, Linux x86-64 and macOS ARM64, with separate ARM64 archives for IDA 9.3 and 9.4. Building from source needs IDA SDK 9.0 or later. Release at review: v0.0.19, published 2026-10-10.","The MCP server serves SSE on a local port and is compiled in by default (-DIDASQL_WITH_MCP=ON); the agent skills live in the separate idasql-skills repository. Deep-link features need IDA 9.4.","Licensed under the Human-Origin Source License v1.0, a source-available license derived in structure from MPL 2.0 that is not OSI-approved: it allows using, building and redistributing unmodified copies, including commercially, but forbids shipping modified versions outside upstream contributions and using the code as an implementation source without the author's written permission."],"requirements_zh":["需要安装 IDA Pro 并把其目录加入 PATH，还需下载与所装 IDA 版本对应的 idasql 发布包（ida92、ida93 或 ida94）；插件二进制与 SDK 版本绑定。兼容 HCLI 的插件压缩包涵盖 Windows x86-64、Linux x86-64 和 macOS ARM64，IDA 9.3 和 9.4 另有单独的 ARM64 压缩包。从源码构建需要 IDA SDK 9.0 或更高版本。审阅时的版本为 v0.0.19，于 2026-10-10 发布。","MCP 服务器在本机端口上提供 SSE 服务，默认编译进程序（-DIDASQL_WITH_MCP=ON）；智能体技能位于单独的 idasql-skills 仓库。深度链接功能需要 IDA 9.4。","采用 Human-Origin Source License v1.0：这是一种结构上参照 MPL 2.0、但未经 OSI 认可的源码可见许可，允许使用、构建和再分发未修改的副本（包括商业用途），但未经作者书面许可，不得在向上游贡献之外发布修改版，也不得把代码用作实现参考来源。"],"targets":["binary"],"url":"https://github.com/allthingsida/idasql","verification":"source-reviewed","verified_at":"2026-11-05"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/deathmarine/Luyten/blob/64af8d1df1d2cab029779142726fbcd8bc482956/license.txt"],"category":"jvm","description_en":"Graphical Java decompiler front end for the Procyon decompiler, with its editor view powered by RSyntaxTextArea.","description_zh":"Procyon 反编译器的图形界面前端，编辑视图由 RSyntaxTextArea 驱动。","entry_url":"https://awesomerea.org/resources/luyten/","entry_url_zh":"https://awesomerea.org/zh/resources/luyten/","evidence_url":"https://github.com/deathmarine/Luyten/blob/64af8d1df1d2cab029779142726fbcd8bc482956/ReadMe.md","group":"tools","id":"luyten","json_url":"https://awesomerea.org/resources/luyten/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/luyten/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/luyten/index.md","name":"Luyten","name_zh":"Luyten Java 反编译器图形界面","record_type":"resource","relationship":"foundation","requirements":["Prebuilt downloads are on the Releases page; building from source uses Maven 3. The newest release was published on 2019-06-06.","Apache-2.0 per license.txt."],"requirements_zh":["可从 Releases 页面下载预编译版本；从源码构建使用 Maven 3。最新发布日期为 2019-06-06。","依 license.txt 采用 Apache-2.0 许可。"],"targets":["binary"],"url":"https://github.com/deathmarine/Luyten","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dynamic-analysis","description_en":"Standalone .gdbinit file written with GDB's Python API that shows a modular status interface each time the debugged program stops, reducing the commands needed to inspect its state. No GDB command is redefined; its features sit under a single dashboard command.","description_zh":"用 GDB Python API 编写的独立 .gdbinit 文件，被调试程序每次停下时显示模块化的状态界面，减少查看程序状态所需的命令。它不重定义任何 GDB 命令，所有功能都集中在 dashboard 命令之下。","entry_url":"https://awesomerea.org/resources/gdb-dashboard/","entry_url_zh":"https://awesomerea.org/zh/resources/gdb-dashboard/","evidence_url":"https://github.com/cyrus-and/gdb-dashboard/blob/7b9b1260a8b3e9dd57b6cbf302bdfba71cec4014/README.md","group":"tools","id":"gdb-dashboard","json_url":"https://awesomerea.org/resources/gdb-dashboard/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/gdb-dashboard/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/gdb-dashboard/index.md","name":"GDB dashboard","name_zh":"GDB dashboard 调试状态界面","record_type":"resource","relationship":"foundation","requirements":["Needs GDB with Python API support; the single .gdbinit file goes in the home directory, and Pygments is optional for syntax highlighting.","MIT per LICENSE."],"requirements_zh":["需要支持 Python API 的 GDB；把这个 .gdbinit 文件放到主目录即可，语法高亮可选装 Pygments。","依 LICENSE 采用 MIT 许可。"],"targets":["binary"],"url":"https://github.com/cyrus-and/gdb-dashboard","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"Cross-platform hex editor for reverse engineering that handles files over 1 TB. It adds inline disassembly, integer and floating-point decoding, byte-range annotations, side-by-side comparison, virtual address mapping and bitmap visualisation, with Binary Templates that annotate data automatically and Lua scripting.","description_zh":"面向逆向工程的跨平台十六进制编辑器，可处理超过 1 TB 的文件。它提供内联反汇编、整数与浮点数解码、字节范围标注、并排比较、虚拟地址映射和位图可视化，还支持自动标注数据的 Binary Templates 和 Lua 脚本。","entry_url":"https://awesomerea.org/resources/rehex/","entry_url_zh":"https://awesomerea.org/zh/resources/rehex/","evidence_url":"https://github.com/solemnwarning/rehex/blob/1e4fcd437700083cf36e5cbfe20da13577ab5fef/README.md","group":"tools","id":"rehex","json_url":"https://awesomerea.org/resources/rehex/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/rehex/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rehex/index.md","name":"REHex","name_zh":"REHex 逆向工程十六进制编辑器","record_type":"resource","relationship":"foundation","requirements":["Runs on Windows, Linux, macOS and BSD. Releases provide standalone Windows and macOS packages and Linux packages; 0.64.0 was published on 2026-04-04.","GPL-2.0 per LICENSE.txt."],"requirements_zh":["可在 Windows、Linux、macOS 和 BSD 上运行。Releases 提供 Windows 和 macOS 独立安装包及 Linux 软件包；0.64.0 版发布于 2026-04-04。","依 LICENSE.txt 采用 GPL-2.0 许可。"],"targets":["binary"],"url":"https://github.com/solemnwarning/rehex","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dynamic-analysis","description_en":"Lightweight, modular hook framework for Windows, macOS, iOS, Android and Linux on x86, x86-64, ARM and ARM64.","description_zh":"轻量的模块化钩子框架，支持 Windows、macOS、iOS、Android 和 Linux，覆盖 x86、x86-64、ARM 和 ARM64 架构。","entry_url":"https://awesomerea.org/resources/dobby/","entry_url_zh":"https://awesomerea.org/zh/resources/dobby/","evidence_url":"https://github.com/jmpews/Dobby/blob/5dfc8546954ce3b3198132ab13fddb89ee92cdd7/README.md","group":"tools","id":"dobby","json_url":"https://awesomerea.org/resources/dobby/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dobby/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dobby/index.md","name":"Dobby","name_zh":"Dobby 跨平台钩子框架","record_type":"resource","relationship":"foundation","requirements":["Compiled from source as described in docs/compile.md, or downloaded as a prebuilt library from the release tagged latest, dated 2024-03-14.","Apache-2.0 per LICENSE."],"requirements_zh":["按 docs/compile.md 从源码编译，或从标记为 latest、日期为 2024-03-14 的发布下载预编译库。","依 LICENSE 采用 Apache-2.0 许可。"],"targets":["binary"],"url":"https://github.com/jmpews/Dobby","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"Command-line tool and Python library that extracts and decodes obfuscated Excel 4.0 (XLM) macros from xls, xlsm and xlsb files. An internal XLM emulator interprets the macros without fully performing the code, and results can be exported as JSON.","description_zh":"用于从 xls、xlsm 和 xlsb 文件中提取并解码混淆 Excel 4.0（XLM）宏的命令行工具和 Python 库。内置的 XLM 模拟器解释宏，但不完整执行其代码，结果可导出为 JSON。","entry_url":"https://awesomerea.org/resources/xlmmacrodeobfuscator/","entry_url_zh":"https://awesomerea.org/zh/resources/xlmmacrodeobfuscator/","evidence_url":"https://github.com/DissectMalware/XLMMacroDeobfuscator/blob/43114164d89b8b3b426144f1fdfeb2ca75d28b92/README.md","group":"tools","id":"xlmmacrodeobfuscator","json_url":"https://awesomerea.org/resources/xlmmacrodeobfuscator/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/xlmmacrodeobfuscator/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/xlmmacrodeobfuscator/index.md","name":"XLMMacroDeobfuscator","name_zh":"XLMMacroDeobfuscator Excel 4.0 宏解码工具","record_type":"resource","relationship":"foundation","requirements":["Installed with pip. Loading xls files through Microsoft Excel requires Windows, pywin32 and the --with-ms-excel switch; otherwise the xlrd2 library reads them. The newest release is v0.2.7 from 2022-09-21.","Apache-2.0 per LICENSE."],"requirements_zh":["通过 pip 安装。借助 Microsoft Excel 加载 xls 文件需要 Windows、pywin32 和 --with-ms-excel 开关，否则由 xlrd2 库读取。最新发布是 2022-09-21 的 v0.2.7。","依 LICENSE 采用 Apache-2.0 许可。"],"targets":["binary"],"url":"https://github.com/DissectMalware/XLMMacroDeobfuscator","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"Python module that shows Portable Executable files in a tree view using pefile and PyQt5, as a standalone application and as a plugin for IDA Pro, Ghidra, Volatility, Rekall and minidump. It reads PE images from files, ZIP archives, Windows memory dumps and analysis databases.","description_zh":"基于 pefile 和 PyQt5、以树状视图展示 PE 文件的 Python 模块，既可作为独立应用，也可作为 IDA Pro、Ghidra、Volatility、Rekall 和 minidump 的插件使用。它能从文件、ZIP 压缩包、Windows 内存转储和分析数据库中读取 PE 映像。","entry_url":"https://awesomerea.org/resources/pe-tree/","entry_url_zh":"https://awesomerea.org/zh/resources/pe-tree/","evidence_url":"https://github.com/blackberry/pe_tree/blob/2be607fc55702293cd02cbc6cda5283452464aff/README.md","group":"tools","id":"pe-tree","json_url":"https://awesomerea.org/resources/pe-tree/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pe-tree/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pe-tree/index.md","name":"PE Tree","name_zh":"PE Tree 可执行文件树状查看器","record_type":"resource","relationship":"foundation","requirements":["The standalone application needs Python 3.5+ and runs on Windows, Linux and macOS; each plugin needs its host tool. The repository is archived, with the last release 1.0.29 from 2020-10-05.","Apache-2.0 per LICENSE."],"requirements_zh":["独立应用需要 Python 3.5+，可在 Windows、Linux 和 macOS 上运行；各插件需要相应的宿主工具。仓库已归档，最后发布是 2020-10-05 的 1.0.29。","依 LICENSE 采用 Apache-2.0 许可。"],"targets":["binary"],"url":"https://github.com/blackberry/pe_tree","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"Open-source Windows tool that explores and decompiles the RPC functionality present on a Microsoft system. New rpcrt4.dll runtime versions are added by extending its version table or by reversing the runtime's internal structures.","description_zh":"开源 Windows 工具，用于查看并反编译 Microsoft 系统上存在的 RPC 功能。若要支持新的 rpcrt4.dll 运行时版本，可扩充其版本表，或逆向该运行时的内部结构。","entry_url":"https://awesomerea.org/resources/rpcview/","entry_url_zh":"https://awesomerea.org/zh/resources/rpcview/","evidence_url":"https://github.com/silverf0x/RpcView/blob/14d5e1a3b6cc02196dabdcf668ea341129b36be0/README.md","group":"tools","id":"rpcview","json_url":"https://awesomerea.org/resources/rpcview/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/rpcview/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rpcview/index.md","name":"RpcView","name_zh":"RpcView Windows RPC 查看与反编译工具","record_type":"resource","relationship":"foundation","requirements":["Needs the Microsoft Visual C++ 2019 Redistributable; building takes Visual Studio, CMake and Qt5. The README lists runtime support for Windows XP, 7, 8, 8.1 and 10.","GPL-3.0 per LICENSE."],"requirements_zh":["需要 Microsoft Visual C++ 2019 Redistributable；构建需要 Visual Studio、CMake 和 Qt5。README 列出的运行时支持范围是 Windows XP、7、8、8.1 和 10。","依 LICENSE 采用 GPL-3.0 许可。"],"targets":["binary"],"url":"https://github.com/silverf0x/RpcView","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"jvm","description_en":"Command-line wrapper around a jd-core fork that decompiles Java class and JAR files to the console, a directory or a ZIP file, with options for line numbers, file-matching patterns and parallel processing. It also ships as a Docker image and as a Java library.","description_zh":"基于 jd-core 分支的命令行封装，可把 Java 类和 JAR 文件反编译到控制台、目录或 ZIP 文件，并提供行号、文件匹配模式和并行处理等选项。它还提供 Docker 镜像和 Java 库。","entry_url":"https://awesomerea.org/resources/jd-cli/","entry_url_zh":"https://awesomerea.org/zh/resources/jd-cli/","evidence_url":"https://github.com/intoolswetrust/jd-cli/blob/923d00231206a36927d413621b77f984e7293b0a/README.md","group":"tools","id":"jd-cli","json_url":"https://awesomerea.org/resources/jd-cli/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/jd-cli/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/jd-cli/index.md","name":"jd-cli","name_zh":"jd-cli 命令行 Java 反编译器","record_type":"resource","relationship":"foundation","requirements":["Versions 1.3.0 and later need Java 17+, older ones Java 8+. The newest release is 1.3.0-beta-1 from 2025-10-30.","GPL-3.0 per LICENSE.txt."],"requirements_zh":["1.3.0 及以后版本需要 Java 17+，更早的版本需要 Java 8+。最新发布是 2025-10-30 的 1.3.0-beta-1。","依 LICENSE.txt 采用 GPL-3.0 许可。"],"targets":["binary"],"url":"https://github.com/intoolswetrust/jd-cli","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"binary-libraries","description_en":"Python package for symbolic analysis of binaries. It combines an instruction-decoding framework for adding architectures, a symbolic algebra module that describes instruction semantics, an abstract memory and execution model, and disassembly techniques from linear sweep and recursive traversal to solver-based path-predicate exploration.","description_zh":"用于二进制符号分析的 Python 软件包。它包含便于添加新架构的指令解码框架、描述指令语义的符号代数模块、抽象内存与执行模型，以及从线性扫描、递归遍历到基于求解器的路径谓词探索等反汇编技术。","entry_url":"https://awesomerea.org/resources/amoco/","entry_url_zh":"https://awesomerea.org/zh/resources/amoco/","evidence_url":"https://github.com/bdcht/amoco/blob/3e36c5247283a7abba57ce3c06910a7271ab1b9a/README.rst","group":"tools","id":"amoco","json_url":"https://awesomerea.org/resources/amoco/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/amoco/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/amoco/index.md","name":"amoco","name_zh":"amoco 二进制符号分析软件包","record_type":"resource","relationship":"foundation","requirements":["The README marks version 2.9 as under development: x86 FPU semantics and ARM SIMD, VFP, NEON, TrustZone and Jazelle instruction sets are not implemented, some solver-based disassembly strategies are unmerged, and IDB import and export are missing.","GPL-2.0 per LICENSE."],"requirements_zh":["README 将 2.9 版标为开发中：x86 FPU 语义及 ARM SIMD、VFP、NEON、TrustZone、Jazelle 指令集尚未实现，部分基于求解器的反汇编策略尚未合入，也没有 IDB 导入导出功能。","依 LICENSE 采用 GPL-2.0 许可。"],"targets":["binary"],"url":"https://github.com/bdcht/amoco","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dynamic-analysis","description_en":"Collection of LLDB commands for debugging iOS apps. Commands print view and view-controller hierarchies, find views by class-name regex, show or hide views without resuming the process, mask or border views, set symbolic breakpoints on a class's method and watchpoints on instance variables, and can be extended with custom commands.","description_zh":"用于调试 iOS 应用的 LLDB 命令集。这些命令可打印视图和视图控制器层级，按类名正则查找视图，无需继续运行进程即可显示或隐藏视图，可遮罩视图或为其加边框，还能为类方法设置符号断点、为实例变量设置观察点，并支持自定义命令。","entry_url":"https://awesomerea.org/resources/chisel-lldb/","entry_url_zh":"https://awesomerea.org/zh/resources/chisel-lldb/","evidence_url":"https://github.com/meta/chisel/blob/b28507a68daa10ebad609de278efe43589372649/README.md","group":"tools","id":"chisel-lldb","json_url":"https://awesomerea.org/resources/chisel-lldb/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/chisel-lldb/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/chisel-lldb/index.md","name":"Chisel","name_zh":"Chisel iOS LLDB 调试命令集","record_type":"resource","relationship":"foundation","requirements":["Installed with Homebrew or by download, then imported from the .lldbinit file in the home directory. Command support differs between iOS and macOS, as the README's command table marks. The newest tagged release is 2.0.1 from 2020-08-17.","MIT per LICENSE."],"requirements_zh":["通过 Homebrew 或下载安装，再从主目录下的 .lldbinit 文件导入。各命令对 iOS 和 macOS 的支持不同，README 的命令表有标注。最新标记版本是 2020-08-17 的 2.0.1。","依 LICENSE 采用 MIT 许可。"],"targets":["app"],"url":"https://github.com/meta/chisel","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dynamic-analysis","description_en":"Browser-based frontend to the GNU debugger, gdb.","description_zh":"GNU 调试器 gdb 的浏览器前端。","entry_url":"https://awesomerea.org/resources/gdbgui/","entry_url_zh":"https://awesomerea.org/zh/resources/gdbgui/","evidence_url":"https://github.com/cs01/gdbgui/blob/773b9161729e75a6de57fb47bd084576e31de59a/README.md","group":"tools","id":"gdbgui","json_url":"https://awesomerea.org/resources/gdbgui/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/gdbgui/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/gdbgui/index.md","name":"gdbgui","name_zh":"gdbgui gdb 浏览器前端","record_type":"resource","relationship":"foundation","requirements":["Documentation lives on gdbgui.com; release 0.15.3.0 was published on 2025-06-29.","GPL-3.0 per LICENSE."],"requirements_zh":["文档位于 gdbgui.com；0.15.3.0 版发布于 2025-06-29。","依 LICENSE 采用 GPL-3.0 许可。"],"targets":["binary"],"url":"https://github.com/cs01/gdbgui","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"android","description_en":"Code and slides from the Defcon 22 talk \"Android Hacker Protection Level 0\". It holds a gdb and adb script for Bangcle and SecShell, a native unpacker for APKProtect, Bangcle, LIAPP and Qihoo Packer, tweaks that hide QEMU and debuggers from APKProtect, and a Corellium-based dynamic unpacking approach with automation.","description_zh":"Defcon 22 演讲“Android Hacker Protection Level 0”的代码与幻灯片。其中包括针对 Bangcle 和 SecShell 的 gdb 与 adb 脚本，针对 APKProtect、Bangcle、LIAPP 和 Qihoo Packer 的原生脱壳工具，向 APKProtect 隐藏 QEMU 与调试器的调整，以及基于 Corellium、带自动化的动态脱壳方法。","entry_url":"https://awesomerea.org/resources/android-unpacker/","entry_url_zh":"https://awesomerea.org/zh/resources/android-unpacker/","evidence_url":"https://github.com/strazzere/android-unpacker/blob/968ed234217edd16212738473f6493515e3d585b/README.md","group":"tools","id":"android-unpacker","json_url":"https://awesomerea.org/resources/android-unpacker/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/android-unpacker/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/android-unpacker/index.md","name":"Android Unpacker","name_zh":"Android Unpacker 安卓脱壳工具集","record_type":"resource","relationship":"foundation","requirements":["The gdb-scripts unpacker requires gdb and adb; the native unpacker does not depend on gdb. The newest tagged release is v1.2 from 2014-09-11.","Apache-2.0 per LICENSE.txt."],"requirements_zh":["gdb-scripts 脱壳脚本需要 gdb 和 adb；原生脱壳工具不依赖 gdb。最新标记版本是 2014-09-11 的 v1.2。","依 LICENSE.txt 采用 Apache-2.0 许可。"],"targets":["app"],"url":"https://github.com/strazzere/android-unpacker","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"Decompiler that turns Ethereum Virtual Machine bytecode into readable Solidity-syntax contracts, supported on Linux and macOS.","description_zh":"把以太坊虚拟机字节码反编译为可读的 Solidity 语法合约的工具，支持 Linux 和 macOS。","entry_url":"https://awesomerea.org/resources/porosity/","entry_url_zh":"https://awesomerea.org/zh/resources/porosity/","evidence_url":"https://github.com/msuiche/porosity/blob/b407155d5d7d25d5e73b14fad44377f047a3b529/README.md","group":"tools","id":"porosity","json_url":"https://awesomerea.org/resources/porosity/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/porosity/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/porosity/index.md","name":"Porosity","name_zh":"Porosity 以太坊字节码反编译器","record_type":"resource","relationship":"foundation","requirements":["The README marks the project unmaintained and points to the JEB decompiler for smart contracts as an alternative; the newest release is v20180116.2 from 2018-01-16.","The repository has no license file."],"requirements_zh":["README 标明项目已停止维护，并推荐 JEB 的智能合约反编译器作为替代；最新发布是 2018-01-16 的 v20180116.2。","仓库中没有许可证文件。"],"targets":["binary"],"url":"https://github.com/msuiche/porosity","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"android","description_en":"Command-line tool that decompiles an APK to Java and Smali, lists the extracted files, and statically checks AndroidManifest.xml and the source for common vulnerabilities and behaviours such as intents, command execution, content providers, crypto references and hardcoded secrets.","description_zh":"命令行工具，可把 APK 反编译为 Java 和 Smali，列出提取的文件，并静态检查 AndroidManifest.xml 与源代码中的常见漏洞和行为，例如 Intent、命令执行、Content Provider、加密引用和硬编码密钥。","entry_url":"https://awesomerea.org/resources/reverseapk/","entry_url_zh":"https://awesomerea.org/zh/resources/reverseapk/","evidence_url":"https://github.com/1N3/ReverseAPK/blob/74b33e444bd98aeb3ebc8d3d68333c3d087c3cbb/README.md","group":"tools","id":"reverseapk","json_url":"https://awesomerea.org/resources/reverseapk/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/reverseapk/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/reverseapk/index.md","name":"ReverseAPK","name_zh":"ReverseAPK 安卓应用静态分析工具","record_type":"resource","relationship":"foundation","requirements":["Installed with the bundled install script and run as reverse-apk with an APK name; the README describes version 1.2.","The repository has no license file."],"requirements_zh":["通过附带的 install 脚本安装，以 reverse-apk 加 APK 名称运行；README 描述的是 1.2 版。","仓库中没有许可证文件。"],"targets":["app"],"url":"https://github.com/1N3/ReverseAPK","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"Automation-ready disassembly and static analysis library for shellcode and PE binaries that outputs disassembly, functions and imports as JSON. It offers a light emulation mode that enumerates all paths and a slower full emulation mode, simulated TEB and PEB structures, and FLIRT-style signatures.","description_zh":"面向自动化的反汇编与静态分析库，处理 shellcode 和 PE 二进制文件，并以 JSON 输出反汇编、函数和导入表。它提供枚举所有路径的轻量模拟模式和较慢的完整模拟模式，以及模拟的 TEB、PEB 结构和 FLIRT 风格签名。","entry_url":"https://awesomerea.org/resources/xori/","entry_url_zh":"https://awesomerea.org/zh/resources/xori/","evidence_url":"https://github.com/endgameinc/xori/blob/d58a7427ee7928a92e32cd8fe6d1153b2aaf5568/README.md","group":"tools","id":"xori","json_url":"https://awesomerea.org/resources/xori/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/xori/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/xori/index.md","name":"Xori","name_zh":"Xori 反汇编与静态分析库","record_type":"resource","relationship":"foundation","requirements":["Covers i386 and x86-64 PE, PE+ and plain shellcode. Built with Rust and Cargo; the README cites rustc 1.27.0, and the browser GUI needs Node.js.","AGPL-3.0 per LICENSE.txt."],"requirements_zh":["支持 i386 和 x86-64 的 PE、PE+ 及纯 shellcode。使用 Rust 和 Cargo 构建；README 提到 rustc 1.27.0，浏览器 GUI 需要 Node.js。","依 LICENSE.txt 采用 AGPL-3.0 许可。"],"targets":["binary"],"url":"https://github.com/endgameinc/xori","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"Visual reverse-engineering tool that gives a quick overview of the data types present in a file. It reads no particular format, so it also works when headers are missing or corrupted or the format is unknown.","description_zh":"可视化逆向工具，用于快速了解文件中存在的数据类型。它不依赖任何特定文件格式，因此在文件头缺失或损坏、格式未知时也能使用。","entry_url":"https://awesomerea.org/resources/binglide/","entry_url_zh":"https://awesomerea.org/zh/resources/binglide/","evidence_url":"https://github.com/wapiflapi/binglide/blob/60168d8831279321d0f8402021d2372274252e09/README.md","group":"tools","id":"binglide","json_url":"https://awesomerea.org/resources/binglide/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/binglide/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binglide/index.md","name":"binglide","name_zh":"binglide 文件数据类型可视化工具","record_type":"resource","relationship":"foundation","requirements":["Needs Python 3, PyQt4 with OpenGL, pyqtgraph and numpy, with numba for JIT speed-ups. The author points to Veles as a more mature successor.","MIT per LICENSE.txt."],"requirements_zh":["需要 Python 3、带 OpenGL 的 PyQt4、pyqtgraph 和 numpy，并可用 numba 提供 JIT 加速。作者推荐更成熟的 Veles。","依 LICENSE.txt 采用 MIT 许可。"],"targets":["binary"],"url":"https://github.com/wapiflapi/binglide","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"Reverse Engineering Software Interface built around ELFsh, an interactive and scriptable shell for reading and modifying ELF objects, and e2dbg, an embedded ELF debugger. ELFsh analyses sections, edits headers and symbol and relocation tables, disassembles through libasm, draws control-flow graphs and injects code into ELF files.","description_zh":"逆向工程软件接口，核心是 ELFsh 和 e2dbg：前者是可交互、可脚本化的 ELF 对象读取与修改 shell，后者是嵌入式 ELF 调试器。ELFsh 可分析节，编辑文件头、符号表和重定位表，通过 libasm 反汇编，绘制控制流图，并向 ELF 文件注入代码。","entry_url":"https://awesomerea.org/resources/eresi/","entry_url_zh":"https://awesomerea.org/zh/resources/eresi/","evidence_url":"https://github.com/thorkill/eresi/blob/4769c1750918742d3e18bf879acb7bbf85978d1e/README.FIRST","group":"tools","id":"eresi","json_url":"https://awesomerea.org/resources/eresi/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/eresi/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/eresi/index.md","name":"ERESI","name_zh":"ERESI 逆向工程软件接口","record_type":"resource","relationship":"foundation","requirements":["README.FIRST describes ELFsh 0.65 and is marked as not updated for ERESI 0.8; e2dbg is described for Linux on IA32. The newest release is 0.83-a3-phoenix from 2018-07-09.","The repository has no top-level license file."],"requirements_zh":["README.FIRST 描述的是 ELFsh 0.65，并注明尚未针对 ERESI 0.8 更新；e2dbg 的说明面向 IA32 上的 Linux。最新发布是 2018-07-09 的 0.83-a3-phoenix。","仓库顶层没有许可证文件。"],"targets":["binary"],"url":"https://github.com/thorkill/eresi","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"Terminal tool that visualises binary data like a hexdump, but draws each octet as a coloured square from a palette.","description_zh":"终端工具，以类似十六进制转储的方式可视化二进制数据，但把每个字节画成调色板中的彩色方块。","entry_url":"https://awesomerea.org/resources/pixd/","entry_url_zh":"https://awesomerea.org/zh/resources/pixd/","evidence_url":"https://github.com/FireyFly/pixd/blob/f49add4626b12b85ed20da831a6741580d0b18f6/README.md","group":"tools","id":"pixd","json_url":"https://awesomerea.org/resources/pixd/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pixd/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pixd/index.md","name":"pixd","name_zh":"pixd 二进制数据彩色可视化工具","record_type":"resource","relationship":"foundation","requirements":["Needs a terminal emulator that supports 24-bit colour SGR escape sequences.","MIT per LICENSE."],"requirements_zh":["需要支持 24 位色 SGR 转义序列的终端模拟器。","依 LICENSE 采用 MIT 许可。"],"targets":["binary"],"url":"https://github.com/FireyFly/pixd","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"Unofficial, extended continuation of Universal Extractor that unpacks files from standard archives, application installers, disk images and game archives. Version 2 adds batch mode, a scan-only mode that detects a file's type, password lists and silent mode.","description_zh":"Universal Extractor 的非官方扩展延续版本，可从标准压缩包、应用安装程序、磁盘映像和游戏归档中解包文件。第 2 版增加了批处理模式、只检测文件类型的扫描模式、密码列表和静默模式。","entry_url":"https://awesomerea.org/resources/universal-extractor-2/","entry_url_zh":"https://awesomerea.org/zh/resources/universal-extractor-2/","evidence_url":"https://github.com/Bioruebe/UniExtract2/blob/9719ac988421e48276420e2f33e09087cfbacf8d/README.md","group":"tools","id":"universal-extractor-2","json_url":"https://awesomerea.org/resources/universal-extractor-2/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/universal-extractor-2/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/universal-extractor-2/index.md","name":"Universal Extractor 2","name_zh":"Universal Extractor 2 通用文件解包工具","record_type":"resource","relationship":"foundation","requirements":["Runs on Windows XP or newer; on XP online features are disabled and some extractors may not work. The README links v2.0.0-rc.3.","GPL-2.0 per LICENSE."],"requirements_zh":["可在 Windows XP 或更高版本上运行；在 XP 上联网功能被禁用，部分解包器可能无法工作。README 链接的是 v2.0.0-rc.3。","依 LICENSE 采用 GPL-2.0 许可。"],"targets":["binary","game"],"url":"https://github.com/Bioruebe/UniExtract2","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dynamic-analysis","description_en":"Function hooking toolkit for arm64 XNU devices: a C function hooker that patches memory pages directly, an Objective-C function hooker, an arm64 assembler, JIT inline assembly for Swift and a reimplementation of the Substrate and libhooker APIs. The README lists the Dopamine, palera1n and meowbrek2 jailbreaks as users.","description_zh":"面向 arm64 XNU 设备的函数钩子工具包：包括直接修补内存页的 C 函数钩子、Objective-C 函数钩子、arm64 汇编器、Swift JIT 内联汇编，以及 Substrate 和 libhooker API 的重新实现。README 列出 Dopamine、palera1n 和 meowbrek2 越狱工具为其使用者。","entry_url":"https://awesomerea.org/resources/ellekit/","entry_url_zh":"https://awesomerea.org/zh/resources/ellekit/","evidence_url":"https://github.com/tealbathingsuit/ellekit/blob/1017a0d09606ea49ba8bc4d6cccc530d372e640e/README.md","group":"tools","id":"ellekit","json_url":"https://awesomerea.org/resources/ellekit/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ellekit/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ellekit/index.md","name":"ElleKit","name_zh":"ElleKit arm64 函数钩子工具包","record_type":"resource","relationship":"foundation","requirements":["Needs an arm64 device running the XNU kernel. Tested on iOS 15-27 (arm64), iOS 15-17 (arm64e) and macOS Ventura; the README says it is unsupported on the latest macOS because of code-signing changes.","BSD-3-Clause per LICENSE."],"requirements_zh":["需要运行 XNU 内核的 arm64 设备。已在 iOS 15-27（arm64）、iOS 15-17（arm64e）和 macOS Ventura 上测试；README 称因代码签名变更，最新版 macOS 已不受支持。","依 LICENSE 采用 BSD-3-Clause 许可。"],"targets":["binary"],"url":"https://github.com/tealbathingsuit/ellekit","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"android","description_en":"PLT hook library for Android native ELF executables and shared libraries. It handles ELF HASH and GNU HASH symbols and SLEB128-encoded relocations, selects targets with regular expressions, and needs no root or system permissions.","description_zh":"面向 Android 原生 ELF 可执行文件和共享库的 PLT 钩子库。它支持 ELF HASH 和 GNU HASH 符号以及 SLEB128 编码的重定位信息，可用正则表达式选择目标，无需 root 或系统权限。","entry_url":"https://awesomerea.org/resources/xhook/","entry_url_zh":"https://awesomerea.org/zh/resources/xhook/","evidence_url":"https://github.com/iqiyi/xHook/blob/391d0c4103626bf39d54a1d9c7a10965c82ff8d2/README.md","group":"tools","id":"xhook","json_url":"https://awesomerea.org/resources/xhook/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/xhook/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/xhook/index.md","name":"xHook","name_zh":"xHook Android PLT 钩子库","record_type":"resource","relationship":"foundation","requirements":["Supports Android 4.0 to 10 on armeabi, armeabi-v7a, arm64-v8a, x86 and x86_64; building takes Android NDK r16b.","MIT for the code per LICENSE, with documentation under a Creative Commons license per LICENSE-docs."],"requirements_zh":["支持 Android 4.0 至 10 上的 armeabi、armeabi-v7a、arm64-v8a、x86 和 x86_64；构建需要 Android NDK r16b。","依 LICENSE 代码采用 MIT 许可，依 LICENSE-docs 文档采用 Creative Commons 许可。"],"targets":["app"],"url":"https://github.com/iqiyi/xHook","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"android","description_en":"Continuation of Dexposed on ART: a runtime method-hooking framework that loads into an app and can hook both the app's own code and Android framework code running in its process. Stated uses include instrumentation and security audits.","description_zh":"Dexposed 在 ART 上的延续：运行时方法钩子框架，加载到应用内后既能钩住应用自身代码，也能钩住在其进程中运行的 Android 框架代码。其说明的用途包括插桩和安全审计。","entry_url":"https://awesomerea.org/resources/epic-android-hook/","entry_url_zh":"https://awesomerea.org/zh/resources/epic-android-hook/","evidence_url":"https://github.com/tiann/epic/blob/c67d0d3e3769c19119465784a579c659dd88c4ce/README.md","group":"tools","id":"epic-android-hook","json_url":"https://awesomerea.org/resources/epic-android-hook/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/epic-android-hook/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/epic-android-hook/index.md","name":"Epic","name_zh":"Epic Android ART 方法钩子框架","record_type":"resource","relationship":"foundation","requirements":["The README states support for ART thumb2 and arm64 on Android 5.0 to 11 and none for arm32, x86, x86_64 or MIPS, which rules out Android emulators on those architectures. Short methods and fully inlined methods cannot be hooked. The newest release is 0.11.2 from 2021-07-31.","Apache-2.0 per LICENSE."],"requirements_zh":["README 称支持 Android 5.0 至 11 的 ART thumb2 和 arm64，不支持 arm32、x86、x86_64 和 MIPS，因此无法在这些架构的 Android 模拟器上运行。过短的方法和完全内联的方法无法被钩住。最新发布是 2021-07-31 的 0.11.2。","依 LICENSE 采用 Apache-2.0 许可。"],"targets":["app"],"url":"https://github.com/tiann/epic","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dynamic-analysis","description_en":"Linux and macOS reimagining of the Sysinternals ProcDump tool that writes process dumps in response to performance, runtime, signal and resource-tracking triggers, including native dumps through a Rust ELF writer and managed dumps through .NET diagnostics IPC.","description_zh":"Sysinternals ProcDump 工具在 Linux 和 macOS 上的重新实现，可按性能、运行时、信号和资源跟踪触发条件写出进程转储，包括通过 Rust ELF 写入器生成的原生转储，以及通过 .NET 诊断 IPC 生成的托管转储。","entry_url":"https://awesomerea.org/resources/procdump-linux/","entry_url_zh":"https://awesomerea.org/zh/resources/procdump-linux/","evidence_url":"https://github.com/microsoft/ProcDump-Linux/blob/2f83148dbc62da574a953a5eaaeb38b499847cd0/README.md","group":"tools","id":"procdump-linux","json_url":"https://awesomerea.org/resources/procdump-linux/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/procdump-linux/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/procdump-linux/index.md","name":"ProcDump for Linux and macOS","name_zh":"ProcDump Linux 与 macOS 版进程转储工具","record_type":"resource","relationship":"foundation","requirements":["Runs on Linux kernels 3.5+ or macOS Sierra+. Building needs stable Rust with rustfmt and clippy, plus Clang, pkg-config, libelf and zlib headers, gdb and gcore on Linux, or Xcode command-line tools, gdb and gcore on macOS. The macOS version has no resource tracking. Release 3.5.3 is from 2026-09-10.","MIT per LICENSE."],"requirements_zh":["运行于 Linux 内核 3.5+ 或 macOS Sierra+。构建需要带 rustfmt 和 clippy 的稳定版 Rust；Linux 上还需 Clang、pkg-config、libelf 和 zlib 开发包、gdb 与 gcore，macOS 上还需 Xcode 命令行工具、gdb 与 gcore。macOS 版没有资源跟踪。3.5.3 版发布于 2026-09-10。","依 LICENSE 采用 MIT 许可。"],"targets":["binary"],"url":"https://github.com/microsoft/ProcDump-Linux","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dynamic-analysis","description_en":"Small library that dynamically rebinds symbols in Mach-O binaries running on iOS, on device and in the simulator, by updating the lazy and non-lazy symbol pointers that dyld uses.","description_zh":"小型库，可动态重新绑定运行在 iOS（真机和模拟器）上的 Mach-O 二进制文件中的符号，方法是更新 dyld 使用的惰性和非惰性符号指针。","entry_url":"https://awesomerea.org/resources/fishhook/","entry_url_zh":"https://awesomerea.org/zh/resources/fishhook/","evidence_url":"https://github.com/meta/fishhook/blob/aadc161ac3b80db07a9908851839a17ba63a9eb1/README.md","group":"tools","id":"fishhook","json_url":"https://awesomerea.org/resources/fishhook/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/fishhook/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fishhook/index.md","name":"fishhook","name_zh":"fishhook Mach-O 符号重绑定库","record_type":"resource","relationship":"foundation","requirements":["Used by adding fishhook.h and fishhook.c to a project.","BSD-3-Clause per LICENSE."],"requirements_zh":["将 fishhook.h 和 fishhook.c 加入项目即可使用。","依 LICENSE 采用 BSD-3-Clause 许可。"],"targets":["app"],"url":"https://github.com/meta/fishhook","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"VBA p-code decompiler based on pcodedmp, written for Office documents whose macro source has been stomped to leave only bytecode. It takes a document or a previously saved pcodedmp dump and also works as a Python module.","description_zh":"基于 pcodedmp 的 VBA p-code 反编译器，用于处理宏源代码已被抹除、只留下字节码的 Office 文档。它接受文档或先前保存的 pcodedmp 转储，也可作为 Python 模块使用。","entry_url":"https://awesomerea.org/resources/pcode2code/","entry_url_zh":"https://awesomerea.org/zh/resources/pcode2code/","evidence_url":"https://github.com/Big5-sec/pcode2code/blob/65ae9832884bb0ebba16f96df257e387d427cd72/README.md","group":"tools","id":"pcode2code","json_url":"https://awesomerea.org/resources/pcode2code/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pcode2code/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pcode2code/index.md","name":"pcode2code","name_zh":"pcode2code VBA p-code 反编译器","record_type":"resource","relationship":"foundation","requirements":["Works with Python 2.6+ and Python 3.x and installs with pip along with pcodedmp.","GPL-3.0 per LICENSE."],"requirements_zh":["支持 Python 2.6+ 和 Python 3.x，通过 pip 安装并附带 pcodedmp。","依 LICENSE 采用 GPL-3.0 许可。"],"targets":["binary"],"url":"https://github.com/Big5-sec/pcode2code","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/daniel-madrid-07/weeping-of-the-empire/blob/cfb47bc13b25fc686e0ef2616b451662b62c2b31/engine/README.md"],"category":"reconstruction-cases","description_en":"Weeping of the Empire builds a native Windows port of The Legend of Zelda: Tears of the Kingdom from the user's Switch game dump. It recompiles ARM64 code ahead of time to x86-64, supplies Switch services through a host runtime and renders through Vulkan. The engine documentation credits totk-recomp as the starting point and identifies the added Windows port, renderer, controls and menus.","description_zh":"Weeping of the Empire 从用户自己的 Switch《塞尔达传说 王国之泪》转储构建原生 Windows 版本。它预先将 ARM64 代码重编译为 x86-64，以宿主运行时提供 Switch 系统服务，并通过 Vulkan 渲染。引擎文档说明其以 totk-recomp 为起点，另行开发了 Windows 移植、渲染、控制和菜单。","entry_url":"https://awesomerea.org/resources/weeping-of-the-empire-case/","entry_url_zh":"https://awesomerea.org/zh/resources/weeping-of-the-empire-case/","evidence_url":"https://github.com/daniel-madrid-07/weeping-of-the-empire/blob/cfb47bc13b25fc686e0ef2616b451662b62c2b31/README.md","group":"cases","id":"weeping-of-the-empire-case","json_url":"https://awesomerea.org/resources/weeping-of-the-empire-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/weeping-of-the-empire-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/weeping-of-the-empire-case/index.md","name":"Weeping of the Empire: statically recompiling Tears of the Kingdom for Windows","name_zh":"Weeping of the Empire：将《塞尔达传说 王国之泪》静态重编译至 Windows","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["Windows 10 or 11 x64, a Vulkan 1.3 GPU driver and the user's game dump are required; encrypted dumps also require the user's keys. Installation needs internet access.","Game version 1.0.0 is supported, with 1.4.3 in beta; first visits may stutter while shaders are built.","MIT License."],"requirements_zh":["需要 Windows 10 或 11 x64、支持 Vulkan 1.3 的显卡驱动及用户自己的游戏转储；加密转储还需要用户自己的密钥。安装时需要联网。","支持游戏 1.0.0 版，1.4.3 版仍为测试支持；首次进入场景时可能因编译着色器而卡顿。","MIT 许可证。"],"targets":["game"],"url":"https://github.com/daniel-madrid-07/weeping-of-the-empire","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"agent-mcp","description_en":"Exoproc exposes Windows x64 process inspection and instrumentation to agents through a CLI and MCP server. It enumerates processes, reads and scans memory, installs function detours, redirects thread contexts and compiles C snippets for execution in a target process.","description_zh":"Exoproc 通过命令行和 MCP 服务向智能体开放 Windows x64 进程检查与插桩。它可枚举进程、读取和扫描内存、安装函数钩子、重定向线程上下文，并编译 C 代码片段供目标进程执行。","entry_url":"https://awesomerea.org/resources/exoproc/","entry_url_zh":"https://awesomerea.org/zh/resources/exoproc/","evidence_url":"https://github.com/w0ldan/exoproc/blob/e1d0710f1ec89e6e987cf6991b3e5e09c6647711/README.md","group":"agents","id":"exoproc","json_url":"https://awesomerea.org/resources/exoproc/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/exoproc/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/exoproc/index.md","name":"Exoproc","name_zh":"Exoproc Windows 进程插桩与智能体 MCP 接口","record_type":"resource","relationship":"independent-agent-integration","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["Live process instrumentation requires native Windows x64.","The Node.js route requires Node.js 18 or newer; the README also describes Bun and a standalone executable.","MIT License."],"requirements_zh":["实时进程插桩需要 Windows x64。","Node.js 运行方式需要 Node.js 18 或更新版本；README 另述 Bun 和独立可执行文件。","采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/w0ldan/exoproc","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/DenisSergeevitch/simcity3000-gta-mode/blob/bb7fcb2106acf51a2bf195de2bab103cb16ff55b/MODLOG.md"],"category":"game-analysis","description_en":"GTA Mode is a native plugin that adds direct control of spawned citizens and cars to SimCity 3000 Unlimited. It uses findings from Ghidra analysis of the game's binaries, GZCOM plugin loading, in-memory city structures and sprite archives. The C plugin runs in the original game, reads city data from its memory and decodes art from the user's installation; MODLOG.md records addresses, formats and dead ends.","description_zh":"GTA Mode 是为《SimCity 3000 Unlimited》加入可操控行人和车辆的原生插件，这些行人和车辆由插件生成。项目利用 Ghidra 对游戏二进制、GZCOM 插件加载机制、内存中的城市结构和精灵图档案的分析成果。C 插件在原游戏中运行，从游戏内存读取城市数据，并从用户安装的游戏文件解码图像；MODLOG.md 记录了地址、格式和未成功的尝试。","entry_url":"https://awesomerea.org/resources/simcity-3000-gta-mode-case/","entry_url_zh":"https://awesomerea.org/zh/resources/simcity-3000-gta-mode-case/","evidence_url":"https://github.com/DenisSergeevitch/simcity3000-gta-mode/blob/bb7fcb2106acf51a2bf195de2bab103cb16ff55b/README.md","group":"learn","id":"simcity-3000-gta-mode-case","json_url":"https://awesomerea.org/resources/simcity-3000-gta-mode-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/simcity-3000-gta-mode-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/simcity-3000-gta-mode-case/index.md","name":"GTA Mode: reverse-engineering SimCity 3000 Unlimited for a native plugin","name_zh":"GTA Mode：逆向 SimCity 3000 Unlimited 并开发原生插件","reconstruction_method":"other","record_type":"resource","relationship":"learning","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["A user's copy of SimCity 3000 Unlimited is required; the supported game DLLs are the Steam release's April 2000 builds.","Building requires a 32-bit mingw-w64 compiler; the HUD uses cnc-ddraw's OpenGL renderer.","The game's own traffic cannot yet be stolen and its own pedestrians cannot yet be punched; water does not block movement.","MIT License."],"requirements_zh":["需要用户自己的《SimCity 3000 Unlimited》；支持的游戏 DLL 为 Steam 版 2000 年 4 月构建。","构建需要 32 位 mingw-w64 编译器；HUD 使用 cnc-ddraw 的 OpenGL 渲染器。","目前尚不能偷走游戏原有的交通车辆或殴打原有行人；水域也不会阻挡移动。","采用 MIT 许可证。"],"targets":["binary","game"],"url":"https://github.com/DenisSergeevitch/simcity3000-gta-mode","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Charelene/FH2MP/blob/150a4030b7560dee5349e0f4713427523042dfb6/native/README.md"],"category":"reconstruction-cases","description_en":"FH2MP restores Forza Horizon 2 multiplayer with a replacement server based on protocol behavior recovered from the Xbox One game client. An in-game shim redirects sockets and web-service calls, while Python and Go servers handle lobbies, worlds and online features; a launcher manages setup and updates.","description_zh":"FH2MP 根据 Xbox One 版《Forza Horizon 2》客户端中恢复的协议行为，搭建替代服务器以恢复多人游戏。游戏内 shim 重定向网络连接和 Web 服务请求；Python 与 Go 服务器处理大厅、世界及在线功能，启动器负责安装与更新。","entry_url":"https://awesomerea.org/resources/fh2mp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/fh2mp-case/","evidence_url":"https://github.com/Charelene/FH2MP/blob/150a4030b7560dee5349e0f4713427523042dfb6/README.md","group":"cases","id":"fh2mp-case","json_url":"https://awesomerea.org/resources/fh2mp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/fh2mp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fh2mp-case/index.md","name":"FH2MP: reconstructed Forza Horizon 2 online services","name_zh":"FH2MP：重建《Forza Horizon 2》在线服务","reconstruction_method":"other","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["A legitimately owned Forza Horizon 2 Xbox One build 1.0.0.64 and Azimuth are required.","The source warns of crashes, desynchronization and rough edges.","GPL-3.0 licence."],"requirements_zh":["需要合法持有的 Xbox One 版《Forza Horizon 2》1.0.0.64 和 Azimuth。","作者提示仍可能出现崩溃、状态不同步等问题。","GPL-3.0 许可证。"],"targets":["game","protocol"],"url":"https://github.com/Charelene/FH2MP","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/opendevicedb/opendevicedb/blob/0db6a1f7f88bcabb069d951fa59b603aaf4b49bf/package.json"],"category":"related-lists","description_en":"OpenDeviceDB indexes devices with existing firmware or protocol reverse-engineering work and links back to source projects. Its website lists installation routes and remaining vendor dependencies, while importers aggregate existing databases and an MCP server lets agents query device records.","description_zh":"OpenDeviceDB 索引已有固件或协议逆向成果的设备，并链接原始项目。网站列出开放固件的安装途径及仍依赖厂商的部分；导入器汇集其他数据库，MCP 服务器供智能体查询设备记录。","entry_url":"https://awesomerea.org/resources/opendevicedb/","entry_url_zh":"https://awesomerea.org/zh/resources/opendevicedb/","evidence_url":"https://github.com/opendevicedb/opendevicedb/blob/0db6a1f7f88bcabb069d951fa59b603aaf4b49bf/README.md","group":"learn","id":"opendevicedb","json_url":"https://awesomerea.org/resources/opendevicedb/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/opendevicedb/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/opendevicedb/index.md","name":"OpenDeviceDB","name_zh":"OpenDeviceDB 设备逆向资料目录","record_type":"resource","relationship":"learning","requirement_facets":["prerequisites","scope","license"],"requirements":["Using the local website, importers or MCP server requires the repository's npm workflow.","Some device entries retain non-free vendor components or require vendor cloud services.","Code is AGPL-3.0-or-later; data is CC BY-SA 4.0."],"requirements_zh":["在本地使用网站、导入器或 MCP 服务器需要仓库的 npm 工作流程。","部分设备条目仍依赖厂商非自由组件或云服务。","代码采用 AGPL-3.0-or-later，数据采用 CC BY-SA 4.0。"],"targets":["firmware","protocol"],"url":"https://github.com/opendevicedb/opendevicedb","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/mahdamin/esp-idf-injection-ng/blob/697bd7f062713cd37874d49d2b2da3bd48b9b293/evidence/README.md"],"category":"native-analysis","description_en":"esp-idf-injection-ng documents an investigation of ESP-IDF's compiled libnet80211.a frame-type check. The author traces why symbol overrides fail in v5 and later, then supplies an objcopy patch, demonstration firmware and captures for transmitting additional 802.11 management frames through esp_wifi_80211_tx.","description_zh":"esp-idf-injection-ng 记录了对 ESP-IDF 已编译 libnet80211.a 中帧类型检查逻辑的研究。作者追查旧版符号覆盖方法在 v5 以后失效的原因，并提供 objcopy 补丁、演示固件和抓包资料，用 esp_wifi_80211_tx 发送额外的 802.11 管理帧。","entry_url":"https://awesomerea.org/resources/esp-idf-injection-ng/","entry_url_zh":"https://awesomerea.org/zh/resources/esp-idf-injection-ng/","evidence_url":"https://github.com/mahdamin/esp-idf-injection-ng/blob/697bd7f062713cd37874d49d2b2da3bd48b9b293/README.md","group":"learn","id":"esp-idf-injection-ng","json_url":"https://awesomerea.org/resources/esp-idf-injection-ng/record.json","kind":"research","markdown_url":"https://awesomerea.org/resources/esp-idf-injection-ng/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/esp-idf-injection-ng/index.md","name":"esp-idf-injection-ng","name_zh":"esp-idf-injection-ng ESP-IDF 帧发送限制分析","record_type":"resource","relationship":"learning","requirement_facets":["prerequisites","testing","limits","license"],"requirements":["An ESP-IDF installation and ESP32 hardware are needed for the demonstrated patch and firmware.","The author tested ESP-IDF v6.1-dev on classic ESP32; other listed versions and chips are conditional.","The patch changes the local ESP-IDF archive globally and affects builds using it.","MIT License."],"requirements_zh":["演示补丁和固件需要 ESP-IDF 安装及 ESP32 硬件。","作者在经典 ESP32 上测试了 ESP-IDF v6.1-dev；其他所列版本和芯片仍取决于条件。","补丁会全局修改本机 ESP-IDF 归档，并影响使用该安装的构建。","采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/mahdamin/esp-idf-injection-ng","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"Cursed Lands reimplements the engine for Evil Islands and Lost in Astral in Godot, reading maps, models, audio, scripts and tables from the player's own game copy. Its native rendering, combat, AI, scripting and interface systems follow the original game's rules, with releases for desktop, Android and browsers.","description_zh":"Cursed Lands 使用 Godot 重建《Evil Islands》及扩展《Lost in Astral》的引擎，从玩家自备的游戏文件读取地图、模型、音频、脚本和数据表。项目重新编写渲染、战斗、AI、脚本及界面系统，提供桌面、Android 和浏览器版本。","entry_url":"https://awesomerea.org/resources/cursed-lands-case/","entry_url_zh":"https://awesomerea.org/zh/resources/cursed-lands-case/","evidence_url":"https://github.com/TheWWWorm/CursedLands/blob/24624cee85ae7bfd380739ef9d32e6ed842c6951/README.md","group":"cases","id":"cursed-lands-case","json_url":"https://awesomerea.org/resources/cursed-lands-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/cursed-lands-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cursed-lands-case/index.md","name":"Cursed Lands: a Godot engine for Evil Islands and Lost in Astral","name_zh":"Cursed Lands：用 Godot 重建《Evil Islands》与《Lost in Astral》引擎","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["An owned copy of Evil Islands or Lost in Astral is required; the GOG base-game edition is the main tested version.","The browser version requires WebGL 2.","Apache License 2.0."],"requirements_zh":["需要自备《Evil Islands》或《Lost in Astral》；基础游戏主要以 GOG 版本测试。","浏览器版本需要 WebGL 2。","采用 Apache License 2.0。"],"targets":["game"],"url":"https://github.com/TheWWWorm/CursedLands","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/awake-devel/pkg-to-anyps5/blob/2e9b12267840f9777f8d825335c4b4938160d9c4/LICENSE"],"category":"game-analysis","description_en":"pkg-to-anyps5 extracts PS5 debug game packages or game folders into the layout expected by the AnyPS5 relinker. It parses FIH, PFS and NAPS structures, decodes supported Kraken blocks, and unwraps fake-signed SELF executables and modules into ELF files.","description_zh":"pkg-to-anyps5 将 PS5 调试版游戏包或已提取的游戏目录整理为 AnyPS5 重链接器所需的结构。它解析 FIH、PFS 和 NAPS，解码支持的 Kraken 块，并把假签名 SELF 可执行文件及模块还原为 ELF。","entry_url":"https://awesomerea.org/resources/pkg-to-anyps5/","entry_url_zh":"https://awesomerea.org/zh/resources/pkg-to-anyps5/","evidence_url":"https://github.com/awake-devel/pkg-to-anyps5/blob/2e9b12267840f9777f8d825335c4b4938160d9c4/README.md","group":"tools","id":"pkg-to-anyps5","json_url":"https://awesomerea.org/resources/pkg-to-anyps5/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pkg-to-anyps5/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pkg-to-anyps5/index.md","name":"pkg-to-anyps5","name_zh":"pkg-to-anyps5 PS5 调试包提取工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Rust 1.88 or newer to build from source; input is a PS5 debug package or extracted game folder.","Retail packages, encrypted filesystems and encrypted SELF segments are refused; several Kraken entropy types are unimplemented.","GPL-3.0-or-later license."],"requirements_zh":["源码构建需要 Rust 1.88 或更新版本；输入为 PS5 调试包或已提取的游戏目录。","不支持零售包、加密文件系统及加密 SELF 段；部分 Kraken 熵编码类型尚未实现。","采用 GPL-3.0-or-later 许可证。"],"targets":["game"],"url":"https://github.com/awake-devel/pkg-to-anyps5","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Jakey-Jakey/questpad/blob/0a96a24c090062473bf5e2ae12a30301fea792fa/README.md","https://github.com/Jakey-Jakey/questpad/blob/0a96a24c090062473bf5e2ae12a30301fea792fa/LICENSE-APACHE"],"category":"reconstruction-cases","description_en":"QuestPad implements the Quest Touch controllers' private 2.4 GHz radio protocol on nRF52840 firmware so a computer can use them as a USB gamepad. Its protocol reference documents pairing, AES-CCM encrypted controller packets, 2 ms link frames and input data; the firmware exposes generic gamepad, DS4 and XInput modes.","description_zh":"QuestPad 在 nRF52840 固件中实现 Quest Touch 手柄的私有 2.4 GHz 无线协议，让电脑将手柄作为 USB 游戏控制器使用。协议文档记录了配对、AES-CCM 加密数据包、2 毫秒链路帧和输入数据；固件提供通用手柄、DS4 与 XInput 模式。","entry_url":"https://awesomerea.org/resources/questpad-case/","entry_url_zh":"https://awesomerea.org/zh/resources/questpad-case/","evidence_url":"https://github.com/Jakey-Jakey/questpad/blob/0a96a24c090062473bf5e2ae12a30301fea792fa/PROTOCOL.md","group":"cases","id":"questpad-case","json_url":"https://awesomerea.org/resources/questpad-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/questpad-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/questpad-case/index.md","name":"QuestPad: a USB gamepad from the Quest Touch radio protocol","name_zh":"QuestPad：利用 Quest Touch 无线协议构建 USB 手柄","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","testing","license"],"requirements":["A Nordic nRF52840 Dongle or nice!nano v2 and Quest Touch controllers are required.","Python 3 is required for the control panel.","Quest 3/3S controllers and Linux support are listed as untested.","The repository provides MIT and Apache-2.0 licence files."],"requirements_zh":["需要 Nordic nRF52840 Dongle 或 nice!nano v2，以及 Quest Touch 手柄。","控制面板需要 Python 3。","Quest 3/3S 手柄及 Linux 支持列为未测试。","仓库提供 MIT 和 Apache-2.0 许可证文件。"],"targets":["protocol"],"url":"https://github.com/Jakey-Jakey/questpad","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/masterflai/pmca-re-reloaded/blob/a919b823151bbe235de8e16ce3d2a9ec1d50d584/ARCHITECTURE.md"],"category":"firmware","description_en":"PMCA-RE RELOADED is a Rust desktop and CLI toolkit for Sony cameras that includes experimental analysis of where menu settings reside in camera settings memory. It also parses firmware files, backup images and usage logs offline, and provides USB access to camera information, apps, firmware updates and settings. Supported operations depend on the camera generation.","description_zh":"PMCA-RE RELOADED 是面向 Sony 相机的 Rust 桌面与命令行工具，实验性功能可分析菜单设置在相机设置存储区中的位置。它还可离线解析固件文件、备份镜像和使用日志，并通过 USB 读取相机信息、管理应用、固件和设置；可用功能随相机代际而异。","entry_url":"https://awesomerea.org/resources/pmca-re-reloaded/","entry_url_zh":"https://awesomerea.org/zh/resources/pmca-re-reloaded/","evidence_url":"https://github.com/masterflai/pmca-re-reloaded/blob/a919b823151bbe235de8e16ce3d2a9ec1d50d584/README.md","group":"tools","id":"pmca-re-reloaded","json_url":"https://awesomerea.org/resources/pmca-re-reloaded/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pmca-re-reloaded/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pmca-re-reloaded/index.md","name":"PMCA-RE RELOADED","name_zh":"PMCA-RE RELOADED 索尼相机分析与管理工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Windows, macOS or Linux and a supported Sony camera connected by USB for device operations.","App installation, settings memory and function analysis require user-imported key material.","Function analysis is experimental; firmware flashing is reported on one camera and unconfirmed on other models.","MIT license."],"requirements_zh":["设备操作需要 Windows、macOS 或 Linux，以及通过 USB 连接的受支持 Sony 相机。","安装应用、访问设置存储区和运行功能分析需要用户自行导入密钥材料。","功能分析仍处于实验阶段；作者报告仅在一台相机上试过固件刷写，其他机型尚未确认。","MIT 许可证。"],"targets":["firmware"],"url":"https://github.com/masterflai/pmca-re-reloaded","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/47PADO47/nfs-mw/blob/8d0b3c1906003c00f0416887cbd21ca3492e02d5/docs/README.md"],"category":"reconstruction-cases","description_en":"nfs-mw reconstructs Need for Speed: Most Wanted 2005 PC v1.3 in Rust using data read from the user's installation. Its format readers decode bChunk, JDLZ, HUFF, cars, textures, and the streamed city; the current runtime provides viewers, driving, menus, and free roam.","description_zh":"nfs-mw 用 Rust 重建 2005 年 PC 版《极品飞车：最高通缉》v1.3，并从用户本机安装目录读取数据。项目解析 bChunk、JDLZ、HUFF、车辆、纹理和分区加载的城市数据；目前提供查看器、驾驶、菜单与自由漫游。","entry_url":"https://awesomerea.org/resources/nfs-mw-case/","entry_url_zh":"https://awesomerea.org/zh/resources/nfs-mw-case/","evidence_url":"https://github.com/47PADO47/nfs-mw/blob/8d0b3c1906003c00f0416887cbd21ca3492e02d5/README.md","group":"cases","id":"nfs-mw-case","json_url":"https://awesomerea.org/resources/nfs-mw-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/nfs-mw-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/nfs-mw-case/index.md","name":"nfs-mw: a Rust reconstruction of Need for Speed: Most Wanted","name_zh":"nfs-mw：用 Rust 重建《极品飞车：最高通缉》","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["Rust stable and an installed copy of Need for Speed: Most Wanted PC v1.3 / Black Edition are required.","Windows and Linux are documented; gameplay beyond the listed menus and free roam remains on the roadmap.","Apache-2.0 and MIT license files are present."],"requirements_zh":["需要稳定版 Rust 和已安装的 PC 版《极品飞车：最高通缉》v1.3／Black Edition。","文档列出 Windows 和 Linux 支持；菜单与自由漫游之外的玩法仍在路线图中。","仓库提供 Apache-2.0 和 MIT 许可证文件。"],"targets":["game"],"url":"https://github.com/47PADO47/nfs-mw","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/ubis/OSIRIS/blob/8515cd884c55f71f1bda35e0efc1586563dfaf6a/README.md"],"category":"reconstruction-cases","description_en":"OSIRIS replaces the DSP-board software of Onkyo TX-NR515 and TX-NR717 receivers with its own boot loader, Linux services and DSP code. The project documents the SPI exchange between the main MCU and DSP board, including 1032-byte transfers, frame structure and command meanings recovered from stock firmware and logs.","description_zh":"OSIRIS 以自制引导程序、Linux 服务和 DSP 代码替换 Onkyo TX-NR515、TX-NR717 功放的 DSP 板软件。项目依据原厂固件和日志整理主 MCU 与 DSP 板之间的 SPI 通信，记录 1032 字节传输、帧格式及命令含义。","entry_url":"https://awesomerea.org/resources/osiris-onkyo-receiver-case/","entry_url_zh":"https://awesomerea.org/zh/resources/osiris-onkyo-receiver-case/","evidence_url":"https://github.com/ubis/OSIRIS/blob/8515cd884c55f71f1bda35e0efc1586563dfaf6a/docs/mcu-protocol.md","group":"cases","id":"osiris-onkyo-receiver-case","json_url":"https://awesomerea.org/resources/osiris-onkyo-receiver-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/osiris-onkyo-receiver-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/osiris-onkyo-receiver-case/index.md","name":"OSIRIS: replacing Onkyo receiver firmware through MCU protocol research","name_zh":"OSIRIS：基于 MCU 协议研究替换 Onkyo 功放固件","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["An Onkyo receiver with a D830 or OMAP-L137 DSP board; installation requires a DSP-board serial connection and BOOT-pin switching.","The README reports TX-NR717 working and TX-NR515 working with incomplete testing; DTS, Spotify, internet radio and DLNA are unfinished.","Original OSIRIS code is BSD-2-Clause; bundled upstream components retain the licenses stated in the README."],"requirements_zh":["需要配有 D830 或 OMAP-L137 DSP 板的 Onkyo 功放；安装需要连接 DSP 板串口并切换 BOOT 引脚。","作者报告 TX-NR717 可运行，TX-NR515 可运行但尚未完成全部测试；DTS、Spotify、网络电台和 DLNA 尚未实现。","OSIRIS 原创代码采用 BSD-2-Clause；随附上游组件沿用 README 列出的各自许可证。"],"targets":["firmware","protocol"],"url":"https://github.com/ubis/OSIRIS","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/jkfran/stadiacast/blob/61e8aee978a8514a5c1aaa39fcaae1bb5dfcde39/README.md"],"category":"reconstruction-cases","description_en":"Stadiacast recreates the network service used by the Stadia Controller's Wi-Fi firmware so the controller can connect to a local computer. The receiver answers boot and discovery requests, completes WebRTC and DTLS sessions, decodes input and sends rumble commands. Protocol notes record findings from firmware reading and live controller runs, with protobuf schemas and receiver code in the repository.","description_zh":"Stadiacast 重建 Stadia 手柄 Wi-Fi 固件所依赖的网络服务，让手柄连接本地电脑。接收端响应启动和发现请求，完成 WebRTC、DTLS 会话，解码按键输入并发送震动命令。协议文档记录了固件阅读和真机交互所得的结果，仓库还提供 protobuf 结构与服务端代码。","entry_url":"https://awesomerea.org/resources/stadiacast-case/","entry_url_zh":"https://awesomerea.org/zh/resources/stadiacast-case/","evidence_url":"https://github.com/jkfran/stadiacast/blob/61e8aee978a8514a5c1aaa39fcaae1bb5dfcde39/docs/protocol.md","group":"cases","id":"stadiacast-case","json_url":"https://awesomerea.org/resources/stadiacast-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/stadiacast-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/stadiacast-case/index.md","name":"Stadiacast: reconstructing the Stadia Controller's Wi-Fi service","name_zh":"Stadiacast：重建 Stadia 手柄的 Wi-Fi 服务","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","prerequisites","license"],"requirements":["A Stadia Controller with Wi-Fi firmware; the author tested ota.282115.","A Windows, macOS or Linux host on the controller's network; running from source requires Python 3.11+.","Linux needs root or CAP_NET_BIND_SERVICE to bind the required low ports.","MIT license."],"requirements_zh":["需要运行 Wi-Fi 固件的 Stadia 手柄；作者测试的是 ota.282115。","需要与手柄位于同一网络的 Windows、macOS 或 Linux 主机；从源码运行需要 Python 3.11 及以上版本。","Linux 上绑定所需低端口需要 root 权限或 CAP_NET_BIND_SERVICE。","MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/jkfran/stadiacast","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/VAHPEM/rust-deobf/blob/04a9c4a371cb77635e2eed2c36157af36e058961/premium/README.md"],"category":"native-analysis","description_en":"rust-deobf analyzes compiled, mainly Rust, ELF, PE and Mach-O binaries to recover hidden strings and related artifacts. It combines static call-site analysis with Unicorn function emulation, identifies Rust metadata and library functions, and offers unpacking and Ghidra annotations. CLI and MCP interfaces expose the core analysis; deeper control-flow and virtualization modules have separate licensing.","description_zh":"rust-deobf 分析以 Rust 为主的 ELF、PE 和 Mach-O 二进制文件，恢复隐藏字符串及相关信息。工具结合静态调用点分析与 Unicorn 函数仿真，还可识别 Rust 元数据和库函数、处理打包样本并为 Ghidra 添加注释。核心功能提供命令行和 MCP 接口；更深入的控制流及虚拟化模块另有许可。","entry_url":"https://awesomerea.org/resources/rust-deobf/","entry_url_zh":"https://awesomerea.org/zh/resources/rust-deobf/","evidence_url":"https://github.com/VAHPEM/rust-deobf/blob/04a9c4a371cb77635e2eed2c36157af36e058961/README.md","group":"tools","id":"rust-deobf","json_url":"https://awesomerea.org/resources/rust-deobf/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/rust-deobf/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rust-deobf/index.md","name":"rust-deobf","name_zh":"rust-deobf Rust 二进制去混淆工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","scope","license"],"requirements":["Python 3.10 or newer is specified for the core package.","The documented analysis covers x86-64, ARM64 and 32-bit x86 across ELF, PE and Mach-O.","The core is Apache-2.0; premium modules are dual-licensed under AGPL-3.0-or-later or a commercial license."],"requirements_zh":["核心包要求 Python 3.10 或更新版本。","文档列出的分析范围为 ELF、PE 和 Mach-O 中的 x86-64、ARM64 及 32 位 x86。","核心采用 Apache-2.0；premium 模块可选择 AGPL-3.0-or-later 或商业许可证。"],"targets":["binary"],"url":"https://github.com/VAHPEM/rust-deobf","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/ThisFreakDoesntExist/ThisFirmwareDoesNotExist/blob/a97f78a84ac1fcf15f92b435499ce009ba0836ea/docs/README.md"],"category":"firmware","description_en":"ThisFirmwareDoesNotExist maps Arturia MicroFreak firmware 5.0.0.2084 and provides freakpatch to modify a user's official update file. Its notes cover the update format and firmware subsystems, while Ghidra scripts and assembly sources support the documented patch locations.","description_zh":"ThisFirmwareDoesNotExist 分析 Arturia MicroFreak 5.0.0.2084 固件，并用 freakpatch 修改用户自备的官方更新文件。文档记录更新格式与固件子系统，Ghidra 脚本和汇编源码对应具体补丁位置。","entry_url":"https://awesomerea.org/resources/thisfirmwaredoesnotexist/","entry_url_zh":"https://awesomerea.org/zh/resources/thisfirmwaredoesnotexist/","evidence_url":"https://github.com/ThisFreakDoesntExist/ThisFirmwareDoesNotExist/blob/a97f78a84ac1fcf15f92b435499ce009ba0836ea/README.md","group":"tools","id":"thisfirmwaredoesnotexist","json_url":"https://awesomerea.org/resources/thisfirmwaredoesnotexist/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/thisfirmwaredoesnotexist/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/thisfirmwaredoesnotexist/index.md","name":"ThisFirmwareDoesNotExist","name_zh":"ThisFirmwareDoesNotExist MicroFreak 固件分析与补丁工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Python 3.11 or newer and the official MicroFreak 5.0.0.2084 .mff update file are required.","Some MIDI CC assignments may interfere with an untested stock function.","MIT license."],"requirements_zh":["需要 Python 3.11 或更新版本，以及官方 MicroFreak 5.0.0.2084 .mff 更新文件。","部分 MIDI CC 分配可能干扰尚未测试的原厂功能。","采用 MIT 许可证。"],"targets":["firmware"],"url":"https://github.com/ThisFreakDoesntExist/ThisFirmwareDoesNotExist","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/SUNYT772/RE-Workstation/blob/08af66cba3f0451be6b7f065b5b875fd3ef77fb8/knowledge/patterns/README.md"],"category":"learning","description_en":"RE-Workstation is a Chinese reference library for reverse-engineering workflows and related security research. Its topic pages cover native binaries, APKs, firmware, JavaScript, patch diffing and malware analysis, with indexes, evidence templates and pattern references for locating relevant methods.","description_zh":"RE-Workstation 是中文逆向分析与相关安全研究知识库。专题页面涵盖原生二进制、APK、固件、JavaScript、补丁差分和恶意代码分析，并提供索引、证据模板及特征参考，帮助按任务查找方法。","entry_url":"https://awesomerea.org/resources/re-workstation/","entry_url_zh":"https://awesomerea.org/zh/resources/re-workstation/","evidence_url":"https://github.com/SUNYT772/RE-Workstation/blob/08af66cba3f0451be6b7f065b5b875fd3ef77fb8/README.md","group":"learn","id":"re-workstation","json_url":"https://awesomerea.org/resources/re-workstation/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/re-workstation/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/re-workstation/index.md","name":"RE-Workstation","name_zh":"RE-Workstation 逆向分析知识库","record_type":"resource","relationship":"learning","requirement_facets":["prerequisites","scope","license"],"requirements":["The full directory, including SKILL.md, CATALOG.md, knowledge/ and references/, is needed for agent-skill use.","Analysis tools are supplied by the host environment.","Original and newly organized content is GPL-3.0-only; third-party content retains its own terms."],"requirements_zh":["作为智能体技能使用时，需要保留 SKILL.md、CATALOG.md、knowledge/ 和 references/ 等完整目录。","分析工具由宿主环境提供。","原创及新整理内容采用 GPL-3.0-only；第三方内容沿用各自条款。"],"targets":["app","binary","firmware","website"],"url":"https://github.com/SUNYT772/RE-Workstation","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/joppe2001/bf-private-server/blob/f9d0b5a324ecb517e257d8d0c39413840caa851b/docs/ARCHITECTURE.md"],"category":"reconstruction-cases","description_en":"bf-private-server recreates a self-hosted server for Brave Frontier client version 2.19.6. Its C++23 service answers the game's HTTP requests, stores saves in SQLite and works with CDN workers and a patcher for the user's Android client; request tables and boot-flow notes document the protocol investigation. The server builds on an earlier emulator fork.","description_zh":"bf-private-server 为《Brave Frontier》2.19.6 客户端重建可自行部署的服务端。C++23 服务处理游戏 HTTP 请求并以 SQLite 保存进度，配套 CDN Worker 和自有 Android 客户端补丁工具；仓库还记录请求表和启动流程。服务端以较早的模拟器分支为基础。","entry_url":"https://awesomerea.org/resources/bf-private-server-case/","entry_url_zh":"https://awesomerea.org/zh/resources/bf-private-server-case/","evidence_url":"https://github.com/joppe2001/bf-private-server/blob/f9d0b5a324ecb517e257d8d0c39413840caa851b/README.md","group":"cases","id":"bf-private-server-case","json_url":"https://awesomerea.org/resources/bf-private-server-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/bf-private-server-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bf-private-server-case/index.md","name":"bf-private-server: a Brave Frontier revival server","name_zh":"bf-private-server：《Brave Frontier》服务端重建","reconstruction_method":"other","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Git and Docker or a native C++23 toolchain are required for the server.","Game data and a copy of the Android client must be obtained separately.","Some client requests remain unimplemented and return a not-available response.","AGPL-3.0 license."],"requirements_zh":["构建服务端需要 Git 与 Docker，或原生 C++23 工具链。","游戏数据和 Android 客户端须另行取得。","部分客户端请求尚未实现，会返回暂不可用响应。","采用 AGPL-3.0 许可证。"],"targets":["game","protocol"],"url":"https://github.com/joppe2001/bf-private-server","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/jakubwarzecha00/clickwill/blob/194b138f0cf3aa0239e5db532814d0bce5438660/README.md"],"category":"reconstruction-cases","description_en":"Clickwill reconstructs direct editing of iPod classic and iPod nano music libraries in a Swift Mac app. It reads and writes iTunesDB and ArtworkDB on the device, preserves unknown record bytes, handles hash58 signatures and publishes a byte map that distinguishes measured fields from uncertain ones.","description_zh":"Clickwill 以 Swift Mac 应用重建 iPod classic 和 iPod nano 音乐库的直接编辑功能。它读写设备上的 iTunesDB 与 ArtworkDB，保留未知记录字节，处理 hash58 签名，并发布区分实测字段与待确认字段的字节映射。","entry_url":"https://awesomerea.org/resources/clickwill-case/","entry_url_zh":"https://awesomerea.org/zh/resources/clickwill-case/","evidence_url":"https://github.com/jakubwarzecha00/clickwill/blob/194b138f0cf3aa0239e5db532814d0bce5438660/docs/byte-map.md","group":"cases","id":"clickwill-case","json_url":"https://awesomerea.org/resources/clickwill-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/clickwill-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/clickwill-case/index.md","name":"Clickwill: reconstructing iPod library database editing","name_zh":"Clickwill：重建 iPod 音乐库数据库编辑功能","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["macOS 14 or later and an iPod classic or supported iPod nano for normal writing.","Building from source requires Xcode 27 and XcodeGen.","iPod nano third- and fourth-generation editing does not add new artwork until their formats are confirmed; other iPods open read-only by default.","GPL-3.0 license."],"requirements_zh":["正常写入需要 macOS 14 或更新版本，以及 iPod classic 或受支持的 iPod nano。","源码构建需要 Xcode 27 和 XcodeGen。","iPod nano 第三、四代在格式确认前不能添加新封面；其他 iPod 默认以只读方式打开。","采用 GPL-3.0 许可证。"],"targets":["app"],"url":"https://github.com/jakubwarzecha00/clickwill","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/orrpunk-art/virtual-mpc-sample/blob/15f732c71fdd722c924590b9cdec2429f7a1ec2b/docs/MPC_SAMPLE_VIRTUAL_LAB_ARCHITECTURE.md"],"category":"reconstruction-cases","description_en":"Virtual MPC Sample rehosts Akai MPC Sample 1.3.0.12 firmware in QEMU using a custom lab kernel and a browser panel for the device controls. The repository documents firmware and device architecture, emulates the panel's UART communication and provides a shell, tracing and mod testing against the user's own firmware files.","description_zh":"Virtual MPC Sample 使用定制实验内核和浏览器控制面板，在 QEMU 中运行 Akai MPC Sample 1.3.0.12 固件。仓库记录固件及设备架构，模拟面板 UART 通信，并可对用户自备固件进行 shell 检查、跟踪和改装测试。","entry_url":"https://awesomerea.org/resources/virtual-mpc-sample-case/","entry_url_zh":"https://awesomerea.org/zh/resources/virtual-mpc-sample-case/","evidence_url":"https://github.com/orrpunk-art/virtual-mpc-sample/blob/15f732c71fdd722c924590b9cdec2429f7a1ec2b/README.md","group":"cases","id":"virtual-mpc-sample-case","json_url":"https://awesomerea.org/resources/virtual-mpc-sample-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/virtual-mpc-sample-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/virtual-mpc-sample-case/index.md","name":"Virtual MPC Sample: rehosting Akai MPC Sample firmware in QEMU","name_zh":"Virtual MPC Sample：在 QEMU 中运行 Akai MPC Sample 固件","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Requires the user's own MPC Sample 1.3.0.12 firmware partitions; the factory library additionally requires the user's own device.","Requires QEMU 9 or later, Docker for building, Python 3.9 or later and an OpenSSH client.","USB audio, other firmware versions and a Windows test run remain unfinished.","MIT licence, except Linux kernel patches under GPL-2.0."],"requirements_zh":["需要用户自己的 MPC Sample 1.3.0.12 固件分区；使用原厂音色库还需用户自己的设备。","需要 QEMU 9 或更新版本、构建用 Docker、Python 3.9 或更新版本及 OpenSSH 客户端。","USB 音频、其他固件版本和 Windows 实测尚未完成。","主体采用 MIT 许可证，Linux 内核补丁采用 GPL-2.0。"],"targets":["firmware","protocol"],"url":"https://github.com/orrpunk-art/virtual-mpc-sample","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Guillain-RDCDE/OpenJooki/blob/8d302eb5011cd24219f0130b5786c6545989f9fb/README.md"],"category":"reconstruction-cases","description_en":"OpenJooki replaces the Jooki 2 music speaker's embedded Linux core and provides phone-based control, updates and SD-card recovery. Its technical notes map the device's Ingenic Linux and ESP32 split, storage partitions, Mender update slots and recovery behavior, while the repository contains the replacement Lua services and installer tooling.","description_zh":"OpenJooki 替换 Jooki 2 音乐音箱的嵌入式 Linux 核心，提供手机控制、更新与 SD 卡恢复。技术文档记录 Ingenic Linux 与 ESP32 的分工、存储分区、Mender 更新槽及恢复机制；仓库包含替代 Lua 服务和安装工具。","entry_url":"https://awesomerea.org/resources/openjooki-jooki2-case/","entry_url_zh":"https://awesomerea.org/zh/resources/openjooki-jooki2-case/","evidence_url":"https://github.com/Guillain-RDCDE/OpenJooki/blob/8d302eb5011cd24219f0130b5786c6545989f9fb/docs/04-architecture.md","group":"cases","id":"openjooki-jooki2-case","json_url":"https://awesomerea.org/resources/openjooki-jooki2-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/openjooki-jooki2-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/openjooki-jooki2-case/index.md","name":"OpenJooki: replacing the Jooki 2 software and recovery path","name_zh":"OpenJooki：替换 Jooki 2 软件与恢复流程","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","scope","license"],"requirements":["A Jooki 2 device is the target hardware.","The replacement system is installed on the device's SD-card based embedded Linux environment.","MIT license."],"requirements_zh":["目标硬件为 Jooki 2 设备。","替代系统安装在设备基于 SD 卡的嵌入式 Linux 环境中。","MIT 许可证。"],"targets":["firmware"],"url":"https://github.com/Guillain-RDCDE/OpenJooki","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/seuros/intel_ma/blob/372e1a3d5db03a1920a5cf9201b68cd7947cd008/Cargo.toml"],"category":"firmware","description_en":"intel_ma inspects PC management firmware in ME/TXE/CSME region images and full SPI dumps. Its Rust library and CLI parse partition tables, AMD PSP directories, UEFI firmware volumes and FIT records, and report Boot Guard, BIOS Guard and descriptor locks. It can also remove selected Intel ME components and set documented disable flags in an output image.","description_zh":"intel_ma 检查 ME/TXE/CSME 区域镜像和完整 SPI 转储中的 PC 管理固件。其 Rust 库与命令行工具解析分区表、AMD PSP 目录、UEFI 固件卷和 FIT 记录，并报告 Boot Guard、BIOS Guard 及描述符锁定信息。它还可从输出镜像中移除部分 Intel ME 组件并设置禁用标志。","entry_url":"https://awesomerea.org/resources/intel-ma/","entry_url_zh":"https://awesomerea.org/zh/resources/intel-ma/","evidence_url":"https://github.com/seuros/intel_ma/blob/372e1a3d5db03a1920a5cf9201b68cd7947cd008/README.md","group":"tools","id":"intel-ma","json_url":"https://awesomerea.org/resources/intel-ma/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/intel-ma/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/intel-ma/index.md","name":"intel_ma","name_zh":"intel_ma：管理固件分析与修改工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["A compatible firmware region image or full SPI dump is required for image analysis.","The source lists x86_64 Linux and FreeBSD/amd64; live ME probing is Linux only.","AMD PSP support is inspection only.","GPL-3.0-or-later."],"requirements_zh":["镜像分析需要兼容的固件区域镜像或完整 SPI 转储。","项目列出 x86_64 Linux 和 FreeBSD/amd64；实时 ME 探测仅支持 Linux。","AMD PSP 功能仅提供检查。","许可证为 GPL-3.0-or-later。"],"targets":["firmware"],"url":"https://github.com/seuros/intel_ma","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"web-analysis","description_en":"breakinggood captures a website's screenshots, cleaned DOM, computed design values, images, and XHR/fetch responses, then generates a Vite, React, and Tailwind rebuild with a mock API replaying observed JSON. Its CLI and MCP server expose site capture alongside a separate Git repository setup workflow.","description_zh":"breakinggood 采集网站截图、清理后的 DOM、计算得到的设计参数、图片和 XHR/fetch 响应，再生成 Vite、React、Tailwind 重建项目，并用模拟 API 重放观察到的 JSON。命令行和 MCP 服务器也提供独立的 Git 仓库准备功能。","entry_url":"https://awesomerea.org/resources/breakinggood/","entry_url_zh":"https://awesomerea.org/zh/resources/breakinggood/","evidence_url":"https://github.com/eklavya2201/breakinggood/blob/f9f4dc36a272fa93493f096efaa87e9b4ccc17d3/README.md","group":"tools","id":"breakinggood","json_url":"https://awesomerea.org/resources/breakinggood/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/breakinggood/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/breakinggood/index.md","name":"breakinggood","name_zh":"breakinggood 网站采集与重建工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Node 20 or newer and Git; website mode needs an installed Chrome or Edge browser and a configured model provider.","Pages behind logins, strong bot protection, or mostly rendered with canvas/WebGL may capture poorly.","MIT license."],"requirements_zh":["需要 Node 20 或更新版本及 Git；网站模式还需要已安装的 Chrome 或 Edge 浏览器，以及配置好的模型服务。","登录后的页面、强反爬页面或主要由 canvas/WebGL 渲染的页面可能采集不完整。","MIT 许可证。"],"targets":["website"],"url":"https://github.com/eklavya2201/breakinggood","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/OpenLF2/OpenLF2/blob/6942db7cfaddf2e65eb45e4a4d4632120dc968f7/BUILDING.md"],"category":"reconstruction-cases","description_en":"OpenLF2 reimplements Little Fighter 2 v2.0a as a playable C++ and Lua engine. It loads resources from the original game installer and provides local modes, replays, mods and network matches between OpenLF2 players. The author states that gameplay compatibility is still being refined.","description_zh":"OpenLF2 用 C++ 和 Lua 重实现了可玩的《Little Fighter 2》v2.0a 引擎。它从原版游戏安装程序读取资源，支持本地模式、回放、模组及 OpenLF2 玩家之间的联机对战。作者表示仍在改进与原版的玩法兼容性。","entry_url":"https://awesomerea.org/resources/openlf2-case/","entry_url_zh":"https://awesomerea.org/zh/resources/openlf2-case/","evidence_url":"https://github.com/OpenLF2/OpenLF2/blob/6942db7cfaddf2e65eb45e4a4d4632120dc968f7/README.md","group":"cases","id":"openlf2-case","json_url":"https://awesomerea.org/resources/openlf2-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/openlf2-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/openlf2-case/index.md","name":"OpenLF2: a Little Fighter 2 engine reimplementation","name_zh":"OpenLF2：Little Fighter 2 引擎重实现","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["The Little Fighter 2 v2.0a installer is needed for original game data; Flatpak downloads it during installation, while other platforms prompt users to provide a copy.","Building requires CMake 3.25+, Ninja, a C++23 compiler, and the development libraries listed in BUILDING.md.","Gameplay compatibility is still under development; original LF2 network compatibility is unsupported.","MIT license covers OpenLF2 code, scripts and documentation, not the original game assets."],"requirements_zh":["需要《Little Fighter 2》v2.0a 安装程序提供原版游戏数据；Flatpak 在安装时下载该程序，其他平台则提示用户提供副本。","构建需要 CMake 3.25+、Ninja、C++23 编译器，以及 BUILDING.md 所列开发库。","玩法兼容性仍在改进；不支持与原版 LF2 联机。","MIT 许可证适用于 OpenLF2 的代码、脚本和文档，不涵盖原版游戏素材。"],"targets":["game"],"url":"https://github.com/OpenLF2/OpenLF2","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/lumirth/stickwalker/blob/3e6634d19201d2f58507af2d0c479a41b79ad533/assets/README.md"],"category":"reconstruction-cases","description_en":"Stickwalker ports a matching reconstruction of Pokéwalker firmware to the M5Stack Stick S3. The repository includes firmware source, build tooling and placeholder artwork; users can build with artwork extracted from their own ROM, and a BPV10NF photodiode supplies infrared reception.","description_zh":"Stickwalker 将 Pokéwalker 的匹配固件重建成果移植到 M5Stack Stick S3。仓库提供固件源码、构建工具和占位图像；用户可从自有 ROM 提取原版图像参与构建，并通过 BPV10NF 光电二极管接收红外信号。","entry_url":"https://awesomerea.org/resources/stickwalker-case/","entry_url_zh":"https://awesomerea.org/zh/resources/stickwalker-case/","evidence_url":"https://github.com/lumirth/stickwalker/blob/3e6634d19201d2f58507af2d0c479a41b79ad533/README.md","group":"cases","id":"stickwalker-case","json_url":"https://awesomerea.org/resources/stickwalker-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/stickwalker-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/stickwalker-case/index.md","name":"Stickwalker: porting Pokéwalker firmware to the Stick S3","name_zh":"Stickwalker：将 Pokéwalker 固件移植到 Stick S3","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["An M5Stack Stick S3, BPV10NF photodiode and USB-C data cable are specified.","Original graphics require artwork extracted from the user's own ROM; downloads use placeholder artwork.","MIT license."],"requirements_zh":["文档要求 M5Stack Stick S3、BPV10NF 光电二极管和 USB-C 数据线。","原版图像需从用户自有 ROM 提取；下载版使用占位图像。","采用 MIT 许可证。"],"targets":["firmware"],"url":"https://github.com/lumirth/stickwalker","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/rubenthampy890-del/qemu-rtd2841/blob/8d0c64f5a25153c0e44621dc84dd2de0fbf7616b/tests/README.md"],"category":"firmware","description_en":"qemu-rtd2841 adds a Realtek RTD2841/RTK284x TV machine model to QEMU for bare-metal diagnostics and local firmware experiments. Its board profile models AArch32 Cortex-A53 cores, GICv2, timers, SDHCI, Ethernet, UART, and a framebuffer, with diagnostic assembly and a staged test runner.","description_zh":"qemu-rtd2841 为 QEMU 添加 Realtek RTD2841/RTK284x 电视硬件模型，用于裸机诊断和本地固件实验。其板级配置涵盖 AArch32 Cortex-A53、GICv2、定时器、SDHCI、以太网、UART 和帧缓冲，并附汇编诊断程序及分层测试脚本。","entry_url":"https://awesomerea.org/resources/qemu-rtd2841/","entry_url_zh":"https://awesomerea.org/zh/resources/qemu-rtd2841/","evidence_url":"https://github.com/rubenthampy890-del/qemu-rtd2841/blob/8d0c64f5a25153c0e44621dc84dd2de0fbf7616b/README.md","group":"tools","id":"qemu-rtd2841","json_url":"https://awesomerea.org/resources/qemu-rtd2841/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/qemu-rtd2841/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/qemu-rtd2841/index.md","name":"qemu-rtd2841","name_zh":"qemu-rtd2841 Realtek RTD2841 芯片组模拟器","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Build against the pinned QEMU revision with the RTD2841 patch and the documented host toolchain.","Linux boot requires a compatible local RTD2841 zImage and composite eMMC image.","The author reports that public tests cover bare-metal and synthetic storage tiers; full Android init and framework services remain open.","GPL-2.0 license."],"requirements_zh":["需按文档使用指定版本的 QEMU、RTD2841 补丁及主机工具链构建。","启动 Linux 需要用户本地兼容的 RTD2841 zImage 和复合 eMMC 镜像。","作者报告公开测试覆盖裸机和模拟存储层级；完整 Android init 与框架服务尚未完成。","许可证为 GPL-2.0。"],"targets":["firmware"],"url":"https://github.com/rubenthampy890-del/qemu-rtd2841","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/AbdelmonemAwad/os-xgs-npu/blob/d4695512cb4491859a3044a34fc25b9a3ed1e8eb/docs/families/README.md"],"category":"reconstruction-cases","description_en":"os-xgs-npu reconstructs interfaces to Sophos XGS appliance coprocessors through FreeBSD kernel modules and an OPNsense plugin. The work documents undocumented registers, PCIe device families and measured coprocessor behavior to expose front ports and offload firewall flows and IPsec associations.","description_zh":"os-xgs-npu 通过 FreeBSD 内核模块和 OPNsense 插件重建 Sophos XGS 设备的协处理器接口。项目记录未公开寄存器、PCIe 设备系列及实测行为，用于开放前面板端口并卸载防火墙连接和 IPsec 关联。","entry_url":"https://awesomerea.org/resources/os-xgs-npu-case/","entry_url_zh":"https://awesomerea.org/zh/resources/os-xgs-npu-case/","evidence_url":"https://github.com/AbdelmonemAwad/os-xgs-npu/blob/d4695512cb4491859a3044a34fc25b9a3ed1e8eb/README.md","group":"cases","id":"os-xgs-npu-case","json_url":"https://awesomerea.org/resources/os-xgs-npu-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/os-xgs-npu-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/os-xgs-npu-case/index.md","name":"os-xgs-npu: reconstructing Sophos XGS coprocessor interfaces","name_zh":"os-xgs-npu：重建 Sophos XGS 协处理器接口","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["Sophos XGS hardware and a matching OPNsense or FreeBSD environment; kernel modules are built on the appliance.","The author says the project is still being completed; two coprocessor families currently respond.","BSD-2-Clause license."],"requirements_zh":["需要 Sophos XGS 硬件及匹配的 OPNsense 或 FreeBSD 环境；内核模块需在设备上构建。","作者称项目仍在完善，目前已有两个协处理器系列可响应。","BSD-2-Clause 许可证。"],"targets":["protocol"],"url":"https://github.com/AbdelmonemAwad/os-xgs-npu","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/kyryl-bogach/spark-mail-linux/blob/36e74b20b8a8b7f74ae2d386cbf563fddb018276/AGENTS.md"],"category":"reconstruction-cases","description_en":"spark-mail-linux rehosts the Windows Spark Mail desktop app on Linux with Wine, two compatibility DLL shims and launcher scripts. The project documents application startup, browser authentication, notifications, clipboard and file-opening behavior, then patches specific DLL imports and bridges those functions to the Linux desktop.","description_zh":"spark-mail-linux 通过 Wine、两个兼容 DLL 和启动脚本在 Linux 上运行 Windows 版 Spark Mail。项目记录应用启动、浏览器登录、通知、剪贴板及文件打开行为，并通过修改 DLL 导入项和桌面桥接处理这些问题。","entry_url":"https://awesomerea.org/resources/spark-mail-linux-case/","entry_url_zh":"https://awesomerea.org/zh/resources/spark-mail-linux-case/","evidence_url":"https://github.com/kyryl-bogach/spark-mail-linux/blob/36e74b20b8a8b7f74ae2d386cbf563fddb018276/README.md","group":"cases","id":"spark-mail-linux-case","json_url":"https://awesomerea.org/resources/spark-mail-linux-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/spark-mail-linux-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/spark-mail-linux-case/index.md","name":"Spark Mail: rehosting the Windows desktop app on Linux with Wine shims","name_zh":"Spark Mail：借助 Wine 兼容层在 Linux 上运行 Windows 桌面应用","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","testing","license"],"requirements":["An official Windows Spark.exe installer, Wine, and Arch Linux or an Arch-based system as documented.","The author reports that Spark 3.32.2.141404 starts; mail, calendar, attachment and notification delivery checks remain incomplete for that version.","MIT licence."],"requirements_zh":["需要官方 Windows 版 Spark.exe 安装包、Wine，以及文档覆盖的 Arch Linux 或基于 Arch 的发行版。","作者报告 Spark 3.32.2.141404 可以启动；该版本的邮件、日历、附件及通知投递仍缺少完整检查。","采用 MIT 许可证。"],"targets":["app"],"url":"https://github.com/kyryl-bogach/spark-mail-linux","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/MuazTPM-YT/libre-mp/blob/c0fe797ee8697fd75dbf24fc4eadf041ba8e876e/README.md"],"category":"reconstruction-cases","description_en":"LibreMP casts desktop screens to Epson EasyMP projectors using a protocol reconstructed from Windows client packet captures. Its Rust core handles registration and login messages, projector QR decoding, JPEG tile streaming and changed-region updates; a CLI and Tauri interface use the same core. The project documents control on TCP 3620 and video on TCP 3621.","description_zh":"LibreMP 根据 Windows 客户端抓包还原 Epson EasyMP 协议，实现桌面向投影仪投屏。Rust 核心处理注册与登录消息、投影仪二维码解码、JPEG 分块传输及画面变化区域更新；命令行和 Tauri 界面共用该核心。文档记录控制通道使用 TCP 3620，视频通道使用 TCP 3621。","entry_url":"https://awesomerea.org/resources/libremp-easymp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/libremp-easymp-case/","evidence_url":"https://github.com/MuazTPM-YT/libre-mp/blob/c0fe797ee8697fd75dbf24fc4eadf041ba8e876e/docs/NOTES.md","group":"cases","id":"libremp-easymp-case","json_url":"https://awesomerea.org/resources/libremp-easymp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/libremp-easymp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/libremp-easymp-case/index.md","name":"LibreMP: an Epson EasyMP screen caster from packet-capture research","name_zh":"LibreMP：基于抓包研究的 Epson EasyMP 投屏客户端","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["An Epson EasyMP-compatible projector and a supported desktop operating system; building requires Rust, Cargo, Node.js, npm, NASM and CMake.","The keyword-protected login path has not been tried against real hardware; Windows and macOS casting still need hardware testing.","MIT License."],"requirements_zh":["需要兼容 Epson EasyMP 的投影仪及受支持的桌面系统；构建需要 Rust、Cargo、Node.js、npm、NASM 和 CMake。","投影仪关键词保护的登录路径尚未经过实机测试；Windows 和 macOS 投屏也仍待实机验证。","MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/MuazTPM-YT/libre-mp","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/zhameersheraz/cfg-visualizer/blob/76a84f0118f719e86458d2b755fefd1820fd4a40/backend/README.md"],"category":"native-analysis","description_en":"CFG Visualizer extracts function control-flow graphs from ELF, PE and Mach-O binaries with radare2 and presents them in an interactive 3D browser view. Its FastAPI backend returns graph JSON, while the frontend shows branch edges and node disassembly.","description_zh":"CFG Visualizer 借助 radare2 从 ELF、PE 和 Mach-O 文件提取函数控制流图，在浏览器中交互式显示三维节点、分支边及反汇编。FastAPI 后端负责分析并输出图结构 JSON。","entry_url":"https://awesomerea.org/resources/cfg-visualizer/","entry_url_zh":"https://awesomerea.org/zh/resources/cfg-visualizer/","evidence_url":"https://github.com/zhameersheraz/cfg-visualizer/blob/76a84f0118f719e86458d2b755fefd1820fd4a40/README.md","group":"tools","id":"cfg-visualizer","json_url":"https://awesomerea.org/resources/cfg-visualizer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/cfg-visualizer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cfg-visualizer/index.md","name":"CFG Visualizer","name_zh":"CFG Visualizer 三维控制流图查看工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Python 3.10+ and radare2 on PATH are required for local binary analysis.","The public upload service lacks authentication, rate limiting and subprocess sandboxing.","MIT."],"requirements_zh":["本地分析需要 Python 3.10+，且 radare2 位于 PATH 中。","公开上传服务缺少身份验证、速率限制和子进程沙箱。","MIT 许可证。"],"targets":["binary"],"url":"https://github.com/zhameersheraz/cfg-visualizer","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/ripleyXLR8/atlantis-native/blob/6c4820c778597297c9c0bbfe5f2a13b0fe9989f3/Cargo.toml"],"category":"reconstruction-cases","description_en":"Atlantis Native ports the reverse-engineered CryOmni3D Atlantis engine to Rust for Atlantis: The Lost Tales and Atlantis II. It reads files from the user's own game copies and runs their scripts, panoramas, cinematics and puzzles on desktop systems and in browsers, with optional display and bug fixes.","description_zh":"Atlantis Native 把经逆向重建的 CryOmni3D Atlantis 引擎移植到 Rust，支持 Atlantis: The Lost Tales 与 Atlantis II。它读取用户自备游戏文件，在桌面系统和浏览器中运行原有脚本、全景画面、过场动画及谜题，并提供可选的显示改进和错误修复。","entry_url":"https://awesomerea.org/resources/atlantis-native-case/","entry_url_zh":"https://awesomerea.org/zh/resources/atlantis-native-case/","evidence_url":"https://github.com/ripleyXLR8/atlantis-native/blob/6c4820c778597297c9c0bbfe5f2a13b0fe9989f3/README.md","group":"cases","id":"atlantis-native-case","json_url":"https://awesomerea.org/resources/atlantis-native-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/atlantis-native-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/atlantis-native-case/index.md","name":"Atlantis Native: porting the Atlantis and Atlantis II engines to Rust","name_zh":"Atlantis Native：将 Atlantis 与 Atlantis II 引擎移植到 Rust","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","scope","license"],"requirements":["Users supply their own copies of Atlantis: The Lost Tales or Atlantis II; game data is not included.","Desktop builds cover Windows, macOS and Linux; a browser build is also described.","GPL-3.0-or-later license."],"requirements_zh":["用户需自备 Atlantis: The Lost Tales 或 Atlantis II；仓库不含游戏数据。","文档列出 Windows、macOS、Linux 桌面版本及浏览器版本。","采用 GPL-3.0-or-later 许可证。"],"targets":["game"],"url":"https://github.com/ripleyXLR8/atlantis-native","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/emsyscode/lc75826-sony-cdx-a250/blob/8f830424e2997a4879b550980533f6d516cfc67d/docs/protocol.md"],"category":"reconstruction-cases","description_en":"Sony CDX-A250 LCD Panel reconstructs the serial control needed to drive the radio's detachable display independently through its LC75826W driver. Wiring notes, CCB transfer documentation, and an Arduino sketch cover display-data groups, control bits, test patterns, and experimental segment mapping.","description_zh":"Sony CDX-A250 LCD Panel 还原通过 LC75826W 驱动器独立控制汽车收音机可拆卸显示屏所需的串行接口。接线说明、CCB 传输文档和 Arduino 程序涵盖显示数据组、控制位、测试图案及实验性段位映射。","entry_url":"https://awesomerea.org/resources/lc75826-sony-cdx-a250-case/","entry_url_zh":"https://awesomerea.org/zh/resources/lc75826-sony-cdx-a250-case/","evidence_url":"https://github.com/emsyscode/lc75826-sony-cdx-a250/blob/8f830424e2997a4879b550980533f6d516cfc67d/README.md","group":"cases","id":"lc75826-sony-cdx-a250-case","json_url":"https://awesomerea.org/resources/lc75826-sony-cdx-a250-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/lc75826-sony-cdx-a250-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/lc75826-sony-cdx-a250-case/index.md","name":"Sony CDX-A250: reconstructing the LCD panel interface","name_zh":"Sony CDX-A250：还原 LCD 面板接口","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","scope","license"],"requirements":["The documented setup uses a Sony CDX-A250 front panel, an Arduino-compatible board, bench power, a pushbutton, and wiring components.","The project documents the demonstrated panel setup and the LC75826W interface used by its Arduino sketch.","Code is MIT licensed; original documentation and project media are CC BY 4.0."],"requirements_zh":["所述实验使用 Sony CDX-A250 前面板、兼容 Arduino 的开发板、台式电源、按钮及接线元件。","项目记录了所演示的面板配置，以及 Arduino 程序使用的 LC75826W 接口。","代码采用 MIT 许可证；原创文档和项目媒体采用 CC BY 4.0。"],"targets":["protocol"],"url":"https://github.com/emsyscode/lc75826-sony-cdx-a250","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/suffixing/apkscope/blob/e224d4feecfb4e2a631956a239aa752b524b2609/LICENSE"],"category":"android","description_en":"apkscope inspects Android application packages through a Rust viewer, CLI, and MCP server. It decompiles DEX classes into Java, searches code and references, reads manifests and resources, scans URLs and secrets including native libraries, and can export or modify packages.","description_zh":"apkscope 通过 Rust 编写的查看器、命令行和 MCP 服务器分析 Android 应用包。它把 DEX 类反编译为 Java，检索代码与引用，读取清单和资源，扫描包括原生库在内的 URL 与密钥，并支持导出或修改包。","entry_url":"https://awesomerea.org/resources/apkscope/","entry_url_zh":"https://awesomerea.org/zh/resources/apkscope/","evidence_url":"https://github.com/suffixing/apkscope/blob/e224d4feecfb4e2a631956a239aa752b524b2609/README.md","group":"tools","id":"apkscope","json_url":"https://awesomerea.org/resources/apkscope/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/apkscope/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/apkscope/index.md","name":"apkscope","name_zh":"apkscope Android 应用反编译分析工具","record_type":"resource","relationship":"foundation","requirements":["Supply an Android application package such as an APK or XAPK.","Apache-2.0 license."],"requirements_zh":["需要提供 APK 或 XAPK 等 Android 应用包。","采用 Apache-2.0 许可证。"],"targets":["app","binary"],"url":"https://github.com/suffixing/apkscope","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Probler-Yt/MacroPad/blob/2b75543c74727427ea4f3cc1d3c720fbd56fc438/README.md"],"category":"reconstruction-cases","description_en":"MacroPad reconstructs the USB HID configuration exchange of a 12-key, two-knob macropad identified as 1189:8840 and implements it in a Linux GUI. The author documents capturing MINI_KEYBOARD.exe traffic with usbmon, decoding configuration and commit reports, and replaying captured packets in tests.","description_zh":"MacroPad 重建了 USB ID 为 1189:8840 的 12 键双旋钮宏键盘的 HID 配置交互，并提供 Linux 图形客户端。作者记录了用 usbmon 抓取 MINI_KEYBOARD.exe 流量、解析配置与提交报告，以及在测试中重放抓包数据的过程。","entry_url":"https://awesomerea.org/resources/macropad-usb-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/macropad-usb-protocol-case/","evidence_url":"https://github.com/Probler-Yt/MacroPad/blob/2b75543c74727427ea4f3cc1d3c720fbd56fc438/docs/protocol.md","group":"cases","id":"macropad-usb-protocol-case","json_url":"https://awesomerea.org/resources/macropad-usb-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/macropad-usb-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/macropad-usb-protocol-case/index.md","name":"MacroPad: reconstructing a USB macropad configuration protocol","name_zh":"MacroPad：重建 USB 宏键盘配置协议","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["Linux, Python 3.9+ and the 1189:8840 macropad are documented for the supported configuration path.","Other pad IDs are reported as unsupported until their layout and protocol are added.","GPL-3.0 license."],"requirements_zh":["受支持的配置方式需要 Linux、Python 3.9 及以上和 USB ID 为 1189:8840 的宏键盘。","其他设备 ID 在布局和协议加入前会被标为不支持。","GPL-3.0 许可证。"],"targets":["protocol"],"url":"https://github.com/Probler-Yt/MacroPad","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/sKuhLight/monix/blob/121a1f5aeee197a6b1fa5bdd78db20840111db21/README.md","https://github.com/sKuhLight/monix/blob/121a1f5aeee197a6b1fa5bdd78db20840111db21/re/README.md"],"category":"reconstruction-cases","description_en":"Monix implements Linux mixer control for Audient iD USB audio interfaces through a companion kernel module, protocol library and GUI. Its protocol documentation maps USB control requests from official-app captures and macOS binary analysis, covering routing, faders, metering and device profiles.","description_zh":"Monix 通过配套内核模块、协议库和图形界面为 Audient iD USB 声卡实现 Linux 混音控制。协议文档依据厂商应用的 USB 抓包及 macOS 二进制分析，整理路由、推子、电平表和设备配置的控制请求。","entry_url":"https://awesomerea.org/resources/monix-audient-id-case/","entry_url_zh":"https://awesomerea.org/zh/resources/monix-audient-id-case/","evidence_url":"https://github.com/sKuhLight/monix/blob/121a1f5aeee197a6b1fa5bdd78db20840111db21/docs/PROTOCOL.md","group":"cases","id":"monix-audient-id-case","json_url":"https://awesomerea.org/resources/monix-audient-id-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/monix-audient-id-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/monix-audient-id-case/index.md","name":"Monix: reconstructing Audient iD USB mixer control on Linux","name_zh":"Monix：在 Linux 上重建 Audient iD USB 混音器控制","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Requires Linux kernel 5.9 or newer and an Audient iD-series interface.","Building requires a C++17 toolchain, CMake 3.16 or newer, kernel headers, ALSA, GLFW and OpenGL development packages.","The author reports hardware testing on iD24; other models have limited or unconfirmed routing support.","MIT license."],"requirements_zh":["需要 Linux 5.9 或更新内核及 Audient iD 系列声卡。","构建需要 C++17 工具链、CMake 3.16 或更新版本、内核头文件，以及 ALSA、GLFW 和 OpenGL 开发包。","作者报告仅在 iD24 上完成硬件测试；其他型号的路由支持有限或尚未确认。","采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/sKuhLight/monix","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/bipinkrish/sf2recomp/blob/e7ba03aaaa8394e4beda15eb8b321c8a01621e3f/Makefile"],"category":"reconstruction-cases","description_en":"SF2Recomp converts a user's Shadow Fight 2 Nintendo Switch game files into native builds for Linux, Windows, macOS, and Android. Its converter combines translated game code with a runtime and user-supplied assets, adding controls, graphics options, sparring, and LAN play.","description_zh":"SF2Recomp 将用户提供的 Nintendo Switch 版《Shadow Fight 2》游戏文件转换为 Linux、Windows、macOS 和 Android 原生版本。转换器将重编译代码、运行时与用户素材结合，并加入控制设置、画面选项、对战练习及局域网联机。","entry_url":"https://awesomerea.org/resources/sf2recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sf2recomp-case/","evidence_url":"https://github.com/bipinkrish/sf2recomp/blob/e7ba03aaaa8394e4beda15eb8b321c8a01621e3f/README.md","group":"cases","id":"sf2recomp-case","json_url":"https://awesomerea.org/resources/sf2recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sf2recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sf2recomp-case/index.md","name":"SF2Recomp: statically recompiling Shadow Fight 2 for native platforms","name_zh":"SF2Recomp：将《Shadow Fight 2》静态重编译到原生平台","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Supply a combined base plus v1.1.0/update v131072 NSP with sidecars and prod.keys, or already extracted updated game files.","A Vulkan 1.3 compatible GPU and driver are required; platform version requirements vary.","macOS Apple Silicon support is experimental, with gameplay and GPU validation pending.","Project code is MIT licensed; dependencies and the project icon have separate terms."],"requirements_zh":["需自行提供包含基础版与 v1.1.0/update v131072 的合并 NSP、配套文件及 prod.keys，或已提取的更新版游戏文件。","需要兼容 Vulkan 1.3 的 GPU 和驱动；各平台另有版本要求。","macOS Apple Silicon 支持仍属实验阶段，游戏过程和 GPU 验证尚未完成。","项目代码采用 MIT 许可证；依赖和项目图标另有许可条款。"],"targets":["game"],"url":"https://github.com/bipinkrish/sf2recomp","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/desperado0044/xiaomi-scooter-link/blob/46c3e4c0cbf5e802cd6965dd18f0fc1e0177f9b8/docs/RESEARCH_LOG.md"],"category":"reconstruction-cases","description_en":"Scooter Link implements an Android client for Xiaomi Electric Scooter 5 Pro and 5 Max using a reconstructed BLE authentication protocol. Its research log covers GATT characteristics and investigation of the ECDH P-256, HKDF-SHA256, and AES-CCM exchange; the app reads ride and battery data and controls supported settings.","description_zh":"Scooter Link 使用还原的 BLE 认证协议，为 Xiaomi Electric Scooter 5 Pro 和 5 Max 提供 Android 客户端。研究日志记录 GATT 特征及 ECDH P-256、HKDF-SHA256、AES-CCM 交互的调查；应用可读取骑行、电池数据并控制受支持的设置。","entry_url":"https://awesomerea.org/resources/scooter-link-case/","entry_url_zh":"https://awesomerea.org/zh/resources/scooter-link-case/","evidence_url":"https://github.com/desperado0044/xiaomi-scooter-link/blob/46c3e4c0cbf5e802cd6965dd18f0fc1e0177f9b8/README.md","group":"cases","id":"scooter-link-case","json_url":"https://awesomerea.org/resources/scooter-link-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/scooter-link-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/scooter-link-case/index.md","name":"Scooter Link: a Xiaomi scooter client built from BLE protocol research","name_zh":"Scooter Link：基于 BLE 协议研究的小米滑板车客户端","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["Android and a supported Xiaomi Electric Scooter; the author reports testing the 5 Pro and 5 Max.","Other listed models have experimental read-only support or remain untested.","PolyForm Noncommercial License 1.0.0."],"requirements_zh":["需要 Android 设备及受支持的小米电动滑板车；作者报告已在 5 Pro 和 5 Max 上测试。","其他列出的型号仅获实验性只读支持，或尚未测试。","PolyForm Noncommercial License 1.0.0 许可证。"],"targets":["protocol"],"url":"https://github.com/desperado0044/xiaomi-scooter-link","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/danielcamposramos/sony-bravia-linux/blob/b5e616ee01f1486d52a2b1d3317415605f538bf1/docs/README.md"],"category":"reconstruction-cases","description_en":"sony-bravia-linux investigates the Linux-based, pre-Android Sony BRAVIA platform and reconstructs selected media and portal behavior for owner-run services. Its documentation records observations from 2011–2012 AZ1, AZ2 and AZ3 sets, including remote input, browser media handling and 3D signalling. The repository also contains tools for H.264 3D SEI and related media workflows.","description_zh":"sony-bravia-linux 调查基于 Linux 的前 Android 时代 Sony BRAVIA 平台，并为用户自建服务还原部分媒体和门户行为。文档记录了 2011 至 2012 年 AZ1、AZ2、AZ3 系列电视的遥控输入、浏览器媒体处理和 3D 信号表现；仓库也提供处理 H.264 3D SEI 等媒体流程的工具。","entry_url":"https://awesomerea.org/resources/sony-bravia-linux-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sony-bravia-linux-case/","evidence_url":"https://github.com/danielcamposramos/sony-bravia-linux/blob/b5e616ee01f1486d52a2b1d3317415605f538bf1/README.md","group":"cases","id":"sony-bravia-linux-case","json_url":"https://awesomerea.org/resources/sony-bravia-linux-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sony-bravia-linux-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sony-bravia-linux-case/index.md","name":"sony-bravia-linux: pre-Android BRAVIA platform and media behavior","name_zh":"sony-bravia-linux：前 Android 时代 BRAVIA 平台与媒体行为调查","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","testing","license"],"requirements":["The documented platform scope is 2011–2012 pre-Android Sony BRAVIA AZ1, AZ2 and AZ3 chassis families.","The author reports testing media behavior on two owned TVs.","The main LICENSE file is GPL-2.0; the README also identifies separate licences for parts of the repository."],"requirements_zh":["文档适用范围为 2011 至 2012 年前 Android 时代的 Sony BRAVIA AZ1、AZ2、AZ3 机芯系列。","作者报告在两台自有电视上测试了媒体行为。","仓库主 LICENSE 文件为 GPL-2.0；README 还注明部分内容另有许可证。"],"targets":["firmware"],"url":"https://github.com/danielcamposramos/sony-bravia-linux","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"game-analysis","description_en":"dfsdk dumps Delta Force object metadata by enumerating its object array, decoding per-entry XOR-encrypted names and walking class super chains and property lists. The README documents name-pool addressing, pointer masking, selected field offsets and example output.","description_zh":"dfsdk 遍历 Delta Force 对象数组，解码逐条 XOR 加密的名称，并沿类继承链和属性列表导出对象元数据。README 记录了名称池寻址、指针掩码、部分字段偏移和示例输出。","entry_url":"https://awesomerea.org/resources/dfsdk/","entry_url_zh":"https://awesomerea.org/zh/resources/dfsdk/","evidence_url":"https://github.com/3r4y/dfsdk/blob/eb9745d390cdffa4e1490bb132242cd8a8e33c53/README.md","group":"tools","id":"dfsdk","json_url":"https://awesomerea.org/resources/dfsdk/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dfsdk/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dfsdk/index.md","name":"dfsdk","name_zh":"dfsdk Delta Force 对象结构导出器","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","scope","license"],"requirements":["A Delta Force process with the documented object and name-pool layout is the target input.","The documented offsets are specific to the investigated layout.","No licence file in the repository."],"requirements_zh":["目标输入是具有文档所述对象和名称池布局的 Delta Force 进程。","文档中的偏移适用于所研究的特定布局。","仓库中没有许可证文件。"],"targets":["game"],"url":"https://github.com/3r4y/dfsdk","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/verzic/sb-ae9/blob/cbfef7e0de0b90915793715d13ba5b6c79cd5ea9/README.md","https://github.com/verzic/sb-ae9/blob/cbfef7e0de0b90915793715d13ba5b6c79cd5ea9/docs/reverse-engineering/ctxhdb-analysis.md"],"category":"reconstruction-cases","description_en":"Sound Blaster AE-9 Linux support reconstructs card and Audio Control Module behavior using static analysis of Creative's Windows drivers and hardware observations. The included investigations document CtxHda.sys, CtxHdb.sys, and the ACM's SysEx-framed UART protocol; the driver implements selected playback and controls.","description_zh":"Sound Blaster AE-9 的 Linux 支持项目通过静态分析 Creative Windows 驱动并观察硬件行为，重建声卡及 Audio Control Module 的部分控制逻辑。仓库记录 CtxHda.sys、CtxHdb.sys 和 ACM 的 SysEx 帧 UART 协议，驱动实现了部分播放与控制功能。","entry_url":"https://awesomerea.org/resources/sb-ae9-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sb-ae9-case/","evidence_url":"https://github.com/verzic/sb-ae9/blob/cbfef7e0de0b90915793715d13ba5b6c79cd5ea9/docs/reverse-engineering/ctxhda-acm-analysis.md","group":"cases","id":"sb-ae9-case","json_url":"https://awesomerea.org/resources/sb-ae9-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sb-ae9-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sb-ae9-case/index.md","name":"Sound Blaster AE-9: reconstructing Linux control from Windows driver analysis","name_zh":"Sound Blaster AE-9：通过 Windows 驱动分析重建 Linux 控制","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Linux kernel 6.17 or newer, headers, DKMS, build tools, PipeWire, and WirePlumber are specified.","A Creative driver package is needed to extract a DSP firmware segment locally.","The author reports support for 7 of 16 listed features across the card and Audio Control Module; recording is disabled because opening capture hard-locked the test machine.","GPL-2.0 license."],"requirements_zh":["文档要求 Linux 内核 6.17 或更新版本，以及内核头文件、DKMS、构建工具、PipeWire 和 WirePlumber。","需要在本地从 Creative 驱动包提取一段 DSP 固件。","作者报告声卡和音频控制模块合计 16 项功能中有 7 项获支持；测试机器在打开录音设备时死机，因此录音已禁用。","采用 GPL-2.0 许可证。"],"targets":["binary","protocol"],"url":"https://github.com/verzic/sb-ae9","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/coreprime/kbot/blob/0ab97bfd2633983ba276a3e67ceb76eac95731ff/docs/formats/README.md"],"category":"game-analysis","description_en":"KBot inspects and transforms Total Annihilation and TA: Kingdoms game files, pairing a Go CLI with a proprietary format reference. It decompiles COB bytecode to BOS source, disassembles scripts, checks round trips and examines formats including HPI archives, GAF sprites, TNT maps and 3DO models.","description_zh":"KBot 将 Go 命令行工具与专有格式参考文档结合，用于检查和转换《Total Annihilation》及《TA: Kingdoms》的游戏文件。它把 COB 字节码反编译成 BOS、反汇编脚本并检查往返转换，还分析 HPI 归档、GAF 精灵、TNT 地图和 3DO 模型等格式。","entry_url":"https://awesomerea.org/resources/kbot/","entry_url_zh":"https://awesomerea.org/zh/resources/kbot/","evidence_url":"https://github.com/coreprime/kbot/blob/0ab97bfd2633983ba276a3e67ceb76eac95731ff/README.md","group":"tools","id":"kbot","json_url":"https://awesomerea.org/resources/kbot/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/kbot/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/kbot/index.md","name":"KBot","name_zh":"KBot《Total Annihilation》文件格式与脚本分析工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["Go is needed to install or build the CLI.","Asset inspection requires files from Total Annihilation or TA: Kingdoms; an installed game can provide them.","MIT license."],"requirements_zh":["安装或构建命令行工具需要 Go。","检查游戏资产需要《Total Annihilation》或《TA: Kingdoms》的文件；游戏安装目录可提供这些文件。","采用 MIT 许可证。"],"targets":["game"],"url":"https://github.com/coreprime/kbot","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/xaionaro-go/thermalmaster/blob/4a52a1fa82fbd996a57b02a19ea6d4a4472d21b8/README.md"],"category":"reconstruction-cases","description_en":"thermalmaster implements a Go USB client for ThermalMaster P3 and P1 thermal cameras using documented VDCMD control transfers. It captures PNG frames, streams thermal and IR video to Linux v4l2loopback, and records USB command framing and model identifiers for interoperability.","description_zh":"thermalmaster 根据所记录的 VDCMD USB 控制传输，为 ThermalMaster P3 和 P1 热像仪实现 Go 客户端。它可抓取 PNG 画面，并向 Linux v4l2loopback 输出热成像和红外视频；协议文档列出 USB 命令格式与设备型号标识。","entry_url":"https://awesomerea.org/resources/thermalmaster-case/","entry_url_zh":"https://awesomerea.org/zh/resources/thermalmaster-case/","evidence_url":"https://github.com/xaionaro-go/thermalmaster/blob/4a52a1fa82fbd996a57b02a19ea6d4a4472d21b8/doc/reverse-engineering.md","group":"cases","id":"thermalmaster-case","json_url":"https://awesomerea.org/resources/thermalmaster-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/thermalmaster-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/thermalmaster-case/index.md","name":"thermalmaster: a Go client for ThermalMaster camera USB commands","name_zh":"thermalmaster：ThermalMaster 热像仪 USB 协议的 Go 客户端","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["A ThermalMaster P3 or P1 camera, a C toolchain, pkg-config and libusb development files.","Linux with v4l2loopback is required for video streaming; USB permissions must be configured.","CC0-1.0 license."],"requirements_zh":["需要 ThermalMaster P3 或 P1 热像仪、C 工具链、pkg-config 和 libusb 开发文件。","视频推流需要 Linux 与 v4l2loopback，并须配置 USB 访问权限。","采用 CC0-1.0 许可。"],"targets":["protocol"],"url":"https://github.com/xaionaro-go/thermalmaster","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/MetaMikuAI/Cpp2CS/blob/c1acd6b652bb00c68c7187640c76159ccde521f1/docs/%E6%9E%B6%E6%9E%84.md"],"category":"native-analysis","description_en":"Cpp2CS recovers managed methods from Android ARM64 Unity IL2CPP ELF binaries and matching metadata, emitting CIL assemblies, C# source and per-method diagnostics. Its pipeline models machine IR, IL2CPP runtime idioms, memory SSA and type recovery while marking unresolved portions.","description_zh":"Cpp2CS 从 Android ARM64 Unity IL2CPP ELF 二进制文件和匹配元数据中恢复托管方法，输出 CIL 程序集、C# 源码及逐方法诊断。其流程建模机器 IR、运行时惯用法、内存 SSA 和类型，并标记未恢复部分。","entry_url":"https://awesomerea.org/resources/cpp2cs/","entry_url_zh":"https://awesomerea.org/zh/resources/cpp2cs/","evidence_url":"https://github.com/MetaMikuAI/Cpp2CS/blob/c1acd6b652bb00c68c7187640c76159ccde521f1/README.md","group":"tools","id":"cpp2cs","json_url":"https://awesomerea.org/resources/cpp2cs/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/cpp2cs/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cpp2cs/index.md","name":"Cpp2CS","name_zh":"Cpp2CS IL2CPP 托管代码恢复工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","scope","limits","license"],"requirements":[".NET 10 SDK, the Il2CppDumper submodule, and a matching binary and metadata pair.","Recovery is modeled for Android ARM64 ELF, Unity 2022.3.62f2 and metadata v31.","Generated project files do not establish that the source compiles or runs.","MIT license."],"requirements_zh":["需要 .NET 10 SDK、Il2CppDumper 子模块，以及相互匹配的二进制文件和元数据。","恢复模型针对 Android ARM64 ELF、Unity 2022.3.62f2 和元数据 v31。","生成项目文件并不表示源码可编译或可运行。","MIT 许可证。"],"targets":["binary"],"url":"https://github.com/MetaMikuAI/Cpp2CS","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"ghidra-c6000 adds Texas Instruments C64x, C67x and C674x DSP support to Ghidra 12.x. Its SLEIGH languages decode full-width and compact instructions, supply p-code for decompilation, and add C6000 calling conventions and packet-aware analyzers for ELF or raw images.","description_zh":"ghidra-c6000 为 Ghidra 12.x 增加德州仪器 C64x、C67x 和 C674x DSP 支持。其 SLEIGH 语言解码完整及紧凑指令，提供反编译所需的 p-code，并为 ELF 或原始镜像加入 C6000 调用约定和指令包分析器。","entry_url":"https://awesomerea.org/resources/ghidra-c6000/","entry_url_zh":"https://awesomerea.org/zh/resources/ghidra-c6000/","evidence_url":"https://github.com/geepot/ghidra-c6000/blob/6cf197eb6602dfa9812a888cb0ea23f5862f4f46/README.md","group":"tools","id":"ghidra-c6000","json_url":"https://awesomerea.org/resources/ghidra-c6000/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ghidra-c6000/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghidra-c6000/index.md","name":"ghidra-c6000","name_zh":"ghidra-c6000 TI C6000 DSP 分析扩展","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Requires a matching Ghidra 12.x build and its declared JDK: JDK 21 for Ghidra 12.0 or 12.1, JDK 25 for 12.2.","Raw images require a chosen base address and entry point.","C66x-specific instructions and complete C66x ISA support are absent.","Apache-2.0 license."],"requirements_zh":["需要对应版本的 Ghidra 12.x 及其指定 JDK：Ghidra 12.0 或 12.1 使用 JDK 21，12.2 使用 JDK 25。","导入原始镜像时需要指定基址和入口点。","尚不支持 C66x 专有指令及完整 C66x 指令集。","采用 Apache-2.0 许可证。"],"targets":["binary"],"url":"https://github.com/geepot/ghidra-c6000","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/FarhamAghdasi/sheypoor-mcp/blob/5f544185ed9c84797f683e3e1ab36fe3e8ae7146/README.md","https://github.com/FarhamAghdasi/sheypoor-mcp/blob/5f544185ed9c84797f683e3e1ab36fe3e8ae7146/document/authentication.md"],"category":"reconstruction-cases","description_en":"Sheypoor MCP implements a client and MCP server for the Sheypoor classifieds site using API behavior documented from browser traffic. Its reference records observed endpoints, request headers, cookies and phone-based login. The server exposes listing search and details, account functions, chat room lists and unread message counts to MCP clients.","description_zh":"Sheypoor MCP 根据浏览器流量记录的接口行为，为 Sheypoor 分类信息网站实现客户端和 MCP 服务器。其文档列出已观察到的接口、请求头、Cookie 和手机短信验证码登录流程。服务器向 MCP 客户端提供信息搜索与详情、账户功能，以及聊天会话列表和未读消息数。","entry_url":"https://awesomerea.org/resources/sheypoor-mcp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sheypoor-mcp-case/","evidence_url":"https://github.com/FarhamAghdasi/sheypoor-mcp/blob/5f544185ed9c84797f683e3e1ab36fe3e8ae7146/document/api-reference.md","group":"cases","id":"sheypoor-mcp-case","json_url":"https://awesomerea.org/resources/sheypoor-mcp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sheypoor-mcp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sheypoor-mcp-case/index.md","name":"Sheypoor MCP: mapping marketplace APIs from browser traffic","name_zh":"Sheypoor MCP：从浏览器流量还原分类信息网站接口","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["Node.js 20.11+ is indicated for the MCP server.","Account features require Sheypoor phone and SMS authentication.","MIT License."],"requirements_zh":["MCP 服务需要 Node.js 20.11 及以上版本。","账户功能需要通过 Sheypoor 手机短信认证。","采用 MIT 许可证。"],"targets":["website"],"url":"https://github.com/FarhamAghdasi/sheypoor-mcp","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/dnhkng/open-rknpu/blob/0e0afcd1b00058255590bf19d644e12bea13af38/docs/architecture.md"],"category":"reconstruction-cases","description_en":"open-rknpu reconstructs a task-program interface for the Rockchip RV1103/RV1106 NPU from board experiments and black-box comparisons. Its Python compiler emits register commands, weight and quantization blocks, and a container for bounded static ONNX convolution graphs; a C runtime submits them through /dev/rknpu. Research files document register and numerical findings.","description_zh":"open-rknpu 通过板卡实验和黑盒对照还原 Rockchip RV1103/RV1106 NPU 的任务程序接口。Python 编译器为限定范围内的静态 ONNX 卷积图生成寄存器命令、权重与量化数据块及容器文件；C 运行时经 /dev/rknpu 提交任务。研究文件记录了寄存器和数值行为。","entry_url":"https://awesomerea.org/resources/open-rknpu-case/","entry_url_zh":"https://awesomerea.org/zh/resources/open-rknpu-case/","evidence_url":"https://github.com/dnhkng/open-rknpu/blob/0e0afcd1b00058255590bf19d644e12bea13af38/README.md","group":"cases","id":"open-rknpu-case","json_url":"https://awesomerea.org/resources/open-rknpu-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/open-rknpu-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/open-rknpu-case/index.md","name":"open-rknpu: Rockchip NPU task-program reconstruction","name_zh":"open-rknpu：Rockchip NPU 任务程序还原","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","scope","license"],"requirements":["Host compilation needs Python, NumPy and ONNX; hardware runs need a compatible board and cross toolchain.","The reference board is a Luckfox Pico Mini B with the shared RV1106 NPU IP and driver v0.8.2.","Dynamic shapes, LSTM/GRU, 1-D convolution, MatMul/Gemm and multi-stage detection heads are outside the documented scope.","MIT license for the compiler, runtime, tests, examples and documentation."],"requirements_zh":["主机端编译需要 Python、NumPy 和 ONNX；硬件运行需要兼容板卡及交叉工具链。","参考板卡为搭载共用 RV1106 NPU IP、驱动版本 v0.8.2 的 Luckfox Pico Mini B。","动态形状、LSTM/GRU、一维卷积、MatMul/Gemm 和多阶段检测头不在文档所述范围内。","编译器、运行时、测试、示例和文档采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/dnhkng/open-rknpu","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Gui-Tora/dmc-recomp/blob/dea53cc65ae47dad870bebd2e387f8af698cc97a/CMakeLists.txt"],"category":"reconstruction-cases","description_en":"dmc-recomp translates the PlayStation 2 PAL release of Devil May Cry into native PC code through PS2Recomp and a project runtime. Its pipeline rebuilds generated code locally from the user’s own game executable, while research notes and patches track boot, CD services, MPEG playback, rendering and gameplay behavior.","description_zh":"dmc-recomp 借助 PS2Recomp 和项目运行时，将 PAL 欧版 PlayStation 2 游戏 Devil May Cry 转换为 PC 原生代码。其流水线从用户自行提供的游戏可执行文件在本地生成代码，研究笔记和补丁记录启动、光盘服务、MPEG 播放、渲染及游戏流程的分析。","entry_url":"https://awesomerea.org/resources/dmc-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/dmc-recomp-case/","evidence_url":"https://github.com/Gui-Tora/dmc-recomp/blob/dea53cc65ae47dad870bebd2e387f8af698cc97a/README.md","group":"cases","id":"dmc-recomp-case","json_url":"https://awesomerea.org/resources/dmc-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/dmc-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dmc-recomp-case/index.md","name":"Devil May Cry: an experimental PS2 static recompilation","name_zh":"Devil May Cry：实验性的 PS2 静态重编译","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["A user-supplied copy of the PAL Europe Devil May Cry version 1.02 executable or disc image.","PS2Recomp at the pinned upstream commit and the documented build toolchain.","The source describes the port as experimental, with incomplete rendering and gameplay.","GPL-3.0 licence."],"requirements_zh":["需要用户自行提供 PAL 欧版 Devil May Cry 1.02 的可执行文件或光盘镜像。","需要固定版本的 PS2Recomp 和文档指定的构建工具链。","文档将移植版标为实验阶段，渲染和游戏流程尚未完成。","采用 GPL-3.0 许可证。"],"targets":["game"],"url":"https://github.com/Gui-Tora/dmc-recomp","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/pjthulin/hardsid4u/blob/539fdb2d0b9b1a721fa344c6d4300cf34911e654/docs/protocol.md","https://github.com/pjthulin/hardsid4u/blob/539fdb2d0b9b1a721fa344c6d4300cf34911e654/captures/README.md"],"category":"reconstruction-cases","description_en":"hardsid4u reconstructs the HardSID 4U USB protocol and implements a libusb Python driver for its SID-chip sockets. The investigation combines vendor-binary analysis, USB captures, and hardware probes to document command framing, initialization, register writes, timing, and flow control; a MIDI instrument uses the driver.","description_zh":"hardsid4u 还原 HardSID 4U 的 USB 协议，并用 libusb 实现控制 SID 芯片插槽的 Python 驱动。研究结合厂商二进制分析、USB 抓包和硬件探测，记录报文封装、初始化、寄存器写入、时序及流量控制；MIDI 乐器建立在该驱动之上。","entry_url":"https://awesomerea.org/resources/hardsid4u-case/","entry_url_zh":"https://awesomerea.org/zh/resources/hardsid4u-case/","evidence_url":"https://github.com/pjthulin/hardsid4u/blob/539fdb2d0b9b1a721fa344c6d4300cf34911e654/README.md","group":"cases","id":"hardsid4u-case","json_url":"https://awesomerea.org/resources/hardsid4u-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/hardsid4u-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hardsid4u-case/index.md","name":"hardsid4u: reconstructing the HardSID 4U USB protocol","name_zh":"hardsid4u：还原 HardSID 4U USB 协议","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["A HardSID 4U device is needed for hardware use; the core driver requires Python 3.9+, libusb1, and libusb.","MIDI output additionally uses python-rtmidi and CoreMIDI as documented.","The author reports that a stalled device may require a physical power cycle; isochronous mode and SID file playback are unused or absent.","MIT license."],"requirements_zh":["实际控制硬件需要 HardSID 4U；核心驱动需要 Python 3.9+、libusb1 和 libusb。","文档中的 MIDI 输出还需 python-rtmidi 和 CoreMIDI。","作者报告设备停滞时可能需要物理断电重启；等时传输模式未使用，也没有 SID 文件播放器。","许可证为 MIT。"],"targets":["protocol"],"url":"https://github.com/pjthulin/hardsid4u","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"firmware","description_en":"MS4X analyzes Siemens MS42 and MS43 engine-control firmware for BMW M52TU and M54 engines. Its Python tools disassemble and assemble C166 instructions and inspect image checksums, stock-code differences and TunerPro patchlists; companion documents cover memory maps and findings in the factory programs.","description_zh":"MS4X 分析 BMW M52TU、M54 发动机所用 Siemens MS42/MS43 控制单元固件。Python 工具负责 C166 反汇编与汇编，并检查镜像校验和、原厂代码差异及 TunerPro 补丁列表；文档记录内存映射和原厂程序发现。","entry_url":"https://awesomerea.org/resources/ms4x/","entry_url_zh":"https://awesomerea.org/zh/resources/ms4x/","evidence_url":"https://github.com/therudywolf/MS4X/blob/ac5e4cddbfc7afce3d30b598bbeaee759ad3f31c/README.md","group":"tools","id":"ms4x","json_url":"https://awesomerea.org/resources/ms4x/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ms4x/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ms4x/index.md","name":"MS4X","name_zh":"MS4X Siemens 发动机控制单元逆向工具与文档","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Python 3 and a user-supplied MS42 or MS43 image.","New material is paused; the author says error reports are still addressed.","Code is Apache-2.0; documents and data are CC BY-SA 4.0."],"requirements_zh":["需要 Python 3 和用户提供的 MS42 或 MS43 镜像。","新内容已暂停；作者表示仍处理错误报告。","代码采用 Apache-2.0，文档与数据采用 CC BY-SA 4.0。"],"targets":["firmware"],"url":"https://github.com/therudywolf/MS4X","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"ZCode-Android recreates ZCode remote control on Android from captured traffic and analysis of its official web page. Its Kotlin client implements WebSocket relay, HMAC pairing, IPC encoding, fragmented RPC frames and Conversation V4 session messages.","description_zh":"ZCode-Android 根据官方远程控制网页的抓包与逆向结果，在 Android 上重建 ZCode 会话控制。Kotlin 客户端实现 WebSocket 中继、HMAC 配对、IPC 编解码、RPC 分片帧和 Conversation V4 会话消息。","entry_url":"https://awesomerea.org/resources/zcode-android-case/","entry_url_zh":"https://awesomerea.org/zh/resources/zcode-android-case/","evidence_url":"https://github.com/Damianjiang/ZCode-Android/blob/6b04daceafaa1d025994a3b44273fe74423da7d4/README.md","group":"cases","id":"zcode-android-case","json_url":"https://awesomerea.org/resources/zcode-android-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/zcode-android-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/zcode-android-case/index.md","name":"ZCode-Android: reconstructing the ZCode remote-control client","name_zh":"ZCode-Android：重建 ZCode 远程控制客户端","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Android 12+ on arm64-v8a and a desktop ZCode pairing link are required.","Building requires JDK 17 and Android SDK 35.","Changes to the official web protocol may break the client.","The README declares an MIT licence."],"requirements_zh":["需要 arm64-v8a 架构的 Android 12+ 设备和桌面端 ZCode 配对链接。","构建需要 JDK 17 和 Android SDK 35。","官方网页协议更新可能导致客户端失效。","README 声明采用 MIT 许可证。"],"targets":["app","protocol","website"],"url":"https://github.com/Damianjiang/ZCode-Android","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/aklto/PyEilik/blob/b1bf7ea6f29b939cddee66ffadd498ad32d02aa0/PROTOCOL.md"],"category":"reconstruction-cases","description_en":"PyEilik implements control of an Eilik desk robot over a recovered USB serial protocol. Its C library and Python wrapper move four servos, read and update the 128×64 display, and play video with synchronized movement. The protocol reference documents 125000-baud framing, command IDs, checksums and acknowledgements.","description_zh":"PyEilik 基于恢复出的 USB 串行协议控制 Eilik 桌面机器人。C 库与 Python 封装可驱动四个舵机、读取和更新 128×64 屏幕，并在视频播放时同步动作。协议文档记录了 125000 波特率、帧结构、命令号、校验和及应答。","entry_url":"https://awesomerea.org/resources/pyeilik-case/","entry_url_zh":"https://awesomerea.org/zh/resources/pyeilik-case/","evidence_url":"https://github.com/aklto/PyEilik/blob/b1bf7ea6f29b939cddee66ffadd498ad32d02aa0/README.md","group":"cases","id":"pyeilik-case","json_url":"https://awesomerea.org/resources/pyeilik-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/pyeilik-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pyeilik-case/index.md","name":"PyEilik: a client for the Eilik robot's USB protocol","name_zh":"PyEilik：Eilik 机器人的 USB 协议客户端","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["macOS and Python 3.9 or newer are required; the serial link uses an Apple-specific ioctl for 125000 baud.","Video playback requires ffmpeg on PATH; PNG display requires the image extra.","The robot's speaker cannot receive audio through the documented protocol.","MIT license."],"requirements_zh":["需要 macOS 和 Python 3.9 或更新版本；125000 波特率串口依赖 Apple 专用 ioctl。","播放视频需要 PATH 中的 ffmpeg；显示 PNG 需要安装 image 扩展依赖。","文档所述协议无法向机器人的扬声器发送音频。","采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/aklto/PyEilik","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Sigfrodr/libfprint-goodixtls/blob/bdf2f7ece115005fc625e3a16950c80140f4946a/tools/eval/README.md"],"category":"reconstruction-cases","description_en":"libfprint-goodixtls reconstructs communication with the Goodix GXFP5187 SPI fingerprint sensor in the Huawei MateBook X Pro as a libfprint TOD driver. It reads a PSK from sensor RAM, establishes the sensor's TLS-PSK channel, decodes captured images, and uses local descriptors for host-side matching. The author reports enrolment and verification through fprintd and GNOME Settings; detailed reverse-engineering notes are kept outside the repository.","description_zh":"libfprint-goodixtls 为 Huawei MateBook X Pro 的 Goodix GXFP5187 SPI 指纹传感器实现 libfprint TOD 驱动。它从传感器内存读取 PSK，建立 TLS-PSK 通道，解码采集图像，并用局部特征描述子在主机端匹配。作者报告可通过 fprintd 和 GNOME 设置录入、验证指纹；详细的逆向研究笔记另行保存，未收入仓库。","entry_url":"https://awesomerea.org/resources/libfprint-goodixtls-case/","entry_url_zh":"https://awesomerea.org/zh/resources/libfprint-goodixtls-case/","evidence_url":"https://github.com/Sigfrodr/libfprint-goodixtls/blob/bdf2f7ece115005fc625e3a16950c80140f4946a/README.md","group":"cases","id":"libfprint-goodixtls-case","json_url":"https://awesomerea.org/resources/libfprint-goodixtls-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/libfprint-goodixtls-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/libfprint-goodixtls-case/index.md","name":"libfprint-goodixtls: a reconstructed Goodix GXFP5187 fingerprint driver","name_zh":"libfprint-goodixtls：还原 Goodix GXFP5187 指纹驱动","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","scope","testing","license"],"requirements":["Goodix GXFP5187 sensor on the Huawei MateBook X Pro MACH-WX9, with a usable spidev node.","The detailed protocol-frame and matching-engine notes are kept separately from the repository.","Matcher error rates in the README are author-reported results from the described capture sets.","LGPL-2.1 License."],"requirements_zh":["需要 Huawei MateBook X Pro MACH-WX9 上的 Goodix GXFP5187 传感器及可用的 spidev 节点。","详细的协议帧和匹配引擎研究笔记另行保存，未收入仓库。","README 中的匹配错误率是作者基于所述采集样本报告的结果。","LGPL-2.1 许可证。"],"targets":["protocol"],"url":"https://github.com/Sigfrodr/libfprint-goodixtls","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/maks421400-lgtm/Walksnail-Ascent-VRX-UART/blob/9e4be3eb0032f17dd53e7a2e6de99b7917b71ab5/tests/README.md"],"category":"protocol-analysis","description_en":"Walksnail Ascent VRX UART Protocol documents serial control messages for Walksnail video receivers and supplies a C reference transmitter with an STM32 example. It specifies framing, payload checksums, remote keys, channel selection and status queries, while recording contradictions and unknown reply layouts.","description_zh":"Walksnail Ascent VRX UART Protocol 记录 Walksnail 视频接收机的串口控制消息，并提供 C 语言发送实现和 STM32 示例。资料涵盖帧结构、校验和、按键、频道选择与状态查询，同时标明来源中的矛盾和未知回复格式。","entry_url":"https://awesomerea.org/resources/walksnail-ascent-vrx-uart/","entry_url_zh":"https://awesomerea.org/zh/resources/walksnail-ascent-vrx-uart/","evidence_url":"https://github.com/maks421400-lgtm/Walksnail-Ascent-VRX-UART/blob/9e4be3eb0032f17dd53e7a2e6de99b7917b71ab5/README.md","group":"learn","id":"walksnail-ascent-vrx-uart","json_url":"https://awesomerea.org/resources/walksnail-ascent-vrx-uart/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/walksnail-ascent-vrx-uart/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/walksnail-ascent-vrx-uart/index.md","name":"Walksnail Ascent VRX UART Protocol","name_zh":"Walksnail Ascent VRX UART 协议资料","record_type":"resource","relationship":"learning","requirement_facets":["prerequisites","limits","testing","license"],"requirements":["A Walksnail VRX and a controller with a compatible UART interface for hardware use.","The library limits payloads to 64 bytes; baud rate, electrical levels and pinout need hardware confirmation.","TX examples are tested against supplied documentation; RX telemetry layout and device behavior remain unresolved.","MIT license."],"requirements_zh":["实际连接需要 Walksnail VRX 和具备兼容 UART 接口的控制器。","库将载荷限制为 64 字节；波特率、电平和引脚仍需在目标硬件上确认。","发送报文示例按所述文档测试；接收遥测格式和设备行为仍未确定。","MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/maks421400-lgtm/Walksnail-Ascent-VRX-UART","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"Sin & Punishment: Recompiled uses N64Recomp and RSPRecomp to build an experimental native C++ port from a user-supplied Japanese N64 ROM and the repository's symbol maps, with RT64 rendering. The author reports that it reaches the title screen; menu navigation, gameplay, audio validation, and a public pipeline for its patched working image remain unfinished.","description_zh":"Sin & Punishment: Recompiled 使用 N64Recomp 和 RSPRecomp，基于用户提供的日版 N64 ROM 及仓库中的符号映射构建原生 C++ 移植程序，并通过 RT64 渲染。作者报告程序已进入标题画面；菜单导航、游戏流程、音频验证，以及补丁工作镜像的公开生成流程仍待完成。","entry_url":"https://awesomerea.org/resources/sin-punishment-recompiled-case/","entry_url_zh":"https://awesomerea.org/zh/resources/sin-punishment-recompiled-case/","evidence_url":"https://github.com/maximilianoide/sin-punishment-recompiled/blob/8c31a07009464a0f285fb40e252789393bd101b1/README.md","group":"cases","id":"sin-punishment-recompiled-case","json_url":"https://awesomerea.org/resources/sin-punishment-recompiled-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/sin-punishment-recompiled-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sin-punishment-recompiled-case/index.md","name":"Sin & Punishment: a work-in-progress N64 static recompilation","name_zh":"Sin & Punishment：开发中的 N64 静态重编译移植","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["A legally obtained Japanese Sin & Punishment ROM, Python 3, the pinned submodules, and the platform build toolchain described in the README.","The current recompilation configuration also expects a patched working image whose preparation pipeline is absent from the public repository.","No licence file in the repository."],"requirements_zh":["需要合法取得的日版 Sin & Punishment ROM、Python 3、固定版本的子模块，以及 README 所述的平台构建工具链。","当前重编译配置还需要补丁工作镜像，但公开仓库没有其生成流程。","仓库中没有许可证文件。"],"targets":["game"],"url":"https://github.com/maximilianoide/sin-punishment-recompiled","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"scvk reconstructs SimCity 4's renderer interface as a native Vulkan DLL loaded through the game's GZCOM plugin system. It claims existing renderer class IDs and emulates the cIGZGDriver fixed-function API with pipeline state and shaders for terrain, buildings, lighting, textures and interface drawing.","description_zh":"scvk 通过 SimCity 4 的 GZCOM 插件系统加载原生 Vulkan DLL，以替换游戏渲染器。它使用已有的渲染器类 ID，并通过管线状态和着色器模拟 cIGZGDriver 固定功能接口，绘制地形、建筑、光照、纹理和界面。","entry_url":"https://awesomerea.org/resources/scvk-case/","entry_url_zh":"https://awesomerea.org/zh/resources/scvk-case/","evidence_url":"https://github.com/aspctt/scvk/blob/5827705ac9f9dcb08ecf1c5989153c616aba5462/README.md","group":"cases","id":"scvk-case","json_url":"https://awesomerea.org/resources/scvk-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/scvk-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/scvk-case/index.md","name":"scvk: replacing SimCity 4's renderer with Vulkan","name_zh":"scvk：以 Vulkan 替换 SimCity 4 渲染器","reconstruction_method":"other","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["SimCity 4 with the documented GZCOM plugin interface and Vulkan-capable graphics hardware.","SCGL cannot be installed concurrently because it claims the same renderer class ID; Intel graphics are untested.","LGPL-2.1-or-later license."],"requirements_zh":["需要具有文中所述 GZCOM 插件接口的 SimCity 4，以及支持 Vulkan 的显卡。","SCGL 使用相同的渲染器类 ID，不能同时安装；Intel 显卡尚未测试。","采用 LGPL-2.1 或更新版本许可证。"],"targets":["game"],"url":"https://github.com/aspctt/scvk","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/ShoelessTim/RazerStream/blob/3d762a19394b5e830d9dcb66675d435596f19df8/PROTOCOL.md"],"category":"reconstruction-cases","description_en":"RazerStream replaces the retired control software for the Razer Stream Controller with a macOS app, Swift protocol library and CLI. Its documented device protocol runs over a USB serial port, performs a WebSocket upgrade, then exchanges framed commands and input events. The app configures touchscreen tiles, knobs, buttons and LEDs.","description_zh":"RazerStream 用 macOS 应用、Swift 协议库和命令行工具替代 Razer Stream Controller 已停用的控制软件。文档记录设备通过 USB 串口完成 WebSocket 升级，再交换封装的命令与输入事件；应用可配置触摸屏按键、旋钮、实体按钮和 LED。","entry_url":"https://awesomerea.org/resources/razerstream-case/","entry_url_zh":"https://awesomerea.org/zh/resources/razerstream-case/","evidence_url":"https://github.com/ShoelessTim/RazerStream/blob/3d762a19394b5e830d9dcb66675d435596f19df8/README.md","group":"cases","id":"razerstream-case","json_url":"https://awesomerea.org/resources/razerstream-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/razerstream-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/razerstream-case/index.md","name":"RazerStream: reconstructing Stream Controller device control","name_zh":"RazerStream：重建 Stream Controller 设备控制功能","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["macOS 14 or newer and a Razer Stream Controller with USB VID 0x1532 and PID 0x0D06.","Xcode 16 or newer to build from source; Accessibility permission is needed for keystroke and media-key actions.","The app targets macOS only.","MIT license."],"requirements_zh":["需要 macOS 14 或更新版本，以及 USB VID 为 0x1532、PID 为 0x0D06 的 Razer Stream Controller。","源码构建需要 Xcode 16 或更新版本；按键与媒体键操作需要辅助功能权限。","应用目前仅面向 macOS。","MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/ShoelessTim/RazerStream","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/jvspier/dabplayplus/blob/f9355864b9a452d00813f08e3453a1249736e89a/docs/findings.md"],"category":"reconstruction-cases","description_en":"DABplay+ implements an Android DAB radio using a reverse-engineered USB dongle protocol. It drives the DTR-100 family directly, decodes broadcast data and audio, and documents additional dongle protocols alongside hardware findings and tests.","description_zh":"DABplay+ 借助逆向得到的 USB 接收器协议实现 Android DAB 收音机，可直接控制 DTR-100 系列设备并解码广播数据与音频。仓库还记录其他接收器协议、硬件发现和测试。","entry_url":"https://awesomerea.org/resources/dabplayplus-case/","entry_url_zh":"https://awesomerea.org/zh/resources/dabplayplus-case/","evidence_url":"https://github.com/jvspier/dabplayplus/blob/f9355864b9a452d00813f08e3453a1249736e89a/README.md","group":"cases","id":"dabplayplus-case","json_url":"https://awesomerea.org/resources/dabplayplus-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/dabplayplus-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dabplayplus-case/index.md","name":"DABplay+: reconstructing USB DAB+ dongle control","name_zh":"DABplay+：重建 USB DAB+ 接收器控制协议","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","testing","license"],"requirements":["Android 8+ and a supported USB DAB+ dongle are required.","Building requires JDK 25 and the Android SDK.","Only the first listed dongle family has been tested on real hardware; several on-air features remain unconfirmed.","MIT."],"requirements_zh":["需要 Android 8+ 和受支持的 USB DAB+ 接收器。","构建需要 JDK 25 和 Android SDK。","仅列表中的第一类接收器经过实体硬件测试；部分广播场景功能尚未实测。","MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/jvspier/dabplayplus","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/macintog/t2-platform-research/blob/423d2b056b69764876097818b3efc74319a7f944/docs/platform/research-coverage.md"],"category":"firmware","description_en":"T2 platform research maps Apple T2 firmware, hardware and Linux-facing interfaces using static analysis, hardware observations and driver comparisons. Its chapters cover Secure Enclave services, boot and recovery, graphics, audio, sensors, storage and other subsystems. Machine-readable findings and board indexes connect claims to their evidence, with Python reference code for selected message formats.","description_zh":"T2 platform research 通过静态分析、硬件观察和驱动比对，整理 Apple T2 的固件、硬件及 Linux 所需接口。研究章节覆盖 Secure Enclave 服务、启动与恢复、图形、音频、传感器和存储等子系统。机器可读的研究发现和主板索引将结论与证据关联，并标明适用范围；仓库还提供部分消息格式的 Python 参考代码。","entry_url":"https://awesomerea.org/resources/t2-platform-research/","entry_url_zh":"https://awesomerea.org/zh/resources/t2-platform-research/","evidence_url":"https://github.com/macintog/t2-platform-research/blob/423d2b056b69764876097818b3efc74319a7f944/README.md","group":"learn","id":"t2-platform-research","json_url":"https://awesomerea.org/resources/t2-platform-research/record.json","kind":"research","markdown_url":"https://awesomerea.org/resources/t2-platform-research/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/t2-platform-research/index.md","name":"T2 platform research","name_zh":"T2 platform research Apple T2 平台研究","record_type":"resource","relationship":"learning","requirement_facets":["scope","scope","limits","license"],"requirements":["The main firmware inventory covers bridgeOS 23P6068 across 16 production configurations.","Most host observations concern MacBookPro16,1 / J152fAP; other board and firmware claims have separate scope.","The reference code does not provide a driver or fingerprint service.","MIT license."],"requirements_zh":["主要固件清单覆盖 bridgeOS 23P6068 的 16 种量产配置。","多数主机侧观察来自 MacBookPro16,1 / J152fAP；其他机型和固件结论另有限定范围。","参考代码不提供驱动或指纹服务。","MIT 许可证。"],"targets":["firmware","protocol"],"url":"https://github.com/macintog/t2-platform-research","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/dimer47/PocketPrinter5890/blob/20118975f6e58d5910657d7ba3daa62c3e5edae9/docs/PROTOCOL_SPEC.md"],"category":"reconstruction-cases","description_en":"PocketPrinter5890 reconstructs the BLE printing protocol of Lidl's Tronic, SILVERCREST, and Parkside model 5890 pocket printers. Its specification documents activation writes, flow-control credits, and raster bands; Swift, Kotlin, and TypeScript libraries implement printing for Apple devices, Android, and browsers.","description_zh":"PocketPrinter5890 重建了 Lidl Tronic、SILVERCREST 和 Parkside 5890 型便携热敏打印机的 BLE 打印协议。协议文档记录激活写入、流控额度和分段光栅传输；Swift、Kotlin、TypeScript 库分别面向 Apple 设备、Android 和浏览器。","entry_url":"https://awesomerea.org/resources/pocketprinter5890-case/","entry_url_zh":"https://awesomerea.org/zh/resources/pocketprinter5890-case/","evidence_url":"https://github.com/dimer47/PocketPrinter5890/blob/20118975f6e58d5910657d7ba3daa62c3e5edae9/README.md","group":"cases","id":"pocketprinter5890-case","json_url":"https://awesomerea.org/resources/pocketprinter5890-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/pocketprinter5890-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pocketprinter5890-case/index.md","name":"PocketPrinter5890: reconstructing the Lidl 5890 printer protocol","name_zh":"PocketPrinter5890：重建 Lidl 5890 打印机协议","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","prerequisites","limits","license"],"requirements":["The documented reference device is model A2Y with firmware V1.06LY; other revisions may differ.","The browser demo requires Web Bluetooth in Chrome, Edge, or Opera.","Firmware updating is not implemented, and roughly twenty transcribed commands were not executed on the reference firmware.","MIT license."],"requirements_zh":["文档所依据的设备为 A2Y 型、固件 V1.06LY；其他版本可能存在差异。","浏览器演示需要 Chrome、Edge 或 Opera 的 Web Bluetooth 支持。","未实现固件更新；约二十条转录命令尚未在参考固件上执行。","采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/dimer47/PocketPrinter5890","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/MikeWuPing/UEFI_Salamander/blob/56160dc0587b8729d0cf731c7fff0e7ad2581eb3/SalamanderPkg/Generated/readme.md","https://github.com/MikeWuPing/UEFI_Salamander/blob/56160dc0587b8729d0cf731c7fff0e7ad2581eb3/docs/fidelity-checklist.md"],"category":"reconstruction-cases","description_en":"Salamander UEFI ports the NES game Salamander to a native UEFI Shell application by translating its 6502 disassembly into a platform-independent C core. The repository includes a 6502 disassembler, a user-ROM resource extractor, host tests and a fidelity checklist. UEFI GOP, input and timing services replace the original console environment.","description_zh":"Salamander UEFI 将红白机游戏《沙罗曼蛇》的 6502 反汇编翻译成平台无关的 C 核心，移植为原生 UEFI Shell 应用。仓库提供 6502 反汇编器、基于用户自有 ROM 的资源提取器、宿主机测试和保真清单，以 UEFI GOP、输入和定时服务替代原主机环境。","entry_url":"https://awesomerea.org/resources/salamander-uefi-case/","entry_url_zh":"https://awesomerea.org/zh/resources/salamander-uefi-case/","evidence_url":"https://github.com/MikeWuPing/UEFI_Salamander/blob/56160dc0587b8729d0cf731c7fff0e7ad2581eb3/README_en.md","group":"cases","id":"salamander-uefi-case","json_url":"https://awesomerea.org/resources/salamander-uefi-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/salamander-uefi-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/salamander-uefi-case/index.md","name":"Salamander UEFI: a disassembly-based UEFI port of the NES game","name_zh":"Salamander UEFI：《沙罗曼蛇》的反汇编驱动 UEFI 移植","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["A legally held Salamander NES ROM is required to generate game-resource headers.","Building requires Windows, Visual Studio 2019, EDK2 and Python 3.10 or newer; QEMU/OVMF is used for emulated runs.","The app has no audio, and the source lists score display and some boss sprite differences.","No licence file in the repository."],"requirements_zh":["生成游戏资源头文件需要合法持有的《沙罗曼蛇》NES ROM。","构建需要 Windows、Visual Studio 2019、EDK2 和 Python 3.10 或更新版本；模拟运行使用 QEMU/OVMF。","应用没有音频，文档列出分数显示及部分 Boss 精灵的差异。","仓库中没有许可证文件。"],"targets":["game"],"url":"https://github.com/MikeWuPing/UEFI_Salamander","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"cocos2d-dumper extracts defined function symbols from ELF shared libraries and demangles C++ names with GNU binutils. It produces a map of ELF symbol values and names for inspecting unstripped cocos2d-x binaries and other native libraries.","description_zh":"cocos2d-dumper 使用 GNU binutils 从 ELF 共享库提取已定义的函数符号，并对 C++ 名称进行反修饰。它生成 ELF 符号表值与名称的对应表，可用于检查未剥离符号的 cocos2d-x 二进制文件及其他原生库。","entry_url":"https://awesomerea.org/resources/cocos2d-dumper/","entry_url_zh":"https://awesomerea.org/zh/resources/cocos2d-dumper/","evidence_url":"https://github.com/d1xus/cocos2d-dumper/blob/c53f57c2063a11c9be35aba453d2537ed8a1f093/README.md","group":"tools","id":"cocos2d-dumper","json_url":"https://awesomerea.org/resources/cocos2d-dumper/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/cocos2d-dumper/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cocos2d-dumper/index.md","name":"cocos2d-dumper","name_zh":"cocos2d-dumper ELF 函数符号提取工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Python 3.9 or newer and GNU binutils readelf and c++filt are required.","Unstripped libraries provide the usable function symbols described by the tool.","MIT license."],"requirements_zh":["需要 Python 3.9 或更新版本，以及 GNU binutils 中的 readelf 和 c++filt。","工具所述的可用函数符号来自未剥离符号的库。","MIT 许可证。"],"targets":["binary"],"url":"https://github.com/d1xus/cocos2d-dumper","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"Binary Ninja Security Analysis Plugin batches binary analysis from a Rust plugin and exports Parquet reports. It records architecture, hashes, functions, strings, segments, cyclomatic complexity, entropy and references to selected process-execution functions.","description_zh":"Binary Ninja Security Analysis Plugin 是用 Rust 编写的批量二进制分析插件，输出 Parquet 报告。报告包含架构、哈希、函数、字符串、段、圈复杂度、熵，以及指向指定进程执行函数的交叉引用。","entry_url":"https://awesomerea.org/resources/binary-ninja-security-analysis-plugin/","entry_url_zh":"https://awesomerea.org/zh/resources/binary-ninja-security-analysis-plugin/","evidence_url":"https://github.com/meerkatone/rust_binary_analysis/blob/5abf11b7b6d12c23a3e1cd19b01137c8a209fbea/README.md","group":"tools","id":"binary-ninja-security-analysis-plugin","json_url":"https://awesomerea.org/resources/binary-ninja-security-analysis-plugin/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/binary-ninja-security-analysis-plugin/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binary-ninja-security-analysis-plugin/index.md","name":"Binary Ninja Security Analysis Plugin","name_zh":"Binary Ninja Security Analysis Plugin 二进制分析插件","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","testing","license"],"requirements":["Requires Binary Ninja, a stable Rust toolchain and Binary Ninja API development headers.","The author reports testing the rebuilt command in Binary Ninja Personal 6.1.10951-dev.","MIT License."],"requirements_zh":["需要 Binary Ninja、稳定版 Rust 工具链和 Binary Ninja API 开发头文件。","作者称在 Binary Ninja Personal 6.1.10951-dev 中测试了重新构建的命令。","MIT 许可证。"],"targets":["binary"],"url":"https://github.com/meerkatone/rust_binary_analysis","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Netizen-alt/NWBinAnalyzer/blob/02186511f5b9560566d52f3450ff82f91e624315/docs/binary-format.md"],"category":"javascript-electron","description_en":"NWBinAnalyzer inspects compiled NW.js .bin files by checking their header and walking constant-pool entries. Its Python code extracts UTF-8, null-terminated and length-prefixed strings, then groups findings such as API names, paths, URLs and cryptographic terms.","description_zh":"NWBinAnalyzer 检查 NW.js 编译后的 .bin 文件头并遍历常量池条目。其 Python 程序提取 UTF-8、空终止及带长度前缀的字符串，再按 API 名称、路径、URL 和密码学术语等类别整理。","entry_url":"https://awesomerea.org/resources/nwbinanalyzer/","entry_url_zh":"https://awesomerea.org/zh/resources/nwbinanalyzer/","evidence_url":"https://github.com/Netizen-alt/NWBinAnalyzer/blob/02186511f5b9560566d52f3450ff82f91e624315/README.md","group":"tools","id":"nwbinanalyzer","json_url":"https://awesomerea.org/resources/nwbinanalyzer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/nwbinanalyzer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/nwbinanalyzer/index.md","name":"NWBinAnalyzer","name_zh":"NWBinAnalyzer NW.js 二进制分析器","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Python 3.6+; the author says the tool uses only the standard library.","The author states that it shows constant-pool strings and does not fully decompile V8 bytecode.","No licence file in the repository."],"requirements_zh":["需要 Python 3.6+；作者称程序只使用标准库。","作者说明它只显示常量池字符串，不能完整反编译 V8 字节码。","仓库中没有许可证文件。"],"targets":["app"],"url":"https://github.com/Netizen-alt/NWBinAnalyzer","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"This parking-sensor investigation reconstructs the signal sent from a kit's controller to its display. Oscilloscope observations and tests with different sensor states identify fields in roughly 48-bit frames for sensor address, connection and proximity. A PlatformIO example for ATmega328P reads and reports the parsed frames.","description_zh":"该倒车雷达研究重建控制板向显示器发送的信号。作者结合示波器观察与不同传感器状态测试，在约 48 位的帧中定位传感器地址、连接状态和接近程度标志，并提供基于 ATmega328P 的 PlatformIO 解析示例。","entry_url":"https://awesomerea.org/resources/parking-sensor-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/parking-sensor-protocol-case/","evidence_url":"https://github.com/kunkka-project/re_parking_sensor_protocol/blob/ecd40b705217db9ba33c9c2cdfd56f4f5ce2c668/README.md","group":"cases","id":"parking-sensor-protocol-case","json_url":"https://awesomerea.org/resources/parking-sensor-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/parking-sensor-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/parking-sensor-protocol-case/index.md","name":"Parking sensor kit: reconstructing its display protocol","name_zh":"Parking sensor kit：倒车雷达显示协议重建","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","prerequisites","license"],"requirements":["The example targets an ATmega328P microcontroller and a compatible parking-sensor kit.","Controller electronics vary across similar kits, so the code may need changes.","Check signal voltage before connecting a microcontroller; the documented unit exceeded 5 V.","No licence file in the repository."],"requirements_zh":["示例程序面向 ATmega328P 微控制器和兼容的倒车雷达套件。","外观相似的套件可能使用不同电路，代码可能需要调整。","连接微控制器前须检查信号电压；文中的设备信号超过 5 V。","仓库中没有许可证文件。"],"targets":["protocol"],"url":"https://github.com/kunkka-project/re_parking_sensor_protocol","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/mjbommar/glaurung-models/blob/1819020f447d55f55b629b78ba96502edae71715/SSE_AVX_ANALYSIS.md"],"category":"native-analysis","description_en":"Glaurung Models contains tokenizer and model experiments for executable analysis. Its documented 64K BPE tokenizer encodes compiled PE and ELF bytes using Latin-1, with x86 and ARM64 training coverage; an accompanying analysis compares learned SSE and AVX instruction patterns across two tokenizers.","description_zh":"Glaurung Models 收录面向可执行文件分析的分词器与模型实验。其 64K BPE 分词器以 Latin-1 编码 PE 和 ELF 字节，训练范围涵盖 x86 与 ARM64；附带分析比较了两个分词器学到的 SSE 和 AVX 指令模式。","entry_url":"https://awesomerea.org/resources/glaurung-models/","entry_url_zh":"https://awesomerea.org/zh/resources/glaurung-models/","evidence_url":"https://github.com/mjbommar/glaurung-models/blob/1819020f447d55f55b629b78ba96502edae71715/glaurung_binary_tokenizer_001_README.md","group":"learn","id":"glaurung-models","json_url":"https://awesomerea.org/resources/glaurung-models/record.json","kind":"research","markdown_url":"https://awesomerea.org/resources/glaurung-models/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/glaurung-models/index.md","name":"Glaurung Models","name_zh":"Glaurung Models 可执行文件分词模型研究","record_type":"resource","relationship":"learning","requirement_facets":["prerequisites","testing","license"],"requirements":["The documented tokenizer workflow uses the tokenizers and transformers Python packages and Latin-1 conversion of binary bytes.","The document reports an average of 2.849 bytes per token for the 64K tokenizer.","No licence file in the repository."],"requirements_zh":["文档中的分词流程使用 Python 的 tokenizers 和 transformers 包，并将二进制字节转换为 Latin-1。","文档报告该 64K 分词器平均每个 token 对应 2.849 字节。","仓库中没有许可证文件。"],"targets":["binary"],"url":"https://github.com/mjbommar/glaurung-models","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/bbayszczak/pyhaseiq/blob/e7bb8ce2f9350099d8c8a97daeffdb8c26d02f46/README.md"],"category":"reconstruction-cases","description_en":"pyhaseiq reconstructs the local WebSocket protocol of Hase iQ wood stoves used with the flamemonitor app and implements an asynchronous read-only Python client. The specification records base64-encoded request and response frames, serial dialogue and observation status for each finding; the client reads combustion phase, temperature and performance.","description_zh":"pyhaseiq 复原与 flamemonitor 应用配套的旧款 Hase iQ 木炉本地 WebSocket 协议，并实现异步、只读的 Python 客户端。协议文档记录 base64 编码的请求与应答、串行交互及各项结论的证据状态；客户端读取燃烧阶段、温度和性能数值。","entry_url":"https://awesomerea.org/resources/pyhaseiq-case/","entry_url_zh":"https://awesomerea.org/zh/resources/pyhaseiq-case/","evidence_url":"https://github.com/bbayszczak/pyhaseiq/blob/e7bb8ce2f9350099d8c8a97daeffdb8c26d02f46/docs/SPEC-WS-PROTOCOL.md","group":"cases","id":"pyhaseiq-case","json_url":"https://awesomerea.org/resources/pyhaseiq-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/pyhaseiq-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pyhaseiq-case/index.md","name":"pyhaseiq: reconstructing the older Hase iQ stove's WebSocket protocol","name_zh":"pyhaseiq：复原旧款 Hase iQ 炉具的 WebSocket 协议","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","scope","license"],"requirements":["Python 3.13 or newer and a supported flamemonitor-generation Hase iQ stove on the local network.","The newer HASE iQ app generation is unsupported; the API is described as alpha.","The library implements no write commands.","MIT license."],"requirements_zh":["需要 Python 3.13 或更新版本，以及局域网内与 flamemonitor 配套的旧款 Hase iQ 炉具。","不支持配套新版 HASE iQ 应用的炉具；API 仍处于 alpha 阶段。","该库不实现写入命令。","MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/bbayszczak/pyhaseiq","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/ghostware0x00/CrackMes/blob/dea5860826334360ac9f97bdbfab1f444e6be67c/Linux/X86X64/CC%2B%2B/1.0/Plain%20Sight/Writeup.md"],"category":"learning","description_en":"CrackMes is a set of walkthroughs for purpose-built crackme binaries from crackmes.one. The supplied Linux x86-64 examples identify ELF executables, inspect program disassembly, use breakpoints and runtime observations, and explain how candidate input is checked.","description_zh":"CrackMes 收录 crackmes.one 专用逆向练习程序的解析文章。 Linux x86-64 示例识别 ELF 可执行文件、检查反汇编、使用断点和运行时观察，并说明输入值的校验过程。","entry_url":"https://awesomerea.org/resources/crackmes-writeups/","entry_url_zh":"https://awesomerea.org/zh/resources/crackmes-writeups/","evidence_url":"https://github.com/ghostware0x00/CrackMes/blob/dea5860826334360ac9f97bdbfab1f444e6be67c/Linux/X86X64/CC%2B%2B/2.0/good%20kitty/Writeup.md","group":"learn","id":"crackmes-writeups","json_url":"https://awesomerea.org/resources/crackmes-writeups/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/crackmes-writeups/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/crackmes-writeups/index.md","name":"CrackMes","name_zh":"CrackMes 二进制逆向练习题解析","record_type":"resource","relationship":"learning","requirement_facets":["prerequisites","license"],"requirements":["The covered examples use Linux x86-64 crackme binaries obtained separately from crackmes.one.","No licence file in the repository."],"requirements_zh":["所展示的练习使用需另行从 crackmes.one 获取的 Linux x86-64 crackme 二进制文件。","仓库中没有许可证文件。"],"targets":["binary"],"url":"https://github.com/ghostware0x00/CrackMes","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"Human-Readable Decompilation restructures C produced by Ghidra's binary decompiler using an ANTLR parser and AST transformations. It recovers switches from conditional chains, introduces guard clauses, flattens nested branches and simplifies selected expressions. A GUI can launch Ghidra headlessly before transformation, while a CLI handles existing C output.","description_zh":"Human-Readable Decompilation 使用 ANTLR 解析 Ghidra 从二进制文件反编译得到的 C 代码，并进行 AST 转换。功能包括从条件链恢复 switch、引入卫语句、压平嵌套分支及简化部分表达式；图形界面可先启动 Ghidra 无头分析，命令行也能处理已有 C 文件。","entry_url":"https://awesomerea.org/resources/human-readable-decompilation/","entry_url_zh":"https://awesomerea.org/zh/resources/human-readable-decompilation/","evidence_url":"https://github.com/aaronwb/human-readable-decompilation/blob/1cde62db2e3c941ea1ba6dfea67394124704fc58/README.md","group":"tools","id":"human-readable-decompilation","json_url":"https://awesomerea.org/resources/human-readable-decompilation/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/human-readable-decompilation/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/human-readable-decompilation/index.md","name":"Human-Readable Decompilation","name_zh":"Human-Readable Decompilation 反编译 C 代码整理工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Ghidra 11.4.2 or later, a Java runtime and Python 3 are specified for the full workflow.","ANTLR Python runtime and tools are needed to generate the parser.","Further transformation coverage, including iteration statements, remains planned.","BSD-3-Clause license."],"requirements_zh":["完整流程要求 Ghidra 11.4.2 或更新版本、Java 运行时和 Python 3。","生成解析器需要 ANTLR Python 运行库及工具。","循环语句等更多转换类型仍在计划中。","BSD-3-Clause 许可证。"],"targets":["binary"],"url":"https://github.com/aaronwb/human-readable-decompilation","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/1051093860/BinStruct-Inspector/blob/568a3b86f171e72f53f401a0406accc02f09433e/pyproject.toml"],"category":"binary-libraries","description_en":"BinStruct Inspector is a GUI for examining binary file layouts through user-defined field trees. It parses files as structures are edited, shows parsed values beside synchronized hex and JSON views, and tracks byte-level insertions, deletions, and replacements; plugins add custom data types.","description_zh":"BinStruct Inspector 是通过自定义字段树检查二进制文件布局的图形工具。编辑结构时可实时解析文件，并同步显示字段值、十六进制和 JSON 视图；差异监控记录字节级增删替换，插件可扩展数据类型。","entry_url":"https://awesomerea.org/resources/binstruct-inspector/","entry_url_zh":"https://awesomerea.org/zh/resources/binstruct-inspector/","evidence_url":"https://github.com/1051093860/BinStruct-Inspector/blob/568a3b86f171e72f53f401a0406accc02f09433e/README.md","group":"tools","id":"binstruct-inspector","json_url":"https://awesomerea.org/resources/binstruct-inspector/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/binstruct-inspector/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binstruct-inspector/index.md","name":"BinStruct Inspector","name_zh":"BinStruct Inspector 二进制结构分析器","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","license"],"requirements":["The package manifest requires Python 3.11+ and PySide6 6.0+.","MIT license."],"requirements_zh":["包清单要求 Python 3.11+ 和 PySide6 6.0+。","许可证为 MIT。"],"targets":["binary"],"url":"https://github.com/1051093860/BinStruct-Inspector","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"SimpleParserPE is a C++ command-line inspector for PE32 Windows executables. It reads DOS and NT headers, section metadata, data directories, and imported DLL functions, translating RVAs through the section table without Windows headers or external libraries.","description_zh":"SimpleParserPE 是检查 PE32 Windows 可执行文件的 C++ 命令行工具。它读取 DOS、NT 文件头、节信息、数据目录和 DLL 导入函数，并通过节表换算 RVA；实现不依赖 Windows 头文件或外部库。","entry_url":"https://awesomerea.org/resources/simpleparserpe/","entry_url_zh":"https://awesomerea.org/zh/resources/simpleparserpe/","evidence_url":"https://github.com/wmitq/SimpleParserPE/blob/0e3f99c47587c5797e3201800729519cacbf8a5c/README.md","group":"tools","id":"simpleparserpe","json_url":"https://awesomerea.org/resources/simpleparserpe/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/simpleparserpe/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/simpleparserpe/index.md","name":"SimpleParserPE","name_zh":"SimpleParserPE PE32 文件解析器","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["A C++17 compiler and a PE32 executable input are required.","PE32+ is rejected; bounds checking is absent, and exports, relocations, and resources are not parsed.","MIT license."],"requirements_zh":["需要 C++17 编译器和 PE32 可执行文件。","不支持 PE32+；缺少边界检查，也未解析导出表、重定位和资源。","采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/wmitq/SimpleParserPE","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"game-analysis","description_en":"BNDExtract is a Go command-line tool for extracting the ALL.BND archive used by Kuon and some other FromSoftware PlayStation 2 games. It takes a .bnd file and an output directory, providing access to the archive's contents for inspection.","description_zh":"BNDExtract 是 Go 命令行工具，用于提取《九怨》及部分其他 FromSoftware PlayStation 2 游戏的 ALL.BND 归档。输入 .bnd 文件和输出目录后，可取得归档内容供检查。","entry_url":"https://awesomerea.org/resources/bndextract-kuon/","entry_url_zh":"https://awesomerea.org/zh/resources/bndextract-kuon/","evidence_url":"https://github.com/fferradamerino/bnd_extract/blob/dc6607b48b8e35e441eefe4940d4ccaf1edacac1/README.md","group":"tools","id":"bndextract-kuon","json_url":"https://awesomerea.org/resources/bndextract-kuon/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/bndextract-kuon/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bndextract-kuon/index.md","name":"BNDExtract","name_zh":"BNDExtract《九怨》BND 归档提取工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","scope","license"],"requirements":["A supported .bnd archive and Go to build the tool.","The documented support centres on Kuon's ALL.BND and some other FromSoftware PS2 releases.","No licence file in the repository."],"requirements_zh":["需要受支持的 .bnd 归档；构建工具需要 Go。","文档主要说明对《九怨》ALL.BND 及部分其他 FromSoftware PS2 游戏的支持。","仓库中没有许可证文件。"],"targets":["game"],"url":"https://github.com/fferradamerino/bnd_extract","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dynamic-analysis","description_en":"tenet_tracer uses Intel Pin to record instruction-level execution traces for Tenet. It captures program counters, register changes and memory accesses, stores them in SQLite tables, and provides a script to export the trace text.","description_zh":"tenet_tracer 使用 Intel Pin 采集指令级执行轨迹，供 Tenet 查看。它记录程序计数器、寄存器变化和内存访问，将轨迹存入 SQLite 表，并提供导出文本的脚本。","entry_url":"https://awesomerea.org/resources/tenet-tracer/","entry_url_zh":"https://awesomerea.org/zh/resources/tenet-tracer/","evidence_url":"https://github.com/mahmoudimus/tenet_tracer/blob/26fa9b426c7ef5a6c6b6d9526f39aba1dbdbf57f/README.md","group":"tools","id":"tenet-tracer","json_url":"https://awesomerea.org/resources/tenet-tracer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/tenet-tracer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/tenet-tracer/index.md","name":"tenet_tracer","name_zh":"tenet_tracer Tenet 指令轨迹采集器","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["Intel Pin is required; the documented Windows build uses Visual Studio 2022 and Pin 3.31 with LLVM clang-cl.","Kernel debugging must be disabled for the documented Pin setup.","No licence file in the repository."],"requirements_zh":["需要 Intel Pin；文档中的 Windows 构建使用 Visual Studio 2022、Pin 3.31 和 LLVM clang-cl。","所述 Pin 环境要求关闭内核调试。","仓库中没有许可证文件。"],"targets":["binary"],"url":"https://github.com/mahmoudimus/tenet_tracer","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"Binary BPE Tokenizer for Executable Analysis studies byte-pair encoding of ELF, PE, Mach-O and APK files for transformer-based binary analysis. The repository provides paper sources, 4K to 64K tokenizer vocabularies, Python evaluation scripts and a sample archive. The author reports 2.89 bytes per token for the 64K vocabulary.","description_zh":"Binary BPE Tokenizer for Executable Analysis 研究面向 Transformer 二进制分析的 ELF、PE、Mach-O 和 APK 字节对编码。仓库包含论文源文件、4K 至 64K 词表、Python 评测脚本和样本压缩包。作者报告 64K 词表平均每个 token 对应 2.89 字节。","entry_url":"https://awesomerea.org/resources/binary-bpe-tokenizer-research/","entry_url_zh":"https://awesomerea.org/zh/resources/binary-bpe-tokenizer-research/","evidence_url":"https://github.com/mjbommar/binary-tokenizer-paper/blob/7ef1ec7739a37437c229423847c04d9295c82a0e/README.md","group":"learn","id":"binary-bpe-tokenizer-research","json_url":"https://awesomerea.org/resources/binary-bpe-tokenizer-research/record.json","kind":"research","markdown_url":"https://awesomerea.org/resources/binary-bpe-tokenizer-research/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binary-bpe-tokenizer-research/index.md","name":"Binary BPE Tokenizer for Executable Analysis","name_zh":"Binary BPE Tokenizer for Executable Analysis 可执行文件分析分词研究","record_type":"resource","relationship":"learning","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["Python 3.10+ with uv; TeX Live 2023+ is required to compile the paper.","Rust 1.70+ is optional for retraining the tokenizer from scratch.","No licence file in the repository."],"requirements_zh":["需要 Python 3.10 或更高版本及 uv；编译论文还需要 TeX Live 2023 或更高版本。","从头训练分词器可选用 Rust 1.70 或更高版本。","仓库中没有许可证文件。"],"targets":["app","binary"],"url":"https://github.com/mjbommar/binary-tokenizer-paper","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"Power BI API Scraper reconstructs the web client's undocumented query and response format for published reports. It sends SemanticQueryDataShapeCommand requests, follows restart tokens and expands bitsets and ValueDicts into CSV rows. The included example is hardcoded for an Ohio liquor permit report.","description_zh":"Power BI API Scraper 还原公开报表所用的网页客户端查询与响应格式。程序发送 SemanticQueryDataShapeCommand 请求，使用重启令牌翻页，并将位集和 ValueDicts 还原为 CSV 行；附带示例固定针对俄亥俄州酒类许可证报表。","entry_url":"https://awesomerea.org/resources/power-bi-report-query-case/","entry_url_zh":"https://awesomerea.org/zh/resources/power-bi-report-query-case/","evidence_url":"https://github.com/artemiyDev/powerbi_api_scraper/blob/053ffeaec40a2c85a1086c3bb9b36c5d4d19ea87/README.md","group":"cases","id":"power-bi-report-query-case","json_url":"https://awesomerea.org/resources/power-bi-report-query-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/power-bi-report-query-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/power-bi-report-query-case/index.md","name":"Power BI API Scraper: decoding a published report query format","name_zh":"Power BI API Scraper：解析公开报表查询格式","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","scope","limits","license"],"requirements":["Python 3.7+ and requests; access to a public Power BI report.","The included query, resource key and model ID are hardcoded for one report; retargeting requires code changes.","Non-200 responses stop the run, and overlapping pages are not deduplicated.","MIT License."],"requirements_zh":["需要 Python 3.7+、requests，以及可访问的公开 Power BI 报表。","随附查询、资源密钥和模型 ID 固定对应一份报表；更换目标需修改代码。","收到非 200 响应会停止运行，重叠页面也不会去重。","MIT 许可证。"],"targets":["protocol","website"],"url":"https://github.com/artemiyDev/powerbi_api_scraper","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"The m0rph investigation examines an obfuscated x86-64 ELF CTF flag checker with readelf, strings, Cutter and Radare2. Its write-up traces indirect CALL RAX execution into allocated memory and describes recovering expected characters by breaking at the call and inspecting RDI during each loop iteration.","description_zh":"m0rph 调查使用 readelf、strings、Cutter 和 Radare2 分析一款经过混淆的 x86-64 ELF CTF 字符串校验程序。报告追踪 CALL RAX 跳转到动态分配内存的执行过程，并说明如何逐次在调用处设断点、检查 RDI 以还原预期字符。","entry_url":"https://awesomerea.org/resources/m0rph-ctf-analysis-case/","entry_url_zh":"https://awesomerea.org/zh/resources/m0rph-ctf-analysis-case/","evidence_url":"https://github.com/UmbertoDellaMonica/m0rph-CTF-CyberChallenge.IT/blob/064dbf1bcedd39a0360a311daaa86c32b525a7db/README.md","group":"learn","id":"m0rph-ctf-analysis-case","json_url":"https://awesomerea.org/resources/m0rph-ctf-analysis-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/m0rph-ctf-analysis-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/m0rph-ctf-analysis-case/index.md","name":"m0rph: tracing an obfuscated ELF flag checker","name_zh":"m0rph：追踪混淆 ELF 程序的字符串校验逻辑","record_type":"resource","relationship":"learning","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["The m0rph x86-64 ELF challenge binary and a Linux analysis environment are needed to repeat the investigation.","Radare2, Cutter and standard Linux inspection utilities are used in the described workflow.","MIT license."],"requirements_zh":["复现调查需要 m0rph x86-64 ELF 题目程序及 Linux 分析环境。","所述流程使用 Radare2、Cutter 和常见 Linux 检查工具。","采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/UmbertoDellaMonica/m0rph-CTF-CyberChallenge.IT","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"OpenTracks is an early UWP port of the OpenTracks7 BETA1 Windows Phone music app informed by the author's reverse engineering. Its C# and XAML implementation updates page control access and replaces WP7 MediaPlayerLauncher with UWP media playback APIs.","description_zh":"OpenTracks 是基于作者对 OpenTracks7 BETA1 的逆向研究所做的早期 UWP 移植。仓库中的 C# 和 XAML 实现更新了页面控件访问方式，并以 UWP 媒体播放 API 替换 WP7 的 MediaPlayerLauncher。","entry_url":"https://awesomerea.org/resources/opentracks-uwp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/opentracks-uwp-case/","evidence_url":"https://github.com/mediaexplorer74/OpenTracks/blob/b9608866abf178df2a5accc8d5a4ba531eb5e5a1/README.md","group":"cases","id":"opentracks-uwp-case","json_url":"https://awesomerea.org/resources/opentracks-uwp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/opentracks-uwp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/opentracks-uwp-case/index.md","name":"OpenTracks: a UWP port of OpenTracks7 BETA1","name_zh":"OpenTracks：OpenTracks7 BETA1 的 UWP 移植","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["Targets Windows 10 Mobile; the project uses Windows SDK 19041 with minimum SDK 10240.","The author describes the port as pre-beta, with settings storage, playback behavior and background tasks still needing work.","MIT license."],"requirements_zh":["目标平台为 Windows 10 Mobile；项目使用 Windows SDK 19041，最低 SDK 版本为 10240。","作者称移植版尚处于预 Beta 阶段，设置存储、播放行为和后台任务仍待完善。","采用 MIT 许可证。"],"targets":["app"],"url":"https://github.com/mediaexplorer74/OpenTracks","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"BinScan scans files in bulk and emits per-file JSON containing format identification, structural metadata, hashes and entropy. Its C++ library includes parsers for PE, ELF and Mach-O executables alongside archives, packages, documents and images, with a staged read, analyze and write pipeline.","description_zh":"BinScan 批量扫描文件，为每个文件输出含格式识别、结构信息、哈希和熵值的 JSON。其 C++ 库包含 PE、ELF、Mach-O 可执行文件及压缩包、安装包、文档和图像的解析器，按读取、分析、写入三个阶段处理。","entry_url":"https://awesomerea.org/resources/binscan/","entry_url_zh":"https://awesomerea.org/zh/resources/binscan/","evidence_url":"https://github.com/Mraxzist/BinScan/blob/7bd7e78526a566ff16ade4019d48b3914297c534/README.md","group":"tools","id":"binscan","json_url":"https://awesomerea.org/resources/binscan/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/binscan/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binscan/index.md","name":"BinScan","name_zh":"BinScan 批量二进制文件结构分析工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["C++20, CMake and OpenSSL; the README provides Windows, Linux and macOS build instructions.","The author describes the current version as unreleased and warns that results may contain inaccuracies.","MIT license."],"requirements_zh":["需要 C++20、CMake 和 OpenSSL；README 提供 Windows、Linux、macOS 构建步骤。","作者称当前版本尚未正式发布，输出可能存在不准确之处。","MIT 许可证。"],"targets":["binary"],"url":"https://github.com/Mraxzist/BinScan","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dynamic-analysis","description_en":"Patch-0xC0000022 instruments the running Windows SysMain service by changing its NtCreateFile response to STATUS_ACCESS_DENIED. The C++ program finds the service process, resolves the remote function address and applies a six-byte patch to study the effect on prefetch behavior.","description_zh":"Patch-0xC0000022 修改运行中的 Windows SysMain 服务，使 NtCreateFile 返回 STATUS_ACCESS_DENIED。该 C++ 程序定位服务进程和远程函数地址，再应用六字节补丁，以研究预取行为的变化。","entry_url":"https://awesomerea.org/resources/patch-0xc0000022/","entry_url_zh":"https://awesomerea.org/zh/resources/patch-0xc0000022/","evidence_url":"https://github.com/Harryson3001/Patch-0xC0000022/blob/fdce6b22c293cba15d6cc991018f4bbf285d8f7d/README.md","group":"tools","id":"patch-0xc0000022","json_url":"https://awesomerea.org/resources/patch-0xc0000022/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/patch-0xc0000022/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/patch-0xc0000022/index.md","name":"Patch-0xC0000022","name_zh":"Patch-0xC0000022 SysMain 运行时研究工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","scope","limits","license"],"requirements":["Windows 10 or 11 x64, Visual Studio C++ tools and administrator permission are required.","The source calls for a controlled test environment and says restarting Windows restores runtime state.","Restoring or removing the patch is listed as future work.","No licence file in the repository."],"requirements_zh":["需要 Windows 10 或 11 x64、Visual Studio C++ 工具和管理员权限。","文档要求在受控测试环境中使用，并说明重启 Windows 可恢复运行时状态。","恢复或移除补丁仍列在后续计划中。","仓库中没有许可证文件。"],"targets":["app"],"url":"https://github.com/Harryson3001/Patch-0xC0000022","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"LED Controller uses BanlanX BLE commands to control SP611E-family LED strips from a desktop app. Its documentation maps GATT commands and state notifications, and reports probing an audio-feed message used by the controller’s music effects; included tools inspect advertisements, GATT state and Bluetooth captures.","description_zh":"LED Controller 通过 BanlanX BLE 命令在电脑上控制 SP611E 系列灯带。文档列出 GATT 命令和状态通知，记录作者探测到的音乐效果音频数据消息；随附工具可检查广播、GATT 状态与蓝牙抓包。","entry_url":"https://awesomerea.org/resources/led-controller-banlanx-case/","entry_url_zh":"https://awesomerea.org/zh/resources/led-controller-banlanx-case/","evidence_url":"https://github.com/Antrubtor/LED-controller/blob/f2c7c5f196b28f960d19ceb8e3d44dbfaded5f3c/README.md","group":"cases","id":"led-controller-banlanx-case","json_url":"https://awesomerea.org/resources/led-controller-banlanx-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/led-controller-banlanx-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/led-controller-banlanx-case/index.md","name":"LED Controller: a BanlanX BLE client with audio-feed protocol findings","name_zh":"LED Controller：基于 BanlanX BLE 协议及音频数据发现的客户端","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["A PC with Bluetooth Low Energy, uv and a compatible BanlanX controller.","PC audio input works on Windows only; BanlanX v3 models are implemented from UniLED documentation but untested on hardware.","No licence file in the repository."],"requirements_zh":["需要支持 Bluetooth Low Energy 的电脑、uv 和兼容的 BanlanX 控制器。","电脑音频输入仅支持 Windows；BanlanX v3 型号依据 UniLED 文档实现，尚未经过硬件测试。","仓库中没有许可证文件。"],"targets":["protocol"],"url":"https://github.com/Antrubtor/LED-controller","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"CPQ IO Scheduler reconstructs Xiaomi's proprietary cpq.ko Linux block scheduler from a stripped ARM64 kernel module. Its out-of-tree C implementation combines priority classes, thread-group queues, deadline handling, and blk-mq elevator integration, with a whitepaper and author-reported benchmarks.","description_zh":"CPQ IO Scheduler 从已剥离符号的 ARM64 cpq.ko 内核模块还原小米的 Linux 块设备调度器。独立 C 模块实现优先级类别、线程组队列、期限处理及 blk-mq elevator 集成，并附技术论文和作者报告的基准测试。","entry_url":"https://awesomerea.org/resources/cpq-iosched-case/","entry_url_zh":"https://awesomerea.org/zh/resources/cpq-iosched-case/","evidence_url":"https://github.com/Rasenkai/CPQ_IOSched/blob/ed5989340818224d58b0fba9b4f4aebd99545e3d/README.md","group":"cases","id":"cpq-iosched-case","json_url":"https://awesomerea.org/resources/cpq-iosched-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/cpq-iosched-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cpq-iosched-case/index.md","name":"CPQ IO Scheduler: reconstructing Xiaomi's block scheduler","name_zh":"CPQ IO Scheduler：还原小米的块设备调度器","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","testing","license"],"requirements":["Building requires Linux kernel headers for the block layer and scheduler APIs; the author reports testing on Linux 6.1 with RK3588 and eMMC 5.1.","The author reports a 5-of-6 workload win against mq-deadline, with about 1.9% average IOPS uplift.","GPL-2.0 license, as stated in the README and source-file notice."],"requirements_zh":["构建需要 Linux 内核块设备层与调度器 API 头文件；作者报告在 RK3588 和 eMMC 5.1 的 Linux 6.1 环境中测试。","作者报告在六种负载中有五种优于 mq-deadline，平均 IOPS 提升约 1.9%。","README 和源码标注许可证为 GPL-2.0。"],"targets":["binary"],"url":"https://github.com/Rasenkai/CPQ_IOSched","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/blark/zemismart-blind-protocol/blob/547f9586e2066e573741fe0fe09ce79782ca2cf4/protocol_analysis.md"],"category":"reconstruction-cases","description_en":"Zemismart Blind Controller Protocol documents the 433.92 MHz OOK PWM messages used by Zemismart motorized blind remotes. It records pulse timing, payload fields and formulas for channel and button commands, with Python scripts to capture IQ samples and encode or decode transmissions.","description_zh":"Zemismart Blind Controller Protocol 记录 Zemismart 电动窗帘遥控器的 433.92 MHz OOK PWM 消息。文档给出脉冲时序、载荷字段以及频道和按键命令的计算公式；Python 脚本用于采集 IQ 样本和编解码发送内容。","entry_url":"https://awesomerea.org/resources/zemismart-blind-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/zemismart-blind-protocol-case/","evidence_url":"https://github.com/blark/zemismart-blind-protocol/blob/547f9586e2066e573741fe0fe09ce79782ca2cf4/README.md","group":"cases","id":"zemismart-blind-protocol-case","json_url":"https://awesomerea.org/resources/zemismart-blind-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/zemismart-blind-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/zemismart-blind-protocol-case/index.md","name":"Zemismart Blind Controller Protocol: RF command reconstruction","name_zh":"Zemismart Blind Controller Protocol：射频控制命令还原","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","license"],"requirements":["Zemismart motorized blind remote captures; the capture script uses LimeSDR and SoapySDR.","No licence file in the repository."],"requirements_zh":["需要 Zemismart 电动窗帘遥控器的采集数据；采集脚本使用 LimeSDR 和 SoapySDR。","仓库中没有许可证文件。"],"targets":["protocol"],"url":"https://github.com/blark/zemismart-blind-protocol","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"game-analysis","description_en":"RE4METoolbox provides command-line utilities for examining and modifying Resident Evil 4 Mobile Edition files. RE4MEAcvTool unpacks and repacks ACV .bin archives, while RE4METextTool converts Mission and Resource .bin text files to TSV and repacks edited text.","description_zh":"RE4METoolbox 提供命令行工具，用于处理《生化危机 4》移动版文件。RE4MEAcvTool 解包和重打包 ACV .bin 归档；RE4METextTool 将 Mission、Resource 文本 .bin 转成 TSV，并可将修改后的文本重新打包。","entry_url":"https://awesomerea.org/resources/re4me-toolbox/","entry_url_zh":"https://awesomerea.org/zh/resources/re4me-toolbox/","evidence_url":"https://github.com/Dhamp1r/RE4ME-Toolbox/blob/eeb3e8732d65c181d60f44a1c7051ced0be2bb8b/README.md","group":"tools","id":"re4me-toolbox","json_url":"https://awesomerea.org/resources/re4me-toolbox/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/re4me-toolbox/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/re4me-toolbox/index.md","name":"RE4METoolbox","name_zh":"RE4METoolbox《生化危机 4》移动版文件工具箱","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","license"],"requirements":["Resident Evil 4 Mobile Edition .bin files; the text tool requires a Mission or Resource format flag.","MIT license."],"requirements_zh":["需要《生化危机 4》移动版的 .bin 文件；文本工具须指定 Mission 或 Resource 格式参数。","MIT 许可证。"],"targets":["game"],"url":"https://github.com/Dhamp1r/RE4ME-Toolbox","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"firmware","description_en":"AC46 Firmware Tool unpacks firmware images for JieLi AC4600/BT15 devices. It accepts a dumped flash image or a BFU file with its first 512 bytes removed, detects an encryption state, extracts bootloader and resource files, and writes a repacking batch script. The repository also lists cipher, CRC16, and chip-key utilities.","description_zh":"AC46 Firmware Tool 用于解包 JieLi AC4600/BT15 设备固件。它读取设备闪存转储，或去掉前 512 字节的 BFU 文件，检测加密状态，提取引导程序与资源，并生成重新打包的批处理脚本。仓库还列出密码处理、CRC16 和芯片密钥工具。","entry_url":"https://awesomerea.org/resources/ac46-firmware-tool/","entry_url_zh":"https://awesomerea.org/zh/resources/ac46-firmware-tool/","evidence_url":"https://github.com/0x0-nyan/AC46-Firmware-Tool/blob/369353c80911d9bed8d3248f72e02bda8ffd890b/README.md","group":"tools","id":"ac46-firmware-tool","json_url":"https://awesomerea.org/resources/ac46-firmware-tool/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ac46-firmware-tool/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ac46-firmware-tool/index.md","name":"AC46 Firmware Tool","name_zh":"AC46 Firmware Tool JieLi 固件解包工具","record_type":"resource","relationship":"foundation","requirements":["A flash image from a JieLi AC46/BT15 device, or a BFU file with its first 512 bytes removed, is required.","Repacking requires an AC46 SDK.","No licence file in the repository."],"requirements_zh":["需要 JieLi AC46/BT15 设备的闪存镜像，或去掉前 512 字节的 BFU 文件。","重新打包需要 AC46 SDK。","仓库中没有许可证文件。"],"targets":["firmware"],"url":"https://github.com/0x0-nyan/AC46-Firmware-Tool","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dynamic-analysis","description_en":"iMonitor is a Windows endpoint activity monitor for examining running software. It records process, file, registry and network events, adds DLL-load analysis, and supports custom columns and matching rules through plugins and scripts.","description_zh":"iMonitor 是用于观察 Windows 运行中软件的系统行为工具，可记录进程、文件、注册表和网络事件，分析 DLL 加载，并通过插件和脚本扩展列及匹配规则。","entry_url":"https://awesomerea.org/resources/imonitor-system-activity-monitor/","entry_url_zh":"https://awesomerea.org/zh/resources/imonitor-system-activity-monitor/","evidence_url":"https://github.com/Trivexion/iMonitor-System-Activity-Monitor/blob/68d997002a64614d979b6543ec78879ba31da068/README.md","group":"tools","id":"imonitor-system-activity-monitor","json_url":"https://awesomerea.org/resources/imonitor-system-activity-monitor/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/imonitor-system-activity-monitor/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/imonitor-system-activity-monitor/index.md","name":"iMonitor","name_zh":"iMonitor Windows 系统行为分析工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","license"],"requirements":["Windows is required.","MIT license."],"requirements_zh":["需要 Windows。","采用 MIT 许可证。"],"targets":["app"],"url":"https://github.com/Trivexion/iMonitor-System-Activity-Monitor","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Gautam-CyberSec/Android-Malware-Analysis-Report/blob/5af85ede627d68764e7d0eed8c48d4ef548409f6/README.md"],"category":"reconstruction-cases","description_en":"The RTO eChalan report investigates an Android APK impersonating an Indian government eChallan service through manifest review, JADX decompilation and sandbox analysis. The author reports identifying a BankBot variant, a REQUEST_INSTALL_PACKAGES permission, a BIND_VPN_SERVICE entry and extensive obfuscation that limited decompilation.","description_zh":"RTO eChalan 报告通过检查 AndroidManifest.xml、使用 JADX 反编译及沙箱分析，调查一个冒充印度政府交通罚单服务的 APK。作者报告将其识别为 BankBot 变种，并记录了 REQUEST_INSTALL_PACKAGES 权限、BIND_VPN_SERVICE 条目及妨碍反编译的大量混淆代码。","entry_url":"https://awesomerea.org/resources/rto-echalan-android-analysis-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rto-echalan-android-analysis-case/","evidence_url":"https://github.com/Gautam-CyberSec/Android-Malware-Analysis-Report/blob/5af85ede627d68764e7d0eed8c48d4ef548409f6/Report/Report.md","group":"cases","id":"rto-echalan-android-analysis-case","json_url":"https://awesomerea.org/resources/rto-echalan-android-analysis-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rto-echalan-android-analysis-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rto-echalan-android-analysis-case/index.md","name":"RTO eChalan: investigating a BankBot Android APK","name_zh":"RTO eChalan：调查 BankBot 安卓 APK","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","limits","license"],"requirements":["The report covers one Android APK named RTO eChalan.apk.","The author reports that approximately 96% of classes failed to load during decompilation.","CC-BY-4.0 license."],"requirements_zh":["报告分析的是名为 RTO eChalan.apk 的单个安卓安装包。","作者报告称约 96% 的类在反编译时无法加载。","采用 CC-BY-4.0 许可证。"],"targets":["app"],"url":"https://github.com/Gautam-CyberSec/Android-Malware-Analysis-Report","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/jenska/m68kdasm/blob/a4de22005b19b4e05d69f710e40dad4a1fd1ae62/go.mod"],"category":"native-analysis","description_en":"m68kdasm disassembles Motorola 68000-family machine code in Go and returns assembly with structured instruction metadata. It supports selectable CPU variants, optional FPU and PMMU decoding, symbol and label formatting, streaming input and helpers for 68000 ELF binaries.","description_zh":"m68kdasm 用 Go 反汇编 Motorola 68000 系列机器码，同时输出汇编文本和结构化指令信息。它支持选择 CPU 型号、按需解码 FPU 与 PMMU 指令、符号和标签格式化、流式输入，以及 68000 ELF 文件辅助功能。","entry_url":"https://awesomerea.org/resources/m68kdasm/","entry_url_zh":"https://awesomerea.org/zh/resources/m68kdasm/","evidence_url":"https://github.com/jenska/m68kdasm/blob/a4de22005b19b4e05d69f710e40dad4a1fd1ae62/README.md","group":"tools","id":"m68kdasm","json_url":"https://awesomerea.org/resources/m68kdasm/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/m68kdasm/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/m68kdasm/index.md","name":"m68kdasm","name_zh":"m68kdasm Motorola 68000 反汇编库","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Go 1.27, as specified in go.mod.","Some CPU instructions, including CPU32 TBLS/TBLU and 68040 MOVE16/CINV/CPUSH, remain unimplemented.","MIT license."],"requirements_zh":["按 go.mod 要求使用 Go 1.27。","CPU32 的 TBLS/TBLU、68040 的 MOVE16/CINV/CPUSH 等部分指令尚未实现。","采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/jenska/m68kdasm","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"A malware investigation examines njRAT and a UPX-packed Casdet executable with PEStudio static triage and ANY.RUN sandbox telemetry, alongside a malicious PDF and benign comparison files. The author reports process, registry and network behavior, extracted indicators and MITRE ATT&CK mappings in a report and screenshots.","description_zh":"该恶意软件研究用 PEStudio 静态检查和 ANY.RUN 沙箱遥测分析 njRAT 与经 UPX 打包的 Casdet 可执行文件，同时检查恶意 PDF 和良性对照文件。作者在报告及截图中记录了进程、注册表、网络行为、入侵指标和 MITRE ATT&CK 映射。","entry_url":"https://awesomerea.org/resources/malware-analysis-njrat-casdet-case/","entry_url_zh":"https://awesomerea.org/zh/resources/malware-analysis-njrat-casdet-case/","evidence_url":"https://github.com/phour44/Malware-Analysis/blob/c30cab3c470d81c4b6fc12b44bf3599e338a7fb8/README.md","group":"cases","id":"malware-analysis-njrat-casdet-case","json_url":"https://awesomerea.org/resources/malware-analysis-njrat-casdet-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/malware-analysis-njrat-casdet-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/malware-analysis-njrat-casdet-case/index.md","name":"Malware Analysis: njRAT and Casdet behavior investigation","name_zh":"Malware Analysis：njRAT 与 Casdet 行为研究","record_type":"resource","relationship":"independent-reconstruction","requirements":["The investigation used PEStudio 9.56 and ANY.RUN on a Windows 10 guest.","The author reports that Infected.exe crashed because libelf.dll was missing, so no sandbox behavior was observed for it."],"requirements_zh":["研究使用 PEStudio 9.56，并在 Windows 10 客户机中运行 ANY.RUN。","作者报告称，Infected.exe 因缺少 libelf.dll 而崩溃，沙箱中未观察到其行为。"],"targets":["binary"],"url":"https://github.com/phour44/Malware-Analysis","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Prajwal-kp-18/ir-analysis/blob/20cc18c2ce13422e4da6f58cd57be5c61c439406/LICENSE"],"category":"native-analysis","description_en":"IR Lifting Benchmark compares binary lifting workflows across Ghidra P-code, angr VEX, BAP BIL and optional LLVM IR paths. Shell and Python scripts run analyses on binary samples, collect performance and control-flow metrics, check lifted semantics and generate reports and visualizations.","description_zh":"IR Lifting Benchmark 比较 Ghidra P-code、angr VEX、BAP BIL 及可选 LLVM IR 的二进制提升流程。Shell 与 Python 脚本分析样本、收集性能和控制流指标、检查提升后的语义，并生成报告与图表。","entry_url":"https://awesomerea.org/resources/ir-lifting-benchmark/","entry_url_zh":"https://awesomerea.org/zh/resources/ir-lifting-benchmark/","evidence_url":"https://github.com/Prajwal-kp-18/ir-analysis/blob/20cc18c2ce13422e4da6f58cd57be5c61c439406/README.md","group":"tools","id":"ir-lifting-benchmark","json_url":"https://awesomerea.org/resources/ir-lifting-benchmark/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ir-lifting-benchmark/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ir-lifting-benchmark/index.md","name":"IR Lifting Benchmark","name_zh":"IR Lifting Benchmark 二进制中间表示提升基准工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","prerequisites","license"],"requirements":["Linux, Python 3.8 or later, Ghidra 10.x or 11.x and the selected analysis tools.","BAP and LLVM lifting are optional; true binary-to-LLVM IR lifting needs RetDec or llvm-mctoll.","User-provided samples are needed for malware analysis.","MIT license."],"requirements_zh":["需要 Linux、Python 3.8 或更新版本、Ghidra 10.x 或 11.x，以及所选分析工具。","BAP 和 LLVM 提升为可选功能；真正的二进制到 LLVM IR 提升需要 RetDec 或 llvm-mctoll。","恶意软件分析需要用户自行提供样本。","采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/Prajwal-kp-18/ir-analysis","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/lukejenkins/claude-openocd-spi-dump/blob/08ff4c334ba5dce440042b6bd2ffe6acf77c6e2b/skills/spi-flash-dump/SKILL.md"],"category":"agent-workflows","description_en":"OpenOCD SPI Dump Plugin guides an agent through extracting SPI flash or EEPROM contents using a target MCU's SWD/JTAG debug connection. It supplies MCU register maps, a RAM-resident C reader, linker and OpenOCD Tcl templates, and a workflow for JEDEC identification and dump checking.","description_zh":"OpenOCD SPI Dump Plugin 引导智能体经目标 MCU 的 SWD/JTAG 调试连接提取 SPI 闪存或 EEPROM 内容。仓库提供 MCU 寄存器表、驻留 RAM 的 C 读取程序、链接脚本、OpenOCD Tcl 模板，以及 JEDEC 识别和转储核对流程。","entry_url":"https://awesomerea.org/resources/claude-openocd-spi-dump/","entry_url_zh":"https://awesomerea.org/zh/resources/claude-openocd-spi-dump/","evidence_url":"https://github.com/lukejenkins/claude-openocd-spi-dump/blob/08ff4c334ba5dce440042b6bd2ffe6acf77c6e2b/README.md","group":"agents","id":"claude-openocd-spi-dump","json_url":"https://awesomerea.org/resources/claude-openocd-spi-dump/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/claude-openocd-spi-dump/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/claude-openocd-spi-dump/index.md","name":"OpenOCD SPI Dump Plugin","name_zh":"OpenOCD SPI Dump Plugin SPI 闪存提取向导","record_type":"resource","relationship":"independent-agent-integration","requirements":["OpenOCD, an ARM GNU toolchain, and netcat are required.","A working SWD/JTAG probe connection and an MCU connected to SPI flash or EEPROM are required.","The maximum dump chunk size remains to be parameterized.","MIT license."],"requirements_zh":["需要 OpenOCD、ARM GNU 工具链和 netcat。","需要可用的 SWD/JTAG 探针连接，以及连接 SPI 闪存或 EEPROM 的 MCU。","最大转储分块大小尚未参数化。","采用 MIT 许可证。"],"targets":["firmware"],"url":"https://github.com/lukejenkins/claude-openocd-spi-dump","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"Bin-Hunter is a Python command-line tool for initial static inspection of binary files. It identifies formats from magic bytes, calculates whole-file and peak-region Shannon entropy, extracts readable strings, and finds URLs, IP addresses, email addresses, and suspicious keywords in those strings.","description_zh":"Bin-Hunter 是用于二进制文件初步静态检查的 Python 命令行工具。它通过魔数字节识别格式，计算整体及高熵区域的 Shannon 熵，提取可读字符串，并查找其中的 URL、IP 地址、邮箱和可疑关键词。","entry_url":"https://awesomerea.org/resources/bin-hunter/","entry_url_zh":"https://awesomerea.org/zh/resources/bin-hunter/","evidence_url":"https://github.com/Emirzonee/Bin-Hunter/blob/28d2636c9e2e67d91fbf45c672ff41f57ff8e426/README.md","group":"tools","id":"bin-hunter","json_url":"https://awesomerea.org/resources/bin-hunter/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/bin-hunter/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bin-hunter/index.md","name":"Bin-Hunter","name_zh":"Bin-Hunter 二进制静态检查工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","license"],"requirements":["Python standard library; no external dependencies are stated.","MIT license."],"requirements_zh":["使用 Python 标准库；文档称无需外部依赖。","采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/Emirzonee/Bin-Hunter","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"vanmoof-certificates decodes the access certificates used with VanMoof SA5 and Series 6 bikes. It documents an Ed25519 signature followed by a CBOR payload containing bike serials, user identity, access role and expiry, and provides Go code to request, parse and check certificates. The source says the SA5 verification key was recovered from a bike BLE certificate.","description_zh":"vanmoof-certificates 解析 VanMoof SA5 与 Series 6 自行车使用的访问证书。文档描述了 Ed25519 签名及其后的 CBOR 载荷，包括车架与模块序列号、用户身份、权限角色和到期时间；Go 代码负责请求、解析和检查证书。项目称 SA5 验证公钥取自车辆的 BLE 证书。","entry_url":"https://awesomerea.org/resources/vanmoof-certificates-case/","entry_url_zh":"https://awesomerea.org/zh/resources/vanmoof-certificates-case/","evidence_url":"https://github.com/Knight1/vanmoof-certificates/blob/1d34bf3d2cc1dcad923b64d4051c224897b11b03/README.md","group":"cases","id":"vanmoof-certificates-case","json_url":"https://awesomerea.org/resources/vanmoof-certificates-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/vanmoof-certificates-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/vanmoof-certificates-case/index.md","name":"vanmoof-certificates: decoding VanMoof bike certificates","name_zh":"vanmoof-certificates：解析 VanMoof 自行车证书","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["A VanMoof account with a supported bike is needed to request certificates.","The source states that the Series 6 signing key is not yet known, so its signatures are not verified.","No licence file in the repository."],"requirements_zh":["请求证书需要拥有受支持车辆的 VanMoof 账户。","项目称目前未知 Series 6 签名密钥，因此不校验其证书签名。","仓库中没有许可证文件。"],"targets":["protocol"],"url":"https://github.com/Knight1/vanmoof-certificates","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"game-analysis","description_en":"Aspyr Archive Tool unpacks and rebuilds Android OBB archives used by three Aspyr game ports: Star Wars: Knights of the Old Republic II, Jade Empire: Special Edition and Fahrenheit: Indigo Prophecy Remastered. Its command-line options support full or selective compression and a CRC64 checksum for Jade Empire.","description_zh":"Aspyr Archive Tool 用于拆包和重建三款 Aspyr Android 游戏移植版的 OBB 归档：Star Wars: Knights of the Old Republic II、Jade Empire: Special Edition 和 Fahrenheit: Indigo Prophecy Remastered。命令行支持完整或选择性压缩，以及 Jade Empire 所需的 CRC64 校验值。","entry_url":"https://awesomerea.org/resources/aspyr-archive-tool/","entry_url_zh":"https://awesomerea.org/zh/resources/aspyr-archive-tool/","evidence_url":"https://github.com/Dhamp1r/AspyrArchiveTool/blob/be0bd60ffe1f232206d0cb079a90811e60f60b34/README.md","group":"tools","id":"aspyr-archive-tool","json_url":"https://awesomerea.org/resources/aspyr-archive-tool/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/aspyr-archive-tool/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/aspyr-archive-tool/index.md","name":"Aspyr Archive Tool","name_zh":"Aspyr Archive Tool Android 游戏 OBB 归档工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","license"],"requirements":["An OBB archive from one of the listed games is required.","MIT."],"requirements_zh":["需要所列游戏之一的 OBB 归档。","许可证为 MIT。"],"targets":["game"],"url":"https://github.com/Dhamp1r/AspyrArchiveTool","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"BinaryInsight inspects ELF, PE, and Mach-O executables and libraries in an interactive terminal view or a text-report CLI. Its Rust core uses goblin to parse binary structure and exposes sections, symbols, printable strings, and security mitigation indicators such as PIE, NX, RELRO, ASLR, and DEP.","description_zh":"BinaryInsight 以交互式终端界面或文本报告检查 ELF、PE、Mach-O 可执行文件和库。其 Rust 核心使用 goblin 解析文件结构，展示节、符号、可打印字符串，以及 PIE、NX、RELRO、ASLR 和 DEP 等安全缓解标志。","entry_url":"https://awesomerea.org/resources/binaryinsight/","entry_url_zh":"https://awesomerea.org/zh/resources/binaryinsight/","evidence_url":"https://github.com/ismailtsdln/BinaryInsight/blob/bd51371e8cece9789b04fb165a37c8e0d14d8abf/README.md","group":"tools","id":"binaryinsight","json_url":"https://awesomerea.org/resources/binaryinsight/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/binaryinsight/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/binaryinsight/index.md","name":"BinaryInsight","name_zh":"BinaryInsight 二进制检查工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","license"],"requirements":["Rust and Cargo are required to build from source.","MIT License."],"requirements_zh":["从源码构建需要 Rust 和 Cargo。","采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/ismailtsdln/BinaryInsight","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"game-analysis","description_en":"ScriptSource-Dumper extracts scripts from Call of Duty: Black Ops II scriptsrc.clump archives. Its C++ parser reads the archive table of contents and data chunks, locates the internal name table, and writes files under their recovered names and directories.","description_zh":"ScriptSource-Dumper 从《使命召唤：黑色行动 2》的 scriptsrc.clump 档案提取脚本。C++ 解析器读取目录表与数据块，定位内部名称表，并按还原的文件名和目录输出内容。","entry_url":"https://awesomerea.org/resources/scriptsource-dumper/","entry_url_zh":"https://awesomerea.org/zh/resources/scriptsource-dumper/","evidence_url":"https://github.com/uhhKnife/ScriptSource-Dumper/blob/c6363ad6c3cb4057a6dca03af18e86e782817d99/README.md","group":"tools","id":"scriptsource-dumper","json_url":"https://awesomerea.org/resources/scriptsource-dumper/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/scriptsource-dumper/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/scriptsource-dumper/index.md","name":"ScriptSource-Dumper","name_zh":"ScriptSource-Dumper《黑色行动 2》脚本档案提取工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["A scriptsrc.clump archive from Call of Duty: Black Ops II.","Visual Studio 2022 or newer and the MSVC v145 toolset to build.","No licence file in the repository."],"requirements_zh":["需要《使命召唤：黑色行动 2》的 scriptsrc.clump 档案。","构建需要 Visual Studio 2022 或更新版本及 MSVC v145 工具集。","仓库中没有许可证文件。"],"targets":["game"],"url":"https://github.com/uhhKnife/ScriptSource-Dumper","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"javascript-electron","description_en":"derkt parses and disassembles Hermes Bytecode files in Racket. It decodes HBC structures and function data, detects the bytecode version and loads a matching generated instruction definition before producing disassembly. The repository includes versioned ISA definitions, parsers and a sample HBC file.","description_zh":"derkt 是 Racket 编写的 Hermes Bytecode 解析与反汇编工具。它读取 HBC 结构和函数数据，识别字节码版本，再加载对应的生成式指令定义输出反汇编。仓库包含分版本 ISA 定义、解析器和 HBC 样本。","entry_url":"https://awesomerea.org/resources/derkt/","entry_url_zh":"https://awesomerea.org/zh/resources/derkt/","evidence_url":"https://github.com/rrandom/derkt/blob/5a30bf97ec2d9c13f9243af6b4dc59e3290c5526/README.md","group":"tools","id":"derkt","json_url":"https://awesomerea.org/resources/derkt/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/derkt/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/derkt/index.md","name":"derkt","name_zh":"derkt：Hermes 字节码反汇编器","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","license"],"requirements":["Racket is required; the CLI accepts an HBC file path.","MIT."],"requirements_zh":["需要 Racket；命令行输入为 HBC 文件路径。","许可证为 MIT。"],"targets":["binary"],"url":"https://github.com/rrandom/derkt","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"game-analysis","description_en":".AUP-File-Type-Decryptor-and-Viewer is a local browser tool for inspecting Dragon Soul .aup game asset files. It implements the documented LZSS variant, previews image, audio and text formats, and exports files while preserving folder structure. The README specifies the four-byte size header and ring-buffer command stream.","description_zh":".AUP-File-Type-Decryptor-and-Viewer 是本地浏览器工具，用于查看《Dragon Soul》的 .aup 游戏资源文件。它实现文档所述的 LZSS 变体，可预览图像、音频和文本，并按原有目录结构导出文件。README 还说明了四字节长度头与环形缓冲命令流。","entry_url":"https://awesomerea.org/resources/dragon-soul-aup-viewer/","entry_url_zh":"https://awesomerea.org/zh/resources/dragon-soul-aup-viewer/","evidence_url":"https://github.com/PredatorIWD/.AUP-File-Type-Decryptor-and-Viewer/blob/8ccbc8e6c288584b55fbd63fa66173bc3e1105c5/README.md","group":"tools","id":"dragon-soul-aup-viewer","json_url":"https://awesomerea.org/resources/dragon-soul-aup-viewer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dragon-soul-aup-viewer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dragon-soul-aup-viewer/index.md","name":".AUP-File-Type-Decryptor-and-Viewer","name_zh":".AUP-File-Type-Decryptor-and-Viewer《Dragon Soul》资源查看器","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["A browser and Dragon Soul .aup files are required for use.","Encoding and compression of raw files back into .aup is listed as unfinished.","MIT license."],"requirements_zh":["使用时需要浏览器和《Dragon Soul》的 .aup 文件。","将原始文件重新编码、压缩为 .aup 的功能尚未完成。","MIT 许可证。"],"targets":["game"],"url":"https://github.com/PredatorIWD/.AUP-File-Type-Decryptor-and-Viewer","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"jvm","description_en":"ODIS file unpacker extracts protected Java classes from ODIS plugin JARs and files from its DIDB data archives. The author traces AES class decryption and Blowfish ECB data decryption through debugging, a Java agent and decompiled class code; some extracted files also require GZIP decompression.","description_zh":"ODIS file unpacker 从 ODIS 插件 JAR 中提取受保护的 Java 类，并解包 DIDB 数据。作者通过调试、Java 代理程序和反编译后的类代码定位 AES 类解密及 Blowfish ECB 数据解密；部分文件还需 GZIP 解压。","entry_url":"https://awesomerea.org/resources/odis-file-unpacker/","entry_url_zh":"https://awesomerea.org/zh/resources/odis-file-unpacker/","evidence_url":"https://github.com/kartoffelpflanze/ODIS-file-unpacker/blob/f2408cd2d9dbf4a812ccab058c5836598773fddd/README.md","group":"tools","id":"odis-file-unpacker","json_url":"https://awesomerea.org/resources/odis-file-unpacker/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/odis-file-unpacker/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/odis-file-unpacker/index.md","name":"ODIS file unpacker","name_zh":"ODIS file unpacker ODIS 文件解包工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["User-supplied ODIS plugin and DIDB data files.","Python with pycryptodome and blowfish installed.","No licence file in the repository."],"requirements_zh":["需要用户自行提供 ODIS 插件和 DIDB 数据文件。","需要 Python，并安装 pycryptodome 和 blowfish。","仓库中没有许可证文件。"],"targets":["app"],"url":"https://github.com/kartoffelpflanze/ODIS-file-unpacker","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"rust-sig-gen generates IDA FLAIR library signatures from compiled Rust crates for executable analysis. Its Python script obtains the top 100 crates, builds them for Linux and x86-64 Windows, and processes the outputs with sigmake, pelf and pcf.","description_zh":"rust-sig-gen 为可执行文件分析生成 Rust crate 的 IDA FLAIR 库签名。其 Python 脚本获取排名前 100 的 crate，编译 Linux 与 x86-64 Windows 版本，再使用 sigmake、pelf 和 pcf 处理编译产物。","entry_url":"https://awesomerea.org/resources/rust-sig-gen/","entry_url_zh":"https://awesomerea.org/zh/resources/rust-sig-gen/","evidence_url":"https://github.com/st0de/rust-sig-gen/blob/8890d961aa966531525393774b257a797e59a61d/README.md","group":"tools","id":"rust-sig-gen","json_url":"https://awesomerea.org/resources/rust-sig-gen/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/rust-sig-gen/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rust-sig-gen/index.md","name":"rust-sig-gen","name_zh":"rust-sig-gen Rust crate 的 IDA 签名生成器","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","scope","license"],"requirements":["Python packages requests and toml, a Rust compiler, and IDA Pro FLAIR tools sigmake, pelf and pcf are required.","The documented scope is the top 100 Rust crates and Linux and x86-64 Windows builds.","No licence file in the repository."],"requirements_zh":["需要 Python 的 requests、toml 包、Rust 编译器，以及 IDA Pro FLAIR 的 sigmake、pelf、pcf 工具。","文档所述范围为排名前 100 的 Rust crate，以及 Linux 和 x86-64 Windows 编译目标。","仓库中没有许可证文件。"],"targets":["binary"],"url":"https://github.com/st0de/rust-sig-gen","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/StardustVulpine/tMock-Server/blob/54cbdba0337979fe4d67e4f2e613a6f0d0811345/CMakeLists.txt"],"category":"reconstruction-cases","description_en":"tMock-Server is an unfinished C++ reimplementation of the Terraria server's initial network flow. It uses socket code and packet classes to accept connections, check protocol versions, request passwords, and assign player slots; the README records packet IDs, fields, directions, and structures informed by traffic analysis.","description_zh":"tMock-Server 是用 C++ 重建 Terraria 服务器初始联网流程的未完成项目。它以套接字代码和数据包类处理连接、协议版本、密码交换及玩家槽位分配；README 根据流量分析记录了消息 ID、字段、方向和结构。","entry_url":"https://awesomerea.org/resources/tmock-server-case/","entry_url_zh":"https://awesomerea.org/zh/resources/tmock-server-case/","evidence_url":"https://github.com/StardustVulpine/tMock-Server/blob/54cbdba0337979fe4d67e4f2e613a6f0d0811345/README.md","group":"cases","id":"tmock-server-case","json_url":"https://awesomerea.org/resources/tmock-server-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/tmock-server-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/tmock-server-case/index.md","name":"tMock-Server: reconstructing Terraria server handshakes","name_zh":"tMock-Server：重建 Terraria 服务器握手流程","reconstruction_method":"other","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["GNU/Linux is currently required because the server relies on its socket support.","CMake 4.1 and a C++26 toolchain are specified by the build file.","Player and world information handling remain unfinished.","GPL-3.0 license."],"requirements_zh":["目前需要 GNU/Linux，因为服务器依赖其套接字支持。","构建文件指定 CMake 4.1 和 C++26 工具链。","玩家与世界信息处理尚未完成。","采用 GPL-3.0 许可证。"],"targets":["game","protocol"],"url":"https://github.com/StardustVulpine/tMock-Server","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"binary-libraries","description_en":"1C 7.7 Configuration Parser inspects 1C:Enterprise 7.7 1cv7.md configuration containers. Its Win32 interface displays OLE streams, decompresses ZLib data, removes the documented XOR layer and parses Main MetaData Stream into an object hierarchy.","description_zh":"1C 7.7 Configuration Parser 检查 1C:Enterprise 7.7 的 1cv7.md 配置容器。其 Win32 界面展示 OLE 流，解压 ZLib 数据、去除文档所述的 XOR 加密层，并将 Main MetaData Stream 解析为对象层级。","entry_url":"https://awesomerea.org/resources/1cmdparser/","entry_url_zh":"https://awesomerea.org/zh/resources/1cmdparser/","evidence_url":"https://github.com/bigsprut/1CMDParser/blob/bcf43b4538af56557d190c0bdd2871de3ba097b2/readme.md","group":"tools","id":"1cmdparser","json_url":"https://awesomerea.org/resources/1cmdparser/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/1cmdparser/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/1cmdparser/index.md","name":"1C 7.7 Configuration Parser (MD Parser)","name_zh":"1C 7.7 Configuration Parser 1C 配置文件解析器","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["Windows and a 1cv7.md configuration file are required.","Building uses Visual Studio or Build Tools with NMAKE.","MIT license."],"requirements_zh":["需要 Windows 和 1cv7.md 配置文件。","构建需要 Visual Studio 或 Build Tools，以及 NMAKE。","采用 MIT 许可证。"],"targets":["app"],"url":"https://github.com/bigsprut/1CMDParser","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dynamic-analysis","description_en":"x64dbg-tenet is a native x64dbg plugin that records execution steps in Tenet trace format. Commands start and stop logging or trace a specified number of steps, with an option to stop when execution leaves the current module.","description_zh":"x64dbg-tenet 是将执行步骤录制为 Tenet 轨迹格式的原生 x64dbg 插件。命令可启动和停止记录，也可追踪指定步数，或在执行离开当前模块时停止。","entry_url":"https://awesomerea.org/resources/x64dbg-tenet/","entry_url_zh":"https://awesomerea.org/zh/resources/x64dbg-tenet/","evidence_url":"https://github.com/gr0grig/x64dbg-tenet/blob/4ed0c58eb8df75b9022b9ecc4cdd06422bad0e0b/README.md","group":"tools","id":"x64dbg-tenet","json_url":"https://awesomerea.org/resources/x64dbg-tenet/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/x64dbg-tenet/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/x64dbg-tenet/index.md","name":"x64dbg-tenet","name_zh":"x64dbg-tenet Tenet 格式轨迹录制插件","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","license"],"requirements":["x64dbg is required.","MIT license."],"requirements_zh":["需要 x64dbg。","采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/gr0grig/x64dbg-tenet","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Knight1/vanmoof-ble/blob/173b4c4fdf77b9f47d0aeea1f9ee1379e2aa0e92/README.md"],"category":"reconstruction-cases","description_en":"VanMoof BLE implements a Python client for the S5, A5 and S6 bicycle BLE protocols. It authenticates with an Ed25519 certificate, reads and writes documented topics, decodes captured messages, and exposes controls and telemetry according to each model's message format.","description_zh":"VanMoof BLE 用 Python 实现 VanMoof S5、A5 和 S6 自行车的 BLE 协议客户端。它使用 Ed25519 证书认证，读写文档化的主题、解码抓取的消息，并按不同车型的消息格式提供控制与遥测功能。","entry_url":"https://awesomerea.org/resources/vanmoof-ble-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/vanmoof-ble-protocol-case/","evidence_url":"https://github.com/Knight1/vanmoof-ble/blob/173b4c4fdf77b9f47d0aeea1f9ee1379e2aa0e92/docs/PROTOCOL.md","group":"cases","id":"vanmoof-ble-protocol-case","json_url":"https://awesomerea.org/resources/vanmoof-ble-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/vanmoof-ble-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/vanmoof-ble-protocol-case/index.md","name":"VanMoof BLE: a client for S5, A5 and S6 bicycle protocols","name_zh":"VanMoof BLE：S5、A5 与 S6 自行车协议客户端","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","scope","license"],"requirements":["A VanMoof S5, A5 or S6, a BLE-capable device, Python 3.8+, and the bike certificate and private key.","Region changes, streaming telemetry and module status are listed for S5/A5 only.","No licence file in the repository."],"requirements_zh":["需要 VanMoof S5、A5 或 S6、自带 BLE 的设备、Python 3.8+，以及自行车证书和私钥。","区域设置、流式遥测和模块状态仅列为 S5/A5 功能。","仓库中没有许可证文件。"],"targets":["firmware","protocol"],"url":"https://github.com/Knight1/vanmoof-ble","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/HackingLZ/holley-efi-parser/blob/3403b0446a6a843be8be03a449a8e00e25810964/can/README.md"],"category":"protocol-analysis","description_en":"Holley EFI Parser decodes Holley DL and DLZ data logs and live ECU CAN messages. Its Python tools decompress DLZ with byte swapping and RLE, parse versioned DL records into pandas DataFrames, and decode CAN messages using supplied DBC files. The documentation records the proprietary 29-bit CAN identifier layout.","description_zh":"Holley EFI Parser 解析 Holley 的 DL、DLZ 数据日志及 ECU 实时 CAN 消息。Python 工具通过字节交换和 RLE 解压 DLZ，将不同版本的 DL 记录读入 pandas DataFrame，并用附带的 DBC 文件解码 CAN；文档还记录了专有的 29 位 CAN 标识符结构。","entry_url":"https://awesomerea.org/resources/holley-efi-parser/","entry_url_zh":"https://awesomerea.org/zh/resources/holley-efi-parser/","evidence_url":"https://github.com/HackingLZ/holley-efi-parser/blob/3403b0446a6a843be8be03a449a8e00e25810964/README.md","group":"tools","id":"holley-efi-parser","json_url":"https://awesomerea.org/resources/holley-efi-parser/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/holley-efi-parser/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/holley-efi-parser/index.md","name":"Holley EFI Parser","name_zh":"Holley EFI Parser 日志与 CAN 协议解析工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","testing","license"],"requirements":["Python and the package dependencies are required; live CAN use additionally needs a configured Linux CAN interface.","V4 DL support is partial, and V5 files require conversion to V6 with Holley software.","The author reports DLZ decompression accuracy from nine file pairs.","MIT License."],"requirements_zh":["需要 Python 及项目依赖；实时 CAN 功能还需要配置好的 Linux CAN 接口。","V4 DL 支持不完整，V5 文件须先经 Holley 软件转换为 V6。","作者报告用九组文件验证了 DLZ 解压准确性。","MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/HackingLZ/holley-efi-parser","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Knight1/vanmoof-canbus/blob/9a7428748e4307405b16fe95565aa23033a07a1d/CANBUS.md"],"category":"protocol-analysis","description_en":"CAN Bus Parser decodes VanMoof SA5 and later bicycle CAN captures from CSV or candump input. It reassembles multi-frame CBOR messages, maps device IDs and heartbeat frames, and provides live or saved-capture diagnostics for components such as the electronic lock and shifter.","description_zh":"CAN Bus Parser 解析 VanMoof SA5 及后续车型的 CSV 或 candump CAN 抓包，重组多帧 CBOR 消息并映射设备 ID 与心跳帧。它还可对电子锁、变速器等组件进行实时或离线诊断。","entry_url":"https://awesomerea.org/resources/vanmoof-can-bus-parser/","entry_url_zh":"https://awesomerea.org/zh/resources/vanmoof-can-bus-parser/","evidence_url":"https://github.com/Knight1/vanmoof-canbus/blob/9a7428748e4307405b16fe95565aa23033a07a1d/README.md","group":"tools","id":"vanmoof-can-bus-parser","json_url":"https://awesomerea.org/resources/vanmoof-can-bus-parser/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/vanmoof-can-bus-parser/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/vanmoof-can-bus-parser/index.md","name":"CAN Bus Parser","name_zh":"CAN Bus Parser VanMoof 总线解析工具","record_type":"resource","relationship":"foundation","requirements":["Go 1.24 or newer.","Live capture requires Linux SocketCAN and a CAN adapter supporting 1 Mbps and 29-bit extended IDs."],"requirements_zh":["需要 Go 1.24 或更新版本。","实时抓包需要 Linux SocketCAN，以及支持 1 Mbps 和 29 位扩展 ID 的 CAN 适配器。"],"targets":["protocol"],"url":"https://github.com/Knight1/vanmoof-canbus","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/electrondefuser/cbfirestorm/blob/65802f360916030cffa2207ac5f72fae183fe0ca/PROTOCOL.md"],"category":"reconstruction-cases","description_en":"Cosmic Byte Firestorm Controller implements a Linux client for the mouse's recovered USB settings protocol. Its Python CLI sends control and interrupt transfers to configure lighting effects, per-DPI indicator colours and sensitivity levels, while PROTOCOL.md records packet structures and command sequences.","description_zh":"Cosmic Byte Firestorm Controller 是基于已解析 USB 设置协议实现的 Linux 鼠标控制工具。其 Python 命令行程序通过控制传输和中断传输配置灯效、各档 DPI 指示颜色及灵敏度；PROTOCOL.md 记录了数据包结构和命令序列。","entry_url":"https://awesomerea.org/resources/cosmic-byte-firestorm-controller-case/","entry_url_zh":"https://awesomerea.org/zh/resources/cosmic-byte-firestorm-controller-case/","evidence_url":"https://github.com/electrondefuser/cbfirestorm/blob/65802f360916030cffa2207ac5f72fae183fe0ca/README.md","group":"cases","id":"cosmic-byte-firestorm-controller-case","json_url":"https://awesomerea.org/resources/cosmic-byte-firestorm-controller-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/cosmic-byte-firestorm-controller-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cosmic-byte-firestorm-controller-case/index.md","name":"Cosmic Byte Firestorm Controller: a USB protocol client for mouse settings","name_zh":"Cosmic Byte Firestorm Controller：基于 USB 协议的鼠标设置客户端","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","testing","license"],"requirements":["Linux and a Cosmic Byte Firestorm mouse with VID 0x04d9 and PID 0xa09f; USB access typically requires sudo.","Running from source requires Python, pyusb and PyYAML.","Device support was tested only with the named Firestorm model.","GPL-3.0 licence."],"requirements_zh":["需要 Linux 和 VID 为 0x04d9、PID 为 0xa09f 的 Cosmic Byte Firestorm 鼠标；访问 USB 通常需要 sudo。","从源码运行需要 Python、pyusb 和 PyYAML。","设备支持仅在所述 Firestorm 型号上测试。","采用 GPL-3.0 许可证。"],"targets":["protocol"],"url":"https://github.com/electrondefuser/cbfirestorm","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/NuVelocity/NuVelocity/blob/814f9c879de343bd57b5d875dc9119eb57496269/CMakeLists.txt"],"category":"reconstruction-cases","description_en":"NuVelocity Engine reimplements Reflexive Entertainment's Velocity Engine as a C++ and SDL3 game engine. It provides modular 2D rendering, asset and resource loading, audio playback, screen management, and a property-based object system, with decoder source included in the repository.","description_zh":"NuVelocity Engine 用 C++ 和 SDL3 重实现 Reflexive Entertainment 的 Velocity Engine。它包含模块化二维渲染、资源加载、音频播放、界面管理和基于属性的对象系统，仓库中还提供资源解码器源码。","entry_url":"https://awesomerea.org/resources/nuvelocity-engine-case/","entry_url_zh":"https://awesomerea.org/zh/resources/nuvelocity-engine-case/","evidence_url":"https://github.com/NuVelocity/NuVelocity/blob/814f9c879de343bd57b5d875dc9119eb57496269/README.md","group":"cases","id":"nuvelocity-engine-case","json_url":"https://awesomerea.org/resources/nuvelocity-engine-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/nuvelocity-engine-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/nuvelocity-engine-case/index.md","name":"NuVelocity Engine: reimplementing Reflexive's Velocity Engine","name_zh":"NuVelocity Engine：重实现 Reflexive 的 Velocity Engine","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","license"],"requirements":["SDL3, SDL3_image, SDL3_mixer, SDL3_ttf, zlib, physfs, CMake, and submodules are required for the documented build.","Mozilla Public License 2.0 applies to the engine and main code."],"requirements_zh":["按文档构建需要 SDL3、SDL3_image、SDL3_mixer、SDL3_ttf、zlib、physfs、CMake 及子模块。","引擎和主要代码采用 Mozilla Public License 2.0。"],"targets":["game"],"url":"https://github.com/NuVelocity/NuVelocity","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/NuVelocity/FRS42/blob/8d006fbe0d64663830590d23c0519c34d5f4a3ed/CMakeLists.txt","https://github.com/NuVelocity/FRS42/blob/8d006fbe0d64663830590d23c0519c34d5f4a3ed/LICENSE"],"category":"reconstruction-cases","description_en":"FreeRS42 is a C++ project to reimplement the PC game Ricochet Xtreme using the NuVelocity engine. The repository contains source for game objects, playfield behavior and screens, with a CMake build that includes the engine submodule.","description_zh":"FreeRS42 是使用 NuVelocity 引擎、以 C++ 重现 PC 游戏《Ricochet Xtreme》的项目。仓库包含游戏对象、场地逻辑和界面的源码，并通过 CMake 构建游戏及引擎子模块。","entry_url":"https://awesomerea.org/resources/freers42-ricochet-xtreme-case/","entry_url_zh":"https://awesomerea.org/zh/resources/freers42-ricochet-xtreme-case/","evidence_url":"https://github.com/NuVelocity/FRS42/blob/8d006fbe0d64663830590d23c0519c34d5f4a3ed/README.md","group":"cases","id":"freers42-ricochet-xtreme-case","json_url":"https://awesomerea.org/resources/freers42-ricochet-xtreme-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/freers42-ricochet-xtreme-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/freers42-ricochet-xtreme-case/index.md","name":"FreeRS42: reimplementing Ricochet Xtreme","name_zh":"FreeRS42：重实现《Ricochet Xtreme》","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Clone the repository with submodules and install the engine dependencies documented by the project.","MPL-2.0 license for the main code and engine."],"requirements_zh":["需连同子模块克隆仓库，并安装项目所述的引擎依赖。","主体代码及引擎采用 MPL-2.0 许可证。"],"targets":["game"],"url":"https://github.com/NuVelocity/FRS42","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"game-analysis","description_en":"Universal GBA Pokedex scans Game Boy Advance Pokémon ROMs to locate and display evolution, name and item tables. It searches byte signatures, scores candidate tables using text and pointer patterns, and aligns entries against known anchors instead of requiring fixed offsets.","description_zh":"Universal GBA Pokedex 扫描 Game Boy Advance 宝可梦 ROM，定位并展示进化、名称和道具表。它搜索字节特征，依据文本及指针模式评分候选表，再用已知条目对齐索引，无需预设固定偏移。","entry_url":"https://awesomerea.org/resources/universal-gba-pokedex/","entry_url_zh":"https://awesomerea.org/zh/resources/universal-gba-pokedex/","evidence_url":"https://github.com/TheJazz123/Universal-GBA-Pokedex/blob/71e18741b740d0ae2e4320035e6bb207c6ffd26e/README.md","group":"tools","id":"universal-gba-pokedex","json_url":"https://awesomerea.org/resources/universal-gba-pokedex/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/universal-gba-pokedex/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/universal-gba-pokedex/index.md","name":"Universal GBA Pokedex","name_zh":"Universal GBA Pokedex 宝可梦 ROM 数据分析工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Requires a Game Boy Advance Pokémon ROM supplied by the user.","Running from source requires Python 3.x and Tkinter.","Support for expanded Pokédex hacks such as Radical Red is experimental.","MIT licence."],"requirements_zh":["需要用户提供 Game Boy Advance 宝可梦 ROM。","从源码运行需要 Python 3.x 和 Tkinter。","对 Radical Red 等扩展图鉴改版的支持仍属实验阶段。","采用 MIT 许可证。"],"targets":["game"],"url":"https://github.com/TheJazz123/Universal-GBA-Pokedex","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"NullSec BinGaze analyses ELF executables by parsing headers, listing sections and calculating entropy. It also reports NX stack, PIE, RELRO, stack-canary and RWX-segment properties through command-line modes for full analysis, section listing or security assessment.","description_zh":"NullSec BinGaze 通过解析 ELF 头、列出节区和计算熵来分析可执行文件。命令行提供完整分析、节区列表和安全属性检查，可报告 NX 栈、PIE、RELRO、栈保护及 RWX 段。","entry_url":"https://awesomerea.org/resources/nullsec-bingaze/","entry_url_zh":"https://awesomerea.org/zh/resources/nullsec-bingaze/","evidence_url":"https://github.com/bad-antics/nullsec-bingaze/blob/91848d3db19fa7388264825312720c1b0717d2c7/README.md","group":"tools","id":"nullsec-bingaze","json_url":"https://awesomerea.org/resources/nullsec-bingaze/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/nullsec-bingaze/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/nullsec-bingaze/index.md","name":"NullSec BinGaze","name_zh":"NullSec BinGaze ELF 结构与防护属性分析工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","license"],"requirements":["A C++20 compiler and CMake are required to build it.","The README labels the licence NullSec Proprietary; the file list contains no licence file."],"requirements_zh":["构建需要 C++20 编译器和 CMake。","README 将许可标为 NullSec Proprietary；仓库文件列表中没有许可证文件。"],"targets":["binary"],"url":"https://github.com/bad-antics/nullsec-bingaze","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/LeiterConsulting/finalmouse_centerpiece/blob/ecd36e48f7a540dc9c723da32fbb03782de480a7/README.md"],"category":"reconstruction-cases","description_en":"Centerpiece Projects documents observed USB control messages for the Finalmouse Centerpiece keyboard and implements scripts around them. Its notes describe HID framing and message types for uploads, status, slot switching and preview chunks; PowerShell and Python helpers expose device operations.","description_zh":"Centerpiece Projects 记录 Finalmouse Centerpiece 键盘的 USB 控制消息，并据此编写交互脚本。协议笔记描述 HID 帧结构，以及上传、状态、槽位切换和预览分块的消息类型；PowerShell 与 Python 工具提供相应操作。","entry_url":"https://awesomerea.org/resources/finalmouse-centerpiece-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/finalmouse-centerpiece-protocol-case/","evidence_url":"https://github.com/LeiterConsulting/finalmouse_centerpiece/blob/ecd36e48f7a540dc9c723da32fbb03782de480a7/gitdocs/ProtocolNotes.md","group":"cases","id":"finalmouse-centerpiece-protocol-case","json_url":"https://awesomerea.org/resources/finalmouse-centerpiece-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/finalmouse-centerpiece-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/finalmouse-centerpiece-protocol-case/index.md","name":"Centerpiece Projects: decoding Finalmouse Centerpiece USB control","name_zh":"Centerpiece Projects：解析 Finalmouse Centerpiece 的 USB 控制协议","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["A connected Finalmouse Centerpiece, Windows 10 or later, PowerShell and Python for the public scripts.","The vendor-specific WinUSB bulk interface remains under investigation, and the notes are not a complete protocol specification.","No licence file in the repository."],"requirements_zh":["公开脚本需要已连接的 Finalmouse Centerpiece、Windows 10 或更新版本、PowerShell 和 Python。","厂商专用 WinUSB 批量接口仍在研究中，现有笔记并非完整协议规范。","仓库中没有许可证文件。"],"targets":["protocol"],"url":"https://github.com/LeiterConsulting/finalmouse_centerpiece","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"web-analysis","description_en":"Facebook BitMap Codec encodes and decodes Facebook web API parameter values using the project's reverse-engineered bitmap, run-length and custom Base64 scheme. Its Python module exposes a FacebookCodec class for converting ID lists to encoded strings and back across parameters including __dyn and __csr.","description_zh":"Facebook BitMap Codec 按项目还原的位图、游程编码和自定义 Base64 规则，对 Facebook 网页 API 参数进行编解码。Python 模块提供 FacebookCodec 类，可在 ID 列表与 __dyn、__csr 等参数值之间转换。","entry_url":"https://awesomerea.org/resources/facebookcodec/","entry_url_zh":"https://awesomerea.org/zh/resources/facebookcodec/","evidence_url":"https://github.com/NiceDayZc/FacebookCodec/blob/035ad8cd386f6c5a102f0d4ca303ae62e5434f6b/README.md","group":"tools","id":"facebookcodec","json_url":"https://awesomerea.org/resources/facebookcodec/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/facebookcodec/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/facebookcodec/index.md","name":"Facebook BitMap Codec","name_zh":"Facebook BitMap Codec 参数编解码工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Python 3.8+ and the FCodec.py module are required.","The author claims lossless conversion and compatibility with the listed bitmap parameters.","No licence file in the repository."],"requirements_zh":["需要 Python 3.8+ 和 FCodec.py 模块。","作者称其可无损转换，并兼容列出的位图参数。","仓库中没有许可证文件。"],"targets":["website"],"url":"https://github.com/NiceDayZc/FacebookCodec","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"binary-libraries","description_en":"pdbinspector analyzes Microsoft PDB files to list structures, classes, enums, functions, public symbols and exports. It demangles MSVC C++ names, decodes MSVC string literals and emits text, JSON or tab-separated reports through a CLI; a WebAssembly version runs online.","description_zh":"pdbinspector 分析 Microsoft PDB 文件，列出结构体、类、枚举、函数、公共符号和导出项。它可还原 MSVC C++ 符号名、解码 MSVC 字符串字面量，并通过命令行输出文本、JSON 或制表符分隔报告；另有 WebAssembly 在线版本。","entry_url":"https://awesomerea.org/resources/pdbinspector/","entry_url_zh":"https://awesomerea.org/zh/resources/pdbinspector/","evidence_url":"https://github.com/nikaiw/pdbinspector/blob/c02a188fdefd98bfca7583561cad0e9f7486b902/README.md","group":"tools","id":"pdbinspector","json_url":"https://awesomerea.org/resources/pdbinspector/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pdbinspector/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pdbinspector/index.md","name":"pdbinspector","name_zh":"pdbinspector Microsoft PDB 信息检查工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["A Microsoft PDB file is required as input.","Building from source requires Rust; the manifest specifies Rust 1.75 or later.","MIT License."],"requirements_zh":["需要 Microsoft PDB 文件作为输入。","从源码构建需要 Rust；项目清单要求 Rust 1.75 及以上版本。","采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/nikaiw/pdbinspector","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Phoenix-Assassins/ac3-docs/blob/10ab3f025e60d0473a594bb1d9bc0ed971ac2a67/README.md"],"category":"protocol-analysis","description_en":"Assassin's Creed III online service docs record method IDs and request and response fields for the PC game's online services. The files cover RMC services such as online saves and account management, alongside notes on P2P Duplicated Objects over PRUDP.","description_zh":"Assassin's Creed III 在线服务文档记录 PC 版游戏服务的方法编号，以及请求和响应字段。现有文件涵盖在线存档、账户管理等 RMC 服务，并记载 PRUDP 上的 P2P Duplicated Objects。","entry_url":"https://awesomerea.org/resources/ac3-online-service-docs/","entry_url_zh":"https://awesomerea.org/zh/resources/ac3-online-service-docs/","evidence_url":"https://github.com/Phoenix-Assassins/ac3-docs/blob/10ab3f025e60d0473a594bb1d9bc0ed971ac2a67/RMC/ACOnlineSaveProtocol.md","group":"learn","id":"ac3-online-service-docs","json_url":"https://awesomerea.org/resources/ac3-online-service-docs/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/ac3-online-service-docs/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ac3-online-service-docs/index.md","name":"Assassin's Creed III online service docs","name_zh":"Assassin's Creed III 在线服务协议文档","record_type":"resource","relationship":"learning","requirement_facets":["scope","license"],"requirements":["Scope is Assassin's Creed III PC online services.","No licence file in the repository."],"requirements_zh":["范围为《Assassin's Creed III》PC 版在线服务。","仓库中没有许可证文件。"],"targets":["game","protocol"],"url":"https://github.com/Phoenix-Assassins/ac3-docs","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"AOL 7.0 Retro Server implements local Python servers for the 2001 AOL 7.0 client. It reconstructs the proprietary P3 login and security exchange, the handoff between login and BOS servers, and post-login data used to display the welcome screen and buddy list.","description_zh":"AOL 7.0 Retro Server 为 2001 年的 AOL 7.0 客户端实现本地 Python 服务端。它复现专有 P3 登录与安全握手、登录服务器到 BOS 服务器的切换，以及显示欢迎页和好友列表所需的登录后数据。","entry_url":"https://awesomerea.org/resources/aol7-retro-server-case/","entry_url_zh":"https://awesomerea.org/zh/resources/aol7-retro-server-case/","evidence_url":"https://github.com/pioneerman2k1/AOL7-Retro-Server/blob/fe9a0a27ac76c459181d268f51a98a4df0438f03/README.md","group":"cases","id":"aol7-retro-server-case","json_url":"https://awesomerea.org/resources/aol7-retro-server-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/aol7-retro-server-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/aol7-retro-server-case/index.md","name":"AOL 7.0 Retro Server: reconstructing the P3 server session","name_zh":"AOL 7.0 Retro Server：复现 P3 服务端会话","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["Python 3.x and an installed English or German AOL 7.0 client on a VM or older machine are required.","Interactive chat rooms, email simulation and keyword navigation remain on the roadmap.","No licence file in the repository."],"requirements_zh":["需要 Python 3.x，以及在虚拟机或旧设备上安装的英文或德文 AOL 7.0 客户端。","交互式聊天室、邮件模拟和关键词导航仍处于规划阶段。","仓库中没有许可证文件。"],"targets":["app","protocol"],"url":"https://github.com/pioneerman2k1/AOL7-Retro-Server","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/TurnaboutHero/vainglory-replay-decoder/blob/f4743be743564e3aadef1566499fe25d9d0f9ffc/vg/analysis/ACTION_CODE_ANALYSIS_REPORT.md"],"category":"game-analysis","description_en":"VG Reverse Engineering decodes Vainglory: Community Edition replay files into recorded player names, heroes, K/D/A, items, gold and scoreboard counters. Its offline tools also export JSON and CSV, maintain a SQLite catalog and document VGR record and event interpretation. Output records provenance and leaves unsupported values unresolved.","description_zh":"VG Reverse Engineering 将 Vainglory: Community Edition 回放文件解码为玩家名称、英雄、击杀／死亡／助攻统计、物品、金币和计分板计数。离线工具还可导出 JSON、CSV，维护 SQLite 目录，并记录 VGR 记录结构与事件解释；输出保留数据来源，对缺少依据的数值保持空值。","entry_url":"https://awesomerea.org/resources/vainglory-replay-decoder/","entry_url_zh":"https://awesomerea.org/zh/resources/vainglory-replay-decoder/","evidence_url":"https://github.com/TurnaboutHero/vainglory-replay-decoder/blob/f4743be743564e3aadef1566499fe25d9d0f9ffc/README.md","group":"tools","id":"vainglory-replay-decoder","json_url":"https://awesomerea.org/resources/vainglory-replay-decoder/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/vainglory-replay-decoder/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/vainglory-replay-decoder/index.md","name":"VG Reverse Engineering","name_zh":"VG Reverse Engineering Vainglory 回放分析工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Python 3.12 or newer for the offline decoder; the complete regression suite also requires Node.js 18 or newer.","A user's own .0.vgr recording and numbered sibling files are needed for decoding a match.","The source says recordings lack a client build identifier and currently cannot enter its definitive-analysis subset.","No licence file in the repository."],"requirements_zh":["离线解码器需要 Python 3.12 或更高版本；完整回归测试还需要 Node.js 18 或更高版本。","解码比赛需要用户自己的 .0.vgr 记录及对应的编号文件。","项目说明记录中没有客户端构建标识，目前所有记录均不能进入其确定性分析子集。","仓库中没有许可证文件。"],"targets":["game"],"url":"https://github.com/TurnaboutHero/vainglory-replay-decoder","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dynamic-analysis","description_en":"8086 Register Command Debugger is an MS-DOS machine-code inspection tool written in 8086 assembly. It loads a program into a 64 KB segment, decodes 8086 instructions and lets users inspect or edit memory and registers while stepping through real CPU instructions using the Trap Flag.","description_zh":"8086 Register Command Debugger 是以 8086 汇编编写的 MS-DOS 机器码分析工具。它把程序装入 64 KB 段，反汇编 8086 指令，供用户查看和修改内存、寄存器，并借助 Trap Flag 逐条执行真实 CPU 指令。","entry_url":"https://awesomerea.org/resources/8086-register-command-debugger/","entry_url_zh":"https://awesomerea.org/zh/resources/8086-register-command-debugger/","evidence_url":"https://github.com/Usman-Azfar/8086-assembly-debugger/blob/a35fca10b5483212307bb3fb02dc7bc4d23c88fe/README.md","group":"tools","id":"8086-register-command-debugger","json_url":"https://awesomerea.org/resources/8086-register-command-debugger/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/8086-register-command-debugger/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/8086-register-command-debugger/index.md","name":"8086 Register Command Debugger","name_zh":"8086 Register Command Debugger 汇编调试器","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","scope","license"],"requirements":["MS-DOS or a compatible environment such as DOSBox is needed to run the executable.","The program uses a 64 KB memory segment and original 8086 instructions.","MIT license."],"requirements_zh":["运行程序需要 MS-DOS 或 DOSBox 等兼容环境。","程序使用 64 KB 内存段，并仅采用原始 8086 指令。","采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/Usman-Azfar/8086-assembly-debugger","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Phoenix-Assassins/ac4-docs/blob/5db849b7df9ca7a4f71c9059c02d045f99568169/README.md"],"category":"protocol-analysis","description_en":"AC4 docs records online service interfaces for the PC version of Assassin's Creed IV Black Flag. Its RMC documents list method IDs and request and response types, while the repository also contains HTTP API specifications for service revival work.","description_zh":"AC4 docs 记录《刺客信条 IV：黑旗》PC 版在线服务接口。RMC 文档列出方法编号及请求、响应类型；仓库还收录 HTTP API 规格，供在线服务恢复工作参考。","entry_url":"https://awesomerea.org/resources/ac4-docs/","entry_url_zh":"https://awesomerea.org/zh/resources/ac4-docs/","evidence_url":"https://github.com/Phoenix-Assassins/ac4-docs/blob/5db849b7df9ca7a4f71c9059c02d045f99568169/RMC/ACOnlineSaveProtocol.md","group":"learn","id":"ac4-docs","json_url":"https://awesomerea.org/resources/ac4-docs/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/ac4-docs/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ac4-docs/index.md","name":"AC4 docs","name_zh":"AC4 docs《刺客信条 IV：黑旗》在线服务协议文档","record_type":"resource","relationship":"learning","requirement_facets":["scope","license"],"requirements":["Scope is the PC online services of Assassin's Creed IV Black Flag.","No licence file in the repository."],"requirements_zh":["范围为《刺客信条 IV：黑旗》PC 版在线服务。","仓库中没有许可证文件。"],"targets":["game","protocol"],"url":"https://github.com/Phoenix-Assassins/ac4-docs","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Arsh-pixel-cmd/DevLens/blob/bf2b4ed21cb79aa2713cc4917ff06ea415431332/PRIVACY_POLICY.md"],"category":"web-analysis","description_en":"DevLens Ultra is a Chrome extension for inspecting and extracting website component structure. It analyzes selected DOM elements, computed styles and framework state such as React Fiber props, then generates React JSX and Tailwind classes. An optional AI step refines selected snippets through a configured provider.","description_zh":"DevLens Ultra 是用于检查和提取网页组件结构的 Chrome 扩展。它分析所选 DOM 元素、计算样式及 React Fiber 属性等框架状态，生成 React JSX 与 Tailwind 类；用户还可配置 AI 服务进一步整理所选片段。","entry_url":"https://awesomerea.org/resources/devlens-ultra/","entry_url_zh":"https://awesomerea.org/zh/resources/devlens-ultra/","evidence_url":"https://github.com/Arsh-pixel-cmd/DevLens/blob/bf2b4ed21cb79aa2713cc4917ff06ea415431332/README.md","group":"tools","id":"devlens-ultra","json_url":"https://awesomerea.org/resources/devlens-ultra/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/devlens-ultra/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/devlens-ultra/index.md","name":"DevLens Ultra","name_zh":"DevLens Ultra 网页组件分析扩展","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["Chrome with extension Developer Mode to load the unpacked extension.","AI refinement requires a configured provider API key and base URL.","No licence file in the repository."],"requirements_zh":["需要在 Chrome 中开启扩展开发者模式并加载未打包扩展。","使用 AI 整理功能需要配置服务商 API 密钥和基础地址。","仓库中没有许可证文件。"],"targets":["website"],"url":"https://github.com/Arsh-pixel-cmd/DevLens","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/jens62/FAAC-E145-Gate-Connect/blob/631e8b03b92746234cf5470f6080b3e800f9f9d1/README.md"],"category":"reconstruction-cases","description_en":"FAAC E145 Gate Connect implements local control of an FAAC E145 gate through serial commands reconstructed from EasyBoard software traffic. The documentation lists POLL, OPEN, CLOSE and STOP byte sequences and describes their framing and checksum. The Python gateway adds position monitoring plus web, REST and MQTT interfaces.","description_zh":"FAAC E145 Gate Connect 使用从 EasyBoard 软件通信中还原的串口命令，本地控制 FAAC E145 门机。文档列出 POLL、OPEN、CLOSE、STOP 的字节序列，并解释帧结构和校验字段。Python 网关还提供位置监控、网页、REST 与 MQTT 接口。","entry_url":"https://awesomerea.org/resources/faac-e145-gate-connect-case/","entry_url_zh":"https://awesomerea.org/zh/resources/faac-e145-gate-connect-case/","evidence_url":"https://github.com/jens62/FAAC-E145-Gate-Connect/blob/631e8b03b92746234cf5470f6080b3e800f9f9d1/docs/installation.md","group":"cases","id":"faac-e145-gate-connect-case","json_url":"https://awesomerea.org/resources/faac-e145-gate-connect-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/faac-e145-gate-connect-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/faac-e145-gate-connect-case/index.md","name":"FAAC E145 Gate Connect: reconstructing EasyBoard gate commands","name_zh":"FAAC E145 Gate Connect：重建 EasyBoard 门机命令","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","license"],"requirements":["An FAAC E145 controller connected by serial or USB, Python 3.8+ and the documented dependencies.","MIT."],"requirements_zh":["需要通过串口或 USB 连接的 FAAC E145 控制器、Python 3.8+ 及文档所列依赖。","许可证为 MIT。"],"targets":["protocol"],"url":"https://github.com/jens62/FAAC-E145-Gate-Connect","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"stagg-net investigates the Fellow Stagg EKG kettle's internal UART interface and documents its connector, serial settings, observed heartbeat packet, and startup message. The repository includes a logic capture, decoder source, probing scripts, and ESPHome configuration for an ESP32-C6 connection.","description_zh":"stagg-net 调查 Fellow Stagg EKG 电水壶的内部 UART 接口，记录连接器、串口参数、周期心跳包和启动消息。仓库还提供逻辑分析采集文件、解码源码、探测脚本和用于 ESP32-C6 的 ESPHome 配置。","entry_url":"https://awesomerea.org/resources/stagg-net-case/","entry_url_zh":"https://awesomerea.org/zh/resources/stagg-net-case/","evidence_url":"https://github.com/linux4life798/stagg-net/blob/d0592047e340172d0bb90415f2717894b516f2cb/README.md","group":"cases","id":"stagg-net-case","json_url":"https://awesomerea.org/resources/stagg-net-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/stagg-net-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/stagg-net-case/index.md","name":"stagg-net: investigating the Fellow Stagg EKG kettle UART","name_zh":"stagg-net：Fellow Stagg EKG 电水壶 UART 接口调查","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["Fellow Stagg EKG kettle hardware and a 3.3 V serial connection are needed for the described investigation.","The author has observed status traffic but reports that the UART interface does not respond to the BLE packets tried.","No licence file in the repository."],"requirements_zh":["复现所述调查需要 Fellow Stagg EKG 电水壶硬件和 3.3 V 串口连接。","作者观察到状态报文，但报告该 UART 接口不响应已尝试的 BLE 报文。","仓库中没有许可证文件。"],"targets":["protocol"],"url":"https://github.com/linux4life798/stagg-net","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"learning","description_en":"Malware Analysis & CTI Reports collects ten PDF investigations of malware, security tools and binaries with disputed detections. The author describes static inspection with Detect It Easy, strings and imports, followed by manual disassembly or decompilation in Ghidra or radare2.","description_zh":"Malware Analysis & CTI Reports 收录十篇 PDF 调查，涉及恶意软件、安全工具及检测结果存疑的二进制文件。作者采用 Detect It Easy、字符串和导入表检查，并使用 Ghidra 或 radare2 人工反汇编、反编译。","entry_url":"https://awesomerea.org/resources/malware-analysis-cti-reports/","entry_url_zh":"https://awesomerea.org/zh/resources/malware-analysis-cti-reports/","evidence_url":"https://github.com/Spellskite-coding/Binary_Analysis/blob/b247a3fbdc35199f7d83d60f38db08a0c51a8540/README.md","group":"learn","id":"malware-analysis-cti-reports","json_url":"https://awesomerea.org/resources/malware-analysis-cti-reports/record.json","kind":"collection","markdown_url":"https://awesomerea.org/resources/malware-analysis-cti-reports/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/malware-analysis-cti-reports/index.md","name":"Malware Analysis & CTI Reports","name_zh":"Malware Analysis & CTI Reports 恶意软件分析报告集","record_type":"resource","relationship":"learning","requirement_facets":["scope","license"],"requirements":["Reports are PDF files; the repository does not include live malware samples.","No licence file in the repository."],"requirements_zh":["报告以 PDF 提供；仓库不含可运行的恶意软件样本。","仓库中没有许可证文件。"],"targets":["binary"],"url":"https://github.com/Spellskite-coding/Binary_Analysis","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dynamic-analysis","description_en":"advantage is a Windows research tool for inspecting Lenovo Vantage and add-in RPC commands. It injects a stub into a Lenovo-signed process, supplies an RPC JSON payload from a local server, and returns the command response through a CLI or web interface; the repository also contains Frida contract and request dump scripts.","description_zh":"advantage 用于检查 Lenovo Vantage 及其插件的 RPC 命令。它把存根注入 Lenovo 签名进程，从本地服务器提供 RPC JSON 请求，并通过命令行或网页界面返回响应；仓库还包含导出契约和请求的 Frida 脚本。","entry_url":"https://awesomerea.org/resources/advantage/","entry_url_zh":"https://awesomerea.org/zh/resources/advantage/","evidence_url":"https://github.com/rtfmkiesel/advantage/blob/fd75e9cccf1acbf845be81c42acfa6cefd430665/README.md","group":"tools","id":"advantage","json_url":"https://awesomerea.org/resources/advantage/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/advantage/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/advantage/index.md","name":"advantage","name_zh":"advantage Lenovo Vantage RPC 分析工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["A Windows Lenovo Vantage process is required for the documented RPC path.","Go 1.25 or newer and donut are required by the documented build procedure.","Apache-2.0 license."],"requirements_zh":["文档所述 RPC 路径需要 Windows 上运行的 Lenovo Vantage 进程。","文档中的构建流程需要 Go 1.25 或更新版本及 donut。","许可证为 Apache-2.0。"],"targets":["app"],"url":"https://github.com/rtfmkiesel/advantage","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/lem2clide/Chip8-Emulator/blob/a863770a6fea6f673357e4836c189ee63f63eb50/tools/README.md"],"category":"game-analysis","description_en":"The c8-disassembler in Chip-8 Emulator translates CHIP-8 ROM opcodes into assembly instructions. Its source and sample Pong ROM listing show the supported output; the repository also contains a companion emulator whose SDL2 display is marked as work in progress.","description_zh":"Chip-8 Emulator 中的 c8-disassembler 将 CHIP-8 ROM 操作码转换为汇编指令。仓库提供源码及 Pong ROM 的输出示例；配套模拟器的 SDL2 显示功能仍在开发。","entry_url":"https://awesomerea.org/resources/chip8-emulator-disassembler/","entry_url_zh":"https://awesomerea.org/zh/resources/chip8-emulator-disassembler/","evidence_url":"https://github.com/lem2clide/Chip8-Emulator/blob/a863770a6fea6f673357e4836c189ee63f63eb50/README.md","group":"tools","id":"chip8-emulator-disassembler","json_url":"https://awesomerea.org/resources/chip8-emulator-disassembler/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/chip8-emulator-disassembler/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/chip8-emulator-disassembler/index.md","name":"Chip-8 Emulator and c8-disassembler","name_zh":"Chip-8 Emulator 与 c8-disassembler 反汇编器","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["CMake 3.9 or newer is required to build the disassembler; the emulator also requires SDL2.","Super Chip-48 instructions are listed as unsupported.","GPL-3.0 license."],"requirements_zh":["构建反汇编器需要 CMake 3.9 或更新版本；模拟器还需要 SDL2。","尚不支持 Super Chip-48 指令。","采用 GPL-3.0 许可证。"],"targets":["game"],"url":"https://github.com/lem2clide/Chip8-Emulator","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/driversti/erepublik-api/blob/e6f89df77da4a22888233a957a012189552718e8/auth/README.md"],"category":"web-analysis","description_en":"eRepublik API Documentation maps endpoints observed in the browser-based strategy game's web client. Its reference pages cover authentication cookies and requests for travel, battles, economy, social features and other game functions, with HTTP methods and example parameters.","description_zh":"eRepublik API Documentation 整理从网页策略游戏客户端观察到的接口。文档记录认证 Cookie，以及旅行、战斗、经济和社交等功能的请求路径、HTTP 方法与参数示例。","entry_url":"https://awesomerea.org/resources/erepublik-api-documentation/","entry_url_zh":"https://awesomerea.org/zh/resources/erepublik-api-documentation/","evidence_url":"https://github.com/driversti/erepublik-api/blob/e6f89df77da4a22888233a957a012189552718e8/README.md","group":"learn","id":"erepublik-api-documentation","json_url":"https://awesomerea.org/resources/erepublik-api-documentation/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/erepublik-api-documentation/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/erepublik-api-documentation/index.md","name":"eRepublik API Documentation","name_zh":"eRepublik API Documentation 网页客户端接口资料","record_type":"resource","relationship":"learning","requirement_facets":["prerequisites","limits","license"],"requirements":["Most documented endpoints require authentication.","The source warns that undocumented endpoints may change or stop working.","No licence file in the repository."],"requirements_zh":["文档中的多数端点需要认证。","文档提示这些未公开的端点可能变化或失效。","仓库中没有许可证文件。"],"targets":["game","website"],"url":"https://github.com/driversti/erepublik-api","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/n1t3k/garmin-strength-api/blob/20aabbcb15598f67794e29938e2d87d0d22861c9/docs/api-reference.md"],"category":"web-analysis","description_en":"Garmin Strength Workout API documents payloads for creating strength workouts through Garmin Connect's undocumented API. Its reference describes repeat groups, exercise and rest steps, conditions, weights and exercise identifiers, with JSON examples plus a small builder and validator.","description_zh":"Garmin Strength Workout API 记录了通过 Garmin Connect 未公开接口创建力量训练的请求结构。参考资料说明重复组、动作与休息步骤、条件、重量和动作标识，并附 JSON 示例及简单的生成与校验工具。","entry_url":"https://awesomerea.org/resources/garmin-strength-workout-api/","entry_url_zh":"https://awesomerea.org/zh/resources/garmin-strength-workout-api/","evidence_url":"https://github.com/n1t3k/garmin-strength-api/blob/20aabbcb15598f67794e29938e2d87d0d22861c9/README.md","group":"learn","id":"garmin-strength-workout-api","json_url":"https://awesomerea.org/resources/garmin-strength-workout-api/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/garmin-strength-workout-api/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/garmin-strength-workout-api/index.md","name":"Garmin Strength Workout API","name_zh":"Garmin Strength Workout API 力量训练接口参考","record_type":"resource","relationship":"learning","requirement_facets":["prerequisites","limits","license"],"requirements":["Garmin Connect OAuth tokens are required to call the workout endpoint.","The source warns that the undocumented API may change.","MIT License."],"requirements_zh":["调用训练端点需要 Garmin Connect OAuth 令牌。","文档提醒该未公开 API 可能变化。","MIT 许可证。"],"targets":["protocol","website"],"url":"https://github.com/n1t3k/garmin-strength-api","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/coconutbird/netdumper/blob/c7ffe79e3afe804868ed61f2d335c4f173d047e3/Cargo.toml"],"category":"dotnet","description_en":"netdumper extracts loaded .NET assemblies from Windows processes through the CLR Data Access Component. It enumerates AppDomains and assemblies, recovers JIT method IL, converts memory layouts to PE files, and repairs damaged PE headers or metadata streams for subsequent inspection.","description_zh":"netdumper 通过 CLR Data Access Component 从 Windows 进程中提取已加载的 .NET 程序集。它枚举 AppDomain 与程序集，恢复 JIT 方法的 IL，将内存布局转换为 PE 文件，并修复受损的 PE 头或元数据流以供分析。","entry_url":"https://awesomerea.org/resources/netdumper/","entry_url_zh":"https://awesomerea.org/zh/resources/netdumper/","evidence_url":"https://github.com/coconutbird/netdumper/blob/c7ffe79e3afe804868ed61f2d335c4f173d047e3/README.md","group":"tools","id":"netdumper","json_url":"https://awesomerea.org/resources/netdumper/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/netdumper/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/netdumper/index.md","name":"netdumper","name_zh":"netdumper .NET 程序集内存提取工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Windows, Rust nightly, and the same architecture as the target process are required.","Administrator privileges may be required for some processes.","MIT License."],"requirements_zh":["需要 Windows、Rust nightly，且工具架构须与目标进程一致。","分析部分进程可能需要管理员权限。","采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/coconutbird/netdumper","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"TOZO Control provides a Linux GTK4 client for TOZO earbuds using a BLE GATT protocol recovered from the vendor's Android app. It sends commands to characteristic B611, receives notifications on B612, and documents GET and SET packet layouts and parameter IDs. The author reports testing the T10 model for battery, game mode, equalizer and balance controls.","description_zh":"TOZO Control 是 Linux GTK4 耳机客户端，使用从 TOZO Android 应用逆向得到的 BLE GATT 协议。它向 B611 特征写入命令，从 B612 接收通知，并记录 GET、SET 数据包结构及参数编号。作者报告已在 T10 上测试电量、游戏模式、均衡器和声道平衡功能。","entry_url":"https://awesomerea.org/resources/tozo-control-case/","entry_url_zh":"https://awesomerea.org/zh/resources/tozo-control-case/","evidence_url":"https://github.com/GabriWar/tozo-control/blob/eb40bdf22203078aa635e8c61d960538f679cfab/README.md","group":"cases","id":"tozo-control-case","json_url":"https://awesomerea.org/resources/tozo-control-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/tozo-control-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/tozo-control-case/index.md","name":"TOZO Control: a Linux earbuds client built from the TOZO BLE protocol","name_zh":"TOZO Control：基于 TOZO BLE 协议的 Linux 耳机客户端","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["Linux with GTK4, libadwaita, BlueZ and the Python bleak package; a compatible TOZO BLE earbud is needed.","Only TOZO T10 is reported as tested; command support varies by model.","MIT License."],"requirements_zh":["需要安装 GTK4、libadwaita、BlueZ 和 Python bleak 的 Linux，以及兼容的 TOZO BLE 耳机。","作者仅报告测试了 TOZO T10；不同型号支持的命令有所差异。","MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/GabriWar/tozo-control","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/zonfacter/bms-rs485-service-suite/blob/14e1a759e7315c29d1dd1ec2b292dfd5c4d78d63/docs/INDEX.md"],"category":"reconstruction-cases","description_en":"BMS RS485 Service Suite documents an observed ASCII RS485 protocol for battery-management services and implements frame building and decoding in Node-RED. The specification covers framing, length and checksum fields, request and response rules and decoded service IDs; the wider suite connects JK and DALY BLE data to MQTT and dashboards.","description_zh":"BMS RS485 Service Suite 记录电池管理服务中观察到的 ASCII RS485 协议，并在 Node-RED 中实现构帧与解码。规格涵盖帧结构、长度与校验字段、请求响应规则及已解析的服务编号；套件还将 JK、DALY 的 BLE 数据接入 MQTT 和仪表板。","entry_url":"https://awesomerea.org/resources/bms-rs485-service-suite-case/","entry_url_zh":"https://awesomerea.org/zh/resources/bms-rs485-service-suite-case/","evidence_url":"https://github.com/zonfacter/bms-rs485-service-suite/blob/14e1a759e7315c29d1dd1ec2b292dfd5c4d78d63/docs/PROTOCOL_RS485_1363.md","group":"cases","id":"bms-rs485-service-suite-case","json_url":"https://awesomerea.org/resources/bms-rs485-service-suite-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/bms-rs485-service-suite-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bms-rs485-service-suite-case/index.md","name":"BMS RS485 Service Suite: reconstructing a battery-service bus protocol","name_zh":"BMS RS485 Service Suite：重建电池管理总线协议","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["A Raspberry Pi and Node-RED are the documented service environment; BLE gateways use MQTT and optional Python dependencies.","The specification records observed and currently decoded RS485 services; some write acknowledgements are handled generically.","No licence file in the repository."],"requirements_zh":["文档中的服务环境为 Raspberry Pi 和 Node-RED；BLE 网关使用 MQTT，并可安装 Python 依赖。","规格记录了已观察和目前已解码的 RS485 服务；部分写入确认仍按通用方式处理。","仓库中没有许可证文件。"],"targets":["protocol"],"url":"https://github.com/zonfacter/bms-rs485-service-suite","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"game-analysis","description_en":"BGI Converter TGA analyzes BGI-Ethornell game image files and converts custom RGB or RGBA layouts and BMP images into 32-bit TGA. Its C++17 utility detects formats from headers, reports dimensions and offsets, and supports single-file or batch conversion.","description_zh":"BGI Converter TGA 分析 BGI-Ethornell 游戏图像文件，将自定义 RGB、RGBA 布局及 BMP 图像转换为 32 位 TGA。该 C++17 工具按文件头识别格式，显示尺寸和偏移信息，并支持单文件或批量转换。","entry_url":"https://awesomerea.org/resources/bgi-ethornell-converter-tga/","entry_url_zh":"https://awesomerea.org/zh/resources/bgi-ethornell-converter-tga/","evidence_url":"https://github.com/yutaro023/BGI-Ethornell_ConverterTGA_Sekai_VN/blob/2b785515ce91f42845a4d36e61cd509affde5fe6/README.md","group":"tools","id":"bgi-ethornell-converter-tga","json_url":"https://awesomerea.org/resources/bgi-ethornell-converter-tga/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/bgi-ethornell-converter-tga/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bgi-ethornell-converter-tga/index.md","name":"BGI Converter TGA","name_zh":"BGI Converter TGA Ethornell 图像格式分析与转换工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","scope","license"],"requirements":["Requires a C++17 compiler with std::filesystem support.","Inputs are the documented BMP 24-bit, BMP 32-bit, BGI custom RGBA or BGI custom RGB layouts.","MIT license."],"requirements_zh":["需要支持 std::filesystem 的 C++17 编译器。","输入范围为文档列出的 24 位 BMP、32 位 BMP、BGI 自定义 RGBA 或 BGI 自定义 RGB 布局。","采用 MIT 许可证。"],"targets":["game"],"url":"https://github.com/yutaro023/BGI-Ethornell_ConverterTGA_Sekai_VN","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dynamic-analysis","description_en":"Valkyrie analyzes suspect binaries through static inspection and Docker-based execution. Its documented pipeline examines PE headers, entropy and packing, then captures system calls, file activity and PCAP traffic for reports and threat-intelligence output.","description_zh":"Valkyrie 通过静态检查和 Docker 执行环境分析可疑二进制文件。文档所述流程检查 PE 头、熵和加壳，并采集系统调用、文件活动及 PCAP 流量，生成分析和威胁情报报告。","entry_url":"https://awesomerea.org/resources/valkyrie-malware-analyzer/","entry_url_zh":"https://awesomerea.org/zh/resources/valkyrie-malware-analyzer/","evidence_url":"https://github.com/rifatardarslan/Valkyrie/blob/eab7e5e3c47c9d15ca53e80e3a32913a5287d714/README.md","group":"tools","id":"valkyrie-malware-analyzer","json_url":"https://awesomerea.org/resources/valkyrie-malware-analyzer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/valkyrie-malware-analyzer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/valkyrie-malware-analyzer/index.md","name":"Valkyrie","name_zh":"Valkyrie 恶意程序分析工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["Python 3.9+ is required; dynamic analysis requires Docker Desktop or Docker Engine.","Optional API keys enable VirusTotal and OpenAI integrations.","MIT License."],"requirements_zh":["需要 Python 3.9+；动态分析还需要 Docker Desktop 或 Docker Engine。","VirusTotal 和 OpenAI 集成可选择配置 API 密钥。","采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/rifatardarslan/Valkyrie","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"PE Disassembler is a WPF application that extracts the .text section of 32-bit Windows PE executables and displays decoded x86 instructions. It checks MZ and PE signatures, handles a limited set of movement, arithmetic and control-flow opcodes, and can save the listing as text.","description_zh":"PE Disassembler 是一款 WPF 程序，从 32 位 Windows PE 可执行文件的 .text 节提取并显示 x86 指令。它检查 MZ 和 PE 签名，解码有限的传送、算术与控制流指令，并可保存文本清单。","entry_url":"https://awesomerea.org/resources/pe-disassembler-ddeeduck/","entry_url_zh":"https://awesomerea.org/zh/resources/pe-disassembler-ddeeduck/","evidence_url":"https://github.com/ddeeduck/Pe-disassembler/blob/089a567c3a9561178d8785b7ea85f1d73bfaeb98/README.md","group":"tools","id":"pe-disassembler-ddeeduck","json_url":"https://awesomerea.org/resources/pe-disassembler-ddeeduck/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pe-disassembler-ddeeduck/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pe-disassembler-ddeeduck/index.md","name":"PE Disassembler","name_zh":"PE Disassembler x86 PE 反汇编工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Windows with .NET Framework 4.7.2+ or .NET 5/6/7/8 with WPF support; Visual Studio 2019/2022 to build.","Only 32-bit x86 PE files and implemented opcodes are supported; output uses raw file offsets without relocation handling.","MIT License."],"requirements_zh":["需要支持 WPF 的 Windows 与 .NET Framework 4.7.2+ 或 .NET 5/6/7/8；从源码构建需 Visual Studio 2019/2022。","仅支持 32 位 x86 PE 文件及已实现的指令；输出使用原始文件偏移，不处理重定位。","MIT 许可证。"],"targets":["binary"],"url":"https://github.com/ddeeduck/Pe-disassembler","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"SIC/XE Disassembler and Linking Loader converts SIC/XE object code into assembly listings and reconstructed symbols. Its first pass identifies instruction boundaries and addressing modes; its second emits assembly, while a separate loader resolves external symbols and applies relocation records.","description_zh":"SIC/XE Disassembler and Linking Loader 将 SIC/XE 目标代码转换为汇编清单与重建的符号表。第一遍识别指令边界和寻址方式，第二遍输出汇编；另有链接装载器解析外部符号并处理重定位记录。","entry_url":"https://awesomerea.org/resources/sicxe-disassembler/","entry_url_zh":"https://awesomerea.org/zh/resources/sicxe-disassembler/","evidence_url":"https://github.com/MN294/SICXE-Disassembler/blob/60726b6bc7337081c2582581f6d3a429363a298b/README.md","group":"tools","id":"sicxe-disassembler","json_url":"https://awesomerea.org/resources/sicxe-disassembler/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/sicxe-disassembler/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sicxe-disassembler/index.md","name":"SIC/XE Disassembler and Linking Loader","name_zh":"SIC/XE Disassembler and Linking Loader 反汇编与链接装载工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["A C++17 compiler is required.","Character-literal reconstruction is limited, and the loader assumes well-formed object files.","MIT license."],"requirements_zh":["需要 C++17 编译器。","字符字面量重建有限，装载器假定目标文件格式正确。","采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/MN294/SICXE-Disassembler","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"game-analysis","description_en":"Xenus DT1 Decompiler extracts DT1 and DT2 texture caches from Xenus 2: White Gold and Boiling Point: Road to Hell; its current decoder has not been tested with The Precursors. Its C# decoder reimplements behavior recovered from VELoader.dll, handles zlib and UCL NRV2E streams, and exports DDS or converted image formats.","description_zh":"Xenus DT1 Decompiler 可提取 Xenus 2: White Gold 和 Boiling Point: Road to Hell 的 DT1/DT2 纹理缓存；当前解码器尚未在 The Precursors 上测试。其 C# 解码器重实现了从 VELoader.dll 还原的处理流程，可处理 zlib 和 UCL NRV2E 数据流，并导出 DDS 或转换后的图像格式。","entry_url":"https://awesomerea.org/resources/xenus-dt1-decompiler/","entry_url_zh":"https://awesomerea.org/zh/resources/xenus-dt1-decompiler/","evidence_url":"https://github.com/CodeNoob53/xenus-dt1-decompiler/blob/fcf0458fe31f9c94f531ae06b39d6a6ad8b71ae4/README.md","group":"tools","id":"xenus-dt1-decompiler","json_url":"https://awesomerea.org/resources/xenus-dt1-decompiler/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/xenus-dt1-decompiler/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/xenus-dt1-decompiler/index.md","name":"Xenus DT1 Decompiler","name_zh":"Xenus DT1 Decompiler 游戏纹理缓存解码器","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["The release targets 64-bit Windows; building requires .NET SDK 8.0 or later.","The Precursors has not been checked with the decoder used since version 3.0; method 7's additional encryption is unsupported.","MIT license."],"requirements_zh":["发布版面向 64 位 Windows；源码构建需要 .NET SDK 8.0 或更新版本。","3.0 版以来的解码器尚未核对 The Precursors；方法 7 的附加加密尚不支持。","采用 MIT 许可证。"],"targets":["game"],"url":"https://github.com/CodeNoob53/xenus-dt1-decompiler","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/alxgmpr/lutron-protocols/blob/d4e0a00547ac27b01ea7053bb6d190e9caa6aa6c/docs/index.md"],"category":"protocol-analysis","description_en":"Lutron Protocols researches CCA radio packets, CCX Thread and CoAP messages, the LEAP processor API and IPL Designer integration frames for Lutron lighting systems. Its documentation covers device behavior and firmware, while TypeScript tools capture and decode traffic and parse Designer project files.","description_zh":"Lutron Protocols 研究路创照明系统的 CCA 无线报文、CCX Thread 与 CoAP 消息、LEAP 处理器 API，以及 IPL Designer 集成帧。仓库记录设备与固件分析，并提供 TypeScript 工具用于抓取和解码流量、解析 Designer 项目文件。","entry_url":"https://awesomerea.org/resources/lutron-protocols/","entry_url_zh":"https://awesomerea.org/zh/resources/lutron-protocols/","evidence_url":"https://github.com/alxgmpr/lutron-protocols/blob/d4e0a00547ac27b01ea7053bb6d190e9caa6aa6c/README.md","group":"tools","id":"lutron-protocols","json_url":"https://awesomerea.org/resources/lutron-protocols/record.json","kind":"project","markdown_url":"https://awesomerea.org/resources/lutron-protocols/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/lutron-protocols/index.md","name":"Lutron Protocols","name_zh":"Lutron Protocols 路创通信协议研究","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Packet-capture hardware uses an STM32H723 Nucleo with CC1101 and nRF52840 radios.","LEAP tools require mutual TLS certificates.","Native Vive pairing and a long-running LEAP connection watchdog remain future work.","No licence file in the repository."],"requirements_zh":["报文抓取硬件使用 STM32H723 Nucleo、CC1101 和 nRF52840 无线模块。","LEAP 工具需要双向 TLS 证书。","原生 Vive 配对及长期运行的 LEAP 连接监控仍属后续工作。","仓库中没有许可证文件。"],"targets":["app","binary","firmware","protocol"],"url":"https://github.com/alxgmpr/lutron-protocols","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/meowdiocre/ss-overlay-hook/blob/30de968b1549eb7cc22ef7b7245d6a87e64b0419/README.md"],"category":"reconstruction-cases","description_en":"SteelSeries Overlay Hook documents IDA analysis of SteelSeriesGameOverlay.dll’s window, object layout and Direct3D 11 swapchain, then uses recovered offsets in a C++ DLL hook. Its injector and hook render Dear ImGui content through the existing GameOverlay window by intercepting Present and ResizeBuffers.","description_zh":"SteelSeries Overlay Hook 记录了用 IDA 分析 SteelSeriesGameOverlay.dll 的窗口、对象布局和 Direct3D 11 交换链，并在 C++ DLL 钩子中使用恢复的偏移。配套注入器通过拦截 Present 和 ResizeBuffers，在现有 GameOverlay 窗口中绘制 Dear ImGui 内容。","entry_url":"https://awesomerea.org/resources/steelseries-overlay-hook-case/","entry_url_zh":"https://awesomerea.org/zh/resources/steelseries-overlay-hook-case/","evidence_url":"https://github.com/meowdiocre/ss-overlay-hook/blob/30de968b1549eb7cc22ef7b7245d6a87e64b0419/hook/README.md","group":"cases","id":"steelseries-overlay-hook-case","json_url":"https://awesomerea.org/resources/steelseries-overlay-hook-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/steelseries-overlay-hook-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/steelseries-overlay-hook-case/index.md","name":"SteelSeries Overlay Hook: mapping and hooking the GameOverlay swapchain","name_zh":"SteelSeries Overlay Hook：解析并挂钩 GameOverlay 交换链","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["Windows, Visual Studio 2022 with the v143 C++ toolset, and a Windows 10 SDK are required to build.","The hook relies on fixed internal offsets; compatibility with other SteelSeries versions is not established.","No licence file in the repository."],"requirements_zh":["构建需要 Windows、带 v143 C++ 工具集的 Visual Studio 2022，以及 Windows 10 SDK。","钩子依赖固定的内部偏移；其他 SteelSeries 版本的兼容性尚未确定。","仓库中没有许可证文件。"],"targets":["app","binary"],"url":"https://github.com/meowdiocre/ss-overlay-hook","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"android","description_en":"Sandwitcher instruments Java and Kotlin method calls in Android apps by replacing ART method entry points with a trampoline through Pine and LSPlant. Its AAR exposes callbacks before and after the original call to inspect or change arguments and results and inspect thrown exceptions; it also includes a demo application.","description_zh":"Sandwitcher 通过 Pine 和 LSPlant 在运行时以跳板替换 ART 方法入口，对 Android 应用中的 Java 和 Kotlin 方法调用进行插桩。其 AAR 提供原方法调用前后的回调，可检查或修改参数与返回结果、查看抛出的异常，并附有演示应用。","entry_url":"https://awesomerea.org/resources/sandwitcher/","entry_url_zh":"https://awesomerea.org/zh/resources/sandwitcher/","evidence_url":"https://github.com/IR0NBYTE/Sandwitcher/blob/48f73f26dbcecadb5d71c2993a384e2172fa564f/README.md","group":"tools","id":"sandwitcher","json_url":"https://awesomerea.org/resources/sandwitcher/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/sandwitcher/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sandwitcher/index.md","name":"Sandwitcher","name_zh":"Sandwitcher Android ART 方法钩子库","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","scope","license"],"requirements":["Android and the AAR integration are required; building from source needs JDK 17 and Android SDK 35.","The README lists Android 5.0 through 15 compatibility.","Apache License 2.0."],"requirements_zh":["需要 Android 环境并集成 AAR；从源码构建需 JDK 17 和 Android SDK 35。","README 列出的兼容范围为 Android 5.0 至 15。","采用 Apache License 2.0。"],"targets":["app"],"url":"https://github.com/IR0NBYTE/Sandwitcher","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"firmware","description_en":"Bin X-ray visualizes byte patterns in unknown files and firmware blobs through a 256×256 byte-pair matrix and a 3D byte-trigram plot. A sliding window, ribbon overview, transition-offset search and hex view let analysts move from a pattern to its bytes in the file.","description_zh":"Bin X-ray 用 256×256 字节对矩阵和三维字节三元组图展示未知文件及固件数据中的模式。滑动窗口、总览带、字节对偏移搜索和十六进制视图可将可视化异常定位到具体字节。","entry_url":"https://awesomerea.org/resources/bin-xray/","entry_url_zh":"https://awesomerea.org/zh/resources/bin-xray/","evidence_url":"https://github.com/russlank/BinXray/blob/1d965d0e8caa4787554c2b6211a9d0c915d715c7/README.md","group":"tools","id":"bin-xray","json_url":"https://awesomerea.org/resources/bin-xray/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/bin-xray/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bin-xray/index.md","name":"Bin X-ray","name_zh":"Bin X-ray 二进制数据可视化分析工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Windows 10 or 11; building requires Visual Studio 2022, Windows SDK 10.0 or newer, and Python 3 for the version helper.","Bookmarks, entropy strips, comparison mode and structured decoders are roadmap items.","MIT license."],"requirements_zh":["需要 Windows 10 或 11；构建时需要 Visual Studio 2022、Windows SDK 10.0 或更新版本，以及供版本脚本使用的 Python 3。","书签、熵值条、比较模式和结构化解码器仍在路线图中。","MIT 许可证。"],"targets":["firmware"],"url":"https://github.com/russlank/BinXray","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/X-Abhishek-X/malware-deobfuscator/blob/f33320c31f07e252433d8eaf4937c43426ae1bd4/pyproject.toml"],"category":"native-analysis","description_en":"Malware Deobfuscator analyzes obfuscated malware scripts and generates code, behavior and indicator reports. A deterministic pass extracts indicators with regexes and maps keyword signatures to MITRE ATT&CK; an OpenAI or Ollama model supplies deobfuscated code and execution-flow explanations. The CLI handles individual files or directories and can emit JSON.","description_zh":"Malware Deobfuscator 分析经过混淆的恶意脚本，输出代码、行为和指标报告。确定性流程用正则表达式提取 IOC、以关键词签名映射 MITRE ATT&CK；OpenAI 或 Ollama 模型补充去混淆代码与执行流程解释。命令行支持单文件和目录，并可输出 JSON。","entry_url":"https://awesomerea.org/resources/malware-deobfuscator/","entry_url_zh":"https://awesomerea.org/zh/resources/malware-deobfuscator/","evidence_url":"https://github.com/X-Abhishek-X/malware-deobfuscator/blob/f33320c31f07e252433d8eaf4937c43426ae1bd4/README.md","group":"tools","id":"malware-deobfuscator","json_url":"https://awesomerea.org/resources/malware-deobfuscator/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/malware-deobfuscator/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/malware-deobfuscator/index.md","name":"Malware Deobfuscator","name_zh":"Malware Deobfuscator 恶意脚本去混淆工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","scope","license"],"requirements":["Python 3.9 or later is specified in the package metadata.","Full analysis requires an OpenAI API key or a configured Ollama model; IOC extraction works without one.","The included samples are described as defanged educational examples.","MIT license."],"requirements_zh":["包元数据要求 Python 3.9 或更新版本。","完整分析需要 OpenAI API 密钥或已配置的 Ollama 模型；仅提取 IOC 不需要。","仓库将随附样本描述为已去危害的教学示例。","MIT 许可证。"],"targets":["app"],"url":"https://github.com/X-Abhishek-X/malware-deobfuscator","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"firmware","description_en":"PIC microcontrollers disassembler converts Intel HEX dumps for MidRange and Enhanced MidRange PIC12/PIC16 devices into disassembly listings, HI-TECH PICC assembly files, or both. Processor descriptions and instruction definitions are supplied as JSON configuration files.","description_zh":"PIC microcontrollers disassembler 将 MidRange 和 Enhanced MidRange PIC12/PIC16 设备的 Intel HEX 转储转换为反汇编列表、HI-TECH PICC 汇编文件，或同时输出两者。处理器参数和指令定义存放在 JSON 配置文件中。","entry_url":"https://awesomerea.org/resources/pic-disasm/","entry_url_zh":"https://awesomerea.org/zh/resources/pic-disasm/","evidence_url":"https://github.com/c-not-around/pic-disasm/blob/0b01587a82252dd3b51375ae8f3a036bd26147c2/README.md","group":"tools","id":"pic-disasm","json_url":"https://awesomerea.org/resources/pic-disasm/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pic-disasm/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pic-disasm/index.md","name":"PIC microcontrollers disassembler","name_zh":"PIC microcontrollers disassembler PIC 单片机反汇编工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","scope","license"],"requirements":["An Intel HEX dump and the matching PIC12/PIC16 processor selection are required.","Support is stated for MidRange and Enhanced MidRange PIC12/PIC16 devices.","MIT."],"requirements_zh":["需要 Intel HEX 转储及对应的 PIC12/PIC16 处理器型号。","支持范围为 MidRange 和 Enhanced MidRange PIC12/PIC16 设备。","许可证为 MIT。"],"targets":["firmware"],"url":"https://github.com/c-not-around/pic-disasm","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/bitalizer/pyflashkit/blob/e50946b48d91d726aac2beec4e6252e3bd512f33/pyproject.toml"],"category":"binary-libraries","description_en":"flashkit is a Python toolkit for examining Adobe Flash SWF files and AVM2 bytecode. It parses and rebuilds SWF and ABC structures, disassembles instructions, constructs call and reference indexes, and decompiles classes or methods to ActionScript 3 through a control-flow pipeline.","description_zh":"flashkit 是分析 Adobe Flash SWF 与 AVM2 字节码的 Python 工具包，可解析及重建 SWF 和 ABC 结构、反汇编指令、建立调用与引用索引，并通过控制流分析将类或方法反编译为 ActionScript 3。","entry_url":"https://awesomerea.org/resources/flashkit/","entry_url_zh":"https://awesomerea.org/zh/resources/flashkit/","evidence_url":"https://github.com/bitalizer/pyflashkit/blob/e50946b48d91d726aac2beec4e6252e3bd512f33/README.md","group":"tools","id":"flashkit","json_url":"https://awesomerea.org/resources/flashkit/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/flashkit/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/flashkit/index.md","name":"flashkit","name_zh":"flashkit Flash 字节码分析工具包","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Python 3.10 or later.","SWF or AVM2 bytecode input for analysis.","Dead-code detection is heuristic because ActionScript 3 dynamic dispatch cannot be fully ruled out.","MIT License."],"requirements_zh":["需要 Python 3.10 或更新版本。","分析时需要 SWF 文件或 AVM2 字节码。","死代码检测采用启发式方法，无法完全排除 ActionScript 3 的动态分派。","MIT 许可证。"],"targets":["binary"],"url":"https://github.com/bitalizer/pyflashkit","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Opcodeffm/petkit-local/blob/235aaebad76586793b44921b712e5b58a91b8ef3/LEGAL.md"],"category":"reconstruction-cases","description_en":"Petkit Local replaces selected Petkit D4 feeder cloud exchanges with a local Home Assistant server and relays Eversweet Max 2 CTW3 fountain messages over BLE. The integration implements device registration, heartbeats, schedules, events and commands based on observed device communication.","description_zh":"Petkit Local 用本地 Home Assistant 服务响应 Petkit D4 喂食器的部分云端请求，并通过 BLE 中继 Eversweet Max 2 CTW3 饮水机消息。集成依据设备通信实现注册、心跳、计划、事件和控制命令。","entry_url":"https://awesomerea.org/resources/petkit-local-case/","entry_url_zh":"https://awesomerea.org/zh/resources/petkit-local-case/","evidence_url":"https://github.com/Opcodeffm/petkit-local/blob/235aaebad76586793b44921b712e5b58a91b8ef3/README.md","group":"cases","id":"petkit-local-case","json_url":"https://awesomerea.org/resources/petkit-local-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/petkit-local-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/petkit-local-case/index.md","name":"Petkit Local: reconstructing feeder cloud and fountain BLE controls","name_zh":"Petkit Local：重建喂食器云端接口与饮水机 BLE 控制","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","testing","license"],"requirements":["Home Assistant 2024.1 or newer, a D4-family feeder, port 80 and local DNS or IP redirection are required.","CTW3 fountain support requires a D4 feeder already running the integration.","The documented tested firmware versions are D4 1.267 and CTW3 1.11.","MIT licence."],"requirements_zh":["需要 Home Assistant 2024.1 或更新版本、D4 系列喂食器、80 端口及本地 DNS 或 IP 重定向。","CTW3 饮水机功能需要已运行该集成的 D4 喂食器。","文档所列测试固件为 D4 1.267 和 CTW3 1.11。","采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/Opcodeffm/petkit-local","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/AppThreat/wasm-tools/blob/a90db706f9ac4f38aca8edd287d0e263beaa8104/docs/ARCHITECTURE.md"],"category":"webassembly","description_en":"wasm-tools is a pure-Python parser and disassembler for WebAssembly core modules and Component Model binaries. It reports sections, decoded instructions, strings with memory provenance, imports, exports and static call graphs, then adds heuristic capability and risk findings in JSON.","description_zh":"wasm-tools 是纯 Python 编写的 WebAssembly 核心模块及 Component Model 二进制文件解析、反汇编工具。它输出段表、指令、带内存来源的字符串、导入导出项和静态调用图，并在 JSON 中加入启发式能力与风险判断。","entry_url":"https://awesomerea.org/resources/appthreat-wasm-tools/","entry_url_zh":"https://awesomerea.org/zh/resources/appthreat-wasm-tools/","evidence_url":"https://github.com/AppThreat/wasm-tools/blob/a90db706f9ac4f38aca8edd287d0e263beaa8104/README.md","group":"tools","id":"appthreat-wasm-tools","json_url":"https://awesomerea.org/resources/appthreat-wasm-tools/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/appthreat-wasm-tools/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/appthreat-wasm-tools/index.md","name":"AppThreat wasm-tools","name_zh":"AppThreat wasm-tools WebAssembly 解析与反汇编工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Python 3.10 or later is specified in pyproject.toml.","Text-format .wat parsing and specification validation are excluded.","MIT license; the author raises uncertainty about third-party specification text in the AI-assisted code provenance."],"requirements_zh":["pyproject.toml 指定 Python 3.10 或更新版本。","功能范围不包括 .wat 文本格式解析和规范验证。","采用 MIT 许可证；作者对 AI 辅助生成代码涉及第三方规范文本的许可来源提出疑问。"],"targets":["binary"],"url":"https://github.com/AppThreat/wasm-tools","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"agent-mcp","description_en":"dos-mcp connects AI agents to DOS programs running in js-dos for interactive reverse engineering. Its MCP tools send keyboard and mouse input, capture frames, exchange files with the guest and read or search emulated memory; the documentation shows a save-format comparison workflow using Ultima Underworld.","description_zh":"dos-mcp 将智能体连接到 js-dos 中运行的 DOS 程序，用于交互式逆向分析。MCP 工具可发送键鼠输入、抓取画面、交换客户机文件，并读取或搜索模拟内存；文档以 Ultima Underworld 展示存档格式对比流程。","entry_url":"https://awesomerea.org/resources/dos-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/dos-mcp/","evidence_url":"https://github.com/abedegno/dos-mcp/blob/344add45ae3e961e2e9745c2c61d53b4fe295553/README.md","group":"agents","id":"dos-mcp","json_url":"https://awesomerea.org/resources/dos-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/dos-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dos-mcp/index.md","name":"dos-mcp","name_zh":"dos-mcp DOS 程序分析 MCP 服务","record_type":"resource","relationship":"independent-agent-integration","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Node.js 22.13 or newer is required; Puppeteer installs a browser dependency.","A DOS program or bundle is needed as input.","Save-state snapshot and restore are missing; breakpoints and stepping are only proposed.","MIT License."],"requirements_zh":["需要 Node.js 22.13 或更新版本；Puppeteer 会安装浏览器依赖。","需要 DOS 程序或程序包作为输入。","尚无模拟器状态快照与恢复功能；断点和单步执行仍处于设想阶段。","采用 MIT 许可证。"],"targets":["binary","game"],"url":"https://github.com/abedegno/dos-mcp","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"firmware","description_en":"premium5 emulates the Volkswagen Premium 5 car radio at the register and signal level so its original firmware can run without patches. It models the NEC microcontroller, LCD controller, EEPROM and selected vehicle interfaces, with live disassembly, memory inspection and execution controls for firmware research.","description_zh":"premium5 在寄存器与信号层仿真 Volkswagen Premium 5 汽车收音机，使原版固件无需修改即可运行。它模拟 NEC 微控制器、LCD 控制器、EEPROM 及部分车载接口，并提供实时反汇编、内存检查和执行控制，供固件研究使用。","entry_url":"https://awesomerea.org/resources/premium5-radio-emulator/","entry_url_zh":"https://awesomerea.org/zh/resources/premium5-radio-emulator/","evidence_url":"https://github.com/mnaberez/premium5/blob/f6713c5e4af2c07cf4936f1e0454c338b6c77fdf/README.md","group":"tools","id":"premium5-radio-emulator","json_url":"https://awesomerea.org/resources/premium5-radio-emulator/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/premium5-radio-emulator/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/premium5-radio-emulator/index.md","name":"premium5","name_zh":"premium5 Volkswagen Premium 5 收音机固件仿真器","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["A Premium 5 firmware binary is required.","PyPy and a modern CPU with strong single-threaded performance are needed to emulate the original 4.19 MHz speed.","Audio output and the tape deck are not emulated.","BSD-3-Clause."],"requirements_zh":["需要 Premium 5 固件二进制文件。","若要达到原机 4.19 MHz 的仿真速度，需要 PyPy 和单线程性能较好的现代 CPU。","不仿真音频输出和磁带机。","许可证为 BSD-3-Clause。"],"targets":["firmware"],"url":"https://github.com/mnaberez/premium5","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/SpookyyQ/IPI-Stay-Fly-Driver/blob/a302fc210e93ef8ff145cee915561b18342e4d7f/docs/atk-fierce-x-protocol-notes.md","https://github.com/SpookyyQ/IPI-Stay-Fly-Driver/blob/a302fc210e93ef8ff145cee915561b18342e4d7f/tools/webhid-sniffer-extension/README.md"],"category":"reconstruction-cases","description_en":"IPI STAY FLY Driver reconstructs mouse configuration in a Windows app using reverse-engineered 16-byte HID frames. It exposes DPI, polling, button and sensor settings, documents a frame checksum, and includes a WebHID capture extension plus protocol notes for ATK FIERCE X.","description_zh":"IPI STAY FLY Driver 使用逆向得到的 16 字节 HID 报文，在 Windows 应用中重建鼠标配置功能。它提供 DPI、回报率、按键和传感器设置，记录报文校验和，并附有 WebHID 抓包扩展及 ATK FIERCE X 协议笔记。","entry_url":"https://awesomerea.org/resources/ipi-stay-fly-driver-case/","entry_url_zh":"https://awesomerea.org/zh/resources/ipi-stay-fly-driver-case/","evidence_url":"https://github.com/SpookyyQ/IPI-Stay-Fly-Driver/blob/a302fc210e93ef8ff145cee915561b18342e4d7f/README.md","group":"cases","id":"ipi-stay-fly-driver-case","json_url":"https://awesomerea.org/resources/ipi-stay-fly-driver-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/ipi-stay-fly-driver-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ipi-stay-fly-driver-case/index.md","name":"IPI STAY FLY Driver: reconstructing mouse configuration over HID","name_zh":"IPI STAY FLY Driver：通过 HID 重建设备设置功能","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Windows 10 or 11, WebView2 and an IPI STAY FLY mouse are required for device control.","Building from source requires Node.js 20 or later, Rust and Visual Studio Build Tools 2022.","Non-mouse button actions, including keyboard keys and macros, are not yet exposed.","MIT license."],"requirements_zh":["设备控制需要 Windows 10 或 11、WebView2 和 IPI STAY FLY 鼠标。","从源码构建需要 Node.js 20 或更高版本、Rust 和 Visual Studio Build Tools 2022。","键盘按键、宏等非鼠标按键动作尚未开放。","采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/SpookyyQ/IPI-Stay-Fly-Driver","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/nightwarelabz/kaiju/blob/86572f23fb852a1a5e816411f224b77b8ba262c0/Cargo.toml"],"category":"native-analysis","description_en":"Kaiju is a Rust reverse-engineering framework with a headless CLI for binary loading and analysis. Its current crates parse selected ELF, PE and Mach-O metadata, extract strings, decode a limited x86-64 instruction subset and inspect saved network evidence.","description_zh":"Kaiju 是带无界面命令行工具的 Rust 逆向框架。现有模块解析部分 ELF、PE、Mach-O 元数据，提取字符串，解码有限的 x86-64 指令集，并检查保存的网络证据。","entry_url":"https://awesomerea.org/resources/kaiju-re-framework/","entry_url_zh":"https://awesomerea.org/zh/resources/kaiju-re-framework/","evidence_url":"https://github.com/nightwarelabz/kaiju/blob/86572f23fb852a1a5e816411f224b77b8ba262c0/docs/architecture.md","group":"tools","id":"kaiju-re-framework","json_url":"https://awesomerea.org/resources/kaiju-re-framework/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/kaiju-re-framework/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/kaiju-re-framework/index.md","name":"Kaiju","name_zh":"Kaiju Rust 二进制分析框架","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Rust 1.76+ is specified by the workspace.","ELF, PE, Mach-O and x86-64 support is limited to the documented parser and decoder subsets.","Apache-2.0."],"requirements_zh":["工作区指定 Rust 1.76+。","ELF、PE、Mach-O 和 x86-64 支持仅覆盖文档列明的解析与解码子集。","Apache-2.0 许可证。"],"targets":["binary"],"url":"https://github.com/nightwarelabz/kaiju","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"agent-mcp","description_en":"x64dbg MCP gives agents debugger control over Windows binaries through a native x64dbg plugin and a C# stdio MCP server. The plugin serves local HTTP requests to x64dbg's bridge API, while MCP tools expose disassembly, memory and register access, modules, execution control, and breakpoints.","description_zh":"x64dbg MCP 通过原生 x64dbg 插件和 C# stdio MCP 服务器，让智能体分析 Windows 二进制程序。插件将本地 HTTP 请求转给 x64dbg bridge API；MCP 工具提供反汇编、内存与寄存器访问、模块查看、执行控制和断点操作。","entry_url":"https://awesomerea.org/resources/hxt9-x64dbg-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/hxt9-x64dbg-mcp/","evidence_url":"https://github.com/HxT9/x64dbg_mcp/blob/6fc089130ef72028f5fee0250b3e855304ad2c2b/README.md","group":"agents","id":"hxt9-x64dbg-mcp","json_url":"https://awesomerea.org/resources/hxt9-x64dbg-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/hxt9-x64dbg-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hxt9-x64dbg-mcp/index.md","name":"x64dbg MCP","name_zh":"x64dbg MCP 智能体调试接口","record_type":"resource","relationship":"independent-agent-integration","requirement_facets":["prerequisites","scope","license"],"requirements":["Windows, Visual Studio 2022, CMake 3.20 or newer, .NET 10 SDK, and a built x64dbg checkout.","The plugin's HTTP endpoint binds to localhost and grants control over the debugged process.","GPL-3.0 license."],"requirements_zh":["需要 Windows、Visual Studio 2022、CMake 3.20 或更新版本、.NET 10 SDK，以及已构建的 x64dbg 源码。","插件的 HTTP 端点绑定本机地址，可控制被调试进程。","GPL-3.0 许可证。"],"targets":["binary"],"url":"https://github.com/HxT9/x64dbg_mcp","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/tsuyoi-w/DreadComp/blob/9e27711d32434bc5c479ba957b97ababc4b84857/docs/Install.md"],"category":"reconstruction-cases","description_en":"DreadComp is an in-progress hand decompilation of Metroid Dread that recreates game source code in C++. The repository includes initial source files, build tooling and symbol data; building requires assets and the version 2.1.0 executable from the user's own game copy.","description_zh":"DreadComp 正在以手工反编译方式重建《Metroid Dread》的 C++ 源代码。仓库已有初步源码、构建工具和符号数据；构建需要使用者自行提供游戏资产及 2.1.0 版可执行文件。","entry_url":"https://awesomerea.org/resources/dreadcomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/dreadcomp-case/","evidence_url":"https://github.com/tsuyoi-w/DreadComp/blob/9e27711d32434bc5c479ba957b97ababc4b84857/README.md","group":"cases","id":"dreadcomp-case","json_url":"https://awesomerea.org/resources/dreadcomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/dreadcomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dreadcomp-case/index.md","name":"Metroid Dread: a hand decompilation in progress","name_zh":"Metroid Dread：进行中的手工反编译","reconstruction_method":"decompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["An owned copy of Metroid Dread and its original 2.1.0 main NSO executable are required.","Windows users are directed to use WSL; installation lists Python, Ninja, CMake, ccache, xdelta3, Clang and a Rust toolchain.","The decompilation is a work in progress.","No licence file in the repository."],"requirements_zh":["需要自行拥有《Metroid Dread》，并提供原版 2.1.0 的 main NSO 可执行文件。","Windows 使用者需使用 WSL；安装说明列出 Python、Ninja、CMake、ccache、xdelta3、Clang 和 Rust 工具链。","反编译工作仍在进行中。","仓库中没有许可证文件。"],"targets":["game"],"url":"https://github.com/tsuyoi-w/DreadComp","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/andrewseago/d3200-ble-note-downloader/blob/77356096b303bd8b68364ae21db2acd8194ac1ee/docs/BLE_DECRYPTION_GUIDE.md"],"category":"reconstruction-cases","description_en":"A Soundcore D3200 investigation reconstructs the BLE exchange used to list and transfer encrypted recordings. Its Python client performs a P-256 ECDH handshake, derives session and file keys, decrypts AES-256-CTR Opus packets and writes an Ogg/Opus file.","description_zh":"该研究重建 Soundcore D3200 通过 BLE 列出和传输加密录音的消息流程。Python 客户端执行 P-256 ECDH 握手、派生会话与文件密钥、解密 AES-256-CTR Opus 数据包，并生成 Ogg/Opus 文件。","entry_url":"https://awesomerea.org/resources/soundcore-d3200-ble-case/","entry_url_zh":"https://awesomerea.org/zh/resources/soundcore-d3200-ble-case/","evidence_url":"https://github.com/andrewseago/d3200-ble-note-downloader/blob/77356096b303bd8b68364ae21db2acd8194ac1ee/README.md","group":"cases","id":"soundcore-d3200-ble-case","json_url":"https://awesomerea.org/resources/soundcore-d3200-ble-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/soundcore-d3200-ble-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/soundcore-d3200-ble-case/index.md","name":"Soundcore D3200: reconstructing BLE recording transfer and decryption","name_zh":"Soundcore D3200：重建 BLE 录音传输与解密流程","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","testing","license"],"requirements":["Python 3.12 or newer, a Bluetooth adapter and an available D3200 recorder are required.","The recorder must be disconnected from the Soundcore app before connecting.","A real-recording regression test requires the user's own capture fixtures.","GPL-3.0-or-later licence."],"requirements_zh":["需要 Python 3.12 或更新版本、蓝牙适配器及可连接的 D3200 录音机。","连接前须让录音机断开 Soundcore 应用。","真实录音回归测试需要用户自行提供采集样本。","采用 GPL-3.0-or-later 许可证。"],"targets":["protocol"],"url":"https://github.com/andrewseago/d3200-ble-note-downloader","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/leabergero/k1pro-opendeck-suite/blob/d004b894efe29835207487851a28f03c5fa73cda/opendeck-k1pro-plugin/README.md"],"category":"reconstruction-cases","description_en":"K1 Pro OpenDeck Suite includes a Linux OpenDeck driver for the HOTSPOTEK/Mirabox Stream Dock K1 Pro based on its reverse-engineered USB/HID CRT protocol. The driver handles connection and keepalive messages, 64×64 JPEG key displays, RGB ring controls, and three knob inputs. Four accompanying plugins add generic OpenDeck functions.","description_zh":"K1 Pro OpenDeck Suite 包含适用于 Linux 的 HOTSPOTEK/Mirabox Stream Dock K1 Pro OpenDeck 驱动，依据逆向得到的 USB/HID CRT 协议实现。驱动处理连接与保活消息、按键屏幕的 64×64 JPEG 图像、RGB 灯环和三个旋钮输入；另附四个通用 OpenDeck 插件。","entry_url":"https://awesomerea.org/resources/k1-pro-opendeck-suite-case/","entry_url_zh":"https://awesomerea.org/zh/resources/k1-pro-opendeck-suite-case/","evidence_url":"https://github.com/leabergero/k1pro-opendeck-suite/blob/d004b894efe29835207487851a28f03c5fa73cda/README.md","group":"cases","id":"k1-pro-opendeck-suite-case","json_url":"https://awesomerea.org/resources/k1-pro-opendeck-suite-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/k1-pro-opendeck-suite-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/k1-pro-opendeck-suite-case/index.md","name":"K1 Pro OpenDeck Suite: a Linux driver for the Stream Dock K1 Pro","name_zh":"K1 Pro OpenDeck Suite：Stream Dock K1 Pro 的 Linux 驱动","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","testing","license"],"requirements":["OpenDeck, Linux, and a Stream Dock K1 Pro with USB ID 5548:1025 and protocol v3 are required for the driver.","Building requires Rust 1.87 or later with the x86_64-unknown-linux-gnu target, plus just and zip.","The driver README says this fork had not been compiled or tested on hardware before delivery.","GPLv3 license; the vendored mirajazz dependency retains MPL-2.0."],"requirements_zh":["驱动需要 OpenDeck、Linux，以及 USB ID 为 5548:1025、使用 v3 协议的 Stream Dock K1 Pro。","编译需要 Rust 1.87 或更新版本、x86_64-unknown-linux-gnu 目标，以及 just 和 zip。","驱动 README 称该分支交付前尚未编译，也未在实体设备上测试。","采用 GPLv3 许可证；随附的 mirajazz 依赖保留 MPL-2.0 许可证。"],"targets":["protocol"],"url":"https://github.com/leabergero/k1pro-opendeck-suite","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/GottZ/open-PicPak/blob/7b76daab2219b0a1c061fbe9fbf91747a8961954/README.md"],"category":"reconstruction-cases","description_en":"open-picpak documents the PicPak 4.2-inch e-ink frame's stock firmware behavior, BLE GATT protocol, and image conversion pipeline. The author reports deriving byte-level findings from the stock ESP-IDF image and a device client, then using those findings in custom ESP-IDF firmware, host tools, and a self-hosted backend.","description_zh":"open-picpak 记录 PicPak 4.2 英寸电子墨水相框的原厂固件行为、BLE GATT 协议及图像转换流程。作者报告从原厂 ESP-IDF 镜像和设备客户端提取字节级信息，并据此开发自定义 ESP-IDF 固件、主机工具和自托管后端。","entry_url":"https://awesomerea.org/resources/open-picpak-case/","entry_url_zh":"https://awesomerea.org/zh/resources/open-picpak-case/","evidence_url":"https://github.com/GottZ/open-PicPak/blob/7b76daab2219b0a1c061fbe9fbf91747a8961954/documentation/ble-protocol.md","group":"cases","id":"open-picpak-case","json_url":"https://awesomerea.org/resources/open-picpak-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/open-picpak-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/open-picpak-case/index.md","name":"open-picpak: reconstructing the PicPak frame's BLE protocol and device behavior","name_zh":"open-picpak：重建 PicPak 相框的 BLE 协议与设备行为","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["A PicPak e-ink frame is needed for device use and hardware checks.","Firmware and backend development remain in progress; the web-usb component is not public.","MPL-2.0 license."],"requirements_zh":["设备使用和硬件验证需要 PicPak 电子墨水相框。","固件及后端仍在开发中；web-usb 组件尚未公开。","采用 MPL-2.0 许可证。"],"targets":["firmware","protocol"],"url":"https://github.com/GottZ/open-PicPak","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"iDotMatrix Home Assistant integration controls the HXS-002 / NL-XSD-32 LED panel over a BLE protocol derived from analysis of the vendor Android app. Its vendored protocol module and hardware-capture tests support power, brightness, clock controls and chunked 32×32 image uploads with CRC32.","description_zh":"iDotMatrix Home Assistant 集成利用对厂商 Android 应用的分析所得 BLE 协议，控制 HXS-002 / NL-XSD-32 LED 面板。仓库中的协议模块和基于硬件抓包的测试覆盖电源、亮度、时钟控制，以及带 CRC32 的分块 32×32 图像上传。","entry_url":"https://awesomerea.org/resources/idotmatrix-ha-case/","entry_url_zh":"https://awesomerea.org/zh/resources/idotmatrix-ha-case/","evidence_url":"https://github.com/dallanwagz/idotmatrix-ha/blob/e27d763dd06849ce7b7ccb54a4defc0a3fd5a295/README.md","group":"cases","id":"idotmatrix-ha-case","json_url":"https://awesomerea.org/resources/idotmatrix-ha-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/idotmatrix-ha-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/idotmatrix-ha-case/index.md","name":"iDotMatrix: Home Assistant control through a reconstructed BLE protocol","name_zh":"iDotMatrix：通过重建的 BLE 协议接入 Home Assistant","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","limits","license"],"requirements":["Home Assistant with a Bluetooth adapter or nearby ESPHome/Shelly Bluetooth proxy is required.","The panel accepts only one BLE connection at a time.","Some protocol modes, including carousel/GIF storage and rhythm/spectrum, are not exposed as Home Assistant entities.","No licence file in the repository."],"requirements_zh":["需要 Home Assistant，以及蓝牙适配器或附近的 ESPHome/Shelly 蓝牙代理。","面板同一时间只接受一个 BLE 连接。","轮播/GIF 存储及节奏/频谱等协议模式尚未作为 Home Assistant 实体提供。","仓库中没有许可证文件。"],"targets":["protocol"],"url":"https://github.com/dallanwagz/idotmatrix-ha","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/AnthonyDavidAdams/substack-api-reference/blob/b9ebaf5cd58e527a3dba00689a2933e49a811310/ENDPOINTS.md"],"category":"web-analysis","description_en":"Substack API Reference documents the web app's undocumented JSON API using curl probes and captured browser requests. It records read and write endpoints, authentication and request bodies, and supplies an OpenAPI 3.1 specification with curl and TypeScript examples. The author reports 129 verified endpoints from 14 capture rounds.","description_zh":"Substack API Reference 通过 curl 探测和浏览器请求捕获，记录 Substack 网页应用未公开的 JSON API。资料涵盖读写端点、认证和请求体，并附 OpenAPI 3.1 规范、curl 与 TypeScript 示例。作者报告经过 14 轮采集，确认了 129 个端点。","entry_url":"https://awesomerea.org/resources/substack-api-reference/","entry_url_zh":"https://awesomerea.org/zh/resources/substack-api-reference/","evidence_url":"https://github.com/AnthonyDavidAdams/substack-api-reference/blob/b9ebaf5cd58e527a3dba00689a2933e49a811310/README.md","group":"learn","id":"substack-api-reference","json_url":"https://awesomerea.org/resources/substack-api-reference/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/substack-api-reference/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/substack-api-reference/index.md","name":"Substack API Reference (Unofficial)","name_zh":"Substack API Reference（非官方）接口参考","record_type":"resource","relationship":"learning","requirement_facets":["prerequisites","limits","license"],"requirements":["A Substack session cookie is needed for authenticated endpoints.","The internal API can change; entries distinguish author-tested, reported, inferred, dead and gated endpoints.","MIT License."],"requirements_zh":["访问需认证的端点需要 Substack 会话 Cookie。","内部 API 可能变化；条目区分作者测试、他人报告、推断、失效及受限的端点。","MIT 许可证。"],"targets":["protocol","website"],"url":"https://github.com/AnthonyDavidAdams/substack-api-reference","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"android","description_en":"Zygisk - Frida Gadget loads Frida Gadget into selected Android app processes for runtime instrumentation. A configuration file selects packages, process names, ABIs, and profiles; deployment scripts place Gadget and its configuration in the app's native library directory before the Zygisk loader starts it.","description_zh":"Zygisk - Frida Gadget 将 Frida Gadget 加载到指定 Android 应用进程，供运行时插桩使用。配置文件指定包名、进程名、ABI 和配置档；部署脚本将 Gadget 及其配置放入应用原生库目录，再由 Zygisk 加载。","entry_url":"https://awesomerea.org/resources/zygisk-fridagadget/","entry_url_zh":"https://awesomerea.org/zh/resources/zygisk-fridagadget/","evidence_url":"https://github.com/leolovenet/Zygisk-FridaGadget/blob/f685a901659452cecc4c281efc314422921fc127/README.md","group":"tools","id":"zygisk-fridagadget","json_url":"https://awesomerea.org/resources/zygisk-fridagadget/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/zygisk-fridagadget/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/zygisk-fridagadget/index.md","name":"Zygisk - Frida Gadget","name_zh":"Zygisk - Frida Gadget Android 应用插桩模块","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["Magisk 27001 or Kitsune Magisk with Zygisk enabled is required.","The documented ABIs are arm64-v8a and armeabi-v7a; Gadget files must match the target ABI, and non-default profiles need matching configuration files.","No licence file is present in the repository."],"requirements_zh":["需要启用 Zygisk 的 Magisk 27001 或 Kitsune Magisk。","文档支持 arm64-v8a 和 armeabi-v7a；Frida Gadget 文件须与目标 ABI 匹配，非默认配置档还需要对应的配置文件。","仓库中没有许可证文件。"],"targets":["app"],"url":"https://github.com/leolovenet/Zygisk-FridaGadget","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/xiaomaozjj666/web-crawler/blob/36dca34845702822a136a1ea60de7444aa687aee/docs/architecture.md"],"category":"web-analysis","description_en":"web-crawler includes ReverseAgent for investigating website JavaScript and request signing. It hooks fetch, XHR, cookies, crypto.subtle and webpack activity in a browser, captures traffic, separates webpack modules and uses an LLM to reimplement a discovered signature algorithm in Python.","description_zh":"web-crawler 内的 ReverseAgent 用于研究网站 JavaScript 和请求签名。它在浏览器中挂钩 fetch、XHR、cookie、crypto.subtle 和 webpack 活动，采集通信并拆分模块，再借助大语言模型用 Python 重实现签名算法。","entry_url":"https://awesomerea.org/resources/web-crawler-reverse-agent/","entry_url_zh":"https://awesomerea.org/zh/resources/web-crawler-reverse-agent/","evidence_url":"https://github.com/xiaomaozjj666/web-crawler/blob/36dca34845702822a136a1ea60de7444aa687aee/README.md","group":"tools","id":"web-crawler-reverse-agent","json_url":"https://awesomerea.org/resources/web-crawler-reverse-agent/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/web-crawler-reverse-agent/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/web-crawler-reverse-agent/index.md","name":"web-crawler ReverseAgent","name_zh":"web-crawler ReverseAgent 网站 JavaScript 逆向智能体","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["Python 3.10 or newer.","ReverseAgent uses CamoufoxFetcher and a compatible LLM service; optional browser dependencies are required for that path.","MIT license."],"requirements_zh":["需要 Python 3.10 或更新版本。","ReverseAgent 使用 CamoufoxFetcher 和兼容的大语言模型服务；该功能还需要可选浏览器依赖。","MIT 许可证。"],"targets":["website"],"url":"https://github.com/xiaomaozjj666/web-crawler","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/vs-sr-dev/hyperscan-homebrew/blob/54dd7aa7cb7078501b38ab55a440b8612195d36f/audio/spu-mame-audio.md"],"category":"firmware","description_en":"hyperscan-homebrew documents Mattel HyperScan hardware behavior for homebrew and emulation work. Its notes cover SPG290 PPU registers, RFID reader signaling, controller I²C behavior, SPU audio and S+Core 7 compiler failures, drawing on MAME experiments and hardware captures where available.","description_zh":"hyperscan-homebrew 为 Mattel HyperScan 的自制程序与模拟工作记录硬件行为，涵盖 SPG290 PPU 寄存器、RFID 读卡器信号、手柄 I²C、SPU 音频及 S+Core 7 编译器故障。资料依据 MAME 实验，并在可行时与实机抓取结果对照。","entry_url":"https://awesomerea.org/resources/hyperscan-homebrew/","entry_url_zh":"https://awesomerea.org/zh/resources/hyperscan-homebrew/","evidence_url":"https://github.com/vs-sr-dev/hyperscan-homebrew/blob/54dd7aa7cb7078501b38ab55a440b8612195d36f/README.md","group":"learn","id":"hyperscan-homebrew","json_url":"https://awesomerea.org/resources/hyperscan-homebrew/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/hyperscan-homebrew/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hyperscan-homebrew/index.md","name":"hyperscan-homebrew","name_zh":"hyperscan-homebrew Mattel HyperScan 硬件研究笔记","record_type":"resource","relationship":"learning","requirement_facets":["scope","testing","license"],"requirements":["The documented work concerns Mattel HyperScan and its Sunplus S+Core 7/SPG290 hardware.","The notes use MAME as the working reference platform; hardware captures were available for some comparisons.","MIT license."],"requirements_zh":["文档针对 Mattel HyperScan 及其 Sunplus S+Core 7/SPG290 硬件。","研究以 MAME 为主要参考平台，部分结果使用实机抓取数据对照。","MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/vs-sr-dev/hyperscan-homebrew","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/grosa787/dell-controlvault2-fingerprint-linux/blob/45609bee93a622bec27a3d062f0b42d2d63d45d3/README.md"],"category":"reconstruction-cases","description_en":"Dell ControlVault 2 fingerprint on Linux adapts a locally obtained Broadcom driver to the older BCM5880 fingerprint reader through five signature-matched byte patches. The accompanying investigation maps the device’s USB endpoints, command header and driver checks. The author reports working capture, while enrollment and matching remain unreliable or unconfirmed.","description_zh":"Dell ControlVault 2 fingerprint on Linux 通过五处字节特征补丁，使用户本地取得的 Broadcom 驱动识别较旧的 BCM5880 指纹设备。研究记录了设备的 USB 端点、命令头及驱动检查逻辑。作者报告指纹采集可用，但录入与比对仍不稳定或尚未确认。","entry_url":"https://awesomerea.org/resources/dell-controlvault2-fingerprint-linux-case/","entry_url_zh":"https://awesomerea.org/zh/resources/dell-controlvault2-fingerprint-linux-case/","evidence_url":"https://github.com/grosa787/dell-controlvault2-fingerprint-linux/blob/45609bee93a622bec27a3d062f0b42d2d63d45d3/PATCHES.md","group":"cases","id":"dell-controlvault2-fingerprint-linux-case","json_url":"https://awesomerea.org/resources/dell-controlvault2-fingerprint-linux-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/dell-controlvault2-fingerprint-linux-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dell-controlvault2-fingerprint-linux-case/index.md","name":"Dell ControlVault 2 fingerprint on Linux: adapting a driver for BCM5880","name_zh":"Dell ControlVault 2 fingerprint on Linux：改造 BCM5880 驱动","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["A Dell ControlVault 2 / Broadcom BCM5880 device with USB ID 0a5c:5834, Linux x86_64 and TOD-enabled libfprint.","The proprietary stock driver must be obtained locally from Canonical’s OEM repository.","The author reports enrollment commit failures on many units and unconfirmed verification with the included patches.","MIT license applies to the repository’s original scripts, udev rule and documentation."],"requirements_zh":["需要 USB ID 为 0a5c:5834 的 Dell ControlVault 2／Broadcom BCM5880 设备、Linux x86_64 和启用 TOD 的 libfprint。","闭源原版驱动须由用户从 Canonical OEM 仓库在本地获取。","作者报告多台设备的录入提交失败，仓库内补丁的指纹比对功能尚未确认。","MIT 许可证适用于仓库原创脚本、udev 规则和文档。"],"targets":["binary","protocol"],"url":"https://github.com/grosa787/dell-controlvault2-fingerprint-linux","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/mikel-btw/epson-l3110-driver/blob/e0fbf772b698bf010e3fe39bc1eb19034f0dee06/README.md"],"category":"reconstruction-cases","description_en":"epson-l3110-driver investigates the Epson L3110's USB printing exchanges while developing a Linux driver in C. Its notes use captured print-job traffic to identify the IEEE 1284 device ID, EJL session setup and ESC/P-R command framing. USB communication is still in progress, and the driver cannot yet print pages.","description_zh":"epson-l3110-driver 在开发 C 语言 Linux 驱动的同时研究 Epson L3110 的 USB 打印通信。协议笔记根据打印作业抓包记录 IEEE 1284 设备 ID、EJL 会话建立及 ESC/P-R 命令格式。USB 通信功能仍在开发，驱动尚不能打印页面。","entry_url":"https://awesomerea.org/resources/epson-l3110-driver-case/","entry_url_zh":"https://awesomerea.org/zh/resources/epson-l3110-driver-case/","evidence_url":"https://github.com/mikel-btw/epson-l3110-driver/blob/e0fbf772b698bf010e3fe39bc1eb19034f0dee06/docs/protocol-notes.md","group":"cases","id":"epson-l3110-driver-case","json_url":"https://awesomerea.org/resources/epson-l3110-driver-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/epson-l3110-driver-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/epson-l3110-driver-case/index.md","name":"epson-l3110-driver: investigating the printer's USB and ESC/P-R exchanges","name_zh":"epson-l3110-driver：分析 Epson L3110 的 USB 与 ESC/P-R 通信","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["An Epson L3110 printer and Linux are needed; the current Makefile requires libusb-1.0 and libcups development files.","Printing, image processing and the CUPS filter and backend are pending.","GPL-3.0 license."],"requirements_zh":["需要 Epson L3110 打印机和 Linux；当前 Makefile 还需要 libusb-1.0 与 libcups 开发文件。","打印、图像处理以及 CUPS 过滤器和后端尚未完成。","采用 GPL-3.0 许可证。"],"targets":["protocol"],"url":"https://github.com/mikel-btw/epson-l3110-driver","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"MS5 WiFi Microscope reconstructs the MS5 camera's UDP command and video protocol and supplies a Python client that serves its reassembled JPEG stream as MJPEG. The documentation specifies command headers, the OpenVideo port handshake, chunk layout and resolution queries; the author reports 1280×720 streaming at roughly 25–30 fps on MS5 hardware.","description_zh":"MS5 WiFi Microscope 复原 MS5 相机的 UDP 控制与视频协议，并用 Python 客户端将重组后的 JPEG 帧以 MJPEG 提供给浏览器或播放器。文档列出命令头、OpenVideo 端口握手、分片布局和分辨率查询；作者报告在 MS5 实机上获得约 25–30 fps 的 1280×720 画面。","entry_url":"https://awesomerea.org/resources/ms5-wifi-microscope-case/","entry_url_zh":"https://awesomerea.org/zh/resources/ms5-wifi-microscope-case/","evidence_url":"https://github.com/Fyfar/ms5-wifi-microscope/blob/16cf577bca5cb3da72dd4b7a8240d6e9f9d209f2/README.md","group":"cases","id":"ms5-wifi-microscope-case","json_url":"https://awesomerea.org/resources/ms5-wifi-microscope-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/ms5-wifi-microscope-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ms5-wifi-microscope-case/index.md","name":"MS5 WiFi Microscope: reconstructing the camera's UDP video protocol","name_zh":"MS5 WiFi Microscope：复原显微镜的 UDP 视频协议","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["Python 3.7 or newer and a computer connected to the microscope's Wi-Fi access point.","Compatibility is reported for the MS5; related i4season devices are suggested but unconfirmed.","MIT license."],"requirements_zh":["需要 Python 3.7 或更新版本，以及连接到显微镜 Wi-Fi 热点的电脑。","作者报告已适配 MS5；对其他 i4season 设备的适用性尚未确认。","MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/Fyfar/ms5-wifi-microscope","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/tobiasbrummer/lux-lat-long-log/blob/87e51686c8496ca20fa8b14433ba548383f8da5b/PROTOCOL.md"],"category":"reconstruction-cases","description_en":"lux-lat-long-log reconstructs the Panasonic LUMIX S5 Bluetooth LE GPS exchange in an ESP32 camera client. The project documents GATT identifiers, session ordering and GPS/time packets from Android HCI captures, then uses a GNSS module to send positions without the phone app.","description_zh":"lux-lat-long-log 利用 ESP32 固件重建 Panasonic LUMIX S5 的 BLE 定位通信，无需厂商手机应用即可向相机发送位置。项目根据 Android HCI 抓包记录 GATT 标识、会话顺序及 GPS 和时间数据包，并使用 GNSS 模块提供位置数据。","entry_url":"https://awesomerea.org/resources/lux-lat-long-log-case/","entry_url_zh":"https://awesomerea.org/zh/resources/lux-lat-long-log-case/","evidence_url":"https://github.com/tobiasbrummer/lux-lat-long-log/blob/87e51686c8496ca20fa8b14433ba548383f8da5b/README.md","group":"cases","id":"lux-lat-long-log-case","json_url":"https://awesomerea.org/resources/lux-lat-long-log-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/lux-lat-long-log-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/lux-lat-long-log-case/index.md","name":"lux-lat-long-log: reconstructing LUMIX S5 BLE GPS communication","name_zh":"lux-lat-long-log：重建 LUMIX S5 蓝牙定位通信","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","scope","testing","license"],"requirements":["Requires an ESP32 and SIM868 GNSS module for the documented hardware build.","Builds with PlatformIO; the documented camera implementation targets the LUMIX S5.","The author reports successful hardware and photo EXIF checks for the S5.","MIT licence."],"requirements_zh":["所述硬件方案需要 ESP32 和 SIM868 GNSS 模块。","使用 PlatformIO 构建；现有相机实现针对 LUMIX S5。","作者报告已在 S5 实机及照片 EXIF 中检查定位结果。","采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/tobiasbrummer/lux-lat-long-log","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Ikreb1/mtg-arena-collection-export/blob/a63edadee8160b18ac7c8d6387cab7ec53ccd294/README.md"],"category":"reconstruction-cases","description_en":"MTG Arena Collection Export reconstructs the Frontdoor request needed to export owned cards from Magic: The Gathering Arena. The Python client uses an account refresh token, opens a TLS Frontdoor socket, authenticates with the 2026 version 4 frame and protobuf command envelope, and requests Card_GetAllCards. A separate protocol document records the recovered wire format.","description_zh":"MTG Arena Collection Export 重建 Magic: The Gathering Arena 的 Frontdoor 卡牌收藏请求。Python 客户端使用账户刷新令牌连接 TLS 套接字，以 2026 年的第 4 版帧和 protobuf 命令封套认证，再调用 Card_GetAllCards；独立文档记录了还原出的线协议。","entry_url":"https://awesomerea.org/resources/mtg-arena-collection-export-case/","entry_url_zh":"https://awesomerea.org/zh/resources/mtg-arena-collection-export-case/","evidence_url":"https://github.com/Ikreb1/mtg-arena-collection-export/blob/a63edadee8160b18ac7c8d6387cab7ec53ccd294/docs/PROTOCOL.md","group":"cases","id":"mtg-arena-collection-export-case","json_url":"https://awesomerea.org/resources/mtg-arena-collection-export-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/mtg-arena-collection-export-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mtg-arena-collection-export-case/index.md","name":"MTG Arena Collection Export: reconstructing the Frontdoor collection request","name_zh":"MTG Arena Collection Export：重建 Frontdoor 卡牌收藏请求","reconstruction_method":"other","record_type":"resource","relationship":"independent-reconstruction","requirements":["Requires Python 3.8 or newer and a captured refresh token from the user's own Arena account.","Requires a captured doorbell response or a Frontdoor URI; the source says Arena should be closed during export.","MIT licence."],"requirements_zh":["需要 Python 3.8 或更新版本，以及从使用者自己的 Arena 账户获取的刷新令牌。","需要已捕获的 doorbell 响应或 Frontdoor 地址；资料要求导出时关闭 Arena。","采用 MIT 许可证。"],"targets":["game","protocol"],"url":"https://github.com/Ikreb1/mtg-arena-collection-export","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/mchardysam/magene-l308-taillight/blob/346da4577e6980b48b50f7f02e387280c165a812/README.md"],"category":"reconstruction-cases","description_en":"Magene L308 interop tools reconstruct the smart taillight's BLE control protocol and light_mode.bin pattern format. A protocol specification records GATT characteristics, command frames and upload sequences; browser, Python and Garmin clients use those findings to control settings and patterns directly.","description_zh":"Magene L308 互操作工具重建了这款智能尾灯的 BLE 控制协议和 light_mode.bin 图案文件格式。协议文档记录 GATT 特征、命令帧和上传流程；浏览器、Python 和 Garmin 客户端利用这些研究结果直接控制尾灯的设置与图案。","entry_url":"https://awesomerea.org/resources/magene-l308-taillight-case/","entry_url_zh":"https://awesomerea.org/zh/resources/magene-l308-taillight-case/","evidence_url":"https://github.com/mchardysam/magene-l308-taillight/blob/346da4577e6980b48b50f7f02e387280c165a812/spec/L308-ble-protocol.md","group":"cases","id":"magene-l308-taillight-case","json_url":"https://awesomerea.org/resources/magene-l308-taillight-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/magene-l308-taillight-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/magene-l308-taillight-case/index.md","name":"Magene L308: reconstructing a smart taillight's BLE control protocol","name_zh":"Magene L308：重建智能尾灯的 BLE 控制协议","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["A Magene L308 light is required; the Python CLI uses bleak.","The web client requires Chrome or Edge with Web Bluetooth in an HTTPS or localhost context.","Pattern uploads replace the whole on-device store, which has no read-back; keep exported .bin backups.","Code is MIT licensed; the protocol specification is CC-BY-4.0 licensed."],"requirements_zh":["需要 Magene L308 尾灯；Python 命令行工具使用 bleak。","网页客户端需要支持 Web Bluetooth 的 Chrome 或 Edge，并通过 HTTPS 或 localhost 打开。","上传图案会替换设备中的整个图案库，且无法从设备读回；应保存导出的 .bin 备份。","代码采用 MIT 许可证；协议文档采用 CC-BY-4.0 许可证。"],"targets":["protocol"],"url":"https://github.com/mchardysam/magene-l308-taillight","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Senko74/Void-Client/blob/005183d271b907e0466228b185daace893f95e4c/package.json"],"category":"reconstruction-cases","description_en":"Void Client is an unfinished JavaScript rewrite of the Starblast.io browser game client based on study of its network protocol. Its current Node.js and browser components provide game-mode selection, server discovery, local WebSocket communication, and parsing and JSON export of some received packets.","description_zh":"Void Client 是一个尚未完成的 Starblast.io 浏览器游戏客户端 JavaScript 重建项目，基于对其网络协议的研究。现有 Node.js 服务端和浏览器组件提供游戏模式选择、服务器发现、本地 WebSocket 通信，并解析部分收到的数据包，将其导出为 JSON。","entry_url":"https://awesomerea.org/resources/void-client-case/","entry_url_zh":"https://awesomerea.org/zh/resources/void-client-case/","evidence_url":"https://github.com/Senko74/Void-Client/blob/005183d271b907e0466228b185daace893f95e4c/README.md","group":"cases","id":"void-client-case","json_url":"https://awesomerea.org/resources/void-client-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/void-client-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/void-client-case/index.md","name":"Void Client: rebuilding the Starblast.io client","name_zh":"Void Client：重建 Starblast.io 游戏客户端","reconstruction_method":"other","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["Node.js and the package.json dependencies are required.","The client is a work in progress; current functionality covers menus, network helpers, and basic packet parsing.","The package.json declares an ISC license; the repository has no separate license file."],"requirements_zh":["需要 Node.js 及 package.json 中的依赖。","客户端仍在开发，现有功能主要包括菜单、网络辅助逻辑和基础数据包解析。","package.json 声明 ISC 许可证；仓库没有单独的许可证文件。"],"targets":["game","protocol"],"url":"https://github.com/Senko74/Void-Client","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Janczykkkko/xbloom-ble/blob/cfa29daa771fdd147de78c1844d2251ca81ea583/README.md"],"category":"reconstruction-cases","description_en":"xbloom-ble implements a Python client for the xBloom Studio coffee machine's recovered Bluetooth LE protocol. The author documents capturing app traffic and comparing GATT command frames; the CLI and terminal UI load recipes, program dial presets, optionally start brewing and display live scale telemetry.","description_zh":"xbloom-ble 是针对 xBloom Studio 咖啡机已解析 Bluetooth LE 协议的 Python 客户端。作者记录了采集手机应用流量、比较 GATT 命令帧的过程；命令行与终端界面可加载配方、设置旋钮预设、按明确指令启动冲煮，并显示实时称重数据。","entry_url":"https://awesomerea.org/resources/xbloom-ble-case/","entry_url_zh":"https://awesomerea.org/zh/resources/xbloom-ble-case/","evidence_url":"https://github.com/Janczykkkko/xbloom-ble/blob/cfa29daa771fdd147de78c1844d2251ca81ea583/docs/REVERSE-ENGINEERING.md","group":"cases","id":"xbloom-ble-case","json_url":"https://awesomerea.org/resources/xbloom-ble-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/xbloom-ble-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/xbloom-ble-case/index.md","name":"xbloom-ble: a client for the xBloom Studio BLE protocol","name_zh":"xbloom-ble：xBloom Studio 蓝牙协议客户端","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","testing","prerequisites","license"],"requirements":["An xBloom Studio machine and Bluetooth LE access are required; the phone app must disconnect before writes because the machine accepts one BLE link.","Python 3.10 or newer, with bleak and PyYAML; Linux also requires BlueZ.","The author tested only one machine running firmware V12.0D.500.","Remote start dispenses near-boiling water and requires the machine to be physically ready.","MIT licence."],"requirements_zh":["需要 xBloom Studio 咖啡机及 Bluetooth LE 连接；写入前须断开手机应用，因为机器一次只接受一个蓝牙连接。","需要 Python 3.10 或更新版本，以及 bleak 和 PyYAML；Linux 还需要 BlueZ。","作者仅在一台运行 V12.0D.500 固件的机器上测试。","远程启动会放出接近沸腾的热水，须先确保机器已做好物理准备。","采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/Janczykkkko/xbloom-ble","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/gusleig/ajazz-ak820-pro-mac/blob/2ad5c553140b50b62e1b93096dc089086976351e/docs/DISCOVERY-LOG.md","https://github.com/gusleig/ajazz-ak820-pro-mac/blob/2ad5c553140b50b62e1b93096dc089086976351e/docs/protocol.md"],"category":"reconstruction-cases","description_en":"ak820 implements macOS control of the AJAZZ AK820 Pro keyboard through its vendor HID feature-report protocol. The Python CLI sets the clock, RGB lighting, and sleep timer over USB; accompanying notes describe Windows-driver analysis, packet framing, transaction handshakes, and the unresolved key-remapping commands.","description_zh":"ak820 通过 AJAZZ AK820 Pro 的厂商 HID feature report 协议在 macOS 上控制键盘。Python 命令行工具经 USB 设置时钟、RGB 灯光和休眠时间；附带文档记录 Windows 驱动分析、数据包封装、事务握手及尚未解决的按键重映射命令。","entry_url":"https://awesomerea.org/resources/ajazz-ak820-pro-mac-case/","entry_url_zh":"https://awesomerea.org/zh/resources/ajazz-ak820-pro-mac-case/","evidence_url":"https://github.com/gusleig/ajazz-ak820-pro-mac/blob/2ad5c553140b50b62e1b93096dc089086976351e/README.md","group":"cases","id":"ajazz-ak820-pro-mac-case","json_url":"https://awesomerea.org/resources/ajazz-ak820-pro-mac-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/ajazz-ak820-pro-mac-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ajazz-ak820-pro-mac-case/index.md","name":"ak820: reconstructing AJAZZ AK820 Pro HID control on macOS","name_zh":"ak820：在 macOS 上重建 AJAZZ AK820 Pro 的 HID 控制协议","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["macOS, Python 3.11+, and an AJAZZ AK820 Pro connected with a USB-C data cable are required.","The Python package depends on hidapi.","LCD image upload on macOS and key remapping are unsupported.","MIT license."],"requirements_zh":["需要 macOS、Python 3.11+，以及通过 USB-C 数据线连接的 AJAZZ AK820 Pro。","Python 包依赖 hidapi。","macOS 上不支持上传 LCD 图片，按键重映射尚未实现。","采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/gusleig/ajazz-ak820-pro-mac","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"game-analysis","description_en":"GRB Modding Knowledgebase documents Ghost Recon: Breakpoint’s Anvil .forge archives, nested .data resources and asset replacement workflow. Its Python inspectors examine MotionCloth files, list resource types, compare forge indexes and diff gameplay database records to explore field layouts.","description_zh":"GRB Modding Knowledgebase 记录《Ghost Recon: Breakpoint》的 Anvil .forge 归档、嵌套的 .data 资源及资产替换流程。其 Python 工具检查 MotionCloth 文件、列出资源类型、比较 forge 索引，并通过比较游戏数据库记录探索字段布局。","entry_url":"https://awesomerea.org/resources/grb-modding-knowledgebase/","entry_url_zh":"https://awesomerea.org/zh/resources/grb-modding-knowledgebase/","evidence_url":"https://github.com/dataterminals/grb-modding-knowledgebase/blob/4641d9b938ea81a3267873716f268c1c17883433/README.md","group":"tools","id":"grb-modding-knowledgebase","json_url":"https://awesomerea.org/resources/grb-modding-knowledgebase/record.json","kind":"project","markdown_url":"https://awesomerea.org/resources/grb-modding-knowledgebase/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/grb-modding-knowledgebase/index.md","name":"GRB Modding Knowledgebase","name_zh":"GRB Modding Knowledgebase《Ghost Recon: Breakpoint》格式研究与工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Inspection requires Ghost Recon: Breakpoint game data; the Data Inspector uses the game’s DLL for Oodle decompression.","The project describes itself as a living research project with open questions.","No licence file in the repository."],"requirements_zh":["检查需要《Ghost Recon: Breakpoint》的游戏数据；Data Inspector 使用游戏 DLL 进行 Oodle 解压。","项目仍在持续研究，并列有未解决的问题。","仓库中没有许可证文件。"],"targets":["game"],"url":"https://github.com/dataterminals/grb-modding-knowledgebase","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"An investigation of WeChat 4.1.10 for macOS reports recovering per-database SQLCipher keys by breaking on CommonCrypto encryption calls in LLDB. It compares that approach with memory scanning and sqlite3_key breakpoints, and describes an offline check against a decrypted SQLite page.","description_zh":"这项研究针对 macOS 版 WeChat 4.1.10，作者报告通过 LLDB 在 CommonCrypto 加密调用处设置断点，提取各数据库的 SQLCipher 密钥。文档比较内存扫描与 sqlite3_key 断点，并说明如何用 SQLite 页面离线核对密钥。","entry_url":"https://awesomerea.org/resources/wechat-4-1-10-macos-key-case/","entry_url_zh":"https://awesomerea.org/zh/resources/wechat-4-1-10-macos-key-case/","evidence_url":"https://github.com/Evanyuan-builder/wechat-4.1.10-macos-key/blob/14acb2ea420197e493c579914fe138960246310a/README.md","group":"cases","id":"wechat-4-1-10-macos-key-case","json_url":"https://awesomerea.org/resources/wechat-4-1-10-macos-key-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/wechat-4-1-10-macos-key-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wechat-4-1-10-macos-key-case/index.md","name":"WeChat: recovering SQLCipher keys through CommonCrypto hooks","name_zh":"WeChat：通过 CommonCrypto 钩子提取 SQLCipher 密钥","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","testing","license"],"requirements":["WeChat 4.1.10 on Apple Silicon macOS, with LLDB and access to the user's own app data.","The author reports testing on one machine running macOS 26.5.1.","No licence file in the repository."],"requirements_zh":["需要在 Apple Silicon macOS 上使用 WeChat 4.1.10、LLDB，并能访问自己的应用数据。","作者报告仅在一台运行 macOS 26.5.1 的机器上测试。","仓库中没有许可证文件。"],"targets":["app","binary"],"url":"https://github.com/Evanyuan-builder/wechat-4.1.10-macos-key","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/CreativeInquiry/GameTrak-Liberation/blob/bc8c2f96c86c15f016939777e9694f1366cb2836/docs/protocol.md"],"category":"reconstruction-cases","description_en":"GameTrak Liberation implements a client for the GameTrak controller's reverse-engineered USB HID behavior. It sends the initialization and rolling-key keepalive messages needed for sustained reports, then exposes six-axis data through stdout, OSC, MIDI or WebSockets. Protocol notes, report captures and Processing and p5.js examples accompany the Python tools.","description_zh":"GameTrak Liberation 根据逆向得到的 USB HID 行为实现控制器客户端。它发送初始化消息和滚动密钥保活包，以持续接收六轴数据，并通过 stdout、OSC、MIDI 或 WebSockets 输出。仓库还提供协议笔记、报告采样及 Processing 和 p5.js 示例。","entry_url":"https://awesomerea.org/resources/gametrak-liberation-case/","entry_url_zh":"https://awesomerea.org/zh/resources/gametrak-liberation-case/","evidence_url":"https://github.com/CreativeInquiry/GameTrak-Liberation/blob/bc8c2f96c86c15f016939777e9694f1366cb2836/README.md","group":"cases","id":"gametrak-liberation-case","json_url":"https://awesomerea.org/resources/gametrak-liberation-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/gametrak-liberation-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/gametrak-liberation-case/index.md","name":"GameTrak Liberation: a client for the controller's HID protocol","name_zh":"GameTrak Liberation：基于控制器 HID 协议的客户端","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","testing","limits","license"],"requirements":["A GameTrak controller is required for live capture; offline playback accepts recorded JSONL reports.","The author tested a GameTrak V2.0 unit on macOS 15.6 with Python 3.10 and 3.14.","The footswitch was unavailable for testing and is unsupported.","MIT license."],"requirements_zh":["实时采集需要 GameTrak 控制器；离线回放可使用已录制的 JSONL 报告。","作者在 macOS 15.6 上使用 Python 3.10 和 3.14 测试了 GameTrak V2.0 设备。","脚踏开关未能测试，当前不受支持。","MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/CreativeInquiry/GameTrak-Liberation","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/kronhait/cooper-hunter-ac-esphome/blob/aceab67f8621e5e17c52ffbbb9a7964524b79783/PROTOCOL.md"],"category":"reconstruction-cases","description_en":"Cooper Hunter AC documents the COM1 UART and infrared control messages of CH-IF140RK and CH-IF140RK2 units with a Gree GRZQ3-R V1 board. The author inferred UART status fields by comparing packets while operating the infrared remote. The resulting ESPHome design receives UART status and sends control through an infrared signal path.","description_zh":"Cooper Hunter AC 记录了使用 Gree GRZQ3-R V1 板卡的 CH-IF140RK 与 CH-IF140RK2 空调的 COM1 UART 和红外控制消息。作者对比红外遥控操作前后的数据包，推断 UART 状态字段；最终 ESPHome 方案通过 UART 接收状态，经红外信号路径发送控制。","entry_url":"https://awesomerea.org/resources/cooper-hunter-ac-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/cooper-hunter-ac-protocol-case/","evidence_url":"https://github.com/kronhait/cooper-hunter-ac-esphome/blob/aceab67f8621e5e17c52ffbbb9a7964524b79783/README.md","group":"cases","id":"cooper-hunter-ac-protocol-case","json_url":"https://awesomerea.org/resources/cooper-hunter-ac-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/cooper-hunter-ac-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cooper-hunter-ac-protocol-case/index.md","name":"Cooper Hunter AC: UART and infrared protocol investigation","name_zh":"Cooper Hunter AC：UART 与红外协议调查","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","scope","limits","license"],"requirements":["Cooper Hunter CH-IF140RK or CH-IF140RK2 with the documented Gree GRZQ3-R V1 board, plus an ESP32 running ESPHome for the described setup.","The final wiring uses UART receive only; control uses infrared signal injection.","Some protocol fields are marked tentative in PROTOCOL.md.","MIT license."],"requirements_zh":["文档所述方案需要采用 Gree GRZQ3-R V1 板卡的 Cooper Hunter CH-IF140RK 或 CH-IF140RK2，以及运行 ESPHome 的 ESP32。","最终接线仅用 UART 接收状态；控制命令通过红外信号注入。","PROTOCOL.md 将部分协议字段标为暂定。","MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/kronhait/cooper-hunter-ac-esphome","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/volodarskij/yandex-station-local-streaming/blob/085c0a42458620cc7288726e48e5726caae2f0d6/LICENSE.md"],"category":"protocol-analysis","description_en":"Local audio streaming on Yandex Station is a technical guide to the device’s Glagol WebSocket control channel and its HTTP audio-stream behavior. It documents radio_play, token acquisition, message formats and MP3 CBR stream requirements, including an exact Content-Length.","description_zh":"这份 Yandex Station 本地音频指南记录了设备的 Glagol WebSocket 控制通道及 HTTP 音频流行为，涵盖 radio_play、令牌获取、消息格式，以及 MP3 CBR 和准确 Content-Length 等播放条件。","entry_url":"https://awesomerea.org/resources/yandex-station-local-streaming/","entry_url_zh":"https://awesomerea.org/zh/resources/yandex-station-local-streaming/","evidence_url":"https://github.com/volodarskij/yandex-station-local-streaming/blob/085c0a42458620cc7288726e48e5726caae2f0d6/README.md","group":"learn","id":"yandex-station-local-streaming","json_url":"https://awesomerea.org/resources/yandex-station-local-streaming/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/yandex-station-local-streaming/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/yandex-station-local-streaming/index.md","name":"Локальный аудиостриминг на Яндекс.Станцию","name_zh":"Локальный аудиостриминг на Яндекс.Станцию：Yandex Station 本地音频协议指南","record_type":"resource","relationship":"learning","requirement_facets":["prerequisites","prerequisites","testing","license"],"requirements":["A Yandex Station on the local network and an account Session_id to obtain a short-lived Glagol token.","An HTTP server serving MP3 CBR with an exact Content-Length.","The author tested a first-generation Yandex Station; other Quasar models were not tested.","Documentation text is CC BY 4.0; code snippets are MIT."],"requirements_zh":["需要局域网中的 Yandex Station，以及用于获取短期 Glagol 令牌的账号 Session_id。","需要提供 MP3 CBR 且 Content-Length 准确的 HTTP 服务器。","作者测试了第一代 Yandex Station；其他 Quasar 型号尚未测试。","文档文字采用 CC BY 4.0，代码片段采用 MIT。"],"targets":["protocol"],"url":"https://github.com/volodarskij/yandex-station-local-streaming","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/TotalKommando/psp-media-toolkit/blob/3e4825e60823fb9364284030e8baffea542ea546/FINDINGS.md"],"category":"game-analysis","description_en":"psp-media-slopkit analyses PSP XMB ICON1.PMF and SND0.AT3 files using format findings derived from retail game samples. Its Python CLI checks media against documented XMB limits, converts video and audio into icon media, and inserts the results into a homebrew EBOOT.PBP. FINDINGS.md records PSMF container fields, H.264 constraints and AT3 playback behaviour.","description_zh":"psp-media-slopkit 根据零售游戏样本的格式分析，检查 PSP XMB 使用的 ICON1.PMF 和 SND0.AT3 文件。Python 命令行工具可按文档中的 XMB 限制验证媒体、转换视频和音频，并写入自制软件的 EBOOT.PBP；FINDINGS.md 记录了 PSMF 容器字段、H.264 约束和 AT3 播放行为。","entry_url":"https://awesomerea.org/resources/psp-media-slopkit/","entry_url_zh":"https://awesomerea.org/zh/resources/psp-media-slopkit/","evidence_url":"https://github.com/TotalKommando/psp-media-toolkit/blob/3e4825e60823fb9364284030e8baffea542ea546/README.md","group":"tools","id":"psp-media-slopkit","json_url":"https://awesomerea.org/resources/psp-media-slopkit/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/psp-media-slopkit/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/psp-media-slopkit/index.md","name":"psp-media-slopkit","name_zh":"psp-media-slopkit PSP XMB 媒体格式工具包","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","prerequisites","testing","license"],"requirements":["Python 3.8 or newer; video conversion requires ffmpeg and ffprobe with libx264.","SND0.AT3 creation requires atracdenc; ATRAC3+ output requires Sony's at3tool.exe.","PBP repacking requires an existing homebrew EBOOT.PBP.","The author reports hardware checks of generated ICON1.PMF and SND0.AT3 media.","MIT license."],"requirements_zh":["需要 Python 3.8 或更新版本；视频转换还需要带有 libx264 的 ffmpeg 和 ffprobe。","生成 SND0.AT3 需要 atracdenc；输出 ATRAC3+ 需要 Sony 的 at3tool.exe。","重新打包 PBP 需要现成的自制软件 EBOOT.PBP。","作者报告已在 PSP 实机检查生成的 ICON1.PMF 和 SND0.AT3 媒体。","MIT 许可证。"],"targets":["game"],"url":"https://github.com/TotalKommando/psp-media-toolkit","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/bo2themax/Siriously/blob/01c29a7e7e8d96a9aaf0d89b3919cd1c8b794c77/README.md"],"category":"reconstruction-cases","description_en":"Siriously investigates how macOS 27 changed access to Writing Tools and restores its popover through a Services client. The author used Objective-C runtime introspection and behavioral tracing to identify private WritingToolsUI classes, then passes selected text to the popover and writes accepted results back through Accessibility APIs. The findings concern one macOS build.","description_zh":"Siriously 研究 macOS 27 中 Writing Tools 调用入口的变化，并通过 Services 客户端恢复弹窗。作者用 Objective-C 运行时探查与行为跟踪定位 WritingToolsUI 私有类，将所选文本送入弹窗，再通过辅助功能 API 回写结果。分析针对一个系统构建版本。","entry_url":"https://awesomerea.org/resources/siriously-writing-tools-case/","entry_url_zh":"https://awesomerea.org/zh/resources/siriously-writing-tools-case/","evidence_url":"https://github.com/bo2themax/Siriously/blob/01c29a7e7e8d96a9aaf0d89b3919cd1c8b794c77/FINDINGS.md","group":"cases","id":"siriously-writing-tools-case","json_url":"https://awesomerea.org/resources/siriously-writing-tools-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/siriously-writing-tools-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/siriously-writing-tools-case/index.md","name":"Siriously: recovering macOS Writing Tools entry points","name_zh":"Siriously：恢复 macOS Writing Tools 的调用入口","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","scope","prerequisites","limits","license"],"requirements":["A Mac with Apple Intelligence and the new Siri enabled is required.","The author reports operation on macOS 27.0 build 26A5368g on arm64.","Accessibility permission is required to read selections and write results back.","Private framework behavior can change with OS updates.","MIT license."],"requirements_zh":["需要已启用 Apple Intelligence 和新 Siri 的 Mac。","作者报告适用于 arm64 上的 macOS 27.0 构建 26A5368g。","读取所选文本和回写结果需要辅助功能权限。","系统更新可能改变私有框架行为。","MIT 许可证。"],"targets":["app","binary"],"url":"https://github.com/bo2themax/Siriously","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/boykopovar/sqlce/blob/78a3888b028952e0157bde1d1fd0a7b30edc4747/docs/en/cpp.md"],"category":"binary-libraries","description_en":"sqlce reads SQL Server Compact .sdf database files using a cross-platform C++ parser informed by analysis of decompiled SQL CE components. Python and WebAssembly bindings expose table names, schemas and rows, including files encrypted with a supplied password.","description_zh":"sqlce 根据对反编译 SQL CE 组件的分析，以跨平台 C++ 解析器读取 SQL Server Compact .sdf 数据库文件。Python 与 WebAssembly 绑定可读取表名、结构和记录，也支持使用提供的密码读取加密文件。","entry_url":"https://awesomerea.org/resources/sqlce/","entry_url_zh":"https://awesomerea.org/zh/resources/sqlce/","evidence_url":"https://github.com/boykopovar/sqlce/blob/78a3888b028952e0157bde1d1fd0a7b30edc4747/README.md","group":"tools","id":"sqlce","json_url":"https://awesomerea.org/resources/sqlce/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/sqlce/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sqlce/index.md","name":"sqlce","name_zh":"sqlce SQL Server Compact SDF 文件解析库","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","testing","license"],"requirements":["An existing .sdf file is required; encrypted files need a password.","The comparison test suite requires Windows with SQL Server Compact 4.0 installed.","MIT license."],"requirements_zh":["需要已有的 .sdf 文件；加密文件还需要密码。","对照测试需要 Windows 和已安装的 SQL Server Compact 4.0。","采用 MIT 许可证。"],"targets":["app"],"url":"https://github.com/boykopovar/sqlce","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"game-analysis","description_en":"DualRip extracts Nintendo DS sound effects and music from SDAT archives and Nintendo 3DS audio from CSAR archives, including ROM inputs. It parses sequence, wave and stream formats, emulates the consoles' sound drivers for rendering and exports WAV files with loop points through CLI and GUI frontends.","description_zh":"DualRip 从 Nintendo DS 的 SDAT 和 Nintendo 3DS 的 CSAR 档案提取音效与音乐，也支持游戏 ROM 输入。它解析序列、波形和流格式，模拟主机音频驱动进行渲染，并通过命令行或图形界面导出含循环点的 WAV 文件。","entry_url":"https://awesomerea.org/resources/dualrip/","entry_url_zh":"https://awesomerea.org/zh/resources/dualrip/","evidence_url":"https://github.com/TetraSsky/DualRip/blob/f69e23c63a7d0985a474d0cbaeb2b364174748ac/README.md","group":"tools","id":"dualrip","json_url":"https://awesomerea.org/resources/dualrip/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dualrip/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dualrip/index.md","name":"DualRip","name_zh":"DualRip Nintendo DS 与 3DS 音频提取工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["Python 3.10+ with NumPy, ndspy and pyctr is required; the GUI additionally uses PySide6 and sounddevice.","Encrypted 3DS ROMs require the user's boot9.bin dump; no game data is included.","MIT License."],"requirements_zh":["需要 Python 3.10 及以上版本、NumPy、ndspy 和 pyctr；图形界面另需 PySide6 和 sounddevice。","加密的 3DS ROM 需要用户自备 boot9.bin 转储；项目不包含游戏数据。","采用 MIT 许可证。"],"targets":["game"],"url":"https://github.com/TetraSsky/DualRip","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/claygorman/aw5d-linux/blob/e70d481429b9bf1470bd21a9b33ebfd9e5db491c/README.md"],"category":"reconstruction-cases","description_en":"aw5d-linux drives the round LCD on an iBUYPOWER AW5/AW5D cooler from Linux using a 64-byte USB-HID output report. Its research notes document report ID 0x10 and byte positions for CPU usage, clock, temperature and gauge styling. The author reports a working display on one 3402:0407 unit; other device variants remain unconfirmed.","description_zh":"aw5d-linux 在 Linux 上通过 64 字节 USB-HID 输出报告驱动 iBUYPOWER AW5/AW5D 散热器的圆形屏幕。研究笔记记录报告 ID 0x10，以及 CPU 使用率、频率、温度和仪表样式对应的字节位置。作者报告已在一台 3402:0407 设备上运行，其他变体尚未确认。","entry_url":"https://awesomerea.org/resources/aw5d-linux-case/","entry_url_zh":"https://awesomerea.org/zh/resources/aw5d-linux-case/","evidence_url":"https://github.com/claygorman/aw5d-linux/blob/e70d481429b9bf1470bd21a9b33ebfd9e5db491c/RESEARCH.md","group":"cases","id":"aw5d-linux-case","json_url":"https://awesomerea.org/resources/aw5d-linux-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/aw5d-linux-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/aw5d-linux-case/index.md","name":"aw5d-linux: driving an iBUYPOWER cooler LCD from USB-HID research","name_zh":"aw5d-linux：依据 USB-HID 协议研究驱动 iBUYPOWER 散热器屏幕","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["Linux, Python 3.8+ and an iBUYPOWER AW5/AW5D cooler with USB access.","Only the 3402:0407 variant is confirmed; custom image and GIF display modes are outside the current scope.","MIT License."],"requirements_zh":["需要 Linux、Python 3.8 或更高版本，以及可通过 USB 访问的 iBUYPOWER AW5/AW5D 散热器。","目前仅确认 3402:0407 变体；自定义图片和 GIF 显示模式暂不在支持范围内。","MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/claygorman/aw5d-linux","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/byte271/mirrorframe/blob/16ffce02957bbc7f28f5ea1b38e40bea3ff4fd37/references/limitations.md"],"category":"web-analysis","description_en":"Mirrorframe captures webpages with Playwright and reconstructs their observed layout and behavior as a self-contained React app. It records computed styles, assets, motion and selected interaction states, then compares rendered nodes and replayed states against the original with image diffs.","description_zh":"Mirrorframe 使用 Playwright 采集网页，并将观察到的布局和行为重建为独立的 React 应用。它记录计算样式、资源、动效和部分交互状态，再通过图像差异，将重建后的节点和重放状态与原网页比对。","entry_url":"https://awesomerea.org/resources/mirrorframe/","entry_url_zh":"https://awesomerea.org/zh/resources/mirrorframe/","evidence_url":"https://github.com/byte271/mirrorframe/blob/16ffce02957bbc7f28f5ea1b38e40bea3ff4fd37/README.md","group":"tools","id":"mirrorframe","json_url":"https://awesomerea.org/resources/mirrorframe/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/mirrorframe/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mirrorframe/index.md","name":"Mirrorframe","name_zh":"Mirrorframe 网页采集与 React 重建工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","limits","license"],"requirements":["Node.js 18 or later and Playwright Chromium are required.","The 0.x CLI, genome schema and report format may change.","Live Canvas, WebGL and WebGPU drawing programs are not reconstructed; Canvas output is a captured still.","MIT License."],"requirements_zh":["需要 Node.js 18 或更新版本及 Playwright Chromium。","0.x 版本的命令参数、genome 结构和报告格式可能变化。","不重建实时 Canvas、WebGL 或 WebGPU 绘制程序；Canvas 输出为采集时的静态画面。","采用 MIT 许可证。"],"targets":["website"],"url":"https://github.com/byte271/mirrorframe","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"agent-mcp","description_en":"adb-mcp gives agents structured Android Debug Bridge tools for investigating app behavior on a device. It can launch packages, inspect the UI hierarchy, capture logcat records and screenshots, retrieve files, and set up port forwarding. Its documentation shows a command sequence for investigating an in-app action through UI interaction and logs.","description_zh":"adb-mcp 将 Android Debug Bridge 操作封装为供智能体使用的结构化工具，用于调查设备上的应用行为。它可启动应用、检查界面层级、采集 logcat 日志与截图、提取文件并配置端口转发。文档给出了通过界面操作和日志调查应用内动作的命令示例。","entry_url":"https://awesomerea.org/resources/adb-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/adb-mcp/","evidence_url":"https://github.com/FlashZ/adb-mcp/blob/84533098932fb0a7c866e3f3b30a6da8d9311f90/README.md","group":"agents","id":"adb-mcp","json_url":"https://awesomerea.org/resources/adb-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/adb-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/adb-mcp/index.md","name":"adb-mcp","name_zh":"adb-mcp Android 调试桥智能体接口","record_type":"resource","relationship":"independent-agent-integration","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Python 3.10 or newer, Android platform-tools adb, and an MCP client.","An Android device or emulator is needed for device operations.","The general run_shell tool is disabled unless explicitly enabled.","MIT license."],"requirements_zh":["需要 Python 3.10 或更新版本、Android platform-tools 中的 adb，以及 MCP 客户端。","设备操作需要 Android 设备或模拟器。","通用 run_shell 工具默认关闭，须显式启用。","MIT 许可证。"],"targets":["app"],"url":"https://github.com/FlashZ/adb-mcp","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Nico-Tech-Shenzhen/hacking-the-xbox-ja/blob/45dfd86050af4afae590dd6ac5247b8bd610e010/docs/index.md"],"category":"learning","description_en":"Hacking the Xbox — 日本語訳 publishes a Japanese translation of a book on Xbox reverse engineering. The repository includes translated introductory material and chapters 1–6 with figures; later chapters and appendices remain pending.","description_zh":"Hacking the Xbox — 日本語訳提供 Xbox 逆向工程著作的日文译文。仓库已有导读及第 1 至第 6 章的译文和配图，后续章节与附录尚待翻译。","entry_url":"https://awesomerea.org/resources/hacking-the-xbox-ja/","entry_url_zh":"https://awesomerea.org/zh/resources/hacking-the-xbox-ja/","evidence_url":"https://github.com/Nico-Tech-Shenzhen/hacking-the-xbox-ja/blob/45dfd86050af4afae590dd6ac5247b8bd610e010/README.md","group":"learn","id":"hacking-the-xbox-ja","json_url":"https://awesomerea.org/resources/hacking-the-xbox-ja/record.json","kind":"learning-resource","markdown_url":"https://awesomerea.org/resources/hacking-the-xbox-ja/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hacking-the-xbox-ja/index.md","name":"Hacking the Xbox — 日本語訳","name_zh":"Hacking the Xbox：日文译本","record_type":"resource","relationship":"learning","requirement_facets":["prerequisites","limits","license"],"requirements":["Japanese reading ability.","Chapters 7–13 and appendices A–F are not started; earlier sections remain under review.","Book-derived text, images and translations: CC BY-NC-SA 1.0; scripts and site configuration: MIT."],"requirements_zh":["需要具备日语阅读能力。","第 7 至第 13 章及附录 A–F 尚未开始；已有章节仍在校订。","书籍衍生文字、图片和译文采用 CC BY-NC-SA 1.0；脚本与站点配置采用 MIT。"],"targets":["firmware"],"url":"https://github.com/Nico-Tech-Shenzhen/hacking-the-xbox-ja","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/cable729/inkterop/blob/f16eb8d2a425637aab629e6cc90c00a18f17009f/docs/formats/goodnotes.md"],"category":"binary-libraries","description_en":"inkterop converts native handwriting files from note apps and e-ink devices through a documented intermediate representation. It reads stroke data including pressure and tilt where present, implements readers for formats such as GoodNotes and Notability, and publishes format investigation notes and conversion fidelity modes.","description_zh":"inkterop 通过有文档说明的中间表示转换笔记应用和电子墨水设备的原生手写文件。它读取笔画及文件中保存的压力、倾斜数据，实现 GoodNotes、Notability 等格式的读取器，并发布格式调查记录和转换保真模式。","entry_url":"https://awesomerea.org/resources/inkterop/","entry_url_zh":"https://awesomerea.org/zh/resources/inkterop/","evidence_url":"https://github.com/cable729/inkterop/blob/f16eb8d2a425637aab629e6cc90c00a18f17009f/README.md","group":"tools","id":"inkterop","json_url":"https://awesomerea.org/resources/inkterop/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/inkterop/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/inkterop/index.md","name":"inkterop","name_zh":"inkterop 手写笔记格式转换与分析工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Python 3.12 or later and uv for the documented setup.","Native note files in a supported input format.","Several formats are read-only or partial; GoodNotes reads ink and color, while Nebo's BINK ink codec remains under investigation.","MIT License for code; CC BY 4.0 for documentation."],"requirements_zh":["文档中的安装方式需要 Python 3.12 或更新版本及 uv。","需要支持格式的原生笔记文件作为输入。","若干格式仅支持读取或部分内容；GoodNotes 可读取笔迹和颜色，Nebo 的 BINK 笔迹编码仍在研究。","代码采用 MIT 许可证，文档采用 CC BY 4.0。"],"targets":["app"],"url":"https://github.com/cable729/inkterop","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"MyJBxHeadsetControl provides Stream Deck controls for the JBL Quantum 950 Wireless headset through its USB dongle's reverse-engineered HID exchange. It receives status packets for battery and sound modes, sends feature reports for settings, and uses the user's QuantumENGINE DLL to calculate EQ coefficients.","description_zh":"MyJBxHeadsetControl 通过已研究的 USB HID 数据交换，让 Stream Deck 控制 JBL Quantum 950 Wireless 耳机。插件读取电量和音效模式状态包，发送设置命令，并调用用户本机的 QuantumENGINE DLL 计算均衡器系数。","entry_url":"https://awesomerea.org/resources/myjbxheadsetcontrol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/myjbxheadsetcontrol-case/","evidence_url":"https://github.com/666mille/MyJBxHeadsetControl/blob/0c839ef79445763d96a365daf9dd98a07db2064b/README.md","group":"cases","id":"myjbxheadsetcontrol-case","json_url":"https://awesomerea.org/resources/myjbxheadsetcontrol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/myjbxheadsetcontrol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/myjbxheadsetcontrol-case/index.md","name":"MyJBxHeadsetControl: JBL Quantum 950 controls over USB HID","name_zh":"MyJBxHeadsetControl：通过 USB HID 控制 JBL Quantum 950","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","testing","prerequisites","license"],"requirements":["JBL Quantum 950 Wireless and its 2.4 GHz USB dongle; Stream Deck software 7.1 or newer.","Windows 10 or 11; the author states macOS is untested.","EQ actions require a local QuantumENGINE installation and its DLL.","MIT license."],"requirements_zh":["需要 JBL Quantum 950 Wireless 及其 2.4 GHz USB 接收器，并安装 Stream Deck 7.1 或更新版本。","适用于 Windows 10 或 11；作者称 macOS 尚未测试。","均衡器操作需要本机安装 QuantumENGINE 及其 DLL。","MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/666mille/MyJBxHeadsetControl","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"firmware","description_en":"SPRD Flash Tool implements the SPRD/UNISOC PAC download protocol in Rust for RDA8910 and UIS8910 devices. Its analysis functions read partitions or whole flash through READ_FLASH and infer a proposed BMAConfig layout from U-Boot, LuatOS and filesystem regions; the author reports byte comparisons on an Air724UG.","description_zh":"SPRD Flash Tool 用 Rust 实现面向 RDA8910 和 UIS8910 设备的 SPRD/UNISOC PAC 下载协议。分析功能通过 READ_FLASH 读取分区或整片闪存，并依据 U-Boot、LuatOS 及文件系统区域推测 BMAConfig 分区布局；作者报告在 Air724UG 上进行了字节比对。","entry_url":"https://awesomerea.org/resources/sprdflash-rs/","entry_url_zh":"https://awesomerea.org/zh/resources/sprdflash-rs/","evidence_url":"https://github.com/ajsb85/sprdflash-rs/blob/451c61ee63420c8aa4ee504e4b70fd8e6f0a8521/README.md","group":"tools","id":"sprdflash-rs","json_url":"https://awesomerea.org/resources/sprdflash-rs/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/sprdflash-rs/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sprdflash-rs/index.md","name":"SPRD Flash Tool","name_zh":"SPRD Flash Tool SPRD/UNISOC 固件读取与分区分析工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","testing","license"],"requirements":["Rust 1.85 or newer and a compatible SPRD/UNISOC device; PAC input supplies the download stages for device reads.","The proposed layout uses generic content-type names because flash data does not store partition roles.","The author reports hardware checks on an Air724UG RDA8910.","MIT license."],"requirements_zh":["需要 Rust 1.85 或更新版本及兼容的 SPRD/UNISOC 设备；读取设备时 PAC 文件提供下载阶段。","推测的分区布局使用通用内容类型名称，因为闪存数据不保存分区角色。","作者报告在 Air724UG RDA8910 上进行了硬件检查。","MIT 许可证。"],"targets":["firmware","protocol"],"url":"https://github.com/ajsb85/sprdflash-rs","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/time-attack/OpenPigeon/blob/86c649174f3521d79a7c7eda58725c99286804b7/README.md"],"category":"reconstruction-cases","description_en":"OpenPigeon is a TypeScript codec for reading GamePigeon iMessage game state and encoding caller-supplied moves for eleven turn-based games. Its protocol documentation describes balloon identity, encrypted move URLs, the length-seeded cipher and the state envelope; captured-message vectors support codec tests.","description_zh":"OpenPigeon 是 TypeScript 编解码器，可读取十一款 GamePigeon 回合制 iMessage 游戏的状态，并将调用方提供的操作编码为消息。协议文档说明消息气泡标识、加密操作 URL、以长度为种子的置换密码和状态封装；仓库还提供用于编解码测试的消息采样。","entry_url":"https://awesomerea.org/resources/openpigeon-case/","entry_url_zh":"https://awesomerea.org/zh/resources/openpigeon-case/","evidence_url":"https://github.com/time-attack/OpenPigeon/blob/86c649174f3521d79a7c7eda58725c99286804b7/docs/PROTOCOL.md","group":"cases","id":"openpigeon-case","json_url":"https://awesomerea.org/resources/openpigeon-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/openpigeon-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/openpigeon-case/index.md","name":"OpenPigeon: reconstructing GamePigeon iMessage game messages","name_zh":"OpenPigeon：重建 GamePigeon iMessage 游戏消息","reconstruction_method":"other","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Node.js 22 or newer.","Sending through Linq or Photon requires an account and host; Linq webhooks require a public endpoint.","The SDK handles turn-based payloads; live Play Now mode and move selection are outside its scope.","MIT license."],"requirements_zh":["需要 Node.js 22 或更新版本。","通过 Linq 或 Photon 发送消息需要账号和相应服务的主机；Linq webhook 需要公开端点。","SDK 处理回合制消息，不包含实时 Play Now 模式或自动选招。","采用 MIT 许可证。"],"targets":["game","protocol"],"url":"https://github.com/time-attack/OpenPigeon","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/exbyte-dev/zltrouter/blob/60a47a6dfbd435a52da428c575b373e431e3f330/README.md"],"category":"reconstruction-cases","description_en":"zlt reconstructs the LAN JSON API of the MTN ZLT T10D MAX router from its served JavaScript and observed responses. Its Python client handles reqproc requests, login and CSRF behavior, while a CLI and local dashboard expose signal, network mode, SMS and USSD operations. The protocol document identifies firmware-specific fields and porting limits.","description_zh":"zlt 根据 MTN ZLT T10D MAX 路由器提供的 JavaScript 和实机响应还原其局域网 JSON API。Python 客户端处理 reqproc 请求、登录与 CSRF 机制；命令行和本地面板提供信号、网络模式、短信及 USSD 操作。协议文档指出了固件特定字段与移植限制。","entry_url":"https://awesomerea.org/resources/zltrouter-case/","entry_url_zh":"https://awesomerea.org/zh/resources/zltrouter-case/","evidence_url":"https://github.com/exbyte-dev/zltrouter/blob/60a47a6dfbd435a52da428c575b373e431e3f330/docs/protocol.md","group":"cases","id":"zltrouter-case","json_url":"https://awesomerea.org/resources/zltrouter-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/zltrouter-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/zltrouter-case/index.md","name":"zlt: MTN ZLT T10D MAX router API reconstruction","name_zh":"zlt：MTN ZLT T10D MAX 路由器 API 还原","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["An MTN ZLT T10D MAX router on the LAN for the documented device behavior.","Python 3.11 or newer; authenticated operations require the router administrator password.","The author reports live checks against firmware CPE_NV8645_230A_E_QX_CAN-P42U17-20250703; other firmware may differ.","MIT license."],"requirements_zh":["文档所述设备行为需要局域网中的 MTN ZLT T10D MAX 路由器。","需要 Python 3.11 或更新版本；需认证的操作还要路由器管理员密码。","作者报告在固件 CPE_NV8645_230A_E_QX_CAN-P42U17-20250703 上进行实机检查；其他固件可能不同。","MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/exbyte-dev/zltrouter","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/ThatCrispyToast/claude-rc-api/blob/fac6d28eb1cf797f95abe22ee95b7f23fb246e4d/README.md"],"category":"reconstruction-cases","description_en":"claude-rc-api reconstructs the private HTTP interface used to control local Claude Code sessions from claude.ai/code. Its reference derives session endpoints, OAuth authentication, event envelopes, and streaming behavior from the CLI binary; a Python library and CLI use that interface to observe and steer sessions.","description_zh":"claude-rc-api 还原 claude.ai/code 控制本地 Claude Code 会话所用的私有 HTTP 接口。参考文档依据 CLI 可执行文件整理会话端点、OAuth 认证、事件封装和流式响应；Python 库与命令行工具据此查看及控制会话。","entry_url":"https://awesomerea.org/resources/claude-rc-api-case/","entry_url_zh":"https://awesomerea.org/zh/resources/claude-rc-api-case/","evidence_url":"https://github.com/ThatCrispyToast/claude-rc-api/blob/fac6d28eb1cf797f95abe22ee95b7f23fb246e4d/API_REFERENCE.md","group":"cases","id":"claude-rc-api-case","json_url":"https://awesomerea.org/resources/claude-rc-api-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/claude-rc-api-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/claude-rc-api-case/index.md","name":"claude-rc-api: reconstructing Claude Code Remote Control endpoints","name_zh":"claude-rc-api：还原 Claude Code Remote Control 接口","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["A Claude Code login through a claude.ai account and a running Remote Control session.","Python 3.10 or newer.","Private endpoints may change; the author reports exercising list and read paths against the live API, while documenting write and control paths from client code.","MIT license."],"requirements_zh":["需要通过 claude.ai 账户登录 Claude Code，并运行 Remote Control 会话。","需要 Python 3.10 或更新版本。","私有端点可能变化；作者报告已对在线接口试用列表和读取路径，写入及控制路径则依据客户端代码记录。","采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/ThatCrispyToast/claude-rc-api","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/gaelic-ghost/spelunking/blob/8badd03b92b7059f69b625be29860ee8a4b5d8aa/docs/README.md","https://github.com/gaelic-ghost/spelunking/blob/8badd03b92b7059f69b625be29860ee8a4b5d8aa/docs/frameworks/messages-phone-status.md"],"category":"native-analysis","description_en":"Spelunking studies Apple apps, private frameworks and system services with Swift and Objective-C probes. It inventories runtime classes, symbols, notifications and MediaRemote state, while publishing target-specific writeups and raw captures for Messages, Phone, MediaRemote and UserNotifications.","description_zh":"Spelunking 使用 Swift 和 Objective-C 探针研究 Apple 应用、私有框架及系统服务。项目盘点运行时类、符号、通知和 MediaRemote 状态，并为 Messages、Phone、MediaRemote 与 UserNotifications 保存分目标说明及原始采集记录。","entry_url":"https://awesomerea.org/resources/spelunking/","entry_url_zh":"https://awesomerea.org/zh/resources/spelunking/","evidence_url":"https://github.com/gaelic-ghost/spelunking/blob/8badd03b92b7059f69b625be29860ee8a4b5d8aa/README.md","group":"learn","id":"spelunking","json_url":"https://awesomerea.org/resources/spelunking/record.json","kind":"research","markdown_url":"https://awesomerea.org/resources/spelunking/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/spelunking/index.md","name":"Spelunking","name_zh":"Spelunking Apple 框架与服务研究","record_type":"resource","relationship":"learning","requirement_facets":["prerequisites","limits","license"],"requirements":["The package requires macOS 26 or later and Swift 6.2 or later.","Individual probes may require specific OS builds, private frameworks, TCC permissions or SIP settings.","No licence file in the repository."],"requirements_zh":["软件包需要 macOS 26 或更新版本以及 Swift 6.2 或更新版本。","部分探针可能需要特定系统版本、私有框架、TCC 权限或 SIP 设置。","仓库中没有许可证文件。"],"targets":["app","binary"],"url":"https://github.com/gaelic-ghost/spelunking","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/AndrewDemsDS/hisense-w41h1/blob/678cc64dc28aa19e365be354a38917cf5506f9e6/docs/guide/Protocol-Overview.md"],"category":"reconstruction-cases","description_en":"Hisense AEH-W41H1 local control replaces the air conditioner's cloud-connected Wi-Fi module with ESPHome firmware for an ESP32 board or the stock RTL8710C module. The implementation speaks the A/C's RS-485 bus and exposes climate controls and diagnostics to Home Assistant. Protocol notes describe the frame envelope, checksum, bus roles, and command/status behavior derived from device observation.","description_zh":"Hisense AEH-W41H1 本地控制项目通过 ESP32 板替换空调原有的 Wi-Fi 模块，或在原装 RTL8710C 模块上刷入 ESPHome 固件。固件通过空调的 RS-485 总线通信，并向 Home Assistant 提供温控和诊断信息。协议文档记录了通过设备观察确定的帧结构、校验和、总线角色及命令与状态的交互行为。","entry_url":"https://awesomerea.org/resources/hisense-aeh-w41h1-local-control-case/","entry_url_zh":"https://awesomerea.org/zh/resources/hisense-aeh-w41h1-local-control-case/","evidence_url":"https://github.com/AndrewDemsDS/hisense-w41h1/blob/678cc64dc28aa19e365be354a38917cf5506f9e6/README.md","group":"cases","id":"hisense-aeh-w41h1-local-control-case","json_url":"https://awesomerea.org/resources/hisense-aeh-w41h1-local-control-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/hisense-aeh-w41h1-local-control-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hisense-aeh-w41h1-local-control-case/index.md","name":"Hisense AEH-W41H1: local A/C control over a reconstructed RS-485 bus","name_zh":"Hisense AEH-W41H1：基于还原的 RS-485 总线实现空调本地控制","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["A Hisense A/C with an AEH-W41H1 module; the ESP32 route requires a 3.3 V RS-485 transceiver.","ESPHome 2026.10.1 for the documented ESP32 build path.","The stock-module path has no rollback without a pre-flash whole-chip dump and a SOIC-8 recovery clip; other ESPHome chips have only compile checks.","MIT License."],"requirements_zh":["需要配备 AEH-W41H1 模块的海信空调；ESP32 方案还需 3.3 V RS-485 收发器。","文档中的 ESP32 构建流程使用 ESPHome 2026.10.1。","原装模块若未在刷写前保存整片备份并准备 SOIC-8 夹具，就无法回退；其他 ESPHome 芯片只做过编译检查。","MIT 许可证。"],"targets":["firmware","protocol"],"url":"https://github.com/AndrewDemsDS/hisense-w41h1","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/7ucg/whatsapp-docs/blob/72e741c2a4e6b8f92819d441a7e2148a8fcf2926/WA_REPORTING.md"],"category":"android","description_en":"whatsapp-docs records findings from static decompilation of the WhatsApp Android APK, covering app internals and communication formats. Its reports describe linked-device pairing, Noise transport, reporting stanzas, media upload and other client flows, with findings distinguished from inferences.","description_zh":"whatsapp-docs 汇集对 WhatsApp Android APK 进行静态反编译所得的应用内部机制和通信格式研究，涵盖多设备配对、Noise 传输、举报 stanza、媒体上传及其他客户端流程，并区分代码发现与推断。","entry_url":"https://awesomerea.org/resources/whatsapp-docs/","entry_url_zh":"https://awesomerea.org/zh/resources/whatsapp-docs/","evidence_url":"https://github.com/7ucg/whatsapp-docs/blob/72e741c2a4e6b8f92819d441a7e2148a8fcf2926/README.md","group":"learn","id":"whatsapp-docs","json_url":"https://awesomerea.org/resources/whatsapp-docs/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/whatsapp-docs/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/whatsapp-docs/index.md","name":"whatsapp-docs","name_zh":"whatsapp-docs WhatsApp Android 逆向文档","record_type":"resource","relationship":"learning","requirement_facets":["scope","limits","license"],"requirements":["The reports use WhatsApp Android APK version 2.26.41.6 for the listed topics.","The analysis is static; server-side ML behavior is inferred from client-collected metrics.","No licence file in the repository."],"requirements_zh":["所列专题报告使用 WhatsApp Android APK 2.26.41.6。","分析仅基于静态代码；服务端机器学习行为由客户端采集指标推断。","仓库中没有许可证文件。"],"targets":["app","protocol"],"url":"https://github.com/7ucg/whatsapp-docs","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"protocol-analysis","description_en":"Hermes is a Flipper Zero app for identifying unknown UART settings and inspecting a device's serial console. It timestamps line edges to estimate bit time, checks candidate rates and parity against received UART bytes, then offers a terminal with text, hex and capture features. The source states that detection leaves the transmit pin undriven until the user sends data.","description_zh":"Hermes 是一款 Flipper Zero 应用，用于识别未知 UART 设置并查看设备串口控制台。它通过边沿时间估算位时长，再用硬件 UART 收到的字节核对候选波特率与校验位，随后提供文本、十六进制和记录功能；项目说明检测阶段不会驱动发送引脚。","entry_url":"https://awesomerea.org/resources/hermes-flipperzero/","entry_url_zh":"https://awesomerea.org/zh/resources/hermes-flipperzero/","evidence_url":"https://github.com/at0m-b0mb/Hermes-FlipperZero/blob/9c463e3ace408f69939495b2bd1e9f9b86b195c2/README.md","group":"tools","id":"hermes-flipperzero","json_url":"https://awesomerea.org/resources/hermes-flipperzero/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/hermes-flipperzero/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hermes-flipperzero/index.md","name":"Hermes","name_zh":"Hermes Flipper Zero UART 波特率检测与控制台工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Flipper Zero and access to the target device's UART line.","The source says edge timing cannot follow edges beyond roughly 230400 baud; the UART sweep needs traffic during its sampling window.","MIT license."],"requirements_zh":["需要 Flipper Zero，并能接入目标设备的 UART 线路。","项目说明边沿计时方式大约无法跟踪超过 230400 波特的边沿；UART 扫描需要在采样窗口内有数据流。","采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/at0m-b0mb/Hermes-FlipperZero","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/earthsworth/wMatcher/blob/225940a4df4e05742fff722019fe81fc4a023db8/build.gradle"],"category":"binary-diffing","description_en":"wMatcher compares two Java archives to match classes renamed or obfuscated between releases. Its desktop workflow loads old and new JARs, accepts dependency JARs, lets the analyst correct uncertain matches and saves the comparison as a .wmatch project.","description_zh":"wMatcher 比较两个版本的 Java 归档文件，匹配版本间重命名或混淆的类。桌面界面可加载新旧 JAR 和所需依赖，供分析者修正不确定的匹配，并将结果保存为 .wmatch 工程。","entry_url":"https://awesomerea.org/resources/wmatcher/","entry_url_zh":"https://awesomerea.org/zh/resources/wmatcher/","evidence_url":"https://github.com/earthsworth/wMatcher/blob/225940a4df4e05742fff722019fe81fc4a023db8/README.md","group":"tools","id":"wmatcher","json_url":"https://awesomerea.org/resources/wmatcher/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/wmatcher/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wmatcher/index.md","name":"wMatcher","name_zh":"wMatcher JAR 版本类匹配工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["Old and new JAR files are required; dependency JARs may be added.","Building from source uses Gradle and a Java 21 toolchain.","GPL-3.0 license."],"requirements_zh":["需要新旧两个 JAR 文件；可按需添加依赖 JAR。","从源码构建使用 Gradle 和 Java 21 工具链。","采用 GPL-3.0 许可证。"],"targets":["binary"],"url":"https://github.com/earthsworth/wMatcher","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"game-analysis","description_en":"YGO-PoC Toolset handles resource and save formats from Yu-Gi-Oh! Power of Chaos – Joey the Passion. Its unpacker extracts compressed game resource files such as data.dat, while PoCTools decrypts, edits and re-encrypts system.dat saves; the repository also includes a card editor and DLL mod loader.","description_zh":"YGO-PoC Toolset 处理《Yu-Gi-Oh! Power of Chaos – Joey the Passion》的资源与存档格式。解包器提取 data.dat 等压缩资源文件，PoCTools 可解密、编辑并重新加密 system.dat 存档；仓库还包含卡牌编辑器和 DLL 模组加载器。","entry_url":"https://awesomerea.org/resources/ygo-poc-toolset/","entry_url_zh":"https://awesomerea.org/zh/resources/ygo-poc-toolset/","evidence_url":"https://github.com/bitemydusto/YGO-PoC-Toolset/blob/76a9eab2dcfa3f215af9b52a162ae576961304ba/README.md","group":"tools","id":"ygo-poc-toolset","json_url":"https://awesomerea.org/resources/ygo-poc-toolset/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ygo-poc-toolset/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ygo-poc-toolset/index.md","name":"YGO-PoC Toolset","name_zh":"YGO-PoC Toolset 游戏资源与存档工具集","record_type":"resource","relationship":"foundation","requirement_facets":["scope","prerequisites","license"],"requirements":["The toolset targets the game's No-CD/Fixed executable version.","Its editor is a .NET MAUI client for PoCTools.","MIT license."],"requirements_zh":["工具集针对该游戏的 No-CD/Fixed 可执行文件版本。","编辑器是基于 PoCTools 的 .NET MAUI 客户端。","MIT 许可证。"],"targets":["game"],"url":"https://github.com/bitemydusto/YGO-PoC-Toolset","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"agent-workflows","description_en":"website-to-cli is an agent skill for deriving terminal clients from captured website traffic. Its scripts record a HAR and filter requests to identify endpoint methods, paths, parameters, payload shapes and authentication headers. The skill then uses a Bun CLI template to build a client. The repository includes clients for crates.io and Hacker News search.","description_zh":"website-to-cli 是根据网站流量构建命令行客户端的智能体技能。其脚本录制 HAR、过滤请求，并整理端点的方法、路径、参数、请求与响应结构及鉴权头。技能随后使用 Bun CLI 模板构建客户端。仓库提供 crates.io 和 Hacker News 搜索的客户端示例。","entry_url":"https://awesomerea.org/resources/website-to-cli/","entry_url_zh":"https://awesomerea.org/zh/resources/website-to-cli/","evidence_url":"https://github.com/dennisonbertram/website-to-cli/blob/e24d11f878a03dcaee9479a1fb165d20ce2da5a0/README.md","group":"agents","id":"website-to-cli","json_url":"https://awesomerea.org/resources/website-to-cli/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/website-to-cli/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/website-to-cli/index.md","name":"website-to-cli","name_zh":"website-to-cli 网站流量转命令行客户端","record_type":"resource","relationship":"independent-agent-integration","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["Bun is required for the scripts and CLI template.","Playwright is required for browser capture, or a HAR with response content can be exported from browser DevTools.","MIT license."],"requirements_zh":["脚本和 CLI 模板需要 Bun。","浏览器录制需要 Playwright，也可从浏览器开发者工具导出包含响应内容的 HAR。","采用 MIT 许可证。"],"targets":["website"],"url":"https://github.com/dennisonbertram/website-to-cli","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/noidex0/fh6-model-tools/blob/db9a203726107a7debed516b99d2f8dbaa713991/docs/format.md","https://github.com/noidex0/fh6-model-tools/blob/db9a203726107a7debed516b99d2f8dbaa713991/docs/research-status.md"],"category":"game-analysis","description_en":"FH6 Model Tools parses reverse-engineered Forza Horizon 6 asset formats, including burG model and texture containers. Python converters export car meshes to GLB or OBJ, textures to DDS, and selected material, palette, lighting, and ambient-occlusion data to readable outputs.","description_zh":"FH6 Model Tools 解析《极限竞速：地平线 6》的逆向资源格式，包括 burG 模型与纹理容器。其 Python 工具可将车辆网格导出为 GLB 或 OBJ、纹理转为 DDS，并读取部分材质、配色、灯光和环境光遮蔽数据。","entry_url":"https://awesomerea.org/resources/fh6-model-tools/","entry_url_zh":"https://awesomerea.org/zh/resources/fh6-model-tools/","evidence_url":"https://github.com/noidex0/fh6-model-tools/blob/db9a203726107a7debed516b99d2f8dbaa713991/README.md","group":"tools","id":"fh6-model-tools","json_url":"https://awesomerea.org/resources/fh6-model-tools/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/fh6-model-tools/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fh6-model-tools/index.md","name":"FH6 Model Tools","name_zh":"FH6 Model Tools 游戏资源格式解析工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Python 3.8 or newer and user-supplied game assets are required.","The research-status document leaves animation formats, carbin, physics data, and some material and UV semantics unresolved.","PolyForm Noncommercial License 1.0.0."],"requirements_zh":["需要 Python 3.8 或更新版本，并由用户提供游戏资源。","研究状态文档列出尚未解析的动画格式、carbin、物理数据及部分材质和 UV 语义。","采用 PolyForm Noncommercial License 1.0.0。"],"targets":["game"],"url":"https://github.com/noidex0/fh6-model-tools","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/digows/cosmo/blob/7844b9126c54f074e643e0d5806c69e1e382d94b/gamedata/README.md","https://github.com/digows/cosmo/blob/7844b9126c54f074e643e0d5806c69e1e382d94b/LICENSE"],"category":"reconstruction-cases","description_en":"Cosmo ports the reconstructed source of Cosmo's Cosmic Adventure: Forbidden Planet to macOS, Linux and Windows. It retains the game's logic and supplies an emulated EGA adapter, timer, keyboard controller, PC speaker and AdLib layer for the original code. The build uses the user's game data files.","description_zh":"Cosmo 将 Cosmo's Cosmic Adventure: Forbidden Planet 的重建源码移植到 macOS、Linux 和 Windows。项目保留游戏逻辑，另行实现 EGA、计时器、键盘控制器、PC 扬声器和 AdLib 的模拟层；构建时需由用户提供游戏数据文件。","entry_url":"https://awesomerea.org/resources/cosmo-native-port-case/","entry_url_zh":"https://awesomerea.org/zh/resources/cosmo-native-port-case/","evidence_url":"https://github.com/digows/cosmo/blob/7844b9126c54f074e643e0d5806c69e1e382d94b/README.md","group":"cases","id":"cosmo-native-port-case","json_url":"https://awesomerea.org/resources/cosmo-native-port-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/cosmo-native-port-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cosmo-native-port-case/index.md","name":"Cosmo: a native port of Cosmo's Cosmic Adventure","name_zh":"Cosmo：Cosmo's Cosmic Adventure 原生移植版","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["A source build requires CMake 3.21+ and C11 and C++17 compilers. SDL3 can be installed or fetched by CMake; the documented Windows builds use MinGW.","A source build requires the original game data files; Episodes 2 and 3 require the user's own copies.","Joystick support is unimplemented, and frame-by-frame comparison against DOSBox remains incomplete.","MIT License."],"requirements_zh":["从源码构建需要 CMake 3.21 或更新版本，以及 C11 和 C++17 编译器。SDL3 可预先安装，也可由 CMake 下载构建；文档中的 Windows 构建使用 MinGW。","从源码构建须提供原版游戏数据；第 2、3 章须使用用户自己的副本。","尚未实现摇杆支持，也尚未完成与 DOSBox 的逐帧比较。","MIT 许可证。"],"targets":["game"],"url":"https://github.com/digows/cosmo","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/AboveColin/tuya-mobile/blob/86301173cb3c9fc543841f269805438151460dad/pyproject.toml"],"category":"reconstruction-cases","description_en":"tuya-mobile reconstructs Tuya mobile-app request signing, encrypted API calls and MQTT signaling credential derivation in Python. It replaces the app's native libthing_security.so signing step with HMAC-SHA256, SHA256 and MD5 calculations and includes versioned Smart Life and Tuya Smart profiles.","description_zh":"tuya-mobile 以 Python 重建 Tuya 移动应用的请求签名、加密 API 调用和 MQTT 信令凭据派生。它用 HMAC-SHA256、SHA256 和 MD5 计算替代应用原生 libthing_security.so 的签名步骤，并提供 Smart Life 与 Tuya Smart 的版本化配置。","entry_url":"https://awesomerea.org/resources/tuya-mobile-security-layer-case/","entry_url_zh":"https://awesomerea.org/zh/resources/tuya-mobile-security-layer-case/","evidence_url":"https://github.com/AboveColin/tuya-mobile/blob/86301173cb3c9fc543841f269805438151460dad/README.md","group":"cases","id":"tuya-mobile-security-layer-case","json_url":"https://awesomerea.org/resources/tuya-mobile-security-layer-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/tuya-mobile-security-layer-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/tuya-mobile-security-layer-case/index.md","name":"tuya-mobile: a Python reconstruction of Tuya app signing and API calls","name_zh":"tuya-mobile：Tuya 应用签名与 API 调用的 Python 重建","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Python 3.9 or newer with aiohttp and cryptography is required.","Authenticated calls require application signing constants and account authentication; password login uses a selected application profile and account credentials.","Interactive captcha, MFA, QR and social logins raise typed exceptions instead of completing login.","MIT license."],"requirements_zh":["需要 Python 3.9 或更新版本，以及 aiohttp 和 cryptography。","经过身份验证的调用需要应用签名常量和账户身份验证；密码登录需要选定应用配置并提供账户凭据。","交互式验证码、MFA、二维码和社交登录会抛出特定类型的异常，客户端不会完成这些登录流程。","采用 MIT 许可证。"],"targets":["app","protocol"],"url":"https://github.com/AboveColin/tuya-mobile","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/LambdaEd1th/ed1ths-pvz-toolkit/blob/7eafbb4b3b1dbc9bf9a021c05be3bb7221d2e1ac/crates/README.md"],"category":"game-analysis","description_en":"Ed1th's PvZ Toolkit inspects and edits Plants vs. Zombies resource archives and files through a desktop or web interface backed by Rust format libraries. Its workspaces cover RSB/RSG, PAK and DZip archives, RTON and NEWTON data, PAM animation, Compiled Text and Wwise WEM audio, among other formats.","description_zh":"Ed1th's PvZ Toolkit 通过桌面或网页界面检查、编辑 Plants vs. Zombies 资源，底层使用 Rust 格式库。工作区涵盖 RSB/RSG、PAK、DZip 归档，RTON 与 NEWTON 数据、PAM 动画、Compiled Text 及 Wwise WEM 音频等格式。","entry_url":"https://awesomerea.org/resources/ed1ths-pvz-toolkit/","entry_url_zh":"https://awesomerea.org/zh/resources/ed1ths-pvz-toolkit/","evidence_url":"https://github.com/LambdaEd1th/ed1ths-pvz-toolkit/blob/7eafbb4b3b1dbc9bf9a021c05be3bb7221d2e1ac/README.md","group":"tools","id":"ed1ths-pvz-toolkit","json_url":"https://awesomerea.org/resources/ed1ths-pvz-toolkit/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ed1ths-pvz-toolkit/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ed1ths-pvz-toolkit/index.md","name":"Ed1th's PvZ Toolkit","name_zh":"Ed1th's PvZ Toolkit 植物大战僵尸资源格式工具箱","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","limits","license"],"requirements":["Provide Plants vs. Zombies resource files for inspection or editing.","PAM editing does not implement curve-based tween authoring or new artwork drawing.","The BNK SoundBank browser is experimental.","AGPL-3.0 license."],"requirements_zh":["需提供 Plants vs. Zombies 资源文件供检查或编辑。","PAM 编辑器尚不支持曲线补间制作或绘制新图。","BNK SoundBank 浏览器仍处于实验阶段。","采用 AGPL-3.0 许可证。"],"targets":["game"],"url":"https://github.com/LambdaEd1th/ed1ths-pvz-toolkit","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"MSI Mystic Light on Linux implements lighting control for an MSI motherboard from USB traffic captured while MSI Center ran in a Windows VM. Its Python script sends a 290-byte HID Feature report to controller 0db0:0076, while the documentation maps modes, RGB palette bytes, brightness, direction and the flash-save flag.","description_zh":"MSI Mystic Light on Linux 根据 Windows 虚拟机中捕获的 MSI Center USB 流量，实现 MSI 主板灯光控制。Python 脚本向 0db0:0076 控制器发送 290 字节 HID Feature 报文；文档标明模式、RGB 调色板、亮度、方向及写入闪存的字段。","entry_url":"https://awesomerea.org/resources/msi-mystic-light-b860-x870-linux-case/","entry_url_zh":"https://awesomerea.org/zh/resources/msi-mystic-light-b860-x870-linux-case/","evidence_url":"https://github.com/Picachuchu69/msi-mystic-light-b860-x870-linux/blob/166a622ef14f730ed457353f38670ced15a055a3/README.md","group":"cases","id":"msi-mystic-light-b860-x870-linux-case","json_url":"https://awesomerea.org/resources/msi-mystic-light-b860-x870-linux-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/msi-mystic-light-b860-x870-linux-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/msi-mystic-light-b860-x870-linux-case/index.md","name":"MSI Mystic Light on Linux: reconstructing B860/X870 lighting control","name_zh":"MSI Mystic Light on Linux：重建 B860/X870 主板灯光控制","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["Linux, Python 3 and write access to the controller's /dev/hidraw* node.","Reverse engineered on an MSI MAG B860 TOMAHAWK WIFI; support for other boards with USB ID 0db0:0076 is stated as an expectation.","MIT license."],"requirements_zh":["需要 Linux、Python 3，以及控制器 /dev/hidraw* 设备节点的写入权限。","协议分析基于 MSI MAG B860 TOMAHAWK WIFI；其他 USB ID 为 0db0:0076 的主板仅被列为预期兼容。","MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/Picachuchu69/msi-mystic-light-b860-x870-linux","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/fmontes/linkcam/blob/f4c3d8726e58d72bc8fb59e20fd19ec74c95fb3a/README.md"],"category":"reconstruction-cases","description_en":"LinkCam implements macOS menu-bar and command-line controls for the Insta360 Link 2 webcam. It uses standard UVC controls for pan, tilt and zoom, while its extension-unit investigation identifies a feature-mask bit and selector for AI tracking.","description_zh":"LinkCam 为 Insta360 Link 2 摄像头提供 macOS 菜单栏应用和命令行控制。云台转向及变焦使用标准 UVC 控件；其扩展单元研究确定了 AI 追踪对应的功能位和选择器。","entry_url":"https://awesomerea.org/resources/linkcam-case/","entry_url_zh":"https://awesomerea.org/zh/resources/linkcam-case/","evidence_url":"https://github.com/fmontes/linkcam/blob/f4c3d8726e58d72bc8fb59e20fd19ec74c95fb3a/CONTRIBUTING.md","group":"cases","id":"linkcam-case","json_url":"https://awesomerea.org/resources/linkcam-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/linkcam-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/linkcam-case/index.md","name":"LinkCam: controlling Insta360 Link 2 through UVC extension research","name_zh":"LinkCam：研究 UVC 扩展控制并驱动 Insta360 Link 2","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["macOS and an Insta360 Link 2 webcam.","macOS Command Line Tools to build from source.","MIT license."],"requirements_zh":["需要 macOS 和 Insta360 Link 2 摄像头。","从源码构建需要 macOS Command Line Tools。","采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/fmontes/linkcam","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/RaphaelCaputo2/shark-k86-mac/blob/f9c8910637e0f42ee6f51a530582077570f1abd9/README.md"],"category":"reconstruction-cases","description_en":"shark-k86-mac reconstructs the Attack Shark K86 keyboard's vendor HID controls as a Python CLI and library for macOS and Linux. Its clean-room protocol notes describe 64-byte feature reports, checksums and opcodes; the client controls lighting and the TFT screen and reads device information.","description_zh":"shark-k86-mac 将 Attack Shark K86 键盘的厂商 HID 控制协议实现为 macOS 和 Linux 上的 Python 命令行工具与库。其独立编写的协议文档记录 64 字节特性报告、校验和及操作码；客户端可控制灯效和 TFT 屏幕并读取设备信息。","entry_url":"https://awesomerea.org/resources/shark-k86-mac-case/","entry_url_zh":"https://awesomerea.org/zh/resources/shark-k86-mac-case/","evidence_url":"https://github.com/RaphaelCaputo2/shark-k86-mac/blob/f9c8910637e0f42ee6f51a530582077570f1abd9/PROTOCOL.md","group":"cases","id":"shark-k86-mac-case","json_url":"https://awesomerea.org/resources/shark-k86-mac-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/shark-k86-mac-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/shark-k86-mac-case/index.md","name":"shark-k86-mac: a client for the Attack Shark K86 HID protocol","name_zh":"shark-k86-mac：Attack Shark K86 HID 协议客户端","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["An Attack Shark K86 connected by USB in Win + USB mode is required; other models are untested.","Python 3.8+, hidapi and Pillow are required.","MIT License."],"requirements_zh":["需要以 Win + USB 模式通过 USB 连接 Attack Shark K86；其他型号尚未测试。","需要 Python 3.8 及以上版本、hidapi 和 Pillow。","采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/RaphaelCaputo2/shark-k86-mac","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/dspl1236/PCM-Explorer/blob/a38709a0db90b9a3e70f4542b82553e93ace0f42/docs/QNX6-NOTES.md"],"category":"firmware","description_en":"PCM Explorer is a read-only Python browser for Porsche PCM and Audi MMI head-unit images. It parses QNX4/QNX6 drives, compressed firmware, update discs, persistence flash and HBM5 HMI files, and supports search, image comparison, extraction and filesystem checks.","description_zh":"PCM Explorer 是只读的 Python 车机镜像浏览器，面向 Porsche PCM 和 Audi MMI。它解析 QNX4/QNX6 磁盘、压缩固件、更新光盘、持久化闪存及 HBM5 界面文件，并提供搜索、镜像比较、提取和文件系统检查。","entry_url":"https://awesomerea.org/resources/pcm-explorer/","entry_url_zh":"https://awesomerea.org/zh/resources/pcm-explorer/","evidence_url":"https://github.com/dspl1236/PCM-Explorer/blob/a38709a0db90b9a3e70f4542b82553e93ace0f42/README.md","group":"tools","id":"pcm-explorer","json_url":"https://awesomerea.org/resources/pcm-explorer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pcm-explorer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pcm-explorer/index.md","name":"PCM Explorer","name_zh":"PCM Explorer 车机镜像与固件分析工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["Supply an image or extracted files from a supported Porsche PCM or Audi MMI head unit.","HMI screen export produces labelled boxes rather than the original pixels.","MIT license."],"requirements_zh":["需要提供受支持的 Porsche PCM 或 Audi MMI 车机镜像或提取出的文件。","HMI 画面导出的是带标签的框图，而非原始像素画面。","许可证为 MIT。"],"targets":["firmware"],"url":"https://github.com/dspl1236/PCM-Explorer","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"tasm-rs implements TVM bytecode assembly and disassembly in Rust, with a tdisasm CLI, instruction tables, Fift parsing and trace and coverage reports. It uses checked-in conformance fixtures to compare output with the upstream TypeScript implementation; the author reports 959 matching fixtures.","description_zh":"tasm-rs 用 Rust 实现 TVM 字节码的汇编与反汇编，提供 tdisasm 命令行程序、指令表、Fift 解析及轨迹和覆盖率报告。项目用仓库内的对照样例与上游 TypeScript 实现比较；作者报告 959 个样例匹配。","entry_url":"https://awesomerea.org/resources/tasm-rs/","entry_url_zh":"https://awesomerea.org/zh/resources/tasm-rs/","evidence_url":"https://github.com/nktkt/tasm-rs/blob/b9ed7d933e8fa1b8ff44b7246d9dffcfbd2f69a7/README.md","group":"tools","id":"tasm-rs","json_url":"https://awesomerea.org/resources/tasm-rs/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/tasm-rs/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/tasm-rs/index.md","name":"tasm-rs","name_zh":"tasm-rs TVM 字节码反汇编与轨迹工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","testing","limits","license"],"requirements":["Rust 1.85 or newer for the workspace build.","The author reports byte-identical results on 959 conformance fixtures.","Deeply nested continuations have a documented compilation-time growth problem.","MIT license."],"requirements_zh":["构建工作区需要 Rust 1.85 或更新版本。","作者报告 959 个一致性样例的输出逐字节匹配。","文档指出深层嵌套的 continuation 会使编译时间快速增长。","MIT 许可证。"],"targets":["binary"],"url":"https://github.com/nktkt/tasm-rs","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"fitdays recreates read-only access to the Fitdays smart-scale cloud API from traffic observed in the vendor app. Its asynchronous Python client logs in with the service's password digest, follows regional redirects, renews sessions, and retrieves scale, profile, and body-composition measurement records.","description_zh":"fitdays 根据对原应用流量的观察，重建 Fitdays 智能体脂秤云端 API 的只读访问。其异步 Python 客户端使用服务要求的密码摘要登录，处理区域重定向和会话续期，并读取体脂秤、成员档案及身体成分测量记录。","entry_url":"https://awesomerea.org/resources/fitdays-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/fitdays-protocol-case/","evidence_url":"https://github.com/AboveColin/fitdays/blob/70684181540b0a6920984d4fe630d95e51514cd4/README.md","group":"cases","id":"fitdays-protocol-case","json_url":"https://awesomerea.org/resources/fitdays-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/fitdays-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fitdays-protocol-case/index.md","name":"fitdays: reconstructing a smart-scale cloud client","name_zh":"fitdays：重建智能体脂秤云端客户端","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["A Fitdays account is needed to retrieve its measurement history.","The client is read-only; the private endpoints may change or disappear.","MIT License."],"requirements_zh":["读取测量历史需要 Fitdays 账户。","客户端仅支持读取；私有端点可能变更或消失。","采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/AboveColin/fitdays","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"trvision implements direct USB control of Thermalright Vision display panels using previously documented protocol research. It captures desktop frames, encodes JPEG or RGB565 according to the handshake reply, and sends framed data over bulk USB; a companion parser reads USBPcap captures.","description_zh":"trvision 依据已有协议研究实现 Thermalright Vision 显示屏的 USB 直连控制。程序采集桌面画面，按握手响应编码为 JPEG 或 RGB565，再通过 USB 批量传输发送；附带工具可解析 USBPcap 抓包。","entry_url":"https://awesomerea.org/resources/trvision-case/","entry_url_zh":"https://awesomerea.org/zh/resources/trvision-case/","evidence_url":"https://github.com/0iroN/trvision/blob/bc88670ac6b00a569d7228b083ef4badae987567/README.md","group":"cases","id":"trvision-case","json_url":"https://awesomerea.org/resources/trvision-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/trvision-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/trvision-case/index.md","name":"trvision: implementing Thermalright Vision USB display control","name_zh":"trvision：实现 Thermalright Vision USB 显示屏控制","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Windows and Python 3.12 are specified; supported hardware is the 87AD:70DB panel family.","Close TRCC before use because it holds the USB device open.","Only 87AD:70DB panels were tested; other revisions may differ.","MIT license."],"requirements_zh":["文档指定 Windows、Python 3.12 和 87AD:70DB 系列显示屏。","使用前需关闭占用 USB 设备的 TRCC。","仅测试过 87AD:70DB 显示屏，其他硬件版本可能不同。","采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/0iroN/trvision","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Wdestroier/sogen_dart/blob/17a7b46c8532f6324e5bc948446a29bf9913aa0e/CHANGELOG.md"],"category":"dynamic-analysis","description_en":"Sogen Dart bindings expose Windows and Linux binary emulation through a Dart FFI package and native bridge. The API covers execution, snapshots, memory and registers, process views, callbacks and low-level hooks; Windows API calls and Linux symbols can also be intercepted. Its example hooks a Sleep call in an emulated executable.","description_zh":"Sogen Dart bindings 通过 Dart FFI 包和原生桥接层提供 Windows 与 Linux 可执行文件仿真。接口涵盖执行、快照、内存和寄存器、进程视图、回调及底层钩子，也支持拦截 Windows API 调用和 Linux 符号。示例展示了对仿真程序中 Sleep 调用的钩取。","entry_url":"https://awesomerea.org/resources/sogen-dart-bindings/","entry_url_zh":"https://awesomerea.org/zh/resources/sogen-dart-bindings/","evidence_url":"https://github.com/Wdestroier/sogen_dart/blob/17a7b46c8532f6324e5bc948446a29bf9913aa0e/README.md","group":"tools","id":"sogen-dart-bindings","json_url":"https://awesomerea.org/resources/sogen-dart-bindings/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/sogen-dart-bindings/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sogen-dart-bindings/index.md","name":"Sogen Dart bindings","name_zh":"Sogen Dart 可执行文件仿真绑定","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Dart 3.12 or newer and Git are required.","Building requires the Visual Studio C++ desktop workload on Windows, a C++20 compiler and development headers on Linux, or Xcode command-line tools on macOS.","The example requires a Sogen emulation root.","GPL-2.0-only license."],"requirements_zh":["需要 Dart 3.12 或更新版本以及 Git。","Windows 构建需要 Visual Studio C++ 桌面工作负载；Linux 需要 C++20 编译器和开发头文件；macOS 需要 Xcode 命令行工具。","示例需要 Sogen 仿真根目录。","采用 GPL-2.0-only 许可证。"],"targets":["binary"],"url":"https://github.com/Wdestroier/sogen_dart","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Enigma-Labs-Technology/pocket-client/blob/3386dae33289daa46bbdbff3b631766dd9267f39/docs/protocol/ble-protocol.md"],"category":"reconstruction-cases","description_en":"pocket-client implements the Pocket voice recorder's recovered BLE command protocol in a Swift library and CLI. It documents authentication, status and recording inventory exchanges, MP3 transfer and control commands, using findings from vendor-app HCI captures and live device probes.","description_zh":"pocket-client 以 Swift 库和命令行工具实现 Pocket 录音笔的 BLE 命令协议，记录鉴权、状态查询、录音列表、MP3 传输和录制控制报文。协议说明依据厂商应用的 HCI 抓包及设备探测。","entry_url":"https://awesomerea.org/resources/pocket-client-case/","entry_url_zh":"https://awesomerea.org/zh/resources/pocket-client-case/","evidence_url":"https://github.com/Enigma-Labs-Technology/pocket-client/blob/3386dae33289daa46bbdbff3b631766dd9267f39/README.md","group":"cases","id":"pocket-client-case","json_url":"https://awesomerea.org/resources/pocket-client-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/pocket-client-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pocket-client-case/index.md","name":"pocket-client: a BLE client for the Pocket voice recorder","name_zh":"pocket-client：Pocket 录音笔的 BLE 客户端","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Requires a Pocket recorder and a session key for authenticated commands.","Requires Swift 6.0 and iOS 17 or macOS 14 or newer.","Protocol findings are based on one physical device and firmware version.","Apache-2.0 license."],"requirements_zh":["鉴权命令需要 Pocket 录音笔及会话密钥。","需要 Swift 6.0，以及 iOS 17 或 macOS 14 及更新版本。","协议研究依据一台实体设备及其固件版本。","采用 Apache-2.0 许可证。"],"targets":["protocol"],"url":"https://github.com/Enigma-Labs-Technology/pocket-client","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/ss26367098/rofllens/blob/62a475a8f05e7dfa94df5990758be2156c892496/docs/research-methodology.md"],"category":"protocol-analysis","description_en":"RoflLens is a Python library and CLI for analysing League of Legends ROFL v2 replay containers and network transport. It exports blocks and payloads, and offers patch-specific decoders for events such as movement, spells and deaths when the client version, protocol digest and executable hash match.","description_zh":"RoflLens 是分析《英雄联盟》ROFL v2 回放容器与网络传输的 Python 库和命令行工具。它可导出数据块及载荷；客户端版本、协议摘要和可执行文件哈希匹配时，可解码移动、施法、死亡等补丁相关事件。","entry_url":"https://awesomerea.org/resources/rofllens/","entry_url_zh":"https://awesomerea.org/zh/resources/rofllens/","evidence_url":"https://github.com/ss26367098/rofllens/blob/62a475a8f05e7dfa94df5990758be2156c892496/README.md","group":"tools","id":"rofllens","json_url":"https://awesomerea.org/resources/rofllens/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/rofllens/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rofllens/index.md","name":"RoflLens","name_zh":"RoflLens《英雄联盟》回放协议分析工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Python 3.11–3.13 and a .rofl replay file are required.","Patch-specific semantic decoding requires optional dependencies and the user's exact matching League of Legends.exe.","Several gameplay semantics remain unresolved; mismatched clients receive transport-only output or an error.","MIT."],"requirements_zh":["需要 Python 3.11–3.13 和 .rofl 回放文件。","补丁相关语义解码需要可选依赖，以及用户自行提供的完全匹配的 League of Legends.exe。","部分游戏事件语义尚未解析；客户端不匹配时仅输出传输层信息或报错。","MIT 许可证。"],"targets":["binary","game","protocol"],"url":"https://github.com/ss26367098/rofllens","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"ddg-tenor-bridge redirects Gboard's Tenor GIF searches to a service that returns DuckDuckGo animated-image results in Tenor v2 response form. Its documented workflow changes Gboard's persisted search URL flag while leaving other Tenor features on their original endpoint.","description_zh":"ddg-tenor-bridge 将 Gboard 的 Tenor GIF 搜索指向一个以 Tenor v2 响应格式返回 DuckDuckGo 动图结果的服务。文档说明如何修改 Gboard 保存的搜索地址标志，同时让其他 Tenor 功能继续使用原端点。","entry_url":"https://awesomerea.org/resources/ddg-tenor-bridge-case/","entry_url_zh":"https://awesomerea.org/zh/resources/ddg-tenor-bridge-case/","evidence_url":"https://github.com/hxreborn/ddg-tenor-bridge/blob/fadbaf3b17bce31210121e06d410855d2cfb6e91/README.md","group":"cases","id":"ddg-tenor-bridge-case","json_url":"https://awesomerea.org/resources/ddg-tenor-bridge-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/ddg-tenor-bridge-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ddg-tenor-bridge-case/index.md","name":"ddg-tenor-bridge: replacing Gboard's Tenor search endpoint","name_zh":"ddg-tenor-bridge：替换 Gboard 的 Tenor 搜索端点","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["A rooted Android device and an HTTPS endpoint with a publicly trusted certificate are required.","The author calls this a proof of concept; DuckDuckGo's endpoint and Gboard's version-specific flags may change.","GPL-3.0 license."],"requirements_zh":["需要已获取 root 权限的 Android 设备，以及使用公开受信任证书的 HTTPS 端点。","作者将其称为概念验证；DuckDuckGo 端点和 Gboard 随版本变化的标志可能改变。","采用 GPL-3.0 许可证。"],"targets":["app"],"url":"https://github.com/hxreborn/ddg-tenor-bridge","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/RigZeeel/KeyAxis/blob/53a7e1b267083ce8a979aea95635a4391962020a/README.md"],"category":"reconstruction-cases","description_en":"KeyAxis documents the HID travel stream of keyboards using the 0416:7372 controller and turns key depth into virtual gamepad axes. Its protocol notes specify the vendor interface, ARM and DISARM commands, 64-byte host reports and row, column and depth fields recovered from captured traffic.","description_zh":"KeyAxis 记录使用 0416:7372 控制器的键盘 HID 键程数据流，并将按键深度映射到虚拟手柄轴。协议文档说明厂商接口、ARM 与 DISARM 命令、64 字节主机消息，以及从抓包中还原的行、列和深度字段。","entry_url":"https://awesomerea.org/resources/keyaxis-keyboard-hid-case/","entry_url_zh":"https://awesomerea.org/zh/resources/keyaxis-keyboard-hid-case/","evidence_url":"https://github.com/RigZeeel/KeyAxis/blob/53a7e1b267083ce8a979aea95635a4391962020a/PROTOCOL.md","group":"cases","id":"keyaxis-keyboard-hid-case","json_url":"https://awesomerea.org/resources/keyaxis-keyboard-hid-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/keyaxis-keyboard-hid-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/keyaxis-keyboard-hid-case/index.md","name":"KeyAxis: decoding a magnetic keyboard's analog HID stream","name_zh":"KeyAxis：解析磁轴键盘的模拟量 HID 数据流","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["A keyboard exposing USB ID 0416:7372 and Windows 10/11 x64 are required; gamepad output needs ViGEmBus.","Running from source requires Python 3.9 or later.","The on-screen layout covers 68 keys; vJoy output is planned.","MIT license."],"requirements_zh":["需要 USB ID 为 0416:7372 的键盘和 Windows 10/11 x64；手柄输出还需要 ViGEmBus。","从源码运行需要 Python 3.9 或更新版本。","屏幕布局覆盖 68 键；vJoy 输出仍在计划中。","采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/RigZeeel/KeyAxis","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/LucasSKrewer/kenshi-modkit/blob/e1f22ce0f1f5610dbb66de83aeeffe5a5d2b9120/FORMATO.md"],"category":"game-analysis","description_en":"kenshi-modkit parses and writes Kenshi .mod and .base files and reads its .save, .zone and .platoon files using Python. Its format notes document filetypes 15–17 and inferred typecodes, while utilities dump records, compare saves, detect mod conflicts and check byte-identical round trips.","description_zh":"kenshi-modkit 用 Python 解析和写入《Kenshi》的 .mod、.base 文件，并读取 .save、.zone、.platoon 存档。格式文档记录 filetype 15–17 与推断出的 typecode；附带记录导出、存档比较、模组冲突检测和字节一致性往返校验工具。","entry_url":"https://awesomerea.org/resources/kenshi-modkit/","entry_url_zh":"https://awesomerea.org/zh/resources/kenshi-modkit/","evidence_url":"https://github.com/LucasSKrewer/kenshi-modkit/blob/e1f22ce0f1f5610dbb66de83aeeffe5a5d2b9120/README.md","group":"tools","id":"kenshi-modkit","json_url":"https://awesomerea.org/resources/kenshi-modkit/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/kenshi-modkit/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/kenshi-modkit/index.md","name":"kenshi-modkit","name_zh":"kenshi-modkit《Kenshi》文件格式工具包","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Python 3.12; standard library only.","Kenshi files are required for parsing and round-trip checks.","The author reports byte-identical round trips for 52,445 files; some typecodes remain unidentified and writing over saves is deliberately avoided.","MIT license."],"requirements_zh":["需要 Python 3.12，仅使用标准库。","解析和往返校验需要《Kenshi》文件。","作者报告 52,445 个文件实现字节一致的往返转换；部分 typecode 尚未识别，工具刻意避免覆盖写入存档。","采用 MIT 许可证。"],"targets":["game"],"url":"https://github.com/LucasSKrewer/kenshi-modkit","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/ericboehs/aosmith-water-heater/blob/4145daaf0f85bfdc19e96482e2ef4442721fb43a/ARCHITECTURE.md"],"category":"reconstruction-cases","description_en":"The A.O. Smith water-heater project implements local monitoring and demand-response control of an HPS10-50H45DV over its CTA-2045 RS-485 port, publishing readings to MQTT. Its documentation records frame structure, checksums, control responses and observed behavior of this specific tank.","description_zh":"该项目通过 HPS10-50H45DV 热水器的 CTA-2045 RS-485 端口实现本地监测与需求响应控制，并将读数发布到 MQTT。文档记录帧结构、校验和、控制应答及该型号热水器的实测行为。","entry_url":"https://awesomerea.org/resources/aosmith-water-heater-case/","entry_url_zh":"https://awesomerea.org/zh/resources/aosmith-water-heater-case/","evidence_url":"https://github.com/ericboehs/aosmith-water-heater/blob/4145daaf0f85bfdc19e96482e2ef4442721fb43a/README.md","group":"cases","id":"aosmith-water-heater-case","json_url":"https://awesomerea.org/resources/aosmith-water-heater-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/aosmith-water-heater-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/aosmith-water-heater-case/index.md","name":"A.O. Smith water heater: local CTA-2045 control and protocol findings","name_zh":"A.O. Smith 热水器：CTA-2045 本地控制与协议研究","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Requires an A.O. Smith HPS10-50H45DV, a Raspberry Pi Zero 2 W and an isolated RS-485 adapter as documented.","The documented setup uses Raspberry Pi OS Lite, Python 3.13 and a 19200 8N1 serial port.","Setpoint writes, water-temperature reads and operating-mode changes are unavailable through this tank's CTA-2045 port.","MIT license."],"requirements_zh":["文档中的配置需要 A.O. Smith HPS10-50H45DV、Raspberry Pi Zero 2 W 和隔离型 RS-485 适配器。","所述环境使用 Raspberry Pi OS Lite、Python 3.13 和 19200 8N1 串口。","该热水器的 CTA-2045 端口不支持写入设定温度、读取水温或切换运行模式。","采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/ericboehs/aosmith-water-heater","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/brendangooden/j2208-band-tools/blob/62ce48357e25d1c68e4c3e0bfd8d2cf1bbd745e9/README.md"],"category":"reconstruction-cases","description_en":"j2208-band-tools implements a direct BLE client for J2208-family fitness bands using protocol findings recovered from the FitTrack Health companion app. Its Python tools read stored health history and live sensor values, probe GATT services and collect readings into SQLite. The author checked the documented 16-byte frame protocol against one Hume Band V2.","description_zh":"j2208-band-tools 根据从 FitTrack Health 配套应用恢复的协议，实现 J2208 系列健身手环的直连 BLE 客户端。Python 工具可读取历史健康记录与实时传感器数据、探测 GATT 服务，并将采集结果存入 SQLite。作者在一只 Hume Band V2 上核对了文档所述的 16 字节帧协议。","entry_url":"https://awesomerea.org/resources/j2208-band-tools-case/","entry_url_zh":"https://awesomerea.org/zh/resources/j2208-band-tools-case/","evidence_url":"https://github.com/brendangooden/j2208-band-tools/blob/62ce48357e25d1c68e4c3e0bfd8d2cf1bbd745e9/PROTOCOL.md","group":"cases","id":"j2208-band-tools-case","json_url":"https://awesomerea.org/resources/j2208-band-tools-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/j2208-band-tools-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/j2208-band-tools-case/index.md","name":"j2208-band-tools: a direct client for the J2208 fitness-band protocol","name_zh":"j2208-band-tools：基于 J2208 手环协议的直连客户端","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","testing","limits","license"],"requirements":["A J2208-family band and Python with bleak; the companion app must release its BLE connection before the tools connect.","The author tested one Hume Band V2 with firmware v0.0.3.9; support for other family members is inferred.","Raw PPG is reported unavailable on the tested V2 firmware.","MIT license."],"requirements_zh":["需要 J2208 系列手环、Python 和 bleak；连接前需让配套应用断开蓝牙连接。","作者只测试了一只运行 v0.0.3.9 固件的 Hume Band V2；对其他同系列设备的支持属于推断。","作者报告所测 V2 固件无法提供原始 PPG 数据。","采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/brendangooden/j2208-band-tools","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/SudoSaturn/eufy-local-ha/blob/4f2164281977000754611dd35e144d45858a8b96/README.md","https://github.com/SudoSaturn/eufy-local-ha/blob/4f2164281977000754611dd35e144d45858a8b96/E22SUPPORT.md"],"category":"reconstruction-cases","description_en":"Eufy Local Light implements a Home Assistant client for Eufy Outdoor String Lights E10 and Permanent Outdoor Lights E22 using BLE traffic analyzed from the Eufy app. Its protocol notes describe GATT endpoints, packet framing, AES-128-CBC session setup, and light-control commands.","description_zh":"Eufy Local Light 根据对 Eufy 应用 BLE 流量的分析，为 E10 串灯和 E22 户外灯实现 Home Assistant 本地控制。协议笔记记录了 GATT 端点、数据包格式、AES-128-CBC 会话建立和灯具控制命令。","entry_url":"https://awesomerea.org/resources/eufy-local-ha-case/","entry_url_zh":"https://awesomerea.org/zh/resources/eufy-local-ha-case/","evidence_url":"https://github.com/SudoSaturn/eufy-local-ha/blob/4f2164281977000754611dd35e144d45858a8b96/PROTOCOL.md","group":"cases","id":"eufy-local-ha-case","json_url":"https://awesomerea.org/resources/eufy-local-ha-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/eufy-local-ha-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/eufy-local-ha-case/index.md","name":"Eufy Local Light: reconstructing BLE control for E10 and E22 lights","name_zh":"Eufy Local Light：重建 E10 与 E22 灯具的 BLE 控制","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["Home Assistant and a supported Eufy light are required; development and testing covered E10 T8L10 and E22 T8L02.","The integration does not yet expose per-segment DIY patterns on the E22; E10 state readback is untested.","GPL-3.0 license."],"requirements_zh":["需要 Home Assistant 和受支持的 Eufy 灯具；开发与测试涉及 E10 T8L10 和 E22 T8L02。","该集成程序尚未提供 E22 的分段 DIY 图案控制；E10 状态回读尚未测试。","采用 GPL-3.0 许可证。"],"targets":["protocol"],"url":"https://github.com/SudoSaturn/eufy-local-ha","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Wasabules/OpenPeats/blob/8e8357d6054e5bb2244241313ad6491f55692a76/PROTOCOL.md"],"category":"reconstruction-cases","description_en":"OpenPeats reconstructs the SoundPEATS earbud control protocol for desktop and Android clients. Its specification describes frames and opcodes derived from analysis of the official Android app and checked against SOUNDPEATS H3 hardware. Go and Kotlin implementations expose ANC, equalizer and multipoint controls, plus battery status.","description_zh":"OpenPeats 重建 SoundPEATS 耳机控制协议，并实现桌面端和 Android 客户端。协议文档记录了从官方 Android 应用分析得出的帧格式与操作码，以及在 SOUNDPEATS H3 上的通信核对结果；Go 和 Kotlin 实现提供降噪、均衡器和多点连接控制，并读取电池电量。","entry_url":"https://awesomerea.org/resources/openpeats-case/","entry_url_zh":"https://awesomerea.org/zh/resources/openpeats-case/","evidence_url":"https://github.com/Wasabules/OpenPeats/blob/8e8357d6054e5bb2244241313ad6491f55692a76/README.md","group":"cases","id":"openpeats-case","json_url":"https://awesomerea.org/resources/openpeats-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/openpeats-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/openpeats-case/index.md","name":"OpenPeats: reconstructing SoundPEATS earbud controls","name_zh":"OpenPeats：重建 SoundPEATS 耳机控制协议","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","testing","limits","license"],"requirements":["A paired SoundPEATS device is required; development and validation used an H3 with firmware S5_20250605_V0.4.9.","The author reports read and write validation on Linux, Windows 11, and Android.","Writing the touch mapping and touch demo mode remain unvalidated; macOS transport is unfinished and iOS SPP is unavailable.","MIT license."],"requirements_zh":["需要已配对的 SoundPEATS 设备；开发与验证使用固件 S5_20250605_V0.4.9 的 H3。","作者报告已在 Linux、Windows 11 和 Android 上验证读写。","触控映射写入和触控演示模式尚未验证；macOS 传输层未完成，iOS 无法使用 SPP。","采用 MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/Wasabules/OpenPeats","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"hongtai-panel implements Linux control of a LovingCool AIO cooler LCD using a USB CDC-ACM serial protocol reconstructed from the vendor's Electron application. Its documentation describes control-frame layout, checksums, JSON replies, and opcodes; the client displays system statistics, media, or screen mirroring.","description_zh":"hongtai-panel 从厂商 Electron 应用还原 USB CDC-ACM 串口协议，为 LovingCool 一体式水冷显示屏提供 Linux 控制程序。文档列出控制帧、校验和、JSON 回复及操作码；客户端可显示系统状态、媒体内容或屏幕镜像。","entry_url":"https://awesomerea.org/resources/hongtai-panel-case/","entry_url_zh":"https://awesomerea.org/zh/resources/hongtai-panel-case/","evidence_url":"https://github.com/GOG1071/hongtai-panel/blob/121634c3e7f647b70d705008834884ac0baba994/README.md","group":"cases","id":"hongtai-panel-case","json_url":"https://awesomerea.org/resources/hongtai-panel-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/hongtai-panel-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hongtai-panel-case/index.md","name":"hongtai-panel: reconstructing a cooler LCD's USB serial protocol","name_zh":"hongtai-panel：还原水冷显示屏的 USB 串口协议","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["Linux, Python 3.10+, and a supported USB LCD panel; media and mirroring features need the listed optional packages.","Other panel models are expected to work through device-reported geometry but are not identified as confirmed.","No licence file in the repository."],"requirements_zh":["需要 Linux、Python 3.10 或更新版本及受支持的 USB 显示屏；媒体和镜像功能还需所列可选软件包。","其他型号预计可利用设备返回的尺寸信息工作，但未列为已确认型号。","仓库中没有许可证文件。"],"targets":["protocol"],"url":"https://github.com/GOG1071/hongtai-panel","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"An ESPHome component recreates L&S Emotion Control remote commands so an ESP32 with a CC2500 radio can control furniture lights and reflect physical remote presses in Home Assistant. Its documented radio configuration uses MSK at 2436.2 MHz, a sync word, and 14-byte payloads carrying the remote ID, command, and value.","description_zh":"该 ESPHome 组件让 ESP32 配合 CC2500 无线模块重现 L&S Emotion Control 遥控命令，在 Home Assistant 中控制灯具并同步实体遥控器操作。文档记录了 2436.2 MHz 的 MSK 参数、同步字，以及包含遥控器 ID、命令和值的 14 字节载荷。","entry_url":"https://awesomerea.org/resources/emotion-control-ha-case/","entry_url_zh":"https://awesomerea.org/zh/resources/emotion-control-ha-case/","evidence_url":"https://github.com/SergeyZh/emotion-control-ha/blob/05134b32b007277695badfb360f3439dc7f9348c/README.md","group":"cases","id":"emotion-control-ha-case","json_url":"https://awesomerea.org/resources/emotion-control-ha-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/emotion-control-ha-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/emotion-control-ha-case/index.md","name":"ESPHome ↔ L&S Emotion Control: reconstructing a smart-light radio client","name_zh":"ESPHome ↔ L&S Emotion Control：重建智能灯无线控制客户端","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["ESP32, a 2.4 GHz CC2500 module with a 26.000 MHz crystal, soldered wiring, and an L&S Emotion Control lamp or remote.","Lamp state is estimated because the lamp provides no feedback; brightness has five levels.","Apache License 2.0."],"requirements_zh":["需要 ESP32、采用 26.000 MHz 晶振的 2.4 GHz CC2500 模块、焊接连线，以及 L&S Emotion Control 灯具或遥控器。","灯具不回传状态，因此显示状态为估计值；亮度分为五档。","采用 Apache License 2.0。"],"targets":["protocol"],"url":"https://github.com/SergeyZh/emotion-control-ha","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/deonspengler/akp02/blob/ee4f4468573fad8d38f3012aac0ccbf1f9c0edcf/LICENSE"],"category":"reconstruction-cases","description_en":"akp02 reconstructs the Ajazz AKP02 secondary display's USB HID protocol as a Linux Python library. It documents command report framing and implements full or partial image updates, brightness and power controls, firmware queries, orientation and keepalive.","description_zh":"akp02 将 Ajazz AKP02 副屏的 USB HID 协议重建为 Linux Python 库。文档记录命令报告格式，代码实现整屏与局部图像更新、亮度和电源控制、固件查询、方向设置及保活。","entry_url":"https://awesomerea.org/resources/akp02-display-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/akp02-display-protocol-case/","evidence_url":"https://github.com/deonspengler/akp02/blob/ee4f4468573fad8d38f3012aac0ccbf1f9c0edcf/README.md","group":"cases","id":"akp02-display-protocol-case","json_url":"https://awesomerea.org/resources/akp02-display-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/akp02-display-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/akp02-display-protocol-case/index.md","name":"akp02: reconstructing the Ajazz AKP02 display protocol","name_zh":"akp02：重建 Ajazz AKP02 显示屏协议","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["An Ajazz AKP02 display and Linux HID access are required; the README describes installing a udev rule.","The package specifies Python 3.11 or newer.","MPL-2.0 license."],"requirements_zh":["需要 Ajazz AKP02 显示屏及 Linux HID 访问权限；文档说明需安装 udev 规则。","软件包要求 Python 3.11 及以上版本。","MPL-2.0 许可证。"],"targets":["protocol"],"url":"https://github.com/deonspengler/akp02","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/den-frie-vilje/cupertino-files/blob/9550fc8163c64774f4400b98e0542823da59f8b6/research/README.md"],"category":"binary-libraries","description_en":"cupertino-files is a TypeScript library for reading and writing modern Apple Pages, Numbers, and Keynote documents. It models their undocumented file structures from real documents, exposes editing APIs and CLI tools, and publishes format notes and a language-neutral conformance suite.","description_zh":"cupertino-files 是读写现代 Apple Pages、Numbers 和 Keynote 文档的 TypeScript 库。它通过实际文档研究未公开的文件结构，提供编辑 API、命令行工具、格式说明及跨语言一致性测试集。","entry_url":"https://awesomerea.org/resources/cupertino-files/","entry_url_zh":"https://awesomerea.org/zh/resources/cupertino-files/","evidence_url":"https://github.com/den-frie-vilje/cupertino-files/blob/9550fc8163c64774f4400b98e0542823da59f8b6/README.md","group":"tools","id":"cupertino-files","json_url":"https://awesomerea.org/resources/cupertino-files/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/cupertino-files/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cupertino-files/index.md","name":"cupertino-files","name_zh":"cupertino-files iWork 文档格式工具包","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Node.js 22 or later or a modern browser; the package is ESM-only.","Modern Pages, Numbers, or Keynote documents for reading and editing.","iWork ’09 XML and password-protected documents are declined.","MIT License."],"requirements_zh":["需要 Node.js 22 或更新版本，或现代浏览器；软件包仅支持 ESM。","读取和编辑时需要现代 Pages、Numbers 或 Keynote 文档。","不接受 iWork ’09 XML 文档或受密码保护的文档。","MIT 许可证。"],"targets":["app"],"url":"https://github.com/den-frie-vilje/cupertino-files","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/zeljkovranjes/l4d2-director-system-research/blob/e646012ed9176d8691ff106c9643995a6bfa19c1/research/DIRECTOR_REVERSE_ENGINEERING.md","https://github.com/zeljkovranjes/l4d2-director-system-research/blob/e646012ed9176d8691ff106c9643995a6bfa19c1/research/tools/README.md"],"category":"reconstruction-cases","description_en":"This Left 4 Dead 2 study reconstructs the AI Director's pacing, intensity, encounter placement and music rules from an identified x86 server.dll and sanitized runtime traces. It publishes disassembly-derived findings, analysis scripts, evidence files and implementation specifications; a reference game library is in a separate repository.","description_zh":"这项 Left 4 Dead 2 研究依据指定的 x86 server.dll 和脱敏运行轨迹，还原 AI Director 的节奏、强度、遭遇布置及音乐规则。仓库提供基于反汇编的发现、分析脚本、证据文件和实现规格；参考游戏库位于另一仓库。","entry_url":"https://awesomerea.org/resources/l4d2-director-research-case/","entry_url_zh":"https://awesomerea.org/zh/resources/l4d2-director-research-case/","evidence_url":"https://github.com/zeljkovranjes/l4d2-director-system-research/blob/e646012ed9176d8691ff106c9643995a6bfa19c1/README.md","group":"cases","id":"l4d2-director-research-case","json_url":"https://awesomerea.org/resources/l4d2-director-research-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/l4d2-director-research-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/l4d2-director-research-case/index.md","name":"Left 4 Dead 2: recovering the AI Director's behavior","name_zh":"Left 4 Dead 2：还原 AI Director 的运行机制","reconstruction_method":"other","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["Reproducing the analysis requires an installed copy of Left 4 Dead 2, Python 3 and Capstone for disassembly scripts.","Matching RVAs require the specified June 30, 2026 x86 server.dll build.","The retail binary is stripped, leaving some private names and engine-specific helper behavior unresolved.","No licence file in the repository."],"requirements_zh":["复现分析需要已安装的 Left 4 Dead 2、Python 3，以及反汇编脚本所用的 Capstone。","要使 RVA 对应，需使用文档指定的 2026 年 6 月 30 日 x86 server.dll 构建。","零售版二进制已去除符号，部分私有名称和引擎辅助行为仍未确定。","仓库中没有许可证文件。"],"targets":["binary","game"],"url":"https://github.com/zeljkovranjes/l4d2-director-system-research","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"MSP CSV Export Format reconstructs the undocumented CSV export of the My Stocks Portfolio & Market app. The author compared eleven iOS exports, app displays and public translation strings to describe columns, blocks and transaction replay. A dependency-free Python parser and synthetic export exercise the documented rules and flag malformed input.","description_zh":"MSP CSV Export Format 还原 My Stocks Portfolio & Market 应用未公开的 CSV 导出格式。作者对照十一份 iOS 导出文件、应用显示内容和公开翻译字符串，整理列、数据块及交易重放规则；仓库提供无第三方依赖的 Python 解析器和合成样例，用于检查格式规则及异常输入。","entry_url":"https://awesomerea.org/resources/msp-csv-format-case/","entry_url_zh":"https://awesomerea.org/zh/resources/msp-csv-format-case/","evidence_url":"https://github.com/Izero/msp-csv-format/blob/d666b16d0f1d2501680204436dfdf1a64c3c2096/README.md","group":"cases","id":"msp-csv-format-case","json_url":"https://awesomerea.org/resources/msp-csv-format-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/msp-csv-format-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/msp-csv-format-case/index.md","name":"MSP CSV Export Format: reconstructing My Stocks Portfolio exports","name_zh":"MSP CSV Export Format：My Stocks Portfolio 导出格式重建","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["An MSP CSV export is required for parsing personal data; Python 3.9+ is the documented runtime.","The evidence base is eleven exports from one portfolio; some locale and transaction-order behavior remains unconfirmed.","Apache-2.0 License."],"requirements_zh":["解析个人数据需要 MSP CSV 导出文件；文档所述运行环境为 Python 3.9 以上。","研究依据为同一投资组合的十一份导出文件；部分地区设置和交易顺序行为尚未确认。","Apache-2.0 许可证。"],"targets":["app"],"url":"https://github.com/Izero/msp-csv-format","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"MechRewired rebuilds the MechWarrior 2: 31st Century Combat experience around data imported from a user's DOS copy. Its code loads original resources and missions, while providing a new cockpit, terrain rendering and combat simulation for modern platforms.","description_zh":"MechRewired 利用用户 DOS 版《MechWarrior 2: 31st Century Combat》的数据重建游戏体验。项目代码加载原版资源和任务，并为现代平台实现新的驾驶舱、地形渲染与战斗模拟。","entry_url":"https://awesomerea.org/resources/mechrewired-mechwarrior-2-case/","entry_url_zh":"https://awesomerea.org/zh/resources/mechrewired-mechwarrior-2-case/","evidence_url":"https://github.com/deanthecoder/MechRewired/blob/2151bcea58d5447436cb9362eca9d6f8a987493e/README.md","group":"cases","id":"mechrewired-mechwarrior-2-case","json_url":"https://awesomerea.org/resources/mechrewired-mechwarrior-2-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/mechrewired-mechwarrior-2-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mechrewired-mechwarrior-2-case/index.md","name":"MechRewired: rebuilding MechWarrior 2 from original game data","name_zh":"MechRewired：基于原版数据重建 MechWarrior 2","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","license"],"requirements":["Requires the user's own MechWarrior 2 DOS game data; the author identifies PC English MS-DOS v1.1 as the checked package.","MIT License for the project source."],"requirements_zh":["需要用户自己的《MechWarrior 2》DOS 游戏数据；作者列出的已检查版本为 PC 英文版 MS-DOS v1.1。","项目源代码采用 MIT 许可证。"],"targets":["game"],"url":"https://github.com/deanthecoder/MechRewired","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/niazlv/nrf52-eink-price-tag/blob/ac789f2f103a1d9da4054076496d0921379e5a0b/LICENSE"],"category":"reconstruction-cases","description_en":"nRF52 e-paper tag reconstructs control of an undocumented electronic shelf label with an nRF52832 board and SSD1675A-class panel. The repository records the pinout, 9-bit SPI connection, waveform-table layout and refresh behavior, and provides replacement Zephyr firmware plus a portable C99 display driver.","description_zh":"nRF52 e-paper tag 重建采用 nRF52832 电路板和 SSD1675A 类面板的无文档电子价签控制方式。仓库记录引脚、9 位 SPI 连接、波形表结构及刷新行为，并提供替代 Zephyr 固件和可移植的 C99 显示驱动。","entry_url":"https://awesomerea.org/resources/nrf52-eink-price-tag-case/","entry_url_zh":"https://awesomerea.org/zh/resources/nrf52-eink-price-tag-case/","evidence_url":"https://github.com/niazlv/nrf52-eink-price-tag/blob/ac789f2f103a1d9da4054076496d0921379e5a0b/README.md","group":"cases","id":"nrf52-eink-price-tag-case","json_url":"https://awesomerea.org/resources/nrf52-eink-price-tag-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/nrf52-eink-price-tag-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/nrf52-eink-price-tag-case/index.md","name":"nRF52 e-paper tag: reconstructing an undocumented display interface","name_zh":"nRF52 e-paper tag：重建无文档电子纸显示接口","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["The documented hardware uses an nRF52832, HINK-E029A10-A3 panel and ESL.CB-LR.010-00C.203 board.","The first installation requires SWD programming; building requires nRF Connect SDK v3.0.1.","MIT license."],"requirements_zh":["文档对应的硬件采用 nRF52832、HINK-E029A10-A3 面板和 ESL.CB-LR.010-00C.203 电路板。","首次安装需要通过 SWD 烧录；构建需要 nRF Connect SDK v3.0.1。","采用 MIT 许可证。"],"targets":["firmware","protocol"],"url":"https://github.com/niazlv/nrf52-eink-price-tag","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/blaineam/benro-polaris-firmware-patcher/blob/6bbf67a8b762a9926a42da0f5444f0c0364ff9f0/docs/APP-PROTOCOL.md","https://github.com/blaineam/benro-polaris-firmware-patcher/blob/6bbf67a8b762a9926a42da0f5444f0c0364ff9f0/LICENSE"],"category":"reconstruction-cases","description_en":"Benro Polaris Firmware Patcher investigates the Polaris camera controller and repacks a user-supplied firmware image with a newer libgphoto2 stack and targeted pgphoto changes. Its documentation maps Benro Connect app behavior and the TCP messages used to control the device. The author reports end-to-end testing with a Canon EOS R5 Mark II.","description_zh":"Benro Polaris Firmware Patcher 研究 Polaris 相机控制器，将新版 libgphoto2 组件和针对 pgphoto 的修改打包进用户自备固件镜像。文档还梳理 Benro Connect 应用行为及其控制设备的 TCP 报文。作者报告已使用 Canon EOS R5 Mark II 完成端到端测试。","entry_url":"https://awesomerea.org/resources/benro-polaris-firmware-patcher-case/","entry_url_zh":"https://awesomerea.org/zh/resources/benro-polaris-firmware-patcher-case/","evidence_url":"https://github.com/blaineam/benro-polaris-firmware-patcher/blob/6bbf67a8b762a9926a42da0f5444f0c0364ff9f0/README.md","group":"cases","id":"benro-polaris-firmware-patcher-case","json_url":"https://awesomerea.org/resources/benro-polaris-firmware-patcher-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/benro-polaris-firmware-patcher-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/benro-polaris-firmware-patcher-case/index.md","name":"Benro Polaris Firmware Patcher: rebuilding camera control and mapping the app protocol","name_zh":"Benro Polaris Firmware Patcher：重建相机控制并解析应用协议","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["A user-supplied stock FwPkt is required; the author tested firmware 4.0.0.32 with a Canon EOS R5 Mark II.","Optional astronomy features are experimental and have not been tested under real stars.","MIT license."],"requirements_zh":["需要用户自备原厂 FwPkt；作者测试的组合是固件 4.0.0.32 与 Canon EOS R5 Mark II。","可选天文功能仍属实验阶段，尚未在真实星空下测试。","采用 MIT 许可证。"],"targets":["app","firmware","protocol"],"url":"https://github.com/blaineam/benro-polaris-firmware-patcher","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Lightning-13/rk-m75/blob/abf286541b096da2a62360ec7b12035babc007d0/docs/protocol.md","https://github.com/Lightning-13/rk-m75/blob/abf286541b096da2a62360ec7b12035babc007d0/2.4ghz/README.md"],"category":"reconstruction-cases","description_en":"RK M75 reconstructs RGB control for the Royal Kludge RK M75 keyboard from wired USB HID captures and 2.4 GHz wireless experiments. A Python library sends per-key wired frames and grouped wireless frames; the repository also contains protocol notes, captures and a wired SignalRGB plugin.","description_zh":"RK M75 通过有线 USB HID 抓包和 2.4 GHz 无线实验，复现 Royal Kludge RK M75 键盘的 RGB 灯光控制。Python 库可发送有线逐键颜色帧和无线分组颜色帧；仓库还收录协议笔记、抓包及有线 SignalRGB 插件。","entry_url":"https://awesomerea.org/resources/rk-m75-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rk-m75-case/","evidence_url":"https://github.com/Lightning-13/rk-m75/blob/abf286541b096da2a62360ec7b12035babc007d0/README.md","group":"cases","id":"rk-m75-case","json_url":"https://awesomerea.org/resources/rk-m75-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rk-m75-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rk-m75-case/index.md","name":"RK M75: reconstructing wired and wireless RGB control","name_zh":"RK M75：复现有线与无线 RGB 灯光控制","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["The documented hardware is an RK M75 with wired VID:PID 258A:0163 or wireless 258A:0148; development and hardware checks used Windows.","Python 3.10+ is required by the package.","The wireless protocol is partial: arbitrary per-key colors and smooth 30 FPS streaming were not achieved.","MIT license."],"requirements_zh":["所述设备为有线 VID:PID 258A:0163 或无线 258A:0148 的 RK M75；开发和硬件检查在 Windows 上进行。","软件包需要 Python 3.10+。","无线协议只完成部分还原：尚未实现任意逐键颜色，也未达到平滑的 30 FPS 数据流。","MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/Lightning-13/rk-m75","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/jaenster/d2mac-linux/blob/313fa1c5b8c05c14f5aeebc05904fced222633d0/scripts/README.md","https://github.com/jaenster/d2mac-linux/blob/313fa1c5b8c05c14f5aeebc05904fced222633d0/LICENSE"],"category":"reconstruction-cases","description_en":"d2mac-linux ports the Diablo II 1.14d Mac executable to 32-bit Linux by converting its i386 Mach-O container to ELF and reimplementing imported Darwin, Carbon and AGL interfaces in Zig. The shim translates graphics to GLX and adapts threading, files and sockets. The author reports that the game reaches its menu and character creation.","description_zh":"d2mac-linux 将《Diablo II》1.14d Mac 版 i386 Mach-O 转为 ELF，并用 Zig 重写所需的 Darwin、Carbon 和 AGL 导入接口，使其移植到 32 位 Linux。兼容层将图形调用转为 GLX，并适配线程、文件与套接字；作者报告游戏可进入主菜单并创建角色。","entry_url":"https://awesomerea.org/resources/d2mac-linux-case/","entry_url_zh":"https://awesomerea.org/zh/resources/d2mac-linux-case/","evidence_url":"https://github.com/jaenster/d2mac-linux/blob/313fa1c5b8c05c14f5aeebc05904fced222633d0/README.md","group":"cases","id":"d2mac-linux-case","json_url":"https://awesomerea.org/resources/d2mac-linux-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/d2mac-linux-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/d2mac-linux-case/index.md","name":"d2mac-linux: porting the Diablo II Mac executable to 32-bit Linux","name_zh":"d2mac-linux：将《Diablo II》Mac 可执行文件移植到 32 位 Linux","reconstruction_method":"port","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["A legitimate copy of the original Diablo II Mac client and its game data is required.","Execution needs a 32-bit-capable Linux userland, Mesa GL and an X server.","Right-click handling and sound remain unimplemented.","MIT."],"requirements_zh":["需要合法取得的《Diablo II》原版 Mac 客户端及游戏数据。","运行需要支持 32 位程序的 Linux 用户环境、Mesa GL 和 X 服务器。","右键处理及声音尚未实现。","MIT 许可证。"],"targets":["binary","game"],"url":"https://github.com/jaenster/d2mac-linux","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"PackerScope scans Windows PE executables for packer signatures and structural indicators, including entropy, sections, imports and entry-point instructions. It can invoke supported unpackers and check PE integrity, entropy and import-table recovery before generating reports.","description_zh":"PackerScope 检查 Windows PE 可执行文件的熵、节区、导入表、入口指令和加壳签名。对受支持的文件可执行脱壳，并检查 PE 结构、熵及导入表恢复情况，随后生成报告。","entry_url":"https://awesomerea.org/resources/packerscope/","entry_url_zh":"https://awesomerea.org/zh/resources/packerscope/","evidence_url":"https://github.com/salmanmallah/packerscope/blob/db2ea6db6105ce45decd0fef0c01f16d87dc7225/README.md","group":"tools","id":"packerscope","json_url":"https://awesomerea.org/resources/packerscope/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/packerscope/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/packerscope/index.md","name":"PackerScope","name_zh":"PackerScope PE 加壳分析框架","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","prerequisites","license"],"requirements":["Python 3.10–3.13 is listed as the supported range.","Capstone, yara-python and ppdeep are optional analysis dependencies.","UPX unpacking requires an external upx executable.","MIT licence."],"requirements_zh":["支持的 Python 版本为 3.10 至 3.13。","Capstone、yara-python 和 ppdeep 是可选分析依赖。","UPX 脱壳需要外部 upx 程序。","采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/salmanmallah/packerscope","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/codypendant/aciq-minisplit-protocol/blob/fe8a3cf59fdfc0f83d4cd65907962b2146c45188/PROTOCOL.md","https://github.com/codypendant/aciq-minisplit-protocol/blob/fe8a3cf59fdfc0f83d4cd65907962b2146c45188/tools/README.md"],"category":"reconstruction-cases","description_en":"ACiQ K18W documents the UART protocol between a mini split's indoor board and TCL WBR1 Wi-Fi module. Captures and decoders map 115200 8N1 traffic, 0xA5 frames, CRC-16/XMODEM, acknowledgments, and appliance fields; ESPHome configurations provide passive monitoring or local control after replacing the module.","description_zh":"ACiQ K18W 记录分体空调室内板与 TCL WBR1 Wi-Fi 模块之间的 UART 协议。抓包和解码器说明 115200 8N1 通信、0xA5 帧、CRC-16/XMODEM、确认消息及设备字段；ESPHome 配置支持被动监听，或在替换模块后进行本地控制。","entry_url":"https://awesomerea.org/resources/aciq-minisplit-protocol-case/","entry_url_zh":"https://awesomerea.org/zh/resources/aciq-minisplit-protocol-case/","evidence_url":"https://github.com/codypendant/aciq-minisplit-protocol/blob/fe8a3cf59fdfc0f83d4cd65907962b2146c45188/README.md","group":"cases","id":"aciq-minisplit-protocol-case","json_url":"https://awesomerea.org/resources/aciq-minisplit-protocol-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/aciq-minisplit-protocol-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/aciq-minisplit-protocol-case/index.md","name":"ACiQ K18W: reconstructing a mini split's UART protocol","name_zh":"ACiQ K18W：还原分体空调 UART 协议","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["An ACiQ ACIQ-K18W-W-32-HP2300 unit and ESP32 hardware for the documented ESPHome configurations.","Listen-only and module-replacement control are separate electrical configurations; transmit must not be enabled while the original module remains connected.","MIT license."],"requirements_zh":["所述 ESPHome 配置需要 ACiQ ACIQ-K18W-W-32-HP2300 设备及 ESP32 硬件。","只监听与替换模块控制是两种独立接线方式；原模块仍连接时不得启用发送。","MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/codypendant/aciq-minisplit-protocol","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/Enkerli/rnd-companion/blob/f98ebb811974e01970f00e0c4a0dd04557913ac2/README.md"],"category":"reconstruction-cases","description_en":"RND Companion reconstructs the Cymaforma RND Synth's SysEx control vocabulary and implements a C++ codec and companion plugin for patch seeds. The protocol notes identify framing and seed or status commands from a web app and one hardware capture. The client can use a direct MIDI port or host MIDI routing and stores a curated seed library.","description_zh":"RND Companion 重建 Cymaforma RND Synth 的 SysEx 控制命令，并提供 C++ 编解码器和管理音色种子的配套插件。协议笔记根据网页应用及一段实机 MIDI 录制数据记录帧格式、种子命令和状态命令；客户端支持直连 MIDI 端口或通过宿主软件路由 MIDI，并保存音色种子库。","entry_url":"https://awesomerea.org/resources/rnd-companion-case/","entry_url_zh":"https://awesomerea.org/zh/resources/rnd-companion-case/","evidence_url":"https://github.com/Enkerli/rnd-companion/blob/f98ebb811974e01970f00e0c4a0dd04557913ac2/docs/PROTOCOL.md","group":"cases","id":"rnd-companion-case","json_url":"https://awesomerea.org/resources/rnd-companion-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/rnd-companion-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rnd-companion-case/index.md","name":"RND Companion: reconstructing the RND Synth SysEx protocol","name_zh":"RND Companion：重建 RND Synth 的 SysEx 协议","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["A Cymaforma RND Synth is needed for hardware use and capture.","Building the full companion requires JUCE and the separate music-suite UI source; codec tests do not require JUCE.","The wire vocabulary is based on one hardware capture and may change with firmware updates.","Unlicense public-domain dedication."],"requirements_zh":["实机使用和采集需要 Cymaforma RND Synth。","构建完整配套程序需要 JUCE 和另一个 music-suite 仓库中的界面源码；编解码器测试不需要 JUCE。","协议命令依据一段实机 MIDI 录制数据核对，固件更新可能使其失效。","采用 Unlicense 公共领域奉献声明。"],"targets":["protocol"],"url":"https://github.com/Enkerli/rnd-companion","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/hamodywe/imprint/blob/b63df337336333e9db566144fdb8ffea056c6a89/docs/architecture.md"],"category":"native-analysis","description_en":"imprint analyzes Windows PE files by parsing import, delay-import and export directories without executing the image. It maps imported Windows APIs to categories and MITRE ATT&CK techniques, then reports capability patterns with the imports that triggered each finding in text or JSON.","description_zh":"imprint 不执行映像，直接解析 Windows PE 文件的导入、延迟导入和导出目录。它把导入的 Windows API 映射到行为类别与 MITRE ATT&CK 技术，再以文本或 JSON 输出能力模式及触发依据。","entry_url":"https://awesomerea.org/resources/imprint-pe-triage/","entry_url_zh":"https://awesomerea.org/zh/resources/imprint-pe-triage/","evidence_url":"https://github.com/hamodywe/imprint/blob/b63df337336333e9db566144fdb8ffea056c6a89/README.md","group":"tools","id":"imprint-pe-triage","json_url":"https://awesomerea.org/resources/imprint-pe-triage/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/imprint-pe-triage/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/imprint-pe-triage/index.md","name":"imprint","name_zh":"imprint PE 导入表静态分析工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","limits","license"],"requirements":["A C11 compiler such as gcc, clang or MinGW is required to build it.","Imports indicate possible capabilities, not observed execution; dynamically resolved APIs and packed payloads may be hidden.","MIT license."],"requirements_zh":["构建需要 gcc、clang 或 MinGW 等 C11 编译器。","导入表只能提示可能的能力，不能证明代码已经执行；动态解析的 API 和加壳载荷可能不可见。","采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/hamodywe/imprint","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/saltyboosack-blip/Spider-Man-2-PS2-Recomp/blob/98aef964411fc355ff4ae59a710b1644222bfe6c/game/SLUS-20776/README.md"],"category":"reconstruction-cases","description_en":"Spider-Man 2 PS2 Recomp applies static recompilation to the USA PlayStation 2 release SLUS-20776 for native PC execution. It combines a game-specific Ghidra function map with PS2Recomp source, runtime fixes and hardware comparison tests. The author reports that a native Windows build reaches the legal splash; the port is not playable.","description_zh":"Spider-Man 2 PS2 Recomp 对美版 PS2 游戏 SLUS-20776 进行静态重编译，目标是在 PC 上原生运行。仓库包含针对游戏的 Ghidra 函数映射、PS2Recomp 源码、运行时修复和硬件行为对照测试。作者报告 Windows 构建已到达版权画面，但仍不能游玩。","entry_url":"https://awesomerea.org/resources/spider-man-2-ps2-recomp-case/","entry_url_zh":"https://awesomerea.org/zh/resources/spider-man-2-ps2-recomp-case/","evidence_url":"https://github.com/saltyboosack-blip/Spider-Man-2-PS2-Recomp/blob/98aef964411fc355ff4ae59a710b1644222bfe6c/README.md","group":"cases","id":"spider-man-2-ps2-recomp-case","json_url":"https://awesomerea.org/resources/spider-man-2-ps2-recomp-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/spider-man-2-ps2-recomp-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/spider-man-2-ps2-recomp-case/index.md","name":"Spider-Man 2 PS2 Recomp: a static recompilation checkpoint","name_zh":"Spider-Man 2 PS2 Recomp：《Spider-Man 2》静态重编译阶段成果","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["A personally obtained USA Spider-Man 2 PS2 disc image and local extraction are required.","The documented Windows workflow requires Ghidra with a PS2 Emotion Engine extension, CMake and Visual Studio 2022 C++ Build Tools.","The port is not playable; legal-splash rendering remains incomplete.","GPL-3.0 License."],"requirements_zh":["需要自备美版《Spider-Man 2》PS2 光盘镜像并在本地提取文件。","文档中的 Windows 流程需要装有 PS2 Emotion Engine 扩展的 Ghidra、CMake 和 Visual Studio 2022 C++ Build Tools。","移植版尚不能游玩，版权画面仍未完整渲染。","GPL-3.0 许可证。"],"targets":["game"],"url":"https://github.com/saltyboosack-blip/Spider-Man-2-PS2-Recomp","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/StyuDEV/ffxii-tza-tools/blob/537fb89be76a19176014d414bf3e58d1170a0198/docs/formats/INDEX.md"],"category":"game-analysis","description_en":"ffxii-tza-tools documents and processes FINAL FANTASY XII The Zodiac Age character formats, including .ca animations, .cm models and .phyre assets. Its Python tools decode chunk structures, export models and animations to glTF, edit curves and repack @FRP containers from files extracted from the user’s game copy.","description_zh":"ffxii-tza-tools 记录并处理 FINAL FANTASY XII The Zodiac Age 的角色文件格式，包括 .ca 动画、.cm 模型和 .phyre 资源。Python 工具可解析分块结构、将模型与动画导出为 glTF、编辑曲线，并根据用户自行提取的游戏文件重新打包 @FRP 容器。","entry_url":"https://awesomerea.org/resources/ffxii-tza-tools/","entry_url_zh":"https://awesomerea.org/zh/resources/ffxii-tza-tools/","evidence_url":"https://github.com/StyuDEV/ffxii-tza-tools/blob/537fb89be76a19176014d414bf3e58d1170a0198/README.md","group":"tools","id":"ffxii-tza-tools","json_url":"https://awesomerea.org/resources/ffxii-tza-tools/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/ffxii-tza-tools/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ffxii-tza-tools/index.md","name":"ffxii-tza-tools","name_zh":"ffxii-tza-tools 最终幻想 XII 文件格式工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","testing","limits","license"],"requirements":["Python 3.9 or newer and game files extracted from the user’s copy of FFXII_TZA.vbf; Pillow is needed for PNG output.","The author reports checking the documented .ca and .cm formats across the matching game files.","Blender round-trip editing and embedded .efx effect images are outside the current scope.","MIT licence."],"requirements_zh":["需要 Python 3.9 或更新版本，以及从用户自有 FFXII_TZA.vbf 提取的游戏文件；输出 PNG 需安装 Pillow。","作者报告已用游戏中相应文件检查 .ca 和 .cm 格式文档。","当前范围不包括 Blender 往返编辑流程及嵌入的 .efx 特效图片。","采用 MIT 许可证。"],"targets":["game"],"url":"https://github.com/StyuDEV/ffxii-tza-tools","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"game-analysis","description_en":"sims-package2glb extracts models from The Sims 2, 3 and 4 .package files into glTF binary files. Its Rust parsers handle DBPF containers, RefPack compression, RCOL and GMDC geometry, textures, materials and recolours. The documentation records format findings including Sims 4 DST texture planes and relative RCOL chunk references.","description_zh":"sims-package2glb 将《模拟人生》2、3、4 的 .package 模型资源导出为 glTF 二进制文件。Rust 解析器处理 DBPF 容器、RefPack 压缩、RCOL 与 GMDC 几何、纹理、材质和换色版本。文档还记录了 Sims 4 的 DST 纹理平面及 RCOL 相对块引用等格式发现。","entry_url":"https://awesomerea.org/resources/sims-package2glb/","entry_url_zh":"https://awesomerea.org/zh/resources/sims-package2glb/","evidence_url":"https://github.com/infinition/sims-package2glb/blob/907c3d4c2cabac133e00520eb9a78a2516beca23/README.md","group":"tools","id":"sims-package2glb","json_url":"https://awesomerea.org/resources/sims-package2glb/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/sims-package2glb/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/sims-package2glb/index.md","name":"sims-package2glb","name_zh":"sims-package2glb：《模拟人生》package 格式提取工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","license"],"requirements":["Windows is the supported platform.","The input must be a Sims 2, 3 or 4 .package file; building from source requires Rust and Node.","MIT."],"requirements_zh":["目前支持 Windows。","输入需为《模拟人生》2、3 或 4 的 .package 文件；从源码构建需要 Rust 和 Node。","许可证为 MIT。"],"targets":["game"],"url":"https://github.com/infinition/sims-package2glb","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"agent-workflows","description_en":"reverse-workbench-skill is a multi-agent-harness skill bundle that routes investigations to workflows for APKs, native binaries, firmware, frontend JavaScript, and network traffic. Its documented paths include Ghidra headless exports, binary diffing, and evidence recording, alongside broader security-analysis skills and helper scripts.","description_zh":"reverse-workbench-skill 是适用于多种智能体环境的技能包，将 APK、原生二进制、固件、前端 JavaScript 和网络流量调查分派到对应流程。文档列出 Ghidra 无界面导出、二进制差异分析和证据记录路径，也包含其他安全分析技能及辅助脚本。","entry_url":"https://awesomerea.org/resources/reverse-workbench-skill/","entry_url_zh":"https://awesomerea.org/zh/resources/reverse-workbench-skill/","evidence_url":"https://github.com/Asaiuta/reverse-workbench-skill/blob/6aa36c1c00cd84f1749bf983ca282d533ba77266/README.md","group":"agents","id":"reverse-workbench-skill","json_url":"https://awesomerea.org/resources/reverse-workbench-skill/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/reverse-workbench-skill/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/reverse-workbench-skill/index.md","name":"reverse-workbench-skill","name_zh":"reverse-workbench-skill 逆向分析技能路由包","record_type":"resource","relationship":"independent-agent-integration","requirement_facets":["prerequisites","prerequisites","attribution"],"requirements":["A supported agent client is required; the README lists pi, Codex CLI, DSH, and Claude Code.","JDK, Node.js 22.12+, and Python 3.x are listed as prerequisites for the corresponding toolchains.","MIT license; the LICENSE retains attribution for the original reverse-skill methodology."],"requirements_zh":["需要受支持的智能体客户端；README 列出 pi、Codex CLI、DSH 和 Claude Code。","对应工具链的前置条件列有 JDK、Node.js 22.12+ 和 Python 3.x。","采用 MIT 许可证；LICENSE 保留对原始 reverse-skill 方法的署名。"],"targets":["app","binary","firmware","website"],"url":"https://github.com/Asaiuta/reverse-workbench-skill","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/kreycai/vc64_240p/blob/a4635b3fd451e2ce53c05a67ed124603d02fb9fe/docs/TECHNICAL.md"],"category":"game-analysis","description_en":"vc64_240p analyses and patches the N64 Virtual Console emulator inside Wii WAD channels to output 240p. It finds render-mode structures by pattern, changes video fields and disables deflicker; an optional patch removes the emulator's dark filter.","description_zh":"vc64_240p 分析并修改 Wii WAD 频道中的 N64 Virtual Console 模拟器，使其输出 240p。工具按结构特征定位视频模式表、调整显示字段并关闭防闪烁滤镜，还可选择移除暗化滤镜。","entry_url":"https://awesomerea.org/resources/vc64-240p/","entry_url_zh":"https://awesomerea.org/zh/resources/vc64-240p/","evidence_url":"https://github.com/kreycai/vc64_240p/blob/a4635b3fd451e2ce53c05a67ed124603d02fb9fe/README.md","group":"tools","id":"vc64-240p","json_url":"https://awesomerea.org/resources/vc64-240p/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/vc64-240p/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/vc64-240p/index.md","name":"vc64_240p","name_zh":"vc64_240p Wii N64 虚拟主机视频补丁工具","record_type":"resource","relationship":"foundation","requirement_facets":["prerequisites","prerequisites","limits","license"],"requirements":["A user-supplied N64 Virtual Console WAD and a separately generated Wii common key are required.","Installing output on Wii requires cIOS 249 and Priiloader or BootMii.","PAL is unsupported, and the author reports live checks on five emulator builds.","MIT."],"requirements_zh":["需要用户自行提供的 N64 Virtual Console WAD 和另行生成的 Wii 公共密钥。","在 Wii 上安装输出文件需要 cIOS 249，以及 Priiloader 或 BootMii。","不支持 PAL；作者报告已在五个模拟器版本上进行实体测试。","MIT 许可证。"],"targets":["binary","game"],"url":"https://github.com/kreycai/vc64_240p","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"game-analysis","description_en":"RtG-Format documents the observed save and construction format of the Roblox game Road To Gramby's. Its references and experiments cover build structures, part identifiers, connections, properties, encoding and compression, with supporting CLI and browser preview tools.","description_zh":"RtG-Format 记录 Roblox 游戏 Road To Gramby's 的存档与建造格式。文档和实验涵盖建造结构、部件标识、连接关系、属性、编码与压缩，并附命令行工具和浏览器预览器。","entry_url":"https://awesomerea.org/resources/rtg-format/","entry_url_zh":"https://awesomerea.org/zh/resources/rtg-format/","evidence_url":"https://github.com/JuanCrakYT/RtG-Format/blob/8199b79948f0fd2de8c787f8a58e678f27e16feb/README.md","group":"learn","id":"rtg-format","json_url":"https://awesomerea.org/resources/rtg-format/record.json","kind":"documentation","markdown_url":"https://awesomerea.org/resources/rtg-format/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/rtg-format/index.md","name":"RtG-Format","name_zh":"RtG-Format Road To Gramby's 存档格式文档","record_type":"resource","relationship":"learning","requirement_facets":["limits","license"],"requirements":["The project states that reverse engineering is ongoing and some field meanings and behavior remain uncertain.","GPL-3.0 license."],"requirements_zh":["项目说明逆向研究仍在进行，部分字段含义和行为尚未确定。","GPL-3.0 许可证。"],"targets":["game"],"url":"https://github.com/JuanCrakYT/RtG-Format","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/AllobatesZaparo/malware-analysis/blob/2ab3ceacbfa239048a4892d51089d1b926dea4d2/README.MD"],"category":"reconstruction-cases","description_en":"This malware-analysis report investigates a trojanized FL Studio installer that bundles an Electron/NSIS wrapper and a Go information stealer. The author traces the wrapper statically and studies the payload in an isolated Windows environment with process, registry and network observations, recovering its reported command-and-control mechanism.","description_zh":"这份恶意软件分析报告研究一个木马化的 FL Studio 安装包，其中包含 Electron/NSIS 包装程序和 Go 信息窃取载荷。作者通过静态检查追踪安装流程，并在隔离的 Windows 环境中结合进程、注册表和网络记录研究载荷，报告了所恢复的命令控制机制。","entry_url":"https://awesomerea.org/resources/fl-studio-stealer-analysis-case/","entry_url_zh":"https://awesomerea.org/zh/resources/fl-studio-stealer-analysis-case/","evidence_url":"https://github.com/AllobatesZaparo/malware-analysis/blob/2ab3ceacbfa239048a4892d51089d1b926dea4d2/fl-studio-stealer/README.md","group":"cases","id":"fl-studio-stealer-analysis-case","json_url":"https://awesomerea.org/resources/fl-studio-stealer-analysis-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/fl-studio-stealer-analysis-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fl-studio-stealer-analysis-case/index.md","name":"Malware Analysis: a trojanized FL Studio installer and Go stealer","name_zh":"Malware Analysis：木马化 FL Studio 安装包与 Go 窃密程序分析","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["scope","license"],"requirements":["The author used an isolated KVM/QEMU Windows guest and a simulated network for dynamic observations.","No licence file in the repository."],"requirements_zh":["作者使用隔离的 KVM/QEMU Windows 虚拟机及模拟网络进行动态观察。","仓库中没有许可证文件。"],"targets":["app","binary"],"url":"https://github.com/AllobatesZaparo/malware-analysis","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/jyuwaaw/mindnode-mcp/blob/634bfe96e443aa2e3147b9d7a86ba3991d366d65/docs/FORMAT.md"],"category":"agent-mcp","description_en":"MindNode MCP Server connects agents to MindNode Next mind maps on macOS. Its reader decodes the app's SQLite library, protobuf snapshots, Apple LZ4 compression and CRDT operations into Markdown outlines; other MCP tools return previews or create maps through MindNode's Markdown importer.","description_zh":"MindNode MCP Server 让智能体访问 macOS 上的 MindNode Next 思维导图。读取流程解析应用的 SQLite 资料库、protobuf 快照、Apple LZ4 压缩数据和 CRDT 操作，输出 Markdown 大纲；其他 MCP 工具可读取预览图或通过应用的 Markdown 导入器新建导图。","entry_url":"https://awesomerea.org/resources/mindnode-mcp/","entry_url_zh":"https://awesomerea.org/zh/resources/mindnode-mcp/","evidence_url":"https://github.com/jyuwaaw/mindnode-mcp/blob/634bfe96e443aa2e3147b9d7a86ba3991d366d65/README.md","group":"agents","id":"mindnode-mcp","json_url":"https://awesomerea.org/resources/mindnode-mcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/mindnode-mcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mindnode-mcp/index.md","name":"MindNode MCP Server","name_zh":"MindNode MCP Server 思维导图智能体接口","record_type":"resource","relationship":"independent-agent-integration","requirement_facets":["prerequisites","limits","license"],"requirements":["macOS with MindNode 2024+ and Node.js 24 or later.","The author checked the format on MindNode 2026.4.4; heavily edited text may decode incorrectly.","MIT license."],"requirements_zh":["需要 macOS、MindNode 2024 或更新版本，以及 Node.js 24 或更新版本。","作者在 MindNode 2026.4.4 上检查了格式；多次编辑过的文字可能解码错误。","采用 MIT 许可证。"],"targets":["app"],"url":"https://github.com/jyuwaaw/mindnode-mcp","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"touhou-engine reimplements Touhou danmaku gameplay in Python, with TH07: Perfect Cherry Blossom as its reference game. The author says its engine logic was ported frame by frame against a decompilation, while the new architecture supplies an event stream, replay handling, headless stepping, and a pygame renderer. It reads original game archives supplied by the user.","description_zh":"touhou-engine 用 Python 重实现东方弹幕游戏玩法，以 TH07《东方妖妖梦》为参考作品。作者称引擎逻辑对照原版反编译结果逐帧移植，新架构提供事件流、录像处理、无界面逐帧运行和 pygame 渲染，并读取使用者提供的原版游戏资源包。","entry_url":"https://awesomerea.org/resources/touhou-engine-case/","entry_url_zh":"https://awesomerea.org/zh/resources/touhou-engine-case/","evidence_url":"https://github.com/SaigyoujYuyuko/touhou-engine/blob/6d12df8dc57b66766c311ea299d0b257410765ef/README.md","group":"cases","id":"touhou-engine-case","json_url":"https://awesomerea.org/resources/touhou-engine-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/touhou-engine-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/touhou-engine-case/index.md","name":"touhou-engine: a Python reimplementation of Touhou gameplay","name_zh":"touhou-engine：用 Python 重实现东方游戏玩法","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Requires Python 3.12 or newer and the documented numpy, pillow, pygame, loguru, and msgspec dependencies.","Requires the user's own TH07 data archive; BGM uses thbgm.dat from the same directory.","The source attributes its decompilation reference to some100/th07."],"requirements_zh":["需要 Python 3.12 或更新版本，以及文档列出的 numpy、pillow、pygame、loguru 和 msgspec 依赖。","需要使用者自己的 TH07 资源包；背景音乐使用同目录下的 thbgm.dat。","资料注明反编译参考来自 some100/th07。"],"targets":["game"],"url":"https://github.com/SaigyoujYuyuko/touhou-engine","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/elasticjava/viture-v2/blob/8b29df0667cd65f0af8293b72c1c97ec959213bd/README.md"],"category":"reconstruction-cases","description_en":"viture-v2 documents and implements the USB HID protocol used by VITURE Gen2 XR glasses. The author matched usbmon captures to SDK frame logs, then wrote a Rust driver with hidraw, usbfs and io_uring transports for queries and IMU streams. Measurements and compatibility claims cover the VITURE Pro 2 XR.","description_zh":"viture-v2 记录并实现 VITURE Gen2 XR 眼镜的 USB HID 协议。作者将 usbmon 抓包与 SDK 帧日志对照，编写了支持 hidraw、usbfs 和 io_uring 的 Rust 驱动，用于设备查询与 IMU 数据流；实测对象为 VITURE Pro 2 XR。","entry_url":"https://awesomerea.org/resources/viture-v2-case/","entry_url_zh":"https://awesomerea.org/zh/resources/viture-v2-case/","evidence_url":"https://github.com/elasticjava/viture-v2/blob/8b29df0667cd65f0af8293b72c1c97ec959213bd/PROTOCOL.md","group":"cases","id":"viture-v2-case","json_url":"https://awesomerea.org/resources/viture-v2-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/viture-v2-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/viture-v2-case/index.md","name":"viture-v2: a reconstructed VITURE Gen2 glasses protocol and driver","name_zh":"viture-v2：VITURE Gen2 眼镜协议与驱动重建","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","limits","license"],"requirements":["A VITURE Gen2 XR device and a supported Linux or Android USB transport are required for hardware use.","Only VITURE Pro 2 XR was measured; setters remain unmapped.","MIT License."],"requirements_zh":["实际连接设备需要 VITURE Gen2 XR 眼镜及受支持的 Linux 或 Android USB 传输方式。","仅在 VITURE Pro 2 XR 上测量过；设置类命令尚未映射。","MIT 许可证。"],"targets":["protocol"],"url":"https://github.com/elasticjava/viture-v2","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","description_en":"BikeStation is a local Windows client for Echelon Connect exercise bikes built on community research into their proprietary Bluetooth LE protocol. It reads cadence and resistance telemetry, queries the bike's resistance range, writes motorized resistance commands and records rides without the vendor cloud.","description_zh":"BikeStation 是用于 Echelon Connect 健身车的本地 Windows 客户端，基于社区对其专有低功耗蓝牙协议的研究。它读取踏频和阻力数据、查询阻力范围、向电动阻力机构发送控制命令，并在无需厂商云服务的情况下将骑行记录保存在本地。","entry_url":"https://awesomerea.org/resources/bikestation-case/","entry_url_zh":"https://awesomerea.org/zh/resources/bikestation-case/","evidence_url":"https://github.com/nathanbrittin/BikeStation/blob/690d805a1001e8681e02125db44099d464c3d682/README.md","group":"cases","id":"bikestation-case","json_url":"https://awesomerea.org/resources/bikestation-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/bikestation-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bikestation-case/index.md","name":"BikeStation: local Echelon Connect control over Bluetooth LE","name_zh":"BikeStation：通过蓝牙 LE 本地控制 Echelon Connect 健身车","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","testing","license"],"requirements":["A Windows PC with Bluetooth and an Echelon bike advertising a name beginning with ECH are required.","The author reports end-to-end testing on a Connect EX-5 only; resistance writing requires a motorized resistance mechanism.","GPL-3.0-or-later."],"requirements_zh":["需要带蓝牙的 Windows 电脑，以及广播名称以 ECH 开头的 Echelon 健身车。","作者报告仅在 Connect EX-5 上完成端到端测试；写入阻力还需要电动阻力机构。","许可证为 GPL-3.0-or-later。"],"targets":["protocol"],"url":"https://github.com/nathanbrittin/BikeStation","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/eliel9012/grsimwrite-mac/blob/280c56527747a4ab3b720db550edac84e9046ecd/docs/PLANO.md"],"category":"reconstruction-cases","description_en":"grsimwrite-mac reconstructs the Windows GRSIMWrite 4.4.10 SIM-writing workflow in Python for macOS. Its research records card-family profiles and APDU write behavior, while the implementation identifies cards, reads elementary files, writes selected fields, and builds formatting sequences.","description_zh":"grsimwrite-mac 用 Python 为 macOS 重建 Windows 工具 GRSIMWrite 4.4.10 的 SIM 写卡流程。研究资料记录卡片家族配置和 APDU 写入行为；实现提供卡片识别、EF 读取、字段写入及格式化指令序列生成。","entry_url":"https://awesomerea.org/resources/grsimwrite-mac-case/","entry_url_zh":"https://awesomerea.org/zh/resources/grsimwrite-mac-case/","evidence_url":"https://github.com/eliel9012/grsimwrite-mac/blob/280c56527747a4ab3b720db550edac84e9046ecd/README.md","group":"cases","id":"grsimwrite-mac-case","json_url":"https://awesomerea.org/resources/grsimwrite-mac-case/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/grsimwrite-mac-case/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/grsimwrite-mac-case/index.md","name":"grsimwrite-mac: reconstructing GRSIMWrite for macOS","name_zh":"grsimwrite-mac：重建适用于 macOS 的 GRSIMWrite","record_type":"resource","relationship":"independent-reconstruction","requirement_facets":["prerequisites","testing","license"],"requirements":["macOS, a PC/SC card reader, and the pyscard and pydes dependencies are required for card operation.","The author reports 41 offline unit tests using mocks, without hardware.","No licence file in the repository."],"requirements_zh":["实际操作卡片需要 macOS、PC/SC 读卡器，以及 pyscard 和 pydes 依赖。","作者报告有 41 项使用模拟对象的离线单元测试，未使用硬件。","仓库中没有许可证文件。"],"targets":["app","protocol"],"url":"https://github.com/eliel9012/grsimwrite-mac","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/000nico/kdemulator/blob/44c05218b4b83d8a864df540aead218dbdf48e6a/emu-cli.md","https://github.com/000nico/kdemulator/blob/44c05218b4b83d8a864df540aead218dbdf48e6a/LICENSE"],"category":"dynamic-analysis","description_en":"kdemulator executes Windows x86-64 kernel-driver binaries outside a live kernel for IOCTL analysis. It maps PE sections into Unicorn, intercepts imported NT API calls and supplies minimal kernel-object and memory stubs. The CLI can invoke DriverEntry, send one IOCTL or run a mutation loop over an IOCTL input buffer.","description_zh":"kdemulator 在真实内核之外执行 Windows x86-64 内核驱动二进制文件，以分析 IOCTL。它将 PE 节映射到 Unicorn，截获导入的 NT API 调用，并提供最小化的内核对象与内存模拟；命令行可运行 DriverEntry、发送单次 IOCTL 或循环变异输入。","entry_url":"https://awesomerea.org/resources/kdemulator/","entry_url_zh":"https://awesomerea.org/zh/resources/kdemulator/","evidence_url":"https://github.com/000nico/kdemulator/blob/44c05218b4b83d8a864df540aead218dbdf48e6a/README.md","group":"tools","id":"kdemulator","json_url":"https://awesomerea.org/resources/kdemulator/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/kdemulator/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/kdemulator/index.md","name":"kdemulator","name_zh":"kdemulator Windows 内核驱动模拟分析工具","record_type":"resource","relationship":"foundation","requirement_facets":["scope","limits","license"],"requirements":["Windows x86-64 driver .sys files are the documented inputs.","Emulation covers only the driver's own code and directly imported functions; hardware-facing drivers need additional stubs.","Unlicense."],"requirements_zh":["文档中的输入是 Windows x86-64 驱动 .sys 文件。","模拟范围仅包括驱动自身代码和直接导入的函数；访问硬件的驱动需要额外桩函数。","Unlicense 许可证。"],"targets":["binary"],"url":"https://github.com/000nico/kdemulator","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"Cross-platform graphical binary analysis tool powered by the angr platform, with disassembly and decompilation views.","description_zh":"基于 angr 平台的跨平台图形化二进制分析工具，提供反汇编和反编译视图。","entry_url":"https://awesomerea.org/resources/angr-management/","entry_url_zh":"https://awesomerea.org/zh/resources/angr-management/","evidence_url":"https://github.com/angr/angr-management/blob/1af4c02877c0ada70b457b4e321da07a912e4b6f/README.md","group":"tools","id":"angr-management","json_url":"https://awesomerea.org/resources/angr-management/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/angr-management/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/angr-management/index.md","name":"angr-management","name_zh":"angr-management 图形化二进制分析工具","record_type":"resource","relationship":"foundation","requirements":["Powered by the angr platform; v10.0.5 is dated 2026-10-22.","BSD-2-Clause per LICENSE."],"requirements_zh":["基于 angr 平台；v10.0.5 版的日期为 2026-10-22。","依 LICENSE 采用 BSD-2-Clause 许可。"],"targets":["binary"],"url":"https://github.com/angr/angr-management","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dynamic-analysis","description_en":"QIRA is a tool for examining program execution traces. Its interface lets users navigate instruction changes, register values, memory reads and writes, and forks.","description_zh":"QIRA 是用于查看程序执行轨迹的工具。用户可以通过界面浏览指令变化、寄存器值、内存读写和执行分支。","entry_url":"https://awesomerea.org/resources/qira/","entry_url_zh":"https://awesomerea.org/zh/resources/qira/","evidence_url":"https://github.com/geohot/qira/blob/5f34406410aa492bc491fe0e579dbe103390a432/README.md","group":"tools","id":"qira","json_url":"https://awesomerea.org/resources/qira/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/qira/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/qira/index.md","name":"QIRA","name_zh":"QIRA 执行轨迹分析工具","record_type":"resource","relationship":"foundation","requirements":["Ubuntu 14.04 and 16.04 are supported out of the box.","The QEMU tracer requires a Linux host; native Mac OS X and Windows support is very limited.","QIRA code is licensed under MIT; other code in the repository retains its respective licenses."],"requirements_zh":["Ubuntu 14.04 和 16.04 可直接运行。","QEMU 追踪器需要 Linux 主机；对 Mac OS X 和 Windows 的原生支持非常有限。","QIRA 代码采用 MIT 许可证；仓库中的其他代码遵循各自的许可证。"],"targets":["binary"],"url":"https://github.com/geohot/qira","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"Dependencies is a Windows PE dependency analysis tool with command-line and graphical interfaces. It shows imports, exports, and DLL load dependencies to help diagnose loading problems.","description_zh":"Dependencies 是一款提供命令行和图形界面的 Windows PE 依赖分析工具。它可显示导入、导出及 DLL 加载依赖，帮助排查加载问题。","entry_url":"https://awesomerea.org/resources/dependencies-pe/","entry_url_zh":"https://awesomerea.org/zh/resources/dependencies-pe/","evidence_url":"https://github.com/lucasg/Dependencies/blob/1997a40000b77bd3326cbc33672a7b9f78bb23f3/README.md","group":"tools","id":"dependencies-pe","json_url":"https://awesomerea.org/resources/dependencies-pe/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dependencies-pe/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dependencies-pe/index.md","name":"Dependencies","name_zh":"Dependencies Windows PE 依赖分析工具","record_type":"resource","relationship":"foundation","requirements":["Requires the Visual C++ Redistributable to run properly.","Does not detect dependencies loaded dynamically through LoadLibrary.","Recursive analysis must be enabled in the options and can use substantial memory.","The repository declares the MIT license."],"requirements_zh":["正常运行需要安装 Visual C++ Redistributable。","无法检测通过 LoadLibrary 动态加载的依赖。","递归分析需要在选项中启用，且可能占用大量内存。","仓库声明采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/lucasg/Dependencies","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dotnet","description_en":"dnlib is a .NET library for reading and writing modules and assemblies. It provides access to metadata, method bodies, resources, and PDB files.","description_zh":"dnlib 是用于读取和写入 .NET 模块及程序集的库。它提供对元数据、方法体、资源和 PDB 文件的访问能力。","entry_url":"https://awesomerea.org/resources/dnlib/","entry_url_zh":"https://awesomerea.org/zh/resources/dnlib/","evidence_url":"https://github.com/0xd4d/dnlib/blob/9871d3b290589a9316dc68439d1c5307411d5dc5/README.md","group":"tools","id":"dnlib","json_url":"https://awesomerea.org/resources/dnlib/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/dnlib/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/dnlib/index.md","name":"dnlib","name_zh":"dnlib .NET 程序集读写库","record_type":"resource","relationship":"foundation","requirements":["For .NET Core assemblies, disable GAC loading and add .NET Core reference assembly search paths.","Writing Windows PDB files requires Windows.","Licensed under MIT."],"requirements_zh":["处理 .NET Core 程序集时，需禁用 GAC 加载并添加 .NET Core 引用程序集的搜索路径。","写入 Windows PDB 文件需要 Windows。","采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/0xd4d/dnlib","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"binary-libraries","description_en":"Hachoir is a Python library for viewing and editing binary streams as trees of fields, down to individual bits. Its command-line tools can search binary files for text, extract or remove metadata, and display file contents in text mode.","description_zh":"Hachoir 是一个 Python 库，可将二进制流按字段组织成树状结构，查看和编辑细至单个位的内容。其命令行工具可在二进制文件中搜索文本、提取或删除元数据，并以文本模式显示文件内容。","entry_url":"https://awesomerea.org/resources/hachoir/","entry_url_zh":"https://awesomerea.org/zh/resources/hachoir/","evidence_url":"https://github.com/vstinner/hachoir/blob/685b2986dee5ea53b450636cddfd0217cfde080c/README.rst","group":"tools","id":"hachoir","json_url":"https://awesomerea.org/resources/hachoir/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/hachoir/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/hachoir/index.md","name":"Hachoir","name_zh":"Hachoir 二进制流查看与编辑库","record_type":"resource","relationship":"foundation","requirements":["Requires Python 3.7 or newer.","Licensed under GNU GPL v2."],"requirements_zh":["需要 Python 3.7 或更新版本。","采用 GNU GPL v2 许可证。"],"targets":["binary"],"url":"https://github.com/vstinner/hachoir","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"binary-diffing","description_en":"Pigaios is a tool that matches C source code against binaries in IDA. It extracts function features from source code, finds corresponding functions in an IDA database, and imports symbols, structures, and enumerations. It can work with partial source code that does not compile.","description_zh":"Pigaios 是一款在 IDA 中将 C 源代码与二进制文件进行匹配的工具。它从源码提取函数特征，在 IDA 数据库中查找对应函数，并导入符号、结构体和枚举。它也能处理无法完整编译的部分源码。","entry_url":"https://awesomerea.org/resources/pigaios/","entry_url_zh":"https://awesomerea.org/zh/resources/pigaios/","evidence_url":"https://github.com/joxeankoret/pigaios/blob/8807972f08d5613f5dd291329306abdfb68d60ec/README.md","group":"tools","id":"pigaios","json_url":"https://awesomerea.org/resources/pigaios/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pigaios/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pigaios/index.md","name":"Pigaios","name_zh":"Pigaios 源码与二进制匹配工具","record_type":"resource","relationship":"foundation","requirements":["Requires Python Clang bindings; the README indicates Clang 3.9 or later should work.","Requires IDA with IDAPython to match binaries and import the results.","On Windows, LLVM must be installed and added to PATH. Colorama is optional for colors, and scikit-learn is optional for machine learning features.","License: GPL-3.0."],"requirements_zh":["需要 Python Clang 绑定；README 指出 Clang 3.9 或更新版本应该可用。","需要带 IDAPython 的 IDA，才能匹配二进制文件并导入结果。","在 Windows 上，需要安装 LLVM 并将其加入 PATH。Colorama 是彩色显示的可选依赖，scikit-learn 是机器学习功能的可选依赖。","许可证：GPL-3.0。"],"targets":["binary"],"url":"https://github.com/joxeankoret/pigaios","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"MachOExplorer is a desktop and command-line tool for inspecting Mach-O binaries, Universal binaries, static archives, and dyld shared caches. It displays file structures, symbols, disassembly, and Apple-specific metadata, and can export analysis as text or JSON.","description_zh":"MachOExplorer 是用于检查 Mach-O 二进制文件、Universal 二进制文件、静态归档和 dyld 共享缓存的桌面及命令行工具。它可展示文件结构、符号、反汇编结果和 Apple 平台特有的元数据，并以文本或 JSON 导出分析结果。","entry_url":"https://awesomerea.org/resources/machoexplorer/","entry_url_zh":"https://awesomerea.org/zh/resources/machoexplorer/","evidence_url":"https://github.com/everettjf/machoexplorer/blob/cd612d774369475efeb437377d91502c2b9602a5/README.md","group":"tools","id":"machoexplorer","json_url":"https://awesomerea.org/resources/machoexplorer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/machoexplorer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/machoexplorer/index.md","name":"MachOExplorer","name_zh":"MachOExplorer Mach-O 文件浏览器","record_type":"resource","relationship":"foundation","requirements":["Building from source requires CMake 3.16 or later, Qt 6, and a C++14 compiler.","Capstone is optional and enables disassembly.","Prebuilt releases are available for macOS; Linux and Windows require source builds.","The repository declares the MIT license."],"requirements_zh":["从源码构建需要 CMake 3.16 或更新版本、Qt 6 和支持 C++14 的编译器。","Capstone 是可选依赖，用于启用反汇编功能。","macOS 提供预编译版本；Linux 和 Windows 需要从源码构建。","仓库声明采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/everettjf/machoexplorer","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"firmware","description_en":"me_cleaner is a Python script that modifies Intel ME firmware images to reduce the firmware's ability to interact with the system. Depending on the ME generation, it removes the firmware or retains only modules needed for boot.","description_zh":"me_cleaner 是一个修改 Intel ME 固件映像的 Python 脚本，旨在减少该固件与系统交互的能力。根据 ME 的代际，它会移除固件，或仅保留启动所需的模块。","entry_url":"https://awesomerea.org/resources/me-cleaner/","entry_url_zh":"https://awesomerea.org/zh/resources/me-cleaner/","evidence_url":"https://github.com/corna/me_cleaner/blob/41eba87c85a1f0d013790f12b649c2da5b35dcfa/README.md","group":"tools","id":"me-cleaner","json_url":"https://awesomerea.org/resources/me-cleaner/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/me-cleaner/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/me-cleaner/index.md","name":"me_cleaner","name_zh":"me_cleaner Intel ME 固件精简脚本","record_type":"resource","relationship":"foundation","requirements":["Requires Python and an original Intel ME firmware image.","Flashing the modified image often requires an external SPI programmer.","Board support varies; some OEM firmware will not boot after modification, and Intel ME features will no longer work.","License: GPL-3.0."],"requirements_zh":["需要 Python 和原始 Intel ME 固件映像。","写入修改后的映像通常需要外置 SPI 编程器。","主板兼容性各异；部分 OEM 固件在修改后无法启动，Intel ME 提供的功能也将无法使用。","许可证：GPL-3.0。"],"targets":["firmware"],"url":"https://github.com/corna/me_cleaner","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dynamic-analysis","description_en":"FLEX is an in-app tool for exploring and debugging running iOS applications. It can inspect and change views and object state, browse app files and databases, and show network request history.","description_zh":"FLEX 是用于探索和调试运行中 iOS 应用的应用内工具。它可以检查和修改视图及对象状态、浏览应用文件和数据库，并查看网络请求记录。","entry_url":"https://awesomerea.org/resources/flex-ios/","entry_url_zh":"https://awesomerea.org/zh/resources/flex-ios/","evidence_url":"https://github.com/FLEXTool/FLEX/blob/dac6130e0c7aca0bbf7ff8c0b57ba284776bfdff/README.md","group":"tools","id":"flex-ios","json_url":"https://awesomerea.org/resources/flex-ios/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/flex-ios/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/flex-ios/index.md","name":"FLEX","name_zh":"FLEX iOS 应用内调试探索工具","record_type":"resource","relationship":"foundation","requirements":["Needs an app that targets iOS 9 or higher, and FLEX should be excluded from release builds.","BSD-style terms per LICENSE."],"requirements_zh":["需要目标版本为 iOS 9 或更高的应用，发布版本中应排除 FLEX。","依 LICENSE 采用 BSD 风格条款。"],"targets":["app"],"url":"https://github.com/FLEXTool/FLEX","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"classdump-dyld is a command-line tool that generates Objective-C headers from Mach-O app binaries, libraries, frameworks, bundles, and images in the dyld shared cache. It can dump a single class or process compatible files recursively.","description_zh":"classdump-dyld 是一款命令行工具，可从 Mach-O 应用程序二进制文件、库、框架、捆绑包及 dyld 共享缓存中的映像生成 Objective-C 头文件。它支持提取单个类，也能递归处理兼容文件。","entry_url":"https://awesomerea.org/resources/classdump-dyld/","entry_url_zh":"https://awesomerea.org/zh/resources/classdump-dyld/","evidence_url":"https://github.com/limneos/classdump-dyld/blob/31b6f9d897ed12065d9d30cc3aba548c892407f5/readme.md","group":"tools","id":"classdump-dyld","json_url":"https://awesomerea.org/resources/classdump-dyld/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/classdump-dyld/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/classdump-dyld/index.md","name":"classdump-dyld","name_zh":"classdump-dyld 类头文件提取工具","record_type":"resource","relationship":"foundation","requirements":["Requires a command-line shell on an iOS 5+ device or Mac OS X.","Works with Mach-O files only.","Some files cannot be dumped when protection prevents dynamic loading from another process.","GPL-3.0 per the README."],"requirements_zh":["需要在 iOS 5 及以上版本的设备或 Mac OS X 上使用命令行终端。","仅适用于 Mach-O 文件。","若文件的保护机制阻止其他进程动态加载，则可能无法提取。","依 README 采用 GPL-3.0 许可。"],"targets":["app","binary"],"url":"https://github.com/limneos/classdump-dyld","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"javascript-electron","description_en":"View8 is a static analysis tool that decompiles serialized V8 bytecode (JSC) files into readable JavaScript-like text. It can also export opcodes, parsed objects, and function trees organized by declarations, calls, or references.","description_zh":"View8 是一款静态分析工具，可将序列化的 V8 字节码（JSC）文件反编译为便于阅读的类 JavaScript 文本。它还可导出操作码、解析后的对象，以及按声明、调用或引用关系组织的函数树。","entry_url":"https://awesomerea.org/resources/view8/","entry_url_zh":"https://awesomerea.org/zh/resources/view8/","evidence_url":"https://github.com/suleram/View8/blob/531ec8e52b6386a07f64b7aa1f3d897dd0d7f239/README.md","group":"tools","id":"view8","json_url":"https://awesomerea.org/resources/view8/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/view8/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/view8/index.md","name":"View8","name_zh":"View8 V8 字节码反编译器","record_type":"resource","relationship":"foundation","requirements":["Python 3.x is required.","Raw JSC input requires a compatible patched V8 disassembler binary; the listed versions are 9.4.146.24, 10.2.154.26, and 11.3.244.8.","Serialized input uses Python pickle and must come from a trusted source.","The repository has no license file."],"requirements_zh":["需要 Python 3.x。","处理原始 JSC 文件需要兼容的已修补 V8 反汇编程序；列出的版本为 9.4.146.24、10.2.154.26 和 11.3.244.8。","序列化输入使用 Python pickle，必须来自可信来源。","仓库中没有许可证文件。"],"targets":["binary"],"url":"https://github.com/suleram/View8","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"web-analysis","description_en":"unwebpack-sourcemap is a Python script that recovers TypeScript, JSX, and other source files from Webpack source maps. It accepts local or remote source maps and can search a web page's scripts for them.","description_zh":"unwebpack-sourcemap 是一个 Python 脚本，可从 Webpack 源映射中恢复 TypeScript、JSX 等源文件。它可处理本地或远程源映射，也可检查网页脚本以查找源映射。","entry_url":"https://awesomerea.org/resources/unwebpack-sourcemap/","entry_url_zh":"https://awesomerea.org/zh/resources/unwebpack-sourcemap/","evidence_url":"https://github.com/rarecoil/unwebpack-sourcemap/blob/83c33a4c2f50612564138724e2f493a669886ad9/README.md","group":"tools","id":"unwebpack-sourcemap","json_url":"https://awesomerea.org/resources/unwebpack-sourcemap/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/unwebpack-sourcemap/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/unwebpack-sourcemap/index.md","name":"unwebpack-sourcemap","name_zh":"unwebpack-sourcemap 源码恢复脚本","record_type":"resource","relationship":"foundation","requirements":["Requires Python 3, BeautifulSoup4, and requests.","Intended for TypeScript with React or Vue templates.","The repository is archived and is not being maintained.","Licensed under MIT."],"requirements_zh":["需要 Python 3、BeautifulSoup4 和 requests。","适用于结合 React 或 Vue 模板的 TypeScript 项目。","仓库已归档，目前无人维护。","采用 MIT 许可证。"],"targets":["website"],"url":"https://github.com/rarecoil/unwebpack-sourcemap","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"web-analysis","description_en":"Wirebrowser is a desktop tool for instrumenting browser JavaScript through the Chrome DevTools Protocol. It can hook functions, trace where values originate, search and modify runtime objects, and intercept or replay HTTP traffic.","description_zh":"Wirebrowser 是一款通过 Chrome DevTools Protocol 对浏览器 JavaScript 进行运行时插桩的桌面工具。它可以挂钩函数、追踪值的来源、查找和修改运行时对象，以及拦截或重放 HTTP 流量。","entry_url":"https://awesomerea.org/resources/wirebrowser/","entry_url_zh":"https://awesomerea.org/zh/resources/wirebrowser/","evidence_url":"https://github.com/fcavallarin/wirebrowser/blob/77e1e48ceb4acaef0356877ee2d09391763613cc/README.md","group":"tools","id":"wirebrowser","json_url":"https://awesomerea.org/resources/wirebrowser/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/wirebrowser/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/wirebrowser/index.md","name":"Wirebrowser","name_zh":"Wirebrowser 浏览器运行时插桩工具","record_type":"resource","relationship":"foundation","requirements":["Use a macOS, Windows, or Linux desktop build, or build from source with npm.","On Linux with the AppImage, keep the installed Chrome extension in its visible directory under the home directory.","The repository declares the MIT License."],"requirements_zh":["使用 macOS、Windows 或 Linux 桌面版，或通过 npm 从源码构建。","在 Linux 上使用 AppImage 时，须将已安装的 Chrome 扩展保留在主目录下的可见目录中。","仓库声明采用 MIT 许可证。"],"targets":["website"],"url":"https://github.com/fcavallarin/wirebrowser","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dynamic-analysis","description_en":"Process Dump is a Windows command-line tool that saves code from running processes to disk for malware analysis. It can find hidden modules and loose executable code, reconstruct PE headers and imports, and use a clean-hash database to skip known modules.","description_zh":"Process Dump 是一款 Windows 命令行工具，可将运行中进程的代码保存到磁盘，供恶意软件分析使用。它能查找隐藏模块和独立的可执行代码，重建 PE 文件头与导入表，并通过已知文件的哈希数据库跳过常见模块。","entry_url":"https://awesomerea.org/resources/process-dump/","entry_url_zh":"https://awesomerea.org/zh/resources/process-dump/","evidence_url":"https://github.com/glmcdona/Process-Dump/blob/e4373c687937747bf2293dd55ca09082fe4913c1/README.md","group":"tools","id":"process-dump","json_url":"https://awesomerea.org/resources/process-dump/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/process-dump/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/process-dump/index.md","name":"Process Dump","name_zh":"Process Dump 进程内存转储工具","record_type":"resource","relationship":"foundation","requirements":["Runs on 32-bit and 64-bit Windows through the matching standalone executable; run as Administrator for best access. Release v3.0.0 is dated 2026-10-03.","MIT per LICENSE."],"requirements_zh":["可在 32 位和 64 位 Windows 上运行，使用对应的独立可执行文件；以管理员身份运行可获得最佳访问权限。v3.0.0 版的日期为 2026-10-03。","依 LICENSE 采用 MIT 许可。"],"targets":["binary"],"url":"https://github.com/glmcdona/Process-Dump","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dynamic-analysis","description_en":"mal_unpack is a Windows dynamic unpacker based on PE-sieve. It runs a packed malware executable, waits for its payload to unpack, dumps the payload, and terminates the original process.","description_zh":"mal_unpack 是基于 PE-sieve 的 Windows 动态脱壳工具。它运行经过加壳的恶意软件，等待载荷解包后将其转储，并终止原始进程。","entry_url":"https://awesomerea.org/resources/mal-unpack/","entry_url_zh":"https://awesomerea.org/zh/resources/mal-unpack/","evidence_url":"https://github.com/hasherezade/mal_unpack/blob/cecb9eed03c63d651c5b47834b15bac8086cb2fb/README.md","group":"tools","id":"mal-unpack","json_url":"https://awesomerea.org/resources/mal-unpack/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/mal-unpack/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/mal-unpack/index.md","name":"mal_unpack","name_zh":"mal_unpack 动态脱壳工具","record_type":"resource","relationship":"foundation","requirements":["Run on Windows and provide a packed malware executable.","Use only in a virtual machine because the tool launches the original malware.","License: BSD-2-Clause."],"requirements_zh":["在 Windows 上运行，并提供经过加壳的恶意软件可执行文件。","仅在虚拟机中使用，因为该工具会启动原始恶意软件。","许可证：BSD-2-Clause。"],"targets":["binary"],"url":"https://github.com/hasherezade/mal_unpack","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"game-analysis","description_en":"Unrpyc is a tool that decompiles compiled Ren'Py game scripts into readable script files. It runs from the command line or through files placed in a game's directory; it does not extract RPA archives.","description_zh":"Unrpyc 是将已编译的 Ren'Py 游戏脚本反编译为可读脚本文件的工具。它可通过命令行运行，也可将相关文件放入游戏目录中运行；它不能提取 RPA 归档。","entry_url":"https://awesomerea.org/resources/unrpyc/","entry_url_zh":"https://awesomerea.org/zh/resources/unrpyc/","evidence_url":"https://github.com/CensoredUsername/unrpyc/blob/3ae8334ed71a05535927dcc559663d3aca51215b/README.md","group":"tools","id":"unrpyc","json_url":"https://awesomerea.org/resources/unrpyc/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/unrpyc/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/unrpyc/index.md","name":"Unrpyc","name_zh":"Unrpyc Ren'Py 脚本反编译器","record_type":"resource","relationship":"foundation","requirements":["Use Python 3.9 or later for Unrpyc v2, or Python 2.7 for v1.","Choose the version for the game's Ren'Py release; v2 game injection supports Ren'Py 8, while v1 supports Ren'Py 6 and 7.","MIT per the README and LICENSE."],"requirements_zh":["Unrpyc v2 需要 Python 3.9 或更高版本；v1 需要 Python 2.7。","须根据游戏使用的 Ren'Py 版本选择工具版本；v2 的游戏注入方式支持 Ren'Py 8，v1 支持 Ren'Py 6 和 7。","依 README 和 LICENSE 采用 MIT 许可。"],"targets":["game"],"url":"https://github.com/CensoredUsername/unrpyc","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"game-analysis","description_en":"Java map decompiler that turns Source engine .bsp map files back into .vmf files that can be loaded in Hammer. It also has an integrated pakfile extractor.","description_zh":"Java 地图反编译器，可把 Source 引擎的 .bsp 地图文件还原为能在 Hammer 中加载的 .vmf 文件。它还集成了 pakfile 提取功能。","entry_url":"https://awesomerea.org/resources/bspsrc/","entry_url_zh":"https://awesomerea.org/zh/resources/bspsrc/","evidence_url":"https://github.com/ata4/bspsrc/blob/eaac417f16d3a4d8ef55bb637ecd7bff28740209/README.md","group":"tools","id":"bspsrc","json_url":"https://awesomerea.org/resources/bspsrc/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/bspsrc/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bspsrc/index.md","name":"BSPSource","name_zh":"BSPSource Source 引擎地图反编译器","record_type":"resource","relationship":"foundation","requirements":["The cross-platform JAR package requires Java 24 or later, installed and configured.","GoldSrc and Source 2 maps are unsupported.","Some internal entities cannot be restored perfectly.","Released into the public domain per LICENSE.md."],"requirements_zh":["使用跨平台 JAR 包需要安装并配置 Java 24 或更高版本。","不支持 GoldSrc 和 Source 2 地图。","部分内部实体无法完全还原。","依 LICENSE.md 发布到公有领域。"],"targets":["game"],"url":"https://github.com/ata4/bspsrc","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"agent-mcp","description_en":"OGhidra is an AI integration for analyzing binaries with Ghidra through natural language. It supports function analysis, automated renaming, malware pattern detection, and either an MCP or PyGhidra backend.","description_zh":"OGhidra 是一款将 AI 接入 Ghidra、通过自然语言分析二进制文件的集成工具。它支持函数分析、自动重命名、恶意软件模式检测，并可使用 MCP 或 PyGhidra 后端。","entry_url":"https://awesomerea.org/resources/oghidra/","entry_url_zh":"https://awesomerea.org/zh/resources/oghidra/","evidence_url":"https://github.com/llnl/OGhidra/blob/4b91e3f17bc825bc0d41a437cd01fa25e1221d79/README.md","group":"agents","id":"oghidra","json_url":"https://awesomerea.org/resources/oghidra/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/oghidra/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/oghidra/index.md","name":"OGhidra","name_zh":"OGhidra Ghidra 大模型分析集成","record_type":"resource","relationship":"independent-agent-integration","requirements":["Python 3.12 or later and Ghidra; version 12.0.3 is recommended.","Java 21 is required to build the Ghidra 12.0.3 extension.","Configure a local or external AI provider; the MCP backend requires a running Ghidra client, while PyGhidra requires a valid Ghidra project or a binary to import.","BSD 3-Clause with a commercial license alternative, per LICENSE."],"requirements_zh":["需要 Python 3.12 或更高版本及 Ghidra；推荐使用 Ghidra 12.0.3。","构建适用于 Ghidra 12.0.3 的扩展需要 Java 21。","需要配置本地或外部 AI 服务；MCP 后端要求 Ghidra 客户端保持运行，PyGhidra 后端则需要有效的 Ghidra 项目或可导入的二进制文件。","依 LICENSE 采用 BSD 3-Clause，并提供商业许可选项。"],"targets":["binary"],"url":"https://github.com/llnl/OGhidra","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"agent-workflows","description_en":"aiDAPal is an IDA Pro plugin that uses a locally hosted language model trained for Hex-Rays pseudocode to assist with code analysis. It presents generated changes for acceptance before updating the pseudocode.","description_zh":"aiDAPal 是一款 IDA Pro 插件，使用针对 Hex-Rays 伪代码训练、在本地运行的语言模型辅助代码分析。用户可以先决定是否接受生成的修改，再更新伪代码。","entry_url":"https://awesomerea.org/resources/aidapal/","entry_url_zh":"https://awesomerea.org/zh/resources/aidapal/","evidence_url":"https://github.com/atredispartners/aidapal/blob/7cc7c34fb79f5e4cc94837689989f75cc8900b1b/README.md","group":"agents","id":"aidapal","json_url":"https://awesomerea.org/resources/aidapal/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/aidapal/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/aidapal/index.md","name":"aiDAPal","name_zh":"aiDAPal IDA Pro 本地模型插件","record_type":"resource","relationship":"independent-agent-integration","requirements":["IDA Pro with Hex-Rays is required.","Ollama must be configured with the downloaded model weights and modelfile.","The plugin requires the Python requests package; its default configuration connects to a local Ollama service.","The repository has no license file."],"requirements_zh":["需要安装带有 Hex-Rays 的 IDA Pro。","需要下载模型权重和 modelfile，并在 Ollama 中完成配置。","插件需要 Python requests 包；默认配置连接本地 Ollama 服务。","仓库中没有许可证文件。"],"targets":["binary"],"url":"https://github.com/atredispartners/aidapal","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/XProger/OpenLara/blob/3b268ca4bf986c380f44a26ffd9218bf6d376249/src/format.h"],"category":"reconstruction-cases","class":"game","description_en":"Open-source engine for classic Tomb Raider, with a WebGL build and a standalone release. Its format code defines object types for Tomb Raider 1 through 4.","description_zh":"经典《古墓丽影》的开源引擎，提供 WebGL 版本和独立版本。其格式代码定义了《古墓丽影》1 至 4 代的对象类型。","entry_url":"https://awesomerea.org/resources/openlara/","entry_url_zh":"https://awesomerea.org/zh/resources/openlara/","evidence_url":"https://github.com/XProger/OpenLara/blob/3b268ca4bf986c380f44a26ffd9218bf6d376249/README.md","group":"cases","id":"openlara","json_url":"https://awesomerea.org/resources/openlara/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/openlara/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/openlara/index.md","name":"OpenLara: Tomb Raider engine reimplementation","name_zh":"OpenLara《古墓丽影》开源引擎","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirements":["The repository declares the BSD-2-Clause license."],"requirements_zh":["仓库声明采用 BSD-2-Clause 许可证。"],"targets":["game"],"url":"https://github.com/XProger/OpenLara","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","class":"game","description_en":"Thyme is an open source reimplementation of Command & Conquer Generals: Zero Hour. It rewrites the game from the ground up and uses the original binary for functions it has not yet replaced.","description_zh":"Thyme 是《命令与征服：将军之绝命时刻》的开源重实现。项目从底层重写游戏，并借助原版二进制文件提供尚未重写的功能。","entry_url":"https://awesomerea.org/resources/thyme/","entry_url_zh":"https://awesomerea.org/zh/resources/thyme/","evidence_url":"https://github.com/TheAssemblyArmada/Thyme/blob/ccef1e11c1355c6db577a057c06e7d790f1a0333/README.md","group":"cases","id":"thyme","json_url":"https://awesomerea.org/resources/thyme/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/thyme/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/thyme/index.md","name":"Thyme: Command & Conquer Generals: Zero Hour reimplementation","name_zh":"Thyme《将军》引擎重实现","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Running Thyme requires an installed copy of Command & Conquer Generals: Zero Hour.","Building a working binary requires Microsoft Visual Studio 2017 or later.","Thyme currently runs only on Windows; its custom launcher supports the English disc version patched to 1.04.","The repository is archived.","License: GPL-2.0."],"requirements_zh":["运行 Thyme 需要先安装《命令与征服：将军之绝命时刻》。","构建可用的二进制文件需要 Microsoft Visual Studio 2017 或更新版本。","Thyme 目前只能在 Windows 上运行；其自定义启动器支持已更新至 1.04 版的英文光盘版游戏。","仓库已归档。","许可证：GPL-2.0。"],"targets":["game"],"url":"https://github.com/TheAssemblyArmada/Thyme","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","class":"game","description_en":"Chariot is an open-source effort to reimplement the engine of the original Age of Empires (1997). It aims to support ports and enhancements; the README describes it as a work in progress with asset-loading demonstrations, not a playable game.","description_zh":"Chariot 是一个开源项目，旨在重新实现初代《帝国时代》（1997）的游戏引擎。项目希望支持移植和功能改进；README 称其仍在开发中，当时只能展示游戏资源加载，尚不能游玩。","entry_url":"https://awesomerea.org/resources/chariot/","entry_url_zh":"https://awesomerea.org/zh/resources/chariot/","evidence_url":"https://github.com/ChariotEngine/Chariot/blob/26b98d09d9a4d139bd4636fec0a9f30dc85db1d0/README.md","group":"cases","id":"chariot","json_url":"https://awesomerea.org/resources/chariot/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/chariot/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/chariot/index.md","name":"Chariot: Age of Empires engine reimplementation","name_zh":"Chariot《帝国时代》引擎重实现","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Building requires Rust, a supported C/C++ compiler, and SDL2.","Running requires an original Age of Empires CD for game data.","The README reports that the project was not yet playable as of 2016-07-08.","The README declares an MIT license."],"requirements_zh":["构建需要 Rust、受支持的 C/C++ 编译器和 SDL2。","运行需要初代《帝国时代》原版光盘提供游戏数据。","README 记载，截至 2016 年 7 月 8 日，项目尚不能游玩。","README 声明采用 MIT 许可证。"],"targets":["game"],"url":"https://github.com/ChariotEngine/Chariot","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","class":"game","description_en":"OpenDiablo2 is a cross-platform ARPG engine written in Go that supports playing Diablo 2. The project is being split into a separate engine and toolset, called Abyss Engine, and a game project retaining the OpenDiablo2 name.","description_zh":"OpenDiablo2 是一个用 Go 编写的跨平台动作角色扮演游戏引擎，支持运行 Diablo 2。项目正在拆分为名为 Abyss Engine 的引擎与工具集，以及继续使用 OpenDiablo2 名称的游戏项目。","entry_url":"https://awesomerea.org/resources/opendiablo2/","entry_url_zh":"https://awesomerea.org/zh/resources/opendiablo2/","evidence_url":"https://github.com/OpenDiablo2/OpenDiablo2/blob/7f92c571bf04057a7fbdfb5d25a486f7d775e3c3/README.md","group":"cases","id":"opendiablo2","json_url":"https://awesomerea.org/resources/opendiablo2/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/opendiablo2/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/opendiablo2/index.md","name":"OpenDiablo2: Diablo 2 engine reimplementation","name_zh":"OpenDiablo2 暗黑破坏神 2 引擎","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Playing Diablo 2 requires a legally purchased copy of Diablo 2 and its Lord of Destruction expansion installed on the computer.","The project does not include the assets or content needed to play Diablo 2.","The repository is archived.","License: GPL-3.0."],"requirements_zh":["运行 Diablo 2 需要在计算机上安装合法购买的 Diablo 2 及其 Lord of Destruction 资料片。","项目不包含运行 Diablo 2 所需的素材或游戏内容。","仓库已归档。","许可证：GPL-3.0。"],"targets":["game"],"url":"https://github.com/OpenDiablo2/OpenDiablo2","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"firmware","description_en":"Black Magic Debug is a self-contained debugger for microcontrollers. It detects and configures connected targets without configuration files.","description_zh":"Black Magic Debug 是一套用于微控制器的独立调试工具。它无需配置文件，即可检测并配置已连接的目标设备。","entry_url":"https://awesomerea.org/resources/black-magic-debug/","entry_url_zh":"https://awesomerea.org/zh/resources/black-magic-debug/","evidence_url":"https://github.com/blackmagic-debug/blackmagic/blob/ac8d0ba3f22047e5e961856e4e4ff7c9d78b9c67/README.md","group":"tools","id":"black-magic-debug","json_url":"https://awesomerea.org/resources/black-magic-debug/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/black-magic-debug/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/black-magic-debug/index.md","name":"Black Magic Debug","name_zh":"Black Magic Debug 微控制器调试工具","record_type":"resource","relationship":"foundation","requirements":["Needs a connected microcontroller target.","The project moved to Codeberg, and this GitHub repository is archived.","GPL-3.0 per COPYING, with BSD and MIT license files for parts of the code."],"requirements_zh":["需要连接微控制器目标。","项目已迁至 Codeberg，此 GitHub 仓库已归档。","依 COPYING 采用 GPL-3.0，部分代码另有 BSD 和 MIT 许可证文件。"],"targets":["firmware"],"url":"https://codeberg.org/blackmagic-debug/blackmagic","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"firmware","description_en":"OpenOCD is a tool for programming and debugging embedded targets through hardware debug adapters. It supports flash programming, breakpoints, single stepping, and remote debugging through GDB.","description_zh":"OpenOCD 是通过硬件调试适配器对嵌入式目标进行编程和调试的工具。它支持闪存编程、断点、单步执行，以及通过 GDB 进行远程调试。","entry_url":"https://awesomerea.org/resources/openocd/","entry_url_zh":"https://awesomerea.org/zh/resources/openocd/","evidence_url":"https://github.com/openocd-org/openocd/blob/9f2d8762b3a75b4d7b2155affcf3d8bb8eb8849a/README.md","group":"tools","id":"openocd","json_url":"https://awesomerea.org/resources/openocd/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/openocd/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/openocd/index.md","name":"OpenOCD","name_zh":"OpenOCD 片上调试工具","record_type":"resource","relationship":"foundation","requirements":["Hardware access requires a supported adapter and a target configuration.","Source builds require GCC or Clang, make, libtool, pkg-config 0.23 or newer or pkgconf, and libjim 0.79 or newer.","GPL-2.0-or-later per COPYING."],"requirements_zh":["访问硬件需要受支持的适配器和目标配置。","从源码构建需要 GCC 或 Clang、make、libtool、pkg-config 0.23 或更新版本（或 pkgconf），以及 libjim 0.79 或更新版本。","依 COPYING 采用 GPL-2.0-or-later。"],"targets":["firmware"],"url":"https://github.com/openocd-org/openocd","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"protocol-analysis","description_en":"LogicAnalyzer is a hardware and software tool for capturing digital signals and decoding communication protocols. It supports triggered capture, multiple channels, and Sigrok protocol decoders.","description_zh":"LogicAnalyzer 是一套用于采集数字信号和解析通信协议的软硬件工具。它支持触发采集、多通道采集和 Sigrok 协议解码器。","entry_url":"https://awesomerea.org/resources/logicanalyzer/","entry_url_zh":"https://awesomerea.org/zh/resources/logicanalyzer/","evidence_url":"https://github.com/gusmanb/logicanalyzer/blob/4e88df784e4879c1f180456a72d71910dd15faf1/README.md","group":"tools","id":"logicanalyzer","json_url":"https://awesomerea.org/resources/logicanalyzer/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/logicanalyzer/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/logicanalyzer/index.md","name":"LogicAnalyzer","name_zh":"LogicAnalyzer 逻辑分析仪","record_type":"resource","relationship":"foundation","requirements":["Requires supported Pico hardware, matching firmware, and capture software.","Licensed under GPL-3.0."],"requirements_zh":["需要受支持的 Pico 硬件、匹配的固件和采集软件。","采用 GPL-3.0 许可证。"],"targets":["protocol"],"url":"https://github.com/gusmanb/logicanalyzer","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"protocol-analysis","description_en":"BtleJuice is a framework for intercepting Bluetooth Low Energy GATT operations between devices. Its web interface displays intercepted operations and supports replay, data modification, and export.","description_zh":"BtleJuice 是用于拦截设备间蓝牙低功耗 GATT 操作的框架。其网页界面可显示截获的操作，并支持重放、修改数据和导出记录。","entry_url":"https://awesomerea.org/resources/btlejuice/","entry_url_zh":"https://awesomerea.org/zh/resources/btlejuice/","evidence_url":"https://github.com/DigitalSecurity/btlejuice/blob/981b2e3fcaeca3d0c8faf6d61b4efd8130984bf4/README.md","group":"tools","id":"btlejuice","json_url":"https://awesomerea.org/resources/btlejuice/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/btlejuice/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/btlejuice/index.md","name":"BtleJuice","name_zh":"BtleJuice 框架","record_type":"resource","relationship":"foundation","requirements":["Requires Node.js 4.3.2 or newer, npm, and the listed Bluetooth system dependencies.","The core and proxy require separate machines with two Bluetooth 4.0 or newer adapters.","The proxy does not work in a Docker container.","The repository is archived and has no license file."],"requirements_zh":["需要 Node.js 4.3.2 或更新版本、npm，以及 README 所列的蓝牙系统依赖。","核心组件和代理需要分别运行在两台机器上，并使用两个蓝牙 4.0 或更新版本的适配器。","代理无法在 Docker 容器中运行。","仓库已归档，且没有许可证文件。"],"targets":["protocol"],"url":"https://github.com/DigitalSecurity/btlejuice","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","additional_evidence_urls":["https://github.com/grishka/NearDrop/blob/add655c6c5a40b9ba03c0329b598f2817185f5a9/PROTOCOL.md"],"category":"protocol-analysis","description_en":"macOS menu bar app that partially implements Nearby Share and Quick Share to exchange files and links with Android devices. Its protocol document describes the protocol as understood from Chromium sources and a decompiled Google Services Framework APK.","description_zh":"macOS 菜单栏应用，部分实现 Nearby Share 和 Quick Share，可与 Android 设备交换文件和链接。其协议文档根据 Chromium 源码和反编译的 Google Services Framework APK 描述该协议。","entry_url":"https://awesomerea.org/resources/neardrop/","entry_url_zh":"https://awesomerea.org/zh/resources/neardrop/","evidence_url":"https://github.com/grishka/NearDrop/blob/add655c6c5a40b9ba03c0329b598f2817185f5a9/README.md","group":"tools","id":"neardrop","json_url":"https://awesomerea.org/resources/neardrop/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/neardrop/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/neardrop/index.md","name":"NearDrop","name_zh":"NearDrop Nearby Share 协议实现","record_type":"resource","relationship":"foundation","requirements":["Requires a Mac and an Android device on the same Wi-Fi network.","Android devices must be publicly visible when connecting through NearDrop’s QR code.","Works over Wi-Fi LAN only and remains visible to everyone on the network while running.","License: Unlicense."],"requirements_zh":["需要 Mac 和 Android 设备连接到同一个 Wi-Fi 网络。","通过 NearDrop 的二维码连接时，Android 设备须设为公开可见。","仅支持 Wi-Fi 局域网；运行期间，网络中的所有人都能看到该设备。","许可证：Unlicense。"],"targets":["protocol"],"url":"https://github.com/grishka/NearDrop","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"agent-mcp","description_en":"An MCP server plugin for x64dbg and x32dbg that lets external applications and AI agents control debugging through HTTP. It provides tools for execution, memory, registers, breakpoints, and disassembly, along with debugger context resources and workflow prompts.","description_zh":"x64dbg MCP Server Plugin 是适用于 x64dbg 和 x32dbg 的 MCP 服务器插件，使外部应用和 AI 智能体能够通过 HTTP 控制调试过程。它提供执行控制、内存、寄存器、断点和反汇编工具，以及调试器上下文资源和工作流程提示。","entry_url":"https://awesomerea.org/resources/x64dbg-mcp-setsuna/","entry_url_zh":"https://awesomerea.org/zh/resources/x64dbg-mcp-setsuna/","evidence_url":"https://github.com/SetsunaYukiOvO/x64dbg-mcp/blob/56fe2355c90126d3b1793eba60b5a4a4d3443d9a/README.md","group":"agents","id":"x64dbg-mcp-setsuna","json_url":"https://awesomerea.org/resources/x64dbg-mcp-setsuna/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/x64dbg-mcp-setsuna/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/x64dbg-mcp-setsuna/index.md","name":"x64dbg MCP Server Plugin","name_zh":"x64dbg MCP 服务器插件","record_type":"resource","relationship":"independent-agent-integration","requirements":["Requires a 64-bit Windows 10 or 11 host and x64dbg or x32dbg build 2023 or later.","Building requires CMake 3.15 or later, Visual Studio 2022 with the C++ Desktop Development workload, vcpkg, and Git.","Debugging operations require the debugger to be paused; memory and register writes are disabled by default.","License: MIT."],"requirements_zh":["需要 64 位 Windows 10 或 11 主机，以及 2023 年或更新版本的 x64dbg 或 x32dbg。","构建需要 CMake 3.15 或更新版本、安装了 C++ 桌面开发工作负载的 Visual Studio 2022、vcpkg 和 Git。","执行调试操作时，调试器必须处于暂停状态；内存和寄存器写入默认禁用。","许可证：MIT。"],"targets":["binary"],"url":"https://github.com/SetsunaYukiOvO/x64dbg-mcp","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"agent-mcp","description_en":"JEB-MCP is an MCP server and JEB Pro script that lets MCP clients inspect and rename elements of Android apps in JEB. Its documented commands include reading decompiled code, examining classes and methods, and renaming them.","description_zh":"JEB-MCP 是由 MCP 服务器和 JEB Pro 脚本组成的集成工具，让 MCP 客户端在 JEB 中查看和重命名 Android 应用的内容。README 列出的命令包括读取反编译代码、检查类与方法，以及重命名。","entry_url":"https://awesomerea.org/resources/jebmcp/","entry_url_zh":"https://awesomerea.org/zh/resources/jebmcp/","evidence_url":"https://github.com/flankerhqd/jebmcp/blob/e2fdb96390cfe4b92b754a0895ee9a22f6ce959f/README.md","group":"agents","id":"jebmcp","json_url":"https://awesomerea.org/resources/jebmcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/jebmcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/jebmcp/index.md","name":"JEB-MCP","name_zh":"JEB-MCP JEB Pro 集成","record_type":"resource","relationship":"independent-agent-integration","requirements":["JEB Pro with the project script started in its GUI.","Python 3.11 or later and uv.","An MCP client configured to connect to the server.","The repository has no license file."],"requirements_zh":["需要 JEB Pro，并在其图形界面中启动项目脚本。","需要 Python 3.11 或更高版本及 uv。","需要配置连接该服务器的 MCP 客户端。","仓库中没有许可证文件。"],"targets":["app"],"url":"https://github.com/flankerhqd/jebmcp","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"agent-workflows","description_en":"re-shell is a Nix flake development environment that provides Claude Code with reverse engineering tools and workflows. Its skills select guidance for Windows binaries, Android packages, and web captures based on the files being analyzed.","description_zh":"re-shell 是一个基于 Nix flake 的开发环境，为 Claude Code 提供逆向工程工具和工作流程。它会根据待分析的文件，为 Windows 二进制文件、Android 安装包和网页流量记录启用相应指导。","entry_url":"https://awesomerea.org/resources/re-shell/","entry_url_zh":"https://awesomerea.org/zh/resources/re-shell/","evidence_url":"https://github.com/schlarpc/re-shell/blob/fd9d8583d120d00874c38b6dc6d70565b41f8bb4/README.md","group":"agents","id":"re-shell","json_url":"https://awesomerea.org/resources/re-shell/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/re-shell/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/re-shell/index.md","name":"re-shell","name_zh":"re-shell 逆向工程环境","record_type":"resource","relationship":"independent-agent-integration","requirements":["Nix with the nix-command and flakes experimental features enabled.","Claude Code for the file-specific skills and workflows.","The repository has no license file."],"requirements_zh":["需要启用 nix-command 和 flakes 实验性功能的 Nix。","文件专用技能和工作流程需要 Claude Code。","仓库中没有许可证文件。"],"targets":["app","binary","protocol","website"],"url":"https://github.com/schlarpc/re-shell","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"agent-workflows","description_en":"ghidra-rpc is a CLI integration that lets AI coding assistants use a persistent Ghidra session for binary analysis. It returns structured JSON for tasks such as decompilation, symbol annotation, type recovery, patching, and binary version comparison.","description_zh":"ghidra-rpc 是一个命令行集成工具，让 AI 编程助手通过持续运行的 Ghidra 会话分析二进制文件。它以结构化 JSON 返回反编译、符号标注、类型恢复、修补和二进制版本比较等操作的结果。","entry_url":"https://awesomerea.org/resources/ghidra-rpc/","entry_url_zh":"https://awesomerea.org/zh/resources/ghidra-rpc/","evidence_url":"https://github.com/cellebrite-labs/ghidra-rpc/blob/fa3866243dcfcbc876baa7b13ae0deac2c443cd8/README.md","group":"agents","id":"ghidra-rpc","json_url":"https://awesomerea.org/resources/ghidra-rpc/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/ghidra-rpc/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/ghidra-rpc/index.md","name":"ghidra-rpc","name_zh":"ghidra-rpc Ghidra 命令行集成","record_type":"resource","relationship":"independent-agent-integration","requirements":["Requires Ghidra 11+, Python 3.11+, Java 17+, and uv.","An AI coding assistant must be able to run shell commands to drive a session.","The repository has no license file."],"requirements_zh":["需要 Ghidra 11 或更高版本、Python 3.11 或更高版本、Java 17 或更高版本，以及 uv。","用于驱动会话的 AI 编程助手需要能够运行 shell 命令。","仓库中没有许可证文件。"],"targets":["binary"],"url":"https://github.com/cellebrite-labs/ghidra-rpc","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"Bloaty is a binary size profiler that attributes file and memory usage to sources such as symbols, compilation units, and sections. It can compare sizes between binaries and supports ELF and Mach-O, with experimental PE/COFF and WebAssembly support.","description_zh":"Bloaty 是一款二进制文件体积分析工具，可按符号、编译单元和节等来源统计文件大小与内存占用。它还能比较二进制文件的体积变化，支持 ELF 和 Mach-O，并以实验性方式支持 PE/COFF 和 WebAssembly。","entry_url":"https://awesomerea.org/resources/bloaty/","entry_url_zh":"https://awesomerea.org/zh/resources/bloaty/","evidence_url":"https://github.com/google/bloaty/blob/ccb49b0be3d5bc0dd156bcf16f1515726c395ec5/README.md","group":"tools","id":"bloaty","json_url":"https://awesomerea.org/resources/bloaty/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/bloaty/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bloaty/index.md","name":"Bloaty","name_zh":"Bloaty 二进制体积分析工具","record_type":"resource","relationship":"foundation","requirements":["CMake is required to build the project.","Check out the Git submodules when building from a clone that did not include them.","PE/COFF and WebAssembly support is experimental.","The repository declares the Apache-2.0 license."],"requirements_zh":["构建项目需要 CMake。","如果克隆仓库时未包含 Git 子模块，构建前需检出这些子模块。","PE/COFF 和 WebAssembly 支持仍处于实验阶段。","仓库声明采用 Apache-2.0 许可证。"],"targets":["binary"],"url":"https://github.com/google/bloaty","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"jvm","description_en":"Soot is a Java optimization framework for analyzing and transforming Java bytecode. It provides four intermediate representations, including forms suited to optimization, decompilation, and code inspection.","description_zh":"Soot 是用于分析和转换 Java 字节码的优化框架。它提供四种中间表示，可用于优化、反编译和代码检查。","entry_url":"https://awesomerea.org/resources/soot/","entry_url_zh":"https://awesomerea.org/zh/resources/soot/","evidence_url":"https://github.com/soot-oss/soot/blob/0199d84f6c5a7a9e967581e67877c475518f2bb8/README.md","group":"tools","id":"soot","json_url":"https://awesomerea.org/resources/soot/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/soot/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/soot/index.md","name":"Soot","name_zh":"Soot Java 字节码分析框架","record_type":"resource","relationship":"foundation","requirements":["Requires a Java runtime and Java classes or bytecode to analyze.","Available as a dependency through Maven, Gradle, or SBT, or as a JAR.","The repository declares the LGPL-2.1 license."],"requirements_zh":["需要 Java 运行环境，以及待分析的 Java 类或字节码。","可通过 Maven、Gradle 或 SBT 引入依赖，也可使用 JAR 文件。","仓库声明采用 LGPL-2.1 许可证。"],"targets":["app","binary"],"url":"https://github.com/soot-oss/soot","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"bingrep is a command-line tool for inspecting and colorizing binary files. It displays details from ELF, Mach, Unix and BSD archives, and PE files, with experimental views of hexadecimal data and file offset ranges.","description_zh":"bingrep 是用于查看二进制文件并以颜色区分其内容的命令行工具。它可显示 ELF、Mach、Unix 和 BSD 归档文件及 PE 文件的信息，并提供实验性的十六进制数据和文件偏移范围视图。","entry_url":"https://awesomerea.org/resources/bingrep/","entry_url_zh":"https://awesomerea.org/zh/resources/bingrep/","evidence_url":"https://github.com/m4b/bingrep/blob/99d10541c7d442c50f732e62c507f1d62001413e/README.md","group":"tools","id":"bingrep","json_url":"https://awesomerea.org/resources/bingrep/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/bingrep/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/bingrep/index.md","name":"bingrep","name_zh":"bingrep 二进制查看工具","record_type":"resource","relationship":"foundation","requirements":["Building requires rustc 1.74 or later.","PE support is debug only.","The repository declares the MIT license."],"requirements_zh":["构建需要 rustc 1.74 或更高版本。","PE 支持仅限调试信息。","仓库声明采用 MIT 许可证。"],"targets":["binary"],"url":"https://github.com/m4b/bingrep","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"binary-libraries","description_en":"libPeConv is a Windows library for loading and manipulating PE files. It supports tasks such as section remapping, relocation, import loading, resource parsing, and rebuilding import address tables from memory dumps.","description_zh":"libPeConv 是用于加载和处理 PE 文件的 Windows 库。它支持节区重映射、重定位、导入项加载、资源解析，以及从内存转储中重建导入地址表。","entry_url":"https://awesomerea.org/resources/libpeconv/","entry_url_zh":"https://awesomerea.org/zh/resources/libpeconv/","evidence_url":"https://github.com/hasherezade/libpeconv/blob/0fc25f680e03699d33ef3b2034a6724365f3d1a4/README.md","group":"tools","id":"libpeconv","json_url":"https://awesomerea.org/resources/libpeconv/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/libpeconv/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/libpeconv/index.md","name":"libPeConv","name_zh":"libPeConv PE 文件处理库","record_type":"resource","relationship":"foundation","requirements":["Requires Windows.","Applications that use MUI are unsupported.","License: BSD-2-Clause."],"requirements_zh":["需要 Windows。","不支持使用 MUI 的应用程序。","许可证：BSD-2-Clause。"],"targets":["binary"],"url":"https://github.com/hasherezade/libpeconv","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"Viper is a framework for binary analysis and for organizing malware samples, exploit samples, and research scripts. The Viper 1.x repository is archived and development has ended.","description_zh":"Viper 是一个二进制分析框架，也用于整理恶意软件样本、漏洞利用样本和研究脚本。Viper 1.x 仓库已归档，开发已停止。","entry_url":"https://awesomerea.org/resources/viper-framework/","entry_url_zh":"https://awesomerea.org/zh/resources/viper-framework/","evidence_url":"https://github.com/viper-framework/viper/blob/fdd7855249340cdf114447822026ded66f17d6a3/README.md","group":"tools","id":"viper-framework","json_url":"https://awesomerea.org/resources/viper-framework/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/viper-framework/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/viper-framework/index.md","name":"Viper","name_zh":"Viper 二进制分析与样本管理框架","record_type":"resource","relationship":"foundation","requirements":["Install with pip3.","Viper 1.x is archived and no longer developed; the refactor continues as Viper 2.","BSD-3-Clause per LICENSE."],"requirements_zh":["通过 pip3 安装。","Viper 1.x 已归档并停止开发；重构版本为 Viper 2。","依 LICENSE 采用 BSD-3-Clause。"],"targets":["binary"],"url":"https://github.com/viper-framework/viper","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"android","description_en":"DroidLysis is a pre-analysis tool for Android apps that disassembles samples, organizes their contents, and flags code patterns for further inspection. It accepts APK, DEX, ODEX, ARM executable, ZIP, RAR, and directory inputs.","description_zh":"DroidLysis 是一款安卓应用预分析工具，可反汇编样本、整理文件内容，并标出值得进一步查看的代码模式。它支持 APK、DEX、ODEX、ARM 可执行文件、ZIP、RAR 和目录输入。","entry_url":"https://awesomerea.org/resources/droidlysis/","entry_url_zh":"https://awesomerea.org/zh/resources/droidlysis/","evidence_url":"https://github.com/cryptax/droidlysis/blob/346c2b6350f70e2854f58d33dab477fe6a7edfd6/README.md","group":"tools","id":"droidlysis","json_url":"https://awesomerea.org/resources/droidlysis/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/droidlysis/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/droidlysis/index.md","name":"DroidLysis","name_zh":"DroidLysis 安卓应用预分析工具","record_type":"resource","relationship":"foundation","requirements":["Requires Python 3 and the listed system packages, including a Java runtime.","Requires Apktool and Baksmali, with their locations set in the configuration file; Dex2jar is optional.","Known third-party SDKs are excluded from analysis by default unless the relevant option is enabled.","The repository declares the MIT license."],"requirements_zh":["需要 Python 3 和 README 列出的系统软件包，包括 Java 运行环境。","需要安装 Apktool 和 Baksmali，并在配置文件中设置其位置；Dex2jar 为可选工具。","默认不分析已知第三方 SDK；可通过相应选项将其纳入分析。","仓库声明采用 MIT 许可证。"],"targets":["app","binary"],"url":"https://github.com/cryptax/droidlysis","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"game-analysis","description_en":"PKHeX is a C# Windows Forms editor for Pokémon core-series save data. It can edit and save supported files, import Pokémon and teams, and convert data between game generations.","description_zh":"PKHeX 是一款用 C# 编写的 Windows Forms 宝可梦系列游戏存档编辑器。它可以编辑并保存受支持的文件、导入宝可梦与队伍数据，并在不同游戏世代之间转换数据。","entry_url":"https://awesomerea.org/resources/pkhex/","entry_url_zh":"https://awesomerea.org/zh/resources/pkhex/","evidence_url":"https://github.com/kwsch/PKHeX/blob/0660d1e1f4924b8478daec73281bb8071a82ad19/README.md","group":"tools","id":"pkhex","json_url":"https://awesomerea.org/resources/pkhex/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/pkhex/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/pkhex/index.md","name":"PKHeX","name_zh":"PKHeX 宝可梦存档编辑器","record_type":"resource","relationship":"foundation","requirements":["Requires .NET 10.","Save files must be free of console-specific encryption; a save-data manager is needed to move saves to and from a console.","License: GPLv3."],"requirements_zh":["需要 .NET 10。","存档文件不能带有主机专用密钥加密；从主机导入或导出存档需要使用存档管理工具。","许可证：GPLv3。"],"targets":["game"],"url":"https://github.com/kwsch/PKHeX","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"web-analysis","description_en":"Thug is a Python low-interaction honeyclient that mimics a web browser to detect and emulate malicious content. It supports the study of client-side attacks.","description_zh":"Thug 是一款用 Python 编写的低交互蜜罐客户端，通过模拟网页浏览器来检测和仿真恶意内容。它可用于研究针对客户端的攻击。","entry_url":"https://awesomerea.org/resources/thug/","entry_url_zh":"https://awesomerea.org/zh/resources/thug/","evidence_url":"https://github.com/buffer/thug/blob/5122baa855a0f0803502e24c6ffe0b1ff9af8e29/README.rst","group":"tools","id":"thug","json_url":"https://awesomerea.org/resources/thug/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/thug/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/thug/index.md","name":"Thug","name_zh":"Thug 低交互蜜罐客户端","record_type":"resource","relationship":"foundation","requirements":["GPL-2.0 per the README."],"requirements_zh":["依 README 采用 GPL-2.0。"],"targets":["website"],"url":"https://github.com/buffer/thug","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dynamic-analysis","description_en":"Cuckoo3 is a malware analysis tool that tests suspicious files and links in sandboxed platform emulators. It reports what the files or websites did during the test.","description_zh":"Cuckoo3 是一款恶意软件分析工具，可在沙箱化的平台模拟器中检查可疑文件和链接。它会生成报告，记录文件或网站在检查过程中的行为。","entry_url":"https://awesomerea.org/resources/cuckoo3/","entry_url_zh":"https://awesomerea.org/zh/resources/cuckoo3/","evidence_url":"https://github.com/cert-ee/cuckoo3/blob/86be764b78d08979b15aa0b61f76ee7d67c4c17b/README.md","group":"tools","id":"cuckoo3","json_url":"https://awesomerea.org/resources/cuckoo3/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/cuckoo3/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cuckoo3/index.md","name":"Cuckoo3","name_zh":"Cuckoo3 恶意软件分析工具","record_type":"resource","relationship":"foundation","requirements":["Requires a Linux (Ubuntu) host with Python 3.10 and Windows sandboxes.","The README says it is not ready for production use.","License: EUPL-1.2."],"requirements_zh":["需要运行 Python 3.10 的 Linux（Ubuntu）主机和 Windows 沙箱。","README 指出它尚不适合生产环境。","许可证：EUPL-1.2。"],"targets":["binary","website"],"url":"https://github.com/cert-ee/cuckoo3","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"dynamic-analysis","description_en":"Cuckoo Sandbox is an automated malware analysis system that executes suspicious files in an isolated environment and reports their behavior.","description_zh":"Cuckoo Sandbox 是自动化恶意软件分析系统，可在隔离环境中执行可疑文件并报告其行为。","entry_url":"https://awesomerea.org/resources/cuckoo-sandbox/","entry_url_zh":"https://awesomerea.org/zh/resources/cuckoo-sandbox/","evidence_url":"https://github.com/cuckoosandbox/cuckoo/blob/50452a39ff7c3e0c4c94d114bc6317101633b958/README.rst","group":"tools","id":"cuckoo-sandbox","json_url":"https://awesomerea.org/resources/cuckoo-sandbox/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/cuckoo-sandbox/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/cuckoo-sandbox/index.md","name":"Cuckoo Sandbox","name_zh":"Cuckoo Sandbox 恶意软件分析沙箱","record_type":"resource","relationship":"foundation","requirements":["The README marks Cuckoo Sandbox 2.x as unmaintained and the repository is archived.","GPL-3.0 per docs/LICENSE."],"requirements_zh":["README 标明 Cuckoo Sandbox 2.x 已无人维护，仓库已归档。","依 docs/LICENSE 采用 GPL-3.0。"],"targets":["binary"],"url":"https://github.com/cuckoosandbox/cuckoo","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"fq is a command-line tool and query language for inspecting and decoding binary formats. It provides a structural hex viewer, bit-level decoding, nested format parsing, and an interactive query interface.","description_zh":"fq 是用于查看和解码二进制格式的命令行工具及查询语言。它提供结构化十六进制视图、位级解码、嵌套格式解析和交互式查询界面。","entry_url":"https://awesomerea.org/resources/fq/","entry_url_zh":"https://awesomerea.org/zh/resources/fq/","evidence_url":"https://github.com/wader/fq/blob/3f518c8d01f608b3402aa8317314f100c41d6dd0/README.md","group":"tools","id":"fq","json_url":"https://awesomerea.org/resources/fq/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/fq/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/fq/index.md","name":"fq","name_zh":"fq 二进制格式分析工具","record_type":"resource","relationship":"foundation","requirements":["Go 1.22 or later is required to build from source.","The repository declares the MIT License."],"requirements_zh":["从源代码构建需要 Go 1.22 或更高版本。","仓库声明采用 MIT 许可证。"],"targets":["binary","protocol"],"url":"https://github.com/wader/fq","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"native-analysis","description_en":"Unpacks Inno Setup installers on non-Windows systems without running them. It also handles modified variants, including GOG.com's Inno Setup-based game installers.","description_zh":"在非 Windows 系统上解包 Inno Setup 安装程序，无需运行它们。它也支持修改版安装包，包括 GOG.com 基于 Inno Setup 的游戏安装包。","entry_url":"https://awesomerea.org/resources/innoextract/","entry_url_zh":"https://awesomerea.org/zh/resources/innoextract/","evidence_url":"https://github.com/dscharrer/innoextract/blob/6e9e34ed0876014fdb46e684103ef8c3605e382e/README.md","group":"tools","id":"innoextract","json_url":"https://awesomerea.org/resources/innoextract/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/innoextract/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/innoextract/index.md","name":"innoextract","name_zh":"innoextract Inno Setup 解包工具","record_type":"resource","relationship":"foundation","requirements":["Building requires Boost 1.37 or newer, CMake 2.8 or newer, and a working C++ compiler.","liblzma is optional, but most installers made with newer Inno Setup versions cannot be extracted without it.","Individual components cannot be selected for extraction, and filtering by name is limited.","License: ZLIB."],"requirements_zh":["构建需要 Boost 1.37 或更新版本、CMake 2.8 或更新版本，以及可用的 C++ 编译器。","liblzma 是可选依赖，但缺少它时无法解包大多数由较新版本 Inno Setup 制作的安装包。","无法单独选择组件进行解包，按名称筛选的功能也有限。","许可证：ZLIB。"],"targets":["binary"],"url":"https://github.com/dscharrer/innoextract","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"binary-libraries","description_en":"Metasm is a Ruby suite for assembling, disassembling, debugging, and modifying executable binaries. It supports formats including PE, ELF, Mach-O, and shellcode.","description_zh":"Metasm 是一套用于汇编、反汇编、调试和修改可执行二进制文件的 Ruby 工具。它支持 PE、ELF、Mach-O 和 shellcode 等格式。","entry_url":"https://awesomerea.org/resources/metasm/","entry_url_zh":"https://awesomerea.org/zh/resources/metasm/","evidence_url":"https://github.com/jjyg/metasm/blob/a70271c239ba15a496975ce23018eb263167ad2c/README","group":"tools","id":"metasm","json_url":"https://awesomerea.org/resources/metasm/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/metasm/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/metasm/index.md","name":"Metasm","name_zh":"Metasm Ruby 汇编处理套件","record_type":"resource","relationship":"foundation","requirements":["Ruby is required to use the suite and its sample scripts.","LGPL per the README; the LICENCE file carries LGPL-2.1."],"requirements_zh":["使用该套件及其示例脚本需要 Ruby。","依 README 采用 LGPL；LICENCE 文件为 LGPL-2.1。"],"targets":["binary"],"url":"https://github.com/jjyg/metasm","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","class":"game","description_en":"OpenTomb is an open-source reimplementation of the classic Tomb Raider engine for playing levels from Tomb Raider 1–5 and custom TRLE levels. It is no longer maintained.","description_zh":"OpenTomb 是经典《古墓丽影》引擎的开源重新实现项目，可运行《古墓丽影》1–5 及自制 TRLE 关卡。该项目已停止维护。","entry_url":"https://awesomerea.org/resources/opentomb/","entry_url_zh":"https://awesomerea.org/zh/resources/opentomb/","evidence_url":"https://github.com/opentomb/OpenTomb/blob/ae7e07af766a48c7e5b5f2d6e14a5fa64e37e20c/README.md","group":"cases","id":"opentomb","json_url":"https://awesomerea.org/resources/opentomb/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/opentomb/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/opentomb/index.md","name":"OpenTomb: Tomb Raider engine reimplementation","name_zh":"OpenTomb：《古墓丽影》引擎重实现","reconstruction_method":"engine-reimplementation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Playing original game levels requires assets from the corresponding games.","Building from source requires C++11 and the development dependencies listed in the README.","CD audio is supported only in OGG format.","License: LGPL-3.0."],"requirements_zh":["运行原版游戏关卡需要相应游戏的资源文件。","从源码编译需要 C++11 和 README 所列的开发依赖。","CD 音频仅支持 OGG 格式。","许可证：LGPL-3.0。"],"targets":["game"],"url":"https://github.com/opentomb/OpenTomb","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","class":"game","description_en":"Savage Wind Recomp is an in-progress static recompilation of the Nintendo Switch version of The Legend of Zelda: Breath of the Wild for Windows and Linux. It builds native game code locally from the player's extracted files; the README reports playable early areas but says the full story remains unconfirmed.","description_zh":"Savage Wind Recomp 是一个仍在开发中的静态重编译项目，旨在让 Nintendo Switch 版《塞尔达传说：旷野之息》在 Windows 和 Linux 上以原生程序运行。它在本地根据玩家自行提取的游戏文件构建代码；README 称前期区域可以游玩，但尚未确认主线全程可通关。","entry_url":"https://awesomerea.org/resources/savagewindrecomp/","entry_url_zh":"https://awesomerea.org/zh/resources/savagewindrecomp/","evidence_url":"https://github.com/Revivedx/SavageWindRecomp/blob/bf6146c14c37fee8781a601e5a544b93dff6d75e/README.md","group":"cases","id":"savagewindrecomp","json_url":"https://awesomerea.org/resources/savagewindrecomp/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/savagewindrecomp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/savagewindrecomp/index.md","name":"Savage Wind Recomp: statically recompiling The Legend of Zelda: Breath of the Wild","name_zh":"Savage Wind Recomp：《塞尔达传说：旷野之息》静态重编译","reconstruction_method":"static-recompilation","record_type":"resource","relationship":"independent-reconstruction","requirements":["Requires a personally obtained and extracted Nintendo Switch copy of the game with update 1.9.0; game files are not included.","Requires Windows 10 or later or Linux, a 64-bit CPU with SSE4.2, a Vulkan 1.3 GPU, 16 GB of RAM, and about 20 GB of free disk space.","The project is in alpha; later parts of the main story may have bugs or crashes.","MIT per LICENSE."],"requirements_zh":["需要自行取得并提取的 Nintendo Switch 版游戏及其 1.9.0 更新；项目不提供游戏文件。","需要 Windows 10 或更新版本或 Linux、支持 SSE4.2 的 64 位处理器、支持 Vulkan 1.3 的显卡、16 GB 内存及约 20 GB 可用磁盘空间。","项目仍处于 alpha 阶段；主线后续内容可能出现错误或崩溃。","依 LICENSE 采用 MIT 许可。"],"targets":["game"],"url":"https://github.com/Revivedx/SavageWindRecomp","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"reconstruction-cases","class":"game","description_en":"retruxx is a reverse-engineered Hard Truck Apocalypse project that builds the game executable and separate renderer, input, and sound DLLs. Its 32-bit build matches the original game's memory layouts.","description_zh":"retruxx 是《Hard Truck Apocalypse》的逆向工程项目，可构建游戏可执行文件以及独立的渲染、输入和声音 DLL。其 32 位构建与原游戏的内存布局一致。","entry_url":"https://awesomerea.org/resources/retruxx/","entry_url_zh":"https://awesomerea.org/zh/resources/retruxx/","evidence_url":"https://github.com/mindflower/retruxx/blob/e94ac261e4a4a4783b092ff4aba02ec2c2121f04/README.md","group":"cases","id":"retruxx","json_url":"https://awesomerea.org/resources/retruxx/record.json","kind":"case-study","markdown_url":"https://awesomerea.org/resources/retruxx/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/retruxx/index.md","name":"retruxx: reverse-engineered Hard Truck Apocalypse","name_zh":"retruxx：《Hard Truck Apocalypse》逆向工程","reconstruction_method":"other","record_type":"resource","relationship":"independent-reconstruction","requirements":["Building requires Windows, Visual Studio C++ build tools, CMake, Git, the DirectX SDK (June 2010), and the FMOD Core SDK.","Running the game requires an installed copy of Ex Machina / Hard Truck Apocalypse for its game data.","The executable and driver DLLs must have compatible bitness.","The repository has no license file."],"requirements_zh":["构建需要 Windows、Visual Studio C++ 构建工具、CMake、Git、DirectX SDK（2010 年 6 月版）和 FMOD Core SDK。","运行游戏需要已安装的《Ex Machina / Hard Truck Apocalypse》，以提供游戏数据。","可执行文件与驱动 DLL 的位数必须兼容。","仓库中没有许可证文件。"],"targets":["game"],"url":"https://github.com/mindflower/retruxx","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"game-analysis","description_en":"nxnative is a tool that packages Nintendo Switch games as apps that run their code natively on Apple hardware, with graphics translated to Metal. It builds iPhone, iPad, or Mac apps from supported Switch games; Switch 2 builds are documented for Mac only.","description_zh":"nxnative 是一款将 Nintendo Switch 游戏打包为 Apple 设备应用的工具，让游戏代码在设备上原生运行，并将图形处理转换为 Metal。它可为受支持的 Switch 游戏生成 iPhone、iPad 或 Mac 应用；Switch 2 游戏目前仅说明了 Mac 构建方式。","entry_url":"https://awesomerea.org/resources/nxnative/","entry_url_zh":"https://awesomerea.org/zh/resources/nxnative/","evidence_url":"https://github.com/seedds/nxnative/blob/88c7e03f51e3934dc227089ea81ec64fcd525b03/README.md","group":"tools","id":"nxnative","json_url":"https://awesomerea.org/resources/nxnative/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/nxnative/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/nxnative/index.md","name":"nxnative","name_zh":"nxnative Switch 游戏原生打包工具","record_type":"resource","relationship":"foundation","requirements":["Building requires a Mac with macOS 26.6 or later, Xcode 27.2, Homebrew, and arm64 Python 3.12 or later.","Switch game builds require the user's game files and prod.keys; Switch 2 builds use a NUP file or extracted game files and do not require prod.keys.","iPhone and iPad play requires iOS or iPadOS 26 or later and the specified newer hardware; Switch 2 games are documented for Mac only.","License: MIT."],"requirements_zh":["构建需要运行 macOS 26.6 或更高版本的 Mac，以及 Xcode 27.2、Homebrew 和 arm64 版本的 Python 3.12 或更高版本。","构建 Switch 游戏需要用户自己的游戏文件和 prod.keys；Switch 2 游戏使用 NUP 文件或已提取的游戏文件，无需 prod.keys。","在 iPhone 和 iPad 上游玩需要 iOS 或 iPadOS 26 或更高版本及文档指定的较新设备；Switch 2 游戏目前仅说明可在 Mac 上运行。","许可证：MIT。"],"targets":["binary","game"],"url":"https://github.com/seedds/nxnative","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"protocol-analysis","description_en":"Impacket is a Python library for constructing and parsing network packets and working with protocol implementations. It covers protocols including SMB and MSRPC and includes example tools.","description_zh":"Impacket 是用于构造、解析网络数据包及使用协议实现的 Python 库。它涵盖 SMB、MSRPC 等协议，并附带示例工具。","entry_url":"https://awesomerea.org/resources/impacket/","entry_url_zh":"https://awesomerea.org/zh/resources/impacket/","evidence_url":"https://github.com/fortra/impacket/blob/0b3ef2b979ba0f52dfc852dd41e0f90ce7b3bc42/README.md","group":"tools","id":"impacket","json_url":"https://awesomerea.org/resources/impacket/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/impacket/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/impacket/index.md","name":"Impacket","name_zh":"Impacket 网络协议库","record_type":"resource","relationship":"foundation","requirements":["Requires Python 3; the README recommends pipx for system-wide installation.","The README describes the software as intended for research and education, not production or commercial use.","Apache Software License with slight modifications, per LICENSE."],"requirements_zh":["需要 Python 3；README 建议使用 pipx 进行系统级安装。","README 指出该软件用于研究和教学，不适用于生产环境或商业产品。","依 LICENSE 采用略经修改的 Apache Software License。"],"targets":["protocol"],"url":"https://github.com/fortra/impacket","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"agent-mcp","description_en":"r0idamcp is a single-file MCP server that connects IDA Pro to an MCP-capable assistant for automated reverse engineering. Its tools expose functions, strings, decompilation, cross-references, comments, and renaming through an SSE connection.","description_zh":"r0idamcp 是一个单文件 MCP 服务器，可将 IDA Pro 连接到支持 MCP 的助手，用于自动化逆向分析。它通过 SSE 连接提供函数和字符串查询、反编译、交叉引用、注释及重命名等功能。","entry_url":"https://awesomerea.org/resources/r0idamcp/","entry_url_zh":"https://awesomerea.org/zh/resources/r0idamcp/","evidence_url":"https://github.com/r0ysue/r0idamcp/blob/4b69484d58bbcd162e641af5b5189489ad5bcaf1/README.md","group":"agents","id":"r0idamcp","json_url":"https://awesomerea.org/resources/r0idamcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/r0idamcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/r0idamcp/index.md","name":"r0idamcp","name_zh":"r0idamcp（IDA Pro MCP 服务器）","record_type":"resource","relationship":"independent-agent-integration","requirements":["IDA Pro is required; version 8.3 or later is recommended.","Install FastMCP with pip into the Python environment used by IDA Pro.","Use an MCP client that can connect to an SSE server, and allow access to the configured server port.","License: MIT."],"requirements_zh":["需要 IDA Pro；建议使用 8.3 或更高版本。","在 IDA Pro 使用的 Python 环境中通过 pip 安装 FastMCP。","使用可连接 SSE 服务器的 MCP 客户端，并允许访问所配置的服务器端口。","许可证：MIT。"],"targets":["binary"],"url":"https://github.com/r0ysue/r0idamcp","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"agent-mcp","description_en":"SOMCP is an Android MCP server for analyzing and modifying native SO libraries. It exposes ELF analysis, disassembly, patching, and optional dynamic analysis tools to MCP clients.","description_zh":"SOMCP 是在 Android 设备上分析和修改原生 SO 库的 MCP 服务器。它向 MCP 客户端提供 ELF 分析、反汇编、补丁以及可选的动态分析工具。","entry_url":"https://awesomerea.org/resources/somcp/","entry_url_zh":"https://awesomerea.org/zh/resources/somcp/","evidence_url":"https://github.com/bilieebiliee1-design/SOMCP/blob/62a758357dbc484660f56dbe4c785f230311673f/README.md","group":"agents","id":"somcp","json_url":"https://awesomerea.org/resources/somcp/record.json","kind":"integration","markdown_url":"https://awesomerea.org/resources/somcp/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/somcp/index.md","name":"SOMCP","name_zh":"SOMCP Android 原生库 MCP 服务器","record_type":"resource","relationship":"independent-agent-integration","requirements":["Requires Android 8.0 or later.","Emulation in official release APKs requires a 64-bit device; Frida features require a separately installed Frida server or gadget on a rooted device.","The repository declares the AGPL-3.0 license."],"requirements_zh":["需要 Android 8.0 或更高版本。","正式版 APK 的模拟执行需要 64 位设备；Frida 功能需要在已 root 的设备上另行安装 Frida server 或 gadget。","仓库声明采用 AGPL-3.0 许可证。"],"targets":["app","binary"],"url":"https://github.com/bilieebiliee1-design/SOMCP","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"android","description_en":"VirtualXposed is an Android app that runs Xposed modules alongside apps in a virtual environment without root access, an unlocked bootloader, or a custom system image. It is based on VirtualApp and epic.","description_zh":"VirtualXposed 是一款 Android 应用，可在虚拟环境中让 Xposed 模块作用于应用，无需 Root、解锁引导程序或刷入自定义系统镜像。它基于 VirtualApp 和 epic。","entry_url":"https://awesomerea.org/resources/virtualxposed/","entry_url_zh":"https://awesomerea.org/zh/resources/virtualxposed/","evidence_url":"https://github.com/android-hacker/VirtualXposed/blob/122beb371519cb2d221ce06756361aaa30e2674f/README.md","group":"tools","id":"virtualxposed","json_url":"https://awesomerea.org/resources/virtualxposed/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/virtualxposed/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/virtualxposed/index.md","name":"VirtualXposed","name_zh":"VirtualXposed 免 Root Xposed 环境","record_type":"resource","relationship":"foundation","requirements":["Requires an Android 5.0–10.0 device and installation of the VirtualXposed APK.","Apps and Xposed modules must both be installed inside VirtualXposed for modules to take effect.","Modules that modify the system and resource hooks are unsupported; the README prohibits commercial use.","The repository declares the GPL-3.0 license."],"requirements_zh":["需要 Android 5.0–10.0 设备，并安装 VirtualXposed APK。","应用和 Xposed 模块都必须安装在 VirtualXposed 内，模块才能生效。","不支持修改系统的模块和资源 Hook；README 禁止商业用途。","仓库声明采用 GPL-3.0 许可证。"],"targets":["app"],"url":"https://github.com/android-hacker/VirtualXposed","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"android","description_en":"EdXposed is a Riru module that provides an Xposed-compatible ART hooking framework for Android 8.0 through 11. It lets Xposed modules change system and app behavior without modifying APKs.","description_zh":"EdXposed 是一个 Riru 模块，为 Android 8.0 至 11 提供兼容 Xposed 的 ART Hook 框架。它让 Xposed 模块无需修改 APK 即可改变系统和应用的行为。","entry_url":"https://awesomerea.org/resources/edxposed/","entry_url_zh":"https://awesomerea.org/zh/resources/edxposed/","evidence_url":"https://github.com/ElderDrivers/EdXposed/blob/8f2308cdde0a8151a2b4b0151c58b203154a8c6f/README.md","group":"tools","id":"edxposed","json_url":"https://awesomerea.org/resources/edxposed/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/edxposed/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/edxposed/index.md","name":"EdXposed Framework","name_zh":"EdXposed 框架","record_type":"resource","relationship":"foundation","requirements":["Android 8.0 through 11.","Magisk v21+ and Riru v23+.","EdXposed Manager for the documented installation process.","License: GPL-3.0."],"requirements_zh":["Android 8.0 至 11。","Magisk v21 或更高版本，以及 Riru v23 或更高版本。","按 README 所述安装流程使用 EdXposed Manager。","许可证：GPL-3.0。"],"targets":["app"],"url":"https://github.com/ElderDrivers/EdXposed","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"android","description_en":"Vector Framework is a Zygisk module that provides ART hooking for Android apps. It supports Xposed APIs and lets modules change app and system behavior in memory without modifying APK files.","description_zh":"Vector Framework 是为 Android 应用提供 ART Hook 功能的 Zygisk 模块。它支持 Xposed API，让模块在内存中改变应用和系统的行为，无需修改 APK 文件。","entry_url":"https://awesomerea.org/resources/vector-lsposed/","entry_url_zh":"https://awesomerea.org/zh/resources/vector-lsposed/","evidence_url":"https://github.com/JingMatrix/Vector/blob/093ea599bfa2b50c156da0af53e2e53576e88434/README.md","group":"tools","id":"vector-lsposed","json_url":"https://awesomerea.org/resources/vector-lsposed/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/vector-lsposed/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/vector-lsposed/index.md","name":"Vector Framework","name_zh":"Vector 框架","record_type":"resource","relationship":"foundation","requirements":["Requires Android 8.1 through Android 17 Beta.","Requires a recent Magisk or KernelSU installation with Zygisk enabled.","Licensed under GPL-3.0."],"requirements_zh":["需要 Android 8.1 至 Android 17 Beta。","需要安装较新版本的 Magisk 或 KernelSU，并启用 Zygisk。","采用 GPL-3.0 许可证。"],"targets":["app"],"url":"https://github.com/JingMatrix/Vector","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"android","description_en":"JustTrustMe is an Xposed module that disables SSL certificate checks in Android apps. It can help expose network traffic from apps that use certificate pinning.","description_zh":"JustTrustMe 是一个用于关闭 Android 应用 SSL 证书检查的 Xposed 模块。它可帮助查看采用证书固定机制的应用的网络流量。","entry_url":"https://awesomerea.org/resources/justtrustme/","entry_url_zh":"https://awesomerea.org/zh/resources/justtrustme/","evidence_url":"https://github.com/Fuzion24/JustTrustMe/blob/35efd07e93ad1e5633454fbc72dbf4b00c622932/Readme.md","group":"tools","id":"justtrustme","json_url":"https://awesomerea.org/resources/justtrustme/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/justtrustme/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/justtrustme/index.md","name":"JustTrustMe","name_zh":"JustTrustMe 证书校验绕过模块","record_type":"resource","relationship":"foundation","requirements":["Requires a rooted Android device.","Requires the Xposed framework to be installed.","Apache-2.0 per License.md."],"requirements_zh":["需要已获取 root 权限的 Android 设备。","需要安装 Xposed 框架。","依 License.md 采用 Apache-2.0。"],"targets":["app"],"url":"https://github.com/Fuzion24/JustTrustMe","verification":"source-reviewed","verified_at":"2026-11-06"},{"added_at":"2026-11-06","category":"web-analysis","description_en":"spy-debugger is a tool for remotely debugging pages in mobile browsers and app WebViews while capturing HTTP and HTTPS traffic. It injects weinre debugging code into HTML responses and can use its built-in proxy or an external one.","description_zh":"spy-debugger 是一款远程调试手机浏览器和应用 WebView 页面、抓取 HTTP 与 HTTPS 流量的工具。它会在 HTML 响应中注入 weinre 调试代码，并可使用内置代理或外部代理。","entry_url":"https://awesomerea.org/resources/spy-debugger/","entry_url_zh":"https://awesomerea.org/zh/resources/spy-debugger/","evidence_url":"https://github.com/wuchangming/spy-debugger/blob/03d787151159c96229aff0266e0d3038af1e69a3/README.md","group":"tools","id":"spy-debugger","json_url":"https://awesomerea.org/resources/spy-debugger/record.json","kind":"tool","markdown_url":"https://awesomerea.org/resources/spy-debugger/index.md","markdown_url_zh":"https://awesomerea.org/zh/resources/spy-debugger/index.md","name":"spy-debugger","name_zh":"spy-debugger 移动页面调试代理","record_type":"resource","relationship":"foundation","requirements":["Install spy-debugger with npm on a computer.","Connect the phone and computer to the same network and configure the phone's HTTP proxy.","Install a certificate on the phone for HTTPS debugging; on iOS 15, the tool cannot identify whether a request came from a browser.","License: MIT."],"requirements_zh":["在电脑上通过 npm 安装 spy-debugger。","将手机和电脑连接到同一网络，并设置手机的 HTTP 代理。","调试 HTTPS 时需在手机上安装证书；在 iOS 15 上，工具无法判断请求是否来自浏览器。","许可证：MIT。"],"targets":["app","website"],"url":"https://github.com/wuchangming/spy-debugger","verification":"source-reviewed","verified_at":"2026-11-06"}],"schema":"https://awesomerea.org/api/v1/schema.json#/$defs/resourcesFile","site_url":"https://awesomerea.org/","version":"1.0.0"}
