Function at 0x50f210
Capabilities:
Get number of processors

Disassembly:
push 0xe0
mov eax, 0x103056e6
call fcn.00498062
mov ebx, ecx
mov dword [ebp - 0xd4], ebx
mov esi, dword [ebp + 8]
cmp dword [esi + 0x28], 0
jne 0x53b9d0
cmp dword [esi + 0x8c], 0
jne 0x53b9d7
lea eax, [ebp - 0xec]
push eax
push 0x18
pop edi
push edi
push dword [ebx + 0x8c]
call dword [0x103389cc]
cmp eax, edi
jne 0x50f469
push dword [ebp - 0xe4]
call dword [0x1033841c]
mov edi, eax
mov dword [ebp - 0xb8], 0x1005086c
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0xa0], eax
xor eax, eax
pop ecx
mov dword [ebp - 0xd0], edi
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], eax
push eax
mov dword [ebp - 4], eax
call dword [0x103389c4]
push eax
lea ecx, [ebp - 0xb8]
call fcn.004e6e70
mov eax, dword [ebx + 0x8c]
test eax, eax
je 0x50f50e
push eax
push dword [ebp - 0xb4]
call dword [0x103389bc]
mov dword [ebp - 0xa4], eax
test eax, eax
je 0x50f457
push 0x54
lea eax, [ebp - 0x9c]
push 0
push eax
call fcn.004f110d
add esp, 0xc
push 0x18
pop eax
cmp word [ebp - 0xda], ax
jb 0x53b9e3
lea eax, [ebp - 0x9c]
push eax
push 0x54
push dword [ebx + 0x8c]
call dword [0x103389cc]
test eax, eax
je 0x53b9e3
push 0xa
pop ecx
xor eax, eax
lea edi, [ebp - 0x3c]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0xe8]
xor ecx, ecx
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0xe4]
mov dword [ebp - 0x38], eax
mov ax, word [ebp - 0xdc]
mov word [ebp - 0x34], ax
mov ax, word [ebp - 0xda]
push ecx
push ecx
mov word [ebp - 0x32], ax
lea eax, [ebp - 0xcc]
push eax
push ecx
lea eax, [ebp - 0x40]
mov dword [ebp - 0x40], 0x28
push eax
push dword [ebp - 0xb4]
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0xcc], ecx
call dword [0x10338968]
mov edi, eax
test edi, edi
je 0x50f445
xor eax, eax
mov dword [ebp - 0xc8], 0x1005086c
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xbc], eax
mov byte [ebp - 4], 1
push dword [ebp - 0xb4]
call dword [0x103389c4]
push eax
lea ecx, [ebp - 0xc8]
call fcn.004e6e70
push edi
push dword [ebp - 0xc4]
call dword [0x103389bc]
mov dword [ebp - 0xa8], eax
test eax, eax
je 0x50f515
push 0xcc0020
xor eax, eax
push eax
push eax
push dword [ebp - 0xb4]
push dword [ebp - 0xd0]
push dword [ebp - 0xa0]
push eax
push eax
push dword [ebp - 0xc4]
call dword [0x10338978]
push dword [ebp - 0xa8]
push dword [ebp - 0xc4]
call dword [0x103389bc]
mov dword [esi + 0x8c], edi
lea ecx, [ebp - 0xc8]
call fcn.004e6f20
push dword [ebp - 0xa4]
push dword [ebp - 0xb4]
call dword [0x103389bc]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xb8]
call fcn.004e6f20
mov eax, dword [ebx + 0x54]
lea ecx, [esi + 0x98]
mov dword [esi + 0x54], eax
mov eax, dword [ebx + 0x58]
mov dword [esi + 0x58], eax
mov eax, dword [ebx + 0x64]
mov dword [esi + 0x64], eax
mov eax, dword [ebx + 0x68]
mov dword [esi + 0x68], eax
mov eax, dword [ebx + 0x18]
mov dword [esi + 0x18], eax
lea eax, [ebx + 0x98]
push eax
call fcn.004f4650
mov eax, dword [ebx + 0x1c]
mov dword [esi + 0x1c], eax
mov eax, dword [ebx + 4]
mov dword [esi + 4], eax
mov eax, dword [ebx + 0xa8]
mov dword [esi + 0xa8], eax
mov eax, dword [ebx + 0x24]
mov dword [esi + 0x24], eax
mov eax, dword [ebx + 0xb0]
mov dword [esi + 0xb0], eax
mov eax, dword [ebx + 0x2c]
mov dword [esi + 0x2c], eax
mov eax, dword [ebx + 8]
mov dword [esi + 8], eax
fld qword [ebx + 0xb8]
fstp qword [esi + 0xb8]
mov eax, dword [ebx + 0x5c]
mov dword [esi + 0x5c], eax
mov eax, dword [ebx + 0x60]
mov dword [esi + 0x60], eax
mov edi, dword [ebx + 0xc4]
test edi, edi
jne 0x53b9fb
mov edi, dword [ebx + 0xe0]
test edi, edi
jne 0x53ba67
xor eax, eax
inc eax
call fcn.0049c2fd
ret 4
xor eax, eax
jmp 0x50f2d3
push edi
call dword [0x103389c0]
jmp 0x50f43a
sub dword [edi], edi
arpl word cs:[eax + 0x65], bp
jno 0x53badf