Function at 0x4153c0
Capabilities:
Get number of processors

Disassembly:
lea r12, [rsp - 0x40]
cmp r12, qword [r14 + 0x10]
jbe 0x415937
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 0x41544c
mov edi, dword [rdx + 0xd8]
cmp edi, 1
jg 0x41544c
cmp qword [rdx + 0xd0], 0
jne 0x41544c
lea r8d, [rdi - 1]
nop
mov dword [rdx + 0xd8], r8d
cmp edi, 1
jne 0x41543c
cmp byte [rsi + 0xb9], 0
je 0x41543c
mov qword [rsi + 0x10], 0xfffffffffffffade
mov dword [rsp + 0x34], ecx
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x68], rax
jmp 0x41548d
mov eax, dword [rdx + 0xd8]
lea ecx, [rax - 1]
nop
mov dword [rdx + 0xd8], ecx
nop dword [rax]
cmp eax, 1
jne 0x415476
cmp byte [rsi + 0xb9], 0
je 0x415476
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.004152c0
test al, al
jne 0x41549a
xor eax, eax
jmp 0x4154a6
call fcn.0041f220
cmp rax, 0xffffffffffffffff
setne al
test al, al
jne 0x41547f
nop
lea rax, [0x00714038]
xor ebx, ebx
xor ecx, ecx
xor edi, edi
mov esi, 0x12
nop dword [rax]
call fcn.004438a0
mov rax, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x70]
mov ecx, dword [rsp + 0x34]
call fcn.004152c0
nop dword [rax + rax]
test al, al
je 0x4155cf
mov edx, dword [0x007597c0]
cmp edx, 1
jne 0x4154fa
mov edx, 1
jmp 0x41550c
cmp edx, 2
mov edx, 0
mov r8d, 2
cmove rdx, r8
mov qword [rsp + 0x60], rdx
lea rax, [0x006e61cc]
xor ebx, ebx
xor ecx, ecx
xor edi, edi
mov esi, 0x12
call fcn.004438a0
nop
lea rax, [0x006e61c8]
xor ebx, ebx
xor ecx, ecx
xor edi, edi
mov esi, 0x12
nop dword [rax + rax]
call fcn.004438a0
mov rdx, qword [rsp + 0x68]
cmp rdx, 2
sete byte [0x00714050]
cmp byte [0x00714790], 0
jne 0x415564
xor ebx, ebx
xor eax, eax
jmp 0x41556e
call fcn.00451040
mov rdx, qword [rsp + 0x68]
test rbx, rbx
je 0x4155bd
mov qword [rsp + 0x78], rax
call fcn.00451400
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 0x4155b8
cmp byte [r14 + 0xb9], 0
je 0x4155b8
mov qword [r14 + 0x10], 0xfffffffffffffade
mov rdx, qword [rsp + 0x68]
mov rcx, qword [0x00713380]
mov rsi, qword [0x00713388]
xor eax, eax
jmp 0x4155f1
nop
lea rax, [0x00714038]
xor ebx, ebx
xor ecx, ecx
nop dword [rax + rax]
call fcn.00443c00
add rsp, 0xb8
pop rbp
ret
inc rax
cmp rax, rsi
jge 0x415615
mov rdi, qword [rcx + rax*8]
mov rdi, qword [rdi + 0x38]
mov edi, dword [rdi + 0x488]
mov r8d, dword [0x0072b3e0]
cmp edi, r8d
je 0x4155ee
jmp 0x415925
call fcn.00416c60
lea rax, fcn.004177c0
mov qword [rsp], rax
call fcn.00462ae0
xorps xmm15, xmm15
mov r14, qword [0x00759320]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [0x0075913c]
mov dword [0x0071408c], eax
mov dword [0x00714090], eax
mov ecx, dword [0x00759140]
cmp ecx, eax
jge 0x41565e
mov dword [0x0071408c], ecx
mov rax, qword [0x00759fa8]
mov qword [0x007140c0], rax
mov qword [0x007140b8], 0
mov rax, qword [rsp + 0x60]
mov qword [0x00714048], rax
call fcn.00466820
xorps xmm15, xmm15
mov r14, qword [0x00759320]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp]
mov qword [rsp + 0x58], rax
mov qword [0x00714098], rax
mov byte [rsp + 0x38], 0
movups xmmword [rsp + 0x40], xmm15
mov qword [rsp + 0x50], 0
lea rax, [0x004159e0]
mov qword [rsp + 0xa8], rax
lea rax, [rsp + 0x38]
mov qword [rsp + 0xb0], rax
lea rcx, [rsp + 0xa8]
mov qword [rsp], rcx
call fcn.00462ae0
xorps xmm15, xmm15
mov r14, qword [0x00759320]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x50]
add qword [0x007140f0], rax
add qword [0x007140f8], rax
lea rax, [0x00606628]
mov qword [rsp], rax
nop dword [rax + rax]
call fcn.00462ae0
xorps xmm15, xmm15
mov r14, qword [0x00759320]
mov r14, qword gs:[r14]
mov r14, qword [r14]
call fcn.00417920
nop
mov eax, 1
lea rcx, [0x00714088]
lock xadd dword [rcx], eax
mov rbx, qword [rsp + 0x58]
movsxd rcx, dword [0x0075913c]
lea rax, [0x00759f40]
mov rdi, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
mov r8d, dword [rsp + 0x34]
call fcn.0041b6e0
mov rcx, qword [rsp + 0x58]
lea rax, [0x007596e0]
mov ebx, 1
call fcn.00417cc0
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x4157a0
xor eax, eax
call fcn.0043efe0
mov rax, qword [rsp + 0x60]
nop
mov ecx, 1
lea rdx, [0x00759108]
xchg dword [rdx], ecx
mov ecx, dword [0x00759108]
cmp ecx, 1
jne 0x4157c2
mov ecx, 1
nop
jmp 0x4157c8
cmp ecx, 2
sete cl
mov byte [0x00759410], cl
nop
mov dword [0x00713fd0], 0xffffffff
mov dword [0x00713fe0], 0xffffffff
call fcn.00418460
call fcn.0041b580
mov eax, 1
lea rcx, [0x0075910c]
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.00466820
xorps xmm15, xmm15
mov r14, qword [0x00759320]
mov r14, qword gs:[r14]
mov r14, qword [r14]
movsxd rax, dword [0x00714090]
mov rcx, qword [rsp]
sub rcx, qword [rsp + 0x48]
imul rcx, rax
add qword [0x007140f0], rcx
add qword [0x007140f8], rcx
movups xmmword [rsp + 0x98], xmm15
lea rax, [0x00415960]
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.00462ae0
xorps xmm15, xmm15
mov r14, qword [0x00759320]
mov r14, qword gs:[r14]
mov r14, qword [r14]
nop
lea rax, [0x006e61c8]
xor ebx, ebx
xor ecx, ecx
call fcn.00443c00
mov rax, qword [rsp + 0x80]
mov ecx, dword [rax + 0xd8]
lea edx, [rcx - 1]
nop
mov dword [rax + 0xd8], edx
cmp ecx, 1
jne 0x4158f4
cmp byte [r14 + 0xb9], 0
je 0x4158ea
mov qword [r14 + 0x10], 0xfffffffffffffade
mov rdx, qword [rsp + 0x60]
test rdx, rdx
jmp 0x4158fc
mov rdx, qword [rsp + 0x60]
test rdx, rdx
jmp 0x4158fc
mov rdx, qword [rsp + 0x60]
test rdx, rdx
je 0x41590b
nop
lea rax, [0x00606648]
call fcn.00462a60
nop
lea rax, [0x00714038]
xor ebx, ebx
xor ecx, ecx
call fcn.00443c00
add rsp, 0xb8
pop rbp
ret
lea rax, [0x00581690]
mov ebx, 0x14
call fcn.0045dc60
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov dword [rsp + 0x18], ecx
call fcn.00462c00
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov ecx, dword [rsp + 0x18]
jmp fcn.004153c0