
請大蝦們看看上述OD的截圖,我按照上市邏輯,呼叫腳本如下所示,只是成功了交易糧食/水/木材/炮彈,其他物品和船只都沒有交易成功。因此想請教一下,問題出在哪里?
dm.AsmClear
dm.AsmAdd "mov ebp,esp"
dm.AsmAdd "push 0xA" //模擬堆疊地址環境
dm.AsmAdd "push 0x6" //模擬堆疊地址環境,提交物品的種類(比如 1種,2種)
dm.AsmAdd "push 0x00DF0100" //所要提交物品的編號、ID、數量指標
dm.AsmAdd "push 0x00E95898" //所要提交物品資料標識
dm.AsmAdd "mov eax,esp"
dm.AsmAdd "push 0x0" //模擬堆疊地址環境
dm.AsmAdd "push 0x0" //模擬堆疊地址環境,提交船只的種類(比如 1種,2種)
dm.AsmAdd "push 0x0" //所要提交船只的編號、ID指標
dm.AsmAdd "push 0x00FA3D98" //所要提交船只資料標識
dm.AsmAdd "mov eax,esp"
dm.AsmAdd "push 0x78" //模擬堆疊地址環境
dm.AsmAdd "push 0x0" //模擬堆疊地址環境
dm.AsmAdd "push 0x00010002" //木材、炮彈的數量
dm.AsmAdd "push 0x00030004" //糧食、水的數量
dm.AsmAdd "mov eax,esp"
dm.AsmAdd "push eax"
dm.AsmAdd "push eax"
dm.AsmAdd "push eax"
dm.AsmAdd "mov ecx,eax"
dm.AsmAdd "call 0x004D4CA0
dm.AsmAdd "mov esp,ebp"
dm_ret = dm.AsmCall (hwnd,1)
uj5u.com熱心網友回復:
它們前面不是分別有 lea eax, 指令嗎,應該是區域變數存盤的什么內容吧,把它們的地址傳過去,所以,你也得把相關地址給過去啊,直接的 push eax 可能不行的。那些地址應該是:; 下面的 -0x38 = 前面指令里的 0xC8,local.14 應是第 14個區域變數(以dword分)14*4=56=0x38
lea eax, [ebp-0x38]
push eax
lea eax, [ebp-0x60]
push eax
lea eax, [ebp-0x1c]
push eax
lea ecx, [ebp-0x24]
call ....
uj5u.com熱心網友回復:
多謝大佬指點,按照這個方法寫,還是出錯。不知道是什么原因?難道是大漠插件不支持這樣的匯編指令?dm.AsmClear
dm.AsmAdd "mov ebp,esp"
//dm.AsmAdd "push 0x0" 可以不用
dm.AsmAdd "push 0xA" //模擬堆疊地址環境
dm.AsmAdd "push 0x6" //模擬堆疊地址環境,提交物品的種類(比如 1種,2種)
dm.AsmAdd "push 0x00DF0100" //所要提交物品的編號、ID、數量指標
dm.AsmAdd "push 0x00E95898" //所要提交物品資料標識
dm.AsmAdd "lea eax,[ebp-0x38]"
dm.AsmAdd "push eax"
dm.AsmAdd "push 0x0" //模擬堆疊地址環境
dm.AsmAdd "push 0x0" //模擬堆疊地址環境,提交船只的種類(比如 1種,2種)
dm.AsmAdd "push 0x0" //所要提交船只的編號、ID指標
dm.AsmAdd "push 0x00FA3D98" //所要提交船只資料標識
dm.AsmAdd "lea eax,[ebp-0x60]"
dm.AsmAdd "push eax"
dm.AsmAdd "push 0x78" //模擬堆疊地址環境
dm.AsmAdd "push 0x0" //模擬堆疊地址環境
dm.AsmAdd "push 0x00010002" //木材、炮彈的數量
dm.AsmAdd "push 0x00030004" //糧食、水的數量
dm.AsmAdd "lea eax,[ebp-0x1C]"
dm.AsmAdd "push eax"
dm.AsmAdd "push 0x0" //模擬堆疊地址環境
dm.AsmAdd "push 0x000186A0" //金錢的數量
dm.AsmAdd "lea ecx,[ebp-0x24]"
dm.AsmAdd "call 0x004D4CA0"
dm.AsmAdd "mov esp,ebp"
dm_ret = dm.AsmCall (hwnd,1)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/40186.html
標籤:匯編語言
上一篇:python作業 求大神指點!
