Function at 0x1400ad9cc
Capabilities:
Create directory

Disassembly:
mov qword [rsp + 0x18], rbx
mov byte [rsp + 0x10], dl
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
xor ecx, ecx
mov al, dl
xor edx, edx
or r12, 0xffffffffffffffff
mov rdi, r9
mov byte [rbp - 0x40], 1
mov ebx, edx
mov r15d, edx
mov qword [rbp - 0x28], rdx
mov r14d, edx
mov qword [rbp - 0x30], rdx
mov esi, edx
mov qword [rbp - 0x38], rdx
mov r13d, edx
mov qword [rbp - 0x20], rdx
mov dword [rbp - 0x3c], edx
mov qword [rbp - 0x18], rcx
mov qword [rbp - 0x10], rcx
mov qword [rbp - 8], rcx
test al, al
je 0x1400adb38
test r8b, r8b
je 0x1400adb21
test r9, r9
jne 0x1400ada57
lea r8, [0x140009d68]
lea rcx, [0x140009d40]
mov edx, 0x80
call fcn.1400a8be8
mov rcx, qword [rbp + 0x40]
lea rdx, [rbp - 0x20]
call fcn.1400a926c
mov r13, qword [rbp - 0x20]
mov ebx, eax
test eax, eax
js 0x1400adbbe
lea r8, [rbp - 0x40]
mov rdx, r13
mov rcx, rdi
call fcn.1400b62f4
mov ebx, eax
test eax, eax
js 0x1400adbbe
mov rcx, rdi
cmp byte [rbp - 0x40], sil
jne 0x1400adad8
lea r8, [rbp - 0x30]
lea rdx, [rbp - 0x28]
call fcn.1400b6ee4
mov r15, qword [rbp - 0x28]
xor edi, edi
mov ebx, eax
test eax, eax
js 0x1400adacf
lea rdx, [rbp - 0x38]
xor r8d, r8d
mov rcx, r15
call fcn.1400a99e4
mov r14, qword [rbp - 0x30]
mov ebx, eax
test eax, eax
jns 0x1400adaec
mov rsi, qword [rbp - 0x38]
jmp 0x1400adb68
mov r14, qword [rbp - 0x30]
jmp 0x1400adb68
lea rdx, [rbp - 0x38]
xor r8d, r8d
call fcn.1400a99e4
xor edi, edi
mov ebx, eax
test eax, eax
js 0x1400adb18
mov rsi, qword [rbp - 0x38]
mov r8b, byte [rbp - 0x40]
mov rcx, qword [rbp + 0x40]
lea rax, [rbp - 0x3c]
lea r9, [rbp - 0x18]
mov rdx, rsi
mov qword [rsp + 0x20], rax
call fcn.1400b5e28
mov ebx, eax
test eax, eax
js 0x1400adb68
mov al, byte [rbp + 0x48]
jmp 0x1400adb3a
mov rsi, qword [rbp - 0x38]
jmp 0x1400adba4
lea rcx, [rbp - 0x18]
call fcn.1400b5dbc
xor edi, edi
mov ebx, eax
test eax, eax
js 0x1400adbf6
jmp 0x1400adb13
xor edi, edi
mov rcx, qword [rbp + 0x40]
neg al
lea rax, [rbp - 0x18]
sbb rdx, rdx
and rdx, rax
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x1400adb68
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, 0x80070000
test eax, eax
cmovle ebx, eax
test r15, r15
je 0x1400adb86
mov rcx, r12
inc rcx
cmp word [r15 + rcx*2], di
jne 0x1400adb70
add rcx, rcx
xor eax, eax
mov rdi, r15
rep stosb byte [rdi], al
xor edi, edi
test r14, r14
je 0x1400adba4
mov rcx, r12
inc rcx
cmp word [r14 + rcx*2], di
jne 0x1400adb8e
add rcx, rcx
xor eax, eax
mov rdi, r14
rep stosb byte [rdi], al
xor edi, edi
test rsi, rsi
je 0x1400adbbe
inc r12
cmp word [rsi + r12*2], di
jne 0x1400adba9
lea rcx, [r12 + r12]
mov rdi, rsi
xor eax, eax
rep stosb byte [rdi], al
test r13, r13
je 0x1400adbcc
mov rcx, r13
call qword [sym.imp.ole32.dll_CoTaskMemFree]
test r15, r15
je 0x1400adbda
mov rcx, r15
call qword [sym.imp.ole32.dll_CoTaskMemFree]
test r14, r14
je 0x1400adbe8
mov rcx, r14
call qword [sym.imp.ole32.dll_CoTaskMemFree]
test rsi, rsi
je 0x1400adbf6
mov rcx, rsi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov rcx, qword [rbp - 0x10]
test rcx, rcx
je 0x1400adc05
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov eax, ebx
mov rbx, qword [rsp + 0xc0]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret