Function at 0x1400cf550
Capabilities:
Terminate process

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x58
pxor xmm0, xmm0
lea rdi, sym.rttiDestroy__pureZparsecfg_u7322
mov qword [r8 + 0x28], 0
mov rsi, rcx
mov rbx, r8
mov qword [r8], rdi
movups xmmword [r8 + 8], xmm0
movups xmmword [r8 + 0x18], xmm0
cmp byte [rcx + 0x68], 2
jne 0x1400cf630
movzx eax, dl
sub eax, 2
cmp eax, 1
jbe 0x1400cf760
lea r12, [rsi + 0x68]
mov rcx, rsi
mov rdx, r12
call sym.rawGetTok__pureZparsecfg_u45
mov rcx, qword [0x140123df0]
call dbg.__emutls_get_address
cmp byte [rax], 0
mov r13, rax
jne 0x1400cf5cd
movzx eax, byte [rsi + 0x68]
sub eax, 3
cmp al, 1
jbe 0x1400cf5e0
add rsp, 0x58
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rdx, r12
mov rcx, rsi
call sym.rawGetTok__pureZparsecfg_u45
cmp byte [r13], 0
jne 0x1400cf5cd
cmp byte [rsi + 0x68], 2
jne 0x1400cf7c0
movzx eax, byte [rbx + 8]
mov ecx, 0xc
mov edx, eax
and edx, 7
bt ecx, edx
jb 0x1400cf9a8
cmp al, 4
ja case.default.0x1400cf629
lea rdx, [0x14011f8a0]
movsxd rax, dword [rdx + rax*4]
add rax, rdx
jmp rax
movups xmmword [r8 + 0x19], xmm0
lea rbp, [rsp + 0x40]
mov qword [r8 + 0x28], 0
mov byte [r8 + 8], 4
movups xmmword [r8 + 9], xmm0
mov rax, qword [rcx + 0x70]
mov rcx, rbp
lea rdx, [rax + 0x1c]
call sym.rawNewString
mov r12, qword [rsp + 0x40]
mov r13, qword [rsp + 0x48]
movabs r10, 0x65206c6f626d7973
movabs r11, 0x2c64657463657078
movabs r9, 0x20747562202c6465
lea rdx, [r13 + r12 + 8]
mov rax, r12
mov r15, r13
mov qword [rdx], r10
add rax, 0x1c
movabs r10, 0x203a646e756f66
mov qword [rdx + 8], r11
mov r14, rax
mov qword [rdx + 0xd], r9
mov qword [rdx + 0x15], r10
jo 0x1400cf9d8
mov rdi, qword [rsi + 0x70]
test rdi, rdi
jle 0x1400cf8f1
mov rcx, rdi
add rcx, 1
jo 0x1400cf9c8
test rcx, rcx
js 0x1400cf8e0
mov rdx, qword [rsi + 0x78]
lea rax, [r15 + r14 + 8]
mov r8, rcx
mov rcx, rax
add rdx, 8
call sym.memcpy
add rdi, r14
jo 0x1400cf9c8
mov rcx, rbp
lea r8, [rsp + 0x30]
mov rdx, rsi
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], r13
call sym.npcerrorStr
mov rbp, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
mov rcx, qword [0x140123df0]
call dbg.__emutls_get_address
cmp byte [rax], 0
jne 0x1400cf5cd
mov qword [rbx + 0x10], rbp
lea rdx, [rsi + 0x68]
mov qword [rbx + 0x18], rdi
mov rcx, rsi
add rsp, 0x58
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.rawGetTok__pureZparsecfg_u45
mov byte [r8 + 8], dl
lea rcx, [rsp + 0x40]
lea rdx, [rsp + 0x30]
movups xmmword [r8 + 0x19], xmm0
mov qword [r8 + 0x28], 0
movups xmmword [r8 + 9], xmm0
movdqu xmm1, xmmword [rsi + 0x70]
movaps xmmword [rsp + 0x30], xmm1
call sym.eqdup___stdZassertions_u33
mov rax, qword [rsp + 0x40]
mov qword [rbx + 0x10], rax
mov rax, qword [rsp + 0x48]
mov qword [rbx + 0x20], 0
mov qword [rbx + 0x18], rax
lea rax, [0x14011fc50]
mov qword [rbx + 0x28], rax
jmp 0x1400cf59f
pxor xmm0, xmm0
mov qword [rbx], rdi
lea rbp, [rsp + 0x40]
movups xmmword [rbx + 0x19], xmm0
mov rcx, rbp
mov qword [rbx + 0x28], 0
mov byte [rbx + 8], 4
movups xmmword [rbx + 9], xmm0
mov rax, qword [rsi + 0x70]
lea rdx, [rax + 0x1c]
call sym.rawNewString
mov r14, qword [rsp + 0x40]
mov r15, qword [rsp + 0x48]
movabs r9, 0x65206c6f626d7973
movabs r10, 0x2c64657463657078
lea rdx, [r15 + r14 + 8]
mov rax, r14
mov r8, r15
mov qword [rdx + 8], r10
add rax, 0x1c
movabs r10, 0x203a646e756f66
mov qword [rdx], r9
movabs r9, 0x20747562202c6465
mov qword [rdx + 0xd], r9
mov r9, rax
mov qword [rdx + 0x15], r10
jo 0x1400cf9f8
mov rdi, qword [rsi + 0x70]
test rdi, rdi
jle 0x1400cf99b
mov rcx, rdi
add rcx, 1
jo 0x1400cfa0f
test rcx, rcx
js 0x1400cf980
mov rdx, qword [rsi + 0x78]
lea rax, [r8 + r9 + 8]
mov r8, rcx
mov qword [rsp + 0x28], r9
mov rcx, rax
add rdx, 8
call sym.memcpy
mov r9, qword [rsp + 0x28]
add rdi, r9
jo 0x1400cf9e5
mov rdx, rsi
lea r8, [rsp + 0x30]
mov rcx, rbp
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], r15
call sym.npcerrorStr
cmp byte [r13], 0
mov rdx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x48]
jne 0x1400cf5cd
mov qword [rbx + 0x10], rdx
mov qword [rbx + 0x18], rax
mov rdx, r12
jmp 0x1400cf73e
movabs r8, 0x7fffffffffffffff
xor edx, edx
call sym.raiseRangeErrorI
mov rdi, r14
jmp 0x1400cf6f9
lea rdx, [0x14011fac0]
mov eax, 6
movdqa xmm2, xmmword [0x14011fad0]
mov qword [rsp + 0x38], rdx
lea rcx, [rsp + 0x40]
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x30], rax
movaps xmmword [rsp + 0x40], xmm2
call sym.raiseFieldErrorStr
jmp 0x1400cf5cd
lea rdx, [0x14011fa60]
mov eax, 9
jmp 0x1400cf90c
lea rdx, [0x14011fa80]
mov eax, 0xf
jmp 0x1400cf90c
lea rdx, [0x14011faa0]
mov eax, 0xf
jmp 0x1400cf90c
lea rdx, [0x14011fa40]
mov eax, 8
jmp 0x1400cf90c
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov qword [rsp + 0x28], r9
call sym.raiseRangeErrorI
mov r9, qword [rsp + 0x28]
mov rdi, r9
jmp 0x1400cf897
movdqu xmm3, xmmword [rsi + 0x70]
lea rdx, [rsp + 0x40]
lea rcx, [rbx + 0x20]
movaps xmmword [rsp + 0x40], xmm3
call sym.eqcopy___stdZassertions_u30
jmp 0x1400cf8ce
call sym.raiseOverflow
jmp 0x1400cf8f1
call sym.raiseOverflow
mov r14, r12
jmp 0x1400cf6b5
call sym.raiseOverflow
mov r9, qword [rsp + 0x28]
jmp 0x1400cf99b
mov qword [rsp + 0x28], r15
call sym.raiseOverflow
mov r8, qword [rsp + 0x28]
mov r9, r14
jmp 0x1400cf849
mov qword [rsp + 0x28], r9
call sym.raiseOverflow
mov r9, qword [rsp + 0x28]
jmp 0x1400cf99b
xor edx, edx
xor eax, eax
jmp 0x1400cf90c