Function at 0x140004bd0
Capabilities:
Create directory

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x10], rdx
push rbp
push rdi
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x20
mov rbx, rcx
call fcn.1400014b8
xor r14d, r14d
mov rcx, rax
test rax, rax
je 0x140004e8c
mov rax, qword [rax]
call qword [rax + 0x18]
lea r8d, [r14 + 1]
mov edx, 0x104
lea rcx, [rax + 0x18]
mov qword [rbp + 0x38], rcx
mov eax, dword [rcx - 0xc]
sub r8d, dword [rcx - 8]
sub eax, edx
or r8d, eax
jge 0x140004c37
lea rcx, [rbp + 0x38]
call fcn.140001b34
mov rcx, qword [rbp + 0x38]
mov rdx, rbx
call qword [sym.imp.SHLWAPI.dll_PathCanonicalizeW]
test eax, eax
mov rax, qword [rbp + 0x38]
sete bl
test rax, rax
jne 0x140004c53
mov ecx, r14d
jmp 0x140004c6e
movsxd rdx, dword [rax - 0xc]
mov rcx, rax
call fcn.1400313e8
mov rcx, rax
test eax, eax
js 0x140004e97
mov rax, qword [rbp + 0x38]
cmp ecx, dword [rax - 0xc]
jg 0x140004e97
mov dword [rax - 0x10], ecx
or r15d, 0xffffffff
mov rax, qword [rbp + 0x38]
mov ecx, ecx
mov word [rax + rcx*2], r14w
test bl, bl
je 0x140004c97
mov edi, 0x80004005
jmp 0x140004e52
mov rax, qword [rbp + 0x38]
mov dil, r14b
mov rdx, rax
mov ecx, r14d
mov r13d, 0x5c
movsxd rbx, dword [rax - 0x10]
test ebx, ebx
jle 0x140004d1d
movsxd rsi, ecx
cmp word [rdx + rsi*2], 0x2f
jne 0x140004cf0
test dil, dil
jne 0x140004ce7
mov ecx, dword [rax - 0xc]
mov edx, 1
sub edx, dword [rax - 8]
sub ecx, ebx
or edx, ecx
mov dil, 1
jge 0x140004ce4
mov edx, ebx
lea rcx, [rbp + 0x38]
call fcn.140001b34
mov rax, qword [rbp + 0x38]
mov rdx, rax
mov word [rdx + rsi*2], r13w
mov rax, qword [rbp + 0x38]
lea rcx, [rsi*2 + 2]
sar rcx, 1
cmp ecx, ebx
jl 0x140004cb2
test dil, dil
je 0x140004d1d
cmp ebx, dword [rax - 0xc]
jg 0x140004e97
mov dword [rax - 0x10], ebx
mov rax, qword [rbp + 0x38]
mov word [rax + rbx*2], r14w
mov rax, qword [rbp + 0x38]
cmp dword [rax - 0x10], r14d
jle 0x140004d3d
movzx ecx, word [rax]
mov rdi, rax
jmp 0x140004d38
cmp cx, r13w
je 0x140004d4b
add rdi, 2
movzx ecx, word [rdi]
test cx, cx
jne 0x140004d2b
mov edi, r15d
cmp edi, r15d
jne 0x140004d58
mov r8d, dword [rax - 0x10]
jmp 0x140004d5b
test rdi, rdi
je 0x140004d3d
sub rdi, rax
sar rdi, 1
jmp 0x140004d40
mov r8d, edi
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0x38]
call fcn.140005820
mov rbx, qword [rbp + 0x40]
mov rcx, rbx
call fcn.1400069c4
test al, al
jne 0x140004d99
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x140004d99
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x50
je 0x140004d99
cmp eax, 0xb7
jne 0x140004e07
cmp edi, r15d
je 0x140004e33
lea ecx, [rdi + 1]
test ecx, ecx
js 0x140004dbe
mov rax, qword [rbp + 0x38]
cmp ecx, dword [rax - 0x10]
jge 0x140004dbe
movsxd rcx, ecx
lea rdi, [rax + rcx*2]
test rdi, rdi
jne 0x140004df0
mov edi, r15d
lea rdx, [rbx - 0x18]
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
add eax, r15d
test eax, eax
jg 0x140004ddd
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov rax, qword [rbp + 0x38]
jmp 0x140004d40
cmp cx, r13w
je 0x140004dfa
add rdi, 2
movzx ecx, word [rdi]
test cx, cx
jne 0x140004de6
jmp 0x140004dbe
test rdi, rdi
je 0x140004dbe
sub rdi, rax
sar rdi, 1
jmp 0x140004dc1
movzx edi, ax
lea rdx, [rbx - 0x18]
or edi, 0x80070000
test eax, eax
cmovle edi, eax
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
add eax, r15d
test eax, eax
jg 0x140004e52
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
jmp 0x140004e52
lea rdx, [rbx - 0x18]
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
add eax, r15d
test eax, eax
jg 0x140004e4f
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
mov edi, r14d
mov rdx, qword [rbp + 0x38]
mov ecx, r15d
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], ecx
add ecx, r15d
test ecx, ecx
jg 0x140004e73
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [r8 + 8]
mov rbx, qword [rsp + 0x50]
mov eax, edi
mov rsi, qword [rsp + 0x68]
add rsp, 0x20
pop r15
pop r14
pop r13
pop rdi
pop rbp
ret
mov ecx, 0x80004005
call fcn.140001834
int3
mov ecx, 0x80070057
call fcn.140001834
int3