Function at 0x4d4f40
Capabilities:
Get number of processors

Disassembly:
push 0xffffffffffffffff
push 0x5ef1eb
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x14
push ebx
push esi
push edi
mov ebx, ecx
push 0x20
mov dword [esp + 0x20], ebx
call fcn.005e29a8
add esp, 4
mov dword [esp + 0x18], eax
xor edi, edi
cmp eax, edi
mov dword [esp + 0x28], edi
je 0x4d4f88
mov ecx, eax
call fcn.004ff1c0
mov esi, eax
mov dword [esp + 0x10], esi
jmp 0x4d4f8e
mov dword [esp + 0x10], edi
mov esi, edi
cmp esi, edi
mov dword [esp + 0x28], 0xffffffff
jne 0x4d4fb7
pop edi
mov dword [ebx + 0x38], 2
pop esi
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x14]
mov dword fs:[0], ecx
add esp, 0x20
ret 4
push edi
mov ecx, esi
call fcn.004ff1a0
push 0x1000
mov ecx, esi
call fcn.004ff290
push 0x64
mov ecx, esi
call fcn.004ff2b0
push 1
mov ecx, esi
call fcn.004ff2d0
push 1
mov ecx, esi
call fcn.004ff2f0
push edi
mov ecx, esi
call fcn.004ff330
mov eax, dword [esp + 0x30]
mov ebx, dword [eax]
add ebx, 0x20
mov edx, dword [ebx + 4]
mov eax, edx
cmp eax, edi
mov dword [esp + 0x18], eax
jl 0x4d5139
push ebp
lea ebp, [eax + 1]
cmp ebp, edi
jl 0x4d5133
jne 0x4d502e
mov ecx, dword [ebx]
push ecx
call fcn.005e2948
add esp, 4
mov dword [ebx], edi
mov dword [ebx + 8], edi
mov dword [ebx + 4], edi
jmp 0x4d5129
mov edi, dword [ebx]
test edi, edi
jne 0x4d5067
lea edi, [ebp*4]
push edi
call fcn.005e29a8
mov edx, eax
mov ecx, edi
mov dword [ebx], edx
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
add esp, 4
and ecx, 3
rep stosb byte es:[edi], al
mov dword [ebx + 8], ebp
mov dword [ebx + 4], ebp
jmp 0x4d5129
mov ecx, dword [ebx + 8]
cmp ebp, ecx
jg 0x4d5094
cmp ebp, edx
jle 0x4d508c
mov ecx, ebp
lea edi, [edi + edx*4]
sub ecx, edx
xor eax, eax
shl ecx, 2
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov dword [ebx + 4], ebp
jmp 0x4d5129
mov eax, dword [ebx + 0xc]
test eax, eax
jne 0x4d50b0
mov eax, edx
cdq
and edx, 7
add eax, edx
sar eax, 3
cmp eax, 4
jg 0x4d50b0
mov eax, 4
add eax, ecx
cmp ebp, eax
mov dword [esp + 0x10], eax
jl 0x4d50be
mov dword [esp + 0x10], ebp
mov eax, dword [esp + 0x10]
lea ecx, [eax*4]
push ecx
call fcn.005e29a8
mov ecx, dword [ebx + 4]
mov esi, dword [ebx]
shl ecx, 2
mov edx, eax
mov eax, ecx
mov edi, edx
mov dword [esp + 0x1c], edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [ebx + 4]
mov ecx, ebp
sub ecx, esi
shl ecx, 2
lea edi, [edx + esi*4]
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebx]
push eax
call fcn.005e2948
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
add esp, 8
mov dword [ebx], ecx
mov dword [ebx + 4], ebp
mov dword [ebx + 8], edx
mov eax, dword [ebx + 4]
mov dword [ebx + 0x10], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [ebx]
pop ebp
mov dword [ecx + eax*4], esi
mov edx, dword [esp + 0x30]
mov ecx, dword [edx]
call fcn.004ff8d0
mov edi, eax
test edi, edi
jne 0x4d516b
mov eax, dword [esp + 0x1c]
pop edi
pop esi
pop ebx
mov dword [eax + 0x38], 2
xor eax, eax
mov ecx, dword [esp + 0x14]
mov dword fs:[0], ecx
add esp, 0x20
ret 4
push edi
mov ecx, esi
call fcn.004ff310
mov ecx, dword [esp + 0x30]
mov eax, 1
mov dword [ecx], edi
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
add esp, 0x20
ret 4