Function at 0x5335ac
Capabilities:
Get number of processors

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x64
mov eax, dword [0x429000]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
mov dword [ebp - 0x44], ecx
xor ecx, ecx
mov edi, ecx
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x3c], ecx
mov ebx, ecx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0x24]
push ecx
push 0x405324
push eax
mov dword [ebp - 0x28], edi
call fcn.0052b9dc
mov esi, eax
test esi, esi
jns 0x53360a
cmp esi, 0xc0000034
jne 0x533751
xor esi, esi
jmp 0x533751
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0x3c]
push eax
push 0x24000001
push dword [ebp - 0x24]
call fcn.0052e450
mov esi, eax
test esi, esi
js 0x53366c
mov eax, dword [ebp - 0x58]
shr eax, 4
mov dword [ebp - 0x20], eax
shl eax, 2
push eax
mov eax, dword fs:[0x30]
push 0
push dword [eax + 0x18]
call dword [0x42a510]
mov edi, eax
mov dword [ebp - 0x28], edi
test edi, edi
jne 0x533656
mov esi, 0xc000009a
jmp 0x533737
mov ecx, dword [ebp - 0x3c]
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x44]
mov eax, edi
call fcn.00533eb8
mov esi, dword [ebp - 0x20]
jmp 0x53367d
cmp esi, 0xc0000225
jne 0x533737
xor esi, esi
mov dword [ebp - 0x20], esi
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00534e12
test byte [ebp + 0xc], 1
mov dword [ebp - 0x54], eax
je 0x53380e
test eax, eax
js 0x53380e
mov eax, dword [ebp - 0x40]
add eax, esi
mov dword [ebp - 0x48], eax
mov edx, 0xc0000095
cmp eax, esi
jb 0x5336b4
xor esi, esi
jmp 0x5336bc
or eax, 0xffffffff
mov dword [ebp - 0x48], eax
mov esi, edx
test esi, esi
js 0x533707
mov ecx, eax
xor eax, eax
shld eax, ecx, 2
shl ecx, 2
test eax, eax
ja 0x5336da
jb 0x5336d6
cmp ecx, 0xffffffff
ja 0x5336da
xor esi, esi
jmp 0x5336df
or ecx, 0xffffffff
mov esi, edx
test esi, esi
js 0x533707
mov eax, dword fs:[0x30]
push ecx
push 0
push dword [eax + 0x18]
call dword [0x42a510]
mov edi, eax
test edi, edi
jne 0x5337be
mov esi, 0xc000009a
mov edi, dword [ebp - 0x28]
test edi, edi
je 0x53371d
mov eax, dword fs:[0x30]
push edi
push 0
push dword [eax + 0x18]
call dword [fcn.0042a514]
cmp dword [ebp - 0x30], 0
je 0x533737
push dword [ebp - 0x30]
mov eax, dword fs:[0x30]
push 0
push dword [eax + 0x18]
call dword [fcn.0042a514]
cmp dword [ebp - 0x3c], 0
je 0x533751
push dword [ebp - 0x3c]
mov eax, dword fs:[0x30]
push 0
push dword [eax + 0x18]
call dword [fcn.0042a514]
cmp dword [ebp - 0x24], 0
je 0x53375f
push dword [ebp - 0x24]
call fcn.0052fdb2
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x533778
push eax
mov eax, dword fs:[0x30]
push 0
push dword [eax + 0x18]
call dword [fcn.0042a514]
cmp dword [ebp - 0x2c], 0
je 0x533792
push dword [ebp - 0x2c]
mov eax, dword fs:[0x30]
push 0
push dword [eax + 0x18]
call dword [fcn.0042a514]
mov ecx, dword [ebp - 0x34]
test ecx, ecx
je 0x5337ab
mov eax, dword fs:[0x30]
push ecx
push 0
push dword [eax + 0x18]
call dword [fcn.0042a514]
mov ecx, dword [ebp - 4]
pop edi
mov eax, esi
pop esi
xor ecx, ebp
pop ebx
call fcn.0053765e
leave
ret 8
mov esi, dword [ebp - 0x28]
test esi, esi
je 0x5337d6
mov eax, dword [ebp - 0x20]
shl eax, 2
push eax
push esi
push edi
call fcn.0053855e
add esp, 0xc
mov eax, dword [ebp - 0x40]
shl eax, 2
push eax
mov eax, dword [ebp - 0x20]
push dword [ebp - 0x2c]
lea eax, [edi + eax*4]
push eax
call fcn.0053855e
add esp, 0xc
test esi, esi
je 0x533805
mov eax, dword fs:[0x30]
push esi
push 0
push dword [eax + 0x18]
call dword [fcn.0042a514]
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x28]
push eax
push dword [ebp - 0x24]
push dword [ebp - 0x44]
call fcn.00533d70
mov esi, eax
test esi, esi
js 0x533704
mov edi, dword [ebp - 0x28]
mov esi, dword [ebp - 0x20]
cmp dword [ebp - 0x54], ebx
jl 0x533855
test esi, esi
je 0x533855
cmp dword [ebp - 0x40], esi
jne 0x533855
mov eax, esi
shl eax, 2
push eax
push dword [ebp - 0x2c]
push edi
call fcn.0053c842
add esp, 0xc
test eax, eax
je 0x533866
push esi
push edi
call fcn.00534c7c
mov esi, eax
test esi, esi
js 0x533707
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x38]
push eax
push 0x25000004
push dword [ebp - 0x24]
mov dword [ebp - 0x18], 0x18
mov dword [ebp - 0x1c], 1
call fcn.0052e450
mov esi, eax
test esi, esi
js 0x5338ad
mov eax, dword [ebp - 0x38]
xor ebx, ebx
inc ebx
cmp dword [eax + 4], 0
ja 0x5338a7
cmp dword [eax], 0xffffffff
ja 0x5338a7
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
jmp 0x5338d0
or dword [ebp - 0x14], 0xffffffff
jmp 0x5338d0
cmp esi, 0xc0000225
jne 0x533707
mov ecx, 0x42843e
call fcn.00534b40
mov esi, eax
test esi, esi
js 0x533707
and dword [ebp - 0x14], ebx
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x30]
push eax
push 0x24000002
push dword [ebp - 0x24]
call fcn.0052e450
mov esi, eax
test esi, esi
js 0x53390f
mov edx, dword [ebp - 0x44]
lea eax, [ebp - 0x4c]
push eax
push dword [ebp - 0x30]
or ebx, 2
call fcn.00533f14
mov esi, eax
test esi, esi
js 0x533707
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0xc], eax
jmp 0x533933
cmp esi, 0xc0000225
jne 0x533707
mov ecx, 0x42844e
call fcn.00534b40
mov esi, eax
test esi, esi
js 0x533707
and dword [ebp - 0xc], 0
and dword [ebp - 0x50], 0
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x34]
push eax
call fcn.00534ed6
test eax, eax
js 0x533975
mov ecx, dword [ebp - 0x34]
mov eax, dword [ecx]
cmp eax, dword [ebp - 0x1c]
jne 0x533975
test bl, 1
je 0x533962
mov eax, dword [ecx + 8]
cmp eax, dword [ebp - 0x14]
jne 0x533962
and ebx, 0xfffffffe
test bl, 2
je 0x533975
mov eax, dword [ebp - 0x34]
mov eax, dword [eax + 0x10]
cmp eax, dword [ebp - 0xc]
jne 0x533975
and ebx, 0xfffffffd
test ebx, ebx
je 0x533707
push ebx
lea eax, [ebp - 0x1c]
push eax
call fcn.00534cdc
mov esi, eax
jmp 0x533707