finds.dev← search

// the find

Perfare/Il2CppDumper

★ 9,045 · C# · MIT · updated Aug 2024

Unity il2cpp reverse engineer

Il2CppDumper extracts type metadata, method signatures, and field offsets from Unity IL2CPP-compiled games, producing dummy DLLs and disassembler scripts for IDA/Ghidra/Binary Ninja. It's the de-facto first step in reverse engineering any Unity game that uses IL2CPP AOT compilation. If you're doing game modding, cheat development, or security research on mobile Unity games, you use this.

Supports every major binary format Unity targets — ELF/ELF64, Mach-O, PE, NSO (Switch), and WASM — from a single tool. The disassembler script generation (IDA, Ghidra, Binary Ninja) is genuinely useful: it auto-labels thousands of methods rather than leaving you with raw offsets. Version-switching logic with ForceVersion is a practical escape hatch when Unity's metadata version doesn't match the binary version, which happens with older or modified games. Memory-dump mode for bypassing runtime protections on Android is a meaningful feature, not a checkbox.

Last commit was August 2024 and Unity 2023+ support is missing — the IL2CPP metadata format changed in later versions and this tool will silently produce wrong output or fail on recent Unity builds. The architecture-specific pattern matching in ArmUtils and SearchSection is brittle — obfuscated or packed binaries will break it and the error messages tell you almost nothing useful about why. The dummy DLLs contain no executable IL, so decompilers like dnSpy show you signatures but can't reconstruct actual logic; this is documented but still surprises people expecting something like dotPeek on a managed assembly. No library/NuGet packaging — it's strictly a desktop app, so integrating it into a pipeline requires shelling out or forking.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →