Function at 0x140009288
Capabilities:
Check if file exists

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x20], rdi
push rbp
push r14
push r15
lea rbp, [rax - 0x188]
sub rsp, 0x270
mov rax, qword [0x1400121a0]
xor rax, rsp
mov qword [rbp + 0x160], rax
xor r15d, r15d
mov r9, rcx
mov edi, 0x104
mov qword [r8], r15
mov edx, edi
lea rcx, [rsp + 0x50]
mov r14, r8
call fcn.140009170
lea rax, [rsp + 0x50]
mov r11d, edi
cmp word [rax], r15w
je 0x1400092f0
add rax, 2
sub r11, 1
jne 0x1400092e0
mov rcx, rdi
mov rax, r11
sub rcx, r11
mov esi, 0x7ffffffe
neg rax
sbb r8, r8
and r8, rcx
test r11, r11
je 0x140009359
mov rdx, rdi
lea rcx, [rsp + 0x50]
lea rcx, [rcx + r8*2]
sub rdx, r8
je 0x14000934a
lea r8, [0x14000e738]
mov eax, esi
sub r8, rcx
test rax, rax
je 0x14000934a
movzx r9d, word [r8 + rcx]
test r9w, r9w
je 0x14000934a
mov word [rcx], r9w
dec rax
add rcx, 2
sub rdx, 1
jne 0x140009329
test rdx, rdx
lea rax, [rcx - 2]
cmovne rax, rcx
mov word [rax], r15w
lea r8, [rsp + 0x50]
xor edx, edx
mov ecx, 0x1f0003
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_OpenSemaphoreW]
nop dword [rax + rax]
mov qword [rsp + 0x40], rax
test rax, rax
je 0x1400094bf
lea rdx, [rsp + 0x34]
mov dword [rsp + 0x34], r15d
mov rcx, rax
mov dword [rsp + 0x30], r15d
call fcn.140007fa8
mov ebx, eax
test eax, eax
jns 0x1400093b5
mov rcx, qword [rbp + 0x188]
mov r9d, eax
mov edx, 0xcf
call fcn.140008a64
jmp 0x1400094e8
mov rdx, rdi
lea rax, [rsp + 0x50]
cmp word [rax], r15w
je 0x1400093cd
add rax, 2
sub rdx, 1
jne 0x1400093bd
mov rcx, rdi
mov rax, rdx
sub rcx, rdx
neg rax
sbb r8, r8
and r8, rcx
test rdx, rdx
je 0x140009429
lea rdx, [rsp + 0x50]
lea rdx, [rdx + r8*2]
sub rdi, r8
je 0x14000941a
lea rax, [0x14000e740]
sub rax, rdx
test rsi, rsi
je 0x14000941a
movzx ecx, word [rax + rdx]
test cx, cx
je 0x14000941a
mov word [rdx], cx
dec rsi
add rdx, 2
sub rdi, 1
jne 0x1400093fc
test rdi, rdi
lea rax, [rdx - 2]
cmovne rax, rdx
mov word [rax], r15w
lea r8, [rsp + 0x50]
xor edx, edx
mov ecx, 0x1f0003
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_OpenSemaphoreW]
nop dword [rax + rax]
mov qword [rsp + 0x38], rax
test rax, rax
je 0x1400094a0
lea rdx, [rsp + 0x30]
mov rcx, rax
call fcn.140007fa8
mov ebx, eax
test eax, eax
jns 0x140009474
mov rcx, qword [rbp + 0x188]
mov r9d, eax
mov edx, 0xd7
call fcn.140008a64
jmp 0x1400094b3
lea rcx, [rsp + 0x38]
call fcn.140006fd8
movsxd rax, dword [rsp + 0x34]
movsxd rcx, dword [rsp + 0x30]
shl rcx, 0x1f
or rcx, rax
mov qword [r14], rcx
lea rcx, [rsp + 0x40]
call fcn.140006fd8
xor eax, eax
jmp 0x1400094f4
mov rcx, qword [rbp + 0x188]
mov edx, 0xd5
call fcn.140008a44
mov ebx, eax
lea rcx, [rsp + 0x38]
call fcn.140006fd8
jmp 0x1400094e8
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
cmp eax, 2
jne 0x1400094d5
mov ebx, r15d
jmp 0x1400094e8
mov rcx, qword [rbp + 0x188]
mov edx, 0xc9
call fcn.140008a44
mov ebx, eax
lea rcx, [rsp + 0x40]
call fcn.140006fd8
mov eax, ebx
mov rcx, qword [rbp + 0x160]
xor rcx, rsp
call fcn.1400048a0
lea r11, [rsp + 0x270]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret