Function at 0x18010e980
Capabilities:
Check if file exists
Create directory
Get file attributes

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x60
mov rax, qword [0x180515618]
xor rax, rsp
mov qword [rsp + 0x50], rax
mov rbx, rcx
mov qword [rsp + 0x28], rcx
xor r14d, r14d
cmp qword [rcx + 0x18], 0x10
jb 0x18010e9b6
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x18010e9ce
mov rcx, rbx
call fcn.1800cffc0
jmp 0x18010eb5f
mov rdi, qword [rbx + 0x10]
test rdi, rdi
jne 0x18010e9e6
mov rcx, rbx
call fcn.1800cffc0
xor al, al
jmp 0x18010eb61
cmp qword [rbx + 0x18], 0x10
jb 0x18010e9f6
mov rcx, qword [rbx]
lea rax, [rdi + rcx]
jmp 0x18010e9fd
lea rax, [rdi + rbx]
mov rcx, rbx
cmp rcx, rax
je 0x18010ea16
cmp byte [rcx], 0x2f
jne 0x18010ea0a
mov byte [rcx], 0x5c
inc rcx
cmp rcx, rax
jne 0x18010ea02
mov rdi, qword [rbx + 0x10]
mov rbp, r14
nop dword [rax]
mov rsi, rbx
cmp qword [rbx + 0x18], 0x10
jb 0x18010ea2d
mov rsi, qword [rbx]
cmp rbp, rdi
jae 0x18010ea50
mov r8, rdi
sub r8, rbp
lea rcx, [rsi + rbp]
mov edx, 0x5c
call fcn.180186210
test rax, rax
je 0x18010ea50
sub rax, rsi
jmp 0x18010ea57
mov rax, 0xffffffffffffffff
cmp rax, 0xffffffffffffffff
cmovne rdi, rax
mov r9, rdi
xor r8d, r8d
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.1801102f0
nop
cmp qword [rsp + 0x40], 0
je 0x18010eab5
lea rcx, [rsp + 0x30]
cmp qword [rsp + 0x48], 0x10
cmovae rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x18010eab5
lea rcx, [rsp + 0x30]
cmp qword [rsp + 0x48], 0x10
cmovae rcx, qword [rsp + 0x30]
call fcn.180197cdc
test eax, eax
jne 0x18010eb83
lea rbp, [rdi + 1]
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x18010eaf6
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18010eaf1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18010ec1b
call fcn.1801690e8
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], send
mov byte [rsp + 0x30], 0
mov rdi, qword [rbx + 0x10]
cmp rbp, rdi
jb 0x18010ea20
mov rdx, qword [rbx + 0x18]
cmp rdx, 0x10
jb 0x18010eb50
inc rdx
mov rcx, qword [rbx]
cmp rdx, 0x1000
jb 0x18010eb4b
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x18010ec21
mov rcx, r8
call fcn.1801690e8
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], send
mov byte [rbx], 0
mov al, 1
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.180169060
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x28]
mov rbp, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x18010ebbc
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18010ebb7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18010ec1b
call fcn.1801690e8
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x48], send
mov byte [rsp + 0x30], 0
mov rdx, qword [rbx + 0x18]
cmp rdx, 0x10
jb 0x18010ec05
inc rdx
mov rcx, qword [rbx]
cmp rdx, 0x1000
jb 0x18010ec00
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x18010ec27
mov rcx, r8
call fcn.1801690e8
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], send
mov byte [rbx], 0
xor al, al
jmp 0x18010eb61
call fcn.18019241c
nop
call fcn.18019241c
int3
call fcn.18019241c
int3