Function at 0x140006620
Capabilities:
Read file on windows
Terminate process

Disassembly:
mov qword [rsp + 0x18], r8
push rbx
push rsi
push r12
push r13
push r15
sub rsp, 0xb0
mov r15, rcx
xor esi, esi
mov ecx, 0x100000
mov qword [rsp + 0x50], rsi
mov r12, r9
mov r13, rdx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rbx, rax
test rax, rax
jne 0x140006676
lea ecx, [rsi + 2]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
lea rdx, str.____out_of_memory__aborting_n
call fcn.140001010
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_abort]
int3
mov qword [rsp + 0xe0], rbp
lea rdx, [0x140055114]
mov qword [rsp + 0xe8], rdi
mov rcx, r13
mov qword [rsp + 0xf8], r14
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen]
mov rbp, rax
test rax, rax
jne 0x1400066fb
lea ecx, [rax + 2]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
lea rdx, str.____FAIL:___readscan_n
call fcn.140001010
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_strerror]
lea ecx, [rbp + 2]
mov rdi, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r9, rdi
lea rdx, str._____s:__s_n
mov rcx, rax
mov r8, r13
call fcn.140001010
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x140006c2c
mov r8, r13
lea rdx, str._____readscan__s_n
xor ecx, ecx
call fcn.14004d730
mov rcx, rbp
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_feof]
test eax, eax
je 0x140006725
lea rdx, str._____s:_file_is_empty_n
jmp 0x140006c10
mov edx, 1
mov r9, rbp
mov rcx, rbx
lea r8d, [rdx + 0x62]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
cmp rax, 0x63
jae 0x140006767
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_strerror]
mov r8, r13
lea rdx, str._____s:__s_n
mov r9, rax
xor ecx, ecx
call fcn.14004d730
jmp 0x140006c1a
movabs rax, 0x2f6e61637373616d
cmp qword [rbx], rax
jne 0x140006c09
cmp word [rbx + 8], 0x2e31
jne 0x140006c09
cmp byte [rbx + 0xa], 0x31
jne 0x140006c09
cmp byte [rbx + 0xb], 0x2e
jne 0x1400067fb
lea rcx, [rbx + 0xc]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_strtoul]
cmp eax, 2
jb 0x1400067fb
xor edx, edx
mov rax, rbx
nop
movzx ecx, byte [rax]
test cl, cl
je 0x1400067c6
cmp cl, 0xa
je 0x1400067c6
inc edx
inc rax
cmp edx, 0x61
jb 0x1400067b0
xor eax, eax
lea ecx, [rdx + 1]
cmp byte [rcx + rbx], 0x73
sete al
lea ecx, [rax + 1]
add ecx, edx
cmp byte [rcx + rbx], 0x3a
jne 0x1400067df
inc ecx
cmp ecx, 0x61
jae 0x1400067fb
add rcx, rbx
xor r8d, r8d
xor edx, edx
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_strtoul]
mov eax, eax
mov qword [r15 + 0x228], rax
mov edx, 1
mov r9, rbp
mov r8d, edx
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
cmp rax, 1
jne 0x140006c1a
nop dword [rax]
movzx eax, byte [rbx]
mov esi, eax
and esi, 0x7f
test al, al
jns 0x14000685f
nop dword [rax]
mov edx, 1
mov r9, rbp
mov r8d, edx
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
cmp rax, 1
jne 0x14000685f
movzx edx, byte [rbx]
mov eax, esi
shl eax, 7
mov ecx, edx
and ecx, 0x7f
mov esi, ecx
or esi, eax
test dl, dl
js 0x140006830
mov edx, 1
mov r9, rbp
mov r8d, edx
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
cmp rax, 1
jne 0x140006bf9
movzx eax, byte [rbx]
mov edi, eax
and edi, 0x7f
test al, al
jns 0x1400068bf
nop dword [rax]
mov edx, 1
mov r9, rbp
mov r8d, edx
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
cmp rax, 1
jne 0x1400068bf
movzx edx, byte [rbx]
mov eax, edi
shl eax, 7
mov ecx, edx
and ecx, 0x7f
mov edi, ecx
or edi, eax
test dl, dl
js 0x140006890
cmp edi, 0x100000
ja 0x140006beb
mov r9, rbp
mov r8, rdi
mov edx, 1
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov r14, rax
cmp rax, rdi
jb 0x140006bf9
lea eax, [rsi - 1]
cmp eax, 0x6c
ja case.0x140006912.8
mov ecx, eax
lea rax, [0x140000000]
movzx ecx, byte [rax + rcx + 0x6c8c]
mov edx, dword [rax + rcx*4 + 0x6c58]
add rdx, rax
jmp rdx
cmp dword [r12 + 8], 0
jne case.0x140006912.109
mov r9, r14
mov r8, rbx
mov edx, 1
mov rcx, r15
call fcn.140005960
jmp case.0x140006912.109
cmp dword [r12 + 8], 0
jne case.0x140006912.109
mov r9, r14
mov r8, rbx
mov edx, 2
mov rcx, r15
call fcn.140005960
jmp case.0x140006912.109
movzx eax, byte [rbx + 1]
movzx edx, byte [rbx]
movzx ecx, byte [rbx + 4]
movzx r10d, byte [rbx + 0xa]
movzx r9d, byte [rbx + 8]
movzx r11d, byte [rbx + 9]
shl edx, 8
or edx, eax
shl ecx, 8
movzx eax, byte [rbx + 2]
shl edx, 8
or edx, eax
shl r10d, 8
movzx eax, byte [rbx + 3]
shl edx, 8
or edx, eax
mov byte [rsp + 0x98], 4
movzx eax, byte [rbx + 5]
or ecx, eax
movzx eax, byte [rbx + 6]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 7]
shl ecx, 8
or ecx, eax
movzx eax, byte [rbx + 0xb]
or r10d, eax
mov dword [rsp + 0x88], ecx
cmp qword [r15 + 0x228], 0
jne 0x1400069d3
mov qword [r15 + 0x228], rdx
movups xmm0, xmmword [rsp + 0x88]
lea ecx, [r14 - 0xc]
shl r9d, 8
movsd xmm1, qword [rsp + 0x98]
lea r8, [rbx + 0xc]
mov dword [rsp + 0x40], ecx
or r9d, r11d
mov qword [rsp + 0x38], r8
mov rcx, r15
mov dword [rsp + 0x30], 0
lea r8, [rsp + 0x60]
mov dword [rsp + 0x28], r10d
mov dword [rsp + 0x20], r9d
mov r9d, 6
movaps xmmword [rsp + 0x60], xmm0
movsd qword [rsp + 0x70], xmm1
call fcn.140034650
jmp case.0x140006912.109
mov edx, 1
lea rcx, [rbx + r14]
mov r8d, edx
mov r9, rbp
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
cmp rax, 1
jne 0x140006bb0
lea r8, [r14 + 1]
mov rdx, rbx
mov rcx, r15
call fcn.140006320
jmp case.0x140006912.109
mov r8, r14
mov rdx, rbx
mov rcx, r15
call fcn.140006320
jmp case.0x140006912.109
cmp dword [r12 + 8], 0
jne case.0x140006912.109
mov rax, qword [rsp + 0xf0]
mov r9, r14
mov r8, rbx
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, r15
call fcn.140005b20
jmp case.0x140006912.109
cmp dword [r12 + 8], 0
jne case.0x140006912.109
mov rax, qword [rsp + 0xf0]
mov r9, r14
mov r8, rbx
mov qword [rsp + 0x20], rax
mov edx, 2
mov rcx, r15
call fcn.140005b20
jmp case.0x140006912.109
mov r9, qword [rsp + 0xf0]
mov r8, r14
mov rdx, rbx
mov qword [rsp + 0x20], r12
mov rcx, r15
call fcn.140006440
jmp case.0x140006912.109
cmp dword [r12 + 8], 0
jne case.0x140006912.109
mov rax, qword [rsp + 0xf0]
mov r9, r14
mov r8, rbx
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, r15
call fcn.140005d10
jmp case.0x140006912.109
cmp dword [r12 + 8], 0
jne case.0x140006912.109
mov rax, qword [rsp + 0xf0]
mov r9, r14
mov r8, rbx
mov qword [rsp + 0x20], rax
mov edx, 2
mov rcx, r15
call fcn.140005d10
jmp case.0x140006912.109
mov r9, qword [rsp + 0xf0]
mov r8, r14
mov rdx, rbx
mov qword [rsp + 0x20], r12
mov rcx, r15
call fcn.140006040
mov rdi, qword [rsp + 0x50]
inc rdi
mov qword [rsp + 0x50], rdi
test di, di
jne 0x140006b8b
mov r9, rdi
lea rdx, str.____s:__8llu_r
mov r8, r13
xor ecx, ecx
call fcn.14004d730
mov edx, 1
mov r9, rbp
mov r8d, edx
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
cmp rax, 1
je 0x140006820
mov rsi, qword [rsp + 0x50]
jmp 0x140006c1a
lea rdx, str.____read___error_n
xor ecx, ecx
call fcn.14004d730
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov r8d, esi
lea rdx, str.____file_corrupt:_unknown_type__u_n
xor ecx, ecx
call fcn.14004d730
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rsi, qword [rsp + 0x50]
jmp 0x140006c23
lea rdx, str.____file_corrupt_n
xor ecx, ecx
call fcn.14004d730
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rsi, qword [rsp + 0x50]
jmp 0x140006c23
lea rdx, str._____s:_unknown_file_format__expeced__masscan_1.1___n
mov r8, r13
xor ecx, ecx
call fcn.14004d730
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, rbp
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rdi, qword [rsp + 0xe8]
mov rax, rsi
mov rbp, qword [rsp + 0xe0]
mov r14, qword [rsp + 0xf8]
add rsp, 0xb0
pop r15
pop r13
pop r12
pop rsi
pop rbx
ret