Function at 0x1800c7310
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xd0
mov rax, qword [0x1800e5c38]
xor rax, rsp
mov qword [rsp + 0xc0], rax
mov rsi, qword [rsp + 0x138]
mov r15d, r8d
mov ebx, dword [rsp + 0x50]
add r8d, 0x11
mov qword [rsp + 0x60], rdx
mov r13, r9
mov qword [rsp + 0x58], rcx
mov r9, rcx
mov dword [rsp + 0x40], r8d
cmp r15d, r8d
jae case.0x1800c73a7.5
mov rbp, qword [rsp + 0x58]
lea r12d, [r15 - 0x11d]
mov r14, qword [rsp + 0x58]
lea r11, str.ERROR
lea r10, [0x180000000]
cmp r12d, 0x34
ja case.0x1800c73a7.16
movzx eax, byte [r10 + r12 + 0xc77c0]
mov ecx, dword [r10 + rax*4 + 0xc777c]
add rcx, r10
jmp rcx
cmp qword [0x1800e5d80], 0
jne 0x1800c73e4
xor r9d, r9d
mov dword [rsp + 0x20], 0x11a
xor r8d, r8d
lea rdx, str.PAGER
xor ecx, ecx
call fcn.1800773e0
test rax, rax
lea rcx, str.more
cmovne rcx, rax
mov qword [0x1800e5d80], rcx
mov r8d, 0x50
lea rdx, [rsp + 0x70]
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__read]
test eax, eax
jle 0x1800c7446
nop dword [rax + rax]
mov eax, eax
lea r9, [rsp + 0x70]
xor r8d, r8d
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x50]
mov dword [rsp + 0x48], 1
lea rdx, [rsp + 0x48]
mov qword [rsp + 0x20], rax
lea ecx, [r8 + 0x6c]
call fcn.18007ac70
mov r8d, 0x50
lea rdx, [rsp + 0x70]
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__read]
test eax, eax
jg 0x1800c7400
mov r8d, dword [rsp + 0x40]
jmp case.0x1800c73a7.16
mov rcx, qword [rsi]
cmp dword [rcx], 0x7f2bb705
je 0x1800c74ac
mov eax, 0x107
cmp eax, 0x107
je 0x1800c749b
cmp eax, 0x4f1b
jne 0x1800c74a0
mov eax, ebx
mov rcx, qword [rsp + 0xc0]
xor rcx, rsp
call fcn.1800d0500
mov rbx, qword [rsp + 0x120]
add rsp, 0xd0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ebx, 0x7f2bb705
add eax, 0x4e14
cmp eax, 0x9c28
jbe 0x1800c7460
mov rbp, qword [rcx + 0x70]
jmp case.0x1800c73a7.16
movsxd rcx, dword [rsi]
mov rax, qword [0x1800e5d78]
mov rcx, qword [rax + rcx*8]
mov rdi, qword [rcx + 0x40]
mov rcx, qword [rdi]
test rcx, rcx
je case.0x1800c73a7.16
mov eax, dword [rsi]
lea r9, [rsp + 0x50]
mov r8, qword [rdx]
xor edx, edx
mov qword [rsp + 0x30], rcx
xor ecx, ecx
mov dword [rsp + 0x48], eax
mov eax, dword [r13]
mov dword [rsp + 0x50], eax
lea rax, [rsp + 0x48]
mov dword [rsp + 0x28], 0x34
mov qword [rsp + 0x20], rax
call fcn.18006d890
test eax, eax
je 0x1800c7740
mov rcx, qword [rdi + 8]
add rdi, 8
mov rdx, qword [rsp + 0x60]
test rcx, rcx
jne 0x1800c74d3
mov r8d, dword [rsp + 0x40]
jmp case.0x1800c73a7.16
mov rax, qword [rbp + 0x40]
mov edi, dword [rsp + 0x44]
test rax, rax
je 0x1800c754e
mov ecx, dword [r13]
mov edx, edi
call rax
mov r8d, dword [rsp + 0x40]
lea r11, str.ERROR
test byte [rbp + 0x10], 4
je case.0x1800c73a7.16
mov r8d, dword [r13]
lea r9, [0x1800dbc34]
mov rcx, qword [rbp + 0x18]
lea rdx, str.Line_numbers_for__s__s__segment_.text
test edi, edi
cmovne r9, r11
call fcn.1800cf5c0
mov r8d, dword [rsp + 0x40]
jmp case.0x1800c73a7.16
mov rcx, qword [rsi]
mov eax, dword [r13]
mov ebx, dword [rsp + 0x44]
mov dword [rcx + 0x18], eax
jmp case.0x1800c73a7.16
mov r14, r9
jmp case.0x1800c73a7.16
mov edi, 3
mov ecx, edi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__close]
inc edi
cmp edi, 0x20
jl 0x1800c75a3
xor edx, edx
lea ecx, [rdx + 2]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_signal]
mov r8d, dword [rsp + 0x40]
jmp case.0x1800c73a7.16
cmp dword [r13], 0
je 0x1800c75e4
movzx eax, word [rsi + 4]
mov rcx, qword [rsp + 0x68]
add word [rcx + 4], ax
inc dword [r14 + 0x20]
jmp case.0x1800c73a7.16
mov dword [rsi], 0
inc dword [r14 + 0x20]
jmp case.0x1800c73a7.16
mov rax, qword [r14 + 0x18]
mov qword [rsp + 0x68], rax
mov qword [r14 + 0x18], rsi
jmp case.0x1800c73a7.16
mov ebx, 3
jmp case.0x1800c73a7.16
mov dword [rsp + 0x44], 0
jmp case.0x1800c73a7.16
cmp dword [rbp], 0x7f2bb70b
jne 0x1800c7734
cmp qword [rbp + 8], 0
je case.0x1800c73a7.16
mov rcx, qword [rbp + 8]
mov edx, dword [r13]
mov rax, qword [rcx + 8]
mov r8, qword [rax + 0x20]
call r8
mov rcx, qword [rsi]
mov r8d, dword [rsp + 0x40]
mov dword [rsp + 0x44], eax
mov rax, qword [rbp + 8]
mov eax, dword [rax + 0x80]
mov dword [rcx + 0x80], eax
jmp case.0x1800c73a7.16
cmp qword [r14], 0
je 0x1800c76d9
mov edi, 0xbf
mov eax, edi
sub eax, 0xbe
je 0x1800c76b1
cmp eax, 1
jne 0x1800c76ca
movzx eax, word [rsi + 6]
movzx ecx, al
cmp ecx, dword [r14 + 8]
je 0x1800c76ca
mov eax, 0x26
cmp eax, 0x26
je 0x1800c76a3
cmp eax, 0x62
je case.0x1800c73a7.5
jmp 0x1800c76a5
xor ebx, ebx
add eax, 0x3c
cmp eax, 0x9e
jb 0x1800c7693
jmp 0x1800c76ca
movzx eax, word [rsi + 6]
lea rdx, [rsi + 8]
mov rcx, qword [r14]
movzx r8d, al
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
jne 0x1800c7740
dec edi
cmp edi, 0xbd
ja 0x1800c7673
mov r8d, dword [rsp + 0x40]
mov ecx, dword [r14 + 0xc]
mov eax, dword [rsi]
test ecx, ecx
je 0x1800c7712
cmp eax, ecx
je case.0x1800c73a7.16
mov ecx, 0xb2
nop dword [rax]
mov eax, ecx
sub eax, 0xb2
je 0x1800c7704
cmp eax, 1
je case.0x1800c73a7.5
jmp 0x1800c7706
xor ebx, ebx
inc ecx
cmp ecx, 0xb4
jb 0x1800c76f0
jmp case.0x1800c73a7.16
test eax, eax
je 0x1800c7740
inc r15d
inc r12d
cmp r15d, r8d
jae case.0x1800c73a7.5
mov rdx, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x1800c737b
mov eax, 0x7f2bb70b
jmp 0x1800c7470
xor eax, eax
jmp 0x1800c7470
mov eax, 0x86
nop dword [rax]
cmp eax, 0x86
je 0x1800c7772
add eax, 0x5982
cmp eax, 0x5982
jbe 0x1800c7750
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov ecx, dword [rax]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov eax, 0xb6d04
jmp 0x1800c7470