Function at 0x40be90
Capabilities:
Get number of processors

Disassembly:
push 0xffffffffffffffff
push 0x436ff0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x70
push ebx
push ebp
mov ebx, ecx
push esi
push edi
lea ecx, [esp + 0x14]
call fcn.0042ca79
xor edi, edi
lea ecx, [esp + 0x24]
mov dword [esp + 0x88], edi
call fcn.0042d2c6
mov eax, dword [0x446600]
mov dword [esp + 0x34], eax
mov esi, 0x43b03c
or ebp, 0xffffffff
push edi
lea ecx, [esp + 0x38]
mov byte [esp + 0x8c], 2
mov dword [esp + 0x28], esi
mov dword [esp + 0x30], edi
mov dword [esp + 0x34], ebp
call fcn.0042dacd
lea ecx, [esp + 0x24]
mov byte [esp + 0x88], 3
push ecx
push edi
push 0x445ed4
lea ecx, [esp + 0x20]
call fcn.0042cb8b
test eax, eax
jne 0x40bf51
lea edx, [esp + 0x24]
lea ecx, [esp + 0x14]
push edx
push edi
push 0x445ebc
call fcn.0042cb8b
test eax, eax
jne 0x40bf51
mov dword [esp + 0x24], esi
lea ecx, [esp + 0x34]
mov byte [esp + 0x88], 4
call fcn.0042d980
mov dword [esp + 0x88], ebp
jmp 0x40c1a5
lea eax, [esp + 0x38]
push 0x1e
push eax
lea ecx, [esp + 0x1c]
call fcn.0042cca8
mov ebp, 1
lea ecx, [esp + 0x10]
push ebp
push ecx
lea ecx, [esp + 0x1c]
call fcn.0042cca8
lea ecx, [esp + 0x14]
call fcn.0042cd5c
test eax, eax
je 0x40c17c
push 0xf4
call fcn.0042ca45
add esp, 4
cmp eax, edi
je 0x40bfa1
mov dword [eax], 0x439440
mov esi, eax
jmp 0x40bfa3
xor esi, esi
lea edx, [esp + 0x38]
lea eax, [esi + 8]
push edx
push 0x445eb4
push eax
call fcn.0041754d
mov ecx, dword [esp + 0x1c]
add esp, 0xc
and ecx, 0xff
and ecx, 0x8000000f
jns 0x40bfd0
dec ecx
or ecx, 0xfffffff0
inc ecx
mov byte [esi + 0x44], cl
mov al, byte [esp + 0x10]
cmp al, 0x20
jb 0x40bfe0
mov dword [esi + 0x54], ebp
jmp 0x40bfe3
mov dword [esi + 0x54], edi
mov edx, dword [esp + 0x10]
and edx, 0xff
and edx, 0x8000001f
jns 0x40bffa
dec edx
or edx, 0xffffffe0
inc edx
cmp edx, 0x10
jl 0x40c004
mov dword [esi + 0x50], ebp
jmp 0x40c007
mov dword [esi + 0x50], edi
lea eax, [esi + 0x45]
push ebp
push eax
lea ecx, [esp + 0x1c]
call fcn.0042cca8
lea ecx, [esi + 0x46]
push ebp
push ecx
lea ecx, [esp + 0x1c]
call fcn.0042cca8
lea edx, [esi + 0x47]
push ebp
push edx
lea ecx, [esp + 0x1c]
call fcn.0042cca8
lea eax, [esi + 0x48]
push ebp
push eax
lea ecx, [esp + 0x1c]
call fcn.0042cca8
lea ecx, [esi + 0x49]
push ebp
push ecx
lea ecx, [esp + 0x1c]
call fcn.0042cca8
lea edx, [esi + 0x4a]
push 2
push edx
lea ecx, [esp + 0x1c]
call fcn.0042cca8
lea eax, [esi + 0x4c]
push 2
push eax
lea ecx, [esp + 0x1c]
call fcn.0042cca8
xor eax, eax
mov al, byte [esi + 0x44]
sub eax, edi
je 0x40c099
dec eax
jne 0x40c0f3
lea ecx, [esi + 0x58]
push 2
push ecx
lea ecx, [esp + 0x1c]
call fcn.0042cca8
lea edx, [esi + 0x5a]
push 2
push edx
lea ecx, [esp + 0x1c]
call fcn.0042cca8
push 0xd
jmp 0x40c0e5
lea ecx, [esi + 0x60]
push ebp
push ecx
lea ecx, [esp + 0x1c]
call fcn.0042cca8
lea edx, [esi + 0x58]
push 2
push edx
lea ecx, [esp + 0x1c]
call fcn.0042cca8
lea eax, [esi + 0x5a]
push 2
push eax
lea ecx, [esp + 0x1c]
call fcn.0042cca8
lea ecx, [esi + 0x5c]
push 2
push ecx
lea ecx, [esp + 0x1c]
call fcn.0042cca8
lea edx, [esi + 0x5e]
push 2
push edx
lea ecx, [esp + 0x1c]
call fcn.0042cca8
push 8
lea eax, [esp + 0x3c]
lea ecx, [esp + 0x18]
push eax
call fcn.0042cca8
lea ecx, [esi + 0x62]
push ebp
push ecx
lea ecx, [esp + 0x1c]
call fcn.0042cca8
lea edx, [esi + 0x63]
push ebp
push edx
lea ecx, [esp + 0x1c]
call fcn.0042cca8
lea eax, [esi + 0x64]
push 0x24
push eax
lea ecx, [esp + 0x1c]
call fcn.0042cca8
lea ecx, [esi + 0xac]
push 0x24
push ecx
lea ecx, [esp + 0x1c]
call fcn.0042cca8
push esi
mov ecx, ebx
call fcn.00428def
lea ecx, [esp + 0x14]
call fcn.0042cd5c
mov esi, eax
cmp esi, edi
je 0x40c177
lea edx, [esp + 0x38]
push 0x1e
push edx
lea ecx, [esp + 0x1c]
call fcn.0042cca8
lea eax, [esp + 0x10]
push ebp
push eax
lea ecx, [esp + 0x1c]
call fcn.0042cca8
lea ecx, [esp + 0x14]
call fcn.0042cd5c
cmp eax, esi
jne 0x40bf86
mov esi, 0x43b03c
lea ecx, [esp + 0x14]
call fcn.0042cda6
mov dword [esp + 0x24], esi
lea ecx, [esp + 0x34]
mov byte [esp + 0x88], 5
call fcn.0042d980
mov dword [esp + 0x88], 0xffffffff
lea ecx, [esp + 0x14]
call fcn.0042cace
mov ecx, dword [esp + 0x80]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x7c
ret