Function at 0x406971
Capabilities:
Get number of processors

Disassembly:
mov eax, dword [ebp - 0x2d4]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x324], ecx
push ebx
add ebx, 0x31b6
xor ebx, 0x10571
or ebx, 0xab21
jmp 0x406448
pop ebx
push ecx
push esi
add esp, 4
add ecx, 0xf5b2
xor ecx, 0x3d93
or ecx, 0x5c40
pop ecx
mov dword [ebp - 0x774], 0
mov edx, dword [ebp - 0x324]
mov dword [ebp - 0x1610], edx
cmp dword [ebp - 0x1610], 0
jne 0x406491
mov eax, dword [ebp - 0x774]
mov dword [ebp - 0x514], eax
jmp 0x406782
mov ecx, dword [ebp - 0x1610]
mov edx, dword [ebp - 0x324]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x1614], edx
jne 0x4064b9
mov eax, dword [ebp - 0x774]
mov dword [ebp - 0x514], eax
jmp 0x406782
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x1614]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x1618], ecx
cmp dword [ebp - 0x1618], 0
jne 0x4064eb
mov edx, dword [ebp - 0x774]
mov dword [ebp - 0x514], edx
jmp 0x406782
mov eax, dword [ebp - 0x324]
add eax, dword [ebp - 0x1618]
mov dword [ebp - 0x768], eax
jne 0x406510
mov ecx, dword [ebp - 0x774]
mov dword [ebp - 0x514], ecx
jmp 0x406782
mov edx, dword [ebp - 0x768]
mov eax, dword [ebp - 0x324]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x19b8], eax
mov ecx, dword [ebp - 0x768]
mov edx, dword [ebp - 0x324]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x19bc], edx
mov eax, dword [ebp - 0x768]
mov ecx, dword [ebp - 0x324]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x19c0], ecx
mov dword [ebp - 0x76c], 0
jmp 0x40656a
mov edx, dword [ebp - 0x76c]
add edx, 1
mov dword [ebp - 0x76c], edx
mov eax, dword [ebp - 0x768]
mov ecx, dword [ebp - 0x76c]
cmp ecx, dword [eax + 0x18]
jae 0x406776
mov edx, dword [ebp - 0x76c]
mov eax, dword [ebp - 0x19b8]
mov ecx, dword [ebp - 0x324]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x770], ecx
mov edx, dword [ebp - 0x76c]
mov eax, dword [ebp - 0x19bc]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x19c0]
mov eax, dword [ebp - 0x324]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x1d48], eax
mov dword [ebp - 0x198], 0
jmp 0x4065da
mov ecx, dword [ebp - 0x198]
add ecx, 1
mov dword [ebp - 0x198], ecx
mov edx, dword [ebp - 0x770]
add edx, dword [ebp - 0x198]
movsx eax, byte [edx]
test eax, eax
je 0x40668c
mov ecx, dword [ebp - 0x198]
movsx edx, byte [ebp + ecx - 0x87c]
test edx, edx
je 0x40668c
push edi
push ebx
add esp, 4
sub edi, 0xe7ab
pop edi
push edi
call 0x406624
add byte [esp + edi + 0x44], cl
dec esp
cmp byte [edx + edi + 0x4a], cl
aas
inc edi
add esp, 4
jmp 0x40662c
or edi, 0xa2bc
xor edi, 0x3142
pop edi
mov eax, dword [ebp - 0x770]
add eax, dword [ebp - 0x198]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x198]
movsx eax, byte [ebp + edx - 0x87c]
cmp ecx, eax
je 0x40667e
mov ecx, dword [ebp - 0x770]
add ecx, dword [ebp - 0x198]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x198]
movsx ecx, byte [ebp + eax - 0x87c]
cmp edx, ecx
jne 0x406685
jmp 0x4065cb
jmp 0x40668c
push ebx
sub ebx, 0xaae3
and ebx, 0xd25e
and ebx, 0xd8f3
pop ebx
push edx
push esi
add esp, 4
call 0x4066b4
add byte [edi + 0x48], al
inc ebp
xor bh, byte [ecx]
inc ebx
cmp dword [esi], edi
dec edi
add esp, 4
add edx, 0xfd41
pop edx
mov edx, dword [ebp - 0x770]
add edx, dword [ebp - 0x198]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x198]
movsx edx, byte [ebp + ecx - 0x87c]
cmp eax, edx
jne 0x4066eb
mov dword [ebp - 0xcbc], 0
jmp 0x40675a
push edi
push edx
add esp, 4
or edi, 0xb65b
or edi, 0xe756
pop edi
push edi
or edi, 0x3af5
xor edi, 0x1dbe
xor edi, 0xe95a
pop edi
push edi
push esi
add esp, 4
or edi, 0xb909
pop edi
mov eax, dword [ebp - 0x770]
add eax, dword [ebp - 0x198]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x198]
movsx eax, byte [ebp + edx - 0x87c]
or eax, 0x20
cmp ecx, eax
jge 0x406750
mov dword [ebp - 0xcbc], 0xffffffff
jmp 0x40675a
mov dword [ebp - 0xcbc], 1
cmp dword [ebp - 0xcbc], 0
jne 0x406771
mov ecx, dword [ebp - 0x1d48]
mov dword [ebp - 0x514], ecx
jmp 0x406782
jmp 0x40655b
mov edx, dword [ebp - 0x774]
mov dword [ebp - 0x514], edx
mov eax, dword [ebp - 0x514]
mov dword [ebp - 0x7a0], eax
push ecx
add ecx, 0x652d
pop ecx
push esi
push edi
add esp, 4
xor esi, 0xd7f7
and esi, 0x3f73
call 0x4067b6
add byte [ecx + 0x45], al
cmp al, 0x48
aas
aas
cmp byte ss:[ecx - 0x7d], al
les eax, [ecx + eax*4]
out 0, al
add dword [eax], 0
pop esi
mov ecx, dword [ebp - 0x3e4]
add ecx, 0xe
mov dword [ebp - 0x1a10], ecx
push ebx
call 0x4067dc
add byte [edx + 0x38], cl
xor al, byte [ebp + 0x34]
dec ecx
add esp, 4
sub ebx, 0x7d19
xor ebx, 0xf7da
pop ebx
push ebx
call 0x4067fd
add byte [ebx + 0x45], cl
inc ebx
cmp cl, byte [esi + 0x36]
xor eax, 0x833a4c48
les eax, [ebx + ebx*2]
cmp dword [ebp - 0x3e4], 0
je 0x406813
cmp dword [ebp - 0xac4], 0
jne 0x406859
push esi
jmp 0x406819
call 0x406829
add byte [ebx + edi], dh
cmp byte [esp + eax*2], bh
xor cl, byte [esi + 0x3c]
aaa
xor eax, dword [ebx + 0x575e04c4]
push esi
add esp, 4
add edi, 0x620b
xor edi, 0x6520
sub edi, 0x121f6
pop edi
mov edx, dword [ebp - 0x7a0]
mov dword [ebp - 0x19c4], edx
push 0
call dword [ebp - 0x19c4]
mov dword [ebp - 0x20dc], 0xa
push eax
add eax, 0x37c
add eax, 0x824d
or eax, 0x95f0
pop eax
push ecx
push edi
add esp, 4
sub ecx, 0x1712c
xor ecx, 0xab2b
xor ecx, 0x86a4
or ecx, 0x876e
pop ecx
mov eax, dword [ebp - 0x3e4]
mov cl, byte [eax + 0xa]
mov byte [ebp - 0x3ed], cl
mov edx, dword [ebp - 0xac4]
sub edx, dword [ebp - 0x3e4]
mov dword [ebp - 0x169c], edx
mov dword [ebp - 0xcec], 0
push esi
or esi, 0x10f26
or esi, 0x4f88
add esi, 0x93e4
add esi, 0x4362
pop esi
push ebx
call 0x4068e8
add byte [ebp + 0x4a], al
xor al, 0x45
inc ebp
dec eax
inc esi
add esp, 4
sub ebx, 0x1ea6
pop ebx
mov byte [ebp - 0x9d8], 0x56
mov byte [ebp - 0x9d7], 0x69
mov byte [ebp - 0x9d6], 0x72
mov byte [ebp - 0x9d5], 0x74
mov byte [ebp - 0x9d4], 0x75
mov byte [ebp - 0x9d3], 0x61
mov byte [ebp - 0x9d2], 0x6c
mov byte [ebp - 0x9d1], 0x50
mov byte [ebp - 0x9d0], 0x72
mov byte [ebp - 0x9cf], 0x6f
mov byte [ebp - 0x9ce], 0x74
mov byte [ebp - 0x9cd], 0x65
mov byte [ebp - 0x9cc], 0x63
mov byte [ebp - 0x9cb], 0x74
mov byte [ebp - 0x9ca], 0
push edi
sub edi, 0x681f
call 0x406971
add byte [edi + 0x36], cl
dec ecx
cmp eax, dword [eax + 0x44]
aas
push eax
cmp al, 0x83
les eax, [ecx + eax*4]
iretd