Function at 0x530f8c
Capabilities:
Get number of processors

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffcc
push ebx
xor ecx, ecx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x5311d7
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
cmp dword [eax + 0x3c], 0
je 0x5311a7
push 0xa
push 0x64
xor ecx, ecx
mov dl, 1
mov eax, dword [0x580f78]
call fcn.00581c38
mov dword [ebp - 0x18], eax
xor eax, eax
push ebp
push 0x5311a0
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x3c]
sub eax, 1
jno 0x530ffb
call fcn.00403060
test eax, eax
jl 0x53117a
inc eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0xc], 0
lea eax, [ebp - 0x10]
imul edx, dword [ebp - 0xc], 3
jno 0x53101c
call fcn.00403060
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 0x38]
mov edx, dword [ecx + edx*4 + 4]
call fcn.00403f5c
lea eax, [ebp - 0x14]
imul edx, dword [ebp - 0xc], 3
jno 0x531039
call fcn.00403060
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 0x38]
mov edx, dword [ecx + edx*4]
call fcn.00403f5c
cmp dword [ebp - 0x14], 0
jne 0x531085
or edx, 0xffffffff
mov eax, dword [ebp - 0x10]
call fcn.0040a538
inc eax
je 0x531085
mov eax, dword [ebp - 0x10]
call fcn.0040a4b8
mov edx, eax
sub edx, 1
jno 0x53106f
call fcn.00403060
lea ecx, [ebp - 0x2c]
mov eax, dword [ebp - 8]
call fcn.00587b9c
mov edx, dword [ebp - 0x2c]
lea eax, [ebp - 0x10]
call fcn.00403f5c
xor edx, edx
mov eax, dword [ebp - 0x18]
call fcn.00581ce8
mov eax, dword [ebp - 8]
mov edx, dword [0x58450c]
call fcn.0040329c
xor al, 1
push eax
mov eax, dword [ebp - 0x18]
push eax
push 0
push 0
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x2c]
mov eax, dword [ebp - 0x18]
cmp dword [eax + 8], 0
jne 0x5310ea
push 0x5311ec
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x34], eax
mov byte [ebp - 0x30], 0xb
lea eax, [ebp - 0x34]
push eax
push 0
mov ecx, 0x75f3
mov dl, 1
mov eax, dword [0x511cb0]
call fcn.00511e14
call fcn.004038bc
lea eax, [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 4]
mov edx, dword [eax]
mov cl, 1
mov eax, dword [ebp - 8]
call fcn.00587938
cmp dword [ebp - 0x20], 0
jne 0x531113
lea eax, [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
call fcn.00403f5c
jmp 0x53112b
push dword [ebp - 0x20]
push 0x531220
push dword [ebp - 0x1c]
lea eax, [ebp - 0x20]
mov edx, 3
call fcn.00404204
imul eax, dword [ebp - 0xc], 3
jno 0x531136
call fcn.00403060
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x38]
cmp byte [edx + eax*4 + 8], 0
je 0x53116e
cmp dword [ebp - 0x24], 0
jne 0x531156
lea eax, [ebp - 0x24]
mov edx, dword [ebp - 0x1c]
call fcn.00403f5c
jmp 0x53116e
push dword [ebp - 0x24]
push 0x531220
push dword [ebp - 0x1c]
lea eax, [ebp - 0x24]
mov edx, 3
call fcn.00404204
inc dword [ebp - 0xc]
dec dword [ebp - 0x28]
jne 0x53100e
push 0
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 8]
mov ebx, dword [eax]
call dword [ebx + 0x30]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5311a7
mov eax, dword [ebp - 0x18]
call fcn.00403124
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5311de
lea eax, [ebp - 0x2c]
call fcn.00403ec4
lea eax, [ebp - 0x24]
mov edx, 3
call fcn.00403ee8
lea eax, [ebp - 0x14]
mov edx, 2
call fcn.00403ee8
ret