Function at 0x140012840
Capabilities:
Get number of processors

Disassembly:
lea r12, [rsp - 0x40]
cmp r12, qword [r14 + 0x10]
jbe 0x140012db7
push rbp
mov rbp, rsp
sub rsp, 0xb8
mov qword [rsp + 0x88], r14
mov rdx, qword [r14 + 0x30]
nop
inc dword [rdx + 0xd8]
mov rdx, qword [rsp + 0x88]
mov rdx, qword [rdx + 0x30]
mov rsi, r14
nop dword [rax]
cmp qword [rdx], rsi
je 0x1400128cc
mov edi, dword [rdx + 0xd8]
cmp edi, 1
jg 0x1400128cc
cmp qword [rdx + 0xd0], 0
jne 0x1400128cc
lea r8d, [rdi - 1]
nop
mov dword [rdx + 0xd8], r8d
cmp edi, 1
jne 0x1400128bc
cmp byte [rsi + 0xb9], 0
je 0x1400128bc
mov qword [rsi + 0x10], 0xfffffffffffffade
mov dword [rsp + 0x34], ecx
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x68], rax
jmp 0x14001290d
mov eax, dword [rdx + 0xd8]
lea ecx, [rax - 1]
nop
mov dword [rdx + 0xd8], ecx
nop dword [rax]
cmp eax, 1
jne 0x1400128f6
cmp byte [rsi + 0xb9], 0
je 0x1400128f6
mov qword [rsi + 0x10], 0xfffffffffffffade
add rsp, 0xb8
pop rbp
ret
mov rax, qword [rsp + 0x68]
mov ecx, dword [rsp + 0x34]
mov rbx, qword [rsp + 0x70]
call fcn.140012740
test al, al
jne 0x14001291a
xor eax, eax
jmp 0x140012926
call fcn.14001bf00
cmp rax, 0xffffffffffffffff
setne al
test al, al
jne 0x1400128ff
nop
lea rax, [0x1402da6d8]
xor ebx, ebx
xor ecx, ecx
xor edi, edi
mov esi, 0x12
nop dword [rax]
call fcn.14003b4a0
mov rax, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x34]
call fcn.140012740
nop dword [rax + rax]
test al, al
je 0x140012a4f
mov edx, dword [0x14031fb80]
cmp edx, 1
jne 0x14001297a
mov edx, 1
jmp 0x14001298c
cmp edx, 2
mov edx, 0
mov r8d, 2
cmove rdx, r8
mov qword [rsp + 0x60], rdx
lea rax, [0x1401d104c]
xor ebx, ebx
xor ecx, ecx
xor edi, edi
mov esi, 0x12
call fcn.14003b4a0
nop
lea rax, [0x1401d1048]
xor ebx, ebx
xor ecx, ecx
xor edi, edi
mov esi, 0x12
nop dword [rax + rax]
call fcn.14003b4a0
mov rdx, qword [rsp + 0x68]
cmp rdx, 2
sete byte [0x1402da6f0]
cmp byte [0x1402dae30], 0
jne 0x1400129e4
xor ebx, ebx
xor eax, eax
jmp 0x1400129ee
call fcn.1400476c0
mov rdx, qword [rsp + 0x68]
test rbx, rbx
je 0x140012a3d
mov qword [rsp + 0x78], rax
call fcn.140047a80
nop
mov ecx, 1
mov rdx, qword [rsp + 0x78]
lock xadd qword [rdx + 0x2c0], rcx
mov ecx, dword [rdx + 0xd8]
lea esi, [rcx - 1]
nop
mov dword [rdx + 0xd8], esi
cmp ecx, 1
jne 0x140012a38
cmp byte [r14 + 0xb9], 0
je 0x140012a38
mov qword [r14 + 0x10], 0xfffffffffffffade
mov rdx, qword [rsp + 0x68]
mov rcx, qword [0x1402d9e70]
mov rsi, qword [0x1402d9e78]
xor eax, eax
jmp 0x140012a71
nop
lea rax, [0x1402da6d8]
xor ebx, ebx
xor ecx, ecx
nop dword [rax + rax]
call fcn.14003b800
add rsp, 0xb8
pop rbp
ret
inc rax
cmp rax, rsi
jge 0x140012a95
mov rdi, qword [rcx + rax*8]
mov rdi, qword [rdi + 0x38]
mov edi, dword [rdi + 0x488]
mov r8d, dword [0x1402f18a0]
cmp edi, r8d
je 0x140012a6e
jmp 0x140012da5
call fcn.140014020
lea rax, fcn.140014ae0
mov qword [rsp], rax
call fcn.140056ac0
xorps xmm15, xmm15
mov r14, qword [0x14031f798]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [0x14031f5dc]
mov dword [0x1402da72c], eax
mov dword [0x1402da730], eax
mov ecx, dword [0x14031f5e0]
cmp ecx, eax
jge 0x140012ade
mov dword [0x1402da72c], ecx
mov rax, qword [0x140320068]
mov qword [0x1402da760], rax
mov qword [0x1402da758], 0
mov rax, qword [rsp + 0x60]
mov qword [0x1402da6e8], rax
call fcn.14005a580
xorps xmm15, xmm15
mov r14, qword [0x14031f798]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp]
mov qword [rsp + 0x58], rax
mov qword [0x1402da738], rax
mov byte [rsp + 0x38], 0
movups xmmword [rsp + 0x40], xmm15
mov qword [rsp + 0x50], 0
lea rax, [0x140012e60]
mov qword [rsp + 0xa8], rax
lea rax, [rsp + 0x38]
mov qword [rsp + 0xb0], rax
lea rcx, [rsp + 0xa8]
mov qword [rsp], rcx
call fcn.140056ac0
xorps xmm15, xmm15
mov r14, qword [0x14031f798]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x50]
add qword [0x1402da790], rax
add qword [0x1402da798], rax
lea rax, [0x14021f740]
mov qword [rsp], rax
nop dword [rax + rax]
call fcn.140056ac0
xorps xmm15, xmm15
mov r14, qword [0x14031f798]
mov r14, qword gs:[r14]
mov r14, qword [r14]
call fcn.140014bc0
nop
mov eax, 1
lea rcx, [0x1402da728]
lock xadd dword [rcx], eax
mov rbx, qword [rsp + 0x58]
movsxd rcx, dword [0x14031f5dc]
lea rax, [0x140320000]
mov rdi, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
mov r8d, dword [rsp + 0x34]
call fcn.140018680
mov rcx, qword [rsp + 0x58]
lea rax, [0x14031faa0]
mov ebx, 1
call fcn.140014e80
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x140012c20
xor eax, eax
call fcn.140038700
mov rax, qword [rsp + 0x60]
nop
mov ecx, 1
lea rdx, [0x14031f5a8]
xchg dword [rdx], ecx
mov ecx, dword [0x14031f5a8]
cmp ecx, 1
jne 0x140012c42
mov ecx, 1
nop
jmp 0x140012c48
cmp ecx, 2
sete cl
mov byte [0x14031f7d0], cl
nop
mov dword [0x1402da670], 0xffffffff
mov dword [0x1402da680], 0xffffffff
call fcn.140015620
call fcn.140018520
mov eax, 1
lea rcx, [0x14031f5ac]
xchg dword [rcx], eax
mov rax, qword [r14 + 0x30]
nop
inc dword [rax + 0xd8]
mov rax, qword [r14 + 0x30]
mov qword [rsp + 0x80], rax
call fcn.14005a580
xorps xmm15, xmm15
mov r14, qword [0x14031f798]
mov r14, qword gs:[r14]
mov r14, qword [r14]
movsxd rax, dword [0x1402da730]
mov rcx, qword [rsp]
sub rcx, qword [rsp + 0x48]
imul rcx, rax
add qword [0x1402da790], rcx
add qword [0x1402da798], rcx
movups xmmword [rsp + 0x98], xmm15
lea rax, [0x140012de0]
mov qword [rsp + 0x90], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x98], rax
lea rax, [rsp + 0x38]
mov qword [rsp + 0xa0], rax
lea rax, [rsp + 0x90]
mov qword [rsp], rax
call fcn.140056ac0
xorps xmm15, xmm15
mov r14, qword [0x14031f798]
mov r14, qword gs:[r14]
mov r14, qword [r14]
nop
lea rax, [0x1401d1048]
xor ebx, ebx
xor ecx, ecx
call fcn.14003b800
mov rax, qword [rsp + 0x80]
mov ecx, dword [rax + 0xd8]
lea edx, [rcx - 1]
nop
mov dword [rax + 0xd8], edx
cmp ecx, 1
jne 0x140012d74
cmp byte [r14 + 0xb9], 0
je 0x140012d6a
mov qword [r14 + 0x10], 0xfffffffffffffade
mov rdx, qword [rsp + 0x60]
test rdx, rdx
jmp 0x140012d7c
mov rdx, qword [rsp + 0x60]
test rdx, rdx
jmp 0x140012d7c
mov rdx, qword [rsp + 0x60]
test rdx, rdx
je 0x140012d8b
nop
lea rax, [0x14021f760]
call fcn.140056a40
nop
lea rax, [0x1402da6d8]
xor ebx, ebx
xor ecx, ecx
call fcn.14003b800
add rsp, 0xb8
pop rbp
ret
lea rax, [0x140218db1]
mov ebx, 0x14
call fcn.140052a20
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov dword [rsp + 0x18], ecx
call fcn.140056be0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov ecx, dword [rsp + 0x18]
jmp fcn.140012840