Function at 0x1400086e4
Capabilities:
Terminate process

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
lea rbp, [0x14003d7d8]
mov rbx, rcx
mov rsi, rdx
mov rdi, r8
mov r12, r9
mov al, byte [rdi + 0x10]
cmp al, 4
je case.0x140008728.0
sub eax, 0x10
cmp al, 0xc
ja case.0x140008728.3
movzx eax, al
movsxd rax, dword [rbp + rax*4]
add rax, rbp
jmp rax
movups xmm0, xmmword [rsi]
lea rdx, [rsp + 0x30]
mov rcx, rbx
movaps xmmword [rsp + 0x30], xmm0
call sym.nimAsgnStrV2
jmp 0x1400089ce
mov rbp, qword [rdi + 0x18]
lea r15, [0x14003c4a0]
mov rcx, qword [rsi]
mov r8, qword [rbp + 8]
mov rdx, qword [rbp]
mov qword [rbx], rcx
call sym.newSeqPayload
mov rdx, qword [rbp + 8]
mov ecx, 8
mov qword [rbx + 8], rax
mov r14, qword [rbp]
call sym.align__system_u1636
mov r13, rax
mov rax, qword [rbx]
sub rax, 1
seto bpl
mov qword [rsp + 0x28], rax
movzx ebp, bpl
jno 0x1400087a6
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.raiseOverflow
cmp qword [rsp + 0x28], rbp
jl 0x1400089ce
mov rcx, rbp
imul rcx, r14
jo 0x140008791
add rcx, r13
jo 0x140008791
mov rdx, qword [rsi + 8]
mov r9, r12
mov r8, qword [rdi + 0x18]
add rdx, rcx
add rcx, qword [rbx + 8]
call sym.genericDeepCopyAux__system_u8641
mov rcx, r15
call dbg.__emutls_get_address
cmp byte [rax], 0
jne 0x1400089ce
add rbp, 1
jmp 0x14000878f
mov r8, qword [rdi + 0x18]
test r8, r8
jne 0x1400087fe
mov rax, qword [rsi]
mov qword [rbx], rax
jmp case.0x140008728.2
mov r9, r12
mov rdx, rsi
mov rcx, rbx
call sym.genericDeepCopyAux__system_u8641
lea rcx, [0x14003c4a0]
call dbg.__emutls_get_address
cmp byte [rax], 0
jne 0x1400089ce
mov r8, qword [rdi + 0x20]
mov r9, r12
mov rdx, rsi
mov rcx, rbx
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.genericDeepCopyAux__system_u8646
mov rax, qword [rdi + 0x18]
mov rcx, qword [rax]
test rcx, rcx
jne 0x140008864
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.raiseDivByZero
mov rax, qword [rdi]
mov edx, 1
shl rdx, 0x3f
cmp rax, rdx
jne 0x14000887f
cmp rcx, 0xffffffffffffffff
je 0x140008791
cqo
idiv rcx
sub rax, 1
seto bpl
mov r13, rax
movzx ebp, bpl
jo 0x140008791
lea r14, [0x14003c4a0]
cmp r13, rbp
jl 0x1400089ce
mov r8, qword [rdi + 0x18]
mov r9, r12
mov rcx, qword [r8]
imul rcx, rbp
lea rdx, [rsi + rcx]
add rcx, rbx
call sym.genericDeepCopyAux__system_u8641
mov rcx, r14
call dbg.__emutls_get_address
cmp byte [rax], 0
jne 0x1400089ce
add rbp, 1
jno 0x1400088a0
jmp 0x140008791
mov rsi, qword [rsi]
test rsi, rsi
je 0x1400088f6
mov rax, qword [rdi + 0x18]
mov rax, qword [rax + 0x38]
test rax, rax
je 0x140008900
jmp 0x140008913
xor eax, eax
mov qword [rbx], rax
jmp 0x1400089ce
mov rcx, qword [r12]
mov rdx, rsi
call sym.get__system_u8607
test rax, rax
je 0x140008932
jmp 0x140008918
mov rcx, rsi
jmp 0x140008985
mov rdx, qword [rax - 0x10]
mov qword [rbx], rax
add rdx, 0x10
jo 0x140008791
mov qword [rax - 0x10], rdx
jmp 0x1400089ce
mov rdi, qword [rdi + 0x18]
cmp byte [rdi + 0x10], 0x11
jne 0x140008943
mov rax, qword [rsi]
mov rdi, qword [rax + 0x28]
mov rdx, qword [rdi + 8]
mov rcx, qword [rdi]
call sym.nimNewObj
mov rdx, rsi
mov rcx, r12
mov r13, rax
mov qword [rbx], rax
mov r8, rax
call sym.put__system_u8622
mov rbx, r13
jmp 0x140008707
mov rcx, qword [rsi]
test rcx, rcx
je 0x140008980
mov rax, qword [rdi + 0x18]
mov rax, qword [rax + 0x38]
test rax, rax
jne 0x140008985
mov qword [rbx], rcx
jmp 0x1400089ce
call rax
lea rcx, [0x14003c4a0]
mov rsi, rax
call dbg.__emutls_get_address
cmp byte [rax], 0
jne 0x1400089ce
mov qword [rbx], rsi
jmp 0x1400089ce
mov rcx, qword [rdi]
test rcx, rcx
jns 0x1400089c9
movabs r8, 0x7fffffffffffffff
xor edx, edx
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.raiseRangeErrorI
mov rdi, rbx
rep movsb byte [rdi], byte [rsi]
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret