Function at 0x1400021c0
Capabilities:
Read file on windows

Disassembly:
push rbp
push rsi
push r14
sub rsp, 0x30
mov rbp, r8
mov r14, rdx
mov rsi, rcx
test r8, r8
jg 0x1400021e2
xor eax, eax
add rsp, 0x30
pop r14
pop rsi
pop rbp
ret
cmp qword [rcx + 0x68], 0
je case.default.0x1400021f1
add rsp, 0x30
pop r14
pop rsi
pop rbp
jmp qword [sym.imp.MSVCP140.dll_protected_virtual:_long_long___int64____cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::xsgetn_char____ptr64__long_long___int64_____ptr64]
mov rax, qword [rcx + 0x38]
mov qword [rsp + 0x28], rbx
mov rbx, rbp
mov rdx, qword [rax]
test rdx, rdx
je 0x140002214
mov rax, qword [rcx + 0x50]
mov ecx, dword [rax]
jmp 0x140002216
xor ecx, ecx
movsxd rax, ecx
test ecx, ecx
je 0x140002252
mov qword [rsp + 0x20], rdi
cmp rax, rbp
mov rdi, rbp
mov rcx, r14
cmovb rdi, rax
mov r8, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rsi + 0x50]
add r14, rdi
sub rbx, rdi
sub dword [rax], edi
mov rcx, qword [rsi + 0x38]
movsxd rax, edi
mov rdi, qword [rsp + 0x20]
add qword [rcx], rax
cmp qword [rsi + 0x80], 0
je 0x1400022ee
mov r8, qword [rsi + 0x18]
lea rax, [rsi + 0x70]
cmp qword [r8], rax
jne 0x14000228d
mov rcx, qword [rsi + 0x88]
mov rdx, qword [rsi + 0x90]
mov qword [r8], rcx
sub edx, ecx
mov rax, qword [rsi + 0x38]
mov qword [rax], rcx
mov rax, qword [rsi + 0x50]
mov dword [rax], edx
cmp rbx, 0xfff
jbe 0x1400022ce
nop word [rax + rax]
mov r9, qword [rsi + 0x80]
mov edx, 1
mov r8d, 0xfff
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
add r14, rax
sub rbx, rax
cmp rax, 0xfff
jne 0x1400022ee
cmp rbx, rax
ja 0x1400022a0
test rbx, rbx
je 0x1400022ee
mov r9, qword [rsi + 0x80]
mov r8, rbx
mov edx, 1
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
sub rbx, rax
sub rbp, rbx
mov rbx, qword [rsp + 0x28]
mov rax, rbp
add rsp, 0x30
pop r14
pop rsi
pop rbp
ret
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x7f
add byte [rax - 0x7f7f8080], 0x80
add byte [rax - 0x7f7f7f81], 0x80
add byte [rax - 0x7f7f7f80], 0x80
invalid
invalid
invalid
invalid
jg 0x14000cd60
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x7f
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x7f
add byte [rax + 0x7f808080], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f81], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
invalid
invalid
invalid
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
add byte [rax - 0x7f807f80], 0x80
add byte [rax - 0x7f7f7f80], 0x80
jg 0x14000d0aa