Function at 0x14003bd70
Capabilities:
Create directory

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5e8]
sub rsp, 0x6c0
mov qword [rsp + 0x28], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x1402922b8]
xor rax, rsp
mov qword [rbp + 0x5b0], rax
cmp word [rcx], 0
je 0x14003c137
mov rdx, rcx
lea rcx, [rsp + 0x30]
call fcn.140038fa0
nop
movsx rbx, byte [rsp + 0x47]
mov r8, rbx
movzx eax, bl
shr al, 7
mov rdx, qword [rsp + 0x38]
and al, 1
je 0x14003bde5
mov rcx, rdx
jmp 0x14003bded
mov ecx, 0xb
sub rcx, r8
mov r15, qword [rsp + 0x30]
test rcx, rcx
je 0x14003be31
test al, al
je 0x14003be01
lea rcx, [r15 + rdx*2]
jmp 0x14003be0d
lea rax, [r8 + r8]
lea rcx, [rsp + 0x46]
sub rcx, rax
movzx eax, word [rcx - 2]
cmp ax, 0x5c
je 0x14003be21
cmp ax, 0x2f
je 0x14003be21
xor eax, eax
jmp 0x14003be26
mov eax, 1
test al, al
je 0x14003be31
mov eax, 1
jmp 0x14003be33
xor eax, eax
test al, al
jne 0x14003be59
mov edx, 1
lea r8d, [rdx + 0x5b]
lea rcx, [rsp + 0x30]
call fcn.140043ed0
movzx ebx, byte [rsp + 0x47]
mov rdx, qword [rsp + 0x38]
mov r15, qword [rsp + 0x30]
mov byte [rsp + 0x20], 1
movsx rax, bl
movzx esi, al
shr sil, 7
and sil, 1
je 0x14003be75
lea rdx, [r15 + rdx*2]
jmp 0x14003be80
add rax, rax
lea rdx, [rsp + 0x46]
sub rdx, rax
lea rcx, [rsp + 0x30]
test sil, sil
cmovne rcx, r15
mov r8d, 1
call fcn.14003e660
mov r14, rax
xor r12d, r12d
movabs rdi, 0x200000000801
lea rax, [rsp + 0x30]
test sil, sil
cmovne rax, r15
mov rcx, r14
sub rcx, rax
sar rcx, 1
inc ecx
cmp ecx, 0x100
jae 0x14003c07b
lea rdx, [rsp + 0x30]
test sil, sil
cmovne rdx, r15
mov r8d, ecx
lea rcx, [rbp + 0x190]
call fcn.14004d210
movzx eax, word [rbp + 0x190]
test ax, ax
je 0x14003bf25
lea r8, [rbp + 0x160]
xor edx, edx
lea rcx, [rbp + 0x190]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesExW]
test eax, eax
je 0x14003bf1e
mov eax, dword [rbp + 0x160]
cmp eax, 0xffffffff
je 0x14003bf1e
test al, 0x10
jne 0x14003bfaa
movzx eax, word [rbp + 0x190]
lea rbx, [rbp + 0x190]
test ax, ax
je 0x14003c076
lea rcx, [rbp + 0x190]
call fcn.14004d300
mov r8, rax
movzx eax, word [rbp + rax*2 + 0x18e]
add eax, 0xffffffd1
cmp eax, 0x2d
ja 0x14003bf63
cdqe
bt rdi, rax
jae 0x14003bf63
mov eax, 1
jmp 0x14003bf65
xor eax, eax
test al, al
je 0x14003bf83
lea rdx, [rbp + 0x190]
lea rcx, [rbp + 0x3a0]
call fcn.14004d210
lea rbx, [rbp + 0x3a0]
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x14003bfa3
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x14003c076
test r12, r12
cmove r12, r14
movsx r13, byte [rsp + 0x47]
movzx esi, r13b
shr sil, 7
mov r15, qword [rsp + 0x30]
and sil, 1
je 0x14003bfce
mov rax, qword [rsp + 0x38]
lea rbx, [r15 + rax*2]
jmp 0x14003bfde
lea rax, [r13*2]
lea rbx, [rsp + 0x46]
sub rbx, rax
cmp rbx, qword [0x14029cad0]
jne 0x14003bffb
mov rbx, r14
cmp word [r14], 0
je 0x14003bffb
add rbx, 2
cmp word [rbx], 0
jne 0x14003bff1
mov edi, 2
mov rcx, r14
cmp r14, rbx
jae 0x14003c049
test edi, edi
jle 0x14003c020
mov rdx, rbx
call fcn.14003d630
mov rcx, rax
dec edi
cmp rax, rbx
jb 0x14003c008
test edi, edi
jne 0x14003c049
cmp rcx, r14
jbe 0x14003c049
lea rdx, [rcx - 2]
movzx eax, word [rdx]
cmp ax, 0x5c
je 0x14003c03e
cmp ax, 0x2f
je 0x14003c03e
xor eax, eax
jmp 0x14003c043
mov eax, 1
test al, al
cmovne rcx, rdx
mov r14, rcx
test sil, sil
je 0x14003c05c
mov rax, qword [rsp + 0x38]
lea rdx, [r15 + rax*2]
jmp 0x14003c06c
lea rax, [r13*2]
lea rdx, [rsp + 0x46]
sub rdx, rax
cmp rcx, rdx
je 0x14003c0f0
jmp 0x14003be9d
mov r15, qword [rsp + 0x30]
movzx ebx, byte [rsp + 0x47]
mov byte [rsp + 0x20], 0
test r12, r12
je 0x14003c0f0
shr bl, 7
and bl, 1
lea rax, [rsp + 0x30]
cmovne rax, r15
sub r12, rax
sar r12, 1
lea r8, [r12 + 1]
lea rdx, [rsp + 0x30]
test bl, bl
cmovne rdx, r15
lea rcx, [rbp + 0x190]
call fcn.14004d210
mov r8d, 0x104
lea rdx, [rbp + 0x190]
lea rcx, [rbp + 0x3a0]
call fcn.14004d210
lea rcx, [rbp + 0x3a0]
call fcn.14004d300
mov rdx, rax
lea rcx, [rbp + 0x3a0]
call fcn.140041c40
nop
movzx eax, byte [rsp + 0x47]
shr al, 7
test al, 1
je 0x14003c130
mov r8, qword [rsp + 0x40]
movabs rax, 0x7fffffffffffffff
and r8, rax
inc r8
mov rdx, qword [rsp + 0x30]
test rdx, rdx
je 0x14003c130
cmp rdx, qword [rsp + 0x58]
je 0x14003c130
mov rcx, qword [rsp + 0x48]
mov rax, qword [rcx]
add r8, r8
call qword [rax + 0x18]
movzx eax, byte [rsp + 0x20]
jmp 0x14003c139
xor al, al
mov rcx, qword [rbp + 0x5b0]
xor rcx, rsp
call fcn.14012fd90
lea r11, [rsp + 0x6c0]
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