Function at 0x1400a9d30
Capabilities:
Terminate process

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x78
mov rsi, rcx
mov rcx, qword [rcx + 0xa0]
cmp qword [rcx + 8], 0
js 0x1400a9ef0
mov qword [rsp + 0x68], 0
call qword [rsi + 0x98]
mov rcx, qword [0x14012c5f0]
mov rdi, rax
call dbg.__emutls_get_address
cmp byte [rax], 0
mov rbx, rax
jne 0x1400a9eb8
mov qword [rsp + 0x68], rdi
lea rbp, [rsp + 0x68]
test rdi, rdi
je 0x1400a9f28
mov rcx, rdi
call sym.finished__pureZasyncdispatch_u10263
cmp byte [rbx], 0
jne 0x1400a9eb8
test al, al
je 0x1400a9fec
mov rcx, qword [rsi + 0xa0]
call qword [rsi + 0x98]
cmp byte [rbx], 0
mov rdx, rax
jne 0x1400a9eb8
mov rcx, rbp
call sym.eqsink___pureZasyncdispatch_u6250
mov rdi, qword [rsp + 0x68]
cmp byte [rbx], 0
mov rcx, rdi
jne 0x1400a9ebd
mov rax, qword [rsi + 0xa0]
cmp qword [rax + 8], 0
jns 0x1400a9d81
test rdi, rdi
je 0x1400a9f28
lea rax, [sym.testContestSolutionNimAsyncContinue__OOZOOZOOZOOZOOZOOZOnimbleZpkgs50Znimleetcode4548O49O50454953d54a48544855ac4956e5048c4849c]
lea rdx, [rsp + 0x50]
mov rcx, rdi
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x50], rax
call sym.addCallback__pureZasyncfutures_u290
cmp byte [rbx], 0
jne 0x1400a9eb8
mov byte [rbx], 0
mov rcx, qword [rsp + 0x68]
call sym.eqdestroy___pureZasyncdispatch_u6239
cmp byte [rbx], 0
je 0x1400a9edf
nop dword [rax]
mov byte [rbx], 0
mov rcx, qword [rsi + 0x90]
call sym.finished__OOZOOZOOZOOZOOZOOZOnimbleZpkgs50Znimleetcode4548O49O50454953d54a48544855ac4956e5048c4849cf50fb54ebfa5651555055495455
cmp byte [rbx], 0
jne 0x1400a9edf
test al, al
jne 0x1400a9f18
mov qword [rsp + 0x68], 0
mov rcx, qword [0x14012c5e0]
call dbg.__emutls_get_address
xor r8d, r8d
lea rcx, [rsp + 0x68]
mov rdx, qword [rax]
mov rdi, rax
call sym.eqcopy___stdZtypedthreads_u171
mov rbp, qword [rsp + 0x68]
mov rcx, qword [rsi + 0x90]
mov rdx, rbp
call sym.fail__OOZOOZOOZOOZOOZOOZOnimbleZpkgs50Znimleetcode4548O49O50454953d54a48544855ac4956e5048c4849cf50fb54ebfa56515550554954555654
mov rcx, rbp
call sym.eqdestroy___stdZtypedthreads_u168
cmp byte [rbx], 0
jne 0x1400a9edf
mov rax, qword [rdi]
xor r8d, r8d
mov rcx, rdi
mov rdx, qword [rax + 0x38]
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
jmp sym.eqcopy___stdZtypedthreads_u171
mov rcx, qword [rsp + 0x68]
mov edi, 1
mov byte [rbx], 0
call sym.eqdestroy___pureZasyncdispatch_u6239
cmp byte [rbx], 0
jne 0x1400a9e30
mov byte [rbx], dil
test dil, dil
jne 0x1400a9e30
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
ret
mov rcx, qword [0x14012c5f0]
call dbg.__emutls_get_address
cmp byte [rax], 0
mov rbx, rax
jne 0x1400a9e30
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
ret
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
jmp sym.reraiseException
mov rcx, qword [rsi + 0x90]
call sym.finished__OOZOOZOOZOOZOOZOOZOnimbleZpkgs50Znimleetcode4548O49O50454953d54a48544855ac4956e5048c4849cf50fb54ebfa5651555055495455
cmp byte [rbx], 0
jne 0x1400a9ff6
test al, al
jne 0x1400a9e13
mov edx, 8
mov ecx, 0x40
call sym.nimNewObj
lea rcx, [rsp + 0x50]
lea rdx, [rsp + 0x40]
movdqa xmm0, xmmword [0x140125890]
mov rdi, rax
mov rax, qword [0x14012c340]
lea r8, [rsp + 0x30]
mov qword [rdi], rax
lea rax, [0x140124ee0]
mov qword [rdi + 0x10], rax
lea rax, [0x140125620]
mov qword [rsp + 0x40], 0x45
mov qword [rsp + 0x48], rax
movaps xmmword [rsp + 0x30], xmm0
call sym.nsuFormatSingleElem
movdqu xmm1, xmmword [rsp + 0x50]
movups xmmword [rdi + 0x18], xmm1
cmp byte [rbx], 0
jne 0x1400a9ff6
mov qword [rdi + 8], 0
mov rcx, rdi
lea r9, [0x140124ef0]
lea r8, str.testContestSolutionNimAsyncContinue
mov qword [rsp + 0x20], 0x2a
lea rdx, [0x140124ee0]
call sym.raiseExceptionEx
movzx edi, byte [rbx]
mov rcx, qword [rsp + 0x68]
jmp 0x1400a9ec2
mov rdi, qword [rsp + 0x68]
jmp 0x1400a9de3
mov rcx, qword [rsp + 0x68]
mov edi, 1
jmp 0x1400a9ec2