首頁(yè)
社區(qū)
課程
招聘
<加密與解密>第四版111頁(yè)指針地址問(wèn)題
Morphy 2021-11-17 1404

新人小白向各位大佬指教!

 

請(qǐng)問(wèn)下面這段代碼中 0040104000401044 兩行 為什么[esp+08][esp+04]指向了參數(shù)a和參數(shù)b的指針?
00401015的這行,不是[esp+0c]只想b的指針嗎?

收藏
2條回答
estream 2021-12-3

你好,方便把前面的匯編也發(fā)出來(lái)嗎?

回復(fù)
xiangyandt 2022-1-27

你應(yīng)該把前面部分的代碼也貼出來(lái),我回去翻翻自己的書(shū)才搞明白。
執(zhí)行到0040101D call指令之后棧情況如下,x表示初始棧頂位置作為參考

1
2
3
4
5
6
棧地址   棧
x-10  | 22 10 40 00 | esp
x-c   | x-4         | esp+4
x-8   | x           | esp+8
x-4   | 5           | esp+c
x     | 6           | esp+10

此時(shí)eip指向00401040,esp+8即x-8,[esp+8]值為x即6的地址,esp+4同理。

回復(fù)
  參與學(xué)習(xí)     人
  提問(wèn)次數(shù)     100 個(gè)
我的問(wèn)答 領(lǐng)取收益
0
我的提問(wèn)
0
我的回答
0
學(xué)習(xí)收益