Function at 0x1400067f0
Capabilities:
Read file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov r13, rdx
mov rdi, rcx
mov ecx, dword [0x14000f838]
mov edx, dword [0x14000f834]
lea eax, [rcx - 1]
imul eax, ecx
test al, 1
sete bl
cmp edx, 0xa
setl al
test r8, r8
jle 0x14000683a
mov r14, r8
or al, bl
cmp qword [rdi + 0x68], 0
je 0x140006841
test al, al
jne 0x140006873
jmp 0x1400068a4
xor eax, eax
jmp 0x140006c5a
mov rbp, qword [rdi + 0x38]
mov rbx, qword [rbp]
test rbx, rbx
je 0x14000686b
mov rbp, qword [rdi + 0x50]
movsxd rbp, dword [rbp]
test rbp, rbp
je 0x14000686b
mov r12, r14
test al, al
jne 0x140006c6b
jmp 0x140006d09
mov r12, r14
mov r15, r13
jmp 0x1400068b5
mov rcx, rdi
mov rdx, r13
mov r8, r14
call 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]
cmp dword [0x14000f834], 0xa
jl 0x140006c5a
mov ecx, dword [0x14000f838]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
je 0x140006c5a
mov rcx, rdi
mov rdx, r13
mov r8, r14
call 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]
jmp 0x140006873
cmp qword [rdi + 0x80], 0
je 0x140006c54
lea rax, [rdi + 0x70]
mov ebp, dword [0x14000f8c0]
nop dword [rax]
mov rbx, qword [rdi + 0x18]
cmp qword [rbx], rax
jne 0x14000697c
lea ecx, [rbp - 1]
imul ecx, ebp
test cl, 1
je 0x140006900
cmp dword [0x14000f8bc], 9
jg 0x14000693e
nop word cs:[rax + rax]
nop dword [rax + rax]
mov ecx, dword [rdi + 0x90]
mov rdx, qword [rdi + 0x88]
mov qword [rbx], rdx
mov rbp, qword [rdi + 0x38]
mov qword [rbp], rdx
sub ecx, edx
mov rdx, qword [rdi + 0x50]
mov dword [rdx], ecx
mov ebp, dword [0x14000f8c0]
cmp dword [0x14000f8bc], 0xa
jl 0x140006970
lea ecx, [rbp - 1]
imul ecx, ebp
and ecx, 1
je 0x140006970
mov rbx, qword [rdi + 0x18]
mov ecx, dword [rdi + 0x90]
mov rdx, qword [rdi + 0x88]
mov qword [rbx], rdx
mov rbp, qword [rdi + 0x38]
mov qword [rbp], rdx
sub ecx, edx
mov rdx, qword [rdi + 0x50]
mov dword [rdx], ecx
mov rbx, qword [rdi + 0x18]
jmp 0x140006900
mov ecx, dword [0x14000f838]
mov edx, dword [0x14000f834]
cmp edx, 0xa
jl 0x140006b0a
lea ebx, [rcx - 1]
imul ebx, ecx
and ebx, 1
je 0x140006b0a
nop word cs:[rax + rax]
nop
mov rcx, qword [rdi + 0x18]
cmp qword [rcx], rax
jne 0x1400069d0
lea edx, [rbp - 1]
imul edx, ebp
test dl, 1
je 0x140006aa0
cmp dword [0x14000f8bc], 9
jg 0x140006ae5
jmp 0x140006aa0
mov rcx, qword [rdi + 0x18]
cmp qword [rcx], rax
jne 0x140006a70
lea edx, [rbp - 1]
imul edx, ebp
test dl, 1
je 0x140006a00
cmp dword [0x14000f8bc], 9
jg 0x140006a3d
nop word cs:[rax + rax]
nop dword [rax + rax]
mov edx, dword [rdi + 0x90]
mov rbp, qword [rdi + 0x88]
mov qword [rcx], rbp
mov rcx, qword [rdi + 0x38]
mov qword [rcx], rbp
sub edx, ebp
mov rcx, qword [rdi + 0x50]
mov dword [rcx], edx
mov ebp, dword [0x14000f8c0]
cmp dword [0x14000f8bc], 0xa
jl 0x140006a70
lea ecx, [rbp - 1]
imul ecx, ebp
and ecx, 1
je 0x140006a70
mov rcx, qword [rdi + 0x18]
mov edx, dword [rdi + 0x90]
mov rbp, qword [rdi + 0x88]
mov qword [rcx], rbp
mov rcx, qword [rdi + 0x38]
mov qword [rcx], rbp
sub edx, ebp
mov rcx, qword [rdi + 0x50]
mov dword [rcx], edx
mov rcx, qword [rdi + 0x18]
jmp 0x140006a00
mov ecx, dword [0x14000f838]
mov edx, dword [0x14000f834]
lea ebx, [rcx - 1]
imul ebx, ecx
and ebx, 1
cmp edx, 0xa
jl 0x1400068d0
test ebx, ebx
jne 0x1400069a0
jmp 0x1400068d0
mov edx, dword [rdi + 0x90]
mov rbp, qword [rdi + 0x88]
mov qword [rcx], rbp
mov rcx, qword [rdi + 0x38]
mov qword [rcx], rbp
sub edx, ebp
mov rcx, qword [rdi + 0x50]
mov dword [rcx], edx
mov ebp, dword [0x14000f8c0]
cmp dword [0x14000f8bc], 0xa
jl 0x1400069d0
lea ecx, [rbp - 1]
imul ecx, ebp
and ecx, 1
je 0x1400069d0
mov rcx, qword [rdi + 0x18]
mov edx, dword [rdi + 0x90]
mov rbp, qword [rdi + 0x88]
mov qword [rcx], rbp
mov rcx, qword [rdi + 0x38]
mov qword [rcx], rbp
sub edx, ebp
mov rcx, qword [rdi + 0x50]
mov dword [rcx], edx
mov rcx, qword [rdi + 0x18]
jmp 0x140006aa0
mov rsi, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
jmp 0x140006b2f
add r15, rax
cmp rax, 0xfff
jne 0x140006c3c
cmp r12, 0x1000
jb 0x140006ba2
cmp edx, 0xa
jl 0x140006b50
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
jne 0x140006b86
nop dword [rax + rax]
mov r9, qword [rdi + 0x80]
mov edx, 1
mov r8d, 0xfff
mov rcx, r15
call rsi
sub r12, rax
mov ecx, dword [0x14000f838]
mov edx, dword [0x14000f834]
cmp edx, 0xa
jl 0x140006b20
lea ebp, [rcx - 1]
imul ebp, ecx
and ebp, 1
je 0x140006b20
mov r9, qword [rdi + 0x80]
mov edx, 1
mov r8d, 0xfff
mov rcx, r15
call rsi
sub r12, rax
jmp 0x140006b50
test r12, r12
je 0x140006c49
mov r9, qword [rdi + 0x80]
mov edx, 1
mov rcx, r15
mov r8, r12
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov rbx, r12
sub rbx, rax
xor ecx, ecx
cmp dword [0x14000f834], 0xa
jl 0x140006c4d
mov eax, dword [0x14000f838]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
je 0x140006c4d
nop word cs:[rax + rax]
nop
mov r9, qword [rdi + 0x80]
mov edx, 1
mov rcx, r15
mov r8, r12
call rsi
sub rbx, rax
mov r9, qword [rdi + 0x80]
mov edx, 1
mov rcx, r15
mov r8, r12
call rsi
sub rbx, rax
xor ecx, ecx
cmp dword [0x14000f834], 0xa
jl 0x140006c4d
mov eax, dword [0x14000f838]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x140006bf0
jmp 0x140006c4d
mov rax, r14
sub rax, r12
mov cl, 1
mov rbx, r12
jmp 0x140006c4d
xor ebx, ebx
xor ecx, ecx
mov r12, rbx
test cl, cl
jne 0x140006c5a
sub r14, r12
mov rax, r14
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp r12, rbp
mov rsi, r12
cmova rsi, rbp
cmp dword [0x14000f830], 0xa
jl 0x140006c8f
mov eax, dword [0x14000f82c]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x140006cb7
mov rcx, r13
mov rdx, rbx
mov r8, rsi
call sub.VCRUNTIME140.dll_memcpy
cmp dword [0x14000f830], 0xa
jl 0x140006cc7
mov eax, dword [0x14000f82c]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x140006cc7
mov rcx, r13
mov rdx, rbx
mov r8, rsi
call sub.VCRUNTIME140.dll_memcpy
jmp 0x140006c8f
mov rax, qword [rdi + 0x50]
sub dword [rax], esi
mov rax, qword [rdi + 0x38]
movsxd rcx, esi
add qword [rax], rcx
lea r15, [rsi + r13]
sub r12, rsi
mov ecx, dword [0x14000f838]
mov edx, dword [0x14000f834]
cmp edx, 0xa
jl 0x1400068b5
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
je 0x1400068b5
mov rax, qword [rdi + 0x38]
mov rbx, qword [rax]
cmp r12, rbp
mov rsi, r12
cmova rsi, rbp
cmp dword [0x14000f830], 0xa
jl 0x140006d2d
mov eax, dword [0x14000f82c]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x140006d55
mov rcx, r13
mov rdx, rbx
mov r8, rsi
call sub.VCRUNTIME140.dll_memcpy
cmp dword [0x14000f830], 0xa
jl 0x140006d65
mov eax, dword [0x14000f82c]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x140006d65
mov rcx, r13
mov rdx, rbx
mov r8, rsi
call sub.VCRUNTIME140.dll_memcpy
jmp 0x140006d2d
mov rax, qword [rdi + 0x50]
sub dword [rax], esi
mov rax, qword [rdi + 0x38]
movsxd rcx, esi
add qword [rax], rcx
sub r12, rsi
mov rax, qword [rdi + 0x38]
mov rbx, qword [rax]
jmp 0x140006c6b