Function at 0x140024760
Capabilities:
Check if file exists
Create directory
Get file attributes

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xd8]
sub rsp, 0x1b0
mov qword [rsp + 0x40], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x1400bf080]
xor rax, rsp
mov qword [rbp + 0xa8], rax
mov rdi, rcx
xor r13d, r13d
mov dword [rsp + 0x30], r13d
mov qword [rbp + 0x18], r13
mov qword [rbp + 0x20], 7
mov word [rbp + 8], r13w
lea rcx, [rbp - 0x58]
call fcn.14000fc10
nop
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], r13w
mov dword [rsp + 0x30], 4
mov rdx, qword [rbp - 0x48]
add rdx, 0x14
lea rcx, [rsp + 0x48]
call fcn.140003870
lea rdx, [rbp - 0x58]
cmp qword [rbp - 0x40], 8
cmovae rdx, qword [rbp - 0x58]
mov r8, qword [rbp - 0x48]
lea rcx, [rsp + 0x48]
call fcn.140003930
lea r8d, [r13 + 0x14]
lea rdx, str.TrainerSettings.ini
lea rcx, [rsp + 0x48]
call fcn.140003930
lea rcx, [rbp + 8]
call fcn.140005e50
movups xmm0, xmmword [rsp + 0x48]
movups xmmword [rbp + 8], xmm0
movups xmm1, xmmword [rsp + 0x58]
movups xmmword [rbp + 0x18], xmm1
lea rcx, [rbp - 0x58]
cmp qword [rbp - 0x40], 8
cmovae rcx, qword [rbp - 0x58]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x14002486c
lea rcx, [rbp - 0x58]
cmp qword [rbp - 0x40], 8
cmovae rcx, qword [rbp - 0x58]
call fcn.14006c860
mov ecx, 0x20
call fcn.14004773c
mov rbx, rax
mov qword [rsp + 0x30], rax
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], 7
mov word [rax], r13w
lea rax, [rbp + 8]
cmp rbx, rax
je 0x1400248b2
lea rdx, [rbp + 8]
cmp qword [rbp + 0x20], 8
cmovae rdx, qword [rbp + 8]
mov r8, qword [rbp + 0x18]
mov rcx, rbx
call fcn.140005230
nop
mov qword [rdi + 0xc0], rbx
mov ecx, 0x28
call fcn.14004773c
mov rbx, rax
mov qword [rsp + 0x38], rax
mov qword [rbp - 0x68], r13
mov qword [rbp - 0x60], 7
mov word [rbp - 0x78], r13w
mov r8d, 7
lea rdx, str.Trainer
lea rcx, [rbp - 0x78]
call fcn.140005230
nop
mov dword [rsp + 0x30], 1
mov rsi, qword [rdi + 0xc0]
lea rcx, [rbx + 8]
mov qword [rcx + 0x10], r13
mov qword [rcx + 0x18], 7
mov word [rcx], r13w
lea rax, [rbp - 0x78]
cmp rcx, rax
je 0x140024936
lea rdx, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae rdx, qword [rbp - 0x78]
mov r8, qword [rbp - 0x68]
call fcn.140005230
mov qword [rbx], rsi
mov qword [rdi + 0xc8], rbx
mov rdx, qword [rbp - 0x60]
cmp rdx, 8
jb 0x140024980
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002497b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002582d
call fcn.140047734
lea rcx, [rbp + 8]
cmp qword [rbp + 0x20], 8
cmovae rcx, qword [rbp + 8]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov esi, 8
cmp eax, 0xffffffff
jne 0x140024d59
lea rdx, [0x1400a43db]
lea ecx, [rsi - 6]
call fcn.14006cb98
mov qword [rbp - 0x68], r13
mov qword [rbp - 0x60], 0xf
mov byte [rbp - 0x78], 0
mov rbx, 0xffffffffffffffff
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400249d0
mov rdx, rax
lea rcx, [rbp - 0x78]
call fcn.140005ca0
nop
mov qword [rsp + 0x78], r13
mov qword [rbp - 0x80], 7
mov word [rsp + 0x68], r13w
lea rcx, [rbp - 0x78]
mov r14, qword [rbp - 0x78]
mov r15, qword [rbp - 0x60]
cmp r15, 0x10
cmovae rcx, r14
mov qword [rsp + 0x20], 7
lea r9, str.Chinese
xor r8d, r8d
mov r12, qword [rbp - 0x68]
mov rdx, r12
call fcn.140009910
cmp rax, 0xffffffffffffffff
je 0x140024a7f
lea rcx, [rbp - 0x78]
cmp r15, 0x10
cmovae rcx, r14
mov qword [rsp + 0x20], 0xb
lea r9, str.Traditional
xor r8d, r8d
mov rdx, r12
call fcn.140009910
lea rcx, str.Chinese_Traditional
lea rdx, str.Chinese_Simplified
cmp rax, 0xffffffffffffffff
cmovne rdx, rcx
inc rbx
cmp word [rdx + rbx*2], 0
jne 0x140024a70
mov r8, rbx
jmp 0x140024a8c
mov r8d, 7
lea rdx, str.English
lea rcx, [rsp + 0x68]
call fcn.140005230
mov qword [rbp - 0x28], r13
mov qword [rbp - 0x20], 7
mov word [rbp - 0x38], r13w
mov r8, rsi
lea rdx, str.Language
lea rcx, [rbp - 0x38]
call fcn.140005230
mov rcx, qword [rdi + 0xc8]
mov r9, qword [rcx]
cmp qword [r9 + 0x18], 8
jb 0x140024ace
mov r9, qword [r9]
lea r8, [rsp + 0x68]
cmp qword [rbp - 0x80], 8
cmovae r8, qword [rsp + 0x68]
lea rdx, [rbp - 0x38]
cmp qword [rbp - 0x20], 8
cmovae rdx, qword [rbp - 0x38]
add rcx, 8
cmp qword [rcx + 0x18], 8
jb 0x140024afa
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov rdx, qword [rbp - 0x20]
cmp rdx, 8
jb 0x140024b40
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024b3b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025833
call fcn.140047734
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], r13w
mov r8d, 0xa
lea rdx, str.ShowAVHint
lea rcx, [rsp + 0x48]
call fcn.140005230
nop
mov r8b, 1
lea rdx, [rsp + 0x48]
mov rcx, qword [rdi + 0xc8]
call fcn.140023dc0
nop
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x140024bc3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024bbe
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025839
call fcn.140047734
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], r13w
mov r8d, 0xb
lea rdx, str.OnLoadMusic
lea rcx, [rsp + 0x48]
call fcn.140005230
nop
mov r8b, 1
lea rdx, [rsp + 0x48]
mov rcx, qword [rdi + 0xc8]
call fcn.140023dc0
nop
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x140024c46
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024c41
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002583f
call fcn.140047734
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], r13w
mov r8d, 0x11
lea rdx, str.IgnoreGameVersion
lea rcx, [rsp + 0x48]
call fcn.140005230
nop
xor r8d, r8d
lea rdx, [rsp + 0x48]
mov rcx, qword [rdi + 0xc8]
call fcn.140023dc0
nop
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x140024cca
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024cc4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025845
call fcn.140047734
nop
mov rdx, qword [rbp - 0x80]
cmp rdx, 8
jb 0x140024d0b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024d06
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002584b
call fcn.140047734
mov qword [rsp + 0x78], r13
mov qword [rbp - 0x80], 7
mov word [rsp + 0x68], r13w
mov rdx, qword [rbp - 0x60]
cmp rdx, 0x10
jb 0x140024d59
inc rdx
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024d54
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025851
call fcn.140047734
mov qword [rbp + 0x58], r13
mov qword [rbp + 0x60], 7
mov word [rbp + 0x48], r13w
mov r8d, 7
lea rdx, str.ENGLISH
lea rcx, [rbp + 0x48]
call fcn.140005230
nop
mov qword [rbp + 0x38], r13
mov qword [rbp + 0x40], 7
mov word [rbp + 0x28], r13w
mov r8, rsi
lea rdx, str.Language
lea rcx, [rbp + 0x28]
call fcn.140005230
nop
mov rcx, qword [rdi + 0xc8]
lea r8, [rcx + 8]
lea rax, [rbp + 0x48]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x28]
lea rdx, [rbp - 0x18]
mov rcx, qword [rcx]
call fcn.140023950
nop
mov rdx, qword [rbp + 0x40]
cmp rdx, 8
jb 0x140024e0b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024e06
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025857
call fcn.140047734
mov qword [rbp + 0x38], r13
mov qword [rbp + 0x40], 7
mov word [rbp + 0x28], r13w
mov rdx, qword [rbp + 0x60]
cmp rdx, 8
jb 0x140024e5c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024e57
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002585d
call fcn.140047734
mov qword [rbp + 0x58], r13
mov qword [rbp + 0x60], 7
mov word [rbp + 0x48], r13w
lea r15, [rbp - 0x18]
mov r12, qword [rbp - 0x18]
mov r13, qword [rbp]
cmp r13, 8
cmovae r15, r12
lea rax, [rbp - 0x18]
cmovae rax, r12
mov rcx, qword [rbp - 8]
lea rcx, [rax + rcx*2]
lea rbx, [rbp - 0x18]
cmovae rbx, r12
xor eax, eax
mov esi, eax
mov r14, rcx
sub r14, rbx
inc r14
shr r14, 1
cmp rbx, rcx
cmova r14, rax
test r14, r14
je 0x140024ed9
sub r15, rbx
movzx ecx, word [rbx]
call fcn.14006c69c
mov word [rbx + r15], ax
lea rbx, [rbx + 2]
inc rsi
cmp rsi, r14
jne 0x140024eb8
mov r13, qword [rbp]
mov r12, qword [rbp - 0x18]
lea rcx, [rbp - 0x18]
cmp r13, 8
cmovae rcx, r12
mov qword [rsp + 0x20], 0xa
lea r9, str.SIMPLIFIED
xor r8d, r8d
mov rbx, qword [rbp - 8]
mov rdx, rbx
call fcn.140003190
cmp rax, 0xffffffffffffffff
je 0x140024f12
xor r12d, r12d
mov edx, r12d
jmp 0x140024f48
lea rcx, [rbp - 0x18]
cmp r13, 8
cmovae rcx, r12
mov qword [rsp + 0x20], 0xb
lea r9, str.TRADITIONAL
xor r8d, r8d
mov rdx, rbx
call fcn.140003190
xor r12d, r12d
mov edx, r12d
cmp rax, 0xffffffffffffffff
sete dl
inc edx
mov rcx, rdi
call fcn.140026250
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], r12w
mov r8d, 0xa
lea rdx, str.ShowAVHint
lea rcx, [rsp + 0x48]
call fcn.140005230
nop
lea rdx, [rsp + 0x48]
mov rcx, qword [rdi + 0xc8]
call fcn.140023b20
movzx ebx, al
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x140024fd2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024fcd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025863
call fcn.140047734
test bl, bl
je 0x1400254da
mov qword [rsp + 0x78], r12
mov qword [rbp - 0x80], 7
mov word [rsp + 0x68], r12w
xor r8d, r8d
lea rdx, [0x1400a4d58]
lea rcx, [rsp + 0x68]
call fcn.140005230
nop
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], r12w
mov r8d, 0xb
lea rdx, str.360Tray.exe
lea rcx, [rsp + 0x48]
call fcn.140005230
lea rcx, [rsp + 0x48]
call fcn.1400229e0
test eax, eax
je 0x140025052
mov r8d, 0xb
lea rdx, str.360Tray.exe
lea rcx, [rsp + 0x68]
call fcn.140005230
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], r12w
mov r8d, 0xb
lea rdx, str.360Safe.exe
lea rcx, [rsp + 0x48]
call fcn.140005230
lea rcx, [rsp + 0x48]
call fcn.1400229e0
test eax, eax
je 0x1400250a2
mov r8d, 0xb
lea rdx, str.360Safe.exe
lea rcx, [rsp + 0x68]
call fcn.140005230
mov rbx, qword [rsp + 0x78]
test rbx, rbx
je 0x140025491
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], r12w
mov dword [rsp + 0x30], 0x18
lea rdx, [rbx + 0xf]
lea rcx, [rsp + 0x48]
call fcn.140003870
mov r8d, 0xf
lea rdx, [0x1400a9078]
lea rcx, [rsp + 0x48]
call fcn.140003930
lea rdx, [rsp + 0x68]
cmp qword [rbp - 0x80], 8
cmovae rdx, qword [rsp + 0x68]
mov r8, rbx
lea rcx, [rsp + 0x48]
call fcn.140003930
mov r8d, 9
lea rdx, [0x1400a9060]
lea rcx, [rsp + 0x48]
call fcn.140003930
mov qword [rbp - 0x28], r12
mov qword [rbp - 0x20], r12
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x38], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x28], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 7
mov word [rax], r12w
mov dword [rsp + 0x30], 0x38
mov r8d, 0x25
lea rdx, [0x1400a9010]
lea rcx, [rbp - 0x38]
call fcn.140003930
mov qword [rbp + 0x98], r12
mov qword [rbp + 0xa0], r12
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x88], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x98], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 7
mov word [rax], r12w
mov dword [rsp + 0x30], 0x78
mov r8d, 0x22
lea rdx, [0x1400a8fc0]
lea rcx, [rbp + 0x88]
call fcn.140003930
mov qword [rbp + 0x78], r12
mov qword [rbp + 0x80], r12
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x68], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x78], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 7
mov word [rax], r12w
mov dword [rsp + 0x30], 0xf8
mov r8d, 0x23
lea rdx, [0x1400a8f70]
lea rcx, [rbp + 0x68]
call fcn.140003930
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x78], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x68], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 7
mov word [rax], r12w
mov rdx, qword [rbp + 0x80]
cmp rdx, 8
jb 0x140025268
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140025263
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025869
call fcn.140047734
mov qword [rbp + 0x78], r12
mov qword [rbp + 0x80], 7
mov word [rbp + 0x68], r12w
mov rdx, qword [rbp + 0xa0]
cmp rdx, 8
jb 0x1400252c2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400252bd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002586f
call fcn.140047734
mov qword [rbp + 0x98], r12
mov qword [rbp + 0xa0], 7
mov word [rbp + 0x88], r12w
mov rdx, qword [rbp - 0x20]
cmp rdx, 8
jb 0x14002531c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140025317
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025875
call fcn.140047734
mov qword [rbp - 0x28], r12
mov qword [rbp - 0x20], 7
mov word [rbp - 0x38], r12w
mov r15d, 0x1e8
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x140025375
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140025370
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002587b
call fcn.140047734
lea rdx, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae rdx, qword [rbp - 0x78]
mov r9d, 4
lea r8, [0x1400a9098]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 7
jne 0x14002544f
xor r9d, r9d
xor r8d, r8d
lea edx, [rax - 5]
mov rcx, qword [rdi + 0x50]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rdx, qword [rbp - 0x60]
cmp rdx, 8
jb 0x1400253f4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400253ef
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025881
call fcn.140047734
mov qword [rbp - 0x68], r12
mov qword [rbp - 0x60], 7
mov word [rbp - 0x78], r12w
mov rdx, qword [rbp - 0x80]
cmp rdx, 8
jb 0x140025719
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140025445
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025887
call fcn.140047734
jmp 0x140025719
mov rdx, qword [rbp - 0x60]
cmp rdx, 8
jb 0x140025497
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002548a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002588d
call fcn.140047734
jmp 0x140025497
mov r15d, 8
mov rdx, qword [rbp - 0x80]
cmp rdx, 8
jb 0x1400254e0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400254d3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025893
call fcn.140047734
jmp 0x1400254e0
mov r15d, 8
mov esi, r15d
lea rcx, [rdi + 0xe0]
call fcn.1400225b0
test eax, eax
setne dl
mov byte [rdi + 0x168], dl
test eax, eax
je 0x140025524
cmp qword [rdi + 0x128], 0x10000
jae 0x140025517
lea rcx, [rdi + 0xe0]
call fcn.140022940
lea rcx, [rdi + 0xd0]
call fcn.14001c340
nop
mov qword [rsp + 0x78], r12
mov qword [rbp - 0x80], 7
mov word [rsp + 0x68], r12w
bts r15d, 9
mov dword [rsp + 0x30], r15d
mov rdx, qword [rbp - 0x48]
add rdx, 0xf
lea rcx, [rsp + 0x68]
call fcn.140003870
lea rdx, [rbp - 0x58]
cmp qword [rbp - 0x40], 8
cmovae rdx, qword [rbp - 0x58]
mov r8, qword [rbp - 0x48]
lea rcx, [rsp + 0x68]
call fcn.140003930
mov r8d, 0xf
lea rdx, str.TrainerBGM.mid
lea rcx, [rsp + 0x68]
call fcn.140003930
lea rbx, [rdi + 0x3c0]
lea rax, [rsp + 0x68]
cmp rbx, rax
je 0x1400255c6
mov rcx, rbx
call fcn.140005e50
movups xmm0, xmmword [rsp + 0x68]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rsp + 0x78]
movups xmmword [rbx + 0x10], xmm1
mov qword [rsp + 0x78], r12
mov eax, 7
mov qword [rbp - 0x80], rax
mov word [rsp + 0x68], r12w
jmp 0x1400255ca
mov rax, qword [rbp - 0x80]
cmp rax, 8
jb 0x140025607
lea rdx, [rax*2 + 2]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140025602
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025899
call fcn.140047734
mov rcx, rbx
cmp qword [rbx + 0x18], 8
jb 0x140025614
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x14002563d
cmp qword [rbx + 0x18], 8
jb 0x140025629
mov rbx, qword [rbx]
mov r8, rbx
lea rdx, [0x1400a90c8]
mov ecx, 0xa7
call fcn.14000f7b0
cmp byte [rdi + 0x168], 0
jne 0x140025692
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], r12w
mov r8d, 0xb
lea rdx, str.OnLoadMusic
lea rcx, [rsp + 0x48]
call fcn.140005230
nop
or esi, 2
mov dword [rsp + 0x30], esi
lea rdx, [rsp + 0x48]
mov rcx, qword [rdi + 0xc8]
call fcn.140023b20
test al, al
je 0x140025692
mov bl, 1
jmp 0x140025694
xor bl, bl
test sil, 2
je 0x1400256dc
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x1400256dc
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400256d7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002589f
call fcn.140047734
test bl, bl
je 0x1400256ea
mov dl, 1
mov rcx, rdi
call fcn.1400258c0
xor r9d, r9d
mov edx, 0x2710
lea r8d, [r9 + 0xa]
mov rcx, qword [rdi + 0x50]
call qword [sym.imp.USER32.dll_SetTimer]
xor r9d, r9d
mov edx, 0x2711
mov r8d, 0xc8
mov rcx, qword [rdi + 0x50]
call qword [sym.imp.USER32.dll_SetTimer]
nop
mov rdx, qword [rbp]
cmp rdx, 8
jb 0x140025759
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140025754
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400258a5
call fcn.140047734
mov qword [rbp - 8], r12
mov qword [rbp], 7
mov word [rbp - 0x18], r12w
mov rdx, qword [rbp - 0x40]
cmp rdx, 8
jb 0x1400257aa
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400257a5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400258ab
call fcn.140047734
mov qword [rbp - 0x48], r12
mov qword [rbp - 0x40], 7
mov word [rbp - 0x58], r12w
mov rdx, qword [rbp + 0x20]
cmp rdx, 8
jb 0x1400257f7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400257f2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025827
call fcn.140047734
mov rcx, qword [rbp + 0xa8]
xor rcx, rsp
call fcn.140047710
lea r11, [rsp + 0x1b0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140068c7c
nop
call fcn.140068c7c
nop
call fcn.140068c7c
int3
call fcn.140068c7c
int3
call fcn.140068c7c
int3
call fcn.140068c7c
nop
call fcn.140068c7c
nop
call fcn.140068c7c
nop
call fcn.140068c7c
nop
call fcn.140068c7c
int3
call fcn.140068c7c
nop
call fcn.140068c7c
nop
call fcn.140068c7c
nop
call fcn.140068c7c
nop
call fcn.140068c7c
int3
call fcn.140068c7c
nop
call fcn.140068c7c
nop
call fcn.140068c7c
nop
call fcn.140068c7c
int3
call fcn.140068c7c
int3
call fcn.140068c7c
nop
call fcn.140068c7c
nop
call fcn.140068c7c
int3