Function at 0x1400332d0
Capabilities:
Check if file exists
Get file attributes
Read file on windows
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r14
push rbp
lea rbp, [rsp - 0x10]
sub rsp, 0x110
mov rax, qword [0x1400da080]
xor rax, rsp
mov qword [rbp + 8], rax
lea rdi, [0x1400de540]
mov rbx, qword [0x1400de550]
cmp qword [0x1400de558], 0x10
jb 0x14003331e
mov rdi, qword [0x1400de540]
add rbx, rdi
xor r14d, r14d
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x78], r14
mov qword [rbp - 0x80], 7
mov word [rsp + 0x68], r14w
mov rdx, rbx
sub rdx, rdi
lea rcx, [rsp + 0x68]
call fcn.14001d4f0
mov r8, rbx
mov rdx, rdi
lea rcx, [rsp + 0x68]
call fcn.140023710
nop
lea rcx, [rbp - 0x78]
call fcn.1400421c0
mov rbx, rax
mov rcx, qword [rax + 0x10]
mov rdx, qword [rax + 0x18]
mov rax, rdx
sub rax, rcx
cmp rax, 0x12
jb 0x1400333ae
lea rsi, [rcx + 0x12]
mov qword [rbx + 0x10], rsi
mov rdi, rbx
cmp rdx, 8
jb 0x140033391
mov rdi, qword [rbx]
lea rcx, [rdi + rcx*2]
mov r8d, 0x24
lea rdx, str._trainer_settings_
call fcn.1400766b0
mov word [rdi + rsi*2], r14w
jmp 0x1400333d4
mov qword [rsp + 0x20], SafeArrayUnaccessData
lea r9, str._trainer_settings_
movzx r8d, byte [rsp + 0x30]
mov edx, 0x12
mov rcx, rbx
call fcn.14002b4e0
mov rbx, rax
movups xmm0, xmmword [rbx]
movups xmmword [rbp - 0x58], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x48], xmm1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 7
mov word [rbx], r14w
lea r9, [rsp + 0x68]
lea r8, [rbp - 0x58]
lea rcx, [rsp + 0x48]
call fcn.14003b140
nop
mov rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x60]
mov rax, r8
sub rax, rdx
cmp rax, 4
jb 0x14003344f
lea rcx, [rdx + 4]
mov qword [rsp + 0x58], rcx
lea rax, [rsp + 0x48]
cmp r8, 8
cmovae rax, qword [rsp + 0x48]
movabs r8, 0x69006e0069002e
mov qword [rax + rdx*2], r8
mov word [rax + rcx*2], r14w
lea rax, [rsp + 0x48]
jmp 0x140033474
mov qword [rsp + 0x20], 4
lea r9, str..ini
movzx r8d, byte [rsp + 0x30]
mov edx, 4
lea rcx, [rsp + 0x48]
call fcn.14002b4e0
mov qword [rbp - 0x38], r14
mov qword [rbp - 0x28], r14
mov qword [rbp - 0x20], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x38], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x28], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 7
mov word [rax], r14w
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x1400334e1
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400334dc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400338c8
call fcn.1400742a0
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], r14w
mov rdx, qword [rbp - 0x40]
cmp rdx, 8
jb 0x140033536
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140033530
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400338ce
call fcn.1400742a0
nop
mov rdx, qword [rbp - 0x60]
cmp rdx, 8
jb 0x140033576
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140033571
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400338d4
call fcn.1400742a0
mov qword [rbp - 0x68], r14
mov qword [rbp - 0x60], 7
mov word [rbp - 0x78], r14w
mov rdx, qword [rbp - 0x80]
cmp rdx, 8
jb 0x1400335c8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400335c3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400338da
call fcn.1400742a0
lea rcx, [rbp - 0x38]
cmp qword [rbp - 0x20], 8
cmovae rcx, qword [rbp - 0x38]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x14003385d
mov qword [rsp + 0x68], r14
mov qword [rbp - 0x80], reloc.OLEAUT32.dll_SafeArrayDestroy
mov qword [rsp + 0x78], r14
mov byte [rsp + 0x68], 0
mov qword [rsp + 0x60], reloc.OLEAUT32.dll_SafeArrayDestroy
mov qword [rsp + 0x58], reloc.OLEAUT32.dll_SafeArrayDestroy
movsd xmm0, qword [str.GamePassExePath]
movsd qword [rsp + 0x48], xmm0
mov eax, dword [0x1400c6ce8]
mov dword [rsp + 0x50], eax
movzx eax, word [0x1400c6cec]
mov word [rsp + 0x54], ax
movzx eax, byte [0x1400c6cee]
mov byte [rsp + 0x56], al
mov byte [rsp + 0x57], 0
mov qword [rbp - 0x78], r14
mov qword [rbp - 0x68], r14
mov qword [rbp - 0x60], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rbp - 0x78], 0
mov r8d, 6
lea rdx, str.Bypass
lea rcx, [rbp - 0x78]
call fcn.140015a60
nop
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x38]
lea r8, [rsp + 0x48]
lea rdx, [rbp - 0x78]
lea rcx, [rbp - 0x18]
call fcn.140032df0
nop
mov rdx, qword [rbp - 0x60]
cmp rdx, 0x10
jb 0x1400336c9
inc rdx
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400336c4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400338e0
call fcn.1400742a0
mov qword [rbp - 0x68], r14
mov qword [rbp - 0x60], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rbp - 0x78], 0
mov rdx, qword [rsp + 0x60]
cmp rdx, 0x10
jb 0x140033716
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140033711
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400338e6
call fcn.1400742a0
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rsp + 0x48], 0
mov rdx, qword [rbp - 0x80]
cmp rdx, 0x10
jb 0x140033765
inc rdx
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140033760
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400338ec
call fcn.1400742a0
mov qword [rsp + 0x78], r14
mov qword [rbp - 0x80], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rsp + 0x68], 0
cmp qword [rbp - 8], 3
jbe 0x140033853
mov rbx, qword [0x1400ddfa0]
lea rdi, [0x1400de5b0]
mov qword [rsp + 0x40], rdi
mov rcx, rdi
call fcn.140073074
test eax, eax
jne 0x1400338f2
mov dword [rsp + 0x38], 0xa
mov dword [rsp + 0x34], r14d
mov qword [rsp + 0x20], r14
lea r9, [rsp + 0x34]
lea r8d, [rax + 4]
lea rdx, [rsp + 0x38]
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov qword [rbp - 0x58], r14
mov qword [rbp - 0x48], r14
mov qword [rbp - 0x40], reloc.OLEAUT32.dll_SafeArrayDestroy
mov r8d, SafeArrayUnaccessData
lea rdx, str.SET_GAMEPASS_EXE_PATH
lea rcx, [rbp - 0x58]
call fcn.140015a60
lea rdx, [rbp - 0x58]
mov rcx, rbx
call fcn.14002fe90
mov dword [rsp + 0x34], r14d
mov dword [rsp + 0x38], r14d
mov qword [rsp + 0x20], r14
lea r9, [rsp + 0x38]
mov r8d, 4
lea rdx, [rsp + 0x34]
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_ReadFile]
cmp dword [rsp + 0x34], 1
jne 0x14003384a
lea rdx, [rbp - 0x18]
lea rcx, [rbp - 0x58]
call fcn.14001d720
mov rdx, rax
mov rcx, rbx
call fcn.14002ff50
nop
mov rcx, rdi
call fcn.14007307c
nop
lea rcx, [rbp - 0x18]
call fcn.14001d610
nop
mov rdx, qword [rbp - 0x20]
cmp rdx, 8
jb 0x140033899
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140033894
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400338c2
call fcn.1400742a0
mov rcx, qword [rbp + 8]
xor rcx, rsp
call fcn.140074280
lea r11, [rsp + 0x110]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
call fcn.14007abbc
nop
call fcn.14007abbc
nop
call fcn.14007abbc
nop
call fcn.14007abbc
nop
call fcn.14007abbc
nop
call fcn.14007abbc
nop
call fcn.14007abbc
nop
call fcn.14007abbc
int3
mov ecx, eax
call fcn.1400719a4
int3