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

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x20]
sub rsp, 0x120
mov qword [rsp + 0x68], 0xfffffffffffffffe
mov qword [rsp + 0x178], rbx
mov rax, qword [0x1403ad830]
xor rax, rsp
mov qword [rbp + 0x10], rax
movzx esi, r8b
mov rdi, rdx
mov r15, rcx
mov qword [rsp + 0x48], rdx
lea rcx, [rsp + 0x70]
call fcn.14001cac0
nop
mov rcx, r15
call fcn.140028de0
test al, al
je 0x14003442a
mov rdx, r15
lea rcx, [rsp + 0x70]
call fcn.14001d690
movzx edx, sil
lea rcx, [rsp + 0x70]
call fcn.14001f4b0
lea rdx, [rsp + 0x70]
mov rcx, rdi
call fcn.14001c050
jmp 0x14003464b
lea rcx, [rbp - 0x40]
call fcn.140034680
nop
lea rcx, [rbp - 0x40]
call fcn.14002aa20
mov rcx, rax
xor r12d, r12d
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov edx, 0x80000000
lea r8d, [r12 + 1]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r14, rax
cmp rax, 0xffffffffffffffff
je 0x140034634
lea rdx, [rsp + 0x48]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileSizeEx]
test eax, eax
jne 0x140034498
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x140034634
mov rbx, qword [rsp + 0x48]
test rbx, rbx
jle 0x14003448a
cmp rbx, 0x7f8
jge 0x14003448a
mov ecx, 0x800
call fcn.140283754
mov r13, rax
xor edx, edx
mov r8d, 0x800
mov rcx, rax
call fcn.140285450
mov dword [rsp + 0x40], r12d
mov qword [rsp + 0x20], r12
lea r9, [rsp + 0x40]
mov r8d, ebx
mov rdx, r13
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov ebx, eax
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test ebx, ebx
je 0x14003462c
cmp dword [rsp + 0x40], r12d
jbe 0x14003462c
lea rdx, [r13 + 2]
lea rcx, [rbp - 0x18]
call fcn.14001c950
nop
mov rcx, r13
call fcn.140283144
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], r12
lea rdx, [0x1402d5b5c]
lea rcx, [rbp - 0x68]
call fcn.14001c950
nop
lea r8, [rbp - 0x68]
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x18]
call fcn.140023510
nop
lea rcx, [rbp - 0x68]
call fcn.14001d440
mov rcx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x50]
sub rcx, r8
movabs rax, 0x6666666666666667
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, 2
jb 0x140034616
mov rdx, r8
lea rcx, [rbp - 0x68]
call fcn.14001c0d0
nop
mov rcx, qword [rsp + 0x50]
add rcx, 0x28
call fcn.14002a400
mov ebx, eax
lea rcx, [rbp - 0x68]
call fcn.140026e10
cmp eax, 0xa
jle 0x14003460c
test ebx, ebx
je 0x14003460c
mov rcx, r15
call fcn.14001f680
test al, al
je 0x14003460c
lea rdx, [rbp - 0x68]
mov rcx, r15
call fcn.14001d690
mov dword [r15 + 0x28], ebx
movzx edx, sil
lea rcx, [rbp - 0x68]
call fcn.14001f4b0
lea rdx, [rbp - 0x68]
mov rcx, rdi
call fcn.14001c050
nop
lea rcx, [rbp - 0x68]
call fcn.14001d440
nop
lea rcx, [rsp + 0x50]
call fcn.140002cd0
nop
lea rcx, [rbp - 0x18]
call fcn.14001d440
jmp 0x140034641
lea rcx, [rbp - 0x68]
call fcn.14001d440
nop
lea rcx, [rsp + 0x50]
call fcn.140002cd0
nop
lea rcx, [rbp - 0x18]
call fcn.14001d440
jmp 0x140034634
mov rcx, r13
call fcn.140283144
movzx edx, sil
mov rcx, rdi
call fcn.1400342a0
nop
lea rcx, [rbp - 0x40]
call fcn.14001d440
nop
lea rcx, [rsp + 0x70]
call fcn.14001d440
mov rax, rdi
mov rcx, qword [rbp + 0x10]
xor rcx, rsp
call fcn.140283120
mov rbx, qword [rsp + 0x178]
add rsp, 0x120
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret