Function at 0x140026ad0
Capabilities:
Check if file exists
Get file attributes
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r14
push r15
sub rsp, 0x80
mov rax, qword [0x140177090]
xor rax, rsp
mov qword [rsp + 0x70], rax
mov r14, r9
mov rdi, rdx
mov rsi, rcx
mov qword [rsp + 0x48], rdx
xor ebx, ebx
mov dword [rsp + 0x40], ebx
xorps xmm0, xmm0
movups xmmword [rdx], xmm0
mov qword [rdx], rbx
mov qword [rdx + 8], rbx
mov qword [rdx + 0x10], rbx
mov dword [rsp + 0x40], 1
cmp qword [rcx + 0x18], 8
jb 0x140026b29
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x140026b38
test al, 0x10
jne 0x140026b48
test r14, r14
jns 0x140026b4b
mov rcx, rsi
call fcn.140026790
mov r14, rax
test r14, r14
jle 0x140026d4e
cmp qword [rsi + 0x18], 8
jb 0x140026b5b
mov rsi, qword [rsi]
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [r9 + 7]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r15, rax
cmp rax, 0xffffffffffffffff
je 0x140026d4e
xor r9d, r9d
xor r8d, r8d
mov rdx, rbx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x58], xmm1
mov qword [rsp + 0x68], rbx
movabs rax, 0x7fffffffffffffff
cmp r14, rax
ja 0x140026d7b
cmp r14, 0x1000
jb 0x140026bf7
lea rcx, [r14 + 0x27]
cmp rcx, r14
jbe 0x140026d81
call fcn.1400e9d8c
test rax, rax
je 0x140026d75
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x140026c02
mov rcx, r14
call fcn.1400e9d8c
mov rsi, rax
mov qword [rsp + 0x58], rsi
lea rbp, [r14 + rsi]
mov qword [rsp + 0x68], rbp
mov r8, r14
xor edx, edx
mov rcx, rsi
call fcn.1400ec680
mov qword [rsp + 0x60], rbp
mov dword [rsp + 0x50], r14d
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x50]
mov r8d, r14d
mov rdx, rsi
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov eax, dword [rsp + 0x50]
test eax, eax
je 0x140026d11
lea rcx, [rsp + 0x58]
cmp rdi, rcx
je 0x140026cbf
mov rcx, qword [rdi]
test rcx, rcx
je 0x140026c9e
mov rdx, qword [rdi + 0x10]
sub rdx, rcx
cmp rdx, 0x1000
jb 0x140026c8a
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140026d87
mov rcx, r8
call fcn.1400e9d84
mov qword [rdi], rbx
mov qword [rdi + 8], rbx
mov qword [rdi + 0x10], rbx
mov eax, dword [rsp + 0x50]
mov qword [rdi], rsi
mov qword [rdi + 8], rbp
mov qword [rdi + 0x10], rbp
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
mov rbp, rbx
mov qword [rsp + 0x68], rbx
mov rsi, qword [rsp + 0x58]
cmp eax, r14d
jae 0x140026d11
mov ebx, eax
mov r14, qword [rdi + 8]
mov rdx, qword [rdi]
mov rcx, r14
sub rcx, rdx
cmp rbx, rcx
jae 0x140026cde
lea rax, [rbx + rdx]
jmp 0x140026d0d
jbe 0x140026d11
mov rax, qword [rdi + 0x10]
sub rax, rdx
cmp rbx, rax
jbe 0x140026cf9
mov rdx, rbx
mov rcx, rdi
call fcn.1400103d0
jmp 0x140026d11
sub rbx, rcx
mov r8, rbx
xor edx, edx
mov rcx, r14
call fcn.1400ec680
lea rax, [r14 + rbx]
mov qword [rdi + 8], rax
test rsi, rsi
je 0x140026d45
sub rbp, rsi
mov rax, rsi
cmp rbp, 0x1000
jb 0x140026d3a
add rbp, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140026d75
mov rdx, rbp
mov rcx, rsi
call fcn.1400e9d84
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, rdi
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.1400e9d60
mov rbx, qword [rsp + 0xc0]
add rsp, 0x80
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
call fcn.1400f35b0
int3
call fcn.14000bfe0
int3
call fcn.1400012d0
nop
call fcn.1400f35b0
int3