Thanks a lot for the tables.
Wondering if Csimbi table was updated by someone to work with last update ?
@SunBeam : What is your current job ?
Edit : Updated the "Character Class Editor" script from Idlehands88 to work with last update :
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>24683</ID>
<Description>"Character Class Editor"</Description>
<Options moHideChildren="1"/>
<LastState/>
<Color>FF0000</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : Borderlands3.exe
Version:
Date : 2019-10-12
Author : Idlehands88
This script does blah blah blah
}
[ENABLE]
aobscanmodule(INJECT_Unlocks,Borderlands3.exe,48 8B 07 0F 28 CF 48 8B CF FF 90 90 0B) // should be unique 48 8B 07 0F 28 CF 48 8B CF FF 90 98
alloc(newmem,$1000,"Borderlands3.exe"+2606778) // "Borderlands3.exe"+2459638
registersymbol(p_unlocks)
label(p_unlocks)
label(code)
label(return)
newmem:
code:
mov [p_unlocks],rdi
mov rax,[rdi]
movaps xmm1,xmm7
jmp return
p_unlocks:
dq 0
INJECT_Unlocks:
jmp newmem
nop
return:
registersymbol(INJECT_Unlocks)
[DISABLE]
INJECT_Unlocks:
db 48 8B 07 0F 28 CF
unregistersymbol(p_unlocks)
unregistersymbol(INJECT_Unlocks)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: "Borderlands3.exe"+2459638
"Borderlands3.exe"+2459619: B0 01 - mov al,01
"Borderlands3.exe"+245961B: EB 02 - jmp Borderlands3.exe+245961F
"Borderlands3.exe"+245961D: 32 C0 - xor al,al
"Borderlands3.exe"+245961F: 84 C0 - test al,al
"Borderlands3.exe"+2459621: 74 0C - je Borderlands3.exe+245962F
"Borderlands3.exe"+2459623: 48 8B 07 - mov rax,[rdi]
"Borderlands3.exe"+2459626: 48 8B CF - mov rcx,rdi
"Borderlands3.exe"+2459629: FF 90 90 0E 00 00 - call qword ptr [rax+00000E90]
"Borderlands3.exe"+245962F: 48 39 B7 B8 05 00 00 - cmp [rdi+000005B8],rsi
"Borderlands3.exe"+2459636: 74 0F - je Borderlands3.exe+2459647
// ---------- INJECTING HERE ----------
"Borderlands3.exe"+2459638: 48 8B 07 - mov rax,[rdi]
"Borderlands3.exe"+245963B: 0F 28 CF - movaps xmm1,xmm7
// ---------- DONE INJECTING ----------
"Borderlands3.exe"+245963E: 48 8B CF - mov rcx,rdi
"Borderlands3.exe"+2459641: FF 90 98 0B 00 00 - call qword ptr [rax+00000B98]
"Borderlands3.exe"+2459647: 8B 47 0C - mov eax,[rdi+0C]
"Borderlands3.exe"+245964A: 3B 05 F4 F7 07 04 - cmp eax,[Borderlands3.exe+64D8E44]
"Borderlands3.exe"+2459650: 7D 2A - jnl Borderlands3.exe+245967C
"Borderlands3.exe"+2459652: 99 - cdq
"Borderlands3.exe"+2459653: 0F B7 D2 - movzx edx,dx
"Borderlands3.exe"+2459656: 03 C2 - add eax,edx
"Borderlands3.exe"+2459658: 8B C8 - mov ecx,eax
"Borderlands3.exe"+245965A: 0F B7 C0 - movzx eax,ax
}
</AssemblerScript>
<CheatEntries>
<CheatEntry>
<ID>24684</ID>
<Description>"Current Class"</Description>
<LastState Value="00000001388AE300" RealAddress="18337D160"/>
<ShowAsHex>1</ShowAsHex>
<Color>408080</Color>
<VariableType>8 Bytes</VariableType>
<Address>p_unlocks</Address>
<Offsets>
<Offset>A30+10</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>24685</ID>
<Description>"Class IDs"</Description>
<Options moHideChildren="1"/>
<LastState/>
<Color>FF0000</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : Borderlands3.exe
Version:
Date : 2019-10-20
Author : oseda
This script does blah blah blah
}
[ENABLE]
aobscanmodule(INJECT_Classes,Borderlands3.exe,48 8B 01 FF 90 80 02 00 00 48 85 C0 75 1D) // should be unique
alloc(newmem,$1000,"Borderlands3.exe"+7FC2B2A)
registersymbol(p_classes)
label(p_classes)
label(code)
label(return)
newmem:
code:
mov [p_classes],rcx
mov rax,[rcx]
call qword ptr [rax+00000280]
jmp return
p_classes:
dq
INJECT_Classes:
jmp newmem
nop 4
return:
registersymbol(INJECT_Classes)
[DISABLE]
INJECT_Classes:
db 48 8B 01 FF 90 80 02 00 00
unregistersymbol(p_classes)
unregistersymbol(INJECT_Classes)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: "Borderlands3.exe"+7FC2B2A
"Borderlands3.exe"+7FC2B01: 48 31 E0 - xor rax,rsp
"Borderlands3.exe"+7FC2B04: 48 89 45 30 - mov [rbp+30],rax
"Borderlands3.exe"+7FC2B08: 48 89 CF - mov rdi,rcx
"Borderlands3.exe"+7FC2B0B: 48 89 4D 98 - mov [rbp-68],rcx
"Borderlands3.exe"+7FC2B0F: 48 8B 0D 42 BA 65 FE - mov rcx,[Borderlands3.exe+661E558]
"Borderlands3.exe"+7FC2B16: 0F 28 F9 - movaps xmm7,xmm1
"Borderlands3.exe"+7FC2B19: 48 85 C9 - test rcx,rcx
"Borderlands3.exe"+7FC2B1C: 75 0C - jne Borderlands3.exe+7FC2B2A
"Borderlands3.exe"+7FC2B1E: E8 1D D4 AB FA - call Borderlands3.exe+2A7FF40
"Borderlands3.exe"+7FC2B23: 48 8B 0D 2E BA 65 FE - mov rcx,[Borderlands3.exe+661E558]
// ---------- INJECTING HERE ----------
"Borderlands3.exe"+7FC2B2A: 48 8B 01 - mov rax,[rcx]
"Borderlands3.exe"+7FC2B2D: FF 90 80 02 00 00 - call qword ptr [rax+00000280]
// ---------- DONE INJECTING ----------
"Borderlands3.exe"+7FC2B33: 48 85 C0 - test rax,rax
"Borderlands3.exe"+7FC2B36: 75 1D - jne Borderlands3.exe+7FC2B55
"Borderlands3.exe"+7FC2B38: 48 8D 8F 30 29 00 00 - lea rcx,[rdi+00002930]
"Borderlands3.exe"+7FC2B3F: E8 5C 59 4E F8 - call Borderlands3.exe+4A84A0
"Borderlands3.exe"+7FC2B44: 48 8D 8F 80 29 00 00 - lea rcx,[rdi+00002980]
"Borderlands3.exe"+7FC2B4B: E8 00 5A 4E F8 - call Borderlands3.exe+4A8550
"Borderlands3.exe"+7FC2B50: E9 AB 0B 00 00 - jmp Borderlands3.exe+7FC3700
"Borderlands3.exe"+7FC2B55: 48 83 BF B0 00 00 00 00 - cmp qword ptr [rdi+000000B0],00
"Borderlands3.exe"+7FC2B5D: 0F 84 9D 0B 00 00 - je Borderlands3.exe+7FC3700
"Borderlands3.exe"+7FC2B63: 48 8B 47 D8 - mov rax,[rdi-28]
}
</AssemblerScript>
<CheatEntries>
<CheatEntry>
<ID>24686</ID>
<Description>"PlayerClassId_Operative"</Description>
<LastState Value="00000001388AE300" RealAddress="18AFD5F00"/>
<ShowAsHex>1</ShowAsHex>
<Color>FF0000</Color>
<VariableType>8 Bytes</VariableType>
<Address>p_classes</Address>
<Offsets>
<Offset>0</Offset>
<Offset>F0</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>24687</ID>
<Description>"PlayerClassId_Siren"</Description>
<LastState Value="00000001815B2E00" RealAddress="18AFD5F08"/>
<ShowAsHex>1</ShowAsHex>
<Color>FF0000</Color>
<VariableType>8 Bytes</VariableType>
<Address>p_classes</Address>
<Offsets>
<Offset>8</Offset>
<Offset>F0</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>24688</ID>
<Description>"PlayerClassId_Beastmaster"</Description>
<LastState Value="00000001815B2500" RealAddress="18AFD5F10"/>
<ShowAsHex>1</ShowAsHex>
<Color>FF0000</Color>
<VariableType>8 Bytes</VariableType>
<Address>p_classes</Address>
<Offsets>
<Offset>10</Offset>
<Offset>F0</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>24689</ID>
<Description>"PlayerClassId_Gunner"</Description>
<LastState Value="00000001388AE000" RealAddress="18AFD5F18"/>
<ShowAsHex>1</ShowAsHex>
<Color>FF0000</Color>
<VariableType>8 Bytes</VariableType>
<Address>p_classes</Address>
<Offsets>
<Offset>18</Offset>
<Offset>F0</Offset>
</Offsets>
</CheatEntry>
</CheatEntries>
</CheatEntry>
</CheatEntries>
</CheatEntry>
</CheatEntries>
</CheatTable>