Senior Member
|
要修改遊戲
原本x86指令只佔用6bytes不夠長 再加上位置是使用後才申請出的
無奈只好寫aob腳本
腳本轉跳沒問題但無法關閉,一看轉跳怎麼佔用了14bytes
C02DC4F2 - FF 25 00 00 000 0000F30500000000 - jmp 05F30000
C02DC500 - 90 - nop
應該是大跳轉蓋掉了原本的指令
本來還原代碼補上即可
但是被蓋掉的代碼有一行是jl xxxxxxx(申請出的位置不固定)..
腳本如下...我不是全懂 有些只是拿其他人的腳本參考修改
請問要如何改寫才能正常運作
[ENABLE]
alloc(newmem,128)
label(returnhere)
label(originalcode)
label(exit)
label(nocd)
registersymbol(nocd)
aobscan(aob2,F3 41 0F 11 6E 20 41 FF C7)
newmem:
originalcode:
mov [r14+20],0
exit:
jmp returnhere
aob2:
nocd:
jmp newmem
nop
returnhere:
[DISABLE]
dealloc(newmem)
nocd:
movss [r14+20],xmm5
//Alt: db F3 41 0F 11 6E 20
unregistersymbol(nocd)
__________________
為了刷存在感,要想這麼多廢文出來發,我真是服了你。
|