# ReverserAI：本地大模型函数命名 Binary Ninja 插件

> Binary Ninja 插件，借助 llama.cpp 在本机运行语言模型，依据 HLIL 反编译输出建议函数名；README 称下载模型后即可完全离线运行。它可以重命名当前函数，按调用图后序遍历重命名所有仍沿用默认 sub_ 名称的函数，或只处理其中引用字符串、导入符号或库符号的函数。作者把它定位为研究性概念验证，目前唯一实现的任务是函数命名。

- 类型：集成
- 目标：二进制
- 类别：独立智能体工作流
- 关联：独立智能体集成
- 来源复核于：2026-10-20
- 收录于：2026-11-02
- 原始资源：<https://github.com/mrphrazer/reverser_ai>
- 一手来源：<https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/reverser-ai/>
- 记录 JSON：<https://awesomerea.org/resources/reverser-ai/record.json>
- 英文版：[English](https://awesomerea.org/resources/reverser-ai/index.md)

## 使用条件与局限

- 所审阅的 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 及下载的模型权重各有其许可与条款。

## 一手来源

1. <https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/README.md>
2. <https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/plugin.json>
3. <https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/setup.py>
4. <https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/requirements.txt>
5. <https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/__init__.py>
6. <https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/reverser_ai/binary_ninja/__init__.py>
7. <https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/reverser_ai/binary_ninja/function_name_gpt_wrapper.py>
8. <https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/reverser_ai/gpt/function_name_gpt.py>
9. <https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/reverser_ai/gpt/models.py>
10. <https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/examples/README.md>
11. <https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/.github/workflows/ci.yml>
12. <https://github.com/mrphrazer/reverser_ai/blob/1d572da70479ea822875b9350135d7e3402f5557/LICENSE>
13. <https://github.com/mrphrazer/reverser_ai/releases/tag/v1.2>

## 同分区更多条目：智能体与 MCP

- [WPeGPT IDA AI 分析插件](https://awesomerea.org/zh/resources/wpegpt/index.md) · 集成
- [IDAssist IDA Pro 大模型辅助分析插件](https://awesomerea.org/zh/resources/idassist/index.md) · 集成
- [GhidraGPT：调用大模型辅助逆向的 Ghidra 扩展](https://awesomerea.org/zh/resources/ghidragpt/index.md) · 集成
- [GhidrAssist Ghidra 大模型辅助分析扩展](https://awesomerea.org/zh/resources/ghidrassist/index.md) · 集成
- [Rikugan](https://awesomerea.org/zh/resources/rikugan/index.md) · 集成
- [bn：面向智能体的 Binary Ninja 命令行工具](https://awesomerea.org/zh/resources/bn-binary-ninja-agent-cli/index.md) · 集成

## 关于此条目

说明已依据一手来源复核。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
