Function at 0x4eb308
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 0x4eb58e
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 [0x4e964c]
call fcn.00405dc8
push 0
mov eax, dword [ebp - 4]
add eax, 0x48
mov ecx, 1
mov edx, dword [0x4e964c]
call fcn.00405d80
add esp, 4
push 0
mov eax, dword [ebp + 8]
push eax
xor ecx, ecx
xor edx, edx
mov eax, 0x64
call fcn.00535614
mov eax, dword [ebp - 4]
mov byte [eax + 4], bl
xor edx, edx
push ebp
push 0x4eb558
push dword fs:[edx]
mov dword fs:[edx], esp
mov esi, 1
mov ebx, 1
jmp 0x4eb4e0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xc]
mov al, byte [eax + ebx - 1]
sub al, 0xd
je 0x4eb40a
sub al, 0x19
je 0x4eb3b5
sub al, 0x16
je 0x4eb464
jmp 0x4eb4df
cmp esi, ebx
jge 0x4eb3c5
mov ecx, esi
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.004ebb10
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.004eb130
cmp dword [ebp - 0x10], 0
je 0x4eb3f1
mov eax, dword [ebp - 0x10]
call fcn.00404b04
add ebx, eax
mov esi, ebx
dec ebx
jmp 0x4eb4df
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 0x4eb4df
mov eax, dword [0x56503c]
cmp byte [eax], 0
je 0x4eb4df
cmp esi, ebx
jge 0x4eb428
mov ecx, esi
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.004ebb10
mov esi, ebx
mov eax, dword [ebp - 4]
cmp dword [eax + 0x34], 0
jne 0x4eb44e
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x4c]
call fcn.0042ad4c
mov edx, 0x4eb5a8
call fcn.004e2588
mov edx, dword [ebp - 4]
mov dword [edx + 0x34], eax
mov eax, dword [ebp - 4]
call fcn.004eb7cc
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x38]
mov edx, dword [ebp - 4]
mov dword [edx + 0x14], eax
jmp 0x4eb4df
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xc]
cmp byte [eax + ebx], 0x3c
je 0x4eb4cc
cmp esi, ebx
jge 0x4eb480
mov ecx, esi
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.004ebb10
lea ecx, [ebp - 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xc]
mov edx, ebx
call fcn.004e971c
cmp dword [ebp - 0xc], 0
jne 0x4eb49b
inc ebx
mov esi, ebx
jmp 0x4eb4e0
mov ecx, ebx
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
call fcn.004e9ed0
test al, al
je 0x4eb4bb
mov eax, dword [ebp - 0xc]
call fcn.00404b04
add ebx, eax
mov esi, ebx
dec ebx
jmp 0x4eb4df
inc ebx
mov ecx, esi
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.004ebb10
mov esi, ebx
jmp 0x4eb4df
cmp esi, ebx
jge 0x4eb4dc
mov ecx, esi
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.004ebb10
inc ebx
mov esi, ebx
inc ebx
mov eax, dword [ebp - 4]
cmp ebx, dword [eax + 0x10]
jle 0x4eb396
cmp esi, ebx
jge 0x4eb4fc
mov ecx, esi
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.004ebb10
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x30]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x28]
jle 0x4eb510
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 0x4eb55f
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.00535614
mov eax, dword [ebp - 4]
mov byte [eax + 4], 0
ret