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

Disassembly:
mov rax, rsp
push rbp
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xb0
mov qword [rbp - 0x41], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r13
mov rax, qword [0x1800b37f0]
xor rax, rsp
mov qword [rbp + 0x3f], rax
cmp qword [rcx + 0x10], 0
je 0x180010ca4
mov qword [rbp - 0x21], 7
xor r14d, r14d
mov qword [rbp - 0x29], r14
mov word [rbp - 0x39], r14w
or r13, 0xffffffffffffffff
mov r9, r13
xor r8d, r8d
mov rdx, rcx
lea rcx, [rbp - 0x39]
call fcn.180007410
nop
lea rax, [rbp - 0x39]
cmp qword [rbp - 0x21], 8
cmovae rax, qword [rbp - 0x39]
mov rdi, qword [rbp - 0x29]
cmp word [rax + rdi*2 - 2], 0x5c
je 0x180010a0d
lea r8d, [r14 + 1]
lea rdx, [0x1800895dc]
lea rcx, [rbp - 0x39]
call fcn.1800096d0
mov rdi, qword [rbp - 0x29]
mov r15d, 0x5c
mov word [rbp - 0x49], r15w
lea r8d, [r15 - 0x59]
lea rdx, [rbp - 0x49]
lea rcx, [rbp - 0x39]
call fcn.1800076a0
mov rbx, rax
cmp rdi, 2
jb 0x180010afd
mov edi, 2
mov r9d, edi
xor r8d, r8d
lea rdx, [rbp + 0x17]
lea rcx, [rbp - 0x39]
call fcn.180005290
nop
lea rcx, [rbp + 0x17]
cmp qword [rbp + 0x2f], 8
cmovae rcx, qword [rbp + 0x17]
mov r9, qword [rbp + 0x27]
cmp r9, rdi
cmovb rdi, r9
lea rdx, [0x1800895d4]
test rdi, rdi
je 0x180010a9a
movzx eax, word [rdx]
cmp word [rcx], ax
jne 0x180010a8b
add rcx, 2
add rdx, 2
dec rdi
jne 0x180010a74
jmp 0x180010a9a
mov r8d, 1
cmp word [rcx], ax
cmovb r8d, r13d
jmp 0x180010a9d
mov r8d, r14d
movsxd rax, r8d
test r8d, r8d
jne 0x180010aba
cmp r9, 2
jae 0x180010ab0
mov eax, r13d
jmp 0x180010aba
mov eax, r14d
cmp r9, 2
setne al
test eax, eax
sete al
test al, al
je 0x180010adc
mov word [rbp - 0x49], r15w
lea r8, [rbx + 1]
lea rdx, [rbp - 0x49]
lea rcx, [rbp - 0x39]
call fcn.1800076a0
mov rbx, rax
cmp qword [rbp + 0x2f], 8
jb 0x180010aec
mov rcx, qword [rbp + 0x17]
call fcn.18003ad20
mov qword [rbp + 0x2f], 7
mov qword [rbp + 0x27], r14
mov word [rbp + 0x17], r14w
cmp rbx, 0xffffffffffffffff
je 0x180010cdd
mov r9, rbx
xor r8d, r8d
lea rdx, [rbp - 0x11]
lea rcx, [rbp - 0x39]
call fcn.180005290
lea rcx, [rbp - 0x11]
cmp qword [rbp + 7], 8
cmovae rcx, qword [rbp - 0x11]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x180010b87
lea rcx, [rbp - 0x11]
cmp qword [rbp + 7], 8
cmovae rcx, qword [rbp - 0x11]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
je 0x180010c73
lea rcx, [rbp - 0x11]
cmp qword [rbp + 7], 8
cmovae rcx, qword [rbp - 0x11]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0x90
je 0x180010b8f
lea rcx, [rbp - 0x11]
cmp qword [rbp + 7], 8
cmovae rcx, qword [rbp - 0x11]
mov edx, 0x80
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
jmp 0x180010b8f
test al, 0x10
je 0x180010ca8
inc rbx
mov word [rbp - 0x49], r15w
mov r9, qword [rbp - 0x29]
cmp rbx, r9
jae 0x180010c57
sub r9, rbx
cmp r9, 1
jb 0x180010c57
lea rax, [rbp - 0x39]
cmp qword [rbp - 0x21], 8
cmovae rax, qword [rbp - 0x39]
lea r10, [rax + rbx*2]
nop word [rax + rax]
mov rax, r9
mov rbx, r10
test r9, r9
je 0x180010c57
cmp word [rbx], 0x5c
je 0x180010bee
add rbx, 2
dec rax
jmp 0x180010bd9
test rbx, rbx
je 0x180010c57
mov ecx, 1
lea rdx, [rbp - 0x49]
mov r8, rbx
nop
movzx eax, word [rdx]
cmp word [r8], ax
jne 0x180010c18
add r8, 2
add rdx, 2
dec rcx
je 0x180010c41
jmp 0x180010c00
mov ecx, 1
cmp word [r8], ax
cmovb ecx, r13d
test ecx, ecx
je 0x180010c41
mov rcx, rbx
sub rcx, r10
sar rcx, 1
mov rax, r13
sub rax, rcx
add r9, rax
lea r10, [rbx + 2]
jmp 0x180010bd0
lea rax, [rbp - 0x39]
cmp qword [rbp - 0x21], 8
cmovae rax, qword [rbp - 0x39]
sub rbx, rax
sar rbx, 1
jmp 0x180010c5a
mov rbx, r13
cmp qword [rbp + 7], 8
jb 0x180010afd
mov rcx, qword [rbp - 0x11]
call fcn.18003ad20
jmp 0x180010afd
cmp qword [rbp + 7], 8
jb 0x180010c83
mov rcx, qword [rbp - 0x11]
call fcn.18003ad20
mov qword [rbp + 7], 7
mov qword [rbp - 1], r14
mov word [rbp - 0x11], r14w
cmp qword [rbp - 0x21], 8
jb 0x180010ca4
mov rcx, qword [rbp - 0x39]
call fcn.18003ad20
xor eax, eax
jmp 0x180010cf2
cmp qword [rbp + 7], 8
jb 0x180010cb8
mov rcx, qword [rbp - 0x11]
call fcn.18003ad20
mov qword [rbp + 7], 7
mov qword [rbp - 1], r14
mov word [rbp - 0x11], r14w
cmp qword [rbp - 0x21], 8
jb 0x180010ca4
mov rcx, qword [rbp - 0x39]
call fcn.18003ad20
xor eax, eax
jmp 0x180010cf2
cmp qword [rbp - 0x21], 8
jb 0x180010ced
mov rcx, qword [rbp - 0x39]
call fcn.18003ad20
mov eax, 1
mov rcx, qword [rbp + 0x3f]
xor rcx, rsp
call fcn.18003aad0
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r13, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret