Function at 0x18000a0f0
Capabilities:
Create directory

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
lea rbp, [rax - 0x5f]
sub rsp, 0xc0
mov r12, rcx
movaps xmmword [rax - 0x38], xmm6
xor r13d, r13d
movaps xmmword [rax - 0x48], xmm7
mov rdx, rcx
mov qword [rbp - 0x29], r13
lea rcx, [rbp - 9]
mov qword [rbp - 0x19], r13
lea r8, [0x180051020]
mov qword [rbp - 0x11], 0xf
call fcn.180001100
mov r10, rax
mov rcx, qword [rax + 0x18]
mov rdx, qword [rax + 0x10]
mov rax, rcx
sub rax, rdx
cmp rax, 4
jb 0x18000a16d
lea rax, [rdx + 4]
mov qword [r10 + 0x10], rax
mov rax, r10
cmp rcx, 0x10
jb 0x18000a15f
mov rax, qword [r10]
mov dword [rax + rdx], 0x6766632e
mov byte [rax + rdx + 4], r13b
jmp 0x18000a18f
xor r8d, r8d
mov qword [rsp + 0x20], 4
lea r9, str..cfg
mov rcx, r10
lea edx, [r8 + 4]
call fcn.1800016a0
mov r10, rax
movups xmm6, xmmword [r10]
movups xmm7, xmmword [r10 + 0x10]
mov qword [r10 + 0x10], r13
mov qword [r10 + 0x18], 0xf
mov byte [r10], r13b
mov rdx, qword [rbp - 0x11]
cmp rdx, 0x10
jb 0x18000a1e2
mov rcx, qword [rbp - 0x29]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000a1dd
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000a5bc
call fcn.18000dcdc
mov rdx, qword [rbp + 0xf]
movups xmmword [rbp - 0x29], xmm6
movups xmmword [rbp - 0x19], xmm7
cmp rdx, 0x10
jb 0x18000a225
mov rcx, qword [rbp - 9]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000a220
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000a5bc
call fcn.18000dcdc
cmp qword [r12 + 0x18], 0x10
mov rcx, r12
mov qword [rsp + 0xf0], rdi
mov qword [rsp + 0xb8], r14
jb 0x18000a244
mov rcx, qword [r12]
mov qword [rsp + 0xe0], rbx
xor edx, edx
mov qword [rsp + 0xe8], rsi
call qword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov rdi, qword [r12 + 0x20]
mov r14, qword [r12 + 0x28]
cmp rdi, r14
je 0x18000a3ba
nop
cmp qword [rbp - 0x11], 0x10
lea rsi, [rbp - 0x29]
mov rbx, qword [rdi]
lea r9, [rbp - 0x34]
cmovae rsi, qword [rbp - 0x29]
mov rax, qword [rbx + 0x40]
mov r8d, dword [rax]
test r8d, r8d
jns 0x18000a2e0
neg r8d
nop dword [rax]
nop dword [rax + rax]
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x18000a2a0
dec r9
mov byte [r9], 0x2d
jmp 0x18000a30a
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x18000a2e0
lea rdx, [rbp - 0x34]
mov qword [rbp + 7], r13
mov rax, r13
mov ecx, 0xf
mov qword [rbp - 9], rax
mov qword [rbp + 0xf], rcx
cmp r9, rdx
je 0x18000a342
lea r8, [rbp - 0x34]
mov rdx, r9
sub r8, r9
lea rcx, [rbp - 9]
call fcn.18000b6f0
mov rcx, qword [rbp + 0xf]
mov rax, qword [rbp - 9]
cmp rcx, 0x10
lea r8, [rbp - 9]
lea rdx, [rbx + 0x20]
cmovae r8, rax
cmp qword [rdx + 0x18], 0x10
jb 0x18000a35c
mov rdx, qword [rdx]
cmp qword [rbx + 0x18], 0x10
jb 0x18000a366
mov rbx, qword [rbx]
mov r9, rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov rdx, qword [rbp + 0xf]
cmp rdx, 0x10
jb 0x18000a3ad
mov rcx, qword [rbp - 9]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000a3a8
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000a5c8
call fcn.18000dcdc
add rdi, 8
cmp rdi, r14
jne 0x18000a270
mov rsi, qword [r12 + 0x50]
mov r14, qword [r12 + 0x58]
mov qword [rsp + 0xb0], r15
cmp rsi, r14
je 0x18000a4d2
nop word [rax + rax]
mov rdi, qword [rsi]
lea r15, [rbp - 0x29]
cmp qword [rbp - 0x11], 0x10
lea rcx, [0x18003d490]
cmovae r15, qword [rbp - 0x29]
mov rax, qword [rdi + 0x40]
movss xmm6, dword [rax]
cvtps2pd xmm6, xmm6
movaps xmm1, xmm6
movq rdx, xmm6
call fcn.18000d4e0
movsxd rbx, eax
lea rcx, [rbp - 0x49]
mov rdx, rbx
mov qword [rbp - 0x49], r13
xor r8d, r8d
mov qword [rbp - 0x39], r13
mov qword [rbp - 0x31], 0xf
call fcn.18000b850
cmp qword [rbp - 0x31], 0x10
lea rcx, [rbp - 0x49]
lea rdx, [rbx + 1]
movaps xmm3, xmm6
cmovae rcx, qword [rbp - 0x49]
lea r8, [0x18003d490]
movq r9, xmm6
call fcn.18000d540
cmp qword [rbp - 0x31], 0x10
lea r8, [rbp - 0x49]
lea rdx, [rdi + 0x20]
cmovae r8, qword [rbp - 0x49]
cmp qword [rdx + 0x18], 0x10
jb 0x18000a474
mov rdx, qword [rdx]
cmp qword [rdi + 0x18], 0x10
jb 0x18000a47e
mov rdi, qword [rdi]
mov r9, r15
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov rdx, qword [rbp - 0x31]
cmp rdx, 0x10
jb 0x18000a4c5
mov rcx, qword [rbp - 0x49]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000a4c0
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000a5b6
call fcn.18000dcdc
add rsi, 8
cmp rsi, r14
jne 0x18000a3e0
mov rdi, qword [r12 + 0x40]
mov rbx, qword [r12 + 0x38]
cmp rbx, rdi
je 0x18000a53a
lea rsi, [0x18003d660]
nop dword [rax + rax]
cmp qword [rbp - 0x11], 0x10
lea r9, [rbp - 0x29]
mov rcx, qword [rbx]
lea r8, [0x18003d664]
cmovae r9, qword [rbp - 0x29]
lea rdx, [rcx + 0x20]
mov rax, qword [rcx + 0x40]
cmp byte [rax], r13b
cmovne r8, rsi
cmp qword [rdx + 0x18], 0x10
jb 0x18000a521
mov rdx, qword [rdx]
cmp qword [rcx + 0x18], 0x10
jb 0x18000a52b
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
add rbx, 8
cmp rbx, rdi
jne 0x18000a4f0
mov rdx, qword [rbp - 0x11]
cmp rdx, 0x10
jb 0x18000a571
mov rcx, qword [rbp - 0x29]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000a56c
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000a5c2
call fcn.18000dcdc
mov r15, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0xe8]
mov rbx, qword [rsp + 0xe0]
mov rdi, qword [rsp + 0xf0]
mov r14, qword [rsp + 0xb8]
movaps xmm6, xmmword [rsp + 0xa0]
movaps xmm7, xmmword [rsp + 0x90]
add rsp, 0xc0
pop r13
pop r12
pop rbp
ret
call fcn.1800185cc
int3
call fcn.1800185cc
int3
call fcn.1800185cc
int3
call fcn.1800185cc
int3