Reko是一個C#項目,包含機器碼二進位文件的反編譯器。該項目可在GNU通用公共許可證下免費獲得。該項目包括前端,核心反編譯器引擎和後端,以幫助它實現其目標。在撰寫本文時,存在命令行,Windows GUI和ASP.NET前端。反編譯器引擎以單個可執行文件或反編譯器項目文件的形式從前端接收輸入。Reko項目文件包含有關二進位文件的其他信息,有助於反編譯過程或格式化輸出。然後,反編譯器引擎繼續分析輸入二進位文件。
Reko的目標是支持各種處理器體系結構和可執行文件格式的反編譯,許多軟體許可證禁止對其機器代碼二進位文件進行反編譯或其他逆向工程。僅當您具有反編譯二進位文件的合法權限時才使用此反編譯器。
工具下載和安裝
運行下列命令下載Reko:
$ git clone git://github.com/uxmal/reko.git
Windows用戶
在Windows平臺上,首先需要安裝下列依賴組件:
NETFramework 4.7.2下載好MSI文件之後,直接運行安裝程序即可。
非Windows用戶
如果你使用的不是Windows系統,那麼你首先得安裝下列依賴組件:Monov5.14.0
安裝好mono之後,你就可以直接從整合構建伺服器下載原始碼,或直接構建Reko源碼來使用工具了。工具下載好並完成環境配置之後,你就可以使用一款IDE或命令行來構建Reko-decompiler.sln文件了。如果你習慣使用IDE,推薦你Visual Studio 2017或MonoDevelop v5.10及以上版本。如果你習慣使用命令行,你可以使用下列命令:
msbuild Reko-decompiler.sln
工具使用
在Windows上,安裝完成後會在開始菜單裡創建一個「Reko Decompiler」快捷方式,你可以直接點擊圖標啟動Reko客戶端。在非Windows系統上,你需要使用下列命令運行WindowsDecompiler.exe:mono WindowsDecompiler.exe
運行命令行客戶端
在Windows上,假設你已經把Reko的安裝目錄寫到了PATH環境變量裡,那你就可以直接在命令行中輸入下列命令來使用工具了:decompile some_binary_file.exe
在非Windows平臺上,假設你已經把Reko的安裝目錄寫到了PATH環境變量裡,那你就可以直接在命令行中輸入下列命令來使用工具了:mono decompile some_binary_file.exe
參考來源及下載地址:https://github.com/uxmal/reko