Function at 0x14002b50c
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 - 0x178]
sub rsp, 0x260
mov rax, qword [0x1400400b0]
xor rax, rsp
mov qword [rbp + 0x150], rax
xor r15d, r15d
mov r14, r8
mov qword [r8], r15
mov edi, 0x104
mov r8, rcx
mov edx, edi
lea rcx, [rsp + 0x40]
call fcn.1400158f0
mov edx, edi
lea rax, [rsp + 0x40]
cmp word [rax], r15w
je 0x14002b573
add rax, 2
sub rdx, 1
jne 0x14002b563
mov rcx, rdi
mov rax, rdx
sub rcx, rdx
mov esi, 0x7ffffffe
neg rax
sbb r8, r8
and r8, rcx
test rdx, rdx
je 0x14002b5dc
mov rdx, rdi
lea rcx, [rsp + 0x40]
lea rcx, [rcx + r8*2]
sub rdx, r8
je 0x14002b5cd
lea r8, [0x140039488]
mov eax, esi
sub r8, rcx
test rax, rax
je 0x14002b5cd
movzx r9d, word [r8 + rcx]
test r9w, r9w
je 0x14002b5cd
mov word [rcx], r9w
dec rax
add rcx, 2
sub rdx, 1
jne 0x14002b5ac
test rdx, rdx
lea rax, [rcx - 2]
cmovne rax, rcx
mov word [rax], r15w
lea r8, [rsp + 0x40]
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 + 0x30], rax
test rax, rax
je 0x14002b769
lea rdx, [rsp + 0x24]
mov dword [rsp + 0x24], r15d
mov rcx, rax
mov dword [rsp + 0x20], r15d
call fcn.14002aad8
mov ebx, eax
test eax, eax
jns 0x14002b63f
mov rcx, qword [rbp + 0x178]
lea r8, [0x1400382d0]
mov r9d, eax
mov edx, 0xcf
call fcn.14002b054
jmp 0x14002b792
mov rdx, rdi
lea rax, [rsp + 0x40]
cmp word [rax], r15w
je 0x14002b657
add rax, 2
sub rdx, 1
jne 0x14002b647
mov rcx, rdi
mov rax, rdx
sub rcx, rdx
neg rax
sbb r8, r8
and r8, rcx
test rdx, rdx
je 0x14002b6b3
lea rdx, [rsp + 0x40]
lea rdx, [rdx + r8*2]
sub rdi, r8
je 0x14002b6a4
lea rax, [0x140039490]
sub rax, rdx
test rsi, rsi
je 0x14002b6a4
movzx ecx, word [rax + rdx]
test cx, cx
je 0x14002b6a4
mov word [rdx], cx
dec rsi
add rdx, 2
sub rdi, 1
jne 0x14002b686
test rdi, rdi
lea rax, [rdx - 2]
cmovne rax, rdx
mov word [rax], r15w
lea r8, [rsp + 0x40]
xor edx, edx
mov ecx, 0x1f0003
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_OpenSemaphoreW]
nop dword [rax + rax]
lea rcx, [rsp + 0x28]
mov qword [rsp + 0x28], rax
mov r8, rax
call fcn.14002446c
test al, al
jne 0x14002b703
mov rcx, qword [rbp + 0x178]
mov edx, 0xd5
call fcn.14002b034
lea rcx, [rsp + 0x28]
mov ebx, eax
call fcn.140029c14
jmp 0x14002b792
lea rdx, [rsp + 0x20]
mov rcx, r8
call fcn.14002aad8
mov ebx, eax
test eax, eax
jns 0x14002b73d
mov rcx, qword [rbp + 0x178]
lea r8, [0x1400382d0]
mov r9d, eax
mov edx, 0xd7
call fcn.14002b054
lea rcx, [rsp + 0x28]
call fcn.140029c50
jmp 0x14002b792
lea rcx, [rsp + 0x28]
call fcn.140029c50
movsxd rax, dword [rsp + 0x24]
movsxd rcx, dword [rsp + 0x20]
shl rcx, 0x1f
or rcx, rax
mov qword [r14], rcx
lea rcx, [rsp + 0x30]
call fcn.140029c50
xor eax, eax
jmp 0x14002b79e
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
nop dword [rax + rax]
cmp eax, 2
jne 0x14002b77f
mov ebx, r15d
jmp 0x14002b792
mov rcx, qword [rbp + 0x178]
mov edx, 0xc9
call fcn.14002b034
mov ebx, eax
lea rcx, [rsp + 0x30]
call fcn.140029c14
mov eax, ebx
mov rcx, qword [rbp + 0x150]
xor rcx, rsp
call fcn.14001f920
lea r11, [rsp + 0x260]
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