Function at 0x432130
Capabilities:
Get number of processors

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x84e030
mov eax, dword fs:[0]
push eax
sub esp, 0x54
push ebx
push ebp
push esi
push edi
mov eax, dword [0x8943b8]
xor eax, esp
push eax
lea eax, [esp + 0x68]
mov dword fs:[0], eax
mov dword [esp + 0x20], ecx
push 0x64
call fcn.004099f0
add esp, 4
cmp eax, 0x32
jl 0x432177
mov byte [esp + 0x17], 1
jmp 0x43219b
cmp eax, 0x14
jl 0x432183
mov byte [esp + 0x17], 2
jmp 0x43219b
cmp eax, 6
jl 0x43218f
mov byte [esp + 0x17], 3
jmp 0x43219b
cmp eax, 2
setl al
add al, 4
mov byte [esp + 0x17], al
xor ebp, ebp
mov dword [esp + 0x34], ebp
mov dword [esp + 0x38], ebp
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x40], ebp
lea ecx, [esp + 0x44]
mov dword [esp + 0x70], ebp
call fcn.00431d40
mov eax, dword [0x8971b8]
mov edi, dword [eax]
mov esi, 0x8971b4
mov byte [esp + 0x70], 1
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], edi
cmp esi, ebp
mov ebx, dword [0x8971b8]
je 0x4321e5
cmp esi, 0x8971b4
je 0x4321ea
call fcn.0081ff70
cmp edi, ebx
je 0x432242
cmp esi, ebp
jne 0x4321f7
call fcn.0081ff70
cmp edi, dword [esi + 4]
jne 0x432201
call fcn.0081ff70
mov cl, byte [esp + 0x17]
cmp byte [edi + 0x4e], cl
jne 0x43222f
cmp edi, dword [esi + 4]
jne 0x432214
call fcn.0081ff70
mov edx, dword [edi + 0xc]
lea eax, [esp + 0x18]
or edx, 0x140000
push eax
lea ecx, [esp + 0x34]
mov dword [esp + 0x1c], edx
call fcn.0044bfe0
lea ecx, [esp + 0x24]
call fcn.0042f220
mov edi, dword [esp + 0x28]
mov esi, dword [esp + 0x24]
jmp 0x4321d3
xor edi, edi
mov dword [esp + 0x18], edi
call fcn.0043df50
mov ecx, dword [eax + 0x70]
add eax, 0x6c
cmp ecx, ebp
je 0x4323a3
mov eax, dword [eax + 8]
sub eax, ecx
sar eax, 2
cmp edi, eax
jae 0x4323a3
call fcn.0043df50
mov esi, eax
mov ecx, dword [esi + 0x70]
add esi, 0x6c
cmp ecx, ebp
je 0x432288
mov eax, dword [esi + 8]
sub eax, ecx
sar eax, 2
cmp edi, eax
jb 0x43228d
call fcn.0081ff70
mov ecx, dword [esi + 4]
mov ebx, dword [ecx + edi*4]
push ebp
push ebp
push ebx
lea ecx, [esp + 0x50]
mov dword [esp + 0x28], ebx
call fcn.00438450
mov edx, dword [esp + 0x5c]
mov esi, dword [edx]
lea edi, [esp + 0x58]
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], esi
test edi, edi
mov ebp, dword [esp + 0x5c]
je 0x4322c5
lea eax, [esp + 0x58]
cmp edi, eax
je 0x4322ca
call fcn.0081ff70
cmp esi, ebp
je 0x43238a
test edi, edi
jne 0x4322db
call fcn.0081ff70
cmp esi, dword [edi + 4]
jne 0x4322e5
call fcn.0081ff70
mov cl, byte [esp + 0x17]
cmp byte [esi + 0x4e], cl
jne 0x432374
cmp esi, dword [edi + 4]
jne 0x4322fc
call fcn.0081ff70
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0x3c]
mov ebp, ebx
shl ebp, 0x10
or ebp, dword [esi + 0xc]
lea ecx, [eax + edx]
test cl, 3
jne 0x43232b
add eax, 4
shr eax, 2
cmp dword [esp + 0x38], eax
ja 0x43232b
push 1
lea ecx, [esp + 0x34]
call fcn.0044be80
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x40]
lea edi, [edx + eax]
mov eax, dword [esp + 0x38]
mov esi, edi
shr esi, 2
cmp eax, esi
ja 0x432345
sub esi, eax
mov ebx, dword [esp + 0x34]
cmp dword [ebx + esi*4], 0
jne 0x43235c
push 0x10
call fcn.0081fbdc
add esp, 4
mov dword [ebx + esi*4], eax
mov ecx, dword [ebx + esi*4]
and edi, 3
lea eax, [ecx + edi*4]
test eax, eax
je 0x43236b
mov dword [eax], ebp
add dword [esp + 0x40], 1
mov ebx, dword [esp + 0x1c]
lea ecx, [esp + 0x24]
call fcn.0042f220
mov esi, dword [esp + 0x28]
mov edi, dword [esp + 0x24]
jmp 0x4322b5
lea ecx, [esp + 0x44]
call fcn.004373b0
add dword [esp + 0x18], 1
mov edi, dword [esp + 0x18]
xor ebp, ebp
jmp 0x432248
mov ebx, dword [esp + 0x40]
cmp ebx, ebp
jne 0x4323d8
lea ecx, [esp + 0x44]
mov byte [esp + 0x70], 0
call fcn.00431dc0
lea ecx, [esp + 0x30]
call fcn.00433a50
xor al, al
mov ecx, dword [esp + 0x68]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
push ebx
call fcn.004099f0
mov esi, dword [esp + 0x40]
add ebx, esi
add esp, 4
cmp esi, ebx
mov edi, eax
jbe 0x4323f2
call fcn.0081ff70
add edi, esi
cmp edi, ebx
ja 0x4323fc
cmp edi, esi
jae 0x432401
call fcn.0081ff70
mov esi, edi
mov ebp, edi
shr esi, 2
and ebp, 3
cmp edi, ebx
jb 0x432414
call fcn.0081ff70
mov eax, dword [esp + 0x38]
cmp eax, esi
ja 0x43241e
sub esi, eax
mov edx, dword [esp + 0x34]
mov eax, dword [edx + esi*4]
lea ecx, [eax + ebp*4]
push ecx
mov ecx, dword [esp + 0x24]
lea edx, [esp + 0x28]
push edx
add ecx, 0x198
call fcn.00430450
lea ecx, [esp + 0x44]
mov byte [esp + 0x70], 0
call fcn.00431dc0
lea ecx, [esp + 0x30]
call fcn.00433a50
mov al, 1
mov ecx, dword [esp + 0x68]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret