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

Disassembly:
mov qword [rsp + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x80]
sub rsp, 0x180
mov qword [rsp + 0x58], 0xfffffffffffffffe
mov qword [rsp + 0x1c8], rbx
mov rsi, r8
mov r12, rdx
mov r14, rcx
cmp qword [rcx + 0x18], 0
je 0x14000a53c
cmp qword [rcx], 0xffffffffffffffff
setne al
test al, al
je 0x14000a6e1
cmp qword [r8 + 0x18], 0x10
jb 0x14000a548
mov rdi, qword [r8]
jmp 0x14000a54b
mov rdi, rsi
call fcn.14000bcc0
mov rcx, rax
test rax, rax
jne 0x14000a563
mov ecx, 0x80004005
call fcn.14000b790
int3
mov rax, qword [rax]
call qword [rax + Ordinal_26]
lea rbx, [rax + 0x18]
mov qword [rbp + 0xc0], rbx
test rdi, rdi
je 0x14000a5a7
test rdi, 0xffffffffffff0000
jne 0x14000a5a7
movzx edi, di
xor edx, edx
mov ecx, edi
call fcn.14000b6e0
test rax, rax
je 0x14000a5bd
mov r8d, edi
mov rdx, rax
lea rcx, [rbp + 0xc0]
call fcn.14000bf00
jmp 0x14000a5b6
mov rdx, rdi
lea rcx, [rbp + 0xc0]
call fcn.14000b470
mov rbx, qword [rbp + 0xc0]
mov ecx, 1
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, 0x104
or eax, ecx
jge 0x14000a5e9
mov edx, 0x104
lea rcx, [rbp + 0xc0]
call fcn.14000c030
mov rbx, qword [rbp + 0xc0]
mov rcx, rbx
call qword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
movsxd rdx, dword [rbx - 0xc]
mov rcx, rbx
call fcn.1400e5378
test eax, eax
js 0x14000a89c
cmp eax, dword [rbx - 0xc]
jg 0x14000a89c
mov dword [rbx - 0x10], eax
cdqe
xor r13d, r13d
mov word [rbx + rax*2], r13w
mov rcx, rbx
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x14000a637
xor r8d, r8d
mov rdx, rbx
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHCreateDirectoryExW]
mov edx, dword [r12 + 4]
lea rcx, [rsp + 0x20]
call fcn.14000b2a0
nop
mov r15, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x20]
sub r15, rdi
mov r9d, r15d
mov r8, rdi
mov edx, dword [r12]
mov rcx, r14
call fcn.140009120
test al, al
jne 0x14000a6f0
test rdi, rdi
je 0x14000a6c5
mov rax, qword [rsp + 0x30]
sub rax, rdi
cmp rax, 0x1000
jb 0x14000a6bc
test dil, 0x1f
je 0x14000a68f
call fcn.1400e463c
int3
mov rax, qword [rdi - 8]
cmp rax, rdi
jb 0x14000a69e
call fcn.1400e463c
int3
sub rdi, rax
cmp rdi, 8
jae 0x14000a6ad
call fcn.1400e463c
int3
cmp rdi, 0x27
jbe 0x14000a6b9
call fcn.1400e463c
int3
mov rdi, rax
mov rcx, rdi
call fcn.14007b810
nop
lea rdx, [rbx - 0x18]
or rdi, 0xffffffffffffffff
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x14000a6e1
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
mov rcx, rsi
call fcn.140007010
xor al, al
jmp 0x14000a8a7
lea rcx, [rbp - 0x80]
call fcn.140008320
lea rcx, [rsp + 0x60]
call fcn.140008cc0
nop
cmp qword [rax + 0x18], 0x10
jb 0x14000a70e
mov rax, qword [rax]
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.140008360
nop
mov rax, qword [rsp + 0x78]
cmp rax, 0x10
jb 0x14000a773
inc rax
mov rcx, qword [rsp + 0x60]
cmp rax, 0x1000
jb 0x14000a76e
test cl, 0x1f
je 0x14000a741
call fcn.1400e463c
int3
mov rax, qword [rcx - 8]
cmp rax, rcx
jb 0x14000a750
call fcn.1400e463c
int3
sub rcx, rax
cmp rcx, 8
jae 0x14000a75f
call fcn.1400e463c
int3
cmp rcx, 0x27
jbe 0x14000a76b
call fcn.1400e463c
int3
mov rcx, rax
call fcn.14007b810
mov r8d, r15d
mov rdx, rdi
lea rcx, [rbp - 0x80]
call fcn.140008450
test al, al
jne 0x14000a7dd
test rdi, rdi
je 0x14000a6c5
mov rax, qword [rsp + 0x30]
sub rax, rdi
cmp rax, 0x1000
jb 0x14000a6bc
test dil, 0x1f
je 0x14000a7af
call fcn.1400e463c
int3
mov rax, qword [rdi - 8]
cmp rax, rdi
jb 0x14000a7be
call fcn.1400e463c
int3
sub rdi, rax
cmp rdi, 8
jae 0x14000a7cd
call fcn.1400e463c
int3
cmp rdi, 0x27
jbe 0x14000a6b9
call fcn.1400e463c
nop
mov qword [rsp + 0x50], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x48], r13
mov byte [rsp + 0x38], 0
or rdi, 0xffffffffffffffff
mov r9, rdi
xor r8d, r8d
mov rdx, rsi
lea rcx, [rsp + 0x38]
call fcn.1400075c0
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x38]
call fcn.140008b70
movzx r14d, al
mov rdx, qword [rsp + 0x20]
test rdx, rdx
je 0x14000a876
mov rcx, qword [rsp + 0x30]
sub rcx, rdx
cmp rcx, 0x1000
jb 0x14000a86d
test dl, 0x1f
je 0x14000a840
call fcn.1400e463c
int3
mov rax, qword [rdx - 8]
cmp rax, rdx
jb 0x14000a84f
call fcn.1400e463c
int3
sub rdx, rax
cmp rdx, 8
jae 0x14000a85e
call fcn.1400e463c
int3
cmp rdx, 0x27
jbe 0x14000a86a
call fcn.1400e463c
int3
mov rdx, rax
mov rcx, rdx
call fcn.14007b810
nop
lea rdx, [rbx - 0x18]
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x14000a88e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
mov rcx, rsi
call fcn.140007010
movzx eax, r14b
jmp 0x14000a8a7
mov ecx, 0x80070057
call fcn.14000b790
nop
mov rbx, qword [rsp + 0x1c8]
add rsp, 0x180
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret