中文说明请戳这里
Unity il2cpp reverse engineer
MonoBehaviour
and MonoScript
libil2cpp.so
file to bypass protectionRun Il2CppDumper.exe
and choose the il2cpp executable file and global-metadata.dat
file, then enter the information as prompted
The program will then generate all the output files in current working directory
Il2CppDumper.exe <executable-file> <global-metadata> <output-directory>
Folder, containing all restored dll files
Use dnSpy, ILSpy or other .Net decompiler tools to view
Can be used to extract Unity MonoBehaviour
and MonoScript
, for UtinyRipper, UABE
For IDA
For IDA, read il2cpp.h file and apply structure information in IDA
structure information header file
For Ghidra
For BinaryNinja
For Ghidra, work with ghidra-wasm-plugin
For ida.py, ghidra.py and Il2CppBinaryNinja
Contains all stringLiteral information
All the configuration options are located in config.json
Available options:
DumpMethod
, DumpField
, DumpProperty
, DumpAttribute
, DumpFieldOffset
, DumpMethodOffset
, DumpTypeDefIndex
GenerateDummyDll
, GenerateScript
DummyDllAddToken
RequireAnyKey
ForceIl2CppVersion
, ForceVersion
ForceIl2CppVersion
is true
, the program will use the version number specified in ForceVersion
to choose parser for il2cpp binaries (does not affect the choice of metadata parser). This may be useful on some older il2cpp version (e.g. the program may need to use v16 parser on il2cpp v20 (Android) binaries in order to work properly)ForceDump
NoRedirectedPointer
true
for files dumped from some devicesERROR: Metadata file supplied is not valid metadata file.
Make sure you choose the correct file. Sometimes games may obfuscate this file for content protection purposes and so on. Deobfuscating of such files is beyond the scope of this program, so please DO NOT file an issue regarding to deobfuscating.
If your file is libil2cpp.so
and you have a rooted Android phone, you can try my other project Zygisk-Il2CppDumper, it can bypass this protection.
ERROR: Can't use auto mode to process file, try manual mode.
Please note that the executable file for the PC platform is GameAssembly.dll
or *Assembly.dll
You can open a new issue and upload the file, I will try to solve.
ERROR: This file may be protected.
Il2CppDumper detected that the executable file has been protected, use GameGuardian
to dump libil2cpp.so
from the game memory, then use Il2CppDumper to load and follow the prompts, can bypass most protections.
If you have a rooted Android phone, you can try my other project Zygisk-Il2CppDumper, it can bypass almost all protections.