Unity 反編譯由IL生成的DLL檔案

2022-08-18 21:15:17 字數 713 閱讀 7856

在unity實際開發過程中,我們可能會用到大量的外掛程式,而很多外掛程式有可能並非開源,而是封裝成dll檔案。

使用免費非開源外掛程式時,外掛程式往往缺少維護,這對我們的開發是非常不利的。例如dll暴露的諸多介面,我們並不知道這些介面背後幹了什麼、底層用到哪些介面、有什麼使用上的潛規則、對效能影響如何。

目前已存在有很多的翻遍應工具,例如ilspy、.net reflector 8、resharper等等。

下面我們使用免費開源的ilspy為例,對unityengine.dll進行一次反編譯學習。

使用:1、開啟ilspy.exe,進入工具主介面:

2、點選工具選單欄的進入檔案瀏覽介面,在unity安裝路徑中找到unityengine.dll並開啟

3、反編譯成功後,在左側列表中將顯示被反編譯dll的層次列表內容,而右側顯示原始碼。

反編譯後可以發現,unityengine.dll只是乙個基於c#的包裝層,因此我們看到的只是unityengine的包裝**以及一些比較基礎的邏輯**,核心**並不在其中。

原因是unity本身是由c++編寫,即便要檢視,也應該需要使用ollydebug等其他反彙編工具深度逆向(這已經不是本文的討論範疇),不能通過ilspy這類il反編譯工具獲得。

edit by sunboyl

反編譯unity3d發布apk

鄭重宣告 本教程僅用於學習使用,從事任何商業用途非法行為與作者無關,請知曉!本文目的 通過教會大家如何破解別人遊戲的同時,也希望各位開發者能加強自身遊戲的防破解能力!unity資源在 assets bin data 其中managed下放的是dll,遊戲原始碼被編譯成assembly csharp....

反編譯Unity3D手機遊戲

舊部落格轉移 2015年11月17日 10 08 現在大部分u3d手遊都沒有進行加密處理,要反編譯其實很簡單 apk是安卓的安裝包,安卓是基於linux的,linux的安裝包一般都是zip,所以我猜apk有可能其實就是zip之類的壓縮格式,把字尾名改成zip後用壓縮工具開啟 一般用c 做unity指...

利用pb本身的功能,反編譯pbd檔案中的dw

主要的核心 如下 string ls pbd e 例子目錄 例子檔案.pbd setlibrarylist ls pbd if pos getlibrarylist ls pbd 0 then if fileexists ls pbd then else return end if else ret...