Il2CppDumper 使用教程
1. 项目的目录结构及介绍
Il2CppDumper 是一个用于逆向工程 Unity IL2CPP 二进制文件的工具。以下是其主要目录结构和文件介绍:
Il2CppDumper/
├── Il2CppDumper.exe
├── config.json
├── README.md
├── scripts/
│ ├── ida.py
│ ├── ghidra.py
│ └── binaryninja.py
├── output/
│ ├── dump.cs
│ ├── il2cpp.h
│ └── DummyDll/
│ ├── Assembly-CSharp.dll
│ └── UnityEngine.dll
└── resources/
├── global-metadata.dat
└── GameAssembly.dll
Il2CppDumper.exe
: 主程序文件,用于执行反编译操作。config.json
: 配置文件,包含各种选项设置。README.md
: 项目说明文档。scripts/
: 包含用于不同反编译工具的脚本。output/
: 反编译输出文件夹,包含反编译后的代码和生成的 DLL 文件。resources/
: 示例资源文件,包括global-metadata.dat
和GameAssembly.dll
。
2. 项目的启动文件介绍
Il2CppDumper.exe
是项目的启动文件。运行此文件将启动反编译过程。用户需要提供目标游戏的 GameAssembly.dll
和 global-metadata.dat
文件。
启动步骤
- 打开命令行工具。
- 导航到 Il2CppDumper 目录。
- 运行以下命令:
Il2CppDumper.exe <executable-file> <global-metadata> <output-directory>
例如:
Il2CppDumper.exe resources/GameAssembly.dll resources/global-metadata.dat output/
3. 项目的配置文件介绍
config.json
是 Il2CppDumper 的配置文件,包含多个选项用于控制反编译过程。以下是一些主要配置选项的介绍:
{
"DumpMethod": true,
"DumpField": true,
"DumpProperty": true,
"DumpAttribute": true,
"DumpFieldOffset": true,
"DumpMethodOffset": true,
"DumpTypeDefIndex": true,
"GenerateDummyDll": true,
"GenerateScript": true,
"DummyDllAddToken": true,
"RequireAnyKey": false,
"ForceIl2CppVersion": false,
"ForceVersion": "24.2"
}
DumpMethod
: 是否输出方法信息。DumpField
: 是否输出字段信息。DumpProperty
: 是否输出属性信息。DumpAttribute
: 是否输出属性信息。DumpFieldOffset
: 是否输出字段偏移信息。DumpMethodOffset
: 是否输出方法偏移信息。DumpTypeDefIndex
: 是否输出类型定义索引信息。GenerateDummyDll
: 是否生成虚拟 DLL 文件。GenerateScript
: 是否生成脚本文件。DummyDllAddToken
: 是否在虚拟 DLL 中添加令牌。RequireAnyKey
: 是否在结束时要求按任意键退出。ForceIl2CppVersion
: 是否强制使用特定版本的 IL2CPP 解析器。ForceVersion
: 指定强制使用的 IL2CPP 版本号。
通过调整这些配置选项,用户可以自定义反编译过程的输出内容和行为。