Function at 0x4f568c
Capabilities:
Get number of processors

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff0
push ebx
push esi
xor ebx, ebx
mov dword [ebp - 0xc], ebx
mov dword [ebp - 0x10], ebx
mov ebx, ecx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x4f5912
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
add eax, 0x48
mov edx, dword [ebp - 8]
mov edx, dword [edx]
mov ecx, dword [0x4f39d0]
call fcn.00406464
push 0
mov eax, dword [ebp - 4]
add eax, 0x48
mov ecx, 1
mov edx, dword [0x4f39d0]
call fcn.0040641c
add esp, 4
push 0
mov eax, dword [ebp + 8]
push eax
xor ecx, ecx
xor edx, edx
mov eax, 0x64
call fcn.0053d860
mov eax, dword [ebp - 4]
mov byte [eax + 4], bl
xor edx, edx
push ebp
push 0x4f58dc
push dword fs:[edx]
mov dword fs:[edx], esp
mov esi, 1
mov ebx, 1
jmp 0x4f5864
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xc]
mov al, byte [eax + ebx - 1]
sub al, 0xd
je 0x4f578e
sub al, 0x19
je 0x4f5739
sub al, 0x16
je 0x4f57e8
jmp 0x4f5863
cmp esi, ebx
jge 0x4f5749
mov ecx, esi
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.004f5e94
lea eax, [ebp - 0x10]
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 8]
mov ecx, ebx
mov eax, dword [ebp - 4]
call fcn.004f54b4
cmp dword [ebp - 0x10], 0
je 0x4f5775
mov eax, dword [ebp - 0x10]
call fcn.00405164
add ebx, eax
mov esi, ebx
dec ebx
jmp 0x4f5863
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xc]
cmp byte [eax + ebx], 0x26
sete al
mov esi, eax
and esi, 0x7f
add esi, ebx
jmp 0x4f5863
mov eax, dword [0x55dae8]
cmp byte [eax], 0
je 0x4f5863
cmp esi, ebx
jge 0x4f57ac
mov ecx, esi
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.004f5e94
mov esi, ebx
mov eax, dword [ebp - 4]
cmp dword [eax + 0x34], 0
jne 0x4f57d2
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x4c]
call fcn.0042b4a8
mov edx, 0x4f592c
call fcn.004ec90c
mov edx, dword [ebp - 4]
mov dword [edx + 0x34], eax
mov eax, dword [ebp - 4]
call fcn.004f5b50
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x38]
mov edx, dword [ebp - 4]
mov dword [edx + 0x14], eax
jmp 0x4f5863
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xc]
cmp byte [eax + ebx], 0x3c
je 0x4f5850
cmp esi, ebx
jge 0x4f5804
mov ecx, esi
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.004f5e94
lea ecx, [ebp - 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xc]
mov edx, ebx
call fcn.004f3aa0
cmp dword [ebp - 0xc], 0
jne 0x4f581f
inc ebx
mov esi, ebx
jmp 0x4f5864
mov ecx, ebx
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
call fcn.004f4254
test al, al
je 0x4f583f
mov eax, dword [ebp - 0xc]
call fcn.00405164
add ebx, eax
mov esi, ebx
dec ebx
jmp 0x4f5863
inc ebx
mov ecx, esi
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.004f5e94
mov esi, ebx
jmp 0x4f5863
cmp esi, ebx
jge 0x4f5860
mov ecx, esi
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.004f5e94
inc ebx
mov esi, ebx
inc ebx
mov eax, dword [ebp - 4]
cmp ebx, dword [eax + 0x10]
jle 0x4f571a
cmp esi, ebx
jge 0x4f5880
mov ecx, esi
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.004f5e94
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x28]
jle 0x4f5894
mov edx, dword [ebp - 4]
mov dword [edx + 0x28], eax
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x30], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp - 4]
add eax, dword [edx + 0x34]
mov edx, dword [ebp - 4]
mov dword [edx + 0x2c], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4f58e3
push 0
mov eax, dword [ebp + 8]
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x2c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x28]
xor ecx, ecx
call fcn.0053d860
mov eax, dword [ebp - 4]
mov byte [eax + 4], 0
ret