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

Disassembly:
push rbx
push rsi
push r12
push r13
sub rsp, 0x258
xor r12d, r12d
mov byte [rcx + 0x210], 1
mov qword [rcx + 0x420], r12
mov r13, 0xffffffffffffffff
mov qword [rcx], r13
mov rbx, rdx
mov dword [rcx + 0x428], r12d
mov rsi, rcx
mov dword [rcx + 0x430], r12d
test rdx, rdx
je 0x14001bda9
cmp word [rdx], r12w
je 0x14001bda9
mov rcx, rdx
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov rcx, qword [rsi]
cmp eax, 0xffffffff
jne 0x14001bb2e
cmp rcx, r13
je 0x14001bac8
cmp byte [rsi + 0x210], r12b
je 0x14001bac5
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rsi], r13
mov rdx, rsi
mov byte [rsi + 0x210], 1
sub rdx, rbx
mov rcx, rbx
nop dword [rax + rax]
movzx eax, word [rcx]
mov word [rdx + rcx + 8], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x14001bae0
mov qword [rsp + 0x30], r12
xor r9d, r9d
mov dword [rsp + 0x28], pe_nt_image_headers64
xor r8d, r8d
mov edx, 0xc0000000
mov dword [rsp + 0x20], 2
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [rsi], rax
mov rax, rsi
add rsp, 0x258
pop r13
pop r12
pop rsi
pop rbx
ret
cmp rcx, r13
je 0x14001bb45
cmp byte [rsi + 0x210], r12b
je 0x14001bb42
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rsi], r13
lea rcx, [rsi + 8]
mov byte [rsi + 0x210], 1
mov rdx, rbx
sub rdx, rcx
nop word [rax + rax]
movzx eax, word [rdx + rcx]
mov word [rcx], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x14001bb60
xor r9d, r9d
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], pe_nt_image_headers64
mov edx, 0xc0000000
mov rcx, rbx
mov dword [rsp + 0x20], 3
lea r8d, [r9 + 1]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [rsi], rax
cmp rax, r13
je 0x14001bda9
lea rdx, [rsp + 0x280]
mov qword [rsp + 0x250], r15
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileSizeEx]
test eax, eax
mov ebx, r12d
cmovne ebx, dword [rsp + 0x280]
movsxd rcx, ebx
inc rcx
call fcn.1400b609c
mov r15, rax
test rax, rax
je 0x14001bd95
mov rcx, qword [rsi]
lea r9, [rsp + 0x280]
mov r8d, ebx
mov dword [rsp + 0x280], r12d
mov rdx, rax
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x14001bd8d
cmp dword [rsp + 0x280], ebx
jne 0x14001bd8d
movsxd rax, ebx
mov rcx, r15
mov byte [rax + r15], r12b
cmp byte [r15], r12b
je 0x14001bd8d
mov qword [rsp + 0x288], rbp
mov qword [rsp + 0x290], rdi
mov qword [rsp + 0x298], r14
movzx eax, byte [rcx]
cmp al, 0xa
je 0x14001bc52
cmp al, 0xd
jne 0x14001bc57
inc rcx
jmp 0x14001bc47
mov rbx, rcx
test al, al
je 0x14001bc73
nop
cmp al, 0xa
je 0x14001bc73
cmp al, 0xd
je 0x14001bc73
movzx eax, byte [rbx + 1]
inc rbx
test al, al
jne 0x14001bc60
cmp rbx, rcx
jbe 0x14001bd6c
movzx r14d, byte [rbx]
mov rdx, rcx
lea rcx, [rsp + 0x40]
mov byte [rbx], r12b
mov r9d, r13d
mov r8d, 0x104
call fcn.140028760
cmp word [rsp + 0x40], r12w
je 0x14001bd66
lea rcx, [rsp + 0x40]
mov rax, r13
nop dword [rax]
inc rax
cmp word [rcx + rax*2], r12w
jne 0x14001bcb0
movsxd rcx, eax
mov eax, 2
inc rcx
mul rcx
cmovo rax, r13
mov rcx, rax
call fcn.1400b609c
mov rbp, rax
test rax, rax
je 0x14001bd66
lea rax, [rsp + 0x40]
mov r8, rbp
sub r8, rax
lea rdx, [rsp + 0x40]
movzx ecx, word [rdx]
mov word [r8 + rdx], cx
lea rdx, [rdx + 2]
test cx, cx
jne 0x14001bcf0
movsxd rdi, dword [rsi + 0x428]
lea eax, [rdi + 1]
mov dword [rsi + 0x428], eax
cmp edi, 0x40
jge 0x14001bd23
lea rax, [rsi + 0x220]
lea rax, [rax + rdi*8]
jmp 0x14001bd63
mov rax, qword [rsi + 0x420]
test rax, rax
jne 0x14001bd58
mov ecx, 0x210
call fcn.1400b6058
test rax, rax
je 0x14001bd4e
mov qword [rax + 0x200], r12
mov dword [rax + 0x208], r12d
jmp 0x14001bd51
mov rax, r12
mov qword [rsi + 0x420], rax
lea edx, [rdi - 0x40]
mov rcx, rax
call fcn.14001c450
mov qword [rax], rbp
mov byte [rbx], r14b
mov rcx, rbx
cmp byte [rcx], r12b
jne 0x14001bc47
mov r14, qword [rsp + 0x298]
mov rdi, qword [rsp + 0x290]
mov rbp, qword [rsp + 0x288]
mov rcx, r15
call fcn.1400b60a4
mov eax, dword [rsi + 0x428]
mov r15, qword [rsp + 0x250]
mov dword [rsi + 0x430], eax
mov rax, rsi
add rsp, 0x258
pop r13
pop r12
pop rsi
pop rbx
ret