# perfare/il2cppdumper

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/perfare-il2cppdumper).**

9,094 stars · 1,845 forks · C# · MIT

## Links

- GitHub: https://github.com/Perfare/Il2CppDumper
- awesome-repositories: https://awesome-repositories.com/repository/perfare-il2cppdumper.md

## Topics

`il2cpp` `reverse-engineering` `unity` `unity3d`

## Description

Il2CppDumper is a reverse engineering tool that recovers original .NET assembly structure from Unity games compiled with il2cpp. It parses il2cpp binaries across multiple executable formats including ELF, Mach-O, PE, NSO, and WASM, and reconstructs the original DLL structure from embedded metadata tables, enabling decompilation and analysis of game code.

The tool generates disassembler scripts for IDA, Ghidra, and Binary Ninja that apply recovered type definitions and structure layouts to the binary analysis. It also strips protection layers from memory-dumped libil2cpp.so files and simple PE-protected binaries, and recovers Unity MonoBehaviour and MonoScript metadata for use with asset extraction tools.

Il2CppDumper adapts its metadata parsing logic to handle variations across a wide range of Unity il2cpp versions, ensuring compatibility with different game builds. The tool is available as a command-line application with no graphical interface.

## Tags

### Game Development

- [Unity Il2cpp Reversers](https://awesome-repositories.com/f/game-development/native-game-ports/reverse-engineered-pinball-game-ports/unity-il2cpp-reversers.md) — Reverses Unity games compiled with il2cpp to recover original DLL structure and decompile game code.
- [Unity Asset Extractors](https://awesome-repositories.com/f/game-development/unity-asset-extractors.md) — Extracts MonoBehaviour and MonoScript metadata from il2cpp binaries for use with asset extraction tools. ([source](https://cdn.jsdelivr.net/gh/perfare/il2cppdumper@master/README.md))
- [Unity Script Data Recoveries](https://awesome-repositories.com/f/game-development/unity-asset-extractors/unity-script-data-recoveries.md) — Restores MonoBehaviour and MonoScript data from memory-dumped il2cpp binaries for asset extraction.

### Part of an Awesome List

- [Il2cpp Binary Reversers](https://awesome-repositories.com/f/awesome-lists/devtools/binary-and-reverse-engineering/il2cpp-binary-reversers.md) — Recovers Unity game code from il2cpp binaries by reconstructing DLL structure and generating disassembler scripts.

### Operating Systems & Systems Programming

- [Disassembler Script Generators](https://awesome-repositories.com/f/operating-systems-systems-programming/binary-analysis-capabilities/binary-disassembly/disassembler-script-generators.md) — Creates IDA, Ghidra, and Binary Ninja scripts with type information for il2cpp binary analysis.
- [Metadata-Based Reconstructions](https://awesome-repositories.com/f/operating-systems-systems-programming/binary-file-reconstructions/metadata-based-reconstructions.md) — Reconstructs original .NET assembly structure by parsing metadata tables embedded in il2cpp binaries.
- [Multi-Format Binary Loaders](https://awesome-repositories.com/f/operating-systems-systems-programming/multi-format-binary-loaders.md) — Parses il2cpp binaries across ELF, Mach-O, PE, NSO, and WASM formats using format-specific loaders.
- [Protection Strippers](https://awesome-repositories.com/f/operating-systems-systems-programming/binary-memory-dumping/protection-strippers.md) — Strips protection layers from memory-dumped libil2cpp.so files and simple PE-protected binaries for analysis.
- [Protection Strippers](https://awesome-repositories.com/f/operating-systems-systems-programming/memory-protection-managers/memory-protection-engineering/protection-strippers.md) — Removes simple PE and memory-dump protections from libil2cpp.so files to enable analysis.

### Programming Languages & Runtimes

- [Il2cpp DLL Restorers](https://awesome-repositories.com/f/programming-languages-runtimes/net-binary-decompilers/il2cpp-dll-restorers.md) — Reconstructs the original .NET DLL assembly structure from Unity il2cpp binaries, enabling decompilation and analysis of game code. ([source](https://cdn.jsdelivr.net/gh/perfare/il2cppdumper@master/README.md))

### Software Engineering & Architecture

- [Disassembler Script Generators](https://awesome-repositories.com/f/software-engineering-architecture/type-definition-generators/disassembler-script-generators.md) — Generates disassembler scripts that apply recovered type definitions and structure layouts to IDA, Ghidra, and Binary Ninja.
- [Unity Version-Aware Parsers](https://awesome-repositories.com/f/software-engineering-architecture/metadata-reflection-frameworks/metadata-parsing/unity-version-aware-parsers.md) — Adapts metadata parsing logic to handle variations across a wide range of Unity il2cpp versions.

### Data & Databases

- [Unity Script Data Recoveries](https://awesome-repositories.com/f/data-databases/data-management/backup-recovery-utilities/data-recovery/unity-script-data-recoveries.md) — Restores Unity MonoBehaviour and MonoScript data from reconstructed DLLs for asset extraction tools.

### Security & Cryptography

- [Binary Protection Strippers](https://awesome-repositories.com/f/security-cryptography/traffic-protection/protection-bypassers/binary-protection-strippers.md) — Strips protections from memory-dumped or PE-protected libil2cpp.so files to enable further analysis. ([source](https://cdn.jsdelivr.net/gh/perfare/il2cppdumper@master/README.md))
