Function at 0x40a1ad
Capabilities:
Get number of processors

Disassembly:
add byte [eax], al
add edi, 0xe42b
pop edi
push ecx
or ecx, 0x1286e
pop ecx
push esi
xor esi, 0x15956
add esi, 0x11a08
pop esi
push esi
sub esi, 0x14a5e
and esi, 0x17859
pop esi
mov byte [ebp - 0x960], 0x56
mov byte [ebp - 0x95f], 0x69
mov byte [ebp - 0x95e], 0x72
mov byte [ebp - 0x95d], 0x74
mov byte [ebp - 0x95c], 0x75
mov byte [ebp - 0x95b], 0x61
mov byte [ebp - 0x95a], 0x6c
mov byte [ebp - 0x959], 0x50
mov byte [ebp - 0x958], 0x72
mov byte [ebp - 0x957], 0x6f
mov byte [ebp - 0x956], 0x74
mov byte [ebp - 0x955], 0x65
mov byte [ebp - 0x954], 0x63
mov byte [ebp - 0x953], 0x74
mov byte [ebp - 0x952], 0
push eax
and eax, 0xbe14
jmp 0x409e57
sub eax, 0x17082
pop eax
push eax
push eax
add esp, 4
call 0x409e6f
add byte [ebx + 0x47], cl
inc esi
inc eax
xor ecx, dword [ebx - 0x7d]
les eax, [ebx + ebp*8]
pop es
inc edi
dec edx
inc ecx
dec esi
push eax
xor eax, 0xa1645843
sbb byte [eax], al
add byte [eax], al
mov dword [ebp - 0x1c34], eax
mov ecx, dword [ebp - 0x1c34]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x18d4], edx
mov eax, dword [ebp - 0x18d4]
mov dword [ebp - 0x150c], eax
push edi
push edx
add esp, 4
or edi, 0x1704c
pop edi
push ecx
xor ecx, 0x14af5
jmp 0x409ebd
jmp 0x409ec2
and ecx, 0xe58
pop ecx
push ebx
push edx
add esp, 4
and ebx, 0x6e9a
pop ebx
cmp dword [ebp - 0x150c], 0
jne 0x409eed
mov dword [ebp - 0x2a8], 0
jmp 0x40a194
mov ecx, dword [ebp - 0x150c]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xc4c], eax
push edx
push esi
add esp, 4
add edx, 0x40f2
add edx, 0x8718
pop edx
push ecx
add ecx, 0x3158
add ecx, 0x1171
and ecx, 0x9892
pop ecx
push esi
push eax
add esp, 4
sub esi, 0xb215
pop esi
cmp dword [ebp - 0xc4c], 0
jne 0x409f49
mov dword [ebp - 0x2a8], 0
jmp 0x40a194
mov ecx, dword [ebp - 0xc4c]
mov dword [ebp - 0x4e4], ecx
push edx
push edx
add esp, 4
or edx, 0x6341
add edx, 0x254d
pop edx
push edi
and edi, 0xa7de
pop edi
push ecx
push ebx
add esp, 4
sub ecx, 0xabcb
xor ecx, 0x5449
or ecx, 0x4f98
pop ecx
lea edx, [ebp - 0x1628]
mov dword [ebp - 0xc48], edx
mov eax, dword [ebp - 0x4e4]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc44], ecx
xor edx, edx
mov word [ebp - 0x204], dx
xor eax, eax
mov word [ebp - 0x38], ax
push edi
jmp 0x409fbb
jmp 0x409fc3
and edi, 0x5f24
or edi, 0x44e2
pop edi
push edx
add edx, 0x11223
sub edx, 0xfb25
jmp 0x409fe2
pop edx
mov ecx, dword [ebp - 0xc44]
mov dx, word [ecx]
mov word [ebp - 0xf8a], dx
mov eax, dword [ebp - 0xc44]
add eax, 2
mov dword [ebp - 0xc44], eax
mov cx, word [ebp - 0xf8a]
mov word [ebp - 0x204], cx
mov edx, dword [ebp - 0xc48]
mov ax, word [edx]
mov word [ebp - 0xf8c], ax
mov ecx, dword [ebp - 0xc48]
add ecx, 2
mov dword [ebp - 0xc48], ecx
mov dx, word [ebp - 0xf8c]
mov word [ebp - 0x38], dx
push ecx
push esi
add esp, 4
call 0x40a04b
add byte [0x41434745], bh
aas
add esp, 4
call 0x40a05a
add byte [edi + 0x45], al
push eax
inc edi
dec esi
add esp, 4
pop ecx
push ecx
jmp 0x40a065
and ecx, 0x15401
pop ecx
movzx eax, word [ebp - 0x38]
test eax, eax
jne 0x40a089
movzx ecx, word [ebp - 0x204]
movzx edx, word [ebp - 0x38]
sub ecx, edx
mov dword [ebp - 0x1514], ecx
jmp 0x40a0e3
movzx eax, word [ebp - 0x204]
movzx ecx, word [ebp - 0x38]
cmp eax, ecx
je 0x409fb1
movzx edx, word [ebp - 0x204]
xor edx, 0x20
movzx eax, word [ebp - 0x38]
cmp edx, eax
je 0x409fb1
movzx ecx, word [ebp - 0x204]
movzx edx, word [ebp - 0x38]
cmp ecx, edx
jge 0x40a0cd
mov dword [ebp - 0x1510], 0xffffffff
jmp 0x40a0d7
mov dword [ebp - 0x1510], 1
mov eax, dword [ebp - 0x1510]
mov dword [ebp - 0x1514], eax
cmp dword [ebp - 0x1514], 0
jne 0x40a12c
push esi
sub esi, 0x4f30
jmp 0x40a0f8
add esi, 0x47f4
call 0x40a10b
add byte [0x4c4b463b], bh
inc esp
dec edx
add esp, 4
pop esi
push edx
xor edx, 0x10167
jmp 0x40a11d
pop edx
mov ecx, dword [ebp - 0x4e4]
mov dword [ebp - 0x2a8], ecx
jmp 0x40a194
push ecx
push eax
add esp, 4
call 0x40a141
add byte [esp + esi + 0x39], al
inc ecx
push eax
dec ecx
xor al, 0x32
inc ebp
inc ebx
add esp, 4
sub ecx, 0x10981
call 0x40a15a
add byte [esi + ecx*2 + 0x48], al
dec ebp
cmp dword [esi + 0x50], eax
dec eax
xor esi, dword [0x5904c483]
mov edx, dword [ebp - 0x4e4]
mov eax, dword [edx]
mov dword [ebp - 0x4e4], eax
mov ecx, dword [ebp - 0x4e4]
cmp ecx, dword [ebp - 0xc4c]
je 0x40a18a
mov edx, dword [ebp - 0x4e4]
cmp dword [edx + 0x30], 0
jne 0x409f55
mov dword [ebp - 0x2a8], 0
push edi
push ebx
add esp, 4
xor edi, 0x5623
call 0x40a1ad
add byte [ecx + 0x45], cl
dec edx
inc ecx
dec eax
cmp cl, byte [edx + 0x4c]
add esp, 4
jmp 0x40a1b9
pop edi
push ebx
push eax
add esp, 4
add ebx, 0xb530
pop ebx
cmp dword [ebp - 0x2a8], 0
jne 0x40aacb
mov eax, 0x6b
mov word [ebp - 0x16e8], ax
mov ecx, 0x65
mov word [ebp - 0x16e6], cx
mov edx, 0x72
mov word [ebp - 0x16e4], dx
mov eax, 0x6e
mov word [ebp - 0x16e2], ax
mov ecx, 0x65
mov word [ebp - 0x16e0], cx
mov edx, 0x6c
mov word [ebp - 0x16de], dx
mov eax, 0x33
mov word [ebp - 0x16dc], ax
mov ecx, 0x32
mov word [ebp - 0x16da], cx
mov edx, 0x2e
mov word [ebp - 0x16d8], dx
mov eax, 0x64
mov word [ebp - 0x16d6], ax
mov ecx, 0x6c