冰楓論壇

標題: 想請教關於找不到aob碼的情況下,如何更新數據? [打印本頁]

作者: 123789qanda    時間: 2020-12-23 15:02
標題: 想請教關於找不到aob碼的情況下,如何更新數據?
想請教關於找不到aob碼的情況下,如何更新數據?
有部分我會找,可是有些找不到,是我思考的方式不對還是找的方式不對
call函數調用方法的地址,所以在基值的上下尋找都沒有看到,有些找不到
請大大教教我,給我一點方向或方法。
以 TwMS v230.2 ICS 皇家守護
為例

// TwMS v230.2 ICS 皇家守護
[ENABLE]
Registersymbol(RoyalguardSW)
Alloc(Royalguardhook,128)
Alloc(RoyalguardSW,4)
Label(Royalguard)
Label(RoyalguardSWon)
Label(RoyalguardSWoff)
Label(Royalguardon)
Label(Royalguardoff)

Royalguardhook:
cmp [esp],00B9E256
jne GetFocus
mov [esp],Royalguard
jmp GetFocus

RoyalguardSW:
DD 01//1=開,0=關

Royalguard:
cmp [RoyalguardSW],1
je RoyalguardSWon
cmp [RoyalguardSW],0
je RoyalguardSWoff
jmp 00B9E256 這個我找的到

RoyalguardSWon:
call Royalguardon
jmp 00B9E256 這個我找的到

RoyalguardSWoff:
call Royalguardoff
jmp 00B9E256 這個我找的到

Royalguardon:
push eax
mov eax,[042DEB04] //像這個我找不到,找到00B9E256接下來,上下滑都找不到,我的方法是式用代碼去找,可是也找不不到,就算掃出來有不知導正不正確。
mov [eax+5694],C691E02A  //像這裡以下我找不到
mov [eax+5694+4],5E348F01
mov [eax+5694+8],9A166F82
mov [eax+5694+C],667F8358
mov [eax+5694+10],B32BADAF
mov [eax+5694+14],62124149
pop eax
ret

Royalguardoff:
push eax
mov eax,[042DEB04]
mov [eax+5694],AECFF36D
mov [eax+5694+4],6D767F9B
mov [eax+5694+8],6E198FB6
mov [eax+5694+C],5D252455
mov [eax+5694+10],AAE92922
mov [eax+5694+14],72256FC4
pop eax
ret

0458DE18: //這個我找的到
DD Royalguardhook

[DISABLE]
0458DE18: //這個我找的到
DD GetFocus

DeAlloc(Royalguardhook)
DeAlloc(RoyalguardSW)
UnRegistersymbol(RoyalguardSW)

作者: btb    時間: 2020-12-23 15:08
你找不到的地方是要參考動態數據來更新的
作者: 123789qanda    時間: 2020-12-23 15:21
大大你的意思是利用這組aob去找。
(db 2A E0 91 C6 01 8F 34 5E 82 6F 16 9A 58 83 7F 66 AF AD 2B B3 49 41 12 62)

以大大你發的這為例:
//TwMS v225.2 動態數據 皇家守衛
[Enable]
[03F8F7B0]+398C:
db 2A E0 91 C6 01 8F 34 5E 82 6F 16 9A 58 83 7F 66 AF AD 2B B3 49 41 12 62
[Disable]
[03F8F7B0]+398C:
db 6D F3 CF AE 9B 7F 76 6D B6 8F 19 6E 55 24 25 5D 22 29 E9 AA C4 6F 25 72

就可以找到了嗎?我試試看
不過我還是請教一下是不是因為call的基值,但像我找不到地方是不是他
調用放函數程式的地方,所以上下找才沒用。我這樣理解不知道對不對。
感謝大大!
作者: btb    時間: 2020-12-23 15:48
123789qanda 發表於 2020-12-23 15:21
大大你的意思是利用這組aob去找。
(db 2A E0 91 C6 01 8F 34 5E 82 6F 16 9A 58 83 7F 66 AF AD 2B B3 49 4 ...

不是我的意思是說直接填上去.至於怎麼填參考舊版,動態數據DB碼不需要更新,除非失效才要重新抓過
作者: smilelin0419    時間: 2020-12-23 17:28
Find assembly code
作者: 123789qanda    時間: 2020-12-23 17:51
ok,感謝大大大致了解,我之前是用cem更新ics做練習
查看了230.2TwMS v230.2 動態數據 皇家守衛
是沒錯[042DEB04]+5694,假設我要更新下面代碼
Royalguardon:
push eax
mov eax,[042DEB04] /
mov [eax+5694],C691E02A
mov [eax+5694+4],5E348F01
mov [eax+5694+8],9A166F82
mov [eax+5694+C],667F8358
mov [eax+5694+10],B32BADAF
mov [eax+5694+14],62124149
pop eax
ret
步驟1,開啟CE鎖定遊戲
步驟2,搜索DB碼
步驟3,像這種事去算它偏移mov [eax+5694+4],5E348F01嗎?
完成更新
弱弱的問一下cem是不是無法更新動態數據,我想練習找找看,
我用DB碼找不太到,是要用當前遊戲版本去更新。



作者: btb    時間: 2020-12-23 19:18
123789qanda 發表於 2020-12-23 17:51
ok,感謝大大大致了解,我之前是用cem更新ics做練習
查看了230.2TwMS v230.2 動態數據 皇家守衛
是沒錯[042D ...

我建議其實不用自己更新,反正大家都會po,至於更新的對不對,我只能說各有各的見解.動態數據是無法靠CEM更新的,只能線上抓取,而且也不一定每個版本都有效果,像神域,就是個例子,其實大部分電腦使用動態數據神域護佑,會失效,而某些電腦會成功,始終無人修復
作者: prt    時間: 2020-12-23 19:24
// TwMS v230.3 ICS 皇家守護
[ENABLE]
Registersymbol(RoyalguardSW)
Alloc(Royalguardhook,128)
Alloc(RoyalguardSW,4)
Label(Royalguard)
Label(RoyalguardSWon)
Label(RoyalguardSWoff)
Label(Royalguardon)
Label(Royalguardoff)

Royalguardhook:
cmp [esp],00B9E186
jne GetFocus
mov [esp],Royalguard
jmp GetFocus

RoyalguardSW:
DD 01//1=開,0=關

Royalguard:
cmp [RoyalguardSW],1
je RoyalguardSWon
cmp [RoyalguardSW],0
je RoyalguardSWoff
jmp 00B9E186

RoyalguardSWon:
call Royalguardon
jmp 00B9E186

RoyalguardSWoff:
call Royalguardoff
jmp 00B9E186

Royalguardon:
push eax
mov eax,[042DEB04]
mov [eax+5694],C691E02A
mov [eax+5694+4],5E348F01
mov [eax+5694+8],9A166F82
mov [eax+5694+C],667F8358
mov [eax+5694+10],B32BADAF
mov [eax+5694+14],62124149
pop eax
ret

Royalguardoff:
push eax
mov eax,[042DEB04]
mov [eax+5694],AECFF36D
mov [eax+5694+4],6D767F9B
mov [eax+5694+8],6E198FB6
mov [eax+5694+C],5D252455
mov [eax+5694+10],AAE92922
mov [eax+5694+14],72256FC4
pop eax
ret

0458DE18:
DD Royalguardhook

[DISABLE]
0458DE18:
DD GetFocus

DeAlloc(Royalguardhook)
DeAlloc(RoyalguardSW)
UnRegistersymbol(RoyalguardSW)

作者: 123789qanda    時間: 2020-12-23 19:57
因為找數據好像大海裡撈寶藏,以前就在課本裡學過但很無聊。
去沒有這麼真實自己應用在遊戲上覺得很有趣。
也感謝各位大大的指導,我努力試找看看當作練習,
希望有朝一日可以有各位大大百分之一的功力。

作者: smilelin0419    時間: 2020-12-24 12:09
//以下擷取部分

mov eax,[042DEB04] //基址 這個應該會更新才對
mov [eax+5694],C691E02A
//5694 這個部分 我自己是認為基址加偏移 = 技能開啟的位置
//至於怎麼更新 去找找Boyue的舊文章 土法煉鋼找動態數據 了解一下
//然後去尋找crc的hook點怎麼來的
//在思考為什麼會有這篇移
//我記得有一篇回復Boyue也有解釋過神域crc的寫法
//去尋找吧

mov [eax+5694+4],5E348F01 // 5694+4至於為啥要+4 +8 +C 因為 4bytes 為一組 每4bytes接續下去就+4  以此類推

mov [eax+5694+8],9A166F82
mov [eax+5694+C],667F8358
mov [eax+5694+10],B32BADAF
mov [eax+5694+14],62124149

//以上解釋有錯的話再請大佬們補充修正 感謝




歡迎光臨 冰楓論壇 (https://bingfong.com/) Powered by 冰楓