dnSpyはUnity Apkを逆コンパイルします

プライマー

インターネット上で非常に優れた Unity ゲームを作成している人がいることを発見しました。研究のためにソース コードのコピーが必要だったので、いくつかのゲームの APK を見つけました。dnSpy ソフトウェアで APK を逆コンパイルし、Unity ゲームのソース コードを入手しました(リソースとコードを含む)

リソースの準備

dnスパイ

dnspy GitHub ダウンロード アドレス

ユニティ APK

逆コンパイルしたいAPKを準備する

ダウンロード

以下の図に示すように、dnSpy の GitHub ダウンロード アドレスを開きます。

以下の図に示すように、これはダウンロード後の dnSpy フォルダーです。

Unity APKを逆コンパイルする

1. Unity APK を準備する

以下に示すように:

2. ファイル形式を変更する

次の図に示すように、APK ファイルのサフィックス名を .apk から .rar または .zip 形式に変更します。

3. ファイルを解凍します。

以下の図に示すように、これは解凍後のフォルダー構造ディレクトリです。

4. フォルダー機能の分析

資産 Unity プロジェクトのリソース ファイルとコード ファイル
ライブラリ

したがって、arm および x86 に必要なファイル

メタINF 情報パッケージ
レス アイコンなどのリソース画像を保存します。
AndroidMainifest.xml マニフェストファイル
クラス.dex Android Dalvik バイトコード
リソース.arsc コンパイルされたバイナリリソースファイル

この記事のエディターは主に、必要なリソースとコードが含まれるアセット ファイル ディレクトリに焦点を当てています。

5. ソースコードを表示する

下図のように操作してください 開いてもAssembly-CSharp.dllが見つからない場合は、このUnity ApkがMonoモードではなくIL2CPPモードでビルドされている可能性があります。

以下のように操作します

APK レンダリングを逆コンパイルする

要約する

Unity ゲームは簡単すぎて分析できません。プロジェクトが非常に重要であれば、コードの難読化、暗号化、その他の作業が依然として非常に重要です。

もちろん、テクスチャ以外にもオーディオファイル、XMLファイル、シェーダーなども表示できますが、モデルを視覚的に抽出することはできません(これには不統一性が必要です)

おすすめ

転載: blog.csdn.net/Ai1114/article/details/132455781