Function at 0x14000a150
Capabilities:
Read file on windows

Disassembly:
push rbx
push rsi
push rdi
push r14
push r15
sub rsp, 0x30
mov rdi, rcx
mov rsi, rdx
mov rcx, rdx
call fcn.14000a2fc
xor r14b, r14b
mov qword [rsp + 0x68], rbp
movabs r15, 0x8000000000000000
nop dword [rax]
cmp dword [rdi + 0x10], 0
je 0x14004e420
mov edx, dword [rdi + 0x14]
xor ebx, ebx
cmp edx, dword [rdi + 0x10]
je 0x14000a2a6
mov rax, qword [rdi + 8]
movsxd rcx, edx
movzx ecx, byte [rcx + rax]
mov byte [rsp + rbx + 0x60], cl
inc rbx
inc edx
mov dword [rdi + 0x14], edx
cmp rbx, 1
jb 0x14000a18f
add qword [rdi + 0x18], rbx
test rbx, rbx
je 0x14000a2e0
movzx ebp, byte [rsp + 0x60]
mov r14b, 1
cmp bpl, 0xd
je 0x14000a21c
cmp bpl, 0xa
je 0x14000a23f
mov rcx, qword [rsi + 0x18]
mov edx, dword [rcx]
cmp edx, 1
jg 0x14004e45d
xor al, al
test al, al
jne 0x14004e464
mov rax, qword [rsi + 8]
add rax, 2
cmp qword [rsi + 0x10], rax
jb 0x14000a252
mov rcx, qword [rsi + 8]
mov rax, qword [rsi]
mov byte [rcx + rax], bpl
inc qword [rsi + 8]
mov rcx, qword [rsi + 8]
mov rax, qword [rsi]
mov byte [rcx + rax], 0
jmp 0x14000a180
mov r8d, 1
lea rdx, [rsp + 0x60]
mov rcx, rdi
call fcn.14000a330
test rax, rax
je 0x14000a23f
cmp byte [rsp + 0x60], 0xa
jne 0x14004e551
mov al, 1
mov rbp, qword [rsp + 0x68]
add rsp, 0x30
pop r15
pop r14
pop rdi
pop rsi
pop rbx
ret
cmp rax, 0x41c2
jae 0x14004e4ba
lea rcx, [rax + rax]
test rcx, rcx
je 0x14004e547
add rcx, 0xf
and rcx, 0xfffffffffffffff0
mov qword [rsi + 0x10], rcx
call fcn.140024ce8
mov rdx, qword [rsi]
mov rbx, rax
test rdx, rdx
je 0x14000a29e
mov r8, qword [rsi + 8]
mov rcx, rax
inc r8
call fcn.140025d80
mov rcx, qword [rsi]
call fcn.140024ca4
mov qword [rsi], rbx
jmp 0x14000a1fd
mov rdx, qword [rdi + 8]
lea r9, [rsp + 0x70]
mov rcx, qword [rdi]
mov r8d, 0x10000
mov qword [rsp + 0x20], 0
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x14000a1b5
mov eax, dword [rsp + 0x70]
test eax, eax
je 0x14000a1b5
jmp 0x14004e44c
test r14b, r14b
jne 0x14000a23f
mov rbp, qword [rsp + 0x68]
xor al, al
add rsp, 0x30
pop r15
pop r14
pop rdi
pop rsi
pop rbx
ret
mov rcx, qword [rdi]
lea r8, [rsp + 0x78]
mov r9d, 1
mov qword [rdi + 0x10], 0
xor edx, edx
call qword [sym.imp.KERNEL32.dll_SetFilePointerEx]
mov rax, qword [rsp + 0x78]
mov qword [rdi + 0x18], rax
jmp 0x14000a18a
mov dword [rdi + 0x10], eax
xor edx, edx
mov dword [rdi + 0x14], 0
jmp 0x14000a198
mov al, 1
jmp 0x14000a1e7
lea eax, [rdx - 1]
mov dword [rcx], eax
mov ecx, 4
call fcn.140024cac
mov dword [rax], 1
mov rcx, qword [rsi + 8]
mov qword [rsi + 0x18], rax
add rcx, 2
jne 0x14004e48e
mov ecx, reloc.WSOCK32.dll_recv
jmp 0x14004e496
add rcx, 0xf
and rcx, 0xfffffffffffffff0
mov qword [rsi + 0x10], rcx
call fcn.140024ce8
mov r8, qword [rsi + 8]
mov rcx, rax
mov rdx, qword [rsi]
inc r8
mov rbx, rax
call fcn.140025d80
nop
jmp 0x14000a29e
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
test rax, rax
jns 0x14004e4cf
addsd xmm0, qword [0x1400c71c0]
cmp rax, 0x2000000
jae 0x14004e509
mulsd xmm0, qword [0x1400d9a90]
jmp 0x14004e4e9
mulsd xmm0, qword [0x1400d9a88]
xor eax, eax
comisd xmm0, xmmword [0x1400d9a98]
jb 0x14004e53a
subsd xmm0, qword [0x1400d9a98]
comisd xmm0, xmmword [0x1400d9a98]
jb 0x14004e537
jmp 0x14004e53a
cmp rax, 0x8000000
jb 0x14004e4e1
mulsd xmm0, qword [0x1400d9a80]
xor eax, eax
comisd xmm0, xmmword [0x1400d9a98]
jb 0x14004e53a
subsd xmm0, qword [0x1400d9a98]
comisd xmm0, xmmword [0x1400d9a98]
jae 0x14004e53a
add rax, r15
cvttsd2si rcx, xmm0
add rcx, rax
jmp 0x14000a262
mov ecx, reloc.WSOCK32.dll_recv
jmp 0x14000a273
mov rdx, 0xffffffffffffffff
mov rcx, rdi
lea r8d, [rdx + 2]
call fcn.140006bf8
nop
jmp 0x14000a23f