Function at 0x100a15bf
Capabilities:
Get number of processors

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x1021b2da
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x38
push ebx
mov ebx, ecx
lea ecx, [esp + 0x1c]
push esi
push edi
push ecx
mov eax, dword [ebx]
mov ecx, ebx
mov dword [esp + 0x30], ebx
call dword [eax + 0x464]
xor ecx, ecx
mov eax, dword [eax + 4]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], 0x64
mov eax, dword [ebx + 0xcc]
mov dword [esp + 0x1c], ecx
test eax, eax
je 0x100a1619
mov eax, dword [eax - 4]
jmp 0x100a161b
xor eax, eax
cmp ecx, eax
jge 0x100a1809
mov eax, dword [ebx + 0xcc]
mov ebx, dword [eax + ecx*4]
lea ecx, [esp + 0x30]
push ecx
mov ecx, ebx
mov dword [esp + 0x14], ebx
mov eax, dword [ebx]
call dword [eax + 0x22c]
push dword [ebp + 0x10]
mov eax, dword [esp + 0x34]
push dword [ebp + 0xc]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], eax
mov eax, dword [esp + 0x4c]
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x50]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x54]
mov dword [ecx + 0xc], eax
call fcn.100a1576
add esp, 0x18
test al, al
je 0x100a17ca
mov eax, dword [ebx + 0x2c]
test eax, eax
jne 0x100a1683
mov eax, dword [0x102b7738]
jmp 0x100a1698
cmp eax, dword [0x102b7738]
jne 0x100a1698
push 0
push ecx
push dword [ebp + 8]
mov ecx, ebx
call fcn.10079533
and dword [esp + 0x14], 0
lea ecx, [esp + 0x14]
push eax
call fcn.1000fd99
and dword [esp + 0x4c], 0
mov ebx, dword [ebp + 0xc]
mov edx, dword [esp + 0x34]
mov edi, dword [ebp + 0x10]
mov esi, dword [esp + 0x14]
cmp edx, ebx
jle 0x100a1767
cmp edx, dword [esp + 0x20]
je 0x100a1710
cmp dword [esi + 0x528], 0x80000000
je 0x100a1710
mov ecx, dword [esi + 0x528]
cmp ecx, 0x80000000
jne 0x100a16e6
xor ecx, ecx
jmp 0x100a16ea
test ecx, ecx
js 0x100a1710
cmp ebx, edi
jg 0x100a16f5
mov eax, edi
sub eax, ebx
inc eax
jmp 0x100a16f7
xor eax, eax
imul eax, ecx
push 0x64
pop ecx
cdq
idiv ecx
mov edx, dword [esp + 0x34]
mov ecx, edx
sub ecx, ebx
cmp ecx, eax
jg 0x100a17d8
cmp dword [esp + 0x3c], edi
jge 0x100a1767
cmp dword [esi + 0x52c], 0x80000000
je 0x100a1767
mov eax, dword [esi + 0x52c]
mov dword [esp + 0x18], eax
cmp eax, 0x80000000
jne 0x100a173a
and dword [esp + 0x18], 0
jmp 0x100a173e
test eax, eax
js 0x100a1767
cmp ebx, edi
jg 0x100a1749
mov eax, edi
sub eax, ebx
inc eax
jmp 0x100a174b
xor eax, eax
mov ecx, dword [esp + 0x10]
imul eax, dword [esp + 0x18]
mov ecx, dword [ecx + 0x8c]
sub ecx, ebx
add ecx, edx
cdq
idiv dword [esp + 0x24]
cmp ecx, eax
jg 0x100a17df
cmp ebx, edi
jg 0x100a1772
mov eax, edi
sub eax, ebx
inc eax
jmp 0x100a1774
xor eax, eax
mov ecx, dword [esp + 0x10]
cmp dword [ecx + 0x8c], eax
jg 0x100a17a4
cmp dword [esp + 0x3c], edi
jl 0x100a17a4
mov edx, SysReAllocStringLen
cmp dword [esi + 0x530], edx
je 0x100a17a4
mov eax, dword [esi + 0x530]
cmp eax, edx
je 0x100a17a4
push 0x64
pop edx
cmp eax, edx
je 0x100a17f4
push dword [ebp + 0x1c]
mov eax, dword [ecx]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push edi
push ebx
push dword [ebp + 8]
call dword [eax + 0x3f8]
or dword [esp + 0x4c], 0xffffffff
test esi, esi
je 0x100a17ca
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov ecx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x2c]
inc ecx
jmp 0x100a1606
mov eax, dword [ebp + 0x14]
mov dword [eax], edx
jmp 0x100a17fd
mov eax, dword [esp + 0x10]
mov ecx, dword [ebp + 0x14]
mov eax, dword [eax + 0x8c]
add eax, dword [esp + 0x34]
mov dword [ecx], eax
jmp 0x100a17fd
mov eax, dword [ebp + 0x14]
mov ecx, dword [esp + 0x34]
mov dword [eax], ecx
or dword [esp + 0x4c], 0xffffffff
mov ecx, esi
mov eax, dword [esi]
call dword [eax + 4]
mov ecx, dword [esp + 0x44]
mov al, 1
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0x18