Function at 0x14000a450
Capabilities:
Terminate process

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x58
lea r14, [rsp + 0x40]
mov rbx, rdx
mov rdx, rcx
mov rcx, r14
mov rsi, r8
call sym.dollar___systemZdollars_u11
lea rcx, [0x14002a360]
mov rdi, qword [rsp + 0x40]
call dbg.__emutls_get_address
mov r12, qword [rsp + 0x48]
cmp byte [rax], 0
mov rbp, rax
jne 0x14000a734
mov rdx, rbx
mov rcx, r14
call sym.dollar___systemZdollars_u11
cmp byte [rbp], 0
mov rbx, qword [rsp + 0x40]
mov r13, qword [rsp + 0x48]
jne 0x14000a734
mov rdx, rsi
mov rcx, r14
call sym.dollar___systemZdollars_u11
cmp byte [rbp], 0
mov rsi, qword [rsp + 0x40]
mov r14, qword [rsp + 0x48]
jne 0x14000a734
lea rax, [rdi + rbx]
xor ebp, ebp
lea r8, [rax + rsi + 0x1f]
lea r15, [0x14002a380]
test r8, r8
jle 0x14000a53b
mov rax, r8
add rax, 1
jo 0x14000a830
add rax, 8
jo 0x14000a830
test rax, rax
js 0x14000a848
mov rcx, r15
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x38], rax
call dbg.__emutls_get_address
mov rdx, qword [rsp + 0x38]
mov rcx, rax
call sym.rawAlloc__system_u6807
mov r8, qword [rsp + 0x30]
mov rbp, rax
mov byte [rax + 8], 0
mov qword [rax], r8
movabs rdx, 0x756f2065756c6176
test rdi, rdi
mov qword [rbp + 8], rdx
movabs rdx, 0x6e617220666f2074
mov qword [rbp + 0x10], rdx
movabs rdx, 0x203a65676e6172
mov qword [rbp + 0x15], rdx
jle 0x14000a75d
mov r8, rdi
add r8, 1
jo 0x14000a758
test r8, r8
js 0x14000a7a0
lea rcx, [rbp + 0x1c]
lea rdx, [r12 + 8]
call sym.memcpy
mov r9, rdi
add r9, 0x14
jo 0x14000a758
movabs rax, 0x206e69746f6e20
lea rdi, [rbp + rdi + 0x1c]
mov qword [rdi], rax
mov rax, r9
add rax, 7
jo 0x14000a8c5
mov r9, rax
lea rdi, [rbp + r9 + 8]
test rbx, rbx
jle 0x14000a808
mov r8, rbx
add r8, 1
jo 0x14000a8a0
test r8, r8
mov qword [rsp + 0x30], r9
js 0x14000a7e8
lea rdx, [r13 + 8]
mov rcx, rdi
call sym.memcpy
mov r9, qword [rsp + 0x30]
add rbx, r9
jo 0x14000a8a0
lea rdi, [rbp + rbx + 8]
mov dword [rdi], 0x202e2e20
mov byte [rdi + 4], 0
mov rdi, rbx
add rdi, 4
jo 0x14000a8b8
test rsi, rsi
jle 0x14000a7db
mov r8, rsi
add r8, 1
jo 0x14000a890
test r8, r8
js 0x14000a7c0
lea rcx, [rbp + rdi + 8]
lea rdx, [r14 + 8]
call sym.memcpy
add rsi, rdi
jo 0x14000a890
mov rcx, r15
call dbg.__emutls_get_address
mov edx, 0x50
mov rcx, rax
mov r15, rax
call sym.rawAlloc__system_u6807
mov ecx, 0xa
xor r10d, r10d
mov r9d, 0x18
mov rdx, rax
xor eax, eax
mov rbx, r10
mov rdi, rdx
mov r8d, 1
rep stosq qword [rdi], rax
mov rax, qword [0x14002ef90]
lea rdi, [rdx + 0x10]
mov qword [rdx + 0x10], rax
lea rax, str.RangeDefect
xor edx, edx
mov qword [rdi + 0x10], rax
mov qword [rdi + 0x18], rsi
mov qword [rdi + 0x20], rbp
mov qword [rsp + 0x20], 8
call sym.prepareSeqAddUninit
add rbx, 1
mov qword [rdi + 0x30], rax
jno 0x14000a868
call sym.raiseOverflow
lea rcx, [0x14002a320]
call dbg.__emutls_get_address
mov rax, qword [rax]
test rax, rax
je 0x14000a6f2
mov rcx, rdi
call rax
test al, al
je 0x14000a707
mov rax, qword [0x140034128]
test rax, rax
je 0x14000a748
mov rcx, rdi
call rax
test al, al
jne 0x14000a748
test r14, r14
je 0x14000a717
test byte [r14 + 7], 0x40
je 0x14000a820
test r13, r13
je 0x14000a727
test byte [r13 + 7], 0x40
je 0x14000a810
test r12, r12
je 0x14000a734
test byte [r12 + 7], 0x40
je 0x14000a780
add rsp, 0x58
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, rdi
call sym.raiseExceptionAux__system_u4341.part.0
jmp 0x14000a707
call sym.raiseOverflow
movabs rax, 0x206e69746f6e20
mov r9d, 0x1b
mov qword [rbp + 0x1c], rax
jmp 0x14000a5c1
mov rdx, r12
mov rcx, r15
add rsp, 0x58
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.rawDealloc__system_u6959
movabs r8, 0x7fffffffffffffff
xor edx, edx
movabs rcx, 0x8000000000000000
call sym.raiseRangeErrorI
jmp 0x14000a75d
movabs r8, 0x7fffffffffffffff
xor edx, edx
movabs rcx, 0x8000000000000000
call sym.raiseRangeErrorI
mov rsi, rdi
jmp 0x14000a656
movabs r8, 0x7fffffffffffffff
xor edx, edx
movabs rcx, 0x8000000000000000
call sym.raiseRangeErrorI
mov r9, qword [rsp + 0x30]
mov rbx, r9
jmp 0x14000a609
mov rdx, r13
mov rcx, r15
call sym.rawDealloc__system_u6959
jmp 0x14000a727
mov rdx, r14
mov rcx, r15
call sym.rawDealloc__system_u6959
jmp 0x14000a717
call sym.raiseOverflow
lea r15, [0x14002a380]
jmp 0x14000a53b
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov rcx, rax
call sym.raiseRangeErrorI
jmp 0x14000a53b
lea rsi, str.sysFatal
mov qword [rdi + 0x28], rbx
mov qword [rax + 8], rsi
lea rsi, str.fatal.nim
mov qword [rax + 0x10], 0x35
mov qword [rax + 0x18], rsi
jmp 0x14000a6d5
call sym.raiseOverflow
jmp 0x14000a7db
mov qword [rsp + 0x30], r9
call sym.raiseOverflow
mov r9, qword [rsp + 0x30]
jmp 0x14000a808
call sym.raiseOverflow
mov rdi, rbx
jmp 0x14000a620
mov qword [rsp + 0x30], r9
call sym.raiseOverflow
mov r9, qword [rsp + 0x30]
jmp 0x14000a5c6