Function at 0x14001cd80
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 - 0xc0]
sub rsp, 0x1c0
mov rax, qword [0x14008d030]
xor rax, rsp
mov qword [rbp + 0xb0], rax
mov r14, rcx
xor r12d, r12d
mov dword [rsp + 0x40], r12d
mov qword [rbp - 0x10], r12
mov qword [rbp], r12
mov qword [rbp + 8], 7
mov word [rbp - 0x10], r12w
lea rcx, [rbp - 0x50]
call fcn.140010690
nop
movabs rax, 0x7ffffffffffffffe
mov rcx, qword [rbp - 0x40]
sub rax, rcx
cmp rax, 0x14
jb 0x14001dd63
lea r9, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae r9, qword [rbp - 0x50]
mov qword [rsp + 0x30], 0x14
lea rax, str.TrainerSettings.ini
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp + 0x30]
call fcn.140001620
mov rdx, qword [rbp + 8]
cmp rdx, 8
jb 0x14001ce6e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001ce69
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001dddb
call fcn.140044b00
movups xmm0, xmmword [rbp + 0x30]
movups xmmword [rbp - 0x10], xmm0
movups xmm1, xmmword [rbp + 0x40]
movups xmmword [rbp], xmm1
lea rcx, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae rcx, qword [rbp - 0x50]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x14001ceaa
lea rcx, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae rcx, qword [rbp - 0x50]
call fcn.14004f27c
mov ecx, 0x20
call fcn.140044b08
mov rbx, rax
mov qword [rsp + 0x40], rax
mov qword [rax], r12
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 7
mov word [rax], r12w
lea rax, [rbp - 0x10]
cmp rbx, rax
je 0x14001cef3
lea rdx, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae rdx, qword [rbp - 0x10]
mov r8, qword [rbp]
mov rcx, rbx
call fcn.1400023c0
nop
mov qword [r14 + 0xc0], rbx
mov ecx, 0x28
call fcn.140044b08
mov rbx, rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x70], r12
mov qword [rbp - 0x80], r12
mov qword [rbp - 0x78], 7
mov word [rsp + 0x70], r12w
mov r8d, 7
lea rdx, str.Trainer
lea rcx, [rsp + 0x70]
call fcn.1400023c0
nop
mov dword [rsp + 0x40], 5
mov rdi, qword [r14 + 0xc0]
lea rcx, [rbx + 8]
mov qword [rcx], r12
mov qword [rcx + 0x10], r12
mov qword [rcx + 0x18], 7
mov word [rcx], r12w
lea rax, [rsp + 0x70]
cmp rcx, rax
je 0x14001cf84
lea rdx, [rsp + 0x70]
cmp qword [rbp - 0x78], 8
cmovae rdx, qword [rsp + 0x70]
mov r8, qword [rbp - 0x80]
call fcn.1400023c0
mov qword [rbx], rdi
mov qword [r14 + 0xc8], rbx
mov rdx, qword [rbp - 0x78]
cmp rdx, 8
jb 0x14001cfcf
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001cfca
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001dddb
call fcn.140044b00
lea rcx, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae rcx, qword [rbp - 0x10]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x14001d3c6
lea rdx, [0x14007e213]
mov ecx, 2
call fcn.14004f584
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], 0xf
mov byte [rbp - 0x70], 0
mov rbx, 0xffffffffffffffff
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14001d020
mov rdx, rax
lea rcx, [rbp - 0x70]
call fcn.140003070
nop
mov qword [rsp + 0x70], r12
mov qword [rbp - 0x80], r12
mov qword [rbp - 0x78], 7
mov word [rsp + 0x70], r12w
lea rcx, [rbp - 0x70]
cmp qword [rbp - 0x58], 0x10
setae r15b
mov rdi, qword [rbp - 0x70]
cmovae rcx, rdi
mov qword [rsp + 0x20], 7
lea r9, str.Chinese
xor r8d, r8d
mov rsi, qword [rbp - 0x60]
mov rdx, rsi
call fcn.140009fa0
cmp rax, 0xffffffffffffffff
je 0x14001d0d3
lea rcx, [rbp - 0x70]
test r15b, r15b
cmovne rcx, rdi
mov qword [rsp + 0x20], 0xb
lea r9, str.Traditional
xor r8d, r8d
mov rdx, rsi
call fcn.140009fa0
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 0x14001d0c4
mov r8, rbx
jmp 0x14001d0e0
mov r8d, 7
lea rdx, str.English
lea rcx, [rsp + 0x70]
call fcn.1400023c0
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], 7
mov r8d, 8
lea rdx, str.Language
lea rcx, [rsp + 0x50]
call fcn.1400023c0
mov rcx, qword [r14 + 0xc8]
mov r9, qword [rcx]
cmp qword [r9 + 0x18], 8
jb 0x14001d128
mov r9, qword [r9]
lea r8, [rsp + 0x70]
cmp qword [rbp - 0x78], 8
cmovae r8, qword [rsp + 0x70]
lea rdx, [rsp + 0x50]
cmp qword [rsp + 0x68], 8
cmovae rdx, qword [rsp + 0x50]
add rcx, 8
cmp qword [rcx + 0x18], 8
jb 0x14001d157
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x14001d19f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d19a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001dd69
call fcn.140044b00
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], 7
mov word [rsp + 0x50], r12w
mov r8d, 0xa
lea rdx, str.ShowAVHint
lea rcx, [rsp + 0x50]
call fcn.1400023c0
nop
mov r8b, 1
lea rdx, [rsp + 0x50]
mov rcx, qword [r14 + 0xc8]
call fcn.14001c400
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x14001d227
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d222
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001dd6f
call fcn.140044b00
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], 7
mov word [rsp + 0x50], r12w
mov r8d, 0xb
lea rdx, str.OnLoadMusic
lea rcx, [rsp + 0x50]
call fcn.1400023c0
nop
mov r8b, 1
lea rdx, [rsp + 0x50]
mov rcx, qword [r14 + 0xc8]
call fcn.14001c400
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x14001d2af
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d2aa
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001dd75
call fcn.140044b00
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], 7
mov word [rsp + 0x50], r12w
mov r8d, 0x11
lea rdx, str.IgnoreGameVersion
lea rcx, [rsp + 0x50]
call fcn.1400023c0
nop
xor r8d, r8d
lea rdx, [rsp + 0x50]
mov rcx, qword [r14 + 0xc8]
call fcn.14001c400
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x14001d338
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d332
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001dd7b
call fcn.140044b00
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 8
jb 0x14001d379
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d374
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001dd81
call fcn.140044b00
mov qword [rbp - 0x80], r12
mov qword [rbp - 0x78], 7
mov word [rsp + 0x70], r12w
mov rdx, qword [rbp - 0x58]
cmp rdx, 0x10
jb 0x14001d3c6
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d3c1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001dd87
call fcn.140044b00
mov qword [rbp + 0x10], r12
mov qword [rbp + 0x20], r12
mov qword [rbp + 0x28], 7
mov word [rbp + 0x10], r12w
mov r8d, 7
lea rdx, str.ENGLISH
lea rcx, [rbp + 0x10]
call fcn.1400023c0
nop
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], 7
mov word [rbp - 0x70], r12w
mov r8d, 8
lea rdx, str.Language
lea rcx, [rbp - 0x70]
call fcn.1400023c0
nop
mov rcx, qword [r14 + 0xc8]
lea r8, [rcx + 8]
lea rax, [rbp + 0x10]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x70]
lea rdx, [rbp - 0x30]
mov rcx, qword [rcx]
call fcn.14001bf50
mov r13d, 0xc
mov rdx, qword [rbp - 0x58]
cmp rdx, 8
jb 0x14001d488
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d483
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001dd8d
call fcn.140044b00
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], 7
mov word [rbp - 0x70], r12w
mov rdx, qword [rbp + 0x28]
cmp rdx, 8
jb 0x14001d4d9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d4d4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001dd93
call fcn.140044b00
mov qword [rbp + 0x20], r12
mov qword [rbp + 0x28], 7
mov word [rbp + 0x10], r12w
lea rsi, [rbp - 0x30]
mov r15, qword [rbp - 0x30]
mov rax, qword [rbp - 0x18]
mov r12, qword [rbp - 0x20]
cmp rax, 8
jb 0x14001d50c
lea rbx, [r15 + r12*2]
mov rdi, r15
mov rsi, r15
jmp 0x14001d518
lea rcx, [rbp - 0x30]
lea rbx, [rcx + r12*2]
lea rdi, [rbp - 0x30]
cmp rdi, rbx
je 0x14001d541
sub rsi, rdi
movzx ecx, word [rdi]
call fcn.14004eb8c
mov word [rsi + rdi], ax
add rdi, 2
cmp rdi, rbx
jne 0x14001d520
mov rax, qword [rbp - 0x18]
mov r12, qword [rbp - 0x20]
mov r15, qword [rbp - 0x30]
lea rcx, [rbp - 0x30]
cmp rax, 8
setae bl
cmovae rcx, r15
mov qword [rsp + 0x20], 0xa
lea r9, str.SIMPLIFIED
xor r8d, r8d
mov rdx, r12
call fcn.140011190
cmp rax, 0xffffffffffffffff
je 0x14001d577
xor esi, esi
mov edx, esi
jmp 0x14001d5a9
lea rcx, [rbp - 0x30]
test bl, bl
cmovne rcx, r15
mov qword [rsp + 0x20], 0xb
lea r9, str.TRADITIONAL
xor r8d, r8d
mov rdx, r12
call fcn.140011190
xor esi, esi
mov edx, esi
cmp rax, 0xffffffffffffffff
sete dl
inc edx
mov rcx, r14
call fcn.14001e740
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x68], 7
mov word [rsp + 0x50], si
mov r8d, 0xa
lea rdx, str.ShowAVHint
lea rcx, [rsp + 0x50]
call fcn.1400023c0
nop
lea rdx, [rsp + 0x50]
mov rcx, qword [r14 + 0xc8]
call fcn.14001c120
movzx ebx, al
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x14001d637
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d632
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001dd99
call fcn.140044b00
test bl, bl
je 0x14001da6c
mov qword [rsp + 0x70], rsi
mov qword [rbp - 0x80], rsi
mov qword [rbp - 0x78], 7
mov word [rsp + 0x70], si
xor r8d, r8d
lea rdx, [0x14007ebc8]
lea rcx, [rsp + 0x70]
call fcn.1400023c0
nop
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x68], 7
mov r8d, 0xb
lea rdx, str.360Tray.exe
lea rcx, [rsp + 0x50]
call fcn.1400023c0
lea rcx, [rsp + 0x50]
call fcn.14001b2e0
test eax, eax
je 0x14001d6b9
mov r8d, 0xb
lea rdx, str.360Tray.exe
lea rcx, [rsp + 0x70]
call fcn.1400023c0
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x68], 7
mov r8d, 0xb
lea rdx, str.360Safe.exe
lea rcx, [rsp + 0x50]
call fcn.1400023c0
lea rcx, [rsp + 0x50]
call fcn.14001b2e0
test eax, eax
je 0x14001d708
mov r8d, 0xb
lea rdx, str.360Safe.exe
lea rcx, [rsp + 0x70]
call fcn.1400023c0
mov rcx, qword [rbp - 0x80]
movabs rdi, 0x7ffffffffffffffe
test rcx, rcx
je 0x14001da29
mov rax, rdi
sub rax, rcx
cmp rax, 0xf
jb 0x14001dd9f
lea rax, [rsp + 0x70]
cmp qword [rbp - 0x78], 8
cmovae rax, qword [rsp + 0x70]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0xf
lea r9, [0x140081dc8]
lea rcx, [rbp + 0x30]
call fcn.140001620
mov r13d, 0x1c
lea r8, [0x140081db0]
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x90]
call fcn.1400012c0
nop
lea r8, [0x140081d60]
mov rdx, rax
lea rcx, [rbp + 0x70]
call fcn.1400012c0
nop
lea r8, [0x140081d10]
mov rdx, rax
lea rcx, [rbp + 0x50]
call fcn.1400012c0
nop
lea r8, [0x140081cc0]
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.1400012c0
nop
mov rdx, qword [rbp + 0x68]
cmp rdx, 8
jb 0x14001d7fd
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d7f8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001dda5
call fcn.140044b00
mov qword [rbp + 0x60], rsi
mov qword [rbp + 0x68], 7
mov word [rbp + 0x50], si
mov rdx, qword [rbp + 0x88]
cmp rdx, 8
jb 0x14001d850
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d84b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001ddab
call fcn.140044b00
mov qword [rbp + 0x80], rsi
mov qword [rbp + 0x88], 7
mov word [rbp + 0x70], si
mov rdx, qword [rbp + 0xa8]
cmp rdx, 8
jb 0x14001d8ac
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d8a7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001ddb1
call fcn.140044b00
mov qword [rbp + 0xa0], rsi
mov qword [rbp + 0xa8], 7
mov word [rbp + 0x90], si
mov rdx, qword [rbp + 0x48]
cmp rdx, 8
jb 0x14001d905
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d900
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001ddb7
call fcn.140044b00
lea rdx, [rsp + 0x50]
cmp qword [rsp + 0x68], 8
cmovae rdx, qword [rsp + 0x50]
mov r9d, 4
lea r8, [0x140081de8]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 7
jne 0x14001d9e6
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 [rsp + 0x68]
cmp rdx, 8
jb 0x14001d989
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d984
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001ddc3
call fcn.140044b00
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x68], 7
mov word [rsp + 0x50], si
mov rdx, qword [rbp - 0x78]
cmp rdx, 8
jb 0x14001dc51
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d9dc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001ddbd
call fcn.140044b00
jmp 0x14001dc51
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x14001da29
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001da23
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001ddc3
call fcn.140044b00
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 8
jb 0x14001da76
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001da65
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001ddcf
call fcn.140044b00
jmp 0x14001da76
movabs rdi, 0x7ffffffffffffffe
lea rcx, [r14 + 0xe0]
call fcn.14001ae40
test eax, eax
setne dl
mov byte [r14 + 0x168], dl
test eax, eax
je 0x14001daab
cmp qword [r14 + 0x128], 0x10000
jae 0x14001daab
lea rcx, [r14 + 0xe0]
call fcn.14001b230
mov rax, qword [rbp - 0x40]
sub rdi, rax
cmp rdi, 0xf
jb 0x14001ddc9
lea r9, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae r9, qword [rbp - 0x50]
mov qword [rsp + 0x30], 0xf
lea rcx, str.TrainerBGM.mid
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x30]
call fcn.140001620
or r13d, 0x20
lea rbx, [r14 + 0x3c0]
lea rdx, [rbp + 0x30]
mov rcx, rbx
call fcn.1400062a0
mov rdx, qword [rbp + 0x48]
cmp rdx, 8
jb 0x14001db44
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001db3f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001ddcf
call fcn.140044b00
mov rcx, rbx
cmp qword [rbx + 0x18], 8
jb 0x14001db51
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x14001db6e
cmp qword [rbx + 0x18], 8
jb 0x14001db66
mov rbx, qword [rbx]
mov r8, rbx
call fcn.140010270
cmp byte [r14 + 0x168], 0
jne 0x14001dbca
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x60], rsi
mov qword [rsp + 0x68], 7
mov word [rsp + 0x50], si
mov r8d, 0xb
lea rdx, str.OnLoadMusic
lea rcx, [rsp + 0x50]
call fcn.1400023c0
nop
or r13d, 2
mov dword [rsp + 0x40], r13d
lea rdx, [rsp + 0x50]
mov rcx, qword [r14 + 0xc8]
call fcn.14001c120
test al, al
je 0x14001dbca
mov bl, 1
jmp 0x14001dbcc
xor bl, bl
test r13b, 2
je 0x14001dc14
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x14001dc14
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001dc0f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001ddd5
call fcn.140044b00
test bl, bl
je 0x14001dc22
mov dl, 1
mov rcx, r14
call fcn.14001ddf0
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 - 0x18]
cmp rdx, 8
jb 0x14001dc91
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001dc8c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001dddb
call fcn.140044b00
mov qword [rbp - 0x20], rsi
mov qword [rbp - 0x18], 7
mov word [rbp - 0x30], si
mov rdx, qword [rbp - 0x38]
cmp rdx, 8
jb 0x14001dce1
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001dcdc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001dde1
call fcn.140044b00
mov qword [rbp - 0x40], rsi
mov qword [rbp - 0x38], 7
mov word [rbp - 0x50], si
mov rdx, qword [rbp + 8]
cmp rdx, 8
jb 0x14001dd2d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001dd28
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001dd5d
call fcn.140044b00
mov rcx, qword [rbp + 0xb0]
xor rcx, rsp
call fcn.140044ae0
lea r11, [rsp + 0x1c0]
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.14004b20c
nop
call fcn.140002ee0
nop
call fcn.14004b20c
int3
call fcn.14004b20c
int3
call fcn.14004b20c
int3
call fcn.14004b20c
nop
call fcn.14004b20c
nop
call fcn.14004b20c
nop
call fcn.14004b20c
nop
call fcn.14004b20c
int3
call fcn.14004b20c
nop
call fcn.140002ee0
nop
call fcn.14004b20c
nop
call fcn.14004b20c
nop
call fcn.14004b20c
nop
call fcn.14004b20c
nop
call fcn.14004b20c
nop
call fcn.14004b20c
nop
call fcn.140002ee0
int3
call fcn.14004b20c
int3
call fcn.14004b20c
nop
call fcn.14004b20c
nop
call fcn.14004b20c
int3