2010-07-07 286 views
4

我寫了一個不錯的ARM彙編程序在幾年前,它已超過上ARM嵌入式系統它是專爲這些年做得很漂亮的工作。現在已經到了將其移植到非ARM系統上的時候了,我在想是否有工具或某種方法來取得我最初的ARM彙編源代碼,並從中得到一個基本的C文件。我可以在幾天內自己做,但有一個出發點很好。更好猶若應用程序或方法是免費的:)反編譯的ARM彙編回C

有什麼建議?

+2

我懷疑你會有很多運氣。通過了解一些編譯器如何從代碼生成彙編,反編譯器可以「作弊」一點點。由於您的代碼是手寫的,因此它的行爲可能與編譯器生成的代碼所預期的行爲至少有點不同。 – SoapBox 2010-07-07 21:35:32

回答

2

我不知道這樣的工具不幸......就好了; )

因此,我可以得到唯一的建議是把注意力集中在邏輯。

您寫了彙編代碼。所以你知道編碼應該做什麼。即使使用ARM程序集,將它轉換爲C代碼也不應該那麼困難。

我的意思是移植C至臂組件可以是一個艱鉅的任務。但是對於逆向選擇,如果你知道代碼的邏輯,如果你知道如何編寫C,它應該只是確定...

創建C結構,緩解您正在使用的內存區域。關於算法,它們不會改變。只是翻譯你從裝配做什麼到C,具有一定結構的幫助,等等

對不起,我可以給你這樣的工具...

祝你好運:)

+0

這是我所想的。如果沒有其他人發現更好的東西,我會將這個問題留待今後再開放,然後給予您信任:) – 2010-07-07 20:33:29

3

十六進制-Ray Decompiler插件用於IDA Pro可以反編譯ARM。這有點貴,如果你只需要一個例程,可能不是最好的選擇。

+0

是的,對我所需要的東西(ed)過度殺傷。我最終只是靠着子彈並手工反編譯。 – 2010-11-16 18:35:54