Function at 0x10015187
Capabilities:
Get number of processors

Disassembly:
add esp, 4
add edi, 0x11d17
and edi, 0x10260
or edi, 0xd751
pop edi
push esi
sub esi, 0x814f
pop esi
mov edx, dword [ebp - 0xc04]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0xc00]
movzx edx, byte [ecx]
cmp eax, edx
je 0x10014e99
push edi
push eax
add esp, 4
call 0x10014e42
add byte [eax + 0x38], dl
inc ecx
inc esp
inc ebx
inc ebp
xor al, byte ss:[eax - 0x7d]
les eax, [edi + ebx*2]
push ecx
add ecx, 0x30f5
call 0x10014e5b
add byte [ecx + 0x4a], cl
aaa
dec esi
inc ebp
cmp byte [ebx + 0x48], al
add esp, 4
pop ecx
mov eax, dword [ebp - 0xc04]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0xc00]
movzx eax, byte [edx]
cmp ecx, eax
jle 0x10014e81
mov dword [ebp - 0x18e8], 1
jmp 0x10014e8b
mov dword [ebp - 0x18e8], 0xffffffff
mov ecx, dword [ebp - 0x18e8]
mov dword [ebp - 0xe8c], ecx
jmp 0x10014efd
push ebx
push esi
add esp, 4
or ebx, 0x454
xor ebx, 0x2661
call 0x10014eb8
add byte [ecx + 0x3a], al
cmp edi, dword [esi]
dec ecx
dec edx
xor al, byte [edi - 0x7d]
les eax, [eax + ebp*8]
pop es
add byte [eax], al
add byte [eax], al
cmp byte ds:[eax + eax*2], dh
add byte [esi], bh
cmp byte [eax + eax*2], dh
inc ebp
cmp eax, dword [ebx - 0x74a4fb3c]
xchg ebp, eax
js 0x10014ec0
invalid
mov edx, dword [ebp - 0xe8c]
mov dword [ebp - 0x18ec], edx
cmp dword [ebp - 0x18ec], 0
jne 0x10014f52
push edi
push esi
add esp, 4
and edi, 0x4df
pop edi
push ebx
xor ebx, 0x7cea
or ebx, 0x1051
and ebx, 0x13f49
pop ebx
push eax
push ebx
add esp, 4
add eax, 0x9b67
xor eax, 0x53b2
pop eax
mov eax, dword [ebp - 0x5c0]
mov dword [ebp - 0xbfc], eax
jmp 0x10014f93
jmp 0x10014ca0
push ebx
push edx
add esp, 4
add ebx, 0x13a9a
or ebx, 0x15a40
or ebx, 0x14d73
pop ebx
push edi
or edi, 0x1553e
and edi, 0xd7f7
sub edi, 0x1317
sub edi, 0x9039
pop edi
mov byte [ebp - 0x9c0], 0x45
mov byte [ebp - 0x9bf], 0x78
mov byte [ebp - 0x9be], 0x69
mov byte [ebp - 0x9bd], 0x74
mov byte [ebp - 0x9bc], 0x50
mov byte [ebp - 0x9bb], 0x72
mov byte [ebp - 0x9ba], 0x6f
mov byte [ebp - 0x9b9], 0x63
mov byte [ebp - 0x9b8], 0x65
mov byte [ebp - 0x9b7], 0x73
mov byte [ebp - 0x9b6], 0x73
mov byte [ebp - 0x9b5], 0
push edi
or edi, 0x17901
sub edi, 0x11ba6
and edi, 0x8a21
pop edi
push edi
push ebx
add esp, 4
call 0x10015041
add byte [ebp + 0x4a], al
inc edi
cmp edi, dword [ebx]
dec edx
cmp bh, byte [ebx]
inc ecx
add esp, 4
add edi, 0x773b
pop edi
mov ecx, 0x6b
mov word [ebp - 0x1a68], cx
mov edx, 0x65
mov word [ebp - 0x1a66], dx
mov eax, 0x72
mov word [ebp - 0x1a64], ax
mov ecx, 0x6e
mov word [ebp - 0x1a62], cx
mov edx, 0x65
mov word [ebp - 0x1a60], dx
mov eax, 0x6c
mov word [ebp - 0x1a5e], ax
mov ecx, 0x33
mov word [ebp - 0x1a5c], cx
mov edx, 0x32
mov word [ebp - 0x1a5a], dx
mov eax, 0x2e
mov word [ebp - 0x1a58], ax
mov ecx, 0x64
mov word [ebp - 0x1a56], cx
mov edx, 0x6c
mov word [ebp - 0x1a54], dx
mov eax, 0x6c
mov word [ebp - 0x1a52], ax
xor ecx, ecx
mov word [ebp - 0x1a50], cx
push ebx
xor ebx, 0xb189
sub ebx, 0x7314
add ebx, 0xf43f
pop ebx
push ebx
push esi
add esp, 4
and ebx, 0x52bc
add ebx, 0xe1df
and ebx, 0x23c6
xor ebx, 0x128e5
pop ebx
push edi
add edi, 0x1068b
or edi, 0x930d
add edi, 0xf1dd
or edi, 0xf9ac
pop edi
push edx
and edx, 0xb7f1
call 0x10015144
add byte [edx], bh
xor dl, byte [eax + 0x49]
cmp bh, byte [edx]
inc ebp
add esp, 4
pop edx
mov edx, dword fs:[0x18]
mov dword [ebp - 0x2884], edx
mov eax, dword [ebp - 0x2884]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0x2888], ecx
mov edx, dword [ebp - 0x2888]
mov dword [ebp - 0x18b0], edx
push edi
push esi
add esp, 4
and edi, 0x9348
call 0x10015187
add byte [ebx + 0x35], cl
aas
inc ecx
aas
inc eax
add esp, 4
or edi, 0x5314
and edi, 0xb7af
pop edi
push ebx
jmp 0x100151a1
pop ebx
cmp dword [ebp - 0x18b0], 0
jne 0x100151ba
mov dword [ebp - 0x398], 0
jmp 0x10015476
mov eax, dword [ebp - 0x18b0]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0xe98], edx
push edi
xor edi, 0x8924
add edi, 0x1715b
add edi, 0x4b3c
add edi, 0x39c1
pop edi
push edi
push esi
add esp, 4
or edi, 0x137f5
pop edi
push esi
push esi
add esp, 4
sub esi, 0x665c
pop esi
cmp dword [ebp - 0xe98], 0
jne 0x10015216
mov dword [ebp - 0x398], 0
jmp 0x10015476
mov eax, dword [ebp - 0xe98]
mov dword [ebp - 0x5c4], eax
push ebx
push edx
add esp, 4
sub ebx, 0x8597
and ebx, 0x731d
xor ebx, 0xcb39
sub ebx, 0x13f3f
pop ebx
push esi
sub esi, 0x11914
and esi, 0xbc30
or esi, 0x1571a
pop esi
lea ecx, [ebp - 0x1a68]
mov dword [ebp - 0xe94], ecx
mov edx, dword [ebp - 0x5c4]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0xe90], eax
xor ecx, ecx
leave