16695
"Enable Teleport"
Auto Assembler Script
{ Game : Shadow of the Tomb Raider v1.0 build 489.0_64
Version:
Date : 2023-03-11
Author : Giuseppe
This script enable two functions: save Lara's current position and restore
the last saved position. Please note the restore function does not reset the
velocity values, so sometimes you can find Lara moving along just after
teleporting to the saved position.
}
[ENABLE]
aobscanmodule(Teleport,SOTTR.exe,48 8B 3D C1 02 CA 01) // should be unique
alloc(newmem,$1000,Teleport)
alloc(lastSavedPosition,256)
label(xPosition)
label(zPosition)
label(yPosition)
label(savePosition)
label(loadPosition)
label(saveCurrentPositionCommand)
label(teleportToSavedPositionCommand)
label(code)
label(return)
registersymbol(saveCurrentPositionCommand)
registersymbol(teleportToSavedPositionCommand)
registersymbol(lastSavedPosition)
lastSavedPosition:
xPosition:
dd 0
zPosition:
dd 0
yPosition:
dd 0
saveCurrentPositionCommand:
dd 0
teleportToSavedPositionCommand:
dd 0
newmem:
cmp [saveCurrentPositionCommand],1
je savePosition
cmp [teleportToSavedPositionCommand],1
je loadPosition
jmp code
savePosition:
mov [saveCurrentPositionCommand],0
push rax
mov rax,[[[SOTTR.exe+1E92C70]+0]+10]
mov [xPosition],rax
mov rax,[[[SOTTR.exe+1E92C70]+0]+14]
mov [zPosition],rax
mov rax,[[[SOTTR.exe+1E92C70]+0]+18]
mov [yPosition],rax
pop rax
jmp code
loadPosition:
mov [teleportToSavedPositionCommand],0
push rax
mov rax,[xPosition]
mov [[[SOTTR.exe+1E92C70]+0]+10],rax
mov rax,[zPosition]
mov [[[SOTTR.exe+1E92C70]+0]+14],rax
mov rax,[yPosition]
mov [[[SOTTR.exe+1E92C70]+0]+18],rax
pop rax
jmp code
code:
mov rdi,[SOTTR.exe+1E92C70]
jmp return
Teleport:
jmp newmem
nop 2
return:
registersymbol(Teleport)
[DISABLE]
Teleport:
db 48 8B 3D C1 02 CA 01
unregistersymbol(Teleport)
unregistersymbol(saveCurrentPositionCommand)
unregistersymbol(teleportToSavedPositionCommand)
dealloc(newmem)
dealloc(lastSavedPosition)
{
// ORIGINAL CODE - INJECTION POINT: SOTTR.exe.text+1F19A8
SOTTR.exe.text+1F1986: 85 C0 - test eax,eax
SOTTR.exe.text+1F1988: 74 12 - je SOTTR.exe.text+1F199C
SOTTR.exe.text+1F198A: 66 0F 1F 44 00 00 - nop word ptr [rax+rax+00]
SOTTR.exe.text+1F1990: F3 90 - repe nop 2
SOTTR.exe.text+1F1992: 8B 05 00 03 CA 01 - mov eax,[SOTTR.exe+1E92C98]
SOTTR.exe.text+1F1998: 85 C0 - test eax,eax
SOTTR.exe.text+1F199A: 75 F4 - jne SOTTR.exe.text+1F1990
SOTTR.exe.text+1F199C: 33 C0 - xor eax,eax
SOTTR.exe.text+1F199E: F0 0F B1 2D F2 02 CA 01 - lock cmpxchg [SOTTR.exe+1E92C98],ebp
SOTTR.exe.text+1F19A6: 75 D8 - jne SOTTR.exe.text+1F1980
// ---------- INJECTING HERE ----------
SOTTR.exe.text+1F19A8: 48 8B 3D C1 02 CA 01 - mov rdi,[SOTTR.exe+1E92C70]
// ---------- DONE INJECTING ----------
SOTTR.exe.text+1F19AF: 48 85 FF - test rdi,rdi
SOTTR.exe.text+1F19B2: 74 15 - je SOTTR.exe.text+1F19C9
SOTTR.exe.text+1F19B4: 83 BF 04 08 00 00 00 - cmp dword ptr [rdi+00000804],00
SOTTR.exe.text+1F19BB: 75 0C - jne SOTTR.exe.text+1F19C9
SOTTR.exe.text+1F19BD: 48 8B BF 10 08 00 00 - mov rdi,[rdi+00000810]
SOTTR.exe.text+1F19C4: 48 85 FF - test rdi,rdi
SOTTR.exe.text+1F19C7: 75 EB - jne SOTTR.exe.text+1F19B4
SOTTR.exe.text+1F19C9: F0 FF 0D C8 02 CA 01 - lock dec [SOTTR.exe+1E92C98]
SOTTR.exe.text+1F19D0: 48 85 FF - test rdi,rdi
SOTTR.exe.text+1F19D3: 74 19 - je SOTTR.exe.text+1F19EE
}
16011
"Teleport to Saved Position (hotkey: SHIFT+E)"
0
4 Bytes
teleportToSavedPositionCommand
Set Value
16
69
1
0
16010
"Save Current Lara Position (hotkey: SHIFT+G)"
0
4 Bytes
saveCurrentPositionCommand
Set Value
16
71
1
0
Activate
16779
"Enable Bow Aim Teleport"
Auto Assembler Script
{ Game : Shadow of the Tomb Raider v1.0 build 489.0_64
Version:
Date : 2023-03-12
Author : Giuseppe
This script does blah blah blah
}
[ENABLE]
aobscanmodule(BowAimPosition,SOTTR.exe,44 0F 29 83 00 0B 00 00) // should be unique
alloc(newmem,$1000,BowAimPosition)
alloc(preferences,8)
label(code)
label(return)
label(saveBowAimPosition)
label(saveBowAimPositionAndTeleport)
label(saveBowAimPositionCommand)
label(teleportBowAimPositionCommand)
registersymbol(saveBowAimPositionCommand)
registersymbol(teleportBowAimPositionCommand)
preferences:
saveBowAimPositionCommand:
dd 0
teleportBowAimPositionCommand:
dd 0
newmem:
cmp [teleportBowAimPositionCommand],1
je saveBowAimPositionAndTeleport
cmp [saveBowAimPositionCommand],1
je saveBowAimPosition
jmp code
saveBowAimPositionAndTeleport:
mov [teleportBowAimPositionCommand],0
mov [teleportToSavedPositionCommand],1 // This enable the parent teleport script
saveBowAimPosition:
mov [saveBowAimPositionCommand],0
push rax
mov rax,[[["SOTTR.exe"+014B5BD8]+0]+B00] // X
mov [lastSavedPosition],rax
mov rax,[[["SOTTR.exe"+014B5BD8]+0]+B04] // Z
mov [lastSavedPosition+4],rax
mov rax,[[["SOTTR.exe"+014B5BD8]+0]+B08] // Y
mov [lastSavedPosition+8],rax
pop rax
jmp code
code:
movaps [rbx+00000B00],xmm8
jmp return
BowAimPosition:
jmp newmem
nop 3
return:
registersymbol(BowAimPosition)
[DISABLE]
BowAimPosition:
db 44 0F 29 83 00 0B 00 00
unregistersymbol(BowAimPosition saveBowAimPositionCommand teleportBowAimPositionCommand)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: SOTTR.exe.text+9B8FF3
SOTTR.exe.text+9B8FBE: 48 89 8B 28 0C 00 00 - mov [rbx+00000C28],rcx
SOTTR.exe.text+9B8FC5: 8B 40 10 - mov eax,[rax+10]
SOTTR.exe.text+9B8FC8: 89 83 30 0C 00 00 - mov [rbx+00000C30],eax
SOTTR.exe.text+9B8FCE: EB 23 - jmp SOTTR.exe.text+9B8FF3
SOTTR.exe.text+9B8FD0: 4C 89 A3 28 0C 00 00 - mov [rbx+00000C28],r12
SOTTR.exe.text+9B8FD7: 8B 40 10 - mov eax,[rax+10]
SOTTR.exe.text+9B8FDA: 89 83 30 0C 00 00 - mov [rbx+00000C30],eax
SOTTR.exe.text+9B8FE0: EB 11 - jmp SOTTR.exe.text+9B8FF3
SOTTR.exe.text+9B8FE2: 4C 89 A3 28 0C 00 00 - mov [rbx+00000C28],r12
SOTTR.exe.text+9B8FE9: C7 83 30 0C 00 00 FF FF FF FF - mov [rbx+00000C30],FFFFFFFF
// ---------- INJECTING HERE ----------
SOTTR.exe.text+9B8FF3: 44 0F 29 83 00 0B 00 00 - movaps [rbx+00000B00],xmm8
// ---------- DONE INJECTING ----------
SOTTR.exe.text+9B8FFB: 44 0F 28 84 24 50 02 00 00 - movaps xmm8,[rsp+00000250]
SOTTR.exe.text+9B9004: 4C 8B A4 24 B8 02 00 00 - mov r12,[rsp+000002B8]
SOTTR.exe.text+9B900C: 48 8B BC 24 B0 02 00 00 - mov rdi,[rsp+000002B0]
SOTTR.exe.text+9B9014: 0F 28 B4 24 70 02 00 00 - movaps xmm6,[rsp+00000270]
SOTTR.exe.text+9B901C: 48 8B 9C 24 C0 02 00 00 - mov rbx,[rsp+000002C0]
SOTTR.exe.text+9B9024: 48 81 C4 80 02 00 00 - add rsp,00000280
SOTTR.exe.text+9B902B: 41 5F - pop r15
SOTTR.exe.text+9B902D: 41 5E - pop r14
SOTTR.exe.text+9B902F: 41 5D - pop r13
SOTTR.exe.text+9B9031: 5E - pop rsi
}
16782
"Teleport to Bow Aim Position (hotkey: CTRL+H)"
0
4 Bytes
teleportBowAimPositionCommand
Set Value
17
72
1
0
16780
"Save Current Bow Aim Position (hotkey: CTRL+G)"
0
4 Bytes
saveBowAimPositionCommand
Set Value
17
71
1
0
Activate
16777
"Info"
1
16013
"Last Saved Position - X"
0
808080
Float
lastSavedPosition
16014
"Last Saved Position - Z"
0
808080
Float
lastSavedPosition+4
16015
"Last Saved Position - Y"
0
808080
Float
lastSavedPosition+8
16705
"Lara Position X"
0
808000
Float
"SOTTR.exe"+01E92C70
10
0
16707
"Lara Position Z"
0
808000
Float
"SOTTR.exe"+01E92C70
14
0
16708
"Lara Position Y"
0
808000
Float
"SOTTR.exe"+01E92C70
18
0
16774
"Bow Aim X"
0
808080
Float
"SOTTR.exe"+014B5BD8
B00
0
16775
"Bow Aim Z"
0
808080
Float
"SOTTR.exe"+014B5BD8
B04
0
16776
"Bow Aim Y"
0
808080
Float
"SOTTR.exe"+014B5BD8
B08
0
16020
"Enable Other Cheats"
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(equippedAmmoPouchReadAOB,SOTTR.exe,41 0F ** ** ** EB 03 41 8B C4 8B)
//aobscanmodule(equippedAmmoPouchReadAOB,SOTTR.exe,41 ** ** ** ** EB 07 ** ** ** ** 44 89 E0 8B)
registersymbol(equippedAmmoPouchReadAOB)
label(pAmmoPouch)
registersymbol(pAmmoPouch)
alloc(newmem,2048,equippedAmmoPouchReadAOB) //"SOTTR.exe"+BE647E3)
label(returnhere)
label(originalcode_enable)
registersymbol(originalcode_enable)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
mov rcx,pAmmoPouch
mov [rcx],r8
originalcode_enable:
readmem(equippedAmmoPouchReadAOB,5)
//movzx eax,word ptr [r8+0C]
exit:
jmp returnhere
///
pAmmoPouch:
///
equippedAmmoPouchReadAOB: //"SOTTR.exe"+BE647E3:
jmp newmem
returnhere:
///*************************************************///
aobscanmodule(equippedAmmoClipReadAOB,SOTTR.exe,48 8B 83 ** ** ** ** 48 63 ** 48 ** ** ** 5B C3)
registersymbol(equippedAmmoClipReadAOB)
label(pAmmoClip)
registersymbol(pAmmoClip)
alloc(newmem2,2048,equippedAmmoClipReadAOB+7) //"SOTTR.exe"+C18460E)
label(returnhere2)
label(originalcode2_enable)
registersymbol(originalcode2_enable)
label(exit2)
newmem2: //this is allocated memory, you have read,write,execute access
//place your code here
mov rbx,pAmmoClip
mov [rbx],rax
//cmp dword ptr [rax],1
//jge @f
//mov dword ptr [eax],1
originalcode2_enable:
readmem(equippedAmmoClipReadAOB+7,7)
//movsxd rax,dword ptr [rax]
//add rsp,20
exit2:
jmp returnhere2
///
pAmmoClip:
///
equippedAmmoClipReadAOB+7: //"SOTTR.exe"+C18460E:
jmp newmem2
nop
nop
returnhere2:
///*************************************************///
aobscanmodule(playerHealthChk1AOB,SOTTR.exe,48 85 C0 74 ** 48 ** ** ** ** ** ** 44 ** ** ** 7F ** 4C)
registersymbol(playerHealthChk1AOB)
label(pPlayerHealthBase)
registersymbol(pPlayerHealthBase)
alloc(newmem6,2048,playerHealthChk1AOB+5) //"SOTTR.exe"+AD10F6F)
label(returnhere6)
label(originalcode6_enable)
registersymbol(originalcode6_enable)
label(exit6)
newmem6: //this is allocated memory, you have read,write,execute access
//place your code here
push r12
mov r12,pPlayerHealthBase
mov [r12],rax
pop r12
originalcode6_enable:
readmem(playerHealthChk1AOB+5,7)
//mov rax,[rax+000002A8]
exit6:
jmp returnhere6
///
pPlayerHealthBase:
///
playerHealthChk1AOB+5: //"SOTTR.exe"+AD10F6F:
jmp newmem6
nop
nop
returnhere6:
///*************************************************///
aobscanmodule(skillPtReadOnCampMenuAccessAOB,SOTTR.exe,33 C0 39 ** ** 0F 97 C0 48 ** ** ** C3)
registersymbol(skillPtReadOnCampMenuAccessAOB)
label(pSkillPt)
registersymbol(pSkillPt)
alloc(newmem11,2048,skillPtReadOnCampMenuAccessAOB) //"SOTTR.exe"+F349352)
label(returnhere11)
label(originalcode11_enable)
registersymbol(originalcode11_enable)
label(exit11)
newmem11: //this is allocated memory, you have read,write,execute access
//place your code here
mov rax,pSkillPt
mov [rax],rcx
originalcode11_enable:
readmem(skillPtReadOnCampMenuAccessAOB,5)
//xor eax,eax
//cmp [rcx+4C],eax
exit11:
jmp returnhere11
///
pSkillPt:
///
skillPtReadOnCampMenuAccessAOB: //"SOTTR.exe"+F349352:
jmp newmem11
returnhere11:
///*************************************************///
alloc(aHideAppearanceChange,2048,SOTTR.exe)
registersymbol(aHideAppearanceChange)
///*************************************************///
aobscanmodule(someDurationDefaultReadAOB,SOTTR.exe,F3 ** ** ** ** 48 ** ** ** 48 ** ** E8 ** ** ** ** 84 C0 74)
registersymbol(someDurationDefaultReadAOB)
label(bIsFocusActivate)
registersymbol(bIsFocusActivate)
label(pFocusDefaultDuration)
registersymbol(pFocusDefaultDuration)
alloc(newmem12,2048,someDurationDefaultReadAOB+5) //"SOTTR.exe"+BE93214)
label(returnhere12)
label(originalcode12_enable)
registersymbol(originalcode12_enable)
label(exit12)
newmem12: //this is allocated memory, you have read,write,execute access
//place your code here
cmp rdx,68b
jne @f
mov rcx,bIsFocusActivate
mov byte ptr [rcx],1
mov rcx,pFocusDefaultDuration
mov [rcx],rsi
@@:
originalcode12_enable:
readmem(someDurationDefaultReadAOB+5,7)
//mov rdx,[rsi+30]
//mov rcx,rbx
exit12:
jmp returnhere12
///
bIsFocusActivate:
dd 0
pFocusDefaultDuration:
dq 0
///
someDurationDefaultReadAOB+5: //"SOTTR.exe"+BE93214:
jmp newmem12
nop
nop
returnhere12:
///*************************************************///
aobscanmodule(someDurationInitAOB,SOTTR.exe,48 85 C0 74 ** F3 0F 11 ** ** F3 0F 11 ** ** 48)
registersymbol(someDurationInitAOB)
label(pFocusDuration)
registersymbol(pFocusDuration)
alloc(newmem17,2048,someDurationInitAOB+5) //"SOTTR.exe"+BE93264)
label(returnhere17)
label(originalcode17_enable)
registersymbol(originalcode17_enable)
label(exit17)
newmem17: //this is allocated memory, you have read,write,execute access
//place your code here
push rbx
mov rbx,bIsFocusActivate
cmp byte ptr [rbx],1
jne @f
mov byte ptr [rbx],0
mov rbx,pFocusDuration
mov [rbx],rax
@@:
end17:
pop rbx
originalcode17_enable:
readmem(someDurationInitAOB+5,5)
//movss [rax+18],xmm6
exit17:
jmp returnhere17
///
pFocusDuration:
///
someDurationInitAOB+5: //"SOTTR.exe"+BE93264:
jmp newmem17
returnhere17:
///*************************************************///
aobscanmodule(someDurationUpdateCalAOB,SOTTR.exe,F3 0F 10 ** ** F3 0F 5C ** F3 0F 11 ** ** 48 ** ** 48)
registersymbol(someDurationUpdateCalAOB)
label(bInfFocusDuration)
registersymbol(bInfFocusDuration)
label(pFD)
registersymbol(pFD)
alloc(newmem24,2048,someDurationUpdateCalAOB+9) //"SOTTR.exe"+C06EDE9)
label(returnhere24)
label(originalcode24_enable)
registersymbol(originalcode24_enable)
label(exit24)
newmem24: //this is allocated memory, you have read,write,execute access
//place your code here
mov rdx,bInfFocusDuration
cmp byte ptr [rdx],1
jne @f
mov rdx,pFocusDuration
cmp [rdx],rax
jne end24
mov rdx,pFD
mov [rdx],rax
readmem(someDurationUpdateCalAOB,1)
db 0F 5F
readmem(someDurationUpdateCalAOB+3,2)
//maxss xmm0,[rax+18]
jmp end24
@@:
end24:
originalcode24_enable:
readmem(someDurationUpdateCalAOB+9,5)
//movss [rax+18],xmm0
exit24:
jmp returnhere24
///
bInfFocusDuration:
dd 0
pFD:
dd 0
///
someDurationUpdateCalAOB+9: //"SOTTR.exe"+C06EDE9:
jmp newmem24
returnhere24:
///*************************************************///
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
equippedAmmoPouchReadAOB: //"SOTTR.exe"+BE647E3:
readmem(originalcode_enable,5)
//db 41 0F B7 40 0C
//Alt: movzx eax,word ptr [r8+0C]
unregistersymbol(originalcode_enable)
unregistersymbol(pAmmoPouch)
///*************************************************///
dealloc(newmem2)
equippedAmmoClipReadAOB+7: //"SOTTR.exe"+C18460E:
readmem(originalcode2_enable,7)
//db 48 63 00 48 83 C4 20
//Alt: movsxd rax,dword ptr [rax]
//Alt: add rsp,20
unregistersymbol(originalcode2_enable)
unregistersymbol(pAmmoClip)
///*************************************************///
dealloc(newmem6)
playerHealthChk1AOB+5: //"SOTTR.exe"+AD10F6F:
readmem(originalcode6_enable,7)
//db 48 8B 80 A8 02 00 00
//Alt: mov rax,[rax+000002A8]
unregistersymbol(originalcode6_enable)
unregistersymbol(pPlayerHealthBase)
///*************************************************///
dealloc(newmem11)
skillPtReadOnCampMenuAccessAOB: //"SOTTR.exe"+F349352:
readmem(originalcode11_enable,5)
//db 31 C0 39 41 4C
//Alt: xor eax,eax
//Alt: cmp [rcx+4C],eax
unregistersymbol(originalcode11_enable)
unregistersymbol(pSkillPt)
///*************************************************///
dealloc(aHideAppearanceChange)
unregistersymbol(aHideAppearanceChange)
///*************************************************///
dealloc(newmem12)
someDurationDefaultReadAOB+5: //"SOTTR.exe"+BE93214:
readmem(originalcode12_enable,7)
//db 48 8B 56 30 48 89 D9
//Alt: mov rdx,[rsi+30]
//Alt: mov rcx,rbx
unregistersymbol(originalcode12_enable)
unregistersymbol(bIsFocusActivate)
unregistersymbol(pFocusDefaultDuration)
///*************************************************///
dealloc(newmem17)
someDurationInitAOB+5: //"SOTTR.exe"+BE93264:
readmem(originalcode17_enable,5)
//db F3 0F 11 70 18
//Alt: movss [rax+18],xmm6
unregistersymbol(originalcode17_enable)
unregistersymbol(pFocusDuration)
///*************************************************///
dealloc(newmem24)
someDurationUpdateCalAOB+9: //"SOTTR.exe"+C06EDE9:
readmem(originalcode24_enable,5)
//db F3 0F 11 40 18
//Alt: movss [rax+18],xmm0
unregistersymbol(originalcode24_enable)
unregistersymbol(bInfFocusDuration)
unregistersymbol(pFD)
///*************************************************///
16021
"undead .1"
FF0000
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(healthCalStartOnHitAOB,SOTTR.exe,F3 0F 10 ** ** ** ** ** F3 0F 58 ** ** 41 0F 2F F0 76)
registersymbol(healthCalStartOnHitAOB)
label(dMinHealth)
registersymbol(dMinHealth)
alloc(newmem,2048,healthCalStartOnHitAOB+8) //"SOTTR.exe"+681BCC3)
label(returnhere)
label(originalcode_undead)
registersymbol(originalcode_undead)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
sub rsp,10
movdqu dqword [rsp],xmm15
push rcx
push rdx
mov rcx,pPlayerHealthBase
cmp [rcx],rbx
jne end
readmem(healthCalStartOnHitAOB+8,5)
//addss xmm6,dword ptr [rax+2c]
mov rcx,dMinHealth
movd xmm15,[rcx]
cvtdq2ps xmm15,xmm15
comiss xmm6,xmm15
jae @f
movss xmm6,xmm15
addss xmm6,xmm0
db 48 8D 50
readmem(healthCalStartOnHitAOB+c,1)
//lea rdx,[rax+2c]
movss [rdx],xmm6
cvttss2si ecx,[rdx]
mov [rdx-4],ecx
@@:
movaps xmm6,xmm7
end:
pop rdx
pop rcx
movdqu xmm15,dqword [rsp]
add rsp,10
originalcode_undead:
readmem(healthCalStartOnHitAOB+8,5)
//addss xmm6,dword ptr [rax+2C]
exit:
jmp returnhere
///
dMinHealth:
dd #150
///
healthCalStartOnHitAOB+8: //"SOTTR.exe"+681BCC3:
jmp newmem
returnhere:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
healthCalStartOnHitAOB+8: //"SOTTR.exe"+681BCC3:
readmem(originalcode_undead,5)
//db F3 0F 58 70 2C
//Alt: addss xmm6,dword ptr [rax+2C]
unregistersymbol(originalcode_undead)
unregistersymbol(dMinHealth)
16022
"min health"
008000
4 Bytes
dMinHealth
16023
"inf focus duration"
FF0000
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
bInfFocusDuration:
db 1
pFD:
dq 0
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
bInfFocusDuration:
db 0
pFD:
dq 0
16024
"press Shift_` to force de-activate Focus"
808080
1
16025
"focus duration"
0000FF
Float
pFD
18
Set Value
16
192
0
0
16026
"inf focus time .2"
FF0000
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(focusSlowdownMaxDurationCalAOB,SOTTR.exe,F3 0F 10 ** ** ** F3 0F 58 ** ** ** ** ** ** 41 ** ** ** ** ** F3 ** ** ** ** ** 4C 8D)
registersymbol(focusSlowdownMaxDurationCalAOB)
alloc(newmem,2048,focusSlowdownMaxDurationCalAOB+f) //"SOTTR.exe"+CBD7233)
label(returnhere)
label(originalcode_infslowdownaim)
registersymbol(originalcode_infslowdownaim)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
mov r8,dCustomFocusSlowDuration
comiss xmm2,[r8+4]
je @f
comiss xmm2,[r8+8]
je @f
jmp end
@@:
cmp dword ptr [rsp+70],40a00000
jne end
cmp dword ptr [rsp+88],40a00000
jne end
//lea r9,[r9]
maxss xmm2,[r8]
readmem(focusSlowdownMaxDurationCalAOB,2)
db 11
readmem(focusSlowdownMaxDurationCalAOB+3,3)
//movss [rsp+70],xmm2
readmem(focusSlowdownMaxDurationCalAOB+6,2)
db 11
readmem(focusSlowdownMaxDurationCalAOB+9,6)
//movss [rsp+88],xmm2
end:
originalcode_infslowdownaim:
readmem(focusSlowdownMaxDurationCalAOB+f,6)
//mov r9d,00000001
exit:
jmp returnhere
///
dCustomFocusSlowDuration:
dd (float)86400
dd (float)5
dd (float)10
///
focusSlowdownMaxDurationCalAOB+f: //"SOTTR.exe"+CBD7233:
jmp newmem
nop
returnhere:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
focusSlowdownMaxDurationCalAOB+f: //"SOTTR.exe"+CBD7233:
readmem(originalcode_infslowdownaim,6)
//db 41 B9 01 00 00 00
//Alt: mov r9d,00000001
unregistersymbol(originalcode_infslowdownaim)
16027
"learn Scales of Serpent III (Focus Time upgrade) first"
808080
1
16028
"no reload"
FF0000
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(ammoClipChkZeroOnFireAOB,SOTTR.exe,49 03 ** 48 39 ** ** ** ** ** 48 ** ** ** 41 ** ** 75)
registersymbol(ammoClipChkZeroOnFireAOB)
alloc(newmem,2048,ammoClipChkZeroOnFireAOB+a) //"SOTTR.exe"+C03AF43)
label(returnhere)
label(originalcode_noreload)
registersymbol(originalcode_noreload)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
push rax
mov rax,pAmmoClip
cmp [rax],r8
jne @f
cmp dword ptr [r8],2
jge @f
mov dword ptr [r8],2
@@:
pop rax
originalcode_noreload:
readmem(ammoClipChkZeroOnFireAOB+a,7)
//cmovne rsi,rbx
//cmp [r8],ebx
exit:
jmp returnhere
///
ammoClipChkZeroOnFireAOB+a: //"SOTTR.exe"+C03AF43:
jmp newmem
nop
nop
returnhere:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
ammoClipChkZeroOnFireAOB+a: //"SOTTR.exe"+C03AF43:
readmem(originalcode_noreload,7)
//db 48 0F 45 F3 41 39 18
//Alt: cmovne rsi,rbx
//Alt: cmp [r8],ebx
unregistersymbol(originalcode_noreload)
16029
"inf ammo pouch / arrow .4"
FF0000
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(resourcesRead1AOB,SOTTR.exe,48 ** ** ** ** ** ** 48 8B CB 8B ** E8 ** ** ** ** 3B F8 73)
registersymbol(resourcesRead1AOB)
label(bIsAmmoClip)
registersymbol(bIsAmmoClip)
label(dMaxAmmoClip)
registersymbol(dMaxAmmoClip)
alloc(newmem,2048,resourcesRead1AOB+a) //"SOTTR.exe"+C1862F8)
label(returnhere)
label(originalcode_infammopouch)
registersymbol(originalcode_infammopouch)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
push rcx
mov rcx,pAmmoClip
cmp [rcx],rax
jne @f
mov rcx,bIsAmmoClip
mov byte ptr [rcx],1
mov byte ptr [rcx+1],1
@@:
pop rcx
readmem(resourcesRead1AOB+a,2)
//mov edi,[rax]
reassemble(resourcesRead1AOB+c)
//call SOTTR.exe+6CA220
push rcx
mov rcx,bIsAmmoClip
cmp byte ptr [rcx],1
jne @f
mov byte ptr [rcx],0
mov rcx,dMaxAmmoClip
mov [rcx],eax
@@:
pop rcx
end:
jmp exit
originalcode_infammopouch:
readmem(resourcesRead1AOB+a,7)
//mov edi,[rax]
//call SOTTR.exe+6CA220
exit:
jmp returnhere
///
bIsAmmoClip:
dd 0
dMaxAmmoClip:
dd 0
///
resourcesRead1AOB+a: //"SOTTR.exe"+C1862F8:
jmp newmem
nop
nop
returnhere:
///********************************************************///
aobscanmodule(ammoPouchWriteOnFireAOB,SOTTR.exe,0F B7 ** 2B D5 33 ED 85 D2 0F 4F EA)
registersymbol(ammoPouchWriteOnFireAOB)
label(wMinAmmoPouch)
registersymbol(wMinAmmoPouch)
alloc(newmem2,2048,ammoPouchWriteOnFireAOB+5) //"SOTTR.exe"+BE663E7)
label(returnhere2)
label(originalcode2_infammopouch)
registersymbol(originalcode2_infammopouch)
label(exit2)
newmem2: //this is allocated memory, you have read,write,execute access
//place your code here
push rbx
push rcx
mov rbx,4
cmp dword ptr [rax-4],8863ba99 //arrows
je @f
cmp dword ptr [rax-4],540f3c56 //fire arrows
je @f
cmp dword ptr [rax-4],c1e3d56a //poison lure arrows
je @f
cmp dword ptr [rax-4],72cc463a //fear arrows
je @f
mov rcx,originalcode_enable
movzx rcx,byte ptr [rcx+4]
mov rbx,pAmmoPouch
mov rbx,[rbx]
lea rbx,[rbx+rcx]
cmp rbx,rax
xor rbx,rbx
je @f
cmp dword ptr [rax-4],01a09fb6 //flare, handguns alt
je @f
cmp dword ptr [rax-4],0b7cd833 //concussive shell, shotguns alt
je @f
cmp dword ptr [rax-4],aa96c1d1 //poison grenade, rifles alt
je @f
jmp end2
@@:
mov rcx,wMinAmmoPouch
cmp edx,[rcx+rbx]
jge @f
mov edx,[rcx+rbx]
add bp,dx
add [rax],bp
end2:
pop rcx
pop rbx
originalcode2_infammopouch:
readmem(ammoPouchWriteOnFireAOB+5,7)
//xor ebp,ebp
//test edx,edx
//cmovg ebp,edx
exit2:
jmp returnhere2
///
wMinAmmoPouch:
dd 1
dd 3
///
ammoPouchWriteOnFireAOB+5: //"SOTTR.exe"+BE663E7:
jmp newmem2
nop
nop
returnhere2:
///********************************************************///
aobscanmodule(resourcesRead2AOB,SOTTR.exe,48 85 C0 74 05 0F ** ** ** C3 33 C0 C3)
registersymbol(resourcesRead2AOB)
alloc(newmem3,2048,resourcesRead2AOB+5) //"SOTTR.exe"+BD19427)
label(returnhere3)
label(originalcode3_infammopouch)
registersymbol(originalcode3_infammopouch)
label(exit3)
newmem3: //this is allocated memory, you have read,write,execute access
//place your code here
push rbx
//mov rbx,"SOTTR.exe"+C7154DE
//cmp [rsp+38],rbx
//je @f
//mov rbx,"SOTTR.exe"+BBC4706
//cmp [rsp+38],rbx
//je @f
//movzx ebx,word ptr [rax+0C]
mov rbx,bIsAmmoClip
cmp byte ptr [rbx+1],1
jne @f
mov byte ptr [rbx+1],0
mov rbx,pAmmoPouch
cmp [rbx],rax
jne @f
mov rbx,dMaxAmmoClip
mov ebx,[rbx]
db 66 39 58
readmem(resourcesRead2AOB+8,1)
//cmp [rax+c],bx
jge @f
db 66 89 58
readmem(resourcesRead2AOB+8,1)
//mov [rax+c],bx
@@:
//movzx ebx,word ptr [rax+0C]
end3:
pop rbx
originalcode3_infammopouch:
readmem(resourcesRead2AOB+5,5)
//movzx eax,word ptr [rax+0C]
ret
exit3:
jmp returnhere3
///
resourcesRead2AOB+5: //"SOTTR.exe"+BD19427:
jmp newmem3
returnhere3:
///********************************************************///
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
resourcesRead1AOB+a: //"SOTTR.exe"+C1862F8:
readmem(originalcode_infammopouch,7)
//db 8B 38 E8 21 3F 54 F4
//Alt: mov edi,[rax]
//Alt: call SOTTR.exe+6CA220
unregistersymbol(originalcode_infammopouch)
unregistersymbol(bIsAmmoClip)
unregistersymbol(dMaxAmmoClip)
///********************************************************///
dealloc(newmem2)
ammoPouchWriteOnFireAOB+5: //"SOTTR.exe"+BE663E7:
readmem(originalcode2_infammopouch,7)
//db 31 ED 85 D2 0F 4F EA
//Alt: xor ebp,ebp
//Alt: test edx,edx
//Alt: cmovg ebp,edx
unregistersymbol(originalcode2_infammopouch)
unregistersymbol(wMinAmmoPouch)
///********************************************************///
dealloc(newmem3)
resourcesRead2AOB+5: //"SOTTR.exe"+BD19427:
readmem(originalcode3_infammopouch,5)
//db 0F B7 40 0C C3
//Alt: movzx eax,word ptr [rax+0C]
//Alt: ret
unregistersymbol(originalcode3_infammopouch)
///********************************************************///
16030
"custom max stack size"
FF0000
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(maxAmmoReadOnCraftingAOB,SOTTR.exe,48 85 C0 74 05 0F B7 ** ** C3 B8)
registersymbol(maxAmmoReadOnCraftingAOB)
label(aCustomMaxAmmo)
registersymbol(aCustomMaxAmmo)
alloc(newmem,2048,maxAmmoReadOnCraftingAOB+5) //"SOTTR.exe"+BC53F43)
label(returnhere)
label(originalcode_custommaxammo)
registersymbol(originalcode_custommaxammo)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
push rbx
push rcx
mov rbx,aCustomMaxAmmo
@@:
mov ecx,[rbx+8]
test ecx,ecx
jz @f
cmp [rax+8],ecx
cmove rax,rbx
je @f
lea rbx,[rbx+8]
jmp @b
end:
pop rcx
pop rbx
originalcode_custommaxammo:
readmem(maxAmmoReadOnCraftingAOB+5,5)
//movzx eax,word ptr [rax+0C]
//ret
exit:
jmp returnhere
///
aCustomMaxAmmo:
dq 0
dd 8863ba99 //arrows
dd #80
dd 540f3c56 //fire arrows
dd #10
dd c1e3d56a //poison lure arrows
dd #10
dd 72cc463a //fear arrows
dd #10
dd b62b6e6c //handgun ammo
dd #90
dd 01a09fb6 //flare, handguns alt
dd #10
dd a230e397 //shotgun ammo
dd #48
dd 0b7cd833 //concussive shell, shotguns alt
dd #10
dd 5c522579 //rifles ammo
dd #300
dd aa96c1d1 //poison grenade, rifles alt
dd #10
dd 1ec99446 //hardwood 60
dd #120
dd 90f8019c //feathers 60
dd #120
dd 4d826a39 //cloth 60
dd #120
dd 2b62301b //medicine 45
dd #90
dd 4cdd4347 //perception plants 45
dd #90
dd dc39d571 //focus plants 45
dd #90
dd 85de8318 //endurance plants 45
dd #90
dd 6a400495 //black powder 60
dd #120
dd 3d9b411e //salvage 60
dd #120
dd fa60504c //fat 60
dd #120
dd 5f28f125 //hide 60
dd #120
dd 16fccad4 //jaguar hide 45
dd #90
dd ddb9f64a //eagle feathers 45
dd #90
dd f87ade60 //condor feathers 45
dd #90
dd ddc2903f //gold ore 105
dd #210
dd ddea19b5 //jade ore 60
dd #120
dd 62b02c57 //albino capybara hide 35
dd #70
dd 0020d2c8 //black wolf hide 35
dd #70
dd ca345ea3 //empress jaguar hide 35
dd #70
dd 6f638224 //venom 30
dd #60
dd 130920a0 //dart poison 21
dd #42
///
maxAmmoReadOnCraftingAOB+5: //"SOTTR.exe"+BC53F43:
jmp newmem
returnhere:
///****************************************///
aobscanmodule(maxAmmoReadOnCraftEnd1AOB,SOTTR.exe,48 85 C9 74 06 0F B7 ** ** EB 05 BE)
registersymbol(maxAmmoReadOnCraftEnd1AOB)
alloc(newmem2,2048,maxAmmoReadOnCraftEnd1AOB+5) //"SOTTR.exe"+BC72753)
label(returnhere2)
label(originalcode2_custommaxammo)
registersymbol(originalcode2_custommaxammo)
label(exit2)
newmem2: //this is allocated memory, you have read,write,execute access
//place your code here
push rax
push rbx
mov rbx,aCustomMaxAmmo
@@:
mov eax,[rbx+8]
test eax,eax
jz @f
cmp [rcx+8],eax
cmove rcx,rbx
je @f
lea rbx,[rbx+8]
jmp @b
end2:
pop rbx
pop rax
readmem(maxAmmoReadOnCraftEnd1AOB+5,4)
reassemble(maxAmmoReadOnCraftEnd1AOB+9)
originalcode2_custommaxammo:
readmem(maxAmmoReadOnCraftEnd1AOB+5,6)
//movzx esi,word ptr [rcx+0C]
//jmp SOTTR.exe+BC7275E
exit2:
jmp returnhere2
///
maxAmmoReadOnCraftEnd1AOB+5: //"SOTTR.exe"+BC72753:
jmp newmem2
nop
returnhere2:
///****************************************///
aobscanmodule(maxAmmoReadOnCraftEnd2AOB,SOTTR.exe,4D 85 C9 74 07 41 0F B7 ** ** EB)
registersymbol(maxAmmoReadOnCraftEnd2AOB)
alloc(newmem6,2048,maxAmmoReadOnCraftEnd2AOB+5) //"SOTTR.exe"+BDA1469)
label(returnhere6)
label(originalcode6_custommaxammo)
registersymbol(originalcode6_custommaxammo)
label(exit6)
newmem6: //this is allocated memory, you have read,write,execute access
//place your code here
push rbx
push rcx
mov rbx,aCustomMaxAmmo
@@:
mov ecx,[rbx+8]
test ecx,ecx
jz @f
cmp [r9+8],ecx
cmove r9,rbx
je @f
lea rbx,[rbx+8]
jmp @b
end6:
pop rcx
pop rbx
originalcode6_custommaxammo:
readmem(maxAmmoReadOnCraftEnd2AOB+5,5)
//movzx edi,word ptr [r9+0C]
exit6:
jmp returnhere6
///
maxAmmoReadOnCraftEnd2AOB+5: //"SOTTR.exe"+BDA1469:
jmp newmem6
returnhere6:
///****************************************///
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
maxAmmoReadOnCraftingAOB+5: //"SOTTR.exe"+BC53F43:
readmem(originalcode_custommaxammo,5)
//db 0F B7 40 0C C3
//Alt: movzx eax,word ptr [rax+0C]
//Alt: ret
unregistersymbol(originalcode_custommaxammo)
unregistersymbol(aCustomMaxAmmo)
///****************************************///
dealloc(newmem2)
maxAmmoReadOnCraftEnd1AOB+5: //"SOTTR.exe"+BC72753:
readmem(originalcode2_custommaxammo,6)
//db 0F B7 71 0C EB 05
//Alt: movzx esi,word ptr [rcx+0C]
//Alt: jmp SOTTR.exe+BC7275E
unregistersymbol(originalcode2_custommaxammo)
///****************************************///
dealloc(newmem6)
maxAmmoReadOnCraftEnd2AOB+5: //"SOTTR.exe"+BDA1469:
readmem(originalcode6_custommaxammo,5)
//db 41 0F B7 79 0C
//Alt: movzx edi,word ptr [r9+0C]
unregistersymbol(originalcode6_custommaxammo)
///****************************************///
16031
"[quiver]"
1
000080
Array of byte
0
aCustomMaxAmmo
16032
"arrows"
008000
4 Bytes
+0*8+c
16033
"hash"
1
808080
4 Bytes
-4
16034
"fire arrows"
008000
4 Bytes
+1*8+c
16035
"hash"
1
808080
4 Bytes
-4
16036
"poison lure arrows"
008000
4 Bytes
+2*8+c
16037
"hash"
1
808080
4 Bytes
-4
16038
"fear arrows"
008000
4 Bytes
+3*8+c
16039
"hash"
1
808080
4 Bytes
-4
16040
"[ammo]"
1
000080
Array of byte
0
aCustomMaxAmmo
16041
"handguns ammo"
008000
4 Bytes
+4*8+c
16042
"hash"
1
808080
4 Bytes
-4
16043
"flare, handguns alt"
008000
4 Bytes
+5*8+c
16044
"hash"
1
808080
4 Bytes
-4
16045
"shotguns ammo"
008000
4 Bytes
+6*8+c
16046
"hash"
1
808080
4 Bytes
-4
16047
"concussive shell, shotguns alt"
008000
4 Bytes
+7*8+c
16048
"hash"
1
808080
4 Bytes
-4
16049
"rifles ammo"
008000
4 Bytes
+8*8+c
16050
"hash"
1
808080
4 Bytes
-4
16051
"poison grenade, rifles alt"
008000
4 Bytes
+9*8+c
16052
"hash"
1
808080
4 Bytes
-4
16053
"[resources]"
1
000080
Array of byte
0
aCustomMaxAmmo
16054
"[ore]"
1
000080
Array of byte
0
aCustomMaxAmmo
16055
"gold ore"
008000
4 Bytes
+18*8+c
16056
"hash"
1
808080
4 Bytes
-4
16057
"jade ore"
008000
4 Bytes
+19*8+c
16058
"hash"
1
808080
4 Bytes
-4
16059
"[common]"
1
000080
Array of byte
0
aCustomMaxAmmo
16060
"hardwood"
008000
4 Bytes
+a*8+c
16061
"hash"
1
808080
4 Bytes
-4
16062
"feathers"
008000
4 Bytes
+b*8+c
16063
"hash"
1
808080
4 Bytes
-4
16064
"cloth"
008000
4 Bytes
+c*8+c
16065
"hash"
1
808080
4 Bytes
-4
16066
"medicine"
008000
4 Bytes
+d*8+c
16067
"hash"
1
808080
4 Bytes
-4
16068
"perception plants"
008000
4 Bytes
+e*8+c
16069
"hash"
1
808080
4 Bytes
-4
16070
"focus plants"
008000
4 Bytes
+f*8+c
16071
"hash"
1
808080
4 Bytes
-4
16072
"endurance plants"
008000
4 Bytes
+10*8+c
16073
"hash"
1
808080
4 Bytes
-4
16074
"black powder"
008000
4 Bytes
+11*8+c
16075
"hash"
1
808080
4 Bytes
-4
16076
"salvage"
008000
4 Bytes
+12*8+c
16077
"hash"
1
808080
4 Bytes
-4
16078
"fat"
008000
4 Bytes
+13*8+c
16079
"hash"
1
808080
4 Bytes
-4
16080
"hide"
008000
4 Bytes
+14*8+c
16081
"hash"
1
808080
4 Bytes
-4
16082
"[poisons]"
1
000080
Array of byte
0
aCustomMaxAmmo
16083
"venom"
008000
4 Bytes
+1d*8+c
16084
"hash"
1
808080
4 Bytes
-4
16085
"dart poison"
008000
4 Bytes
+1e*8+c
16086
"hash"
1
808080
4 Bytes
-4
16087
"[rare]"
1
000080
Array of byte
0
aCustomMaxAmmo
16088
"jaguar hide"
008000
4 Bytes
+15*8+c
16089
"hash"
1
808080
4 Bytes
-4
16090
"eagle feathers"
008000
4 Bytes
+16*8+c
16091
"hash"
1
808080
4 Bytes
-4
16092
"condor feathers"
008000
4 Bytes
+17*8+c
16093
"hash"
1
808080
4 Bytes
-4
16094
"albino capybara hide"
008000
4 Bytes
+1a*8+c
16095
"hash"
1
808080
4 Bytes
-4
16096
"black wolf hide"
008000
4 Bytes
+1b*8+c
16097
"hash"
1
808080
4 Bytes
-4
16098
"empress jaguar hide"
008000
4 Bytes
+1c*8+c
16099
"hash"
1
808080
4 Bytes
-4
16100
"ignore resources .3"
FF0000
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(resourcesChkOnFieldCraftAOB,SOTTR.exe,E8 ** ** ** ** 0F B7 C0 99 F7 ** ** 3B C3 72)
registersymbol(resourcesChkOnFieldCraftAOB)
alloc(originalcode_ignoreresources,8,resourcesChkOnFieldCraftAOB+e)
registersymbol(originalcode_ignoreresources)
originalcode_ignoreresources:
readmem(resourcesChkOnFieldCraftAOB+e,2)
///
resourcesChkOnFieldCraftAOB+e: //"SOTTR.exe"+AB5CFF6:
db 90 90
///*************************************///
aobscanmodule(resourcesChkOnCraftMenuAccessAOB,SOTTR.exe,E8 ** ** ** ** 0F B7 C0 3B ** 72 ** FF)
registersymbol(resourcesChkOnCraftMenuAccessAOB)
alloc(originalcode2_ignoreresources,8,resourcesChkOnCraftMenuAccessAOB+a)
registersymbol(originalcode2_ignoreresources)
originalcode2_ignoreresources:
readmem(resourcesChkOnCraftMenuAccessAOB+a,2)
///
resourcesChkOnCraftMenuAccessAOB+a: //"SOTTR.exe"+E9B8084:
db 90 90
///*************************************///
aobscanmodule(resourcesChkOnArmourCraftMenuAccessAOB,SOTTR.exe,E8 ** ** ** ** 0F B7 C0 3B ** 7C ** FF)
registersymbol(resourcesChkOnArmourCraftMenuAccessAOB)
alloc(originalcode3_ignoreresources,8,resourcesChkOnArmourCraftMenuAccessAOB+a)
registersymbol(originalcode3_ignoreresources)
originalcode3_ignoreresources:
readmem(resourcesChkOnArmourCraftMenuAccessAOB+a,2)
///
resourcesChkOnArmourCraftMenuAccessAOB+a: //"SOTTR.exe"+BF14A90:
db 90 90
///*************************************///
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
resourcesChkOnFieldCraftAOB+e: //"SOTTR.exe"+AB5CFF6:
readmem(originalcode_ignoreresources,2)
//db 72 2E
//Alt: jb SOTTR.exe+AB5D026
dealloc(originalcode_ignoreresources)
unregistersymbol(originalcode_ignoreresources)
///*************************************///
resourcesChkOnCraftMenuAccessAOB+a: //"SOTTR.exe"+E9B8084:
readmem(originalcode2_ignoreresources,2)
//db 72 1F
//Alt: jb SOTTR.exe+E9B80A5
dealloc(originalcode2_ignoreresources)
unregistersymbol(originalcode2_ignoreresources)
///*************************************///
resourcesChkOnArmourCraftMenuAccessAOB+a: //"SOTTR.exe"+BF14A90:
readmem(originalcode3_ignoreresources,2)
//db 7C 0B
//Alt: jl SOTTR.exe+BF14A9D
dealloc(originalcode3_ignoreresources)
unregistersymbol(originalcode3_ignoreresources)
///*************************************///
16101
"ignore skill points .2"
FF0000
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(skillPtChkOnClick1aAOB,SOTTR.exe,8B ** ** 48 ** ** ** ** 39 ** ** ** ** ** 76 ** 48 ** ** ** ** ** ** E8)
registersymbol(skillPtChkOnClick1aAOB)
skillPtChkOnClick1aAOB+e: //"SOTTR.exe"+F2B7C9B:
db EB
///******************************///
aobscanmodule(skillPtChkOnClick1bAOB,SOTTR.exe,E8 ** ** ** ** 44 ** ** ** 0F 82 ** ** ** ** 48)
registersymbol(skillPtChkOnClick1bAOB)
alloc(originalcode2_ignoreskillpt,8,SOTTR.exe)
registersymbol(originalcode2_ignoreskillpt)
originalcode2_ignoreskillpt:
readmem(skillPtChkOnClick1bAOB+9,6)
///
skillPtChkOnClick1bAOB+9: //"SOTTR.exe"+AB7F8DF:
db 90 90 90 90 90 90
///******************************///
//aobscanmodule(skillPtChkOnLearnAOB,SOTTR.exe,48 ** ** 44 ** ** ** 0F 82 ** ** ** ** 48)
aobscanmodule(skillPtChkOnLearnAOB,SOTTR.exe,48 ** ** 44 ** ** ** 0F 82 ** ** 00 00 48)
registersymbol(skillPtChkOnLearnAOB)
alloc(originalcode3_ignoreskillpt,8,SOTTR.exe)
registersymbol(originalcode3_ignoreskillpt)
originalcode3_ignoreskillpt:
readmem(skillPtChkOnLearnAOB+7,6)
///
skillPtChkOnLearnAOB+7: //"SOTTR.exe"+DF579B1:
db 90 90 90 90 90 90
///******************************///
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
skillPtChkOnClick1aAOB+e: //"SOTTR.exe"+F2B7C9B:
db 76
//Alt: jna
///******************************///
skillPtChkOnClick1bAOB+9: //"SOTTR.exe"+AB7F8DF:
readmem(originalcode2_ignoreskillpt,6)
//db 0F 82 A6 00 00 00
//Alt: jb SOTTR.exe+AB7F98B
dealloc(originalcode2_ignoreskillpt)
unregistersymbol(originalcode2_ignoreskillpt)
///******************************///
skillPtChkOnLearnAOB+7: //"SOTTR.exe"+DF579B1:
readmem(originalcode3_ignoreskillpt,6)
//db 0F 82 D5 01 00 00
//Alt: jb SOTTR.exe+DF57B8C
dealloc(originalcode3_ignoreskillpt)
unregistersymbol(originalcode3_ignoreskillpt)
///******************************///
16102
"skill points"
0000FF
4 Bytes
pSkillPt
4c
16103
"ignore gold pieces .2"
FF0000
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
//aobscanmodule(canBuyFlagChkOnBuyAOB,SOTTR.exe,FF ** ** 31 ** 85 C0 0F 85 ** ** ** ** 48 ** ** ** ** ** ** E8)
//aobscanmodule(canBuyFlagChkOnBuyAOB,SOTTR.exe,FF ** ** ** ** 85 C0 0F 85 ** ** ** ** 48 ** ** ** ** ** ** E8)
aobscanmodule(canBuyFlagChkOnBuyAOB,SOTTR.exe,FF ** 48 33 ** 85 C0 0F 85 ** ** ** ** 48 ** ** ** ** ** ** E8 ** ** ** ** 48)
registersymbol(canBuyFlagChkOnBuyAOB)
canBuyFlagChkOnBuyAOB+6: //"SOTTR.exe"+F6C9793:
readmem(canBuyFlagChkOnBuyAOB+4,1)
//db ED
///******************************************///
aobscanmodule(goldFetchForMaxTradingQuantityCalAOB,SOTTR.exe,E8 ** ** ** ** 33 ** 0F B7 ** F7 ** 3B ** 0F 42 ** 48)
registersymbol(goldFetchForMaxTradingQuantityCalAOB)
alloc(originalcode2_ignoregold,8,SOTTR.exe)
registersymbol(originalcode2_ignoregold)
originalcode2_ignoregold:
readmem(goldFetchForMaxTradingQuantityCalAOB+e,3)
///
goldFetchForMaxTradingQuantityCalAOB+e: //"SOTTR.exe"+F3D1366:
db 90 90 90
///******************************************///
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
canBuyFlagChkOnBuyAOB+6: //"SOTTR.exe"+F6C9793:
db C0
//Alt: eax,eax
///******************************************///
goldFetchForMaxTradingQuantityCalAOB+e: //"SOTTR.exe"+F3D1366:
readmem(originalcode2_ignoregold,3)
//db 0F 42 D8
//Alt: cmovb ebx,eax
dealloc(originalcode2_ignoregold)
unregistersymbol(originalcode2_ignoregold)
///******************************************///
16104
"blinded enemies"
FF0000
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(glimpsePercentageWriteOnPlayerInLineOfSightAOB,SOTTR.exe,F3 ** ** ** 0F 2F ** F3 0F 11 ** ** ** ** ** 0F 82)
registersymbol(glimpsePercentageWriteOnPlayerInLineOfSightAOB)
alloc(originalcode_blindedenemy,8,SOTTR.exe)
registersymbol(originalcode_blindedenemy)
originalcode_blindedenemy:
readmem(glimpsePercentageWriteOnPlayerInLineOfSightAOB,4)
///
glimpsePercentageWriteOnPlayerInLineOfSightAOB: //"SOTTR.exe"+B7257AE:
db 90 0F 57 C9
///**************************************///
aobscanmodule(glimpsePercentageWriteOnPlayerBreakLineOfSightAOB,SOTTR.exe,F3 ** ** ** 0F 2F ** F3 0F 11 ** ** ** ** ** 76 ** 0F 2F)
registersymbol(glimpsePercentageWriteOnPlayerBreakLineOfSightAOB)
alloc(originalcode2_blindedenemy,8,SOTTR.exe)
registersymbol(originalcode2_blindedenemy)
originalcode2_blindedenemy:
readmem(glimpsePercentageWriteOnPlayerBreakLineOfSightAOB,4)
///
glimpsePercentageWriteOnPlayerBreakLineOfSightAOB: //"SOTTR.exe"+B725720:
db 90 0F 57 D2
///**************************************///
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
glimpsePercentageWriteOnPlayerInLineOfSightAOB: //"SOTTR.exe"+B7257AE:
readmem(originalcode_blindedenemy,4)
//db F3 0F 5D CA
//Alt: minss xmm1,xmm2
dealloc(originalcode_blindedenemy)
unregistersymbol(originalcode_blindedenemy)
///**************************************///
glimpsePercentageWriteOnPlayerBreakLineOfSightAOB: //"SOTTR.exe"+B725720:
readmem(originalcode2_blindedenemy,4)
//db F3 0F 5F D1
//Alt: maxss xmm2,xmm1
dealloc(originalcode2_blindedenemy)
unregistersymbol(originalcode2_blindedenemy)
///**************************************///
16105
"stupid enemies .2"
FF0000
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(detectPercentageWriteOnPlayerInLineOfSightAOB,SOTTR.exe,F3 0F 5D CA 0F ** ** 41 ** ** ** F3)
registersymbol(detectPercentageWriteOnPlayerInLineOfSightAOB)
alloc(originalcode3_stupidenemy,8,SOTTR.exe)
registersymbol(originalcode3_stupidenemy)
originalcode3_stupidenemy:
readmem(detectPercentageWriteOnPlayerInLineOfSightAOB,4)
///
detectPercentageWriteOnPlayerInLineOfSightAOB: //"SOTTR.exe"+B0E6763:
db 90 0F 57 C9
///**************************************///
aobscanmodule(detectPercentageWriteOnPlayerBreakLineOfSightAOB,SOTTR.exe,F3 ** ** ** F3 0F 11 ** ** ** ** ** F3 0F 10 ** ** ** ** ** 0F 2F ** 72)
registersymbol(detectPercentageWriteOnPlayerBreakLineOfSightAOB)
alloc(originalcode4_stupidenemy,8,SOTTR.exe)
registersymbol(originalcode4_stupidenemy)
originalcode4_stupidenemy:
readmem(detectPercentageWriteOnPlayerBreakLineOfSightAOB,4)
///
detectPercentageWriteOnPlayerBreakLineOfSightAOB: //"SOTTR.exe"+B7256B8:
db 90 0F 57 C9
///**************************************///
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
detectPercentageWriteOnPlayerInLineOfSightAOB: //"SOTTR.exe"+B0E6763:
readmem(originalcode3_stupidenemy,4)
//db F3 0F 5D CA
//Alt: minss xmm1,xmm2
dealloc(originalcode3_stupidenemy)
unregistersymbol(originalcode3_stupidenemy)
///**************************************///
detectPercentageWriteOnPlayerBreakLineOfSightAOB: //"SOTTR.exe"+B7256B8:
readmem(originalcode4_stupidenemy,4)
//db F3 0F 5F CA
//Alt: maxss xmm1,xmm2
dealloc(originalcode4_stupidenemy)
unregistersymbol(originalcode4_stupidenemy)
///**************************************///
16106
"ignore weapon appearance change .3"
FF0000
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(weaponUpgradesAttachmentsFlagsReadForAppearanceChangeAOB,SOTTR.exe,48 ** ** e8 ** ** ** ** 45 33 c0 88 ** ** ** 41)
registersymbol(weaponUpgradesAttachmentsFlagsReadForAppearanceChangeAOB)
alloc(newmem,2048,weaponUpgradesAttachmentsFlagsReadForAppearanceChangeAOB+8) //"SOTTR.exe"+D110ABD)
label(returnhere)
label(originalcode_ignoreweaponappearancechange)
registersymbol(originalcode_ignoreweaponappearancechange)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
cmp rdx,6a1 //
jge @f //
mov r8,aHideAppearanceChange
mov r8l,[r8+rdx]
test r8l,r8l
jz @f
xor al,al
originalcode_ignoreweaponappearancechange:
readmem(weaponUpgradesAttachmentsFlagsReadForAppearanceChangeAOB+8,7)
//xor r8d,r8d
//mov [rsp+38],al
exit:
jmp returnhere
///
weaponUpgradesAttachmentsFlagsReadForAppearanceChangeAOB+8: //"SOTTR.exe"+D110ABD:
jmp newmem
nop
nop
returnhere:
///********************************************///
//1-hide,0-as is
///////////////////////////////////////
//gears ---///////
///[Satchel]
aHideAppearanceChange+49f:
db 0
///[Rucksack]
aHideAppearanceChange+49d:
db 0
///////////////////////////////////////
//weapon parts ---///////
///[handguns]
aHideAppearanceChange+3ee: //Pistol Sight
db 1
aHideAppearanceChange+3ed: //Pistol Supresser
db 1
aHideAppearanceChange+67a: //Flare
db 1
///[rifles]
aHideAppearanceChange+1d0: //Laser Sight
db 1
aHideAppearanceChange+1d1: //Rifle Supressor
db 1
aHideAppearanceChange+6a0: //Grenade Launcher
db 0
///[shotguns]
aHideAppearanceChange+223: //Shotgun Spreader Choke
db 1
///////////////////////////////////////
//bows ---///////
//[quivers]
aHideAppearanceChange+49a: //Hunter's Quiver
db 1
aHideAppearanceChange+499: //Adventurer's Quiver
db 1
//[Recurve Bow]
//damage
aHideAppearanceChange+f6: //2 Reinforced Limbs
db 1
aHideAppearanceChange+f7: //3 Reinforced Shaft
db 1
//accuracy
aHideAppearanceChange+fb: //3 String Nocks
db 1
aHideAppearanceChange+fc: //4 Notched Rest
db 1
//draw speed
aHideAppearanceChange+f5: //1 Grip Wrap
db 1
aHideAppearanceChange+f8: //2 Waxed String
db 1
//hold time
aHideAppearanceChange+fa: //1 Wrapped String
db 1
aHideAppearanceChange+f9: //2 Cutom Shaft
db 1
//[Seprentwood Bow]
//damage
aHideAppearanceChange+10a: //1 Reinforced Limbs
db 1
aHideAppearanceChange+109: //2 Reinforced Shaft
db 1
//accuracy
aHideAppearanceChange+105: //3 String Nocks
db 1
aHideAppearanceChange+104: //4 Notched Rest
db 1
//draw speed
aHideAppearanceChange+10b: //2 Grip Wrap
db 1
aHideAppearanceChange+108: //4 Waxed String
db 1
//hold time
aHideAppearanceChange+106: //1 Wrapped String
db 1
aHideAppearanceChange+107: //3 Cutom Shaft
db 1
//[Atlatl Bow]
//damage
aHideAppearanceChange+11a: //2 Reinforced Limbs
db 1
aHideAppearanceChange+119: //3 Reinforced Shaft
db 1
//accuracy
aHideAppearanceChange+115: //2 String Nocks
db 1
aHideAppearanceChange+114: //3 Notched Rest
db 1
//draw speed
aHideAppearanceChange+11b: //1 Grip Wrap
db 1
aHideAppearanceChange+118: //4 Waxed String
db 1
//hold time
aHideAppearanceChange+116: //1 Wrapped String
db 1
aHideAppearanceChange+117: //4 Cutom Shaft
db 1
//[Six Sky's War Bow]
//damage
aHideAppearanceChange+102: //1 Reinforced Limbs
db 1
aHideAppearanceChange+101: //4 Reinforced Shaft
db 1
//accuracy
aHideAppearanceChange+fe: //2 String Nocks
db 1
aHideAppearanceChange+fd: //4 Notched Rest
db 1
//draw speed
aHideAppearanceChange+103: //2 Grip Wrap
db 1
//hold time
aHideAppearanceChange+ff: //1 Wrapped String
db 1
aHideAppearanceChange+100: //3 Cutom Shaft
db 1
//[Exiled Fox's Bow]
//damage
aHideAppearanceChange+14d: //2 Reinforced Limbs
db 1
aHideAppearanceChange+14e: //3 Reinforced Shaft
db 1
//accuracy
aHideAppearanceChange+153: //3 String Nocks
db 1
aHideAppearanceChange+154: //4 Notched Rest
db 1
//draw speed
aHideAppearanceChange+14f: //1 Grip Wrap
db 1
aHideAppearanceChange+150: //2 Waxed String
db 1
//hold time
aHideAppearanceChange+151: //1 Wrapped String
db 1
aHideAppearanceChange+152: //2 Cutom Shaft
db 1
///////////////////////////////////////
//handgun ---///////
//[AB .45]
//damage
aHideAppearanceChange+160: //1 Polished Barrel
db 1
aHideAppearanceChange+15e: //2 Rifled Barrel
db 1
//accuracy
aHideAppearanceChange+15d: //1 Counterweight
db 1
aHideAppearanceChange+15c: //3 Ergonomic Grip
db 1
//rate of fire
aHideAppearanceChange+162: //1 Hallowed Hammer
db 1
aHideAppearanceChange+163: //2 Hair Trigger
db 1
aHideAppearanceChange+15f: //3 Improved Ejector
db 1
//reload speed
aHideAppearanceChange+161: //2 Polished Magzine
db 1
//ammo capacity
aHideAppearanceChange+165: //2 Extended Magzine
db 1
aHideAppearanceChange+164: //3 High Capacity Magzine
db 1
//[C&T S55]
//damage
aHideAppearanceChange+16c: //2 Polished Barrel
db 1
aHideAppearanceChange+16f: //3 Rifled Barrel
db 1
//accuracy
aHideAppearanceChange+170: //2 Counterweight
db 1
aHideAppearanceChange+171: //4 Ergonomic Grip
db 1
//rate of fire
aHideAppearanceChange+16a: //1 Hallowed Hammer
db 1
aHideAppearanceChange+168: //2 Hair Trigger
db 1
aHideAppearanceChange+16d: //4 Improved Ejector
db 1
//reload speed
aHideAppearanceChange+16b: //1 Polished Magazine
db 1
//ammo capacity
aHideAppearanceChange+166: //1 Extended Magazine
db 1
aHideAppearanceChange+167: //3 High Capacity Magzine
db 1
//[NEP-14]
//damage
aHideAppearanceChange+180: //1 Polished Barrel
db 1
aHideAppearanceChange+182: //4 Rifled Barrel
db 1
//accuracy
aHideAppearanceChange+17e: //1 Muzzle Break
db 1
aHideAppearanceChange+183: //2 Counterweight
db 1
aHideAppearanceChange+184: //3 Ergonomic Grip
db 1
//rate of fire
aHideAppearanceChange+181: //2 Improved Ejector
db 1
//reload speed
aHideAppearanceChange+17f: //2 Polished Magazine
db 1
//ammo capacity
aHideAppearanceChange+17d: //1 Extended Magazine
db 1
//[River Hawk]
//damage
aHideAppearanceChange+178: //1 Polished Barrel
db 1
aHideAppearanceChange+17a: //4 Rifled Barrel
db 1
//accuracy
aHideAppearanceChange+175: //1 Muzzle Break
db 1
aHideAppearanceChange+17b: //2 Counterweight
db 1
aHideAppearanceChange+17c: //4 Ergonomic Grip
db 1
//rate of fire
aHideAppearanceChange+176: //2 Hallowed Hammer
db 1
aHideAppearanceChange+174: //3 Hair Trigger
db 1
aHideAppearanceChange+179: //4 Improved Ejector
db 1
//reload speed
aHideAppearanceChange+177: //3 Polished Magazine
db 1
//ammo capacity
aHideAppearanceChange+172: //1 Extended Magazine
db 1
aHideAppearanceChange+173: //2 High Capacity Magzine
db 1
//[J&D Model 27]
//damage
aHideAppearanceChange+188: //1 Polished Barrel
db 1
aHideAppearanceChange+189: //2 Rifled Barrel
db 1
aHideAppearanceChange+18b: //4 Chromoly Barrel
db 1
//accuracy
aHideAppearanceChange+186: //2 Muzzle Break
db 1
aHideAppearanceChange+18a: //4 Ergonomic Grip
db 1
//rate of fire
aHideAppearanceChange+187: //1 Hallowed Hammer
db 1
aHideAppearanceChange+185: //3 Hair Trigger
db 1
//reload speed
aHideAppearanceChange+18c: //4 Speed Reloader
db 1
///////////////////////////////////////
//rifles ---///////
//[Vicar Mark II]
//damage
aHideAppearanceChange+1c0: //3 Match Grade Barrel
db 1
aHideAppearanceChange+1c1: //4 Chromoly Barrel
db 1
//accuracy
aHideAppearanceChange+1c7: //1 Padded Stock
db 1
aHideAppearanceChange+1c8: //2 Custom Grip
db 1
aHideAppearanceChange+1c9: //3 Muzzle Brake
db 1
//rate of fire
aHideAppearanceChange+1c5: //1 Modified Firing Pin
db 1
aHideAppearanceChange+1c6: //3 Improved Gas Port
db 1
//reload speed
aHideAppearanceChange+1c2: //2 Barrel Shroud
db 1
aHideAppearanceChange+1c3: //3 Wrapped Magazine
db 1
aHideAppearanceChange+1c4: //4 Taped Double Magazines
db 1
//ammo capacity
aHideAppearanceChange+1bf: //1 Extended Magazine
db 1
//[GF RAL]
//damage
aHideAppearanceChange+1f1: //2 Match Grade Barrel
db 1
aHideAppearanceChange+1f0: //4 Chromoly Barrel
db 1
//accuracy
aHideAppearanceChange+1e9: //1 Custom Grip
db 1
aHideAppearanceChange+1e8: //3 Muzzle Brake
db 1
//rate of fire
aHideAppearanceChange+1ec: //1 Modified Firing Pin
db 1
aHideAppearanceChange+1ea: //3 Improved Gas Port
db 1
//reload speed
aHideAppearanceChange+1ef: //1 Barrel Shroud
db 1
aHideAppearanceChange+1ee: //2 Wrapped Magazine
db 1
aHideAppearanceChange+1ed: //3 Taped Double Magazines
db 1
//ammo capacity
aHideAppearanceChange+1f2: //2 Extended Magazine
db 1
//[PN-TF 267]
//damage
aHideAppearanceChange+205: //2 Match Grade Barrel
db 1
aHideAppearanceChange+204: //4 Chromoly Barrel
db 1
//accuracy
aHideAppearanceChange+1ff: //1 Padded Stock
db 1
aHideAppearanceChange+1fe: //2 Custom Grip
db 1
aHideAppearanceChange+1fd: //4 Muzzle Brake
db 1
//rate of fire
aHideAppearanceChange+201: //1 Modified Firing Pin
db 1
aHideAppearanceChange+200: //3 Improved Gas Port
db 1
//reload speed
aHideAppearanceChange+203: //2 Barrel Shroud
db 1
aHideAppearanceChange+202: //3 Wrapped Magazine
db 1
//ammo capacity
aHideAppearanceChange+206: //1 Extended Magazine
db 1
//[WASP 11]
//damage
aHideAppearanceChange+1fa: //1 Match Grade Barrel
db 1
aHideAppearanceChange+1f9: //4 Chromoly Barrel
db 1
//accuracy
aHideAppearanceChange+1f4: //2 Custom Grip
db 1
aHideAppearanceChange+1f3: //3 Muzzle Brake
db 1
aHideAppearanceChange+1fc: //4 Extended Stock
db 1
//rate of fire
aHideAppearanceChange+1f5: //2 Improved Gas Port
db 1
//reload speed
aHideAppearanceChange+1f8: //1 Barrel Shroud
db 1
aHideAppearanceChange+1f7: //2 Wrapped Magazine
db 1
aHideAppearanceChange+1f6: //3 Taped Double Magazines
db 1
//ammo capacity
aHideAppearanceChange+1fb: //1 Extended Magazine
db 1
///////////////////////////////////////
//shotguns ---///////
//[TAEV 16]
//damage
aHideAppearanceChange+241: //1 Custom Forcing Cone
db 1
aHideAppearanceChange+240: //3 Back-Bored Barrel
db 1
//accuracy
aHideAppearanceChange+23d: //1 Padded Grip
db 1
aHideAppearanceChange+244: //2 Stock
db 1
aHideAppearanceChange+23c: //3 Muzzle Weight
db 1
aHideAppearanceChange+243: //4 Padded Stock
db 1
//rate of fire
aHideAppearanceChange+23e: //2 Custom Trigger
db 1
//reload speed
aHideAppearanceChange+23f: //2 Ammo Sleeve
db 1
//ammo capacity
aHideAppearanceChange+242: //3 Tube Magazine Extender
db 1
//[WHWS-16]
//damage
aHideAppearanceChange+24b: //1 Custom Forcing Cone
db 1
aHideAppearanceChange+24a: //2 Back-Bored Barrel
db 1
//accuracy
aHideAppearanceChange+247: //1 Padded Grip
db 1
aHideAppearanceChange+24c: //3 Compensator
db 1
aHideAppearanceChange+246: //4 Padded Stock
db 1
//rate of fire
aHideAppearanceChange+24d: //4 Custom Trigger
db 1
//reload speed
aHideAppearanceChange+249: //1 Barrel Shroud
db 1
aHideAppearanceChange+248: //2 Modified Ejector
db 1
aHideAppearanceChange+24e: //4 Quick Release Drum
db 1
//ammo capacity
aHideAppearanceChange+245: //3 Drum Magazine
db 1
//[Bishop 600]
//damage
aHideAppearanceChange+21b: //2 Custom Forcing Cone
db 1
aHideAppearanceChange+21c: //3 Back-Bored Barrel
db 1
//accuracy
aHideAppearanceChange+21f: //1 Padded Grip
db 1
aHideAppearanceChange+220: //2 Muzzle Weight
db 1
aHideAppearanceChange+221: //3 Padded Stock
db 1
aHideAppearanceChange+222: //4 Pump Grip
db 1
//rate of fire
aHideAppearanceChange+21e: //1 Custom Trigger
db 1
//reload speed
aHideAppearanceChange+21d: //2 Ammo Sleeve
db 1
//ammo capacity
aHideAppearanceChange+21a: //2 Tube Magazine Extender
db 1
//[Sedgewick 707]
//damage
aHideAppearanceChange+255: //2 Custom Forcing Cone
db 1
aHideAppearanceChange+254: //3 Back-Bored Barrel
db 1
//accuracy
aHideAppearanceChange+251: //1 Padded Grip
db 1
aHideAppearanceChange+24f: //3 Padded Stock
db 1
//rate of fire
aHideAppearanceChange+252: //1 Custom Trigger
db 1
//reload speed
aHideAppearanceChange+253: //2 Ammo Sleeve
db 1
///////////////////////////////////////
//knives ---///////
//[Shop Upgrade]
aHideAppearanceChange+be:
db 0
///********************************************///
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
weaponUpgradesAttachmentsFlagsReadForAppearanceChangeAOB+8: //"SOTTR.exe"+D110ABD:
readmem(originalcode_ignoreweaponappearancechange,7)
//db 45 31 C0 88 44 24 38
//Alt: xor r8d,r8d
//Alt: mov [rsp+38],al
unregistersymbol(originalcode_ignoreweaponappearancechange)
///********************************************///
16107
"[appearance]"
000080
Array of byte
0
aHideAppearanceChange
16108
"[bows]"
000080
Array of byte
0
aHideAppearanceChange
16109
"[quivers]"
000080
Array of byte
0
+0
16110
"Hunter's Quiver"
0:as is
1:ignored
008000
Byte
+49a
16111
"Adventurer's Quiver"
0:as is
1:ignored
008000
Byte
+499
16112
"[Seprentwood Bow]"
000080
Array of byte
0
aHideAppearanceChange
16113
"[damage]"
000080
Array of byte
0
+0
16114
"1 Reinforced Limbs"
0:as is
1:ignored
008000
Byte
+10a
16115
"2 Reinforced Shaft"
0:as is
1:ignored
008000
Byte
+109
16116
"[accuracy]"
000080
Array of byte
0
+0
16117
"3 String Nocks"
0:as is
1:ignored
008000
Byte
+105
16118
"4 Notched Rest"
0:as is
1:ignored
008000
Byte
+104
16119
"[draw speed]"
000080
Array of byte
0
+0
16120
"2 Grip Wrap"
0:as is
1:ignored
008000
Byte
+10b
16121
"4 Waxed String"
0:as is
1:ignored
008000
Byte
+108
16122
"[hold time]"
000080
Array of byte
0
+0
16123
"1 Wrapped String"
0:as is
1:ignored
008000
Byte
+106
16124
"3 Cutom Shaft"
0:as is
1:ignored
008000
Byte
+107
16125
"[Atlatl Bow]"
000080
Array of byte
0
aHideAppearanceChange
16126
"[damage]"
000080
Array of byte
0
+0
16127
"2 Reinforced Limbs"
0:as is
1:ignored
008000
Byte
+11a
16128
"3 Reinforced Shaft"
0:as is
1:ignored
008000
Byte
+119
16129
"[accuracy]"
000080
Array of byte
0
+0
16130
"2 String Nocks"
0:as is
1:ignored
008000
Byte
+115
16131
"3 Notched Rest"
0:as is
1:ignored
008000
Byte
+114
16132
"[draw speed]"
000080
Array of byte
0
+0
16133
"1 Grip Wrap"
0:as is
1:ignored
008000
Byte
+11b
16134
"4 Waxed String"
0:as is
1:ignored
008000
Byte
+118
16135
"[hold time]"
000080
Array of byte
0
+0
16136
"1 Wrapped String"
0:as is
1:ignored
008000
Byte
+116
16137
"4 Cutom Shaft"
0:as is
1:ignored
008000
Byte
+117
16138
"[Recurve Bow]"
000080
Array of byte
0
aHideAppearanceChange
16139
"[damage]"
000080
Array of byte
0
+0
16140
"2 Reinforced Limbs"
0:as is
1:ignored
008000
Byte
+f6
16141
"3 Reinforced Shaft"
0:as is
1:ignored
008000
Byte
+f7
16142
"[accuracy]"
000080
Array of byte
0
+0
16143
"3 String Nocks"
0:as is
1:ignored
008000
Byte
+fb
16144
"4 Notched Rest"
0:as is
1:ignored
008000
Byte
+fc
16145
"[draw speed]"
000080
Array of byte
0
+0
16146
"1 Grip Wrap"
0:as is
1:ignored
008000
Byte
+f5
16147
"2 Waxed String"
0:as is
1:ignored
008000
Byte
+f8
16148
"[hold time]"
000080
Array of byte
0
+0
16149
"1 Wrapped String"
0:as is
1:ignored
008000
Byte
+fa
16150
"2 Cutom Shaft"
0:as is
1:ignored
008000
Byte
+f9
16151
"[Six Sky's War Bow]"
000080
Array of byte
0
aHideAppearanceChange
16152
"[damage]"
000080
Array of byte
0
+0
16153
"1 Reinforced Limbs"
0:as is
1:ignored
008000
Byte
+102
16154
"4 Reinforced Shaft"
0:as is
1:ignored
008000
Byte
+101
16155
"[accuracy]"
000080
Array of byte
1
+0
16156
"2 String Nocks"
0:as is
1:ignored
008000
Byte
+fe
16157
"4 Notched Rest"
0:as is
1:ignored
008000
Byte
+fd
16158
"[draw speed]"
000080
Array of byte
1
+0
16159
"2 Grip Wrap"
0:as is
1:ignored
008000
Byte
+103
16160
"[hold time]"
000080
Array of byte
1
+0
16161
"1 Wrapped String"
0:as is
1:ignored
008000
Byte
+ff
16162
"3 Cutom Shaft"
0:as is
1:ignored
008000
Byte
+100
16163
"[Exiled Fox's Bow]"
000080
Array of byte
0
aHideAppearanceChange
16164
"[damage]"
000080
Array of byte
0
+0
16165
"2 Reinforced Limbs"
0:as is
1:ignored
008000
Byte
+14d
16166
"3 Reinforced Shaft"
0:as is
1:ignored
008000
Byte
+14e
16167
"[accuracy]"
000080
Array of byte
0
+0
16168
"3 String Nocks"
0:as is
1:ignored
008000
Byte
+153
16169
"4 Notched Rest"
0:as is
1:ignored
008000
Byte
+154
16170
"[draw speed]"
000080
Array of byte
0
+0
16171
"1 Grip Wrap"
0:as is
1:ignored
008000
Byte
+14f
16172
"2 Waxed String"
0:as is
1:ignored
008000
Byte
+150
16173
"[hold time]"
000080
Array of byte
0
+0
16174
"1 Wrapped String"
0:as is
1:ignored
008000
Byte
+151
16175
"2 Cutom Shaft"
0:as is
1:ignored
008000
Byte
+152
16176
"[handguns]"
000080
Array of byte
0
aHideAppearanceChange
16177
"[weapon parts]"
000080
Array of byte
0
aHideAppearanceChange
16178
"Pistol Sight"
0:as is
1:ignored
008000
Byte
+3ee
16179
"Pistol Supresser"
0:as is
1:ignored
008000
Byte
+3ed
16180
"Flare"
0:as is
1:ignored
008000
Byte
+67a
16181
"[AB .45]"
000080
Array of byte
0
aHideAppearanceChange
16182
"[damage]"
000080
Array of byte
0
+0
16183
"1 Polished Barrel"
0:as is
1:ignored
008000
Byte
+160
16184
"2 Rifled Barrel"
0:as is
1:ignored
008000
Byte
+15e
16185
"[accuracy]"
000080
Array of byte
0
+0
16186
"1 Counterweight"
0:as is
1:ignored
008000
Byte
+15d
16187
"3 Ergonomic Grip"
0:as is
1:ignored
008000
Byte
+15c
16188
"[rate of fire]"
000080
Array of byte
0
+0
16189
"1 Hallowed Hammer"
0:as is
1:ignored
008000
Byte
+162
16190
"2 Hair Trigger"
0:as is
1:ignored
008000
Byte
+163
16191
"3 Improved Ejector"
0:as is
1:ignored
008000
Byte
+15f
16192
"[reload speed]"
000080
Array of byte
0
+0
16193
"2 Polished Magzine"
0:as is
1:ignored
008000
Byte
+161
16194
"[ammo capacity]"
000080
Array of byte
0
+0
16195
"2 Extended Magzine"
0:as is
1:ignored
008000
Byte
+165
16196
"3 High Capacity Magzine"
0:as is
1:ignored
008000
Byte
+164
16197
"[C&T S55]"
000080
Array of byte
0
aHideAppearanceChange
16198
"[damage]"
000080
Array of byte
0
+0
16199
"2 Polished Barrel"
0:as is
1:ignored
008000
Byte
+16c
16200
"3 Rifled Barrel"
0:as is
1:ignored
008000
Byte
+16f
16201
"[accuracy]"
000080
Array of byte
0
+0
16202
"2 Counterweight"
0:as is
1:ignored
008000
Byte
+170
16203
"4 Ergonomic Grip"
0:as is
1:ignored
008000
Byte
+171
16204
"[rate of fire]"
000080
Array of byte
0
+0
16205
"1 Hallowed Hammer"
0:as is
1:ignored
008000
Byte
+16a
16206
"2 Hair Trigger"
0:as is
1:ignored
008000
Byte
+168
16207
"4 Improved Ejector"
0:as is
1:ignored
008000
Byte
+16d
16208
"[reload speed]"
000080
Array of byte
0
+0
16209
"1 Polished Magazine"
0:as is
1:ignored
008000
Byte
+16b
16210
"[ammo capacity]"
000080
Array of byte
0
+0
16211
"1 Extended Magazine"
0:as is
1:ignored
008000
Byte
+166
16212
"3 High Capacity Magzine"
0:as is
1:ignored
008000
Byte
+167
16213
"[NEP-14]"
000080
Array of byte
0
aHideAppearanceChange
16214
"[damage]"
000080
Array of byte
0
+0
16215
"1 Polished Barrel"
0:as is
1:ignored
008000
Byte
+180
16216
"4 Rifled Barrel"
0:as is
1:ignored
008000
Byte
+182
16217
"[accuracy]"
000080
Array of byte
0
+0
16218
"1 Muzzle Break"
0:as is
1:ignored
008000
Byte
+17e
16219
"2 Counterweight"
0:as is
1:ignored
008000
Byte
+183
16220
"3 Ergonomic Grip"
0:as is
1:ignored
008000
Byte
+184
16221
"[rate of fire]"
000080
Array of byte
0
+0
16222
"2 Improved Ejector"
0:as is
1:ignored
008000
Byte
+181
16223
"[reload speed]"
000080
Array of byte
0
+0
16224
"2 Polished Magazine"
0:as is
1:ignored
008000
Byte
+17f
16225
"[ammo capacity]"
000080
Array of byte
0
+0
16226
"1 Extended Magazine"
0:as is
1:ignored
008000
Byte
+17d
16227
"[River Hawk]"
000080
Array of byte
0
aHideAppearanceChange
16228
"[damage]"
000080
Array of byte
0
+0
16229
"1 Polished Barrel"
0:as is
1:ignored
008000
Byte
+178
16230
"4 Rifled Barrel"
0:as is
1:ignored
008000
Byte
+17a
16231
"[accuracy]"
000080
Array of byte
0
+0
16232
"1 Muzzle Break"
0:as is
1:ignored
008000
Byte
+175
16233
"2 Counterweight"
0:as is
1:ignored
008000
Byte
+17b
16234
"4 Ergonomic Grip"
0:as is
1:ignored
008000
Byte
+17c
16235
"[rate of fire]"
000080
Array of byte
0
+0
16236
"2 Hallowed Hammer"
0:as is
1:ignored
008000
Byte
+176
16237
"3 Hair Trigger"
0:as is
1:ignored
008000
Byte
+174
16238
"4 Improved Ejector"
0:as is
1:ignored
008000
Byte
+179
16239
"[reload speed]"
000080
Array of byte
0
+0
16240
"3 Polished Magazine"
0:as is
1:ignored
008000
Byte
+177
16241
"[ammo capacity]"
000080
Array of byte
0
+0
16242
"1 Extended Magazine"
0:as is
1:ignored
008000
Byte
+172
16243
"2 High Capacity Magzine"
0:as is
1:ignored
008000
Byte
+173
16244
"[J&D Model 27]"
000080
Array of byte
0
aHideAppearanceChange
16245
"[damage]"
000080
Array of byte
0
+0
16246
"1 Polished Barrel"
0:as is
1:ignored
008000
Byte
+188
16247
"2 Rifled Barrel"
0:as is
1:ignored
008000
Byte
+189
16248
"4 Chromoly Barrel"
0:as is
1:ignored
008000
Byte
+18b
16249
"[accuracy]"
000080
Array of byte
0
+0
16250
"2 Muzzle Break"
0:as is
1:ignored
008000
Byte
+186
16251
"4 Ergonomic Grip"
0:as is
1:ignored
008000
Byte
+18a
16252
"[rate of fire]"
000080
Array of byte
0
+0
16253
"1 Hallowed Hammer"
0:as is
1:ignored
008000
Byte
+187
16254
"3 Hair Trigger"
0:as is
1:ignored
008000
Byte
+185
16255
"[reload speed]"
000080
Array of byte
0
+0
16256
"4 Speed Reloader"
0:as is
1:ignored
008000
Byte
+18c
16257
"[rifles]"
000080
Array of byte
0
aHideAppearanceChange
16258
"[weapon parts]"
000080
Array of byte
0
aHideAppearanceChange
16259
"Laser Sight"
0:as is
1:ignored
008000
Byte
+1d0
16260
"Rifle Supressor"
0:as is
1:ignored
008000
Byte
+1d1
16261
"Grenade Launcher"
0:as is
1:ignored
008000
Byte
+6a0
16262
"[Vicar Mark II]"
000080
Array of byte
0
aHideAppearanceChange
16263
"[damage]"
000080
Array of byte
0
+0
16264
"3 Match Grade Barrel"
0:as is
1:ignored
008000
Byte
+1c0
16265
"4 Chromoly Barrel"
0:as is
1:ignored
008000
Byte
+1c1
16266
"[accuracy]"
000080
Array of byte
0
+0
16267
"1 Padded Stock"
0:as is
1:ignored
008000
Byte
+1c7
16268
"2 Custom Grip"
0:as is
1:ignored
008000
Byte
+1c8
16269
"3 Muzzle Brake"
0:as is
1:ignored
008000
Byte
+1c9
16270
"[rate of fire]"
000080
Array of byte
0
+0
16271
"1 Modified Firing Pin"
0:as is
1:ignored
008000
Byte
+1c5
16272
"3 Improved Gas Port"
0:as is
1:ignored
008000
Byte
+1c6
16273
"[reload speed]"
000080
Array of byte
0
+0
16274
"2 Barrel Shroud"
0:as is
1:ignored
008000
Byte
+1c2
16275
"3 Wrapped Magazine"
0:as is
1:ignored
008000
Byte
+1c3
16276
"4 Taped Double Magazines"
0:as is
1:ignored
008000
Byte
+1c4
16277
"[ammo capacity]"
000080
Array of byte
0
+0
16278
"1 Extended Magazine"
0:as is
1:ignored
008000
Byte
+1bf
16279
"[GF RAL]"
000080
Array of byte
0
aHideAppearanceChange
16280
"[damage]"
000080
Array of byte
0
+0
16281
"2 Match Grade Barrel"
0:as is
1:ignored
008000
Byte
+1f1
16282
"4 Chromoly Barrel"
0:as is
1:ignored
008000
Byte
+1f0
16283
"[accuracy]"
000080
Array of byte
0
+0
16284
"1 Custom Grip"
0:as is
1:ignored
008000
Byte
+1e9
16285
"3 Muzzle Brake"
0:as is
1:ignored
008000
Byte
+1e8
16286
"[rate of fire]"
000080
Array of byte
0
+0
16287
"1 Modified Firing Pin"
0:as is
1:ignored
008000
Byte
+1ec
16288
"3 Improved Gas Port"
0:as is
1:ignored
008000
Byte
+1ea
16289
"[reload speed]"
000080
Array of byte
0
+0
16290
"1 Barrel Shroud"
0:as is
1:ignored
008000
Byte
+1ef
16291
"2 Wrapped Magazine"
0:as is
1:ignored
008000
Byte
+1ee
16292
"3 Taped Double Magazines"
0:as is
1:ignored
008000
Byte
+1ed
16293
"[ammo capacity]"
000080
Array of byte
0
+0
16294
"2 Extended Magazine"
0:as is
1:ignored
008000
Byte
+1f2
16295
"[PN-TF 267]"
000080
Array of byte
0
aHideAppearanceChange
16296
"[damage]"
000080
Array of byte
0
+0
16297
"2 Match Grade Barrel"
0:as is
1:ignored
008000
Byte
+205
16298
"4 Chromoly Barrel"
0:as is
1:ignored
008000
Byte
+204
16299
"[accuracy]"
000080
Array of byte
0
+0
16300
"1 Padded Stock"
0:as is
1:ignored
008000
Byte
+1ff
16301
"2 Custom Grip"
0:as is
1:ignored
008000
Byte
+1fe
16302
"4 Muzzle Brake"
0:as is
1:ignored
008000
Byte
+1fd
16303
"[rate of fire]"
000080
Array of byte
0
+0
16304
"1 Modified Firing Pin"
0:as is
1:ignored
008000
Byte
+201
16305
"3 Improved Gas Port"
0:as is
1:ignored
008000
Byte
+200
16306
"[reload speed]"
000080
Array of byte
0
+0
16307
"2 Barrel Shroud"
0:as is
1:ignored
008000
Byte
+203
16308
"3 Wrapped Magazine"
0:as is
1:ignored
008000
Byte
+202
16309
"[ammo capacity]"
000080
Array of byte
0
+0
16310
"1 Extended Magazine"
0:as is
1:ignored
008000
Byte
+206
16311
"[WASP 11]"
000080
Array of byte
0
aHideAppearanceChange
16312
"[damage]"
000080
Array of byte
0
+0
16313
"1 Match Grade Barrel"
0:as is
1:ignored
008000
Byte
+1fa
16314
"4 Chromoly Barrel"
0:as is
1:ignored
008000
Byte
+1f9
16315
"[accuracy]"
000080
Array of byte
0
+0
16316
"2 Custom Grip"
0:as is
1:ignored
008000
Byte
+1f4
16317
"3 Muzzle Brake"
0:as is
1:ignored
008000
Byte
+1f3
16318
"4 Extended Stock"
0:as is
1:ignored
008000
Byte
+1fc
16319
"[rate of fire]"
000080
Array of byte
0
+0
16320
"2 Improved Gas Port"
0:as is
1:ignored
008000
Byte
+1f5
16321
"[reload speed]"
000080
Array of byte
0
+0
16322
"1 Barrel Shroud"
0:as is
1:ignored
008000
Byte
+1f8
16323
"2 Wrapped Magazine"
0:as is
1:ignored
008000
Byte
+1f7
16324
"3 Taped Double Magazines"
0:as is
1:ignored
008000
Byte
+1f6
16325
"[ammo capacity]"
000080
Array of byte
0
+0
16326
"1 Extended Magazine"
0:as is
1:ignored
008000
Byte
+1fb
16327
"[shotguns]"
000080
Array of byte
0
aHideAppearanceChange
16328
"[weapon parts]"
000080
Array of byte
0
aHideAppearanceChange
16329
"Shotgun Spreader Choke"
0:as is
1:ignored
008000
Byte
+223
16330
"[TAEV 16]"
000080
Array of byte
0
aHideAppearanceChange
16331
"[damage]"
000080
Array of byte
0
+0
16332
"1 Custom Forcing Cone"
0:as is
1:ignored
008000
Byte
+241
16333
"3 Back-Bored Barrel"
0:as is
1:ignored
008000
Byte
+240
16334
"[accuracy]"
000080
Array of byte
0
+0
16335
"1 Padded Grip"
0:as is
1:ignored
008000
Byte
+23d
16336
"2 Stock"
0:as is
1:ignored
008000
Byte
+244
16337
"3 Muzzle Weight"
0:as is
1:ignored
008000
Byte
+23c
16338
"4 Padded Stock"
0:as is
1:ignored
008000
Byte
+243
16339
"[rate of fire]"
000080
Array of byte
0
+0
16340
"2 Custom Trigger"
0:as is
1:ignored
008000
Byte
+23e
16341
"[reload speed]"
000080
Array of byte
0
+0
16342
"2 Ammo Sleeve"
0:as is
1:ignored
008000
Byte
+23f
16343
"[ammo capacity]"
000080
Array of byte
0
+0
16344
"3 Tube Magazine Extender"
0:as is
1:ignored
008000
Byte
+242
16345
"[WHWS-16]"
000080
Array of byte
0
aHideAppearanceChange
16346
"[damage]"
000080
Array of byte
0
+0
16347
"1 Custom Forcing Cone"
0:as is
1:ignored
008000
Byte
+24b
16348
"2 Back-Bored Barrel"
0:as is
1:ignored
008000
Byte
+24a
16349
"[accuracy]"
000080
Array of byte
0
+0
16350
"1 Padded Grip"
0:as is
1:ignored
008000
Byte
+247
16351
"3 Compensator"
0:as is
1:ignored
008000
Byte
+24c
16352
"4 Padded Stock"
0:as is
1:ignored
008000
Byte
+246
16353
"[rate of fire]"
000080
Array of byte
0
+0
16354
"4 Custom Trigger"
0:as is
1:ignored
008000
Byte
+24d
16355
"[reload speed]"
000080
Array of byte
0
+0
16356
"1 Barrel Shroud"
0:as is
1:ignored
008000
Byte
+249
16357
"2 Modified Ejector"
0:as is
1:ignored
008000
Byte
+248
16358
"4 Quick Release Drum"
0:as is
1:ignored
008000
Byte
+24e
16359
"[ammo capacity]"
000080
Array of byte
0
+0
16360
"3 Drum Magazine"
0:as is
1:ignored
008000
Byte
+245
16361
"[Bishop 600]"
000080
Array of byte
0
aHideAppearanceChange
16362
"[damage]"
000080
Array of byte
0
+0
16363
"2 Custom Forcing Cone"
0:as is
1:ignored
008000
Byte
+21b
16364
"3 Back-Bored Barrel"
0:as is
1:ignored
008000
Byte
+21c
16365
"[accuracy]"
000080
Array of byte
0
+0
16366
"1 Padded Grip"
0:as is
1:ignored
008000
Byte
+21f
16367
"2 Muzzle Weight"
0:as is
1:ignored
008000
Byte
+220
16368
"3 Padded Stock"
0:as is
1:ignored
008000
Byte
+221
16369
"4 Pump Grip"
0:as is
1:ignored
008000
Byte
+222
16370
"[rate of fire]"
000080
Array of byte
0
+0
16371
"1 Custom Trigger"
0:as is
1:ignored
008000
Byte
+21e
16372
"[reload speed]"
000080
Array of byte
0
+0
16373
"2 Ammo Sleeve"
0:as is
1:ignored
008000
Byte
+21d
16374
"[ammo capacity]"
000080
Array of byte
0
+0
16375
"2 Tube Magazine Extender"
0:as is
1:ignored
008000
Byte
+21a
16376
"[Sedgewick 707]"
000080
Array of byte
0
aHideAppearanceChange
16377
"[damage]"
000080
Array of byte
0
+0
16378
"2 Custom Forcing Cone"
0:as is
1:ignored
008000
Byte
+255
16379
"3 Back-Bored Barrel"
0:as is
1:ignored
008000
Byte
+254
16380
"[accuracy]"
000080
Array of byte
0
+0
16381
"1 Padded Grip"
0:as is
1:ignored
008000
Byte
+251
16382
"3 Padded Stock"
0:as is
1:ignored
008000
Byte
+24f
16383
"[rate of fire]"
000080
Array of byte
0
+0
16384
"1 Custom Trigger"
0:as is
1:ignored
008000
Byte
+252
16385
"[reload speed]"
000080
Array of byte
0
+0
16386
"2 Ammo Sleeve"
0:as is
1:ignored
008000
Byte
+253
16387
"access locked/newgame+ skills .2"
FF0000
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(cJmpForHiddenFlagsAOB,SOTTR.exe,0F 84 ** ** ** ** 84 ** 74 08 84 ** 0F 84)
registersymbol(cJmpForHiddenFlagsAOB)
alloc(originalcode_unlocknewgameplusskills,8,SOTTR.exe)
registersymbol(originalcode_unlocknewgameplusskills)
originalcode_unlocknewgameplusskills:
readmem(cJmpForHiddenFlagsAOB+c,6)
///
cJmpForHiddenFlagsAOB+c: //"SOTTR.exe"+EC7DB22:
db 90 90 90 90 90 90
///*************************************///
aobscanmodule(cJmpIfSkillNotLockedOnClick1aAOB,SOTTR.exe,8B ** ** ** 00 00 83 ** 02 0F 84 ** ** 00 00 83 ** 01)
registersymbol(cJmpIfSkillNotLockedOnClick1aAOB)
cJmpIfSkillNotLockedOnClick1aAOB+9: //"SOTTR.exe"+EABBD84:
db 90 E9
///*************************************///
aobscanmodule(cJmpIfOptionNotLockedOnClick1bAOB,SOTTR.exe,E8 ** ** ** ** 84 C0 75 15 48 ** ** ** ** ** ** E8 ** ** ** ** 48)
//aobscanmodule(cJmpIfOptionNotLockedOnClick1bAOB,SOTTR.exe,E8 ** ** ** ** 84 C0 75 25 48 ** ** ** ** ** ** E8 ** ** ** ** 48)
registersymbol(cJmpIfOptionNotLockedOnClick1bAOB)
cJmpIfOptionNotLockedOnClick1bAOB+7: //"SOTTR.exe"+E23708E:
db EB
///*************************************///
//aobscanmodule(cJmpIfSkillLockedOnLearnAOB,SOTTR.exe,48 ** ** E8 ** ** ** ** 84 C0 74 ** 48 ** ** ** ** ** ** 48 ** ** FF)
aobscanmodule(cJmpIfSkillLockedOnLearnAOB,SOTTR.exe,48 ** ** E8 ** ** ** ** 84 C0 74 ** 48 ** ** ** ** ** ** 48 ** ** FF ** ** 48)
registersymbol(cJmpIfSkillLockedOnLearnAOB)
cJmpIfSkillLockedOnLearnAOB+a: //"SOTTR.exe"+E77E252:
db 90 90
///*************************************///
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
cJmpForHiddenFlagsAOB+c: //"SOTTR.exe"+EC7DB22:
readmem(originalcode_unlocknewgameplusskills,6)
//db 0F 84 32 01 00 00
//Alt: je SOTTR.exe+EC7DC5A
dealloc(originalcode_unlocknewgameplusskills)
unregistersymbol(originalcode_unlocknewgameplusskills)
///*************************************///
cJmpIfSkillNotLockedOnClick1aAOB+9: //"SOTTR.exe"+EABBD84:
db 0F 84
//Alt: je
///*************************************///
cJmpIfOptionNotLockedOnClick1bAOB+7: //"SOTTR.exe"+E23708E:
db 75
//Alt: jne
///*************************************///
cJmpIfSkillLockedOnLearnAOB+a: //"SOTTR.exe"+E77E252:
db 74 79
//Alt: je SOTTR.exe+E77E2CD
///*************************************///
16388
"some flags fetch .1"
FF0000
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(manyFlagsReadAOB,SOTTR.exe,0F B7 C2 0F B6 ** ** ** 24 01 C3)
registersymbol(manyFlagsReadAOB)
label(pSomeFlagsBase)
registersymbol(pSomeFlagsBase)
alloc(newmem,2048,manyFlagsReadAOB+3) //"SOTTR.exe"+E0FA1F0)
label(returnhere)
label(originalcode_flagsfetch)
registersymbol(originalcode_flagsfetch)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
push rbx
mov rbx,pSomeFlagsBase
mov [rbx],rcx
/*
cmp rax,67a
jne end
mov rbx,"SOTTR.exe"+9E915E8
cmp [rsp+38],rbx
je @f
movzx ebx,byte ptr [rax+rcx+08]
//xor eax,eax
//pop rbx
//jmp exit
*/
//cmp rax,499
//je @f
//cmp rax,49a
//je @f
//jmp end
//
//@@:
//xor eax,eax
//pop rbx
//jmp exit
end:
pop rbx
originalcode_flagsfetch:
readmem(manyFlagsReadAOB+3,5)
//movzx eax,byte ptr [rax+rcx+08]
exit:
jmp returnhere
///
pSomeFlagsBase:
///
manyFlagsReadAOB+3: //"SOTTR.exe"+E0FA1F0:
jmp newmem
returnhere:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
manyFlagsReadAOB+3: //"SOTTR.exe"+E0FA1F0:
readmem(originalcode_flagsfetch,5)
//db 0F B6 44 08 08
//Alt: movzx eax,byte ptr [rax+rcx+08]
unregistersymbol(originalcode_flagsfetch)
unregistersymbol(pSomeFlagsBase)
16389
"[equipments]"
000080
Array of byte
0
pSomeFlagsBase
8
16390
"[gears]"
000080
Array of byte
0
+0
16391
"Shell Holder"
0:not obtained
3:obtained
0000FF
Byte
+4a0
16392
"Lockpicks"
0:not obtained
3:obtained
0000FF
Byte
+93
16393
"Satchel"
0:not obtained
3:obtained
0000FF
Byte
+49f
16394
"Rucksack"
0:not obtained
3:obtained
0000FF
Byte
+49d
16395
"[bows]"
000080
Array of byte
0
+0
16396
"[quivers]"
000080
Array of byte
0
+0
16397
"Hunter's Quiver"
0:not obtained
3:obtained
0000FF
Byte
+49A
16398
"Adventurer's Quiver"
0:not obtained
3:obtained
0000FF
Byte
+499
16399
"[Recurve Bow]"
000080
Array of byte
0
+0
16400
"[damage]"
000080
Array of byte
0
+0
16401
"2 Reinforced Limbs"
0:not obtained
3:obtained
0000FF
Byte
+f6
16402
"3 Reinforced Shaft"
0:not obtained
3:obtained
0000FF
Byte
+f7
16403
"[accuracy]"
000080
Array of byte
0
+0
16404
"3 String Nocks"
0:not obtained
3:obtained
0000FF
Byte
+fb
16405
"4 Notched Rest"
0:not obtained
3:obtained
0000FF
Byte
+fc
16406
"[draw speed]"
000080
Array of byte
0
+0
16407
"1 Grip Wrap"
0:not obtained
3:obtained
0000FF
Byte
+f5
16408
"2 Waxed String"
0:not obtained
3:obtained
0000FF
Byte
+f8
16409
"[hold time]"
000080
Array of byte
0
+0
16410
"1 Wrapped String"
0:not obtained
3:obtained
0000FF
Byte
+fa
16411
"2 Cutom Shaft"
0:not obtained
3:obtained
0000FF
Byte
+f9
16412
"[Seprentwood Bow]"
000080
Array of byte
0
+0
16413
""
0:not obtained
3:obtained
0000FF
Byte
+4df
16414
"[damage]"
000080
Array of byte
0
+0
16415
"1 Reinforced Limbs"
0:not obtained
3:obtained
0000FF
Byte
+10a
16416
"2 Reinforced Shaft"
0:not obtained
3:obtained
0000FF
Byte
+109
16417
"[accuracy]"
000080
Array of byte
0
+0
16418
"3 String Nocks"
0:not obtained
3:obtained
0000FF
Byte
+105
16419
"4 Notched Rest"
0:not obtained
3:obtained
0000FF
Byte
+104
16420
"[draw speed]"
000080
Array of byte
0
+0
16421
"2 Grip Wrap"
0:not obtained
3:obtained
0000FF
Byte
+10b
16422
"4 Waxed String"
0:not obtained
3:obtained
0000FF
Byte
+108
16423
"[hold time]"
000080
Array of byte
0
+0
16424
"1 Wrapped String"
0:not obtained
3:obtained
0000FF
Byte
+106
16425
"3 Cutom Shaft"
0:not obtained
3:obtained
0000FF
Byte
+107
16426
"FEAR"
000080
Array of byte
0
+0
16427
""
0:not obtained
3:obtained
0000FF
Byte
+4e1
16428
"[damage]"
000080
Array of byte
0
+0
16429
"2 Reinforced Limbs"
0:not obtained
3:obtained
0000FF
Byte
+11a
16430
"3 Reinforced Shaft"
0:not obtained
3:obtained
0000FF
Byte
+119
16431
"[accuracy]"
000080
Array of byte
0
+0
16432
"2 String Nocks"
0:not obtained
3:obtained
0000FF
Byte
+115
16433
"3 Notched Rest"
0:not obtained
3:obtained
0000FF
Byte
+114
16434
"[draw speed]"
000080
Array of byte
0
+0
16435
"1 Grip Wrap"
0:not obtained
3:obtained
0000FF
Byte
+11b
16436
"4 Waxed String"
0:not obtained
3:obtained
0000FF
Byte
+118
16437
"[hold time]"
000080
Array of byte
0
+0
16438
"1 Wrapped String"
0:not obtained
3:obtained
0000FF
Byte
+116
16439
"4 Cutom Shaft"
0:not obtained
3:obtained
0000FF
Byte
+117
16440
"[Six Sky's War Bow]"
000080
Array of byte
0
+0
16441
"[damage]"
000080
Array of byte
0
+0
16442
"1 Reinforced Limbs"
0:not obtained
3:obtained
0000FF
Byte
+102
16443
"4 Reinforced Shaft"
0:not obtained
3:obtained
0000FF
Byte
+101
16444
"[accuracy]"
000080
Array of byte
0
+0
16445
"2 String Nocks"
0:not obtained
3:obtained
0000FF
Byte
+fe
16446
"4 Notched Rest"
0:not obtained
3:obtained
0000FF
Byte
+fd
16447
"[draw speed]"
000080
Array of byte
0
+0
16448
"2 Grip Wrap"
0:not obtained
3:obtained
0000FF
Byte
+103
16449
"[hold time]"
000080
Array of byte
0
+0
16450
"1 Wrapped String"
0:not obtained
3:obtained
0000FF
Byte
+ff
16451
"3 Cutom Shaft"
0:not obtained
3:obtained
0000FF
Byte
+100
16452
"[Exiled Fox's Bow]"
000080
Array of byte
0
+0
16453
"[damage]"
000080
Array of byte
0
+0
16454
"2 Reinforced Limbs"
0:not obtained
3:obtained
0000FF
Byte
+14d
16455
"3 Reinforced Shaft"
0:not obtained
3:obtained
0000FF
Byte
+14e
16456
"[accuracy]"
000080
Array of byte
0
+0
16457
"3 String Nocks"
0:not obtained
3:obtained
0000FF
Byte
+153
16458
"4 Notched Rest"
0:not obtained
3:obtained
0000FF
Byte
+154
16459
"[draw speed]"
000080
Array of byte
0
+0
16460
"1 Grip Wrap"
0:not obtained
3:obtained
0000FF
Byte
+14f
16461
"2 Waxed String"
0:not obtained
3:obtained
0000FF
Byte
+150
16462
"[hold time]"
000080
Array of byte
0
+0
16463
"1 Wrapped String"
0:not obtained
3:obtained
0000FF
Byte
+151
16464
"2 Cutom Shaft"
0:not obtained
3:obtained
0000FF
Byte
+152
16465
"[handguns]"
000080
Array of byte
0
+0
16466
"[weapon parts]"
000080
Array of byte
0
+0
16467
"Pistol Sight"
0:not obtained
3:obtained
0000FF
Byte
+3ee
16468
"Pistol Supresser"
0:not obtained
3:obtained
0000FF
Byte
+3ed
Set Value
80
219
221
3
0
Set Value
80
219
220
0
1
16469
"Flare"
0:not obtained
3:obtained
0000FF
Byte
+67a
16470
"[AB .45]"
000080
Array of byte
0
+0
16471
"[damage]"
000080
Array of byte
0
+0
16472
"1 Polished Barrel"
0:not obtained
3:obtained
0000FF
Byte
+160
16473
"2 Rifled Barrel"
0:not obtained
3:obtained
0000FF
Byte
+15e
16474
"[accuracy]"
000080
Array of byte
0
+0
16475
"1 Counterweight"
0:not obtained
3:obtained
0000FF
Byte
+15d
16476
"3 Ergonomic Grip"
0:not obtained
3:obtained
0000FF
Byte
+15c
16477
"[rate of fire]"
000080
Array of byte
0
+0
16478
"1 Hallowed Hammer"
0:not obtained
3:obtained
0000FF
Byte
+162
16479
"2 Hair Trigger"
0:not obtained
3:obtained
0000FF
Byte
+163
16480
"3 Improved Ejector"
0:not obtained
3:obtained
0000FF
Byte
+15f
16481
"[reload speed]"
000080
Array of byte
0
+0
16482
"2 Polished Magzine"
0:not obtained
3:obtained
0000FF
Byte
+161
16483
"[ammo capacity]"
000080
Array of byte
0
+0
16484
"2 Extended Magzine"
0:not obtained
3:obtained
0000FF
Byte
+165
16485
"3 High Capacity Magzine"
0:not obtained
3:obtained
0000FF
Byte
+164
16486
"[C&T S55]"
000080
Array of byte
0
+0
16487
""
0:not obtained
3:obtained
0000FF
Byte
+4D5
16488
"[damage]"
000080
Array of byte
0
+0
16489
"2 Polished Barrel"
0:not obtained
3:obtained
0000FF
Byte
+16c
16490
"3 Rifled Barrel"
0:not obtained
3:obtained
0000FF
Byte
+16f
16491
"[accuracy]"
000080
Array of byte
0
+0
16492
"2 Counterweight"
0:not obtained
3:obtained
0000FF
Byte
+170
16493
"4 Ergonomic Grip"
0:not obtained
3:obtained
0000FF
Byte
+171
16494
"[rate of fire]"
000080
Array of byte
0
+0
16495
"1 Hallowed Hammer"
0:not obtained
3:obtained
0000FF
Byte
+16a
16496
"2 Hair Trigger"
0:not obtained
3:obtained
0000FF
Byte
+168
16497
"4 Improved Ejector"
0:not obtained
3:obtained
0000FF
Byte
+16d
16498
"[reload speed]"
000080
Array of byte
0
+0
16499
"1 Polished Magazine"
0:not obtained
3:obtained
0000FF
Byte
+16b
16500
"[ammo capacity]"
000080
Array of byte
0
+0
16501
"1 Extended Magazine"
0:not obtained
3:obtained
0000FF
Byte
+166
16502
"3 High Capacity Magzine"
0:not obtained
3:obtained
0000FF
Byte
+167
16503
"[NEP-14]"
000080
Array of byte
0
+0
16504
""
0:not obtained
3:obtained
0000FF
Byte
+4D0
16505
"[damage]"
000080
Array of byte
0
+0
16506
"1 Polished Barrel"
0:not obtained
3:obtained
0000FF
Byte
+180
16507
"4 Rifled Barrel"
0:not obtained
3:obtained
0000FF
Byte
+182
16508
"[accuracy]"
000080
Array of byte
0
+0
16509
"1 Muzzle Break"
0:not obtained
3:obtained
0000FF
Byte
+17e
16510
"2 Counterweight"
0:not obtained
3:obtained
0000FF
Byte
+183
16511
"3 Ergonomic Grip"
0:not obtained
3:obtained
0000FF
Byte
+184
16512
"[rate of fire]"
000080
Array of byte
0
+0
16513
"2 Improved Ejector"
0:not obtained
3:obtained
0000FF
Byte
+181
16514
"[reload speed]"
000080
Array of byte
0
+0
16515
"2 Polished Magazine"
0:not obtained
3:obtained
0000FF
Byte
+17f
16516
"[ammo capacity]"
000080
Array of byte
0
+0
16517
"1 Extended Magazine"
0:not obtained
3:obtained
0000FF
Byte
+17d
16518
"[River Hawk]"
000080
Array of byte
0
+0
16519
"[damage]"
000080
Array of byte
0
+0
16520
"1 Polished Barrel"
0:not obtained
3:obtained
0000FF
Byte
+178
16521
"4 Rifled Barrel"
0:not obtained
3:obtained
0000FF
Byte
+17a
16522
"[accuracy]"
000080
Array of byte
0
+0
16523
"1 Muzzle Break"
0:not obtained
3:obtained
0000FF
Byte
+175
16524
"2 Counterweight"
0:not obtained
3:obtained
0000FF
Byte
+17b
16525
"4 Ergonomic Grip"
0:not obtained
3:obtained
0000FF
Byte
+17c
16526
"[rate of fire]"
000080
Array of byte
0
+0
16527
"2 Hallowed Hammer"
0:not obtained
3:obtained
0000FF
Byte
+176
16528
"3 Hair Trigger"
0:not obtained
3:obtained
0000FF
Byte
+174
16529
"4 Improved Ejector"
0:not obtained
3:obtained
0000FF
Byte
+179
16530
"[reload speed]"
000080
Array of byte
0
+0
16531
"3 Polished Magazine"
0:not obtained
3:obtained
0000FF
Byte
+177
16532
"[ammo capacity]"
000080
Array of byte
0
+0
16533
"1 Extended Magazine"
0:not obtained
3:obtained
0000FF
Byte
+172
16534
"2 High Capacity Magzine"
0:not obtained
3:obtained
0000FF
Byte
+173
16535
"[J&D Model 27]"
000080
Array of byte
0
+0
16536
"[damage]"
000080
Array of byte
0
+0
16537
"1 Polished Barrel"
0:not obtained
3:obtained
0000FF
Byte
+188
16538
"2 Rifled Barrel"
0:not obtained
3:obtained
0000FF
Byte
+189
16539
"4 Chromoly Barrel"
0:not obtained
3:obtained
0000FF
Byte
+18b
16540
"[accuracy]"
000080
Array of byte
0
+0
16541
"2 Muzzle Break"
0:not obtained
3:obtained
0000FF
Byte
+186
16542
"4 Ergonomic Grip"
0:not obtained
3:obtained
0000FF
Byte
+18a
16543
"[rate of fire]"
000080
Array of byte
0
+0
16544
"1 Hallowed Hammer"
0:not obtained
3:obtained
0000FF
Byte
+187
16545
"3 Hair Trigger"
0:not obtained
3:obtained
0000FF
Byte
+185
16546
"[reload speed]"
000080
Array of byte
0
+0
16547
"4 Speed Reloader"
0:not obtained
3:obtained
0000FF
Byte
+18c
16548
"[rifles]"
000080
Array of byte
0
+0
16549
"[weapon parts]"
000080
Array of byte
0
+0
16550
"Laser Sight"
0:not obtained
3:obtained
0000FF
Byte
+1d0
16551
"Rifle Supressor"
0:not obtained
3:obtained
0000FF
Byte
+1d1
Set Value
80
219
221
3
0
Set Value
80
219
220
0
1
16552
"Grenade Launcher"
0:not obtained
3:obtained
0000FF
Byte
+6a0
16553
"[Vicar Mark II]"
000080
Array of byte
0
+0
16554
"[damage]"
000080
Array of byte
0
+0
16555
"3 Match Grade Barrel"
0:not obtained
3:obtained
0000FF
Byte
+1c0
16556
"4 Chromoly Barrel"
0:not obtained
3:obtained
0000FF
Byte
+1c1
16557
"[accuracy]"
000080
Array of byte
0
+0
16558
"1 Padded Stock"
0:not obtained
3:obtained
0000FF
Byte
+1c7
16559
"2 Custom Grip"
0:not obtained
3:obtained
0000FF
Byte
+1c8
16560
"3 Muzzle Brake"
0:not obtained
3:obtained
0000FF
Byte
+1c9
16561
"[rate of fire]"
000080
Array of byte
0
+0
16562
"1 Modified Firing Pin"
0:not obtained
3:obtained
0000FF
Byte
+1c5
16563
"3 Improved Gas Port"
0:not obtained
3:obtained
0000FF
Byte
+1c6
16564
"[reload speed]"
000080
Array of byte
0
+0
16565
"2 Barrel Shroud"
0:not obtained
3:obtained
0000FF
Byte
+1c2
16566
"3 Wrapped Magazine"
0:not obtained
3:obtained
0000FF
Byte
+1c3
16567
"4 Taped Double Magazines"
0:not obtained
3:obtained
0000FF
Byte
+1c4
16568
"[ammo capacity]"
000080
Array of byte
0
+0
16569
"1 Extended Magazine"
0:not obtained
3:obtained
0000FF
Byte
+1bf
16570
"[GF RAL]"
000080
Array of byte
0
+0
16571
"[damage]"
000080
Array of byte
0
+0
16572
"2 Match Grade Barrel"
0:not obtained
3:obtained
0000FF
Byte
+1f1
16573
"4 Chromoly Barrel"
0:not obtained
3:obtained
0000FF
Byte
+1f0
16574
"[accuracy]"
000080
Array of byte
0
+0
16575
"1 Custom Grip"
0:not obtained
3:obtained
0000FF
Byte
+1e9
16576
"3 Muzzle Brake"
0:not obtained
3:obtained
0000FF
Byte
+1e8
16577
"[rate of fire]"
000080
Array of byte
0
+0
16578
"1 Modified Firing Pin"
0:not obtained
3:obtained
0000FF
Byte
+1ec
16579
"3 Improved Gas Port"
0:not obtained
3:obtained
0000FF
Byte
+1ea
16580
"[reload speed]"
000080
Array of byte
0
+0
16581
"1 Barrel Shroud"
0:not obtained
3:obtained
0000FF
Byte
+1ef
16582
"2 Wrapped Magazine"
0:not obtained
3:obtained
0000FF
Byte
+1ee
16583
"3 Taped Double Magazines"
0:not obtained
3:obtained
0000FF
Byte
+1ed
16584
"[ammo capacity]"
000080
Array of byte
0
+0
16585
"2 Extended Magazine"
0:not obtained
3:obtained
0000FF
Byte
+1f2
16586
"[PN-TF 267]"
000080
Array of byte
0
+0
16587
"[damage]"
000080
Array of byte
0
+0
16588
"2 Match Grade Barrel"
0:not obtained
3:obtained
0000FF
Byte
+205
16589
"4 Chromoly Barrel"
0:not obtained
3:obtained
0000FF
Byte
+204
16590
"[accuracy]"
000080
Array of byte
0
+0
16591
"1 Padded Stock"
0:not obtained
3:obtained
0000FF
Byte
+1ff
16592
"2 Custom Grip"
0:not obtained
3:obtained
0000FF
Byte
+1fe
16593
"4 Muzzle Brake"
0:not obtained
3:obtained
0000FF
Byte
+1fd
16594
"[rate of fire]"
000080
Array of byte
0
+0
16595
"1 Modified Firing Pin"
0:not obtained
3:obtained
0000FF
Byte
+201
16596
"3 Improved Gas Port"
0:not obtained
3:obtained
0000FF
Byte
+200
16597
"[reload speed]"
000080
Array of byte
0
+0
16598
"2 Barrel Shroud"
0:not obtained
3:obtained
0000FF
Byte
+203
16599
"3 Wrapped Magazine"
0:not obtained
3:obtained
0000FF
Byte
+202
16600
"[ammo capacity]"
000080
Array of byte
0
+0
16601
"1 Extended Magazine"
0:not obtained
3:obtained
0000FF
Byte
+206
16602
"[WASP 11]"
000080
Array of byte
0
+0
16603
""
0:not obtained
3:obtained
0000FF
Byte
+4d8
16604
"[damage]"
000080
Array of byte
0
+0
16605
"1 Match Grade Barrel"
0:not obtained
3:obtained
0000FF
Byte
+1fa
16606
"4 Chromoly Barrel"
0:not obtained
3:obtained
0000FF
Byte
+1f9
16607
"[accuracy]"
000080
Array of byte
0
+0
16608
"2 Custom Grip"
0:not obtained
3:obtained
0000FF
Byte
+1f4
16609
"3 Muzzle Brake"
0:not obtained
3:obtained
0000FF
Byte
+1f3
16610
"4 Extended Stock"
0:not obtained
3:obtained
0000FF
Byte
+1fc
16611
"[rate of fire]"
000080
Array of byte
0
+0
16612
"2 Improved Gas Port"
0:not obtained
3:obtained
0000FF
Byte
+1f5
16613
"[reload speed]"
000080
Array of byte
0
+0
16614
"1 Barrel Shroud"
0:not obtained
3:obtained
0000FF
Byte
+1f8
16615
"2 Wrapped Magazine"
0:not obtained
3:obtained
0000FF
Byte
+1f7
16616
"3 Taped Double Magazines"
0:not obtained
3:obtained
0000FF
Byte
+1f6
16617
"[ammo capacity]"
000080
Array of byte
0
+0
16618
"1 Extended Magazine"
0:not obtained
3:obtained
0000FF
Byte
+1fb
16619
"[shotguns]"
000080
Array of byte
0
+0
16620
"[weapon parts]"
000080
Array of byte
0
+0
16621
"Shotgun Spreader Choke"
0:not obtained
3:obtained
0000FF
Byte
+223
16622
"[TAEV 16]"
000080
Array of byte
0
+0
16623
""
0:not obtained
3:obtained
0000FF
Byte
+4db
16624
"[damage]"
000080
Array of byte
0
+0
16625
"1 Custom Forcing Cone"
0:not obtained
3:obtained
0000FF
Byte
+241
16626
"3 Back-Bored Barrel"
0:not obtained
3:obtained
0000FF
Byte
+240
16627
"[accuracy]"
000080
Array of byte
0
+0
16628
"1 Padded Grip"
0:not obtained
3:obtained
0000FF
Byte
+23d
16629
"2 Stock"
0:not obtained
3:obtained
0000FF
Byte
+244
16630
"3 Muzzle Weight"
0:not obtained
3:obtained
0000FF
Byte
+23c
16631
"4 Padded Stock"
0:not obtained
3:obtained
0000FF
Byte
+243
16632
"[rate of fire]"
000080
Array of byte
0
+0
16633
"2 Custom Trigger"
0:not obtained
3:obtained
0000FF
Byte
+23e
16634
"[reload speed]"
000080
Array of byte
0
+0
16635
"2 Ammo Sleeve"
0:not obtained
3:obtained
0000FF
Byte
+23f
16636
"[ammo capacity]"
000080
Array of byte
0
+0
16637
"3 Tube Magazine Extender"
0:not obtained
3:obtained
0000FF
Byte
+242
16638
"[WHWS-16]"
000080
Array of byte
0
+0
16639
""
0:not obtained
3:obtained
0000FF
Byte
+4dc
16640
"[damage]"
000080
Array of byte
0
+0
16641
"1 Custom Forcing Cone"
0:not obtained
3:obtained
0000FF
Byte
+24b
16642
"2 Back-Bored Barrel"
0:not obtained
3:obtained
0000FF
Byte
+24a
16643
"[accuracy]"
000080
Array of byte
0
+0
16644
"1 Padded Grip"
0:not obtained
3:obtained
0000FF
Byte
+247
16645
"3 Compensator"
0:not obtained
3:obtained
0000FF
Byte
+24c
16646
"4 Padded Stock"
0:not obtained
3:obtained
0000FF
Byte
+246
16647
"[rate of fire]"
000080
Array of byte
0
+0
16648
"4 Custom Trigger"
0:not obtained
3:obtained
0000FF
Byte
+24d
16649
"[reload speed]"
000080
Array of byte
0
+0
16650
"1 Barrel Shroud"
0:not obtained
3:obtained
0000FF
Byte
+249
16651
"2 Modified Ejector"
0:not obtained
3:obtained
0000FF
Byte
+248
16652
"4 Quick Release Drum"
0:not obtained
3:obtained
0000FF
Byte
+24e
16653
"[ammo capacity]"
000080
Array of byte
0
+0
16654
"3 Drum Magazine"
0:not obtained
3:obtained
0000FF
Byte
+245
16655
"[Bishop 600]"
000080
Array of byte
0
+0
16656
"[damage]"
000080
Array of byte
0
+0
16657
"2 Custom Forcing Cone"
0:not obtained
3:obtained
0000FF
Byte
+21b
16658
"3 Back-Bored Barrel"
0:not obtained
3:obtained
0000FF
Byte
+21c
16659
"[accuracy]"
000080
Array of byte
0
+0
16660
"1 Padded Grip"
0:not obtained
3:obtained
0000FF
Byte
+21f
16661
"2 Muzzle Weight"
0:not obtained
3:obtained
0000FF
Byte
+220
16662
"3 Padded Stock"
0:not obtained
3:obtained
0000FF
Byte
+221
16663
"4 Pump Grip"
0:not obtained
3:obtained
0000FF
Byte
+222
16664
"[rate of fire]"
000080
Array of byte
0
+0
16665
"1 Custom Trigger"
0:not obtained
3:obtained
0000FF
Byte
+21e
16666
"[reload speed]"
000080
Array of byte
0
+0
16667
"2 Ammo Sleeve"
0:not obtained
3:obtained
0000FF
Byte
+21d
16668
"[ammo capacity]"
000080
Array of byte
0
+0
16669
"2 Tube Magazine Extender"
0:not obtained
3:obtained
0000FF
Byte
+21a
16670
"[Sedgewick 707]"
000080
Array of byte
0
+0
16671
"[damage]"
000080
Array of byte
0
+0
16672
"2 Custom Forcing Cone"
0:not obtained
3:obtained
0000FF
Byte
+255
16673
"3 Back-Bored Barrel"
0:not obtained
3:obtained
0000FF
Byte
+254
16674
"[accuracy]"
000080
Array of byte
0
+0
16675
"1 Padded Grip"
0:not obtained
3:obtained
0000FF
Byte
+251
16676
"3 Padded Stock"
0:not obtained
3:obtained
0000FF
Byte
+24f
16677
"[rate of fire]"
000080
Array of byte
0
+0
16678
"1 Custom Trigger"
0:not obtained
3:obtained
0000FF
Byte
+252
16679
"[reload speed]"
000080
Array of byte
0
+0
16680
"2 Ammo Sleeve"
0:not obtained
3:obtained
0000FF
Byte
+253
16681
"[knives]"
000080
Array of byte
0
+0
16682
"Shop Upgrade"
0:not obtained
3:obtained
0000FF
Byte
+be
16683
"Tutorial Knife?"
0:not obtained
3:obtained
0000FF
Byte
+4ba
16684
"Makeshift Knife"
0:not obtained
3:obtained
0000FF
Byte
+4bb
16685
"Reinforced Knife"
0:not obtained
3:obtained
0000FF
Byte
+4bc
16686
"Finely Crafted Knife"
0:not obtained
3:obtained
0000FF
Byte
+4bd
16687
"Jaguar Fang"
0:not obtained
3:obtained
0000FF
Byte
+4be
16688
"rifles suppressor key"
FF0000
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(someWeaponPartsReadOnRiflesFireAOB,SOTTR.exe,E8 ** ** ** ** 0F B6 ** 33 C0 83 ** ** 0F 94 ** 3B ** 74)
registersymbol(someWeaponPartsReadOnRiflesFireAOB)
label(bSilencerKeyPressed)
registersymbol(bSilencerKeyPressed)
alloc(newmem,2048,someWeaponPartsReadOnRiflesFireAOB+5) //"SOTTR.exe"+BB6FB6E)
label(returnhere)
label(originalcode_silencerkey)
registersymbol(originalcode_silencerkey)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
cmp rdx,1d1
je @f
cmp rdx,3ed
je @f
jmp end
@@:
mov rcx,bSilencerKeyPressed
mov al,[rcx]
//mov al,1
end:
originalcode_silencerkey:
readmem(someWeaponPartsReadOnRiflesFireAOB+5,5)
//movzx ecx,al
//xor eax,eax
exit:
jmp returnhere
///
bSilencerKeyPressed:
dd 0
dd 20 //Spacebar
///
someWeaponPartsReadOnRiflesFireAOB+5: //"SOTTR.exe"+BB6FB6E:
jmp newmem
returnhere:
///****************************************///
label(bEndThread_silencerKeylistener_mem)
registersymbol(bEndThread_silencerKeylistener_mem)
alloc(silencerKeylistener_mem,2048,"SOTTR.exe")
registersymbol(silencerKeylistener_mem)
createthread(silencerKeylistener_mem)
label(keylistenerstart)
label(keylistenerend)
label(keylistenerexit)
silencerKeylistener_mem:
sub rsp,28
push rax
keylistenerstart:
mov rcx,bSilencerKeyPressed
movzx rcx,byte ptr [rcx+4]
//mov rcx,14 //CAPS LOCK key //12 //ALT key
push rcx
call GetAsyncKeyState
add rsp,08
shr ax,#15
mov rcx,bSilencerKeyPressed
mov [rcx],al
keylistenerend:
mov rcx,#100
call Sleep
cmp dword ptr [bEndThread_silencerKeylistener_mem],1
jne keylistenerstart
keylistenerexit:
pop rax
add rsp,28
mov dword ptr [bEndThread_silencerKeylistener_mem],2
ret
///
bEndThread_silencerKeylistener_mem:
dd 0
///
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
//obtained from SubBeam's ACS script - start//
{$lua}
if( syntaxcheck == false ) then --actual execution
local starttime = getTickCount()
if readInteger( "bEndThread_silencerKeylistener_mem" ) == 0 then --could be 2 already
writeInteger( "bEndThread_silencerKeylistener_mem", 1 ) --tell the thread to kill itself
end
while( getTickCount() < starttime + 1000 ) and ( readInteger( "bEndThread_silencerKeylistener_mem" ) ~=2 ) do --wait till it has finished
sleep( 20 )
end
if( getTickCount() > starttime + 1000 ) then --could happen when the window is shown
showMessage( 'Disabling the thread failed!' )
error( 'Thread disabling failed!' )
end
sleep( 1 )
end
{$asm}
//obtained from SubBeam's ACS script - end//
//bEndThread_silencerKeylistener_mem:
//dd 1
///****************************************///
dealloc(newmem)
someWeaponPartsReadOnRiflesFireAOB+5: //"SOTTR.exe"+BB6FB6E:
readmem(originalcode_silencerkey,5)
//db 0F B6 C8 31 C0
//Alt: movzx ecx,al
//Alt: xor eax,eax
unregistersymbol(originalcode_silencerkey)
///****************************************///
unregistersymbol(bEndThread_silencerKeylistener_mem)
dealloc(silencerKeylistener_mem)
unregistersymbol(silencerKeylistener_mem)
16689
"hold Spacebar on fire"
808080
1
16690
"need to obtain rifle supressor first"
808080
1
16691
"walk key .2"
FF0000
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(runSpeedCalOnRunAOB,SOTTR.exe,F3 0F 58 ** ** 41 0F 2F C8 F3 0F 11 ** ** 76 ** C7 ** ** ** ** ** ** 48)
registersymbol(runSpeedCalOnRunAOB)
label(bWalkKeyMethod)
registersymbol(bWalkKeyMethod)
label(bWalkKeyPressed)
registersymbol(bWalkKeyPressed)
label(bWalkKeyID)
registersymbol(bWalkKeyID)
label(dCustMaxSpeed)
registersymbol(dCustMaxSpeed)
alloc(newmem,2048,runSpeedCalOnRunAOB+5)
label(returnhere)
label(originalcode_walkkey)
registersymbol(originalcode_walkkey)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
mov rdx,bWalkKeyMethod
cmp byte ptr [rdx],1
lea rdx,[rdx+4]
jne movemaxspeedmanipulate
cmp byte ptr [rdx],1
jne walkkeynotpressing
cmp byte ptr [rdx+1],1
je toggleend
mov byte ptr [rdx+1],1
xor byte ptr [rdx+2],1
jmp toggleend
walkkeynotpressing:
cmp byte ptr [rdx+1],0
je toggleend
mov byte ptr [rdx+1],0
toggleend:
lea rdx,[rdx+2]
movemaxspeedmanipulate:
cmp byte ptr [rdx],1
jne end
mov rdx,dCustMaxSpeed
movss xmm8,[rdx]
end:
originalcode_walkkey:
readmem(runSpeedCalOnRunAOB+5,9)
//comiss xmm1,xmm8
//movss [rdi+1C],xmm1
exit:
jmp returnhere
///
bWalkKeyMethod:
dd 0 //0: hold, 1: toggle
bWalkKeyPressed:
dd 0
bWalkKeyID:
dd 12 //Alt key
dCustMaxSpeed:
dd (float)0.64
///
runSpeedCalOnRunAOB+5:
jmp newmem
nop
nop
nop
nop
returnhere:
///****************************************///
alloc(newmem2,2048,runSpeedCalOnRunAOB+10)
label(returnhere2)
label(originalcode2_walkkey)
registersymbol(originalcode2_walkkey)
label(exit2)
newmem2: //this is allocated memory, you have read,write,execute access
//place your code here
db F3 44 0F 11
readmem(runSpeedCalOnRunAOB+11,2)
//movss [rdi+1c],xmm8
jmp exit2
originalcode2_walkkey:
readmem(runSpeedCalOnRunAOB+10,7)
//mov [rdi+1C],3F800000
exit2:
jmp returnhere2
///
runSpeedCalOnRunAOB+10:
jmp newmem2
nop
nop
returnhere2:
///****************************************///
label(bEndThread_walkKeylistener_mem)
registersymbol(bEndThread_walkKeylistener_mem)
alloc(walkKeylistener_mem,2048,"SOTTR.exe")
registersymbol(walkKeylistener_mem)
createthread(walkKeylistener_mem)
label(keylistenerstart)
label(keylistenerend)
label(keylistenerexit)
walkKeylistener_mem:
sub rsp,28
push rax
keylistenerstart:
mov rcx,bWalkKeyID
movzx rcx,byte ptr [rcx]
//mov rcx,14 //CAPS LOCK key //12 //ALT key
push rcx
call GetAsyncKeyState
add rsp,08
shr ax,#15
mov rcx,bWalkKeyPressed
mov [rcx],al
keylistenerend:
mov rcx,#100
call Sleep
cmp dword ptr [bEndThread_walkKeylistener_mem],1
jne keylistenerstart
keylistenerexit:
pop rax
add rsp,28
mov dword ptr [bEndThread_walkKeylistener_mem],2
ret
///
bEndThread_walkKeylistener_mem:
dd 0
///
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
//obtained from SubBeam's ACS script - start//
{$lua}
if( syntaxcheck == false ) then --actual execution
local starttime = getTickCount()
if readInteger( "bEndThread_walkKeylistener_mem" ) == 0 then --could be 2 already
writeInteger( "bEndThread_walkKeylistener_mem", 1 ) --tell the thread to kill itself
end
while( getTickCount() < starttime + 1000 ) and ( readInteger( "bEndThread_walkKeylistener_mem" ) ~=2 ) do --wait till it has finished
sleep( 20 )
end
if( getTickCount() > starttime + 1000 ) then --could happen when the window is shown
showMessage( 'Disabling the thread failed!' )
error( 'Thread disabling failed!' )
end
sleep( 1 )
end
{$asm}
//obtained from SubBeam's ACS script - end//
//bEndThread_walkKeylistener_mem:
//dd 1
///****************************************///
dealloc(newmem)
runSpeedCalOnRunAOB+5:
readmem(originalcode_walkkey,9)
//db 41 0F 2F C8 F3 0F 11 4F 1C
//Alt: comiss xmm1,xmm8
//Alt: movss [rdi+1C],xmm1
unregistersymbol(originalcode_walkkey)
unregistersymbol(bWalkKeyMethod)
unregistersymbol(bWalkKeyPressed)
unregistersymbol(bWalkKeyID)
unregistersymbol(dCustMaxSpeed)
///****************************************///
dealloc(newmem2)
runSpeedCalOnRunAOB+10:
readmem(originalcode2_walkkey,7)
//db C7 47 1C 00 00 80 3F
//Alt: mov [rdi+1C],3F800000
unregistersymbol(originalcode2_walkkey)
///****************************************///
unregistersymbol(bEndThread_walkKeylistener_mem)
dealloc(walkKeylistener_mem)
unregistersymbol(walkKeylistener_mem)
16692
"status"
0:hold key
1:toggle key
008000
Byte
bWalkKeyMethod
16693
"key"
10:SHIFT key
11:CTRL key
12:ALT key
14:CAPS LOCK key
1
008000
Byte
bWalkKeyID
16694
"speed"
008000
Float
dCustMaxSpeed
15981
"unlock all outfits"
FF0000
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(outfitUnlockedFlagChkOnOutfit_SetsReadAOB,SOTTR.exe,41 ** ** ** ** 00 00 00 49 ** ** 48 ** ** 48 ** ** 74 ** 41)
registersymbol(outfitUnlockedFlagChkOnOutfit_SetsReadAOB)
alloc(originalcode_outfitUnlockedFlagChkOnOutfit_SetsReadAOB,16,outfitUnlockedFlagChkOnOutfit_SetsReadAOB+11)
registersymbol(originalcode_outfitUnlockedFlagChkOnOutfit_SetsReadAOB)
originalcode_outfitUnlockedFlagChkOnOutfit_SetsReadAOB:
readmem(outfitUnlockedFlagChkOnOutfit_SetsReadAOB+11,2)
///
outfitUnlockedFlagChkOnOutfit_SetsReadAOB+11: //"SOTTR.exe"+E19881D:
db 90 90
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
outfitUnlockedFlagChkOnOutfit_SetsReadAOB+11: //"SOTTR.exe"+E19881D:
readmem(originalcode_outfitUnlockedFlagChkOnOutfit_SetsReadAOB,2)
//db 74 4D
//Alt: je SOTTR.exe+E19886C
dealloc(originalcode_outfitUnlockedFlagChkOnOutfit_SetsReadAOB)
unregistersymbol(originalcode_outfitUnlockedFlagChkOnOutfit_SetsReadAOB)
15990
"sit beside a camp > activate this script >"
808080
1
15991
"access the inventory > access the outfits > de-activate the script"
808080
1
15994
"changes is permanent. use a separate savegame"
808080
1
15989
"more outfit options .2"
0000FF
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(someFlagsChk2,SOTTR.exe,48 ** ** ** ** 31 ** 38 ** ** ** 00 00 0F 84 ** ** ** ** 48)
registersymbol(someFlagsChk2)
///
aobscanmodule(outfitFlagsReadCaller2AOB,SOTTR.exe,E8 ** ** ** ** 89 ** ** 01 45 ** ** 74)
registersymbol(outfitFlagsReadCaller2AOB)
///
alloc(newmem,2048,someFlagsChk2+7) //"SOTTR.exe"+E2475DD)
label(returnhere)
label(originalcode_someFlagsChk2)
registersymbol(originalcode_someFlagsChk2)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
{push rax
mov rax,"SOTTR.exe"+E198889
cmp [rsp+30],rax
je @f
mov rax,"SOTTR.exe"+E4BE144
cmp [rsp+30],rax
je @f
pop rax
jmp end
@@:
pop rax
cmp rsp,rcx
jmp exit}
push rax
//mov rax,"SOTTR.exe"+E3907C6
//cmp [rsp+70],rax
mov rax,outfitFlagsReadCaller2AOB
lea rax,[rax+5]
//mov rax,"SOTTR.exe"+E198889
cmp [rsp+30],rax
pop rax
jne @f
db C6 81
readmem(someFlagsChk2+9,4)
db 01
//mov byte ptr [rcx+1c9],1
end:
originalcode_someFlagsChk2:
readmem(someFlagsChk2+7,6)
//cmp [rcx+000001C9],bl
exit:
jmp returnhere
///
someFlagsChk2+7: //"SOTTR.exe"+E2475DD:
jmp newmem
nop
returnhere:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
someFlagsChk2+7: //"SOTTR.exe"+E2475DD:
readmem(originalcode_someFlagsChk2,6)
//db 38 99 C9 01 00 00
//Alt: cmp [rcx+000001C9],bl
unregistersymbol(originalcode_someFlagsChk2)
15992
"sit beside a camp > activate this script >"
808080
1
15993
"access the inventory > access the outfits > de-activate the script"
808080
1
15995
"changes is permanent. use a separate savegame"
808080
1
15563
"Unlimited Survival Instinct v2 .1 (SunBeam)"
800000
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(UnlimitedSurvivalInstinct2_SubBeamAOB,SOTTR.exe,48 85 C0 74 08 F3 0F 10 ** ** ** ** ** F3 0F 11) // ** ** 48)
registersymbol(UnlimitedSurvivalInstinct2_SubBeamAOB)
alloc(newmem,2048,UnlimitedSurvivalInstinct2_SubBeamAOB+5) //"SOTTR.exe"+6BDBBE)
label(returnhere)
label(originalcode_unlimitedsurvivalinstinct)
registersymbol(originalcode_unlimitedsurvivalinstinct)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
mov rdx,dCustSurvivalInstinctTimer
movss xmm6,[rdx]
jmp exit
originalcode_unlimitedsurvivalinstinct:
readmem(UnlimitedSurvivalInstinct2_SubBeamAOB+5,8)
//movss xmm6,[rax+000016A4]
exit:
jmp returnhere
///
dCustSurvivalInstinctTimer:
dd (float)86400
///
UnlimitedSurvivalInstinct2_SubBeamAOB+5: //"SOTTR.exe"+6BDBBE:
jmp newmem
nop
nop
nop
returnhere:
///****************************************///
aobscanmodule(survivalInstinctCooldownWriteAOB,SOTTR.exe,F3 0F 10 ** F3 0F 5D CA F3 0F 11 ** ** 44 ** ** 0F 84)
registersymbol(survivalInstinctCooldownWriteAOB)
label(pSurvivalInstinctObjectOffseted)
registersymbol(pSurvivalInstinctObjectOffseted)
alloc(newmem2,2048,survivalInstinctCooldownWriteAOB+8) //"SOTTR.exe"+9D3CA7F)
label(returnhere2)
label(originalcode2_unlimitedsurvivalinstinct)
registersymbol(originalcode2_unlimitedsurvivalinstinct)
label(exit2)
newmem2: //this is allocated memory, you have read,write,execute access
//place your code here
mov rdx,pSurvivalInstinctObjectOffseted
db 48 8D 4E
readmem(survivalInstinctCooldownWriteAOB+c,1)
//lea rcx,[rsi+20]
mov [rdx],rcx
fld1
fstp dword [rcx]
//db D9 5E
//readmem(survivalInstinctCooldownWriteAOB+c,1)
////fstp dword ptr [rsi+20]
jmp exit2
originalcode2_unlimitedsurvivalinstinct:
readmem(survivalInstinctCooldownWriteAOB+8,5)
//movss [rsi+20],xmm1
exit2:
jmp returnhere2
///
pSurvivalInstinctObjectOffseted:
///
survivalInstinctCooldownWriteAOB+8: //"SOTTR.exe"+9D3CA7F:
jmp newmem2
returnhere2:
///****************************************///
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
UnlimitedSurvivalInstinct2_SubBeamAOB+5: //"SOTTR.exe"+6BDBBE:
readmem(originalcode_unlimitedsurvivalinstinct,8)
//db F3 0F 10 B0 A4 16 00 00
//Alt: movss xmm6,[rax+000016A4]
unregistersymbol(originalcode_unlimitedsurvivalinstinct)
///****************************************///
dealloc(newmem2)
survivalInstinctCooldownWriteAOB+8: //"SOTTR.exe"+9D3CA7F:
readmem(originalcode2_unlimitedsurvivalinstinct,5)
//db F3 0F 11 4E 20
//Alt: movss [rsi+20],xmm1
unregistersymbol(originalcode2_unlimitedsurvivalinstinct)
unregistersymbol(pSurvivalInstinctObjectOffseted)
///****************************************///
15567
"press Caps_` to force de-activate Survival Instince"
808080
1
15566
"timer"
0000FF
Float
pSurvivalInstinctObjectOffseted
14
Set Value
20
192
0
0
16709
"Utils"
808080
1
16702
"Base address of the module"
0
808080
4 Bytes
getAddress('SOTTR.exe')
16703
"End address of the module"
0
808080
4 Bytes
getAddress('SOTTR.exe') + getModuleSize('SOTTR.exe')
Code :movzx eax,word ptr [rax+0C]
SOTTR.exe+BD19427
48
85
C0
74
05
0F
B7
40
0C
C3
31
C0
C3
4C
Code :cmp [rcx+4C],eax
SOTTR.exe+F349354
C0
74
0D
31
C0
39
41
4C
0F
97
D0
48
83
Code :mov rdx,[rax+rdi+08]
SOTTR.exe+9D38DAF
44
0F
B7
04
38
48
8B
54
38
08
E8
67
20
96
F6
stealth kill check Code :lea rax,[SOTTR.exe+108B3E8]
SOTTR.exe+B4366D6
F5
48
8B
5F
28
48
8D
05
0B
4D
C5
F5
48
8D
55
27
48
max ammo read Code :movzx eax,word ptr [rax+0C]
SOTTR.exe+BC53F43
48
85
C0
74
05
0F
B7
40
0C
C3
B8
64
00
00
Code :cmp [r8+00000110],rcx
SOTTR.exe+BBE5FF5
E0
05
4D
01
F8
49
39
88
10
01
00
00
75
12
4C
89
72
Code :cmp [rax+00000110],rcx
SOTTR.exe+BC24159
E0
05
48
01
F0
48
39
88
10
01
00
00
48
0F
45
C7
48
merchant some flags read Code :mov r10d,[rdi+10]
SOTTR.exe+BCA7633
F8
68
4C
01
C7
44
8B
57
10
45
85
D2
0F
84
max ammo read on change Code :movzx ecx,word ptr [rbx+0C]
SOTTR.exe+65CC9D
31
0F
B7
47
04
0F
B7
4B
0C
2B
C8
85
C9
7F
max ammo write Code :mov [rbx+0C],cx
SOTTR.exe+65CCC6
0D
D5
FF
EB
04
66
89
4B
0C
48
83
C7
08
48
ammo hash read on quiver change Code :mov edx,[rdi]
SOTTR.exe+65CB80
00
00
00
00
00
8B
17
48
8D
8C
24
90
StealthLoopState_Undetected Code :lea rax,[SOTTR.exe+1056208]
SOTTR.exe+ADAD479
85
AC
04
00
00
48
8D
05
88
8D
2A
F6
48
89
7C
24
50
StealthLoopState_Undetected Code :lea rax,[SOTTR.exe+1056208]
SOTTR.exe+DC67B19
85
AC
04
00
00
48
8D
05
E8
E6
3E
F3
48
89
7C
24
50
StealthLoopState_Glimpsing Code :lea rcx,[SOTTR.exe+1056228]
SOTTR.exe+ADAD53E
15
02
7A
77
F8
48
8D
0D
E3
8C
2A
F6
48
C7
85
F0
FF
StealthLoopState_Glimpsing Code :lea rcx,[SOTTR.exe+1056228]
SOTTR.exe+DC67BDE
15
C2
DC
99
F5
48
8D
0D
43
E6
3E
F3
48
C7
85
F0
FF
StealthLoopState_Detecting Code :lea rcx,[SOTTR.exe+1056248]
SOTTR.exe+ADAD602
15
3E
79
77
F8
48
8D
0D
3F
8C
2A
F6
48
C7
85
F0
FF
StealthLoopState_Detecting Code :lea rcx,[SOTTR.exe+1056248]
SOTTR.exe+DC67CA2
15
FE
DB
99
F5
48
8D
0D
9F
E5
3E
F3
48
C7
85
F0
FF
StealthLoopState_Detected Code :lea rcx,[SOTTR.exe+1056268]
SOTTR.exe+ADAD6C6
15
7A
78
77
F8
48
8D
0D
9B
8B
2A
F6
48
C7
85
F0
FF
StealthLoopState_Detected Code :lea rcx,[SOTTR.exe+1056268]
SOTTR.exe+DC67D66
15
3A
DB
99
F5
48
8D
0D
FB
E4
3E
F3
48
C7
85
F0
FF
StealthLoopState_Vanishing Code :lea rcx,[SOTTR.exe+1056288]
SOTTR.exe+ADAD793
15
AD
77
77
F8
48
8D
0D
EE
8A
2A
F6
48
C7
85
F0
FF
StealthLoopState_Vanishing Code :lea rcx,[SOTTR.exe+1056288]
SOTTR.exe+DC67E33
15
6D
DA
99
F5
48
8D
0D
4E
E4
3E
F3
48
C7
85
F0
FF
StealthLoopState_Num_Status Code :lea rcx,[SOTTR.exe+10562A8]
SOTTR.exe+ADAD863
15
DD
76
77
F8
48
8D
0D
3E
8A
2A
F6
48
C7
85
F0
FF
StealthLoopState_Num_Status Code :lea rcx,[SOTTR.exe+10562A8]
SOTTR.exe+DC67F03
15
9D
D9
99
F5
48
8D
0D
9E
E3
3E
F3
48
C7
85
F0
FF
focusEnabled Code :lea rdx,[SOTTR.exe+1205F58]
SOTTR.exe+115D079F
24
20
48
8B
03
48
8D
15
B2
57
C3
EF
45
31
C9
48
8B
Code :movss xmm1,[rbx+38]
SOTTR.exe+F106384
83
FF
04
74
11
F3
0F
10
4B
38
F3
0F
5E
4B
34
Code :movss xmm7,[rsi+28]
SOTTR.exe+BE93208
F4
84
C0
74
07
F3
0F
10
7E
28
EB
05
F3
0F
10
Code :mov [rsp+58],rsi
SOTTR.exe+BE6FEC8
08
41
8B
4E
04
48
89
74
24
58
48
89
7C
24
20
Code :movss [rbx+00000488],xmm0
SOTTR.exe+BE8E472
86
46
02
00
00
F3
0F
11
83
88
04
00
00
E9
39
02
00
00
Code :mov rcx,[rbx+00000330]
SOTTR.exe+BE8E2BD
E8
D3
85
84
F4
48
8B
8B
30
03
00
00
48
85
C9
0F
84
Code :movss [rsp+50],xmm2
SOTTR.exe+CBD7239
B9
01
00
00
00
F3
0F
11
54
24
50
4C
8D
44
24
40
Code :mov rax,[r14+rax*8+000001C8]
SOTTR.exe+E83BE2E
FF
74
5D
48
98
49
8B
84
C6
C8
01
00
00
48
85
C0
74
0C
Code :mov [rdi+rax*8+000001C8],rbx
SOTTR.exe+E5E832F
FF
74
0A
48
98
48
89
9C
C7
C8
01
00
00
49
89
F0
48
89
Code :mov rax,[r8+rax*8+000002D8]
SOTTR.exe+BDC2967
06
40
0F
B6
CF
49
8B
84
C0
D8
02
00
00
48
0F
A3
C8
0F
Code :lea r8,[rsp+30]
SOTTR.exe+E547C62
00
00
48
89
DA
4C
8D
44
24
30
E8
84
7F
54
F2
Code :call SOTTR.exe+ACBA80
SOTTR.exe+E77E627
89
EA
48
89
F9
E8
54
D4
34
F2
84
C0
0F
84
F8
equipment upgrade avilable Code :mov rcx,[rdi+00000080]
SOTTR.exe+E2BB4F7
E8
E9
D5
F1
F1
48
8B
8F
80
00
00
00
48
8D
15
B3
5E
Code :movzx edi,byte ptr [rdx+000000F8]
SOTTR.exe+116CEE22
00
00
4D
89
CE
0F
B6
BA
F8
00
00
00
45
31
C9
4C
89
weapon/outfit hover Code :call qword ptr [rax+00000120]
SOTTR.exe+E51FCBA
8B
03
48
89
D9
FF
90
20
01
00
00
84
C0
74
15
48
Punta Code :movaps [rbx+00000B00],xmm8
SOTTR.exe+9B9FF3
00
FF
FF
FF
FF
44
0F
29
83
00
0B
00
00
44
0F
28
84
24
Code :movaps [rbx+00000B00],xmm8
SOTTR.exe+9B9FF3
00
FF
FF
FF
FF
44
0F
29
83
00
0B
00
00
44
0F
28
84
24
aobt2
14E7461F7