冰楓論壇
標題:
關於數據的小問題
[打印本頁]
作者:
a45s67
時間:
2016-7-10 11:45
標題:
關於數據的小問題
麻煩大家了~~~
技能15下裡面
SkillId:
// 烈焰巫師
DD 00B71B1A // #12000026 // 元素火焰 I
DD 00B8A1BC // #12100028 // 元素火焰 II
DD 00B8C8CC // #12110028 // 元素火焰 III
DD 00B8EFCA // #12120010 // 元素火焰 IV
// 凱內西斯
DD 08784A11 // #142101009 // 心靈領域
DD 08789441 // #142120001 // 擷取心靈2
DD 0878982D // #142121005 // 終極技- B.P.M
DD 00000000
MyData:
DB AC BA E6 E1 D5 35 0F 1F 2A 90 E9 29
MyHook:
mov [02298437],00000006
pushad
mov esi,SkillId
之後會把skillid ,mov到esi中
可是esi不是只能放一個值嗎
skillid中存了這麼多技能位置為何能放得下esi中
還是我對dd的想法錯了,我以為dd只是把值放進記憶體alloc給skillid中的空間而已
還有聖十字魔法頓
[Enable]
[01BEA378]+3A88:
db 2D DA F7 3C CA A4 E6 61 1B 76 19 66
[Disable]
[01BEA378]+3A88:
db 73 8D 36 F6 6B B4 B1 9F 56 90 16 92
裡面db的值是怎麼來的,db跟dd又差在哪裡~~?
不好意思問題有點多而且好像不夠具體哈哈
拜託大神為我解答一下3q!!!
作者:
黃金波斯貓
時間:
2016-7-10 14:03
本帖最後由 黃金波斯貓 於 2016-7-10 14:06 編輯
2016-7-10 13:52 上傳
下載附件
(307.91 KB)
2016-7-10 13:52 上傳
下載附件
(285.37 KB)
DB 是宣告一個含有後面初值的 位元組 資料
DD 是宣告一個含有後面初值的 DWORD 資料
配合著圖看你應該比較清楚,它不是真的把整個資料塞進 esi
mov [02298437],00000006
pushad
mov esi,SkillId // 把 SkillId 位址寫入 esi
mov eax,[esi] // 把 [esi] 值寫入 eax
test eax,eax // 判斷 eax 是否為 0
je Finish // 是則跳至 Finish (這也是為什麼 SkillId 最後一個是 DD 00000000)
push eax
call SetMaxAttackCount
add esi,00000004 // 將 esi 值 + 4 (就等於下一個 Skill 的位址啦!)
jmp NextSkill // 重複動作
複製代碼
聖十字魔法盾那個是動態數據,其 DB 就是慢慢搜尋出來的。
作者:
Doem
時間:
2016-7-10 14:38
2016-7-10 14:37 上傳
下載附件
(249.15 KB)
CE原本註解打中文會亂碼....就加減看吧!
底下的SkillID地址部分, 轉成4 Bytes模式比較好觀察
歡迎光臨 冰楓論壇 (https://bingfong.com/)
Powered by 冰楓