STM32——IDA反編譯 Hex\Bin文件成C代碼(轉)

轉:https://blog.csdn.net/daidi1989/article/details/86304843函數

 

IDA是一款功能強大的反編譯軟件,網上找了許久沒找到它的使用教程,通過摸索可將STM32的hex文件進行反彙編,操做步驟以下,首先下載IDA Pro版破解軟件,免安裝。工具

IDA Pro下載連接:https://pan.baidu.com/s/181PHGYRQvKUZlgL6VVQOIw        提取碼:sa2y .net

 

 

若是文件爲bin文件,可以使用bin轉hex工具轉爲hex格式3d

BinToHex下載連接:https://pan.baidu.com/s/12pkwO2DHhJd7_zVDF5RbaA     提取碼:8lel blog

 

 

一、打開解壓後目錄下的idaq.exe可執行文件,點擊[File]-[Open]看到以下界面教程

 

 

 

 二、打開hex文件彈出提示圖片

 

 

 三、【processot type】選擇小端ARM,點擊【set】保存內存

 

 

 四、按順序點擊圖片中的1-2-3,設置好後點擊因此【ok】關閉提示框get

 

 

 五、接下來將看到hex的文件內容,在CODE32下按d合併行編譯

 

 

 六、右擊第二行跳到程序起始處

 

 

 七、在跳轉到的程序前面按c鍵

 

 

 八、反彙編完成,在CODE32處按F5鍵將生成類C僞代碼,見第12步

 

 

 九、右擊函數頭選擇【Graph view】可查看函數間調用關係

 

 

 十、查看函數調用關係

 

 

 

 十一、在子函數中按【F5】鍵,生成反編譯代碼

 

 

 十二、反編譯後的CODE32函數,該函數前面是stm32中啓動文件中的一些時鐘初始化函數,main函數的入口在最後sub_8003076();中,雙擊該函數便可進入。

 

 

 

 1三、進入main函數中將看到以下一些具體功能實現代碼,注意寄存器的配置都是對芯片的某個內存地址進行操做,變量也是對應某一個存儲器地址。

 

相關文章
相關標籤/搜索