轉:https://blog.csdn.net/daidi1989/article/details/86304843
IDA是一款功能強大的反編譯軟件,網上找了許久沒找到它的使用教程,經過摸索可將STM32的hex文件進行反匯編,操作步驟如下,首先下載IDA Pro版破解軟件,免安裝。
IDA Pro下載鏈接:https://pan.baidu.com/s/181PHGYRQvKUZlgL6VVQOIw 提取碼:sa2y
如果文件為bin文件,可使用bin轉hex工具轉為hex格式
BinToHex下載鏈接:https://pan.baidu.com/s/12pkwO2DHhJd7_zVDF5RbaA 提取碼:8lel
1、打開解壓后目錄下的idaq.exe可執行文件,點擊[File]-[Open]看到如下界面
2、打開hex文件彈出提示
3、【processot type】選擇小端ARM,點擊【set】保存
4、按順序點擊圖片中的1-2-3,設置好后點擊所以【ok】關閉提示框
5、接下來將看到hex的文件內容,在CODE32下按d合並行
6、右擊第二行跳到程序起始處
7、在跳轉到的程序前面按c鍵
8、反匯編完成,在CODE32處按F5鍵將生成類C偽代碼,見第12步
9、右擊函數頭選擇【Graph view】可查看函數間調用關系
10、查看函數調用關系
11、在子函數中按【F5】鍵,生成反編譯代碼
12、反編譯后的CODE32函數,該函數前面是stm32中啟動文件中的一些時鍾初始化函數,main函數的入口在最后sub_8003076();中,雙擊該函數即可進入。
13、進入main函數中將看到如下一些具體功能實現代碼,注意寄存器的配置都是對芯片的某個內存地址進行操作,變量也是對應某一個存儲器地址。