[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access//place your code here
cmp [eax+58],6 //这里是我发现,通关后新卡片[eax+50]值 = 1 并不会自动拾取,而且会变成无法点击BUG,所以加了个判断。这里[eax+58]的值代表的是某一种道具。
ja originalcode
mov [eax+50],1originalcode:
cmp byte ptr [eax+50],00
je PlantsVsZombies.exe+1B9DCexit:
jmp returnhere"PlantsVsZombies.exe"+1B99A:
jmp newmem
nop
returnhere:[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
"PlantsVsZombies.exe"+1B99A:
db 80 78 50 00 74 3C
//cmp byte ptr [eax+50],00
//je PlantsVsZombies.exe+1B9DC
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
originalcode:
mov [ebp+24],eax
mov [esp+10],eax
exit:
jmp returnhere
"PlantsVsZombies.exe"+88263:
jmp newmem
nop 2
returnhere:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
"PlantsVsZombies.exe"+88263:
db 2B 45 24 89 44 24 10
//sub eax,[ebp+24]
//mov [esp+10],eax
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
originalcode:
mov eax,0
exit:
jmp returnhere
"PlantsVsZombies.exe"+4A3C13:
jmp newmem
nop 2
returnhere:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
"PlantsVsZombies.exe"+4A3C13:
db 8B 04 85 10 20 7A 00
//mov eax,[eax*4+PlantsVsZombies.exe+3A2010]
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
originalcode:
add dword ptr [esi+58],-02
mov eax,[esi+58]
exit:
jmp returnhere
"PlantsVsZombies.exe"+5F8A9:
jmp newmem
nop 2
returnhere:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
"PlantsVsZombies.exe"+5F8A9:
db 83 46 58 FF 8B 46 58
//add dword ptr [esi+58],-01
//mov eax,[esi+58]
把PlantsVsZombies.exe+FE2F - je PlantsVsZombies.exe+10754:je改成jmp必定跳转,就能实现植物的叠加种植了。
CE脚本代码:
[Asm] 纯文本查看复制代码
CE脚本代码:
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
originalcode:
jmp PlantsVsZombies.exe+10754
exit:
jmp returnhere
"PlantsVsZombies.exe"+FE2F:
jmp newmem
nop
returnhere:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
"PlantsVsZombies.exe"+FE2F:
db 0F 84 1F 09 00 00
//je PlantsVsZombies.exe+10754