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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xb0]
sub rsp, 0x1b0
mov rax, qword [0x140033010]
xor rax, rsp
mov qword [rbp + 0xa0], rax
mov r14, rcx
xor r13d, r13d
mov dword [rsp + 0x30], r13d
mov qword [rbp + 0x10], r13
mov qword [rbp + 0x18], 7
mov word [rbp], r13w
lea rcx, [rbp + 0x60]
call fcn.140008d70
nop
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], 7
mov word [rsp + 0x60], r13w
mov dword [rsp + 0x30], 4
mov rdx, qword [rbp + 0x70]
add rdx, 0x14
lea rcx, [rsp + 0x60]
call fcn.1400013d0
lea rdx, [rbp + 0x60]
lea rcx, [rsp + 0x60]
call fcn.1400015f0
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x78]
mov rax, rdx
sub rax, rcx
cmp rax, 0x14
jb 0x14001de83
lea rdi, [rcx + 0x14]
mov qword [rsp + 0x70], rdi
lea rbx, [rsp + 0x60]
cmp rdx, 8
cmovae rbx, qword [rsp + 0x60]
lea rcx, [rbx + rcx*2]
lea r8d, [r13 + 0x28]
lea rdx, str.TrainerSettings.ini
call sub.VCRUNTIME140.dll_memmove
mov word [rbx + rdi*2], r13w
jmp 0x14001dea2
mov qword [rsp + 0x20], 0x14
lea r9, str.TrainerSettings.ini
mov edx, 0x14
lea rcx, [rsp + 0x60]
call fcn.140001680
mov rdx, qword [rbp + 0x18]
cmp rdx, 8
jb 0x14001dee5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001dee0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001dee0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
movups xmm0, xmmword [rsp + 0x60]
movups xmmword [rbp], xmm0
movups xmm1, xmmword [rsp + 0x70]
movups xmmword [rbp + 0x10], xmm1
lea rcx, [rbp + 0x60]
cmp qword [rbp + 0x78], 8
cmovae rcx, qword [rbp + 0x60]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x14001df24
lea rcx, [rbp + 0x60]
cmp qword [rbp + 0x78], 8
cmovae rcx, qword [rbp + 0x60]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__wmkdir]
mov ecx, 0x20
call fcn.140022b88
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]
cmp rbx, rax
je 0x14001df6a
lea rdx, [rbp]
cmp qword [rbp + 0x18], 8
cmovae rdx, qword [rbp]
mov r8, qword [rbp + 0x10]
mov rcx, rbx
call fcn.1400022e0
nop
mov qword [r14 + 0xd8], rbx
mov ecx, 0x28
call fcn.140022b88
mov rbx, rax
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x50], r13
mov qword [rsp + 0x58], 7
mov word [rsp + 0x40], r13w
mov r8d, 7
lea rdx, str.Trainer
lea rcx, [rsp + 0x40]
call fcn.1400022e0
nop
mov dword [rsp + 0x30], 1
mov rdi, qword [r14 + 0xd8]
lea rcx, [rbx + 8]
mov qword [rcx + 0x10], r13
mov qword [rcx + 0x18], 7
mov word [rcx], r13w
lea rax, [rsp + 0x40]
cmp rcx, rax
je 0x14001dff7
lea rdx, [rsp + 0x40]
cmp qword [rsp + 0x58], 8
cmovae rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x50]
call fcn.1400022e0
mov qword [rbx], rdi
mov qword [r14 + 0xe0], rbx
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14001e043
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001e03e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001f1cb
call fcn.140022b54
lea rcx, [rbp]
cmp qword [rbp + 0x18], 8
cmovae rcx, qword [rbp]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov r12d, 8
mov qword [rsp + 0x30], r12
cmp eax, 0xffffffff
jne 0x14001e43b
lea rdx, [0x140026c82]
lea ecx, [r12 - 6]
call qword [sym.imp.api_ms_win_crt_locale_l1_1_0.dll_setlocale]
mov qword [rsp + 0x50], r13
mov qword [rsp + 0x58], 0xf
mov byte [rsp + 0x40], 0
mov rbx, 0xffffffffffffffff
mov r8, rbx
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14001e0a0
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.140001a10
nop
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], 7
mov word [rsp + 0x60], r13w
lea rcx, [rsp + 0x40]
mov rdi, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x58]
cmp rsi, 0x10
cmovae rcx, rdi
mov qword [rsp + 0x20], 7
lea r9, str.Chinese
xor r8d, r8d
mov r15, qword [rsp + 0x50]
mov rdx, r15
call fcn.140001300
cmp rax, 0xffffffffffffffff
je 0x14001e15f
lea rcx, [rsp + 0x40]
cmp rsi, 0x10
cmovae rcx, rdi
mov qword [rsp + 0x20], 0xb
lea r9, str.Traditional
xor r8d, r8d
mov rdx, r15
call fcn.140001300
lea rcx, str.Chinese_Traditional
lea rdx, str.Chinese_Simplified
cmp rax, 0xffffffffffffffff
cmovne rdx, rcx
nop word [rax + rax]
inc rbx
cmp word [rdx + rbx*2], 0
jne 0x14001e150
mov r8, rbx
jmp 0x14001e16c
mov r8d, 7
lea rdx, str.English
lea rcx, [rsp + 0x60]
call fcn.1400022e0
mov qword [rbp - 0x70], r13
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r13w
mov r8, r12
lea rdx, str.Language
lea rcx, [rbp - 0x80]
call fcn.1400022e0
mov rcx, qword [r14 + 0xe0]
mov r9, qword [rcx]
cmp qword [r9 + 0x18], 8
jb 0x14001e1ae
mov r9, qword [r9]
lea r8, [rsp + 0x60]
cmp qword [rsp + 0x78], 8
cmovae r8, qword [rsp + 0x60]
lea rdx, [rbp - 0x80]
cmp qword [rbp - 0x68], 8
cmovae rdx, qword [rbp - 0x80]
add rcx, 8
cmp qword [rcx + 0x18], 8
jb 0x14001e1db
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14001e224
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001e21f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001e21f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
mov qword [rbp - 0x70], r13
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r13w
mov r8d, 0xa
lea rdx, str.ShowAVHint
lea rcx, [rbp - 0x80]
call fcn.1400022e0
nop
mov r8b, 1
lea rdx, [rbp - 0x80]
mov rcx, qword [r14 + 0xe0]
call fcn.14001cc10
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14001e2a3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001e29e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001e29e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
mov qword [rbp - 0x70], r13
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r13w
mov r8d, 0xb
lea rdx, str.OnLoadMusic
lea rcx, [rbp - 0x80]
call fcn.1400022e0
nop
mov r8b, 1
lea rdx, [rbp - 0x80]
mov rcx, qword [r14 + 0xe0]
call fcn.14001cc10
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14001e322
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001e31d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001e31d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
mov qword [rbp - 0x70], r13
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r13w
mov r8d, 0x11
lea rdx, str.IgnoreGameVersion
lea rcx, [rbp - 0x80]
call fcn.1400022e0
nop
xor r8d, r8d
lea rdx, [rbp - 0x80]
mov rcx, qword [r14 + 0xe0]
call fcn.14001cc10
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14001e3a2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001e39c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001e39c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
nop
mov rdx, qword [rsp + 0x78]
cmp rdx, 8
jb 0x14001e3e7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001e3e2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001e3e2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], 7
mov word [rsp + 0x60], r13w
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x14001e43b
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001e436
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001e436
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
mov qword [rbp - 0x70], r13
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r13w
mov r8d, 7
lea rdx, str.ENGLISH
lea rcx, [rbp - 0x80]
call fcn.1400022e0
nop
mov qword [rbp + 0x90], r13
mov qword [rbp + 0x98], 7
mov word [rbp + 0x80], r13w
mov r8, r12
lea rdx, str.Language
lea rcx, [rbp + 0x80]
call fcn.1400022e0
nop
mov rcx, qword [r14 + 0xe0]
lea r8, [rcx + 8]
lea rax, [rbp - 0x80]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x80]
lea rdx, [rbp - 0x20]
mov rcx, qword [rcx]
call fcn.14001c780
nop
mov rdx, qword [rbp + 0x98]
cmp rdx, 8
jb 0x14001e505
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001e500
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001e500
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
mov qword [rbp + 0x90], r13
mov qword [rbp + 0x98], 7
mov word [rbp + 0x80], r13w
mov rdx, qword [rbp - 0x68]
cmp rdx, 8
jb 0x14001e562
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001e55d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001e55d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
mov qword [rbp - 0x70], r13
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], r13w
lea rsi, [rbp - 0x20]
mov r15, qword [rbp - 0x20]
mov r12, qword [rbp - 8]
cmp r12, 8
cmovae rsi, r15
lea rax, [rbp - 0x20]
cmovae rax, r15
mov r13, qword [rbp - 0x10]
lea rbx, [rax + r13*2]
lea rdi, [rbp - 0x20]
cmovae rdi, r15
cmp rdi, rbx
je 0x14001e5c9
sub rsi, rdi
movzx ecx, word [rdi]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_toupper]
mov word [rsi + rdi], ax
add rdi, 2
cmp rdi, rbx
jne 0x14001e5a7
mov r12, qword [rbp - 8]
mov r13, qword [rbp - 0x10]
mov r15, qword [rbp - 0x20]
lea rcx, [rbp - 0x20]
cmp r12, 8
cmovae rcx, r15
mov qword [rsp + 0x20], 0xa
lea r9, str.SIMPLIFIED
xor r8d, r8d
mov rdx, r13
call fcn.140001250
cmp rax, 0xffffffffffffffff
je 0x14001e5fe
xor r15d, r15d
mov edx, r15d
jmp 0x14001e634
lea rcx, [rbp - 0x20]
cmp r12, 8
cmovae rcx, r15
mov qword [rsp + 0x20], 0xb
lea r9, str.TRADITIONAL
xor r8d, r8d
mov rdx, r13
call fcn.140001250
xor r15d, r15d
mov edx, r15d
cmp rax, 0xffffffffffffffff
sete dl
inc edx
mov rcx, r14
call fcn.14001ffe0
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], 7
mov word [rsp + 0x40], r15w
mov r8d, 0xa
lea rdx, str.ShowAVHint
lea rcx, [rsp + 0x40]
call fcn.1400022e0
nop
lea rdx, [rsp + 0x40]
mov rcx, qword [r14 + 0xe0]
call fcn.14001c940
movzx ebx, al
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14001e6c1
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001e6bc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001e6bc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
test bl, bl
je 0x14001ed3b
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], 7
mov word [rsp + 0x40], r15w
xor r8d, r8d
lea rdx, [0x140026b90]
lea rcx, [rsp + 0x40]
call fcn.1400022e0
nop
mov qword [rbp - 0x50], r15
mov qword [rbp - 0x48], 7
mov word [rbp - 0x60], r15w
mov r8d, 0xb
lea rdx, str.360Tray.exe
lea rcx, [rbp - 0x60]
call fcn.1400022e0
lea rcx, [rbp - 0x60]
call fcn.14001b430
test eax, eax
je 0x14001e73d
mov r8d, 0xb
lea rdx, str.360Tray.exe
lea rcx, [rsp + 0x40]
call fcn.1400022e0
mov qword [rbp - 0x50], r15
mov qword [rbp - 0x48], 7
mov word [rbp - 0x60], r15w
mov r8d, 0xb
lea rdx, str.360Safe.exe
lea rcx, [rbp - 0x60]
call fcn.1400022e0
lea rcx, [rbp - 0x60]
call fcn.14001b430
test eax, eax
je 0x14001e788
mov r8d, 0xb
lea rdx, str.360Safe.exe
lea rcx, [rsp + 0x40]
call fcn.1400022e0
mov rdx, qword [rsp + 0x50]
test rdx, rdx
je 0x14001ecf6
mov qword [rbp - 0x30], r15
mov qword [rbp - 0x28], 7
mov word [rbp - 0x40], r15w
mov dword [rsp + 0x30], 0x18
add rdx, 0xf
lea rcx, [rbp - 0x40]
call fcn.1400013d0
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rbp - 0x28]
mov rax, rdx
sub rax, rcx
cmp rax, 0xf
jb 0x14001e802
lea rdi, [rcx + 0xf]
mov qword [rbp - 0x30], rdi
lea rbx, [rbp - 0x40]
cmp rdx, 8
cmovae rbx, qword [rbp - 0x40]
lea rcx, [rbx + rcx*2]
mov r8d, 0x1e
lea rdx, [0x14002b078]
call sub.VCRUNTIME140.dll_memmove
mov word [rbx + rdi*2], r15w
jmp 0x14001e820
mov qword [rsp + 0x20], 0xf
lea r9, [0x14002b078]
mov edx, 0xf
lea rcx, [rbp - 0x40]
call fcn.140001680
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x40]
call fcn.1400015f0
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rbp - 0x28]
mov rax, rdx
sub rax, rcx
cmp rax, 9
jb 0x14001e878
lea rdi, [rcx + 9]
mov qword [rbp - 0x30], rdi
lea rbx, [rbp - 0x40]
cmp rdx, 8
cmovae rbx, qword [rbp - 0x40]
lea rcx, [rbx + rcx*2]
mov r8d, 0x12
lea rdx, [0x14002b060]
call sub.VCRUNTIME140.dll_memmove
mov word [rbx + rdi*2], r15w
lea rax, [rbp - 0x40]
jmp 0x14001e896
mov qword [rsp + 0x20], 9
lea r9, [0x14002b060]
mov edx, 9
lea rcx, [rbp - 0x40]
call fcn.140001680
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x78], r15
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x70], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 7
mov word [rax], r15w
mov dword [rsp + 0x30], 0x38
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x78]
mov rax, rdx
sub rax, rcx
cmp rax, 0x25
jb 0x14001e919
lea rdi, [rcx + 0x25]
mov qword [rsp + 0x70], rdi
lea rbx, [rsp + 0x60]
cmp rdx, 8
cmovae rbx, qword [rsp + 0x60]
lea rcx, [rbx + rcx*2]
mov r8d, 0x4a
lea rdx, [0x14002b010]
call sub.VCRUNTIME140.dll_memmove
mov word [rbx + rdi*2], r15w
lea rax, [rsp + 0x60]
jmp 0x14001e938
mov qword [rsp + 0x20], 0x25
lea r9, [0x14002b010]
mov edx, 0x25
lea rcx, [rsp + 0x60]
call fcn.140001680
mov qword [rbp + 0x50], r15
mov qword [rbp + 0x58], r15
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x50], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 7
mov word [rax], r15w
mov dword [rsp + 0x30], 0x78
mov rcx, qword [rbp + 0x50]
mov rdx, qword [rbp + 0x58]
mov rax, rdx
sub rax, rcx
cmp rax, 0x22
jb 0x14001e9b1
lea rdi, [rcx + 0x22]
mov qword [rbp + 0x50], rdi
lea rbx, [rbp + 0x40]
cmp rdx, 8
cmovae rbx, qword [rbp + 0x40]
lea rcx, [rbx + rcx*2]
mov r8d, 0x44
lea rdx, [0x14002afc0]
call sub.VCRUNTIME140.dll_memmove
mov word [rbx + rdi*2], r15w
lea rax, [rbp + 0x40]
jmp 0x14001e9cf
mov qword [rsp + 0x20], 0x22
lea r9, [0x14002afc0]
mov edx, 0x22
lea rcx, [rbp + 0x40]
call fcn.140001680
mov qword [rbp + 0x30], r15
mov qword [rbp + 0x38], r15
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x30], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 7
mov word [rax], r15w
mov dword [rsp + 0x30], pe_nt_image_headers64
mov rcx, qword [rbp + 0x30]
mov rdx, qword [rbp + 0x38]
mov rax, rdx
sub rax, rcx
cmp rax, 0x23
jb 0x14001ea48
lea rdi, [rcx + 0x23]
mov qword [rbp + 0x30], rdi
lea rbx, [rbp + 0x20]
cmp rdx, 8
cmovae rbx, qword [rbp + 0x20]
lea rcx, [rbx + rcx*2]
mov r8d, 0x46
lea rdx, [0x14002af70]
call sub.VCRUNTIME140.dll_memmove
mov word [rbx + rdi*2], r15w
lea rax, [rbp + 0x20]
jmp 0x14001ea66
mov qword [rsp + 0x20], 0x23
lea r9, [0x14002af70]
mov edx, 0x23
lea rcx, [rbp + 0x20]
call fcn.140001680
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x50], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 7
mov word [rax], r15w
mov rdx, qword [rbp + 0x38]
cmp rdx, 8
jb 0x14001eac8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001eac3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001eac3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
mov qword [rbp + 0x30], r15
mov qword [rbp + 0x38], 7
mov word [rbp + 0x20], r15w
mov rdx, qword [rbp + 0x58]
cmp rdx, 8
jb 0x14001eb1c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001eb17
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001eb17
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
mov qword [rbp + 0x50], r15
mov qword [rbp + 0x58], 7
mov word [rbp + 0x40], r15w
mov rdx, qword [rsp + 0x78]
cmp rdx, 8
jb 0x14001eb72
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001eb6d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001eb6d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x78], 7
mov word [rsp + 0x60], r15w
mov r12d, 0x1e8
mov qword [rsp + 0x30], r12
mov rdx, qword [rbp - 0x28]
cmp rdx, 8
jb 0x14001ebd4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001ebcf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001ebcf
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
lea rdx, [rbp - 0x60]
cmp qword [rbp - 0x48], 8
cmovae rdx, qword [rbp - 0x60]
mov r9d, 4
lea r8, [0x14002b098]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 7
jne 0x14001ecb2
xor r9d, r9d
xor r8d, r8d
lea edx, [rax - 5]
mov rcx, qword [r14 + 0x50]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rdx, qword [rbp - 0x48]
cmp rdx, 8
jb 0x14001ec53
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001ec4e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001ece9
call fcn.140022b54
mov qword [rbp - 0x50], r15
mov qword [rbp - 0x48], 7
mov word [rbp - 0x60], r15w
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14001f194
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001eca8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001eca8
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
jmp 0x14001f194
mov rdx, qword [rbp - 0x48]
cmp rdx, 8
jb 0x14001ecf6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001ecf0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001ecf0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
nop
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14001ed3b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001ed36
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001ed36
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
lea rcx, [r14 + 0xf8]
call fcn.14001af90
test eax, eax
setne dl
mov byte [r14 + 0x180], dl
test eax, eax
je 0x14001ed71
cmp qword [r14 + 0x140], 0x10000
jae 0x14001ed71
lea rcx, [r14 + 0xf8]
call fcn.14001b380
nop
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x78], 7
mov word [rsp + 0x60], r15w
mov rsi, qword [rsp + 0x30]
bts esi, 9
mov dword [rsp + 0x30], esi
mov rdx, qword [rbp + 0x70]
add rdx, 0xf
lea rcx, [rsp + 0x60]
call fcn.1400013d0
lea rdx, [rbp + 0x60]
lea rcx, [rsp + 0x60]
call fcn.1400015f0
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x78]
mov rax, rdx
sub rax, rcx
cmp rax, 0xf
jb 0x14001edfd
lea rdi, [rcx + 0xf]
mov qword [rsp + 0x70], rdi
lea rbx, [rsp + 0x60]
cmp rdx, 8
cmovae rbx, qword [rsp + 0x60]
lea rcx, [rbx + rcx*2]
mov r8d, 0x1e
lea rdx, str.TrainerBGM.mid
call sub.VCRUNTIME140.dll_memmove
mov word [rbx + rdi*2], r15w
jmp 0x14001ee1c
mov qword [rsp + 0x20], 0xf
lea r9, str.TrainerBGM.mid
mov edx, 0xf
lea rcx, [rsp + 0x60]
call fcn.140001680
lea rbx, [r14 + 0x3d8]
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.1400020a0
btr esi, 9
mov rdx, qword [rsp + 0x78]
cmp rdx, 8
jb 0x14001ee79
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001ee74
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001ee74
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
mov rcx, rbx
cmp qword [rbx + 0x18], 8
jb 0x14001ee86
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x14001eeaf
cmp qword [rbx + 0x18], 8
jb 0x14001ee9b
mov rbx, qword [rbx]
mov r8, rbx
lea rdx, [0x14002b0c8]
mov ecx, 0xa7
call fcn.140008940
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], 7
mov word [rsp + 0x40], r15w
mov r8d, 0x12
lea rdx, str.TrainerErrorStatus
lea rcx, [rsp + 0x40]
call fcn.1400022e0
nop
lea rdx, [rsp + 0x40]
mov rcx, qword [r14 + 0xe0]
call fcn.14001cd20
mov ebx, eax
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14001ef33
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001ef2e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001ef2e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], 7
mov word [rsp + 0x40], r15w
lea rcx, [rsp + 0x40]
test ebx, ebx
jle 0x14001efc0
mov r8d, 0xb
lea rdx, str.OnLoadMusic
call fcn.1400022e0
nop
xor r8d, r8d
lea rdx, [rsp + 0x40]
mov rcx, qword [r14 + 0xe0]
call fcn.14001cc10
nop
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14001f02e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f029
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001f029
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov r8d, 0x12
lea rdx, str.TrainerErrorStatus
call fcn.1400022e0
nop
lea r8d, [rbx + 1]
lea rdx, [rsp + 0x40]
mov rcx, qword [r14 + 0xe0]
call fcn.14001cec0
nop
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14001f02e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f029
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001f029
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
cmp byte [r14 + 0x180], 0
jne 0x14001f084
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], 7
mov word [rsp + 0x40], r15w
mov r8d, 0xb
lea rdx, str.OnLoadMusic
lea rcx, [rsp + 0x40]
call fcn.1400022e0
nop
or esi, 2
mov dword [rsp + 0x30], esi
lea rdx, [rsp + 0x40]
mov rcx, qword [r14 + 0xe0]
call fcn.14001c940
test al, al
je 0x14001f084
mov bl, 1
jmp 0x14001f086
xor bl, bl
test sil, 2
je 0x14001f0d1
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14001f0d1
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f0cc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001f0cc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
test bl, bl
je 0x14001f0df
mov dl, 1
mov rcx, r14
call fcn.14001f2b0
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], 7
mov word [rsp + 0x40], r15w
mov r8d, 0x12
lea rdx, str.TrainerErrorStatus
lea rcx, [rsp + 0x40]
call fcn.1400022e0
nop
xor r8d, r8d
lea rdx, [rsp + 0x40]
mov rcx, qword [r14 + 0xe0]
call fcn.14001cec0
nop
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x14001f165
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f160
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001f160
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
xor r9d, r9d
mov edx, 0x2710
lea r8d, [r9 + 0xa]
mov rcx, qword [r14 + 0x50]
call qword [sym.imp.USER32.dll_SetTimer]
xor r9d, r9d
mov edx, 0x2711
mov r8d, 0xc8
mov rcx, qword [r14 + 0x50]
call qword [sym.imp.USER32.dll_SetTimer]
nop
mov rdx, qword [rbp - 8]
cmp rdx, 8
jb 0x14001f1d7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f1d2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001f1d2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
mov qword [rbp - 0x10], r15
mov qword [rbp - 8], 7
mov word [rbp - 0x20], r15w
mov rdx, qword [rbp + 0x78]
cmp rdx, 8
jb 0x14001f22b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f226
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001f226
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
mov qword [rbp + 0x70], r15
mov qword [rbp + 0x78], 7
mov word [rbp + 0x60], r15w
mov rdx, qword [rbp + 0x18]
cmp rdx, 8
jb 0x14001f27f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f27a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14001f27a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140022b54
mov rcx, qword [rbp + 0xa0]
xor rcx, rsp
call fcn.140022b30
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