Function at 0x407588
Capabilities:
Get number of processors

Disassembly:
add al, 0x81
ror esp, 0x40
add byte [eax], al
push ecx
push ecx
add esp, 4
and ecx, 0xf377
or ecx, 0x2a67
sub ecx, 0x5ec
sub ecx, 0x45f2
pop ecx
push edi
sub edi, 0x8a1b
add byte [eax], al
xor edi, 0x65bf
or edi, 0x9eb
pop edi
mov eax, dword [ebp - 0x500]
sub eax, dword [ebp - 0x3f0]
cmp eax, 0xffffffff
jb 0x407267
push ecx
push ebx
add esp, 4
and ecx, 0x5f98
pop ecx
push ebx
push ebx
add esp, 4
sub ebx, 0x8841
pop ebx
push edx
push ebx
add esp, 4
or edx, 0xc988
pop edx
push edx
sub edx, 0xb57b
and edx, 0x158ba
pop edx
jmp 0x407495
mov dword [ebp - 0xc88], 7
mov ecx, dword [ebp - 0x500]
mov dword [ebp - 0xac0], ecx
push eax
push esi
add esp, 4
jmp 0x40728a
or eax, 0x1788e
and eax, 0x157bc
pop eax
push esi
push esi
add esp, 4
xor esi, 0x10311
and esi, 0x256d
and esi, 0x35c0
pop esi
mov edx, dword [ebp - 0x15d0]
mov dword [ebp - 0xabc], edx
mov dword [ebp - 0xc8c], 0
mov eax, dword [ebp - 0x500]
cmp eax, dword [ebp - 0x15d0]
jne 0x407316
push ebx
push ecx
add esp, 4
add ebx, 0x13abc
or ebx, 0xfe7c
and ebx, 0xbd15
pop ebx
push ebx
add ebx, 0x170cd
or ebx, 0x16b87
or ebx, 0x146d5
add ebx, 0x41e3
pop ebx
mov ecx, dword [ebp - 0xc8c]
mov dword [ebp - 0x15d4], ecx
jmp 0x407447
cmp dword [ebp - 0xc88], 0
jle 0x40743b
push eax
push ecx
add esp, 4
jmp 0x40732e
sub eax, 0x12719
pop eax
push edi
push esi
add esp, 4
or edi, 0x3b27
or edi, 0x131a4
xor edi, 0x1254
jmp 0x407354
pop edi
mov edx, dword [ebp - 0xac0]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0xabc]
movzx edx, byte [ecx]
cmp eax, edx
je 0x4073d7
push edx
sub edx, 0xcd09
jmp 0x40737a
or edx, 0x1753a
pop edx
push eax
xor eax, 0x7dfd
pop eax
push edx
add edx, 0x5f86
xor edx, 0x1759
or edx, 0x10479
pop edx
mov eax, dword [ebp - 0xac0]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0xabc]
movzx eax, byte [edx]
cmp ecx, eax
jle 0x4073bf
mov dword [ebp - 0x15a0], 1
jmp 0x4073c9
mov dword [ebp - 0x15a0], 0xffffffff
mov ecx, dword [ebp - 0x15a0]
mov dword [ebp - 0xc8c], ecx
jmp 0x40743b
push edi
add edi, 0xb3d3
and edi, 0x14377
and edi, 0x17848
pop edi
push eax
and eax, 0x42a
pop eax
push edi
or edi, 0x147ba
pop edi
push ecx
jmp 0x407402
add ecx, 0x9172
pop ecx
mov edx, dword [ebp - 0xc88]
sub edx, 1
mov dword [ebp - 0xc88], edx
mov eax, dword [ebp - 0xac0]
add eax, 1
mov dword [ebp - 0xac0], eax
mov ecx, dword [ebp - 0xabc]
add ecx, 1
mov dword [ebp - 0xabc], ecx
jmp 0x407316
mov edx, dword [ebp - 0xc8c]
mov dword [ebp - 0x15d4], edx
cmp dword [ebp - 0x15d4], 0
jne 0x407490
push edx
push edi
add esp, 4
or edx, 0x15efe
jmp 0x407463
pop edx
push ebx
push eax
add esp, 4
xor ebx, 0xe831
and ebx, 0xb63a
add ebx, 0x94ea
and ebx, 0x7a6
pop ebx
mov eax, dword [ebp - 0x500]
mov dword [ebp - 0xab8], eax
jmp 0x4074d1
jmp 0x4071de
push esi
xor esi, 0x13281
add esi, 0x693a
pop esi
push esi
push eax
add esp, 4
xor esi, 0x2372
or esi, 0x7f34
pop esi
push esi
push esi
add esp, 4
sub esi, 0x10dcc
add esi, 0x104eb
pop esi
mov dword [ebp - 0xab8], 0
push ebx
push edx
add esp, 4
xor ebx, 0x5cc1
and ebx, 0x6d32
xor ebx, 0x4529
pop ebx
push esi
call 0x4074f9
add byte [edi + 0x44], cl
inc edx
cmp dword [0x333a3936], esi
add esp, 4
add esi, 0x1679e
pop esi
mov byte [ebp - 0x878], 0x45
mov byte [ebp - 0x877], 0x78
mov byte [ebp - 0x876], 0x69
mov byte [ebp - 0x875], 0x74
mov byte [ebp - 0x874], 0x50
mov byte [ebp - 0x873], 0x72
mov byte [ebp - 0x872], 0x6f
mov byte [ebp - 0x871], 0x63
mov byte [ebp - 0x870], 0x65
mov byte [ebp - 0x86f], 0x73
mov byte [ebp - 0x86e], 0x73
mov byte [ebp - 0x86d], 0
push edi
sub edi, 0xa572
or edi, 0xb7a0
pop edi
push edi
and edi, 0x15e5f
xor edi, 0x12fd8
add edi, 0xb47
call 0x407585
add byte [edi + edi + 0x4e], al
dec edi
inc eax
xor al, 0x83
les eax, [edi + ebx*2]
pop edi
mov ecx, 0x6b
mov word [ebp - 0x1738], cx
mov edx, 0x65
mov word [ebp - 0x1736], dx
mov eax, 0x72
mov word [ebp - 0x1734], ax
mov ecx, 0x6e
mov word [ebp - 0x1732], cx
mov edx, 0x65
mov word [ebp - 0x1730], dx
mov eax, 0x6c
invalid
invalid
test edx, edx
invalid
invalid