Boomerang

軟件截圖:
Boomerang
軟件詳細信息:
版本: alpha 0.3
上傳日期: 3 Jun 15
許可: 免費
人氣: 41

Rating: 4.5/5 (Total Votes: 2)

一個反編譯器的輸入是一個可執行文件,並試圖創造一個高層次,即做同樣的事情編譯,甚至可能維護的源文件。
因此,它是一個編譯器,它接受一個源文件,並使得可執行的相反。然而,一般的反編譯並不試圖扭轉反編譯的每一個動作,而是將輸入程序反复直到結果是高水平的源代碼。因此,它不會重新創建原始源文件;可能沒什麼喜歡它。
它並不重要,如果可執行文件具有符號或沒有,或從任何特定語言編譯。 (不過,聲明的語言,如ML不考慮。)
這樣做的目的是創建一個可移植的反編譯器(即一個可以反編譯不同類型的機器代碼文件微薄的努力,比如X86-窗口,SPARC-Solaris中,等)。它也意欲是高度模塊化,從而使反編譯的不同部分可以被替換為實驗的模塊。它的目的是要最終成為互動,一拉IDA Pro的,因為有些東西(不僅僅是變量名​​和評論,雖然這些顯然是非常重要的)需要專家介入。是否交互所屬的反編譯或在一個單獨的工具仍不清楚。
通過將各指令的語義,並利用強大的技術,例如靜態單賦值數據流分析,飛鏢應(主要)獨立發生所使用的編譯器的確切行為。優化應不影響結果。因此,我們的目標是一般反編譯。
局限性:
·在你想嘗試迴旋鏢,因為它是一個反編譯器(而不是用它進行試驗,或改進它)的情況下,應注意其嚴格的限制。截至2004年初,迴旋鏢只會反編譯X86(的Linux / X86或Windows PE),SPARC(Solaris或Linux的推測/ SPARC),或Power PC(Linux的/ PPC或Mac OS / X)計劃。特別要注意的是它不會反編譯DOS或NE(Windows 3.1的)程序。添加另一個處理器是一​​個大的(數月)的事業。
 
·它只會生成C,而不是C ++。它將反編譯的C ++,當然方案,(以及任何種類的程序,包括彙編)。您可以手動編輯一些C ++程序轉化為可用的C ++源代碼。對於MSVC編譯的程序,目前你必須spoonfeed的反編譯器,並告訴它有一個寄存器參數(thiscall調用約定)。開關來處理這是複雜的;看到使用-sf開關。

類似的軟件

意見 Boomerang

評論沒有發現
添加評論
打開圖片!