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

Disassembly:
mov rax, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xc0
mov qword [rsp + 0xb8], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov r13, r9
mov r15, r8
mov rbp, rdx
mov r14, rcx
mov r12, qword [rsp + 0x118]
mov rcx, r12
call fcn.140282890
mov rdi, rax
mov rcx, r15
call fcn.140282890
mov rsi, rax
mov rcx, rbp
call fcn.140282890
mov rbx, rax
mov rcx, r14
call fcn.140282890
mov r9, rax
mov qword [rsp + 0x40], rdi
mov edi, dword [rsp + 0x110]
mov dword [rsp + 0x38], edi
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rbx
lea r8, str.gsps:__s____s____s___I64x__lu___s_
mov edx, 0xa
lea rcx, [0x140377900]
call fcn.1402835f0
test r13, r13
je 0x140280770
test edi, edi
je 0x140280770
test rbp, rbp
je 0x14028073b
cmp word [rbp], 0
je 0x14028073b
test r12, r12
je 0x14028073b
cmp word [r12], 0
je 0x14028073b
mov edx, 1
lea rcx, [rsp + 0x90]
call fcn.140281c60
nop
mov edx, 1
lea rcx, [rsp + 0x68]
call fcn.140281c60
nop
test r14, r14
je 0x140280418
lea rax, [rsp + 0x58]
mov qword [rsp + 0x20], rax
or r9d, 0xffffffff
mov r8, r14
xor edx, edx
lea rcx, [rsp + 0x90]
call fcn.1402821b0
test rax, rax
jne 0x140280418
mov rcx, qword [rsp + 0x58]
call fcn.140286040
mov ebx, eax
lea rdi, vtable.CAhnI2s_Memory.0
mov qword [rsp + 0x68], rdi
lea rcx, [rsp + 0x68]
call fcn.140281e70
nop
mov qword [rsp + 0x90], rdi
lea rcx, [rsp + 0x90]
call fcn.140281e70
mov eax, ebx
jmp 0x140280787
lea rax, [rsp + 0x58]
mov qword [rsp + 0x20], rax
or r9d, 0xffffffff
mov r8, rbp
xor edx, edx
lea rcx, [rsp + 0x68]
call fcn.1402821b0
test rax, rax
jne 0x140280479
mov rcx, qword [rsp + 0x58]
call fcn.140286040
mov ebx, eax
lea rdi, vtable.CAhnI2s_Memory.0
mov qword [rsp + 0x68], rdi
lea rcx, [rsp + 0x68]
call fcn.140281e70
nop
mov qword [rsp + 0x90], rdi
lea rcx, [rsp + 0x90]
call fcn.140281e70
mov eax, ebx
jmp 0x140280787
xor esi, esi
mov ebx, esi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [rsi + 1]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [rsp + 0x60], rax
cmp rax, 0xffffffffffffffff
jne 0x1402804c8
mov ebx, 0x220f1f07
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov r14d, dword [rsp + 0x110]
jmp 0x1402806be
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov edi, eax
test eax, eax
jne 0x1402804f0
mov ebx, 0x220f1f0b
mov edi, 0x103
mov r14d, dword [rsp + 0x110]
jmp 0x1402806af
cmp edi, 0xffffffff
jne 0x14028050f
mov ebx, 0x220f1f08
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov r14d, dword [rsp + 0x110]
jmp 0x1402806af
lea ecx, [rdi + 1]
lea rdx, [rsp + 0x50]
call fcn.140280010
mov r12, rax
xor edx, edx
mov ecx, dword [rsp + 0x50]
call fcn.140280010
mov rbp, rax
test r12, r12
je 0x140280683
test rax, rax
je 0x140280683
mov dword [rsp + 0x108], edi
mov qword [rsp + 0x20], rsi
lea r9, [rsp + 0x108]
mov r8d, edi
mov rdx, r12
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x140280582
mov ebx, 0x220f1f09
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov r14d, dword [rsp + 0x110]
jmp 0x140280695
cmp dword [rsp + 0x108], edi
je 0x14028059f
mov ebx, 0x220f1f09
mov edi, esi
mov r14d, dword [rsp + 0x110]
jmp 0x140280695
xor r9d, r9d
mov r8d, dword [rsp + 0x50]
mov rdx, r12
mov rcx, rbp
call fcn.140280290
mov byte [rdi + rbp], bl
mov rax, rbp
mov qword [rsp + 0x50], rsi
test r14, r14
je 0x1402805dd
cmp word [r14], bx
je 0x1402805dd
mov r8, qword [rsp + 0x98]
lea rdx, [rsp + 0x50]
mov rcx, rbp
call fcn.14027fcd0
test rax, rax
jne 0x1402805f9
mov ebx, 0x220f1f0b
mov edi, 0x103
mov r14d, dword [rsp + 0x110]
jmp 0x140280695
mov r8, qword [rsp + 0x70]
lea rdx, [rsp + 0x50]
mov rcx, rax
call fcn.14027fea0
mov r9, rax
test rax, rax
jne 0x140280630
cmp qword [rsp + 0x50], rbx
setne bl
add ebx, 0x220f1f0c
mov edi, 0x103
mov r14d, dword [rsp + 0x110]
jmp 0x140280695
mov rax, qword [rsp + 0x50]
mov byte [rax], bl
lea rax, [rsp + 0x58]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0xffffffff
xor r8d, r8d
mov r14d, dword [rsp + 0x110]
mov edx, r14d
mov rcx, r13
call fcn.1402823a0
test eax, eax
jne 0x14028067a
mov rdi, qword [rsp + 0x58]
mov ebx, 0x220f1f06
mov eax, 0x220f1f0e
cmp edi, 0x7a
cmove ebx, eax
jmp 0x140280695
mov edi, dword [rsp + 0x108]
jmp 0x140280695
mov ebx, 0x220f1e01
mov edi, recv
mov r14d, dword [rsp + 0x110]
test r12, r12
je 0x1402806a2
mov rcx, r12
call fcn.1402800d0
test rbp, rbp
je 0x1402806af
mov rcx, rbp
call fcn.1402800d0
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test ebx, ebx
je 0x1402806e9
test r15, r15
jne 0x1402806ca
mov word [r13], si
jmp 0x1402806d8
mov edx, r14d
mov r8, r15
mov rcx, r13
call fcn.14000af60
mov edx, edi
mov ecx, ebx
call fcn.140285fd0
mov rcx, rax
call fcn.140286040
test ebx, ebx
sete sil
mov r9d, esi
lea r8, str.gsps_ld
mov edx, 0xa
lea rcx, [0x140377900]
call fcn.1402836a0
nop
lea rdi, vtable.CAhnI2s_Memory.0
mov qword [rsp + 0x68], rdi
lea rcx, [rsp + 0x68]
call fcn.140281e70
nop
mov qword [rsp + 0x90], rdi
lea rcx, [rsp + 0x90]
call fcn.140281e70
mov eax, esi
jmp 0x140280787
test r15, r15
jne 0x140280749
xor esi, esi
mov word [r13], si
jmp 0x140280757
mov rdx, rdi
mov r8, r15
mov rcx, r13
call fcn.14000af60
mov edx, 0x57
mov ecx, 0x220f1f01
call fcn.140285fd0
mov rcx, rax
call fcn.140286040
jmp 0x140280787
mov edx, 0x57
mov ecx, 0x220f1f01
call fcn.140285fd0
mov rcx, rax
call fcn.140286040
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret