Function at 0x14006d130
Capabilities:
Create directory

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
mov rbp, rsp
sub rsp, 0x70
mov qword [rbp - 8], 0xfffffffffffffffe
mov qword [rsp + 0xa0], rbx
movzx ebx, dl
mov rdi, rcx
lea rdx, [rbp - 0x50]
call fcn.14006ef50
nop
test bl, bl
je 0x14006d360
lea rdx, [rbp - 0x50]
lea rcx, [rbp - 0x38]
call fcn.140025270
nop
mov rdx, rax
lea rcx, [rbp - 0x18]
call fcn.140025a60
mov rdx, qword [rbp - 0x50]
mov rcx, qword [rax]
mov qword [rbp - 0x50], rcx
mov qword [rax], rdx
mov rcx, qword [rbp - 0x18]
or edi, 0xffffffff
lock dec dword [rcx]
jne 0x14006d1a5
mov rcx, qword [rbp - 0x18]
call fcn.14000ade0
nop
mov rax, qword [rbp - 0x38]
lock dec dword [rax]
jne 0x14006d1b7
mov rcx, qword [rbp - 0x38]
call fcn.14000ade0
mov r12d, edi
lea rax, [0x140d7ded8]
mov qword [rbp - 0x10], rax
mov r8d, 1
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x50]
call fcn.140009de0
test al, al
je 0x14006d242
xor esi, esi
mov rax, qword [rbp - 0x50]
cmp dword [rax + 8], esi
jle 0x14006d242
mov r13d, esi
nop word [rax + rax]
mov rcx, qword [rax + 0x10]
movzx ebx, word [r13 + rcx]
lea rcx, [rbp + 0x40]
call fcn.140024da0
cmp bx, word [rax]
jne 0x14006d219
inc esi
add r13, 2
mov rax, qword [rbp - 0x50]
cmp esi, dword [rax + 8]
jl 0x14006d1f0
jmp 0x14006d242
mov r12d, esi
cmp esi, 0xffffffff
je 0x14006d242
lea rcx, [rbp + 0x48]
call fcn.140024da0
mov r9d, 1
mov r8d, esi
movzx edx, word [rax]
lea rcx, [rbp - 0x50]
call fcn.140009d50
mov r12d, eax
lea rcx, [rbp - 0x40]
call fcn.140024da0
lea r8d, [r12 + 1]
mov r9d, 1
movzx edx, word [rax]
lea rcx, [rbp - 0x50]
call fcn.140009d50
mov ebx, eax
cmp eax, 0xffffffff
jne 0x14006d279
mov rax, qword [rbp - 0x50]
mov ebx, dword [rax + 8]
cmp r12d, ebx
je 0x14006d34a
test ebx, ebx
je 0x14006d2fc
mov r8d, ebx
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x50]
call fcn.14000c770
nop
mov byte [rbp + 0x38], 0
lea rdx, [rbp + 0x38]
lea rcx, [rbp - 0x48]
call fcn.14006b230
test al, al
jne 0x14006d2ea
cmp byte [rbp + 0x38], al
jne 0x14006d335
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x20]
call fcn.1400701b0
nop
mov rcx, rax
call fcn.14000b320
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
setne sil
mov rax, qword [rbp - 0x20]
lock dec dword [rax]
jne 0x14006d2e5
mov rcx, qword [rbp - 0x20]
call fcn.14000ade0
test sil, sil
je 0x14006d309
mov rax, qword [rbp - 0x48]
lock dec dword [rax]
jne 0x14006d2fc
mov rcx, qword [rbp - 0x48]
call fcn.14000ade0
mov r12d, ebx
cmp ebx, 0xffffffff
je 0x14006d34a
jmp 0x14006d242
mov rax, qword [rbp - 0x48]
lock dec dword [rax]
jne 0x14006d31c
mov rcx, qword [rbp - 0x48]
call fcn.14000ade0
nop
mov rax, qword [rbp - 0x50]
lock dec dword [rax]
jne 0x14006d32e
mov rcx, qword [rbp - 0x50]
call fcn.14000ade0
xor al, al
jmp 0x14006d3cd
mov rax, qword [rbp - 0x48]
lock dec dword [rax]
jne 0x14006d348
mov rcx, qword [rbp - 0x48]
call fcn.14000ade0
nop
jmp 0x14006d31c
mov rax, qword [rbp - 0x50]
lock dec dword [rax]
jne 0x14006d35c
mov rcx, qword [rbp - 0x50]
call fcn.14000ade0
mov al, 1
jmp 0x14006d3cd
lea rdx, [rbp - 0x28]
mov rcx, rdi
call fcn.14006ef50
nop
mov rdx, rax
lea rcx, [rbp - 0x30]
call fcn.1400701b0
nop
mov rcx, rax
call fcn.14000b320
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
setne bl
mov rcx, qword [rbp - 0x30]
lock dec dword [rcx]
jne 0x14006d3a5
mov rcx, qword [rbp - 0x30]
call fcn.14000ade0
nop
mov rax, qword [rbp - 0x28]
lock dec dword [rax]
jne 0x14006d3b8
mov rcx, qword [rbp - 0x28]
call fcn.14000ade0
nop
mov rcx, qword [rbp - 0x50]
lock dec dword [rcx]
jne 0x14006d3ca
mov rcx, qword [rbp - 0x50]
call fcn.14000ade0
movzx eax, bl
mov rbx, qword [rsp + 0xa0]
add rsp, 0x70
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret