Function at 0x1400450a0
Capabilities:
Get file size
Read file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
sub rsp, 0x90
mov rax, qword [0x1400cc400]
xor rax, rsp
mov qword [rsp + 0x80], rax
lea r8, str.St_Library.dll
lea rdx, [0x1400d0400]
lea rcx, [rsp + 0x60]
call fcn.1400445c0
nop
lea rdx, str.BlackDesert64.exe
lea rcx, [0x1400d03f0]
call fcn.140048080
mov ebx, eax
mov ecx, 0x38
call fcn.14004c918
mov qword [rsp + 0x50], rax
xor r14d, r14d
test rax, rax
je 0x140045132
xorps xmm0, xmm0
xor ecx, ecx
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
mov qword [rax + 0x30], rcx
mov rcx, rax
call fcn.140001260
jmp 0x140045135
mov rax, r14
mov qword [0x1400d01a0], rax
mov rcx, rax
call fcn.1400014b0
mov rcx, qword [0x1400d01a0]
call fcn.140001400
call fcn.140044e20
mov rcx, qword [0x1400d01a0]
call fcn.140001450
lea rdx, str.._vuDrv
mov rcx, qword [0x1400d01a0]
call fcn.140001390
mov rcx, qword [0x1400d01a0]
mov rcx, qword [rcx + 0x20]
call fcn.14004ac00
lea rcx, str.07D06A7B108FF4E55A5C074A83E2A30C
call fcn.14004ab70
lea rcx, [rsp + 0x60]
cmp qword [rsp + 0x78], 0xf
cmova rcx, qword [rsp + 0x60]
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [r9 + 1]
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov rsi, rax
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov edi, eax
mov dword [rsp + 0x58], r14d
mov ecx, eax
call fcn.140084874
mov rbp, rax
mov qword [rsp + 0x20], r14
lea r9, [rsp + 0x58]
mov r8d, edi
mov rdx, rax
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x14004521f
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
lea rdx, str.readfile_fail_with_error__d_n
lea rcx, [0x1400d03f0]
call fcn.140048140
jmp 0x140045243
mov qword [rsp + 0x20], 8
mov r9d, dword [rsp + 0x58]
mov r8d, edi
lea rdx, str._d_d_d_n
lea rcx, [0x1400d03f0]
call fcn.140048140
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rdx, [rsp + 0x60]
cmp qword [rsp + 0x78], 0xf
cmova rdx, qword [rsp + 0x60]
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x48], eax
mov qword [rsp + 0x40], rbp
mov dword [rsp + 0x38], r14d
mov dword [rsp + 0x30], 1
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], 1
mov r9d, 1
lea r8d, [r9 + 3]
mov ecx, ebx
call fcn.14004a960
test rax, rax
jne 0x1400452b3
xor r9d, r9d
lea r8, [0x1400a8700]
lea rdx, str.Fail_Trun_it_back_on
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
mov rcx, qword [0x1400d01a0]
call fcn.1400014b0
mov rcx, qword [0x1400d01a0]
call fcn.140001400
mov rbx, qword [0x1400d01a0]
test rbx, rbx
je 0x1400452ed
mov rcx, rbx
call fcn.140001290
mov edx, 0x38
mov rcx, rbx
call fcn.14004c3c0
nop
mov rdx, qword [rsp + 0x78]
cmp rdx, 0xf
jbe 0x140045326
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140045321
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140045354
call fcn.14004c3c0
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.14004c260
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x10]
mov rbp, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop r14
ret
call fcn.14008916c
int3