Function at 0x180014a60
Capabilities:
Create directory

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x4010]
mov eax, 0x4110
call fcn.18008f2e0
sub rsp, rax
movaps xmmword [rsp + 0x4100], xmm6
movaps xmmword [rsp + 0x40f0], xmm7
mov rax, qword [0x1800a3d18]
xor rax, rsp
mov qword [rbp + 0x3fe0], rax
xor edi, edi
mov qword [rsp + 0x48], r8
mov rbx, qword [rsp + 0x48]
lea esi, [rcx - 0xb]
mov r13, qword [rsp + 0x48]
mov r11, r9
mov qword [rsp + 0x68], r9
mov r10, rdx
mov r9, qword [rsp + 0x48]
mov r12d, ecx
mov qword [rsp + 0x50], rdx
mov r14d, ecx
mov rdx, qword [rsp + 0x48]
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x58], rdx
mov dword [rsp + 0x7c], ecx
mov qword [rbp - 0x70], rdi
mov dword [rbp - 0x68], 0xffffffff
mov qword [rbp - 0x64], rdi
mov qword [rbp - 0x5c], rdi
mov qword [rbp - 0x54], rdi
mov dword [rsp + 0x78], ecx
mov dword [rsp + 0x38], esi
cmp ecx, esi
jbe 0x1800150d2
movsd xmm7, qword [0x18009bec8]
lea esi, [rcx - 0xd8]
movsd xmm6, qword [0x18009be90]
lea r8, [0x180000000]
mov eax, dword [rsp + 0x38]
lea r15, str.false
mov dword [rsp + 0x30], esi
lea r12, [0x1800165c0]
cmp esi, 0x28
ja case.default.0x180014b64
movzx eax, byte [r8 + rsi + 0x15410]
mov ecx, dword [r8 + rax*4 + 0x153e0]
add rcx, r8
jmp rcx
mov rax, qword [rbx]
mov qword [rbp - 0x70], rax
mov eax, dword [rbx + 8]
mov dword [rbp - 0x68], eax
jmp case.0x180014b64.9
inc dword [0x1800a3e40]
lea rax, [rbp - 0x20]
xor r8d, r8d
mov dword [rsp + 0x30], 0xc
lea r9, str._Z6selectmml
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x30]
lea edx, [r8 + 0x23]
call fcn.180063010
cmp eax, 0xc
je 0x180014e85
mov ebx, 0x125
nop dword [rax]
cmp ebx, 0x125
je 0x180014be5
cmp ebx, 0x1cc
je 0x180014bde
cmp ebx, 0x273
je 0x1800153a5
jmp 0x180014c2f
mov qword [rsp + 0x60], r15
jmp 0x180014c2f
xor r8d, r8d
mov dword [rsp + 0x30], 0xc
lea rax, [rbp - 0x20]
lea r9, str._cpLengthEOT
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x30]
lea edx, [r8 + 0x23]
call fcn.180063010
movaps xmm2, xmm7
lea rcx, str._f____f_n
movq r8, xmm7
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movq rdx, xmm1
call fcn.18008e9c0
add ebx, 0xa7
cmp ebx, 0x31a
jb 0x180014bc0
mov r9, qword [rsp + 0x40]
lea r8, [0x180000000]
mov r10, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
mov r11, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x70]
jmp case.0x180014b64.9
mov edi, 0xb1
nop word [rax + rax]
mov eax, edi
sub eax, 0xb1
je 0x180014d35
cmp eax, 1
jne 0x180014d3b
xor r8d, r8d
mov dword [rsp + 0x30], 4
lea rax, [rbp - 0x20]
lea r9, [0x1800979e0]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x30]
lea edx, [r8 + 0x23]
call fcn.180063010
test eax, eax
je 0x180014d3b
mov ebx, 0x11e
nop dword [rax]
cmp ebx, 0x11e
je 0x180014cd6
cmp ebx, 0x1d4
je 0x1800153a5
jmp 0x180014d25
xor r8d, r8d
mov dword [rsp + 0x30], 4
lea rax, [rbp - 0x20]
lea r9, [0x1800979e0]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x30]
lea edx, [r8 + 0x23]
call fcn.180063010
xorps xmm2, xmm2
lea rcx, str._f____f_n
movq r8, xmm2
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movq rdx, xmm1
call fcn.18008e9c0
mov qword [rsp + 0x60], r15
add ebx, 0xb6
cmp ebx, 0x28a
jb 0x180014cc0
jmp 0x180014d3b
inc dword [0x1800a3e40]
inc edi
cmp edi, 0xb3
jb 0x180014c70
mov edi, IUnknown_GetWindow
nop
cmp edi, 0xaa
je 0x180014e0f
cmp edi, 0x4664
jne 0x180014e15
xor r8d, r8d
mov dword [rsp + 0x30], 8
lea rax, [rbp - 0x20]
lea r9, str.AAAA____
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x30]
lea edx, [r8 + 0x23]
call fcn.180063010
cmp eax, 4
je 0x180014e15
mov ebx, 0x7c
nop dword [rax + rax]
mov eax, ebx
sub eax, 0x7a
je 0x1800153a5
sub eax, 1
je 0x180014e01
cmp eax, 1
jne 0x180014e06
xor r8d, r8d
mov dword [rsp + 0x30], 8
lea rax, [rbp - 0x20]
lea r9, str.AAAA____
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x30]
lea edx, [r8 + 0x23]
call fcn.180063010
movaps xmm2, xmm6
lea rcx, str._f____f_n
movq r8, xmm6
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movq rdx, xmm1
call fcn.18008e9c0
jmp 0x180014e06
mov qword [rsp + 0x60], r15
dec ebx
cmp ebx, 0x79
ja 0x180014da0
jmp 0x180014e15
inc dword [0x1800a3e40]
add edi, 0x45ba
cmp edi, 0x8b74
jbe 0x180014d50
mov r9, qword [rsp + 0x40]
lea r8, [0x180000000]
mov r10, qword [rsp + 0x50]
xor edi, edi
mov rdx, qword [rsp + 0x58]
mov r11, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x70]
jmp case.0x180014b64.9
mov rbx, r10
mov qword [rbp - 0x5c], r12
mov qword [rsp + 0x70], rbx
jmp case.0x180014b64.9
inc dword [0x1800a3e40]
lea r9, [rbp - 0x20]
lea r8, str.Cesanta
mov edx, 0xba
xor ecx, ecx
call fcn.180028ac0
test eax, eax
je 0x180015150
mov r9, qword [rsp + 0x40]
lea r8, [0x180000000]
mov r10, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
mov r11, qword [rsp + 0x68]
jmp case.0x180014b64.9
mov r13, rdi
jmp case.0x180014b64.9
lea rax, str.test
xor r12d, r12d
mov qword [rbp - 0x40], rax
lea r14, [rbp - 0x30]
lea rax, str.ASL.Allocator
mov qword [rbp - 0x38], rax
movaps xmm0, xmmword [rbp - 0x40]
movdqa xmmword [rbp - 0x30], xmm0
mov r15d, 0x33
nop dword [rax]
mov eax, r15d
sub eax, 0x33
je 0x180014fff
sub eax, 1
je 0x180014fc3
cmp eax, 1
jne 0x18001503b
mov esi, 0x76
cmp esi, 0x76
jne 0x180014faf
mov rdi, qword [r14]
lea r8, [rbp - 0x20]
inc dword [0x1800a3e40]
mov rax, rdi
sub r8, rdi
nop
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x180014f33
inc rax
test ecx, ecx
jne 0x180014f20
test edx, edx
je 0x180014faf
mov ebx, 0x10d
nop dword [rax]
mov eax, ebx
sub eax, 0x10c
je 0x1800153a5
cmp eax, 1
jne 0x180014fa5
lea rdx, [rbp - 0x20]
mov rax, rdi
sub rdx, rdi
nop dword [rax]
movzx ecx, byte [rax]
cmp cl, byte [rax + rdx]
jne 0x180014f73
inc rax
test cl, cl
jne 0x180014f60
xor eax, eax
jmp 0x180014f78
sbb eax, eax
or eax, 1
movd xmm1, eax
lea rcx, str._f____f_n
cvtdq2pd xmm1, xmm1
xorps xmm2, xmm2
movq rdx, xmm1
movq r8, xmm2
call fcn.18008e9c0
lea rax, str.false
mov qword [rsp + 0x60], rax
dec ebx
cmp ebx, 0x10b
ja 0x180014f40
add esi, 0xaa
cmp esi, 0x120
jb 0x180014f03
jmp 0x18001503b
lea rcx, [rbp + 0x1fe0]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x180014fd1
xor r8d, r8d
mov dword [rbp - 0x80], eax
lea rax, [rbp - 0x20]
lea r9, [rbp + 0x1fe0]
mov qword [rsp + 0x20], rax
lea rcx, [rbp - 0x80]
lea edx, [r8 + 0x23]
call fcn.180063010
jmp 0x18001503b
mov r9, qword [r14]
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [r9 + rax], 0
jne 0x180015010
lea r8, [rbp - 0x78]
mov dword [rbp - 0x78], eax
mov edx, 0xe8
mov qword [rsp + 0x20], 0
lea rcx, [rbp + 0x1fe0]
call fcn.180064370
inc r15d
cmp r15d, 0x36
jb 0x180014ee0
inc r12d
add r14, 8
cmp r12d, 2
jb 0x180014ed3
mov esi, dword [rsp + 0x30]
lea r15, str.false
mov r14d, dword [rsp + 0x78]
lea r8, [0x180000000]
mov r9, qword [rsp + 0x40]
lea r12, [0x1800165c0]
mov r10, qword [rsp + 0x50]
xor edi, edi
mov rdx, qword [rsp + 0x58]
mov r11, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x70]
jmp case.0x180014b64.9
mov qword [rsp + 0x60], rdi
jmp case.0x180014b64.9
mov r9, rdi
mov qword [rsp + 0x40], rdi
jmp case.0x180014b64.9
mov rdx, r11
mov qword [rsp + 0x58], rdx
mov eax, dword [rsp + 0x38]
dec r14d
dec esi
mov dword [rsp + 0x78], r14d
mov dword [rsp + 0x30], esi
cmp r14d, eax
ja 0x180014b47
mov r12d, dword [rsp + 0x7c]
mov r8, qword [rsp + 0x48]
lea r15d, [r12 + 0x570]
cmp r12d, r15d
jae 0x1800153a5
mov r14d, dword [rsp + 0x7c]
lea rcx, str.success
nop
cmp r12d, 0x174
ja 0x18001533f
je 0x18001526b
mov eax, r12d
sub eax, 0xdc
je 0x1800153a5
sub eax, 0xc
je 0x180015335
sub eax, 0xc
je 0x180015276
sub eax, 0xc
je 0x180015158
cmp eax, 0x5c
jne 0x180015373
lea r9, [rbp - 0x70]
xor r8d, r8d
lea edx, [rax - 0x2a]
xor ecx, ecx
call fcn.18002b550
mov dword [rsp + 0x60], edi
jmp 0x180015373
mov rax, r15
jmp 0x1800153aa
mov rcx, qword [r8]
mov esi, edi
test rcx, rcx
je 0x180015373
mov rdi, r10
nop dword [rax]
cmp byte [rdi], 0xdd
jne 0x18001521d
movsxd rax, esi
sub rcx, rax
cmp rcx, 6
jbe 0x18001521d
cmp dword [rax + r10 + 2], 0x4f25000
jne 0x18001521d
mov ebx, 0x80
nop dword [rax]
mov eax, ebx
sub eax, 0x80
je 0x180015200
sub eax, 1
je 0x1800151ed
cmp eax, 1
jne 0x180015209
test r9, r9
je 0x18001526b
movsxd rdi, esi
mov ebx, 0xbb
mov rsi, qword [rsp + 0x50]
nop dword [rax]
mov eax, ebx
sub eax, 0xbb
je 0x18001524a
sub eax, 0x42
je 0x180015236
cmp eax, 0x42
jne 0x18001525c
mov r11, qword [rsp + 0x68]
mov qword [r11], r13
jmp 0x18001525c
mov rcx, r13
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r9, rax
mov qword [rsp + 0x40], rax
jmp 0x180015209
movzx r13d, byte [rdi + 1]
sub r13, 4
inc ebx
cmp ebx, 0x83
jb 0x1800151a0
mov r10, qword [rsp + 0x50]
mov r8, qword [rsp + 0x48]
mov rcx, qword [r8]
inc esi
movsxd rax, esi
inc rdi
cmp rax, rcx
jb 0x180015170
jmp 0x180015373
lea rdx, [rsi + 6]
mov r8, r13
add rdx, rdi
mov rcx, r9
call sub.VCRUNTIME140.dll_memcpy
jmp 0x180015257
mov r8, r13
xor edx, edx
mov rcx, r9
call sub.VCRUNTIME140.dll_memset
mov r9, qword [rsp + 0x40]
add ebx, 0x42
cmp ebx, 0x181
jb 0x1800151d0
mov r12d, 0x174
jmp 0x180015373
cmp dword [r8], 0x71
jne 0x180015373
mov ebx, 0xa2
cmp ebx, 0xa2
je 0x18001530a
cmp ebx, 0x5bc2
je 0x1800152d9
cmp ebx, 0xb6e2
je 0x180015303
cmp ebx, 0x11202
je 0x1800152d1
cmp ebx, 0x16d22
jne 0x180015310
test r14d, r14d
lea r9, str.fail
lea r8, [0x180093b38]
mov edx, 1
cmovne r9, rcx
mov rcx, r10
call fcn.18008e5a0
jmp 0x180015310
mov r12d, 0xf4
jmp 0x180015310
mov rcx, qword [rdx + 8]
mov rax, rdi
test rcx, rcx
je 0x180015310
mov rdx, qword [rdx]
cmp byte [rax + rdx], 0x78
jne 0x180015300
inc rax
cmp rax, rcx
jb 0x1800152e8
jmp 0x180015310
mov r14d, edi
mov ebx, 0xb6e2
jmp 0x180015310
mov r14d, 1
mov r10, qword [rsp + 0x50]
lea rcx, str.success
mov rdx, qword [rsp + 0x58]
add ebx, 0x5b20
cmp ebx, 0x1c7a0
jbe 0x180015285
jmp 0x180015373
lea rax, [rbx + 0xc]
mov qword [rbp - 0x64], rax
jmp 0x180015373
mov eax, r12d
sub eax, 0x180
je 0x180015366
sub eax, 0x50
je 0x1800153a5
sub eax, 0x18
je 0x18001535f
sub eax, 0xc
je 0x1800153a5
cmp eax, 0x68
je 0x1800153a5
jmp 0x180015373
mov qword [rsp + 0x60], r9
jmp 0x180015373
mov rcx, r10
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__mkdir]
mov dword [rsp + 0x60], eax
mov r9, qword [rsp + 0x40]
lea rcx, str.success
mov r10, qword [rsp + 0x50]
add r12d, 0x74
mov rdx, qword [rsp + 0x58]
mov edi, 0
mov r8, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x70]
cmp r12d, r15d
jb 0x1800150f0
mov rax, qword [rsp + 0x60]
mov rcx, qword [rbp + 0x3fe0]
xor rcx, rsp
call fcn.18008f350
lea r11, [rsp + 0x4110]
mov rbx, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret