Function at 0x1400097a0
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 8], rcx
sub rsp, 0x58
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx + 0x10]
cmp qword [rax + 0x20], rcx
jae 0x140009832
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 0x20]
inc rax
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x38]
mov qword [rax + 0x20], rcx
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x38]
mov qword [rax + 0x18], rcx
mov rcx, qword [rsp + 0x60]
call fcn.140009b80
mov rax, qword [rsp + 0x60]
cmp dword [rax + 0x38], 0
jne 0x140009823
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x28]
movsx eax, byte [rcx + rax]
test eax, eax
je 0x14000982d
mov rax, qword [rsp + 0x28]
jmp 0x140009b26
jmp 0x1400097a9
mov rax, qword [rsp + 0x60]
cmp qword [rax], 0
jne 0x140009882
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx + 0x10]
cmp qword [rax + 0x18], rcx
jne 0x140009858
xor eax, eax
jmp 0x140009b26
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx + 0x10]
mov qword [rax + 0x18], rcx
mov rax, qword [rsp + 0x28]
jmp 0x140009b26
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx + 8]
cmp qword [rax + 0x18], rcx
jbe 0x14000993a
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx + 0x18]
mov rax, qword [rax + 0x10]
sub rax, rcx
mov r8, rax
mov rax, qword [rsp + 0x60]
mov rdx, qword [rax + 0x18]
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + 8]
call sub.VCRUNTIME140.dll_memmove
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx + 8]
mov rax, qword [rax + 0x18]
sub rax, rcx
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx + 0x10]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x60]
mov qword [rcx + 0x10], rax
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx + 8]
mov rax, qword [rax + 0x18]
sub rax, rcx
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx + 0x20]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x60]
mov qword [rcx + 0x20], rax
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx + 8]
mov qword [rax + 0x18], rcx
jmp 0x140009a3c
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 0x30]
shl rax, 1
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 0x30]
cmp qword [rsp + 0x30], rax
ja 0x14000997a
mov rax, qword [rsp + 0x60]
mov r9, qword [rax + 0x28]
lea r8, [0x140107f20]
mov edx, 0xc
mov ecx, 1
call fcn.1400094a0
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x30]
mov qword [rax + 0x30], rcx
mov rax, qword [rsp + 0x30]
inc rax
mov rdx, rax
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + 8]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
mov qword [rsp + 0x20], rax
cmp qword [rsp + 0x20], 0
jne 0x1400099ce
mov rax, qword [rsp + 0x60]
mov r9, qword [rax + 0x28]
lea r8, str.Line_too_long_in__s
mov edx, 0xc
mov ecx, 1
call fcn.1400094a0
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx + 8]
mov rax, qword [rax + 0x10]
sub rax, rcx
mov rcx, qword [rsp + 0x20]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x60]
mov qword [rcx + 0x10], rax
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx + 8]
mov rax, qword [rax + 0x20]
sub rax, rcx
mov rcx, qword [rsp + 0x20]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x60]
mov qword [rcx + 0x20], rax
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x20]
mov qword [rax + 8], rcx
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x20]
mov qword [rax + 0x18], rcx
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 8]
mov rcx, qword [rsp + 0x60]
add rax, qword [rcx + 0x30]
mov rcx, qword [rsp + 0x60]
sub rax, qword [rcx + 0x10]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x60]
mov r9, qword [rax]
mov r8, qword [rsp + 0x40]
mov edx, 1
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + 0x10]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 0x10]
add rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x60]
mov qword [rcx + 0x10], rax
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 0x10]
mov byte [rax], 0
mov rcx, qword [rsp + 0x60]
call fcn.140009b80
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ferror]
test eax, eax
je 0x140009ae3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov rcx, qword [rsp + 0x60]
mov r9, qword [rcx + 0x28]
lea r8, str.Cant_read__s
mov edx, dword [rax]
mov ecx, 1
call fcn.1400094a0
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_feof]
test eax, eax
je 0x140009b21
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, qword [rsp + 0x60]
cmp qword [rcx], rax
je 0x140009b15
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rax, qword [rsp + 0x60]
mov qword [rax], 0
jmp 0x1400097a9
add rsp, 0x58
ret