Function at 0x18000e890
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x70
mov rax, qword [0x1800529c8]
xor rax, rsp
mov qword [rsp + 0x60], rax
xor ebx, ebx
lea r12d, [rdx + 0xb]
mov dword [rsp + 0x38], ebx
mov r14, r8
mov ebp, edx
mov rsi, rcx
mov r15d, ebx
cmp edx, r12d
jae case.0x18000e8fa.83
mov r13, qword [rsp + 0x38]
lea rdx, [0x180000000]
lea rdi, str._stdin_
lea eax, [rbp - 0x3c]
cmp eax, 0x17
ja case.0x18000e8fa.67
mov ecx, dword [rdx + rax*4 + 0xee88]
add rcx, rdx
jmp rcx
cmp dword [0x180052d64], 0
je case.0x18000e8fa.67
mov rbx, qword [0x180052d48]
test rbx, rbx
je case.0x18000e8fa.67
nop dword [rax]
mov rdx, rbx
mov ecx, 0x12
call fcn.180035370
mov rbx, qword [rbx + 8]
test rbx, rbx
jne 0x18000e920
jmp 0x18000ede2
mov rdx, rsi
mov ecx, 0x9b
call fcn.18001b6b0
mov r13, rax
jmp 0x18000ede2
mov dword [0x180052d78], 1
lea r9, [rsp + 0x38]
mov qword [0x180052d80], rdi
lea r8, str.Vho:v
mov eax, dword [rsi]
mov edx, 0xa8
mov rcx, r14
mov dword [rsp + 0x38], eax
call fcn.18002af40
cmp eax, 0xffffffff
je 0x18000ea45
nop dword [rax]
cmp eax, 0x56
je 0x18000ee24
cmp eax, 0x68
je 0x18000e9f1
cmp eax, 0x6f
je 0x18000e9b8
cmp eax, 0x76
jne 0x18000edfb
mov dword [0x180052d64], 1
jmp 0x18000ea1a
mov rcx, qword [0x180052d68]
lea rdx, [0x180040da8]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen]
mov qword [0x180052d58], rax
test rax, rax
jne 0x18000ea1a
mov rcx, qword [0x180052d68]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_perror]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov rcx, qword [r14]
xor r9d, r9d
mov qword [rsp + 0x28], rbx
xor r8d, r8d
mov qword [rsp + 0x20], rbx
lea edx, [r9 + 0x57]
call fcn.18001bef0
xor edx, edx
mov r8, rax
lea ecx, [rdx + 0x1c]
call fcn.18001e690
mov eax, dword [rsi]
lea r9, [rsp + 0x38]
mov ebp, 0x3d
mov dword [rsp + 0x38], eax
lea r8, str.Vho:v
mov rcx, r14
lea edx, [rbp + 0x6b]
call fcn.18002af40
cmp eax, 0xffffffff
jne 0x18000e990
mov eax, dword [0x1800527cc]
sub dword [rsi], eax
jmp 0x18000ede2
movsxd rax, dword [0x1800527cc]
lea r14, [r14 + rax*8]
jmp case.0x18000e8fa.67
cmp dword [rsi], 0
je 0x18000eb37
nop dword [rax + rax]
mov ebx, 0xa5
mov eax, ebx
sub eax, 0xa4
je 0x18000eafb
cmp eax, 1
jne 0x18000eb15
mov rcx, qword [r14]
cmp byte [rcx], 0x2d
jne 0x18000eaa9
cmp byte [rcx + 1], 0
jne 0x18000eaa9
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov qword [0x180052d70], rax
mov rax, rdi
jmp 0x18000eac9
lea rdx, [0x180040dc8]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen]
mov qword [0x180052d70], rax
test rax, rax
je 0x18000ee5b
mov rax, qword [r14]
mov edx, 0xd3
mov qword [0x180052d80], rax
xor ecx, ecx
mov dword [0x180052d78], 1
call fcn.180035d90
test eax, eax
jne 0x18000eb15
lea edx, [rax + 0x63]
lea rcx, str._KTRAP_FRAME
call fcn.180024af0
jmp 0x18000eb15
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, qword [0x180052d70]
cmp rcx, rax
je 0x18000eb15
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
dec ebx
cmp ebx, 0xa3
ja 0x18000ea75
dec dword [rsi]
add r14, 8
cmp dword [rsi], 0
jne 0x18000ea70
jmp 0x18000ede2
mov edx, 0xd3
xor ecx, ecx
call fcn.180035d90
test eax, eax
jne 0x18000ede2
lea edx, [rax + 0x63]
lea rcx, str.SetGutterMap
call fcn.180024af0
jmp 0x18000ede2
xor r8d, r8d
mov edx, 0x89
xor ecx, ecx
call fcn.18002f450
mov rax, qword [0x180052d90]
test rax, rax
je 0x18000ebad
nop word [rax + rax]
mov r8, qword [rax]
lea rdx, [0x180040df0]
mov rcx, qword [0x180052d58]
call fcn.18003b800
mov rax, qword [0x180052d90]
mov rax, qword [rax + 8]
mov qword [0x180052d90], rax
test rax, rax
jne 0x18000eb80
mov rcx, qword [0x180052d48]
test rcx, rcx
je 0x18000ebc3
mov edx, 0xbf
call fcn.180021ac0
mov r8, qword [0x180052d88]
test r8, r8
je 0x18000ede2
mov rcx, qword [0x180052d58]
lea rdx, [0x180040df0]
call fcn.18003b800
jmp 0x18000ede2
lea r8, [rsi + 0xa8]
mov qword [rsp + 0x38], r13
mov edx, 0xc4
lea rcx, [rsp + 0x38]
call fcn.18001a250
cmp al, 1
jne 0x18000ede2
mov r9, rsi
lea rcx, str._ArrayType___BY02J
xor edx, edx
mov r8d, 0xfa
call fcn.18001aba0
jmp 0x18000ede2
mov rdx, qword [0x180052aa8]
xor r9d, r9d
xor r8d, r8d
lea ecx, [r9 + 0x22]
call fcn.1800328b0
test al, al
je 0x18000edba
nop dword [rax + rax]
xor r8d, r8d
mov dl, 0xa
mov rcx, rsi
call fcn.18001c1b0
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x18000ed78
mov ebx, 0x9c
nop
mov eax, ebx
sub eax, 0x9c
je 0x18000ece2
cmp eax, 1
jne 0x18000ed6a
mov r8, qword [rsi + 0x10]
lea rax, [rdi + 1]
cmp r8, rax
lea rdx, [rsi + 0x10]
cmovb rax, r8
cmp qword [rsi + 0x18], 0x10
jb 0x18000ec9f
mov rsi, qword [rsi]
sub r8, rax
mov rcx, rsi
mov qword [rdx], r8
inc r8
lea rdx, [rsi + rax]
call sub.VCRUNTIME140.dll_memmove
mov byte [rsp + 0x30], 1
mov eax, dword [rsp + 0x30]
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.18003bee0
mov rbx, qword [rsp + 0xb8]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
cmp qword [rsi + 0x10], rdi
mov r8, rdi
mov qword [rsp + 0x50], 0
mov rdx, rsi
cmovb r8, qword [rsi + 0x10]
cmp qword [rsi + 0x18], 0x10
mov qword [rsp + 0x58], 0xf
mov byte [rsp + 0x40], 0
jb 0x18000ed12
mov rdx, qword [rsi]
lea rcx, [rsp + 0x40]
call fcn.180015b40
lea rdx, [rsp + 0x40]
mov rcx, r14
or r15d, 1
call fcn.1800032b0
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x18000ed6a
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000ed65
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000ee70
call fcn.18003b9d4
inc ebx
cmp ebx, 0x9e
jb 0x18000ec70
mov rcx, qword [0x180052aa8]
mov r8d, 0x28
mov rdx, rsi
call fcn.180012bb0
test al, al
je 0x18000ee77
mov rdx, qword [0x180052aa8]
xor r9d, r9d
xor r8d, r8d
lea ecx, [r9 + 0x22]
call fcn.1800328b0
test al, al
jne 0x18000ec50
lea rdi, str._stdin_
mov byte [rsp + 0x30], 0
jmp 0x18000ede2
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
xor ecx, ecx
mov qword [0x180052d58], rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov qword [0x180052d70], rax
lea rdx, [0x180000000]
inc ebp
cmp ebp, r12d
jae case.0x18000e8fa.83
xor ebx, ebx
jmp 0x18000e8e4
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8, qword [r14]
lea rdx, str.ToplEdgeSetFromVertex
mov rcx, rax
call fcn.18003b800
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov rcx, qword [r14]
xor r9d, r9d
mov qword [rsp + 0x28], rbx
xor r8d, r8d
mov qword [rsp + 0x20], rbx
lea edx, [r9 + 0x57]
call fcn.18001bef0
mov r9, rax
xor r8d, r8d
mov edx, 0xb1
xor ecx, ecx
call fcn.18002af40
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov rcx, qword [r14]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_perror]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov byte [rsp + 0x30], 0
jmp case.0x18000e8fa.83
mov eax, ebx
jmp 0x18000ecbd