IDA分析HELLO ARM 程式的ARM 反彙編

2021-06-22 02:46:08 字數 927 閱讀 5642

#表明這個main函式是被程式匯出的

export main

#main為函式的名稱ida pro 能自動識別源程式中所有的函式以及名稱

main

#ida識別出的棧變數

var_c = -0xc

var_8 = -8

#堆疊定址指令 把暫存器的值壓入堆疊

stmfd sp1,

#sp暫存器的值加上4 賦給r11暫存器

add   r11,sp,#4

#sp暫存器的值減去8賦給sp暫存器

sub      sp ,sp,#8

#寫暫存器指令 把r0暫存器中的值儲存到棧變數var_8中

str      r0,

#寫暫存器指令 把r1暫存器中的值儲存到棧變數var_c中

str      r1,

#讀暫存器指令 把(ahelloarm-0x8300)計算出的位址放入到r3暫存器中

ldr      r3, =(ahelloarm-0x8300)

#pc暫存器值加上r3暫存器的值 放入到r3暫存器

add      r3, pc,r3  

#把r3暫存器的值放到r0暫存器中

mov   r0, r3  

#類似於呼叫函式功能  puts為標準輸入輸出函式中printf的實現

bl    puts

#把0賦值給r3暫存器

mov      r3, #0

#把r3暫存器中的值賦值給r0暫存器

mov      r0, r3

#r11暫存器的值減去4 賦給sp暫存器

sub   sp, r11,#4  

#堆疊定址指令 從堆疊中恢復暫存器的值

ldmfd sp!,

#include

int main(int argc, char * argv)

03 IDA逆向分析

idapython的文件 在ida的plugins目錄下建立 listfuncplugin.py檔案 coding utf 8 import idautils import idaapi import idc from datetime import datetime class listfunc ...

IDA同步x32dbg遠端除錯分析虛擬機器內惡意軟體

演示環境 主機 win10 目標虛擬機器 win7 用得到的工具 ida,0d,ret sync外掛程式 把ida的dbgsrv目錄下的win32 remote.exe拷貝到虛擬機器裡。該程式預設獲取的是系統第乙個介面卡的ip位址。我虛擬機器裡安裝了有三個網路介面卡。即便禁用網路介面卡也沒用,win...

詞法分析程式

上課沒聽啥,一邊看書,一邊做的。基本上,老師的要求是實現了,能把乙個句子 也可以是一整個程式,但還不完善,由於時間急,很多情況來不及考慮了 中的單詞項分析出它是保留字,還是識別符號,運算子等等。開始是在控制台下做得,也比較純正 lex.h ifndef lex h define lex h incl...