Function at 0x1400a4860
Capabilities:
Check if file exists

Disassembly:
push rbp
push rbx
push rsi
push r14
lea rbp, [rsp - 0x798]
sub rsp, 0x898
mov rax, qword [0x1403a0088]
xor rax, rsp
mov qword [rbp + 0x780], rax
mov qword [rsp + 0x30], 0
mov r14, r8
mov qword [rsp + 0x38], 0
mov rbx, rdx
mov rsi, rcx
test rcx, rcx
je 0x1400a4b2c
test rdx, rdx
je 0x1400a4b2c
test r8, r8
je 0x1400a4b2c
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1400a4b2c
mov rcx, r14
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1400a4b2c
xor edx, edx
mov qword [rsp + 0x890], rdi
mov r8d, 0x208
lea rcx, [rbp + 0x570]
call fcn.1402767a0
xor edx, edx
lea rcx, [rbp + 0x360]
mov r8d, 0x208
call fcn.1402767a0
mov rdi, qword [rbx + 0x480]
lea r8, [0x140333790]
mov rbx, qword [rbx + 0x488]
lea rcx, [rbp + 0x570]
mov r9, rdi
mov edx, 0x104
call fcn.14004e9f0
test rbx, rbx
je 0x1400a4965
mov rdx, rdi
mov rcx, rbx
call fcn.1402779b8
test eax, eax
je 0x1400a4965
mov r9, rbx
lea r8, [0x140333828]
mov edx, 0x104
lea rcx, [rbp + 0x360]
call fcn.14004e9f0
jmp 0x1400a4967
xor ebx, ebx
xor edx, edx
lea rax, [rsp + 0x30]
lea r9, [0x1402b0010]
mov qword [rsp + 0x20], rax
lea rcx, [0x14034adc0]
lea r8d, [rdx + 1]
call qword [sym.imp.ole32.dll_CoCreateInstance]
mov rcx, qword [rsp + 0x30]
test eax, eax
js 0x1400a49af
test rcx, rcx
je 0x1400a49af
mov rax, qword [rcx]
lea r8, [rsp + 0x38]
lea rdx, [0x14034adb0]
call qword [rax]
mov rcx, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
test r9, r9
je 0x1400a4b19
mov rax, qword [r9]
xor r8d, r8d
mov rdx, rsi
mov rcx, r9
call qword [rax + Ordinal_41]
test eax, eax
jne 0x1400a4b04
xor edx, edx
lea rcx, [rsp + 0x40]
mov r8d, 0x208
call fcn.1402767a0
mov rcx, qword [rsp + 0x30]
lea rdx, [rsp + 0x40]
xor r9d, r9d
mov dword [rsp + 0x20], 2
mov r8d, 0x104
mov rax, qword [rcx]
call qword [rax + Ordinal_26]
test eax, eax
jne 0x1400a4b04
test rbx, rbx
je 0x1400a4a2d
xor r8d, r8d
lea rdx, [rbp + 0x360]
lea rcx, [rsp + 0x40]
call qword [sym.imp.SHLWAPI.dll_PathMatchSpecExW]
test eax, eax
je 0x1400a4a56
test rdi, rdi
je 0x1400a4b04
xor r8d, r8d
lea rdx, [rbp + 0x570]
lea rcx, [rsp + 0x40]
call qword [sym.imp.SHLWAPI.dll_PathMatchSpecExW]
test eax, eax
jne 0x1400a4b04
mov rbx, rdi
test rbx, rbx
je 0x1400a4b04
xor edx, edx
lea rcx, [rbp + 0x150]
mov r8d, 0x208
call fcn.1402767a0
or rax, 0xffffffffffffffff
nop word [rax + rax]
cmp word [rbx + rax*2 + 2], 0
lea rax, [rax + 1]
jne 0x1400a4a80
lea rcx, [rsp + 0x40]
mov r9, r14
lea rax, [rcx + rax*2]
mov edx, 0x104
lea rcx, [rbp + 0x150]
mov qword [rsp + 0x20], rax
lea r8, [0x140333818]
call fcn.14004e9f0
mov rcx, qword [rsp + 0x30]
mov rdx, r14
mov rax, qword [rcx]
call qword [rax + 0x48]
mov rcx, qword [rsp + 0x30]
lea rdx, [rbp + 0x150]
mov rax, qword [rcx]
call qword [rax + 0xa0]
mov rcx, qword [rsp + 0x30]
lea rdx, [rbp + 0x150]
xor r8d, r8d
mov rax, qword [rcx]
call qword [rax + 0x88]
mov rcx, qword [rsp + 0x38]
mov r8d, 1
mov rdx, rsi
mov rax, qword [rcx]
call qword [rax + 0x30]
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x1400a4b14
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x890]
test rcx, rcx
je 0x1400a4b2c
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
xor eax, eax
mov rcx, qword [rbp + 0x780]
xor rcx, rsp
call fcn.140125a70
add rsp, 0x898
pop r14
pop rsi
pop rbx
pop rbp
ret