Function at 0x14013cef0
Capabilities:
Get number of processors

Disassembly:
push rbp
push r14
push rsi
push rdi
push rbx
sub rsp, 0x70
lea rbp, [rsp + 0x70]
mov qword [rbp - 8], 0xfffffffffffffffe
mov rdi, r9
mov qword [rbp - 0x50], r8
mov qword [rbp - 0x48], rdx
mov rsi, rcx
mov eax, dword [0x140296248]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0xa0]
cmp eax, 1
je 0x14013cf80
test eax, eax
jne 0x14013d1c2
mov byte [rbp - 9], 1
mov eax, dword [0x140296248]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea rcx, [rax + 0x50]
lea rdx, [0x14013f2b0]
call fcn.140189790
mov eax, dword [0x140296248]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov byte [rax + 0xa0], 1
mov eax, dword [0x140296248]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0x50]
movabs rcx, 0x7ffffffffffffffe
cmp rax, rcx
ja 0x14013d17c
lea rcx, [rax + 1]
mov edx, dword [0x140296248]
mov r8, qword gs:[0x58]
mov rdx, qword [r8 + rdx*8]
mov qword [rdx + 0x50], rcx
mov rdx, qword [rdx + 0x58]
cmp rdx, 2
je 0x14013d18e
mov eax, dword [0x140296248]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rbx, qword [rax + 0x60]
mov ecx, 1
mov r8d, 1
lock xadd qword [rbx], r8
test rdx, rdx
je 0x14013d01a
mov eax, 0x118
test r8, r8
jns 0x14013d02a
jmp 0x14013d1d7
test r8, r8
js 0x14013d1d7
mov eax, 0xb8
xor ecx, ecx
mov edx, dword [0x140296248]
mov r8, qword gs:[0x58]
mov rdx, qword [r8 + rdx*8]
dec qword [rdx + 0x50]
mov rdx, qword [rbp - 0x48]
mov qword [rbp - 0x40], rdx
mov rdx, qword [rbp - 0x50]
mov qword [rbp - 0x38], rdx
mov qword [rbp - 0x28], rcx
mov qword [rbp - 0x20], rbx
cmp qword [rbx + rax], 0
je 0x14013d1ac
add rbx, rax
lea rdi, [rbx + 0x20]
mov cl, 1
xor eax, eax
lock cmpxchg byte [rbx + 0x20], cl
je 0x14013d087
mov rcx, rdi
mov r8d, 0x3b9aca00
call fcn.1401a8aa0
mov qword [rbp - 0x18], rdi
lea rcx, [rbx + 0x28]
call fcn.140146f40
mov rdi, rdx
test rax, rax
je 0x14013d0b3
xor edx, edx
mov al, 1
mov rcx, qword [rbp - 0x18]
lock cmpxchg byte [rcx], dl
je 0x14013d106
xor edx, edx
call fcn.1401a9010
jmp 0x14013d106
mov qword [rbp - 0x30], rdi
xor edx, edx
mov al, 1
mov rcx, qword [rbp - 0x18]
lock cmpxchg byte [rcx], dl
je 0x14013d0cc
xor edx, edx
call fcn.1401a9010
mov r14, qword [rbp - 0x30]
mov cl, 1
mov dl, 2
call fcn.140157330
lea r8, [r14 + 0x80]
lea rcx, [rbp - 0x40]
mov rdx, rbx
mov r9d, eax
call fcn.14015a900
mov rdi, rax
test rax, rax
je 0x14013d167
lock dec qword [r14]
jne 0x14013d106
lea rcx, [rbp - 0x30]
call fcn.14013c710
lea rcx, [rbp - 0x20]
cmp qword [rbp - 0x28], 0
je 0x14013d122
mov rax, qword [rbp - 0x20]
lock dec qword [rax]
jne 0x14013d131
call fcn.14013c6d0
jmp 0x14013d131
mov rax, qword [rbp - 0x20]
lock dec qword [rax]
jne 0x14013d131
call fcn.14013ca70
mov qword [rsi + 8], rdi
mov qword [rsi], 2
mov rax, qword [rbp - 0x40]
mov qword [rbp - 0x18], rax
mov rcx, qword [rbp - 0x38]
call fcn.140139d90
mov byte [rbp - 9], 0
mov rcx, qword [rbp - 0x18]
call qword [sym.imp.ws2_32.dll_closesocket]
nop
add rsp, 0x70
pop rbx
pop rdi
pop rsi
pop r14
pop rbp
ret
movups xmm0, xmmword [rbp - 0x28]
movups xmm1, xmmword [rbp - 0x40]
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], r14
movups xmmword [rsi + 0x18], xmm1
jmp 0x14013d15b
mov byte [rbp - 9], 1
lea rcx, str.C:Users_shred.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tokio_1.36.0_src_runtimecontextcurrent.rs
call fcn.1401ac0c0
jmp 0x14013d1d7
mov ecx, dword [0x140296248]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov qword [rcx + 0x50], rax
xor eax, eax
jmp 0x14013d1c4
lea rcx, str.A_Tokio_1.x_context_was_found__but_IO_is_disabled._Call__enable_io__on_the_runtime_builder_to_enable_IO.A_Tokio_1.x_context_was_found__but_timers_are_disabled._Call__enable_time__on_the_runtime_builder_to_enable_timers.Oh_no__We_never_placed_the_Core_back__this_is_a_bug_
mov edx, 0x68
mov r8, rdi
call fcn.1401ac140
jmp 0x14013d1d7
mov al, 1
mov byte [rbp - 0x28], al
mov byte [rbp - 9], 1
lea rcx, [rbp - 0x28]
mov rdx, rdi
call fcn.1401a8000
ud2