Function at 0x14001e520
Capabilities:
Terminate process

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x78
pxor xmm0, xmm0
mov rdi, qword [rcx]
mov r12, qword [rcx + 8]
mov rcx, rdx
movups xmmword [r9 + 1], xmm0
mov rbx, rdx
mov ebp, r8d
add rcx, 1
movups xmmword [r9 + 0x11], xmm0
mov rsi, r9
mov qword [r9 + 0x20], 0
mov rax, rcx
mov byte [r9], 0x20
mov byte [r9 + 2], 0x2d
jo 0x14001e9c8
cmp rdi, rcx
jle 0x14001e9e0
test rcx, rcx
js 0x14001ea20
movzx edx, byte [rcx + r12 + 8]
sub edx, 0x3c
cmp dl, 0x22
ja 0x14001ebc1
movabs r8, 0x400000005
bt r8, rdx
jae 0x14001ebc1
test rbx, rbx
js 0x14001e9a8
cmp rbx, rdi
jge 0x14001e9a8
movzx edx, byte [rbx + r12 + 8]
mov byte [r9], dl
movzx eax, byte [rcx + r12 + 8]
mov byte [r9 + 1], al
mov rax, rbx
add rax, 2
jo 0x14001e9c8
cmp rax, rdi
jge 0x14001e990
test rax, rax
js 0x14001ea40
movzx edx, byte [rax + r12 + 8]
cmp dl, 0x2d
ja 0x14001ea98
movabs rcx, 0x280100000000
bt rcx, rdx
jae 0x14001ea70
lea rbx, [rax + 1]
mov byte [rsi + 2], dl
cmp rbx, rdi
jge 0x14001eac0
cmp byte [rbx + r12 + 8], 0x23
lea rcx, [rax + 2]
jne 0x14001ea30
mov rbx, rcx
add rcx, 1
mov byte [rsi + 3], 1
jo 0x14001e9c8
cmp rcx, rdi
jge 0x14001e688
test rbx, rbx
js 0x14001e9a8
cmp rdi, rbx
jle 0x14001e9a8
cmp byte [rbx + r12 + 8], 0x30
jne 0x14001e688
test rcx, rcx
js 0x14001ea20
cmp rdi, rcx
jle 0x14001ea20
movzx eax, byte [rcx + r12 + 8]
sub eax, 0x30
cmp al, 9
ja 0x14001e688
mov byte [rsi + 4], 1
mov rbx, rcx
nop dword [rax]
lea r14, [rsp + 0x50]
lea rdx, [rsi + 8]
mov r8, rbx
mov qword [rsp + 0x50], rdi
mov rcx, r14
mov qword [rsp + 0x58], r12
call sym.parseSaturatedNatural__pureZparseutils_u917
mov rcx, qword [0x1400f8300]
mov r13, rax
call dbg.__emutls_get_address
cmp byte [rax], 0
mov r15, rax
jne 0x14001e97f
add r13, rbx
mov r8, r13
jo 0x14001e9c8
cmp r13, rdi
jge 0x14001eb40
lea rdx, [rdi - 1]
mov rcx, r13
test r13, r13
js 0x14001e9af
cmp byte [r13 + r12 + 8], 0x2e
jne 0x14001eb2f
add r13, 1
lea rdx, [rsi + 0x10]
mov rcx, r14
mov qword [rsp + 0x50], rdi
mov r8, r13
mov qword [rsp + 0x58], r12
call sym.parseSaturatedNatural__pureZparseutils_u917
cmp byte [r15], 0
jne 0x14001e97f
add rax, r13
jo 0x14001e9c8
mov r8, rax
cmp rdi, rax
jle 0x14001eb1d
test rax, rax
js 0x14001ea40
movzx edx, byte [r8 + r12 + 8]
mov eax, edx
and eax, 0xffffffdf
sub eax, 0x41
cmp al, 0x19
jbe 0x14001eb16
mov qword [rsi + 0x20], r8
mov qword [rsp + 0x38], r8
test bpl, bpl
jne 0x14001e97f
mov edx, 8
mov ecx, 0x40
lea rbp, [0x1400e9840]
call sym.nimNewObj
mov r9, rdi
mov rbx, rax
mov rax, qword [0x1400f80e0]
add r9, 0xffffffffffffffff
mov qword [rbx + 0x10], rbp
mov qword [rbx], rax
mov qword [rsp + 0x48], r9
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x68], 0
jo 0x14001eb4a
mov r8, qword [rsp + 0x38]
sub r9, r8
jo 0x14001eb4a
mov rsi, r9
xor r13d, r13d
add rsi, 1
seto r13b
jo 0x14001eb4a
test rsi, rsi
js 0x14001eb85
mov rdx, rsi
mov rcx, r14
mov qword [rsp + 0x38], r8
call sym.mnewString
movdqu xmm1, xmmword [rsp + 0x50]
movaps xmmword [rsp + 0x60], xmm1
test rsi, rsi
je 0x14001e881
lea rax, [rsp + 0x60]
mov r8, qword [rsp + 0x38]
mov qword [rsp + 0x40], rax
jmp 0x14001e86b
mov rdx, qword [rsp + 0x68]
test rdx, rdx
je 0x14001e834
test byte [rdx + 7], 0x40
je 0x14001e834
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x38], r8
call sym.nimPrepareStrMutationImpl__system_u2390
mov r8, qword [rsp + 0x38]
mov rcx, r8
add rcx, r13
jo 0x14001eb4a
test rcx, rcx
js 0x14001eb9e
cmp rcx, rdi
jge 0x14001eb9e
movzx ecx, byte [r12 + rcx + 8]
mov rdx, qword [rsp + 0x68]
mov byte [rdx + r13 + 8], cl
add r13, 1
cmp rsi, r13
jle 0x14001e881
mov rdx, qword [rsp + 0x60]
cmp rdx, r13
jg 0x14001e810
sub rdx, 1
mov rcx, r13
call sym.raiseIndexError2
cmp byte [r15], 0
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
jne 0x14001e970
mov rcx, r14
lea rdx, [rsi + 0x25]
call sym.rawNewString
mov r13, qword [rsp + 0x50]
mov r14, qword [rsp + 0x58]
movabs rdx, 0x2064696c61766e69
movabs rcx, 0x732074616d726f66
lea rax, [r13 + r14 + 8]
mov r12, r13
mov qword [rax], rdx
add r12, 0x25
movabs rdx, 0x63202c676e697274
mov qword [rax + 8], rcx
movabs rcx, 0x617020746f6e6e61
mov qword [rax + 0x10], rdx
movabs rdx, 0x203a6573726170
mov qword [rax + 0x18], rcx
mov qword [rax + 0x1e], rdx
jo 0x14001ebad
test rsi, rsi
jle 0x14001eb65
mov rcx, rsi
add rcx, 1
jo 0x14001ebba
test rcx, rcx
js 0x14001eb54
lea rax, [r12 + r14 + 8]
mov r8, rcx
lea rdx, [rdi + 8]
mov rcx, rax
call sym.memcpy
add rsi, r12
jo 0x14001ebba
mov qword [rbx + 0x18], rsi
mov rdx, rbp
mov rcx, rbx
lea r9, str.strformat.nim
mov qword [rbx + 0x20], r14
lea r8, str.parseStandardFormatSpecifier
mov qword [rbx + 8], 0
mov qword [rsp + 0x20], 0x1d8
call sym.raiseExceptionEx
test rdi, rdi
je 0x14001e97f
test byte [rdi + 7], 0x40
je 0x14001eb6d
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rdx, rax
add rdx, 1
jo 0x14001e9c8
mov rbx, rax
cmp rdi, rdx
jle 0x14001e688
nop dword [rax]
lea rdx, [rdi - 1]
mov rcx, rbx
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.raiseIndexError2
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.raiseOverflow
cmp rdx, rdi
jge 0x14001e688
test rbx, rbx
js 0x14001e9a8
movzx edx, byte [rbx + r12 + 8]
lea r8d, [rdx - 0x3c]
cmp r8b, 0x22
ja 0x14001eae8
movabs r9, 0x400000005
bt r9, r8
jae 0x14001ea50
mov byte [rsi + 1], dl
jmp 0x14001e5d9
lea rdx, [rdi - 1]
jmp 0x14001e9af
cmp dl, 0x23
je 0x14001e62e
nop
cmp rdi, rcx
jg 0x14001e656
jmp 0x14001e688
lea rdx, [rdi - 1]
mov rcx, rax
jmp 0x14001e9af
mov rax, rbx
cmp rbx, rdi
jl 0x14001ea7d
cmp rdi, rcx
jg 0x14001e64d
jmp 0x14001e688
lea rcx, [rax + 1]
cmp dl, 0x23
je 0x14001e62e
lea rcx, [rax + 1]
mov rbx, rax
cmp rcx, rdi
jl 0x14001e64d
jmp 0x14001e688
lea rcx, [rax + 1]
mov rbx, rax
cmp rcx, rdi
jge 0x14001e688
cmp byte [rax + r12 + 8], 0x30
je 0x14001e670
jmp 0x14001e688
add rax, 2
js 0x14001e9c8
cmp rax, rbx
jb 0x14001e9c8
cmp rax, rdi
jl 0x14001e9a8
jmp 0x14001e688
cmp dl, 0x2d
ja 0x14001ebcf
movabs rax, 0x280100000000
bt rax, rdx
jae 0x14001ebcf
cmp rbx, rdi
jge 0x14001e9a8
mov rax, rbx
jmp 0x14001e60e
mov byte [rsi + 0x18], dl
add r8, 1
mov qword [rsi + 0x20], r8
cmp r8, rdi
jne 0x14001e751
jmp 0x14001e97f
mov qword [rsi + 0x10], 0xffffffffffffffff
jmp 0x14001e737
mov qword [rsi + 0x10], 0xffffffffffffffff
jmp 0x14001eb1d
call sym.raiseOverflow
jmp 0x14001e881
movabs r8, 0x7fffffffffffffff
xor edx, edx
call sym.raiseRangeErrorI
mov rsi, r12
jmp 0x14001e93e
mov rcx, rdi
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.deallocShared
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov rcx, rsi
call sym.raiseRangeErrorI
jmp 0x14001e881
mov rdx, qword [rsp + 0x48]
call sym.raiseIndexError2
jmp 0x14001e881
call sym.raiseOverflow
mov r12, r13
jmp 0x14001e902
call sym.raiseOverflow
jmp 0x14001eb65
cmp rbx, rdi
jl 0x14001e9e9
jmp 0x14001e9a8
cmp rbx, rdi
jl 0x14001ea26
cmp rdi, rcx
jg 0x14001e9a8
jmp 0x14001e688