Function at 0x140037d88
Capabilities:
Create directory

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0x100
mov rax, qword [0x1400d9448]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov r14, rcx
mov qword [rsp + 0x48], rcx
lea rcx, [rbp + 7]
call fcn.140040674
nop
lea r8, str.TrainerSettings.ini
lea rdx, [rbp + 7]
lea rcx, [rbp - 0x19]
call fcn.140002918
mov rbx, rax
lea r13, [r14 + 0x578]
xor edi, edi
cmp r13, rax
je 0x140037e18
mov rcx, r13
call fcn.140021660
movups xmm0, xmmword [rbx]
movups xmmword [r13], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [r13 + 0x10], xmm1
mov qword [rbx + 0x10], rdi
mov qword [rbx + 0x18], 7
mov word [rbx], di
lea rcx, [rbp - 0x19]
call fcn.140021660
lea rcx, [rbp + 7]
call fcn.140040b7c
test al, al
jne 0x140037e41
lea rcx, [rbp + 7]
cmp qword [rbp + 0x1f], 8
cmovae rcx, qword [rbp + 7]
call fcn.140084390
mov rdx, r13
lea rcx, [rsp + 0x38]
call fcn.140030644
lea rbx, [r14 + 0x688]
mov r15d, 0x20
cmp rbx, rax
je 0x140037e84
mov rcx, qword [rax]
mov qword [rax], rdi
mov rsi, qword [rbx]
mov qword [rbx], rcx
test rsi, rsi
je 0x140037e84
mov rcx, rsi
call fcn.140021660
mov edx, r15d
mov rcx, rsi
call fcn.1400716ac
mov rsi, qword [rsp + 0x38]
test rsi, rsi
je 0x140037ea1
mov rcx, rsi
call fcn.140021660
mov rdx, r15
mov rcx, rsi
call fcn.1400716ac
mov rax, qword [rbx]
mov qword [rsp + 0x38], rax
lea r8, str.Trainer
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x40]
call fcn.1400306b0
lea r12, [r14 + 0x690]
mov esi, 0x28
cmp r12, rax
je 0x140037ef6
mov rcx, qword [rax]
mov qword [rax], rdi
mov rbx, qword [r12]
mov qword [r12], rcx
test rbx, rbx
je 0x140037ef6
lea rcx, [rbx + 8]
call fcn.140021660
mov edx, esi
mov rcx, rbx
call fcn.1400716ac
mov rbx, qword [rsp + 0x40]
test rbx, rbx
je 0x140037f14
lea rcx, [rbx + 8]
call fcn.140021660
mov rdx, rsi
mov rcx, rbx
call fcn.1400716ac
mov rcx, r13
call fcn.140040b7c
mov r14d, 0x1000
test al, al
jne 0x1400381a9
lea rdx, [0x14009fb38]
mov ecx, 2
call fcn.140084698
mov qword [rbp - 0x79], rdi
mov qword [rbp - 0x69], rdi
mov qword [rbp - 0x61], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rbp - 0x79], dil
mov rdx, rax
lea rcx, [rbp - 0x79]
call fcn.140021b50
nop
mov qword [rbp - 0x59], rdi
mov qword [rbp - 0x49], rdi
mov qword [rbp - 0x41], 7
mov word [rbp - 0x59], di
lea rsi, [rbp - 0x79]
cmp qword [rbp - 0x61], 0x10
setae byte [rsp + 0x30]
cmovae rsi, qword [rbp - 0x79]
mov r14, qword [rbp - 0x69]
cmp r14, 7
jb 0x140037fd9
lea r15, [rsi + r14]
lea r8, [r15 - 6]
sub r8, rsi
mov rcx, rsi
jmp 0x140037fc7
mov r8d, 7
lea rdx, str.Chinese
mov rcx, rbx
call fcn.1400739e0
test eax, eax
je 0x140038116
inc rbx
lea r8, [r15 - 6]
sub r8, rbx
mov rcx, rbx
mov edx, 0x43
call fcn.140073960
test rax, rax
mov rbx, rax
jne 0x140037f9d
lea rdx, str.English
lea rcx, [rbp - 0x59]
call fcn.140021bc0
mov rbx, qword [r12]
mov qword [rbp - 0x19], rdi
mov qword [rbp - 9], rdi
mov esi, 7
mov qword [rbp - 1], rsi
lea rdx, str.Language
lea rcx, [rbp - 0x19]
call fcn.140021bc0
mov r9, qword [rbx]
cmp qword [r9 + 0x18], 8
jb 0x14003801b
mov r9, qword [r9]
lea r8, [rbp - 0x59]
cmp qword [rbp - 0x41], 8
cmovae r8, qword [rbp - 0x59]
lea rdx, [rbp - 0x19]
cmp qword [rbp - 1], 8
cmovae rdx, qword [rbp - 0x19]
lea rcx, [rbx + 8]
cmp qword [rcx + 0x18], 8
jb 0x140038045
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov rdx, qword [rbp - 1]
mov r14d, 0x1000
cmp rdx, 8
jb 0x14003808e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, r14
jb 0x140038088
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400383c2
call fcn.1400716ac
nop
mov rdx, qword [rbp - 0x41]
cmp rdx, 8
jb 0x1400380ca
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, r14
jb 0x1400380c5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400383c8
call fcn.1400716ac
mov qword [rbp - 0x49], rdi
mov qword [rbp - 0x41], rsi
mov word [rbp - 0x59], di
mov rdx, qword [rbp - 0x61]
cmp rdx, 0x10
jb 0x1400381ae
inc rdx
mov rcx, qword [rbp - 0x79]
mov rax, rcx
cmp rdx, r14
jb 0x14003810c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400383ce
call fcn.1400716ac
jmp 0x1400381ae
sub rbx, rsi
cmp rbx, 0xffffffffffffffff
je 0x140037fd9
lea rsi, [rbp - 0x79]
cmp byte [rsp + 0x30], dil
cmovne rsi, qword [rbp - 0x79]
cmp r14, 0xb
jb 0x140038185
lea r8, [r14 - 0xa]
add r8, rsi
sub r8, rsi
mov r15d, 0x54
mov rcx, rsi
jmp 0x140038175
mov r8d, SafeArrayDestroy
lea rdx, str.Traditional
mov rcx, rbx
call fcn.1400739e0
test eax, eax
je 0x1400381a4
inc rbx
lea r8, [r14 - 0xa]
add r8, rsi
sub r8, rbx
mov rcx, rbx
mov edx, r15d
call fcn.140073960
test rax, rax
mov rbx, rax
jne 0x14003814c
or rbx, 0xffffffffffffffff
lea rax, str.Chinese_Traditional
lea rdx, str.Chinese_Simplified
cmp rbx, 0xffffffffffffffff
cmovne rdx, rax
jmp 0x140037fe0
sub rbx, rsi
jmp 0x140038189
mov esi, 7
mov rbx, qword [r12]
mov qword [rbp - 0x79], rdi
mov qword [rbp - 0x69], rdi
mov qword [rbp - 0x61], rsi
mov word [rbp - 0x79], di
lea rdx, str.ENGLISH
lea rcx, [rbp - 0x79]
call fcn.140021bc0
nop
mov qword [rbp - 0x59], rdi
mov qword [rbp - 0x49], rdi
mov qword [rbp - 0x41], rsi
mov word [rbp - 0x59], di
lea rdx, str.Language
lea rcx, [rbp - 0x59]
call fcn.140021bc0
nop
lea r8, [rbx + 8]
lea rax, [rbp - 0x79]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x59]
lea rdx, [rbp - 0x39]
mov rcx, qword [rbx]
call fcn.14003c210
nop
mov rdx, qword [rbp - 0x41]
cmp rdx, 8
jb 0x14003824e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, r14
jb 0x140038249
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400383d4
call fcn.1400716ac
mov qword [rbp - 0x49], rdi
mov qword [rbp - 0x41], rsi
mov word [rbp - 0x59], di
mov rdx, qword [rbp - 0x61]
cmp rdx, 8
jb 0x140038296
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x79]
mov rax, rcx
cmp rdx, r14
jb 0x140038291
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400383bc
call fcn.1400716ac
mov qword [rbp - 0x69], rdi
mov qword [rbp - 0x61], rsi
mov word [rbp - 0x79], di
lea r14, [rbp - 0x39]
mov rax, qword [rbp - 0x21]
cmp rax, 8
setae dl
mov rsi, qword [rbp - 0x39]
jb 0x1400382bf
mov rcx, rsi
mov r14, rsi
jmp 0x1400382c3
lea rcx, [rbp - 0x39]
mov r15, qword [rbp - 0x29]
lea r12, [rcx + r15*2]
lea rbx, [rbp - 0x39]
test dl, dl
cmovne rbx, rsi
cmp rbx, r12
je 0x1400382ff
sub r14, rbx
movzx ecx, word [rbx]
call fcn.14007844c
mov word [r14 + rbx], ax
add rbx, 2
cmp rbx, r12
jne 0x1400382dd
mov rax, qword [rbp - 0x21]
mov r15, qword [rbp - 0x29]
mov rsi, qword [rbp - 0x39]
lea rcx, [rbp - 0x39]
cmp rax, 8
setae bl
cmovae rcx, rsi
mov qword [rsp + 0x20], 0xa
lea r9, str.SIMPLIFIED
xor r8d, r8d
mov rdx, r15
call fcn.140025f38
cmp rax, 0xffffffffffffffff
jne 0x14003835e
lea rcx, [rbp - 0x39]
test bl, bl
cmovne rcx, rsi
mov qword [rsp + 0x20], SafeArrayDestroy
lea r9, str.TRADITIONAL
xor r8d, r8d
mov rdx, r15
call fcn.140025f38
cmp rax, 0xffffffffffffffff
sete dil
inc edi
mov edx, edi
lea rcx, [0x1400dba10]
call fcn.14002d694
mov r8, r13
mov edx, edi
mov rcx, qword [rsp + 0x48]
call fcn.140034f30
nop
lea rcx, [rbp - 0x39]
call fcn.140021660
nop
lea rcx, [rbp + 7]
call fcn.140021660
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.140071cb0
lea r11, [rsp + 0x100]
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.1400780a4
nop
call fcn.1400780a4
nop
call fcn.1400780a4
nop
call fcn.1400780a4
nop
call fcn.1400780a4
int3