2
"Unlimited Time"
Auto Assembler Script
{ Game : Katana ZERO.exe
Version:
Date : 2019-04-18
Author : Green
This script does blah blah blah
}
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(gettime,Katana ZERO.exe,F2 0F 11 0E EB 21) // should be unique
alloc(newmem,$1000)
label(code)
label(return)
label(check2)
label(check3)
label(check4)
label(check5)
label(max)
label(max2)
label(max3)
label(max4)
label(max5)
newmem:
cmp [esi-C],40AF4000
jne check2
movq xmm1,[max]
movsd [esi],xmm1
jmp "Katana ZERO.exe"+1E124
jmp return
check2:
cmp [esi-C],40B77000
jne check3
movq xmm1,[max2]
movsd [esi],xmm1
jmp "Katana ZERO.exe"+1E124
jmp return
check3:
cmp [esi-C],40BFA400
jne check4
movq xmm1,[max3]
movsd [esi],xmm1
jmp "Katana ZERO.exe"+1E124
jmp return
check4:
cmp [esi-C],40BB5800
jne check5
movq xmm1,[max4]
movsd [esi],xmm1
jmp "Katana ZERO.exe"+1E124
jmp return
check5:
cmp [esi-C],40C19400
jne check6
movq xmm1,[max5]
movsd [esi],xmm1
jmp "Katana ZERO.exe"+1E124
jmp return
check6:
cmp [esi-C],40C0CC00
jne code
movq xmm1,[max6]
movsd [esi],xmm1
jmp "Katana ZERO.exe"+1E124
jmp return
code:
movsd [esi],xmm1
jmp "Katana ZERO.exe"+1E124
jmp return
max:
dq (double)4000
max2:
dq (double)6000
max3:
dq (double)8100
max4:
dq (double)7000
max5:
dq (double)9000
max6:
dq (double)8600
gettime:
jmp newmem
nop
return:
registersymbol(gettime)
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
gettime:
db F2 0F 11 0E EB 21
unregistersymbol(gettime)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: "Katana ZERO.exe"+1E0FD
"Katana ZERO.exe"+1E0D3: F2 0F 10 44 24 10 - movsd xmm0,[esp+10]
"Katana ZERO.exe"+1E0D9: EB 1A - jmp "Katana ZERO.exe"+1E0F5
"Katana ZERO.exe"+1E0DB: 89 44 24 08 - mov [esp+08],eax
"Katana ZERO.exe"+1E0DF: 89 74 24 04 - mov [esp+04],esi
"Katana ZERO.exe"+1E0E3: C7 04 24 81 6C 98 02 - mov [esp],"Katana ZERO.exe"+1636C81
"Katana ZERO.exe"+1E0EA: E8 B1 4E FE FF - call "Katana ZERO.exe"+2FA0
"Katana ZERO.exe"+1E0EF: EB 33 - jmp "Katana ZERO.exe"+1E124
"Katana ZERO.exe"+1E0F1: F2 0F 10 00 - movsd xmm0,[eax]
"Katana ZERO.exe"+1E0F5: F2 0F 10 0E - movsd xmm1,[esi]
"Katana ZERO.exe"+1E0F9: F2 0F 5C C8 - subsd xmm1,xmm0
// ---------- INJECTING HERE ----------
"Katana ZERO.exe"+1E0FD: F2 0F 11 0E - movsd [esi],xmm1
"Katana ZERO.exe"+1E101: EB 21 - jmp "Katana ZERO.exe"+1E124
// ---------- DONE INJECTING ----------
"Katana ZERO.exe"+1E103: DF 2E - fild qword ptr [esi]
"Katana ZERO.exe"+1E105: DD 5C 24 18 - fstp qword ptr [esp+18]
"Katana ZERO.exe"+1E109: F2 0F 10 44 24 18 - movsd xmm0,[esp+18]
"Katana ZERO.exe"+1E10F: EB 04 - jmp "Katana ZERO.exe"+1E115
"Katana ZERO.exe"+1E111: F2 0F 2A 06 - cvtsi2sd xmm0,[esi]
"Katana ZERO.exe"+1E115: F2 0F 5C 00 - subsd xmm0,[eax]
"Katana ZERO.exe"+1E119: F2 0F 11 06 - movsd [esi],xmm0
"Katana ZERO.exe"+1E11D: C7 46 0C 00 00 00 00 - mov [esi+0C],00000000
"Katana ZERO.exe"+1E124: 89 F0 - mov eax,esi
"Katana ZERO.exe"+1E126: 8D 65 F8 - lea esp,[ebp-08]
}
44
"Unlimited Slow Time"
Auto Assembler Script
[ENABLE]
alloc(newmem,2048)
label(returnhere)
label(originalcode)
newmem:
originalcode:
fld dword ptr [eax+4]
fadd dword ptr [max]
fstp dword ptr [eax+4]
movsd xmm0,[eax]
movsd xmm1,["Katana ZERO.exe"+1916D10]
jmp returnhere
max:
dd (float)3.9
"Katana ZERO.exe"+395A5:
jmp newmem
nop
nop
nop
nop
nop
nop
nop
returnhere:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
"Katana ZERO.exe"+395A5:
movsd xmm0,[eax]
movsd xmm1,["Katana ZERO.exe"+1916D10]
4
"Enemies Can't Hit You"
Auto Assembler Script
[ENABLE]
"Katana ZERO.exe"+7CD40:
ret
[DISABLE]
"Katana ZERO.exe"+7CD40:
push ebp
3
"Disable Enemy AI"
Auto Assembler Script
[ENABLE]
"Katana ZERO.exe"+1D7E50:
ret
[DISABLE]
"Katana ZERO.exe"+1D7E50:
push ebp
5
"Disable Walls Collision [YOU CAN FALL TO THE VOID]"
Auto Assembler Script
[ENABLE]
"Katana ZERO.exe"+D0860:
ret
[DISABLE]
"Katana ZERO.exe"+D0860:
push ebp
80
"Get Current Weapon [Attack to Update]"
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)
alloc(weapon,8)
registersymbol(weapon)
newmem:
cmp [eax+04],4099B800 //BASIC
je setbase
cmp [eax+04],4099D000 //PRISM
je setbase
cmp [eax+04],4099DC00 //MASTER
je setbase
cmp [eax+04],4099BC00 //SAVANT
je setbase
cmp [eax+04],4099C800 //CLAY
je setbase
cmp [eax+04],4099E000 //PHOENIX
je setbase
jmp originalcode
setbase:
mov [weapon],eax
jmp originalcode
originalcode:
mov ecx,[eax+04]
mov [esp+10],ecx
exit:
jmp returnhere
"Katana ZERO.exe"+160E:
jmp newmem
nop
nop
returnhere:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
"Katana ZERO.exe"+160E:
mov ecx,[eax+04]
mov [esp+10],ecx
//Alt: db 8B 48 04 89 4C 24 10
64
"Current Weapon"
4099B800:Basic Katana
4099BC00:Savant Knife
4099C800:Claymore Prototype
4099D000:Prism Sword
4099DC00:Sword Of Masters
4099E000:Phoenix Edge
1
4 Bytes
weapon
4
83
"Time to Wait Until Next Attack"
Byte
weapon
-1a
50
"Get Current Secondary Weapon"
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)
globalalloc(currentsec,8)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
originalcode:
mov [currentsec],eax
movsd xmm0,[eax]
addsd xmm0,qword ptr ["Katana ZERO.exe"+16370E8]
exit:
jmp returnhere
"Katana ZERO.exe"+3AF58:
jmp newmem
nop
nop
nop
nop
nop
nop
nop
returnhere:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
"Katana ZERO.exe"+3AF58:
movsd xmm0,[eax]
addsd xmm0,qword ptr ["Katana ZERO.exe"+16370E8]
//Alt: db F2 0F 10 00 F2 0F 58 05 E8 70 82 01
51
"Current Secondary Weapon"
00000000:None
3FF00000:None
408BE800:*Spoilers* Head
40995400:Bust
40995800:Sword
40995C00:Plant
40996000:Cleaver
40996400:Knife
40996800:Lamp
40996C00:Molotov Cocktail
40997000:Smoke Grenade
40997400:Black Bottle
40997800:Red Bottle
40997C00:Green Bottle
40998000:Brown Bottle
40998400:Mine
40998800:Mine Activator
40999C00:Flamethrower (It doesn't always work)
1
4 Bytes
currentsec
4
29
"Get Player Position"
Auto Assembler Script
{ Game : Katana ZERO.exe
Version:
Date : 2019-04-18
Author : Green
This script does blah blah blah
}
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(getinteraction,Katana ZERO.exe,8B 01 C7 04 24 1B 09 00 00 FF 50 04 83 EC 04 8B) // should be unique
alloc(newmem,$1000)
label(code)
label(return)
globalalloc(player,8)
newmem:
code:
mov [player],ecx
mov eax,[ecx]
mov [esp],0000091B
jmp return
getinteraction:
jmp newmem
nop
nop
nop
nop
return:
registersymbol(getinteraction)
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
getinteraction:
db 8B 01 C7 04 24 1B 09 00 00
unregistersymbol(getinteraction)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: "Katana ZERO.exe"+1956B0
"Katana ZERO.exe"+19568A: 7E 6E - jle "Katana ZERO.exe"+1956FA
"Katana ZERO.exe"+19568C: 0F 1F 40 00 - nop [eax+00]
"Katana ZERO.exe"+195690: C7 44 24 40 09 00 00 00 - mov [esp+40],00000009
"Katana ZERO.exe"+195698: 8B 4C 24 44 - mov ecx,[esp+44]
"Katana ZERO.exe"+19569C: 8B 41 04 - mov eax,[ecx+04]
"Katana ZERO.exe"+19569F: 85 C0 - test eax,eax
"Katana ZERO.exe"+1956A1: 74 0D - je "Katana ZERO.exe"+1956B0
"Katana ZERO.exe"+1956A3: 05 B0 91 00 00 - add eax,000091B0
"Katana ZERO.exe"+1956A8: EB 15 - jmp "Katana ZERO.exe"+1956BF
"Katana ZERO.exe"+1956AA: 66 0F 1F 44 00 00 - nop [eax+eax+00]
// ---------- INJECTING HERE ----------
"Katana ZERO.exe"+1956B0: 8B 01 - mov eax,[ecx]
"Katana ZERO.exe"+1956B2: C7 04 24 1B 09 00 00 - mov [esp],0000091B
// ---------- DONE INJECTING ----------
"Katana ZERO.exe"+1956B9: FF 50 04 - call dword ptr [eax+04]
"Katana ZERO.exe"+1956BC: 83 EC 04 - sub esp,04
"Katana ZERO.exe"+1956BF: 8B 4D 18 - mov ecx,[ebp+18]
"Katana ZERO.exe"+1956C2: 8B 09 - mov ecx,[ecx]
"Katana ZERO.exe"+1956C4: F2 0F 10 05 10 6D C6 02 - movsd xmm0,["Katana ZERO.exe"+1916D10]
"Katana ZERO.exe"+1956CC: F2 0F 11 44 24 08 - movsd [esp+08],xmm0
"Katana ZERO.exe"+1956D2: 89 4C 24 04 - mov [esp+04],ecx
"Katana ZERO.exe"+1956D6: 89 04 24 - mov [esp],eax
"Katana ZERO.exe"+1956D9: E8 C2 24 24 01 - call "Katana ZERO.exe"+13D7BA0
"Katana ZERO.exe"+1956DE: 85 C0 - test eax,eax
}
32
"Up/Down Position"
0: No Collision
1: Normal Collision
Float
player
a4
31
"Left/Right Position"
0: No Collision
1: Normal Collision
Float
player
a0
30
"Collision [Some kind of collision]"
0: No Collision
1: Normal Collision
Float
player
90
Change of mov [esp+14],"Katana ZERO.exe"+1637B48
Katana ZERO.exe+67D55
75
10
8B
7D
08
C7
44
24
14
48
7B
98
02
C7
44
24
18
00
Change of call "Katana ZERO.exe"+1E050
Katana ZERO.exe+32350
24
8D
4C
24
18
E8
FB
BC
FE
FF
83
EC
04
89
04
player
00F70000
side
00560010
currentsec
021B0000