Function at 0x1400105f8
Capabilities:
Check if file exists
Create directory

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x458]
sub rsp, 0x558
mov rax, qword [0x1400561d0]
xor rax, rsp
mov qword [rbp + 0x440], rax
mov r12, r9
mov rdi, r8
mov rsi, rdx
mov r14, rcx
mov r15, qword [rbp + 0x4c0]
mov r13, qword [rbp + 0x4d0]
mov ebx, 0x208
mov r8d, ebx
xor edx, edx
lea rcx, [rbp + 0x20]
call fcn.14001d9f0
mov r8d, ebx
xor edx, edx
lea rcx, [rbp + 0x230]
call fcn.14001d9f0
xor ebx, ebx
test rsi, rsi
je 0x140010687
cmp word [rsi], bx
je 0x140010687
mov r8, rsi
mov esi, 0x104
mov edx, esi
lea rcx, [rbp + 0x230]
call fcn.140025210
jmp 0x1400106a7
lea rdx, [rbp + 0x230]
mov rcx, qword [0x140059798]
call fcn.1400104f4
test eax, eax
je 0x14001088f
mov esi, 0x104
mov rdx, r14
lea rcx, [rbp + 0x230]
call qword [sym.imp.SHLWAPI.dll_PathAppendW]
test rdi, rdi
je 0x1400106d2
cmp word [rdi], bx
je 0x1400106d2
mov r8, rdi
mov rdx, rsi
lea rcx, [rbp + 0x20]
call fcn.140025210
jmp 0x1400106fa
lea rcx, [rbp + 0x20]
call fcn.140010534
test eax, eax
je 0x14001088f
cmp byte [rbp + 0x4c8], bl
je 0x1400106fa
xor r8d, r8d
lea rdx, [rbp + 0x20]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHCreateDirectoryExW]
mov rdx, r14
lea rcx, [rbp + 0x20]
call qword [sym.imp.SHLWAPI.dll_PathAppendW]
test r12, r12
je 0x14001071e
lea r8, [rbp + 0x230]
mov rdx, rsi
mov rcx, r12
call fcn.140025210
test r15, r15
je 0x140010732
lea r8, [rbp + 0x20]
mov rdx, rsi
mov rcx, r15
call fcn.140025210
lea rcx, [rbp + 0x20]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
mov edi, eax
mov rdx, r14
lea r14, [0x1400404d8]
mov rcx, r14
call fcn.140025f64
mov esi, 0x40
mov r8d, esi
xor edx, edx
lea rcx, [rbp - 0x20]
call fcn.14001d9f0
mov r8d, esi
xor edx, edx
lea rcx, [rbp - 0x60]
call fcn.14001d9f0
lea rcx, [rsp + 0x60]
call fcn.140011c3c
nop
lea rcx, [rsp + 0x28]
call fcn.140011c3c
nop
lea rcx, [rbp + 0x230]
call qword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
mov rdx, rax
mov rcx, r14
call fcn.140025f64
mov r8d, esi
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0x230]
test eax, eax
jne 0x1400107b8
call fcn.14000c980
jmp 0x1400107bd
call fcn.14000cb44
test al, al
je 0x140010876
lea rdx, [rbp + 0x230]
lea rcx, [rsp + 0x60]
call fcn.140011d44
test al, al
je 0x140010876
mov dword [rsp + 0x20], ebx
test r13, r13
je 0x140010802
lea r8, [rsp + 0x20]
mov rdx, r13
lea rcx, [rbp - 0x60]
call fcn.14000e1f8
test al, al
je 0x140010876
cmp dword [rsp + 0x20], ebx
jl 0x140010876
test edi, edi
je 0x140010871
lea rdx, [rbp + 0x20]
lea rcx, [rsp + 0x28]
call fcn.140011d44
test al, al
je 0x140010871
mov eax, dword [rbp - 0x70]
cmp dword [rsp + 0x58], eax
jne 0x140010871
lea rcx, [rbp + 0x20]
call qword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
mov rdx, rax
mov rcx, r14
call fcn.140025f64
mov r8d, esi
lea rdx, [rbp - 0x20]
lea rcx, [rbp + 0x20]
test eax, eax
jne 0x14001084c
call fcn.14000c980
jmp 0x140010851
call fcn.14000cb44
test al, al
je 0x140010871
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x20]
lea rcx, [rbp - 0x60]
call fcn.14000e1f8
test al, al
je 0x140010871
cmp dword [rsp + 0x20], ebx
je 0x140010876
mov ebx, 1
lea rcx, [rsp + 0x28]
call fcn.140011c50
nop
lea rcx, [rsp + 0x60]
call fcn.140011c50
mov eax, ebx
jmp 0x14001089c
mov ecx, 3
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
mov rcx, qword [rbp + 0x440]
xor rcx, rsp
call fcn.14001ad20
add rsp, 0x558
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret