Function at 0x409537
Capabilities:
Get number of processors

Disassembly:
or byte [eax], al
add byte [eax], al
add byte [edx + eax*2], dh
dec ebp
dec esi
cmp eax, dword [esi + 0x40]
add esp, 4
and edx, 0x10d1c
pop edx
push eax
sub eax, 0x15f40
call 0x41f1f9
pop eax
push edx
push ebx
add esp, 4
jmp 0x4092c5
pop edx
mov dword [ebp - 0xab8], 0
push eax
call 0x4092dd
add byte [edx + 0x39], al
dec ebx
aas
inc edi
xor al, byte [ebx - 0x177efb3c]
and byte [edi], al
add byte [eax], al
pop eax
push ecx
push esi
add esp, 4
jmp 0x4092f2
jmp 0x4092fa
jmp 0x409301
pop ecx
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
xor edi, 0x212e
add edi, 0xa70e
jmp 0x409369
and edi, 0x9557
pop edi
push esi
push edi
add esp, 4
add esi, 0xcfa1
add esi, 0x2a45
add esi, 0x155e5
pop esi
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
mov word [ebp - 0x172e], ax
shr al, cl
invalid
invalid
mov ecx, 0x33
mov word [ebp - 0x172c], cx
mov edx, 0x32
mov word [ebp - 0x172a], dx
mov eax, 0x2e
mov word [ebp - 0x1728], ax
mov ecx, 0x64
add byte [esi - 0x77], ah
invalid
invalid
call 0x6cfb9401
add byte [eax], al
add byte [esi - 0x77], ah
xchg ebp, eax
fsub st(0), st(0)
invalid
invalid
mov eax, 0x6c
mov word [ebp - 0x1722], ax
xor ecx, ecx
mov word [ebp - 0x1720], cx
push esi
add esi, 0xfd86
and esi, 0x766
add esi, 0xedc
pop esi
push ecx
push edx
add esp, 4
sub ecx, 0xf18d
pop ecx
push edi
push ebx
add esp, 4
sub edi, 0x165d0
xor edi, 0x9116
pop edi
push ebx
push ebx
add esp, 4
xor ebx, 0x14f5e
pop ebx
push ebx
xor ebx, 0x35cc
pop ebx
push edi
push ecx
add esp, 4
and edi, 0x2a52
add edi, 0xffd4
xor edi, 0x15967
and edi, 0x64da
pop edi
mov edx, dword fs:[0x18]
mov dword [ebp - 0x1954], edx
mov eax, dword [ebp - 0x1954]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0x1958], ecx
mov edx, dword [ebp - 0x1958]
mov dword [ebp - 0x15d8], edx
push ecx
push eax
add esp, 4
or ecx, 0x974c
call 0x4094c6
add byte [edi], bh
cmp bh, byte [eax]
inc esp
dec ecx
inc ecx
dec ecx
dec ebx
add esp, 4
add ecx, 0xb04a
pop ecx
push ecx
xor ecx, 0xe658
jmp 0x4094de
pop ecx
cmp dword [ebp - 0x15d8], 0
jne 0x4094f7
mov dword [ebp - 0x31c], 0
jmp 0x4097b3
mov eax, dword [ebp - 0x15d8]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0xc98], edx
push esi
call 0x40951a
add byte [esi + eax*2], dh
cmp al, 0x36
dec esi
cmp dword [edi + 0x45], eax
cmp byte [ecx - 0x7d], cl
les eax, [ecx + eax*4]
mul byte [esi + 1]
add byte [ecx + 0x174c2ee], al
add al, ch
or dword [eax], eax
add byte [eax], al
add byte [ebp + 0x46], al
dec esp
cmp byte [esi], bh
cmp eax, 0xc4834338
add al, 0x5e
cmp dword [ebp - 0xc98], 0
jne 0x409553
mov dword [ebp - 0x31c], 0
jmp 0x4097b3
mov eax, dword [ebp - 0xc98]
mov dword [ebp - 0x504], eax
push edx
and edx, 0xd910
or edx, 0x8924
add edx, 0x1375e
pop edx
push esi
push edx
add esp, 4
sub esi, 0x16343
and esi, 0x134bd
xor esi, 0x49dc
and esi, 0x1550a
pop esi
lea ecx, [ebp - 0x1738]
mov dword [ebp - 0xc94], ecx
mov edx, dword [ebp - 0x504]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0xc90], eax
xor ecx, ecx
mov word [ebp - 0x210], cx
xor edx, edx
mov word [ebp - 0x10c], dx
push eax
xor eax, 0x3f6b
xor eax, 0xf944
and eax, 0x7037
add eax, 0x8f89
pop eax
push esi
call 0x4095e7
add byte [ebx + 0x3e], cl
inc edi
cmp bh, byte [ebx]
push eax
dec esi
add esp, 4
jmp 0x4095ef
pop esi
mov eax, dword [ebp - 0xc90]
mov cx, word [eax]
mov word [ebp - 0x1032], cx
mov edx, dword [ebp - 0xc90]
add edx, 2
mov dword [ebp - 0xc90], edx
mov ax, word [ebp - 0x1032]
mov word [ebp - 0x210], ax
mov ecx, dword [ebp - 0xc94]
mov dx, word [ecx]
mov word [ebp - 0x1034], dx
mov eax, dword [ebp - 0xc94]
add eax, 2
mov dword [ebp - 0xc94], eax
mov cx, word [ebp - 0x1034]
mov word [ebp - 0x10c], cx
push esi
sub esi, 0x51e
or esi, 0x5116
pop esi
push eax
push eax
add esp, 4
sub eax, 0x12e60
add eax, 0xe12a
jmp 0x40966f
pop eax
push ecx
push ecx
add esp, 4
or ecx, 0x165b2
pop ecx
movzx edx, word [ebp - 0x10c]
test edx, edx
jne 0x40969f
movzx eax, word [ebp - 0x210]
movzx ecx, word [ebp - 0x10c]
sub eax, ecx
mov dword [ebp - 0x15e0], eax
jmp 0x409702
movzx edx, word [ebp - 0x210]
movzx eax, word [ebp - 0x10c]
cmp edx, eax
je 0x4095be
movzx ecx, word [ebp - 0x210]
xor ecx, 0x20
movzx edx, word [ebp - 0x10c]
cmp ecx, edx
je 0x4095be
movzx eax, word [ebp - 0x210]
movzx ecx, word [ebp - 0x10c]
cmp eax, ecx
jge 0x4096ec
mov dword [ebp - 0x15dc], 0xffffffff
jmp 0x4096f6
mov dword [ebp - 0x15dc], 1
mov edx, dword [ebp - 0x15dc]
mov dword [ebp - 0x15e0], edx
cmp dword [ebp - 0x15e0], 0
jne 0x40974b
push edi
push ecx
add esp, 4
add edi, 0xa1bf
sub edi, 0x8107
jmp 0x409722
and edi, 0x8384
pop edi
push edx
add edx, 0x1dc5
jmp 0x409736
add edx, 0x17211
pop edx
mov eax, dword [ebp - 0x504]
mov dword [ebp - 0x31c], eax
jmp 0x4097b3
push edi
sub edi, 0x15786
add edi, 0x6cb3
pop edi
push edi
add edi, 0x1477d
pop edi
push ecx
and ecx, 0x6a5a
and ecx, 0x1951
sub ecx, 0x1731a
jmp 0x40977c
pop ecx
mov ecx, dword [ebp - 0x504]
mov edx, dword [ecx]
mov dword [ebp - 0x504], edx
mov eax, dword [ebp - 0x504]
cmp eax, dword [ebp - 0xc98]
je 0x4097a9
mov ecx, dword [ebp - 0x504]
cmp dword [ecx + 0x30], 0
jne 0x40955f
mov dword [ebp - 0x31c], 0
push eax
push eax
add esp, 4
and eax, 0xd0f7
pop eax
push eax
sub eax, 0xa799
pop eax
push esi
push ecx
add esp, 4
xor esi, 0xf117
or esi, 0x112e0
add esi, 0x17c19
sub esi, 0x16498
push eax
push esi