Function at 0x40d05a
Capabilities:
Get number of processors

Disassembly:
mov edx, dword [ebp - 0x500]
add edx, 1
mov dword [ebp - 0x500], edx
push esi
push edx
add esp, 4
jmp 0x40ccdc
sub esi, 0x9766
sub esi, 0x11d14
pop esi
push esi
push edi
add esp, 4
add esi, 0x97fc
xor esi, 0x7c05
pop esi
push edx
and edx, 0x124b9
pop edx
mov eax, dword [ebp - 0x500]
sub eax, dword [ebp - 0x3f0]
cmp eax, 0xffffffff
jb 0x40cd4b
push edi
push ebx
add esp, 4
or edi, 0x7a3a
and edi, 0x110ef
or edi, 0x14f51
pop edi
push edx
or edx, 0x9165
sub edx, 0x152f5
and edx, 0x277d
xor edx, 0xb62f
pop edx
jmp 0x40cf79
mov dword [ebp - 0xc88], 7
mov ecx, dword [ebp - 0x500]
mov dword [ebp - 0xac8], ecx
push edx
push ebx
add esp, 4
xor edx, 0xa9aa
and edx, 0x38ea
pop edx
push esi
xor esi, 0x17f6b
pop esi
push eax
push esi
add esp, 4
and eax, 0x58
pop eax
push edi
push esi
add esp, 4
add edi, 0x1703e
pop edi
mov edx, dword [ebp - 0x15a0]
mov dword [ebp - 0xac4], edx
mov dword [ebp - 0xc8c], 0
mov eax, dword [ebp - 0x500]
cmp eax, dword [ebp - 0x15a0]
jne 0x40cdfa
push ebx
call fcn.0040cdc7
add byte [esp + edi], dh
cmp al, byte [ebx + 0x3a]
cmp al, 0x41
dec esi
inc eax
add esp, 4
pop ebx
push edx
call 0x40cdd9
add byte [esi + 0x36], cl
inc esi
dec ecx
aaa
add esp, 4
pop edx
push ecx
push ecx
add esp, 4
or ecx, 0x16e8b
pop ecx
mov ecx, dword [ebp - 0xc8c]
mov dword [ebp - 0x15d8], ecx
jmp 0x40cf2b
cmp dword [ebp - 0xc88], 0
jle 0x40cf1f
push ecx
push ecx
add esp, 4
xor ecx, 0x15def
pop ecx
push eax
push eax
add esp, 4
or eax, 0x4ea
pop eax
push edx
or edx, 0xc6f6
xor edx, 0x2524
or edx, 0x1a3c
or edx, 0xbace
pop edx
mov edx, dword [ebp - 0xac8]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0xac4]
movzx edx, byte [ecx]
cmp eax, edx
je 0x40cebb
push eax
add eax, 0xffbd
call 0x40ce63
add byte [edi], dh
cmp eax, 0x4a483238
dec ebp
add esp, 4
sub eax, 0xeadb
or eax, 0x15f6b
pop eax
push esi
sub esi, 0x832d
add esi, 0x55fe
pop esi
mov eax, dword [ebp - 0xac8]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0xac4]
movzx eax, byte [edx]
cmp ecx, eax
jle 0x40cea3
invalid
mov dword [ebp - 0x15d4], 1
jmp 0x40cead
mov dword [ebp - 0x15d4], 0xffffffff
mov ecx, dword [ebp - 0x15d4]
mov dword [ebp - 0xc8c], ecx
jmp 0x40cf1f
push ebx
call 0x40cecc
add byte [edx], dh
aaa
dec ebp
inc edx
xor al, 0x33
inc ebx
push eax
inc esi
xor al, 0x83
les eax, [ecx + eax*4]
jecxz 0x40ce8e
push ebp
add byte [eax], al
pop ebx
push esi
sub esi, 0x9f56
pop esi
push ebx
push ecx
add esp, 4
jmp 0x40ceec
pop ebx
mov edx, dword [ebp - 0xc88]
sub edx, 1
mov dword [ebp - 0xc88], edx
mov eax, dword [ebp - 0xac8]
add eax, 1
mov dword [ebp - 0xac8], eax
mov ecx, dword [ebp - 0xac4]
add ecx, 1
mov dword [ebp - 0xac4], ecx
jmp 0x40cdfa
mov edx, dword [ebp - 0xc8c]
mov dword [ebp - 0x15d8], edx
cmp dword [ebp - 0x15d8], 0
jne 0x40cf74
push eax
push edi
add esp, 4
or eax, 0x5fc1
add eax, 0x10a20
jmp 0x40cf4b
xor eax, 0xbdb6
pop eax
push ebx
xor ebx, 0x27e6
and ebx, 0x3ba3
sub ebx, 0x7981
pop ebx
mov eax, dword [ebp - 0x500]
mov dword [ebp - 0xac0], eax
jmp 0x40cfb5
jmp 0x40ccc2
push ebx
add ebx, 0x119b9
add ebx, 0x162e
pop ebx
push esi
push esi
add esp, 4
xor esi, 0xed4c
jmp 0x40cf98
pop esi
push edx
call 0x40cfa7
add byte [0x3c504333], dh
dec edi
inc edi
add esp, 4
pop edx
mov dword [ebp - 0xac0], 0
push ebx
sub ebx, 0xe40f
pop ebx
push ecx
push eax
add esp, 4
xor ecx, 0x15a8e
jmp 0x40cfd0
call 0x40cfdd
add byte [ecx], bh
cmp dword [edi + 0x4d], eax
dec edi
dec ebp
cmp dword [ebx - 0x367efb3c], eax
arpl word [ecx - 0x39a70000], cx
test dword [eax + 0x45fffff7], ecx
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 esi
push edi
add esp, 4
add esi, 0x4bcf
pop esi
push ebx
push edx
add esp, 4
call 0x40d05a
add byte [eax], bh
cmp cl, byte [esi + 0x46]
dec edx
inc ebp
dec edi
aas
add esp, 4
jmp 0x40d066
add ebx, 0x97ca
pop ebx
mov ecx, 0x6b
mov word [ebp - 0x173c], cx
mov edx, 0x65
mov word [ebp - 0x173a], dx
mov eax, 0x72
mov word [ebp - 0x1738], ax
mov ecx, 0x6e
mov word [ebp - 0x1736], cx
mov edx, 0x65
mov word [ebp - 0x1734], dx
mov eax, 0x6c
mov word [ebp - 0x1732], ax
mov ecx, 0x33
mov word [ebp - 0x1730], cx
mov edx, 0x32
mov word [ebp - 0x172e], dx
mov eax, 0x2e
mov word [ebp - 0x172c], ax
mov ecx, 0x64
mov word [ebp - 0x172a], cx
mov edx, 0x6c
mov word [ebp - 0x1728], dx
mov eax, 0x6c
mov word [ebp - 0x1726], ax
xor ecx, ecx
mov word [ebp - 0x1724], cx
push edx
xor edx, 0xad5b
sub edx, 0xd8e7
xor edx, 0x175d7
or edx, 0x1745a
pop edx
push edi
push ebx
add esp, 4
and edi, 0x127d8
and edi, 0xdcfc
sub edi, 0x2a36
pop edi
push ecx
push edi
add esp, 4
xor ecx, 0x5f13
jmp 0x40d14a
or ecx, 0x1458f
pop ecx
push esi
push edi
add esp, 4
or esi, 0x5165
jmp 0x40d163
or esi, 0xf5d5
pop esi
mov edx, dword fs:[0x18]
mov dword [ebp - 0x19b8], edx
mov eax, dword [ebp - 0x19b8]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0x19bc], ecx
mov edx, dword [ebp - 0x19bc]
mov dword [ebp - 0x15dc], edx
push ebx
push eax
add esp, 4
jmp 0x40d1a0
xor ebx, 0xdd14
pop ebx
push ebx
push edi
add esp, 4
or ebx, 0x6f98
jmp 0x40d1b7
xor ebx, 0x6b9c
and ebx, 0xa989
pop ebx
cmp dword [ebp - 0x15dc], 0
jne 0x40d1dc
mov dword [ebp - 0x31c], 0
jmp 0x40d498
mov eax, dword [ebp - 0x15dc]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0xc98], edx
push edx
sub edx, 0xca72
or edx, 0x25fe
and edx, 0xaa66
jmp 0x40d206
pop edx
push eax
call 0x40d216
add byte [edx + 0x40], cl
dec edi
xor al, 0x35
dec edi
inc ecx
dec edx
add esp, 4
add eax, 0xb0cd
pop eax
cmp dword [ebp - 0xc98], 0
jne 0x40d238
mov dword [ebp - 0x31c], 0
jmp 0x40d498
mov eax, dword [ebp - 0xc98]
mov dword [ebp - 0x504], eax
push edi
sub edi, 0x8ec0
pop edi
push ebx
push ebx
add esp, 4
and ebx, 0x5023
sub ebx, 0x5d57
pop ebx
push edi
push ecx
add esp, 4
xor edi, 0x4650
add edi, 0x6225
xor edi, 0x17e26
pop edi
lea ecx, [ebp - 0x173c]
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 ecx
call 0x40d2b3
add byte [0x4641423a], bh
dec edx
inc eax
dec ebx
add esp, 4
pop ecx
push ebx
or ebx, 0x17be0
add ebx, 0x8402
call 0x40d2d1
add byte [ebp + ecx*2 + 0x43], cl
aaa
cmp eax, dword [edi + 0x44]
add esp, 4
pop ebx
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 ecx
add ecx, 0x17f0a
pop ecx
push ebx
push ecx
add esp, 4
xor ebx, 0xe8a7
jmp 0x40d34b
xor ebx, 0x5643
call 0x40d35d
add byte [ebx], dh
cmp eax, dword [ebp + 0x4d]
cmp al, byte [edx - 0x7d]
les eax, [ebx + ebx*2]
movzx edx, word [ebp - 0x10c]
test edx, edx
jne 0x40d384
movzx eax, word [ebp - 0x210]
movzx ecx, word [ebp - 0x10c]
sub eax, ecx
mov dword [ebp - 0x15e4], eax
jmp 0x40d3e7
movzx edx, word [ebp - 0x210]
movzx eax, word [ebp - 0x10c]
cmp edx, eax
je 0x40d2a3
movzx ecx, word [ebp - 0x210]
xor ecx, 0x20
movzx edx, word [ebp - 0x10c]
cmp ecx, edx
je 0x40d2a3
movzx eax, word [ebp - 0x210]
movzx ecx, word [ebp - 0x10c]
cmp eax, ecx
jge 0x40d3d1
mov dword [ebp - 0x15e0], 0xffffffff
jmp 0x40d3db
mov dword [ebp - 0x15e0], 1
mov edx, dword [ebp - 0x15e0]
mov dword [ebp - 0x15e4], edx
cmp dword [ebp - 0x15e4], 0
jne 0x40d430
push eax
or eax, 0xd72e
add eax, 0xb95a
jmp 0x40d406
xor eax, 0x1280d
pop eax
push edi
push ecx
add esp, 4
sub edi, 0x12be1
jmp 0x40d421
pop edi
mov eax, dword [ebp - 0x504]
mov dword [ebp - 0x31c], eax
jmp 0x40d498
push eax
push ecx
add esp, 4
add eax, 0x2eb1
pop eax
push edx
call 0x40d44b
add byte [esp + eax*2], dh
push eax
inc edi
xor eax, dword [ebp + 0x4f]
cmp al, byte [ebx + 0x5eb04c4]
cmp eax, 0x3a3a474a
sub edx, 0x7533
and edx, 0xf26d
pop edx
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 0x40d48e
mov ecx, dword [ebp - 0x504]
cmp dword [ecx + 0x30], 0
jne 0x40d244
mov dword [ebp - 0x31c], 0
push esi
or esi, 0xbe84
add esi, 0x1003e
pop esi
push ecx
push ecx
add esp, 4
and ecx, 0x12b77
add ecx, 0x16c61
xor ecx, 0x84cc
pop ecx
push edi
push esi
add esp, 4
or edi, 0x12c32
pop edi
cmp dword [ebp - 0x31c], 0
jne 0x40dde3
mov edx, 0x6b
mov word [ebp - 0x1758], dx
mov eax, 0x65
mov word [ebp - 0x1756], ax
mov ecx, 0x72
mov word [ebp - 0x1754], cx
mov edx, 0x6e
mov word [ebp - 0x1752], dx
mov eax, 0x65
mov word [ebp - 0x1750], ax
mov ecx, 0x6c
mov word [ebp - 0x174e], cx
mov edx, 0x33
mov word [ebp - 0x174c], dx
mov eax, 0x32
mov word [ebp - 0x174a], ax
mov ecx, 0x2e
mov word [ebp - 0x1748], cx
mov edx, 0x64
mov word [ebp - 0x1746], dx
mov eax, 0x6c
mov word [ebp - 0x1744], ax
mov ecx, 0x6c
mov word [ebp - 0x1742], cx
xor edx, edx
mov word [ebp - 0x1740], dx
push ecx
push ebx
add esp, 4
or ecx, 0xcfb4
call 0x40d587
add byte [edx], dh
xor bh, byte [ecx]
dec ecx
cmp byte [edx - 0x7d], cl
les eax, [ecx + eax*4]
jmp 0x415c95
add byte [ecx + 0xcff7f6], al
add byte [ecx + 0x3078e6], al
add byte [esi - 0x39], bl
test dword [eax + edi*8 - 1], esp
inc dword [eax]
add byte [eax], al
add cl, ch
ljmp 0x8352
push edx
push edx
add esp, 4
call 0x40ddf5
add byte [eax + edx*2 + 0x4c], al
dec edx
xor cl, byte [esi + 0x41]
add esp, 4
sub edx, 0xb673
call 0x40de0b
add byte [edi + 0x4b], cl
xor eax, 0x83374b48
les eax, [ecx + eax*4]
loop 0x40ddc6
fld dword [eax]
add byte [edx + 0x64], bl
mov eax, dword [0x18]
mov dword [ebp - 0x19e0], eax
mov ecx, dword [ebp - 0x19e0]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x19e4], edx
mov eax, dword [ebp - 0x19e4]
mov dword [ebp - 0x1600], eax
push edx
or edx, 0x8989
add edx, 0x51cf
or edx, 0x15918
pop edx
push esi
and esi, 0x4644
call 0x40de64
add byte [ecx + ecx*2 + 0x4e], cl
dec eax
inc edi
xor ecx, dword [ebx - 0x7d]
les eax, [ecx + eax*4]
invalid
push edx
cmp al, 0x4c
pop ecx
inc ebx
cmp al, 0x4c
mov ebp, cs
or eax, 0x31969467
push es
or byte [eax], cl
xchg esp, eax
pop edx
and dword [edx + 0x805b19e], edx
or byte [edx - 0x76], bl
retf 0x4d5