Function at 0x100c0f10
Capabilities:
Get number of processors

Disassembly:
push 0xffffffffffffffff
push 0x1018a026
mov eax, dword fs:[0]
push eax
sub esp, 0x98
push ebx
push ebp
push esi
push edi
mov eax, dword [0x101cd7b4]
xor eax, esp
push eax
lea eax, [esp + 0xac]
mov dword fs:[0], eax
mov esi, ecx
xor ebx, ebx
mov dword [esp + 0xb4], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
push ebx
push ebx
push 4
lea eax, [esp + 0x20]
lea ebp, [esi + 0x5550]
push eax
mov ecx, ebp
mov byte [esp + 0xc4], 1
mov dword [esp + 0x3c], 1
mov dword [esp + 0x24], 0x584d44
call fcn.100fc662
push ebx
push 6
push 4
lea ecx, [esp + 0x20]
push ecx
mov ecx, ebp
mov dword [esp + 0x24], 0x64
call fcn.100fc662
push ebx
push 0xa
push 4
lea edx, [esp + 0x20]
push edx
mov ecx, ebp
mov dword [esp + 0x24], 0x100000
call fcn.100fc662
lea ecx, [esp + 0x90]
call fcn.100ec612
lea eax, [esp + 0x90]
mov dword [esp + 0x30], 0x10199600
mov dword [esp + 0x34], eax
push 4
push ebx
mov byte [esp + 0xbc], 3
call fcn.1010c850
add esp, 8
mov ecx, eax
call fcn.1010bd8e
push ebx
push ebx
mov dword [esp + 0x1c], eax
call fcn.1010c850
add esp, 8
mov ecx, eax
call fcn.1010bd8e
mov cl, byte [esi + 0x4cb8]
shr cl, 2
and cl, 7
lea edi, [esi + 0xf18]
mov dword [esp + 0x38], eax
mov eax, edi
mov byte [esp + 0x1b], cl
mov dword [esp + 0x54], 0xf
mov dword [esp + 0x50], ebx
mov byte [esp + 0x40], bl
lea ecx, [eax + 1]
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x100c1031
sub eax, ecx
push eax
push edi
lea ecx, [esp + 0x44]
call fcn.10005610
lea edi, [esi + 0xe16]
mov eax, edi
mov byte [esp + 0xb4], 4
mov dword [esp + 0x70], 0xf
mov dword [esp + 0x6c], ebx
mov byte [esp + 0x5c], bl
lea ecx, [eax + 1]
lea ebx, [ebx]
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x100c1070
sub eax, ecx
push eax
push edi
lea ecx, [esp + 0x60]
call fcn.10005610
lea edi, [esi + 0x1425]
mov eax, edi
mov byte [esp + 0xb4], 5
mov dword [esp + 0x8c], 0xf
mov dword [esp + 0x88], ebx
mov byte [esp + 0x78], bl
lea ecx, [eax + 1]
nop
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x100c10b0
sub eax, ecx
push eax
push edi
lea ecx, [esp + 0x7c]
call fcn.10005610
lea edx, [esi + 0x58c0]
push edx
lea eax, [esi + 0x58a4]
push eax
lea ecx, [esi + 0x5888]
push ecx
lea edx, [esi + 0x586c]
push edx
lea eax, [esp + 0x24]
push eax
lea ecx, [esp + 0x4c]
push ecx
lea edx, [esi + 0x1018]
push edx
lea eax, [esp + 0x58]
push eax
lea ecx, [esi + 0xf16]
push ecx
lea edx, [esp + 0x7c]
push edx
lea eax, [esi + 0x1525]
push eax
lea ecx, [esp + 0xa0]
push ecx
lea edx, [esi + 0x39e8]
push edx
lea eax, [esi + 0x39e4]
push eax
lea ecx, [esi + 0x39e0]
push ecx
lea edx, [esi + 0x39dc]
push edx
lea eax, [esi + 0x1745]
push eax
lea ecx, [esi + 0xbe4]
push ecx
lea edx, [esp + 0x63]
push edx
lea eax, [esi + 0x4cca]
push eax
lea ecx, [esi + 0x4cc6]
push ecx
lea edx, [esi + 0x4cbe]
push edx
lea eax, [esi + 0x4cba]
push eax
lea ecx, [esi + 0x4cc4]
push ecx
lea edx, [esi + 0x4cc0]
push edx
lea eax, [esi + 0x4cb4]
push eax
lea ecx, [esi + 0x53b0]
push ecx
lea ecx, [esp + 0x9c]
mov byte [esp + 0x120], 6
call fcn.10072c70
mov ecx, eax
call fcn.100587a0
mov ecx, eax
call fcn.100587a0
mov ecx, eax
call fcn.10042120
mov ecx, eax
call fcn.100587a0
mov ecx, eax
call fcn.10042120
mov ecx, eax
call fcn.100587a0
mov ecx, eax
call fcn.10042120
mov ecx, eax
call fcn.10042070
mov ecx, eax
call fcn.10042120
mov ecx, eax
call fcn.10042120
mov ecx, eax
call fcn.100587a0
mov ecx, eax
call fcn.100587a0
mov ecx, eax
call fcn.100587a0
mov ecx, eax
call fcn.100587a0
mov ecx, eax
call fcn.10032be0
mov ecx, eax
call fcn.10042120
mov ecx, eax
call fcn.10032be0
mov ecx, eax
call fcn.10042120
mov ecx, eax
call fcn.10032be0
mov ecx, eax
call fcn.10042120
mov ecx, eax
call fcn.100587a0
mov ecx, eax
call fcn.100587a0
mov ecx, eax
call fcn.10032be0
mov ecx, eax
call fcn.10032be0
mov ecx, eax
call fcn.10032be0
mov ecx, eax
call fcn.10032be0
mov edi, 0x10
cmp dword [esp + 0x8c], edi
jb 0x100c125f
mov edx, dword [esp + 0x78]
push edx
call fcn.10159534
add esp, 4
cmp dword [esp + 0x70], edi
mov dword [esp + 0x8c], 0xf
mov dword [esp + 0x88], ebx
mov byte [esp + 0x78], bl
jb 0x100c1288
mov eax, dword [esp + 0x5c]
push eax
call fcn.10159534
add esp, 4
cmp dword [esp + 0x54], edi
mov dword [esp + 0x70], 0xf
mov dword [esp + 0x6c], ebx
mov byte [esp + 0x5c], bl
mov byte [esp + 0xb4], 3
jb 0x100c12b3
mov ecx, dword [esp + 0x40]
push ecx
call fcn.10159534
add esp, 4
lea edi, [esi + 0x4b60]
mov ecx, edi
call fcn.1004ff40
lea ecx, [esp + 0x3c]
mov dword [esi + 0x59b4], eax
call fcn.100c0350
lea edx, [esi + 0x5934]
push edx
lea eax, [esi + 0x4c68]
push eax
push edi
lea ecx, [esp + 0x48]
mov byte [esp + 0xc0], 7
call fcn.100dd250
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x34]
push edx
call fcn.100dd750
add esp, 8
lea ecx, [esp + 0x3c]
mov byte [esi + 0x599c], 1
mov byte [esp + 0xb4], 3
call fcn.100ddd10
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x94]
call fcn.100ec732
mov eax, dword [esp + 0x20]
cmp eax, ebx
jne 0x100c1336
xor esi, esi
jmp 0x100c1342
mov ecx, dword [esp + 0x24]
sub ecx, eax
cmp ecx, ebx
mov esi, ecx
ja 0x100c134b
call fcn.1015988d
mov eax, dword [esp + 0x20]
push ebx
push 0x64
push esi
push eax
mov ecx, ebp
call fcn.100fc662
lea ecx, [esp + 0x90]
mov dword [esp + 0x30], 0x10199600
mov byte [esp + 0xb4], 1
call fcn.100ec3a0
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0xc4]
call fcn.100ec732
mov eax, dword [esp + 0x20]
cmp eax, ebx
je 0x100c13e1
mov ecx, dword [esp + 0x24]
sub ecx, eax
je 0x100c13e1
add dword [esp + 0x2c], 1
cmp ecx, ebx
ja 0x100c13a6
call fcn.1015988d
mov eax, dword [esp + 0x20]
mov dx, word [esp + 0xbc]
mov word [eax], dx
mov ecx, dword [esp + 0x20]
cmp ecx, ebx
jne 0x100c13bd
xor esi, esi
jmp 0x100c13c9
mov eax, dword [esp + 0x24]
sub eax, ecx
cmp eax, ebx
mov esi, eax
ja 0x100c13d2
call fcn.1015988d
mov ecx, dword [esp + 0x20]
push ebx
push 0x100000
push esi
push ecx
mov ecx, ebp
call fcn.100fc662
push ebx
push 4
push 2
lea eax, [esp + 0x38]
push eax
mov ecx, ebp
call fcn.100fc662
mov eax, dword [esp + 0x20]
cmp eax, ebx
je 0x100c1403
push eax
call fcn.10159534
add esp, 4
lea ecx, [esp + 0xc0]
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0xb4], 0xffffffff
call fcn.100ec3a0
mov ecx, dword [esp + 0xac]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xa4
ret 0x20