這個問題在這里已經有了答案: CS:覆寫訪問 IDA 輸出中的全域變數,如 mov eax、cs:x? (1 個回答) 9 小時前關閉。
我在區分是加載地址還是從地址加載內容時遇到問題。請幫我澄清一下。
1. mov [rsp 78h arg_0], rsi
2. mov rsi, cs:qword_1F39B60
3. mov [rsp 78h arg_38], rsi
在第 2 行,是加載1F39B60in還是inrsi的內容?1F39B60rsi
會lea rsi, [qword_1F39B60]一樣嗎?
如果非括號mov甚至允許對記憶體使用操作,或者這只是視覺 IDA 的事情?
你能向我解釋為什么它顯示cs:在qword_1F39B60片段中.data嗎?不應該ds:嗎?
最后但并非最不重要的是反匯編程式rsp 78h的一種花哨的說法?rbp
uj5u.com熱心網友回復:
在第 2 行,是加載
1F39B60in還是inrsi的內容?1F39B60rsi
假設這qword_1F39B60是您的反匯編程式在代碼部分某處定義的偽標簽,并且該標簽的地址鏈接到虛擬地址0x01F39B60。這是將被加載到的數字rsi。
lea rsi, [qword_1F39B60] 會一樣嗎?
是的。
是否允許對記憶體使用非括號
mov操作,或者這只是視覺 IDA 的事情?
是的,mov reg,[mem]從記憶體位置mov reg,mem加載暫存器并使用該記憶體位置的地址加載暫存器。(重新定位的)地址在指令編碼中表示為立即運算元。
你能向我解釋為什么它顯示
cs:在qword_1F39B60.data 段中嗎?不應該是 ds: 嗎?
在 64bit 模式下是cs,ds,es,ss無關緊要的內容。看編碼。如果是BE609BF301,則應拆解為mov rsi,qword_1F39B60。
如果是,則根據 Nasm 反匯編程式2E488B3425609BF301,它對應于。mov rsi,[cs:1F39B60h]也許 IDA 是錯誤的。
最后但并非最不重要的是反匯編程式
rsp 78h的一種花哨的說法?rbp
不,反匯編程式永遠不知道rbp=rsp 78h.
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/490832.html
