Function at 0x1400f64e0
Capabilities:
Create directory

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x50
mov r8, rdx
mov rdx, rcx
lea rcx, [rsp + 0x20]
call fcn.1400d4800
mov rax, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
test rax, rax
je 0x1400f6580
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x38]
lea rdx, [rsp + 0x20]
call fcn.1400f10e0
mov rdi, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
test rdi, rdi
je 0x1400f6580
mov rcx, rdi
xor edx, edx
call sub.kernel32.dll_CreateDirectoryW
test eax, eax
je 0x1400f655c
test rsi, rsi
je 0x1400f6558
mov edx, 2
mov rcx, rdi
call fcn.14002ff40
xor esi, esi
jmp 0x1400f6580
call sub.kernel32.dll_GetLastError
mov ebx, eax
shl rbx, 0x20
or rbx, 2
test rsi, rsi
je 0x1400f657d
mov edx, 2
mov rcx, rdi
call fcn.14002ff40
mov rsi, rbx
mov rax, rsi
add rsp, 0x50
pop rbx
pop rdi
pop rsi
ret
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x1a8
mov rsi, rdx
mov rdi, rcx
lea rcx, [rsp + 0x20]
mov rdx, rdi
mov r8, rsi
call fcn.1400d6040
movzx eax, byte [rsp + 0x20]
mov rdx, qword [rsp + 0x30]
mov r8, qword [rsp + 0x40]
mov ecx, 6
movzx r9d, al
lea r10, [0x1400f6b48]
movsxd r11, dword [r10 + r9*4]
add r11, r10
mov r9, rsi
mov r10, rdi
jmp r11
add rdx, 4
mov rcx, rdx
jmp case.0x1400f65e5.2
lea rcx, [r8 + 1]
test r8, r8
cmove rcx, r8
add rcx, rdx
add rcx, 8
jmp case.0x1400f65e5.2
lea rcx, [r8 + 1]
test r8, r8
cmove rcx, r8
add rcx, rdx
add rcx, 2
jmp case.0x1400f65e5.2
mov ecx, 2
cmp rcx, rsi
ja 0x1400f6aec
mov r9, rsi
sub r9, rcx
add rcx, rdi
mov r10, rcx
test r9, r9
je 0x1400f664c
movzx ecx, byte [r10]
cmp cl, 0x5c
sete dl
cmp cl, 0x2f
sete cl
or cl, dl
jmp 0x1400f664e
xor ecx, ecx
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0xef], rdx
movups xmm0, xmmword [rsp + 0x21]
movups xmm1, xmmword [rsp + 0x31]
movaps xmmword [rsp + 0xe0], xmm1
movaps xmmword [rsp + 0xd0], xmm0
test rsi, rsi
je 0x1400f6680
cmp al, 6
jne 0x1400f6688
jmp 0x1400f66af
cmp al, 2
ja 0x1400f6987
mov rdx, qword [rsp + 0xef]
mov qword [rsp + 0x3f], rdx
movaps xmm0, xmmword [rsp + 0xd0]
movaps xmm1, xmmword [rsp + 0xe0]
movaps xmmword [rsp + 0x30], xmm1
movaps xmmword [rsp + 0x20], xmm0
mov rdx, qword [rsp + 0x3f]
mov qword [rsp + 0xc0], rdx
movaps xmm0, xmmword [rsp + 0x20]
movaps xmm1, xmmword [rsp + 0x30]
movups xmmword [rsp + 0xb1], xmm1
movups xmmword [rsp + 0xa1], xmm0
mov qword [rsp + 0x90], rdi
mov qword [rsp + 0x98], rsi
mov byte [rsp + 0xa0], al
mov word [rsp + 0xc8], 0x200
mov byte [rsp + 0xca], cl
lea rax, str._rustc_5680fa18feaa87f3ff04063800aec256c3d4b4belibrarycore_src_sync_atomic.rsthere_is_no_such_thing_as_an_acquire_store
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x138], 0
mov byte [rsp + 0x140], 6
mov word [rsp + 0x168], 0x200
mov byte [rsp + 0x16a], 0
lea rcx, [rsp + 0xf8]
lea rdx, [rsp + 0x90]
call fcn.1400f6c20
cmp byte [rsp + 0xf8], 0xa
je 0x1400f6824
lea rbx, [rsp + 0x58]
lea r14, [rsp + 0x170]
lea r15, [rsp + 0x130]
lea r12, [rsp + 0x20]
lea r13, [rsp + 0xf8]
lea rbp, [rsp + 0x90]
mov rcx, r14
mov rdx, r15
call fcn.1400f6c20
cmp byte [rsp + 0x170], 0xa
je 0x1400f6841
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x50], rax
movups xmm0, xmmword [rsp + 0xf8]
movups xmm1, xmmword [rsp + 0x108]
movups xmm2, xmmword [rsp + 0x118]
movaps xmmword [rsp + 0x40], xmm2
movaps xmmword [rsp + 0x30], xmm1
movaps xmmword [rsp + 0x20], xmm0
mov rax, qword [rsp + 0x1a0]
mov qword [rbx + 0x30], rax
movups xmm0, xmmword [rsp + 0x170]
movups xmm1, xmmword [rsp + 0x180]
movups xmm2, xmmword [rsp + 0x190]
movups xmmword [rbx + 0x20], xmm2
movups xmmword [rbx + 0x10], xmm1
movups xmmword [rbx], xmm0
mov rcx, r12
mov rdx, rbx
call fcn.1400d6960
test al, al
je 0x1400f6841
mov rcx, r13
mov rdx, rbp
call fcn.1400f6c20
cmp byte [rsp + 0xf8], 0xa
jne 0x1400f6780
lea rcx, [rsp + 0x20]
lea rdx, [rsp + 0x130]
call fcn.1400f6c20
cmp byte [rsp + 0x20], 0xa
je 0x1400f6987
mov rcx, rdi
mov rdx, rsi
call 0x1400f64e0
test rax, rax
je 0x1400f6987
add byte [rax], al
add byte [rax], al
mov rbx, rax
mov r15d, ebx
mov edi, ebx
mov edi, ebx
and r15d, 3
lea rax, [0x1400f6b64]
movsxd rcx, dword [rax + r15*4]
add rcx, rax
jmp rcx
movzx eax, byte [rbx + 0x10]
jmp case.0x1400f69c2.0
movzx eax, byte [rbx + 0xf]
jmp case.0x1400f69c2.0
por mm1, qword [r8 + r9*2]
mov ecx, ebx
mov rcx, rbx
shr rcx, 0x20
call fcn.1400d3240
test al, al
je 0x1400f68f0
mov rcx, rdi
mov rdx, rsi
call fcn.1400f7260
test al, al
je 0x1400f69a1
xor r14d, r14d
lea rax, [r15 - 2]
cmp rax, 2
jb case.0x1400f65e5.10
test r15, r15
je case.0x1400f65e5.10
mov r14, rbx
dec r14
mov r15, qword [rbx - 1]
mov rbx, qword [rbx + 7]
mov rcx, r15
call qword [rbx]
cmp qword [rbx + 8], 0
je 0x1400f68de
mov rdx, qword [rbx + 0x10]
mov rcx, r15
call fcn.14002ff40
mov edx, 8
mov rcx, r14
call fcn.14002ff40
jmp 0x1400f6987
lea rax, [r15 - 2]
cmp rax, 2
jb 0x1400f6932
test r15, r15
je 0x1400f6932
mov r14, rbx
dec r14
mov r15, qword [rbx - 1]
mov rbx, qword [rbx + 7]
mov rcx, r15
call qword [rbx]
cmp qword [rbx + 8], 0
je 0x1400f6925
mov rdx, qword [rbx + 0x10]
mov rcx, r15
call fcn.14002ff40
mov edx, 8
mov rcx, r14
call fcn.14002ff40
mov rcx, rdi
mov rdx, rsi
call fcn.1400f7330
test rax, rax
je case.0x1400f686d.6
mov rcx, rax
call 0x1400f6590
mov r14, rax
test rax, rax
jne case.0x1400f65e5.10
mov rcx, rdi
mov rdx, rsi
call 0x1400f64e0
mov qword [rsp + 0x20], rax
test rax, rax
je 0x1400f6987
mov r14, rax
mov rcx, rdi
mov rdx, rsi
call fcn.1400f7260
test al, al
je case.0x1400f65e5.10
lea rcx, [rsp + 0x20]
call fcn.1400f2290
xor r14d, r14d
mov rax, r14
add rsp, 0x1a8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r14, rbx
jmp case.0x1400f65e5.10
mov rcx, rbx
shr rcx, 0x20
cmp ecx, 0x28
sub byte [rdi + 0x22], dh
sub byte [rdi + 0x22], dh
xor eax, eax
lea rdx, [0x1400f6b74]
adc eax, 0x1b9
movsxd rcx, dword [rdx + rcx*4]
or al, 0x8a
add rcx, rdx
jmp rcx
mov al, 1
jmp case.0x1400f69c2.0
lea r14, str.failed_to_create_whole_tree
jmp case.0x1400f65e5.10
mov al, 0x29
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 2
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 3
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 4
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 5
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 6
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 7
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 8
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 9
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0xa
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0xb
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0xc
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0xd
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0xe
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0xf
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x10
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x11
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x12
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x13
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x14
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x15
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x16
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x17
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x18
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x19
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x1b
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x1c
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x1d
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x1e
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x1f
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x20
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x21
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x22
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x23
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x24
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x25
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x27
jmp case.0x1400f69c2.0
invalid
invalid
invalid
mov al, 0x28
jmp case.0x1400f69c2.0
mov al, 0x1a
jmp case.0x1400f69c2.0
mov al, 0x26
jmp case.0x1400f69c2.0
lea r8, [0x14027b1e8]
mov rdx, rsi
call fcn.140035e30
ud2
test cl, cl
je 0x140126d44
mov rcx, rdx
mov rdx, r8
jmp 0x1400f6590
mov rcx, rdx
mov rdx, r8
jmp 0x1400f64e0