Il2CppDumper is a reverse engineering tool for Unity's il2cpp binaries. It supports extracting metadata, generating dummy DLLs, and analyzing code for better understanding and modification of Unity applications.
Il2CppDumper is a reverse engineering tool designed to analyze and modify Unity applications built with il2cpp. It enables developers to extract metadata, generate dummy DLLs, and gain deeper insights into the structure and functionality of il2cpp binaries.
Key Features:
Complete restoration of DLL files (excluding code), allowing extraction of MonoBehaviour and MonoScript components.
Support for multiple executable formats, including ELF, ELF64, Mach-O, PE, NSO, and WASM.
Integration with IDA, Ghidra, and Binary Ninja through generated scripts to enhance il2cpp analysis.
Generation of structure header files for better understanding of il2cpp binaries.
Compatibility with Unity versions ranging from 5.3 to 2022.2.
Tools to bypass common protections in il2cpp binaries, such as memory dumping on Android devices.
Ideal for reverse engineers and developers working with Unity applications, Il2CppDumper provides a comprehensive solution to analyze, modify, and enhance understanding of il2cpp-based projects. It can be installed via winget.
If 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
Force files to be treated as dumped
NoRedirectedPointer
Treat pointers in dumped files as unredirected, This option needs to be true for files dumped from some devices
Common errors
ERROR: 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.