Function at 0x140053f40
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, r8
mov rbx, rdx
mov rdi, rcx
call fcn.14008b1a0
cdqe
lea rcx, [0x14009cfd0]
cmp r13, qword [rcx + rax*8]
jge 0x140053f74
xor eax, eax
jmp 0x1400541b5
cmp qword [rdi + 0x68], 0
je case.default.0x140053f94
mov rcx, rdi
mov rdx, rbx
mov r8, r13
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
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 [rdi + 0x38]
mov r14, qword [rax]
test r14, r14
je 0x140053fd1
mov rax, qword [rdi + 0x50]
movsxd r15, dword [rax]
mov esi, r15d
call fcn.14008b210
mov eax, dword [0x1400c7b28]
mov ecx, dword [0x1400c7b2c]
shrd ecx, eax, 0x18
xor ecx, 0x4bc5f216
cmp r15d, ecx
jne 0x140053fe3
mov rcx, r13
cmp qword [rdi + 0x80], 0
jne 0x140054050
jmp 0x1400541af
cmp r15, r13
cmovae r15, r13
mov rcx, rbx
mov rdx, r14
mov r8, r15
call sub.VCRUNTIME140.dll_memcpy
add rbx, r15
mov rcx, qword [rdi + 0x50]
sub dword [rcx], r15d
mov rsi, r13
sub rsi, r15
mov r14, qword [rdi + 0x38]
mov r12, qword [r14]
call fcn.14008b2a0
cdqe
lea rcx, [0x14009cff0]
movzx ecx, byte [rcx + rax*8]
shl r15, cl
call fcn.14008b330
cdqe
lea rcx, [0x14009d010]
movzx ecx, byte [rcx + rax*8]
sar r15, cl
add r15, r12
mov qword [r14], r15
mov rcx, rsi
cmp qword [rdi + 0x80], 0
je 0x1400541af
mov qword [rsp + 0x20], r13
mov rdx, qword [rdi + 0x18]
lea r8, [rdi + 0x70]
cmp qword [rdx], r8
jne 0x140054087
mov r8d, dword [rdi + 0x90]
mov r9, qword [rdi + 0x88]
mov qword [rdx], r9
mov rdx, qword [rdi + 0x38]
mov qword [rdx], r9
mov edx, r9d
sub r8d, r9d
mov rdx, qword [rdi + 0x50]
mov dword [rdx], r8d
lea r12, [0x14009d030]
movabs rbp, 0x27f61556c62fa44b
mov rsi, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
lea r13, [0x14009d050]
mov r14, rbx
nop dword [rax]
mov rbx, rcx
call fcn.14008b3b0
cdqe
cmp rbx, qword [r12 + rax*8]
jbe 0x14005412f
mov r9, qword [rdi + 0x80]
mov rax, qword [0x1400c7b30]
mov rcx, qword [0x1400c7b38]
shrd rcx, rax, 0x25
mov rdx, rcx
movabs rax, 0x570e2d3b6e14b561
xor rdx, rax
mov rax, qword [0x1400c7b40]
mov rcx, qword [0x1400c7b48]
shrd rcx, rax, 0x11
mov r8, rcx
xor r8, rbp
mov rcx, r14
call rsi
mov r15, rax
add r14, rax
sub rbx, rax
call fcn.14008b420
cdqe
mov rcx, rbx
cmp r15, qword [r13 + rax*8]
je 0x1400540b0
mov rax, qword [rsp + 0x20]
sub rax, rbx
jmp 0x1400541b5
call fcn.14008b490
movabs rax, 0xcdc2537aff61bd94
imul rax, qword [0x1400c7b50]
movabs rcx, 0x7b18a41e923c113d
imul rcx, qword [0x1400c7b58]
add rcx, rax
movabs rax, 0xecd8536c00455fd7
add rax, rcx
cmp rbx, rax
jne 0x140054171
xor ecx, ecx
jmp 0x1400541aa
mov rax, qword [0x1400c7b60]
mov rcx, qword [0x1400c7b68]
shrd rcx, rax, 2
mov r9, qword [rdi + 0x80]
movabs rdx, 0x4105702ee5d8afaa
xor rdx, rcx
mov rcx, r14
mov r8, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
sub rbx, rax
mov rcx, rbx
mov r13, qword [rsp + 0x20]
sub r13, rcx
mov rax, r13
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
sbb byte [rcx], al
add byte [rax], al