Function at 0x1800167b0
Capabilities:
Create directory

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xb0
mov r14, rcx
xor r12d, r12d
mov qword [rbp + 0x77], r12
mov qword [rbp + 0x6f], r12
mov qword [rbp + 0x7f], r12
xorps xmm0, xmm0
movups xmmword [rbp - 9], xmm0
movups xmmword [rbp + 7], xmm0
movups xmmword [rbp + 0x17], xmm0
mov esi, r12d
mov r15d, r12d
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
jne 0x18001695e
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 3
jne 0x18001695e
xorps xmm0, xmm0
movups xmmword [rbp - 0x49], xmm0
mov qword [rbp - 0x39], r12
mov qword [rbp - 0x31], r12
mov r8, 0xffffffffffffffff
inc r8
cmp byte [r14 + r8], sil
jne 0x180016823
mov rdx, r14
lea rcx, [rbp - 0x49]
call fcn.180008030
nop
mov rbx, r12
mov rdx, qword [rbp - 0x39]
mov rcx, qword [rbp - 0x31]
mov r9, qword [rbp - 0x49]
test rdx, rdx
je 0x180016927
nop dword [rax]
nop word [rax + rax]
lea rax, [rbp - 0x49]
cmp rcx, 0x10
setae r10b
cmovae rax, r9
cmp byte [rax + rbx], 0x5c
jne 0x18001691b
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x19], r12
mov qword [rbp - 0x11], r12
mov r8, rbx
cmp rdx, rbx
cmovb r8, rdx
lea rdx, [rbp - 0x49]
test r10b, r10b
cmovne rdx, r9
lea rcx, [rbp - 0x29]
call fcn.180008030
lea rcx, [rbp - 0x29]
cmp qword [rbp - 0x11], 0x10
cmovae rcx, qword [rbp - 0x29]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov edi, eax
mov rdx, qword [rbp - 0x11]
cmp rdx, 0x10
jb 0x1800168fa
inc rdx
mov rcx, qword [rbp - 0x29]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800168f5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180016acf
call fcn.180019f00
test edi, edi
jne 0x18001690f
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
cmp eax, 3
je 0x180016a93
mov rcx, qword [rbp - 0x31]
mov rdx, qword [rbp - 0x39]
mov r9, qword [rbp - 0x49]
inc rbx
cmp rbx, rdx
jb 0x180016860
cmp rcx, 0x10
jb 0x18001695e
lea rdx, [rcx + 1]
mov rax, r9
cmp rdx, 0x1000
jb 0x180016956
add rdx, 0x27
mov r9, qword [r9 - 8]
sub rax, r9
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180016ad5
mov rcx, r9
call fcn.180019f00
xor edx, edx
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
jne 0x18001697e
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
cmp eax, 3
je 0x180016a47
lea rax, [rbp + 0x7f]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r12
lea rax, [rbp + 0x77]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r12
xor r9d, r9d
lea edx, [r9 + 1]
lea r8d, [r9 + 4]
mov rcx, r14
call qword [sym.imp.ADVAPI32.dll_GetNamedSecurityInfoA]
mov edi, eax
test eax, eax
jne 0x180016a47
lea ecx, [rax + 9]
call fcn.18001a394
mov rsi, rax
mov word [rax + 7], 0x65
mov dword [rax], 0x72657645
mov word [rax + 4], 0x6f79
mov byte [rax + 6], 0x6e
mov dword [rbp - 9], 0x1f01ff
mov dword [rbp - 5], 1
mov dword [rbp - 1], 3
mov dword [rbp + 0x13], 1
mov qword [rbp + 0x1f], rax
lea r9, [rbp + 0x6f]
mov r8, qword [rbp + 0x77]
lea rdx, [rbp - 9]
lea ecx, [rdi + 1]
call qword [sym.imp.ADVAPI32.dll_SetEntriesInAclA]
mov edi, eax
test eax, eax
jne 0x180016a47
mov rcx, r14
call fcn.180013020
mov r15, rax
mov qword [rsp + 0x30], r12
mov rcx, qword [rbp + 0x6f]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], r12
xor r9d, r9d
lea edx, [rdi + 1]
lea r8d, [rdi + 4]
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_SetNamedSecurityInfoA]
mov edi, eax
mov rcx, qword [rbp + 0x7f]
test rcx, rcx
je 0x180016a56
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov rcx, qword [rbp + 0x6f]
test rcx, rcx
je 0x180016a65
call qword [sym.imp.KERNEL32.dll_LocalFree]
test rsi, rsi
je 0x180016a72
mov rcx, rsi
call fcn.180019f00
test r15, r15
je 0x180016a7f
mov rcx, r15
call fcn.180019f00
mov eax, edi
add rsp, 0xb0
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov rdx, qword [rbp - 0x31]
cmp rdx, 0x10
jb 0x180016a47
inc rdx
mov rcx, qword [rbp - 0x49]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180016ac5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180016ad5
call fcn.180019f00
jmp 0x180016a47
call fcn.180020f44
nop
call fcn.180020f44
int3