Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>200</ID>
<Description>"Full Mana Always (Use with start with full mana)"</Description>
<Options moAlwaysHideChildren="1"/>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
aobscanmodule(ManaGain,GameAssembly.dll,89 47 28 8B 45 F0) // should be unique
alloc(newmem,$1000)
label(code)
label(return)
newmem:
code:
mov eax,(int)99
mov [edi+28],eax
mov eax,[ebp-10]
jmp return
ManaGain:
jmp newmem
nop
return:
registersymbol(ManaGain)
[DISABLE]
ManaGain:
db 89 47 28 8B 45 F0
unregistersymbol(ManaGain)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: GameAssembly.dll+20C472
GameAssembly.dll+20C451: 66 0F 6E 45 0C - movd xmm0,[ebp+0C]
GameAssembly.dll+20C456: 8B 77 28 - mov esi,[edi+28]
GameAssembly.dll+20C459: 0F 5B C0 - cvtdq2ps xmm0,xmm0
GameAssembly.dll+20C45C: 6A 00 - push 00
GameAssembly.dll+20C45E: 51 - push ecx
GameAssembly.dll+20C45F: F3 0F 59 C1 - mulss xmm0,xmm1
GameAssembly.dll+20C463: F3 0F 11 04 24 - movss [esp],xmm0
GameAssembly.dll+20C468: E8 B3 CF ED 00 - call GameAssembly.dll+10E9420
GameAssembly.dll+20C46D: 03 C6 - add eax,esi
GameAssembly.dll+20C46F: 83 C4 08 - add esp,08
// ---------- INJECTING HERE ----------
GameAssembly.dll+20C472: 89 47 28 - mov [edi+28],eax
// ---------- DONE INJECTING ----------
GameAssembly.dll+20C475: 8B 45 F0 - mov eax,[ebp-10]
GameAssembly.dll+20C478: 85 C0 - test eax,eax
GameAssembly.dll+20C47A: 0F 84 BD 00 00 00 - je GameAssembly.dll+20C53D
GameAssembly.dll+20C480: 53 - push ebx
GameAssembly.dll+20C481: 8B C8 - mov ecx,eax
GameAssembly.dll+20C483: E8 A8 4D E5 FF - call GameAssembly.il2cpp_class_get_static_field_data+50
GameAssembly.dll+20C488: 8B 4D 0C - mov ecx,[ebp+0C]
GameAssembly.dll+20C48B: 8B 55 E8 - mov edx,[ebp-18]
GameAssembly.dll+20C48E: 8B 75 F4 - mov esi,[ebp-0C]
GameAssembly.dll+20C491: 29 08 - sub [eax],ecx
}
</AssemblerScript>
<CheatEntries>
<CheatEntry>
<ID>201</ID>
<Description>"FullMana1"</Description>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
aobscanmodule(FullMana,GameAssembly.dll,6A 00 51 89 41 28 E8 9C) // should be unique
alloc(newmem,$1000)
label(code)
label(return)
newmem:
code:
push 00
push ecx
mov eax,(int)99
mov [ecx+28],eax
jmp return
FullMana:
jmp newmem
nop
return:
registersymbol(FullMana)
[DISABLE]
FullMana:
db 6A 00 51 89 41 28
unregistersymbol(FullMana)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: GameAssembly.dll+214349
GameAssembly.dll+214336: 8A 4D 0C - mov cl,[ebp+0C]
GameAssembly.dll+214339: 88 48 66 - mov [eax+66],cl
GameAssembly.dll+21433C: 5D - pop ebp
GameAssembly.dll+21433D: C3 - ret
GameAssembly.dll+21433E: CC - int 3
GameAssembly.dll+21433F: CC - int 3
PuzzleTroop.SetMana: 55 - push ebp
PuzzleTroop.SetMana+1: 8B EC - mov ebp,esp
GameAssembly.dll+214343: 8B 4D 08 - mov ecx,[ebp+08]
GameAssembly.dll+214346: 8B 45 0C - mov eax,[ebp+0C]
// ---------- INJECTING HERE ----------
GameAssembly.dll+214349: 6A 00 - push 00
// ---------- DONE INJECTING ----------
GameAssembly.dll+21434B: 51 - push ecx
GameAssembly.dll+21434C: 89 41 28 - mov [ecx+28],eax
GameAssembly.dll+21434F: E8 9C 11 00 00 - call PuzzleTroop.UpdateManaDisplay
GameAssembly.dll+214354: 83 C4 08 - add esp,08
GameAssembly.dll+214357: 5D - pop ebp
GameAssembly.dll+214358: C3 - ret
GameAssembly.dll+214359: CC - int 3
GameAssembly.dll+21435A: CC - int 3
GameAssembly.dll+21435B: CC - int 3
GameAssembly.dll+21435C: CC - int 3
}
</AssemblerScript>
</CheatEntry>
<CheatEntry>
<ID>202</ID>
<Description>"FullMana2"</Description>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
aobscanmodule(INJECT,GameAssembly.dll,08 66 0F 6E 48 28) // should be unique
alloc(newmem,$1000)
label(code)
label(return)
newmem:
code:
mov [eax+28],(int)99
movd xmm1,[eax+28]
jmp return
INJECT+01:
jmp newmem
return:
registersymbol(INJECT)
[DISABLE]
INJECT+01:
db 66 0F 6E 48 28
unregistersymbol(INJECT)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: GameAssembly.dll+20EC26
GameAssembly.dll+20EC19: 5D - pop ebp
GameAssembly.dll+20EC1A: C3 - ret
GameAssembly.dll+20EC1B: CC - int 3
GameAssembly.dll+20EC1C: CC - int 3
GameAssembly.dll+20EC1D: CC - int 3
GameAssembly.dll+20EC1E: CC - int 3
GameAssembly.dll+20EC1F: CC - int 3
PuzzleTroop.GetManaPercentage: 55 - push ebp
PuzzleTroop.GetManaPercentage+1: 8B EC - mov ebp,esp
GameAssembly.dll+20EC23: 8B 45 08 - mov eax,[ebp+08]
// ---------- INJECTING HERE ----------
GameAssembly.dll+20EC26: 66 0F 6E 48 28 - movd xmm1,[eax+28]
// ---------- DONE INJECTING ----------
GameAssembly.dll+20EC2B: 66 0F 6E 40 2C - movd xmm0,[eax+2C]
GameAssembly.dll+20EC30: 0F 5B C9 - cvtdq2ps xmm1,xmm1
GameAssembly.dll+20EC33: 0F 5B C0 - cvtdq2ps xmm0,xmm0
GameAssembly.dll+20EC36: F3 0F 5E C8 - divss xmm1,xmm0
GameAssembly.dll+20EC3A: F3 0F 59 0D 48 C6 AF 0A - mulss xmm1,[GameAssembly.dll+172C648]
GameAssembly.dll+20EC42: F3 0F 11 4D 08 - movss [ebp+08],xmm1
GameAssembly.dll+20EC47: D9 45 08 - fld dword ptr [ebp+08]
GameAssembly.dll+20EC4A: 5D - pop ebp
GameAssembly.dll+20EC4B: C3 - ret
GameAssembly.dll+20EC4C: CC - int 3
}
</AssemblerScript>
</CheatEntry>
</CheatEntries>
</CheatEntry>
<CheatEntry>
<ID>221</ID>
<Description>"After Battle Rewards (Open Bounty Window In Match To Update Values)"</Description>
<LastState Value="" RealAddress="00000000"/>
<GroupHeader>1</GroupHeader>
<CheatEntries>
<CheatEntry>
<ID>216</ID>
<Description>"Max Maps"</Description>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
aobscanmodule(Maps,GameAssembly.dll,8B 51 50 8B 41 5C) // should be unique
alloc(newmem,$1000)
label(code)
label(return)
newmem:
code:
mov [ecx+50],(int)10
mov edx,[ecx+50]
mov eax,[ecx+5C]
jmp return
Maps:
jmp newmem
nop
return:
registersymbol(Maps)
[DISABLE]
Maps:
db 8B 51 50 8B 41 5C
unregistersymbol(Maps)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: GameAssembly.dll+3CE336
GameAssembly.dll+3CE329: 5E - pop esi
GameAssembly.dll+3CE32A: 5B - pop ebx
GameAssembly.dll+3CE32B: 5D - pop ebp
GameAssembly.dll+3CE32C: C3 - ret
GameAssembly.dll+3CE32D: CC - int 3
GameAssembly.dll+3CE32E: CC - int 3
GameAssembly.dll+3CE32F: CC - int 3
PuzzlePlayer.GetEarnedMaps: 55 - push ebp
PuzzlePlayer.GetEarnedMaps+1: 8B EC - mov ebp,esp
GameAssembly.dll+3CE333: 8B 4D 08 - mov ecx,[ebp+08]
// ---------- INJECTING HERE ----------
GameAssembly.dll+3CE336: 8B 51 50 - mov edx,[ecx+50]
// ---------- DONE INJECTING ----------
GameAssembly.dll+3CE339: 8B 41 5C - mov eax,[ecx+5C]
GameAssembly.dll+3CE33C: 3B D0 - cmp edx,eax
GameAssembly.dll+3CE33E: 7E 05 - jle GameAssembly.dll+3CE345
GameAssembly.dll+3CE340: 89 41 50 - mov [ecx+50],eax
GameAssembly.dll+3CE343: 5D - pop ebp
GameAssembly.dll+3CE344: C3 - ret
GameAssembly.dll+3CE345: 8B C2 - mov eax,edx
GameAssembly.dll+3CE347: 5D - pop ebp
GameAssembly.dll+3CE348: C3 - ret
GameAssembly.dll+3CE349: CC - int 3
}
</AssemblerScript>
</CheatEntry>
<CheatEntry>
<ID>217</ID>
<Description>"Max Keys"</Description>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
aobscanmodule(Keys,GameAssembly.dll,8B 51 2C 8B 41 60) // should be unique
alloc(newmem,$1000)
label(code)
label(return)
newmem:
code:
mov [ecx+2C],(int)5
mov edx,[ecx+2C]
mov eax,[ecx+60]
jmp return
Keys:
jmp newmem
nop
return:
registersymbol(Keys)
[DISABLE]
Keys:
db 8B 51 2C 8B 41 60
unregistersymbol(Keys)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: GameAssembly.dll+3CE246
GameAssembly.dll+3CE239: CC - int 3
GameAssembly.dll+3CE23A: CC - int 3
GameAssembly.dll+3CE23B: CC - int 3
GameAssembly.dll+3CE23C: CC - int 3
GameAssembly.dll+3CE23D: CC - int 3
GameAssembly.dll+3CE23E: CC - int 3
GameAssembly.dll+3CE23F: CC - int 3
PuzzlePlayer.GetEarnedKeys: 55 - push ebp
GameAssembly.dll+3CE241: 8B EC - mov ebp,esp
GameAssembly.dll+3CE243: 8B 4D 08 - mov ecx,[ebp+08]
// ---------- INJECTING HERE ----------
GameAssembly.dll+3CE246: 8B 51 2C - mov edx,[ecx+2C]
// ---------- DONE INJECTING ----------
GameAssembly.dll+3CE249: 8B 41 60 - mov eax,[ecx+60]
GameAssembly.dll+3CE24C: 3B D0 - cmp edx,eax
GameAssembly.dll+3CE24E: 7E 05 - jle GameAssembly.dll+3CE255
GameAssembly.dll+3CE250: 89 41 2C - mov [ecx+2C],eax
GameAssembly.dll+3CE253: 5D - pop ebp
GameAssembly.dll+3CE254: C3 - ret
GameAssembly.dll+3CE255: 8B C2 - mov eax,edx
GameAssembly.dll+3CE257: 5D - pop ebp
GameAssembly.dll+3CE258: C3 - ret
GameAssembly.dll+3CE259: CC - int 3
}
</AssemblerScript>
</CheatEntry>
<CheatEntry>
<ID>218</ID>
<Description>"Max Gold"</Description>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
aobscanmodule(GetMaxGold,GameAssembly.dll,8B 51 40 8B 41 54) // should be unique
alloc(newmem,$1000)
label(code)
label(return)
newmem:
code:
mov [ecx+40],(int)100
mov edx,[ecx+40]
mov eax,[ecx+54]
jmp return
GetMaxGold:
jmp newmem
nop
return:
registersymbol(GetMaxGold)
[DISABLE]
GetMaxGold:
db 8B 51 40 8B 41 54
unregistersymbol(GetMaxGold)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: GameAssembly.dll+3CE206
GameAssembly.dll+3CE1F9: CC - int 3
GameAssembly.dll+3CE1FA: CC - int 3
GameAssembly.dll+3CE1FB: CC - int 3
GameAssembly.dll+3CE1FC: CC - int 3
GameAssembly.dll+3CE1FD: CC - int 3
GameAssembly.dll+3CE1FE: CC - int 3
GameAssembly.dll+3CE1FF: CC - int 3
PuzzlePlayer.GetEarnedGold: 55 - push ebp
PuzzlePlayer.GetEarnedGold+1: 8B EC - mov ebp,esp
GameAssembly.dll+3CE203: 8B 4D 08 - mov ecx,[ebp+08]
// ---------- INJECTING HERE ----------
GameAssembly.dll+3CE206: 8B 51 40 - mov edx,[ecx+40]
// ---------- DONE INJECTING ----------
GameAssembly.dll+3CE209: 8B 41 54 - mov eax,[ecx+54]
GameAssembly.dll+3CE20C: 3B D0 - cmp edx,eax
GameAssembly.dll+3CE20E: 7E 05 - jle GameAssembly.dll+3CE215
GameAssembly.dll+3CE210: 89 41 40 - mov [ecx+40],eax
GameAssembly.dll+3CE213: 8B D0 - mov edx,eax
GameAssembly.dll+3CE215: 8B 49 44 - mov ecx,[ecx+44]
GameAssembly.dll+3CE218: B8 1F 85 EB 51 - mov eax,51EB851F
GameAssembly.dll+3CE21D: 83 C1 64 - add ecx,64
GameAssembly.dll+3CE220: 0F AF CA - imul ecx,edx
GameAssembly.dll+3CE223: F7 E9 - imul ecx
}
</AssemblerScript>
</CheatEntry>
<CheatEntry>
<ID>219</ID>
<Description>"Max Kills"</Description>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
aobscanmodule(MaxKills,GameAssembly.dll,8B 51 70 8B 41 64) // should be unique
alloc(newmem,$1000)
label(code)
label(return)
newmem:
code:
mov [ecx+70],(int)60
mov edx,[ecx+70]
mov eax,[ecx+64]
jmp return
MaxKills:
jmp newmem
nop
return:
registersymbol(MaxKills)
[DISABLE]
MaxKills:
db 8B 51 70 8B 41 64
unregistersymbol(MaxKills)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: GameAssembly.dll+3CE266
GameAssembly.dll+3CE259: CC - int 3
GameAssembly.dll+3CE25A: CC - int 3
GameAssembly.dll+3CE25B: CC - int 3
GameAssembly.dll+3CE25C: CC - int 3
GameAssembly.dll+3CE25D: CC - int 3
GameAssembly.dll+3CE25E: CC - int 3
GameAssembly.dll+3CE25F: CC - int 3
PuzzlePlayer.GetEarnedKills: 55 - push ebp
PuzzlePlayer.GetEarnedKills+1: 8B EC - mov ebp,esp
GameAssembly.dll+3CE263: 8B 4D 08 - mov ecx,[ebp+08]
// ---------- INJECTING HERE ----------
GameAssembly.dll+3CE266: 8B 51 70 - mov edx,[ecx+70]
// ---------- DONE INJECTING ----------
GameAssembly.dll+3CE269: 8B 41 64 - mov eax,[ecx+64]
GameAssembly.dll+3CE26C: 3B D0 - cmp edx,eax
GameAssembly.dll+3CE26E: 7E 05 - jle GameAssembly.dll+3CE275
GameAssembly.dll+3CE270: 89 41 70 - mov [ecx+70],eax
GameAssembly.dll+3CE273: 5D - pop ebp
GameAssembly.dll+3CE274: C3 - ret
GameAssembly.dll+3CE275: 8B C2 - mov eax,edx
GameAssembly.dll+3CE277: 5D - pop ebp
GameAssembly.dll+3CE278: C3 - ret
GameAssembly.dll+3CE279: CC - int 3
}
</AssemblerScript>
</CheatEntry>
<CheatEntry>
<ID>220</ID>
<Description>"Max Souls Earned"</Description>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
aobscanmodule(EarnedSouls,GameAssembly.dll,8B 51 48 8B 41 58) // should be unique
alloc(newmem,$1000)
label(code)
label(return)
newmem:
code:
mov [ecx+48],(int)40
mov edx,[ecx+48]
mov eax,[ecx+58]
jmp return
EarnedSouls:
jmp newmem
nop
return:
registersymbol(EarnedSouls)
[DISABLE]
EarnedSouls:
db 8B 51 48 8B 41 58
unregistersymbol(EarnedSouls)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: GameAssembly.dll+3CE476
GameAssembly.dll+3CE469: CC - int 3
GameAssembly.dll+3CE46A: CC - int 3
GameAssembly.dll+3CE46B: CC - int 3
GameAssembly.dll+3CE46C: CC - int 3
GameAssembly.dll+3CE46D: CC - int 3
GameAssembly.dll+3CE46E: CC - int 3
GameAssembly.dll+3CE46F: CC - int 3
PuzzlePlayer.GetEarnedSouls: 55 - push ebp
GameAssembly.dll+3CE471: 8B EC - mov ebp,esp
GameAssembly.dll+3CE473: 8B 4D 08 - mov ecx,[ebp+08]
// ---------- INJECTING HERE ----------
GameAssembly.dll+3CE476: 8B 51 48 - mov edx,[ecx+48]
// ---------- DONE INJECTING ----------
GameAssembly.dll+3CE479: 8B 41 58 - mov eax,[ecx+58]
GameAssembly.dll+3CE47C: 3B D0 - cmp edx,eax
GameAssembly.dll+3CE47E: 7E 05 - jle GameAssembly.dll+3CE485
GameAssembly.dll+3CE480: 89 41 48 - mov [ecx+48],eax
GameAssembly.dll+3CE483: 8B D0 - mov edx,eax
GameAssembly.dll+3CE485: 8B 49 4C - mov ecx,[ecx+4C]
GameAssembly.dll+3CE488: B8 1F 85 EB 51 - mov eax,51EB851F
GameAssembly.dll+3CE48D: 83 C1 64 - add ecx,64
GameAssembly.dll+3CE490: 0F AF CA - imul ecx,edx
GameAssembly.dll+3CE493: F7 E9 - imul ecx
}
</AssemblerScript>
</CheatEntry>
</CheatEntries>
</CheatEntry>
</CheatEntries>
</CheatTable>