C++ で書かれた IL2CppDumper
このプロジェクトは、Unity の il2cpp の原理を理解したときに書いた小さなおもちゃです。IL2CppDumper は C# で開発されており、il2cpp 自体も C++ で開発されているため、便宜上 C++ を使用することにしました。これが唯一の方法です。クロスプラットフォームの il2cpp ダンプ ツールです。現在、このツールは il2cpp バージョン 24.0/24.1 をサポートしており、他のバージョンを移植することは難しくありません。現在、Android および iOS の 64 ビット実行可能ファイルをサポートしていますが、32 ビット ファイルは自分でコンパイルする必要があります。このプロジェクトは開発とメンテナンスに多くの時間とエネルギーを費やしてきました。お役に立ちましたら、ぜひ小さなスターを付けてください。お楽しみください~ ([email protected])
2020-06-01更新
以前紹介したように、このプロジェクトは単なる小さなおもちゃであり、今後はメンテナンスされません。既存のゲームのほとんどは強化操作を受けるため、静的ダンプ ツールは万能ではありません。現在、市場にあるすべてのゲーム強化をバイパスできる動的 il2cpp ダンプに切り替えられ、unity5.x-unity2020 バージョン、Android/iOS、arm/arm64 をサポートし、C# シンボル ダンプと ida スクリプト生成をサポートしており、その機能は次のとおりです。このため、このプロジェクトはオープンソースになりません。同様のダイナミック ダンプ ツールを作成したい場合は、このおもちゃのプロジェクトが引き続き参考になります。 (X!A0@2020)
__ _____ _ ____ ____ ____
/ /_ _| | |___ / ___|_ __ _ __ | _ _ _ _ __ ___ _ __ ___ _ __
/ | || | __) | | | '_ | '_ | | | | | | | '_ ` _ | '_ / _ '__|
/ | || |___ / __/| |___| |_) | |_) | |_| | |_| | | | | | | |_) | __/ |
/_/____|_____|_____|____| .__/| .__/|____/ __,_|_| |_| |_| .__/ ___|_|
|_| |_| |_|
+--------------------------------------------------------------------------------------+
| XIL2CppDumper | a tool of C++ version IL2CppDumper made by xia0@2019 |
+--------------------------------------------------------------------------------------+
| Info | version: 0.2 support: iOS[arm64] Android[arm64] il2cpp[24.1/24.0] |
+--------------------------------------------------------------------------------------+
| Usage | XIL2CppDumper unity_metadata_file_path il2cpp_so_or_macho_file_path |
+--------------------------------------------------------------------------------------+
| Blog | http://4ch12dy.site |
+--------------------------------------------------------------------------------------+
| Github | https://github.com/4ch12dy |
+--------------------------------------------------------------------------------------+
| Specail thanks to Perfare's Il2CppDumper:https://github.com/Perfare/Il2CppDumper |
+--------------------------------------------------------------------------------------+
DLL の完全な復元 (コードを除く)
(ELF) ELF64、MachO64 フォーマットをサポート
理論的には Unity のすべてのバージョンをサポート (unity3d(2017-2019) でテスト)
IDAスクリプトの自動生成をサポート
デフォルトでは、Clion を使用して x64 プログラムにコンパイルします。
Android arm32 libil2cpp.so の場合、同じ il2cpp ヘッダー ファイルに対して x86 バイナリにコンパイルする必要があります。
dump.cs
C# のすべての型とアドレスをダンプします
script.py
シンボルを復元するための ida Python スクリプト
パフォーマンス - Il2CppDumper
決してもえ - [unity_metadata_loader](