Function at 0x140177de8
Capabilities:
Read file on windows

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x4f]
sub rsp, 0x100
and dword [rbp + 0x57], 0
mov r13, r8
cmp dword [rcx + 0x34], 0
mov r14, rdx
mov edi, r9d
mov r15, rcx
je 0x140177e78
cmp edi, 0x40000
jb 0x140177e78
mov rcx, qword [rcx + 0x28]
lea rax, fcn.1401734f0
and qword [rsp + 0x50], 0
lea r9, [rsp + 0x50]
and qword [rbp - 0x79], 0
mov qword [rsp + 0x58], rax
mov rax, qword [rbp + 0x7f]
mov qword [rbp - 0x69], rax
lea rax, [rsp + 0x58]
mov qword [rbp - 0x71], r8
mov r8d, edi
mov qword [rsp + 0x20], rax
call fcn.1401770b0
mov rdx, qword [rbp + 0x77]
mov ebx, eax
mov ecx, dword [rsp + 0x50]
add dword [rdx], ecx
jmp 0x140178024
mov ecx, 0x10000
mov esi, ecx
cmp edi, ecx
cmovb esi, edi
mov dword [rbp + 0xf], r14d
and qword [rbp + 0x17], 0
mov rax, r14
shr rax, 0x20
mov dword [rbp + 0x13], eax
mov rax, qword [rbp + 0x7f]
cmp qword [rax + 8], 0
je 0x140177eae
mov rcx, rax
call fcn.1401803fc
mov ebx, eax
jmp 0x140177eb0
xor ebx, ebx
test ebx, ebx
js 0x140178024
mov rcx, qword [r15 + 0x28]
lea rax, [rbp - 1]
lea r9, [rbp + 0x57]
mov qword [rsp + 0x20], rax
mov r8d, esi
mov rdx, r13
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov r12d, eax
xor eax, eax
mov dword [rsp + 0x50], eax
test r12d, r12d
jne 0x140177eed
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x50], eax
cmp dword [r15 + 0x34], 0
je 0x140177f18
test r12d, r12d
jne 0x140177f39
cmp eax, 0x3e5
jne 0x140177f1d
mov rcx, qword [r15 + 0x28]
lea r8, [rbp + 0x57]
mov r9b, 1
lea rdx, [rbp - 1]
call fcn.14004577c
movzx r12d, al
test r12d, r12d
jne 0x140177f39
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, 0x80070000
test eax, eax
cmovle ebx, eax
test ebx, ebx
jne 0x140178024
mov ecx, dword [rbp + 0x57]
mov rax, qword [rbp + 0x77]
add r14, rcx
add r13, rcx
add dword [rax], ecx
sub edi, ecx
je 0x140178024
cmp esi, ecx
jne 0x140177f62
mov eax, 0x10000
mov esi, eax
cmp edi, eax
jmp 0x140177e81
cmp dword [r15 + 0x34], 0
lea rdx, vtable.Mso::Logging::StructuredObject_unsigned_int__1_.0
lea rax, [0x1402932b0]
mov qword [rbp - 0x49], rdx
mov qword [rbp - 0x61], rax
lea r9, str.Unexpected_dwChunkSize
lea rax, str.m_fOverlapped
mov qword [rbp - 0x31], rdx
mov qword [rbp - 0x59], rax
mov r8d, 0xa
lea rax, str.cbData
mov qword [rbp - 0x19], rdx
mov qword [rbp - 0x41], rax
setne byte [rbp - 0x51]
lea rax, str.lastErrorFromReadFile
mov dword [rbp - 9], ecx
mov qword [rbp - 0x29], rax
mov ecx, 0x6ca013
mov eax, dword [rsp + 0x50]
mov dword [rbp - 0x21], eax
lea rax, str.cbRead
mov qword [rbp - 0x11], rax
lea rax, str.dwChunkSize
mov qword [rbp - 0x79], rax
lea rax, [rbp - 0x61]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x49]
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x31]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x19]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x58], rdx
mov edx, 0x763
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x39], edi
mov dword [rbp - 0x71], esi
call fcn.140182ab8
mov ebx, 0x8000ffff
lea r11, [rsp + 0x100]
mov eax, ebx
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret