Function at 0x408f5c
Capabilities:
Contain obfuscated stackstrings
Get number of processors

Disassembly:
mov word [ebp - 0x176c], dx
mov eax, 0x6e
mov word [ebp - 0x176a], ax
mov ecx, 0x65
mov word [ebp - 0x1768], cx
mov edx, 0x6c
mov word [ebp - 0x1766], dx
mov eax, 0x33
mov word [ebp - 0x1764], ax
mov ecx, 0x32
mov word [ebp - 0x1762], cx
mov edx, 0x2e
mov word [ebp - 0x1760], dx
mov eax, 0x64
mov word [ebp - 0x175e], ax
mov ecx, 0x6c
mov word [ebp - 0x175c], cx
mov edx, 0x6c
mov word [ebp - 0x175a], dx
xor eax, eax
mov word [ebp - 0x1758], ax
push esi
xor esi, 0x1526a
xor esi, 0x22ec
pop esi
push edi
push edx
add esp, 4
or edi, 0x46cd
add edi, 0xd089
call 0x409006
add byte [ebx + 0x37], al
xor cl, byte [eax + 0x3a]
dec esi
inc ebp
xor edi, dword [0x5f04c483]
mov byte [ebp - 0x8a4], 0x4c
mov byte [ebp - 0x8a3], 0x6f
mov byte [ebp - 0x8a2], 0x61
mov byte [ebp - 0x8a1], 0x64
mov byte [ebp - 0x8a0], 0x4c
mov byte [ebp - 0x89f], 0x69
mov byte [ebp - 0x89e], 0x62
mov byte [ebp - 0x89d], 0x72
mov byte [ebp - 0x89c], 0x61
mov byte [ebp - 0x89b], 0x72
mov byte [ebp - 0x89a], 0x79
mov byte [ebp - 0x899], 0x57
mov byte [ebp - 0x898], 0
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x19ec], ecx
mov edx, dword [ebp - 0x19ec]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x19f0], eax
mov ecx, dword [ebp - 0x19f0]
mov dword [ebp - 0x1620], ecx
push ecx
or ecx, 0xba00
pop ecx
push ecx
jmp 0x40909b
pop ecx
push eax
push esi
add esp, 4
sub eax, 0x5d77
pop eax
push esi
push ecx
add esp, 4
call 0x4090bb
add byte [ebp + eax*2 + 0x3c], cl
push eax
inc esp
dec ecx
inc ebx
xor eax, dword [ebx - 0x7ca1fb3c]
mov ebp, 0xffffe9e0
add byte [ebp + 0xf], dh
mov dword [ebp - 0x774], 0
jmp 0x40937e
push ebx
add ebx, 0x5a53
jmp 0x40938d
jmp 0x409395
pop ebx
push ecx
push eax
add esp, 4
add ecx, 0x16d22
jmp 0x4093a9
or ecx, 0x3471
pop ecx
cmp dword [ebp - 0x774], 0
jne 0x4093fa
push ecx
add ecx, 0x171d2
pop ecx
push esi
push edi
add esp, 4
or esi, 0x1216e
and esi, 0xe82d
and esi, 0x6da4
pop esi
push edx
push eax
add esp, 4
xor edx, 0x3f0f
or edx, 0x318e
pop edx
mov dword [ebp - 0xab4], 0
jmp 0x409f22
push edi
sub edi, 0xfe77
xor edi, 0x475c
and edi, 0x16f7a
pop edi
push edi
sub edi, 0xddb5
jmp 0x40941a
call 0x409428
add byte [edx], bh
dec ebx
cmp al, byte [ebp + 0x3f]
dec ebx
xor al, byte ss:[ebx - 0x74a0fb3c]
lea ecx, [eax + edi*8 + 0x518bffff]
sbb byte [ecx - 0x3a36b], cl
inc edi
test dword [eax + edi*8 - 1], edi
inc dword [eax]
add byte [eax], al
add byte [ebx - 0x3a37b], cl
dec dword [ecx - 0x166b7b]
inc dword [ebx - 0x166b43]
inc dword [eax]
jne 0x40946b
mov ecx, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], ecx
jmp 0x40975c
mov edx, dword [ebp - 0x166c]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x1670], eax
jne 0x409493
mov ecx, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], ecx
jmp 0x40975c
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x1670]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1678], edx
cmp dword [ebp - 0x1678], 0
jne 0x4094c5
mov eax, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], eax
jmp 0x40975c
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [ebp - 0x1678]
mov dword [ebp - 0x778], ecx
jne 0x4094ea
mov edx, dword [ebp - 0x784]
mov dword [ebp - 0x3f8], edx
jmp 0x40975c
mov eax, dword [ebp - 0x778]
mov ecx, dword [ebp - 0x3a4]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x19f4], ecx
mov edx, dword [ebp - 0x778]
mov eax, dword [ebp - 0x3a4]
add eax, dword [edx + 0x24]
mov dword [ebp - 0x19f8], eax
mov ecx, dword [ebp - 0x778]
mov edx, dword [ebp - 0x3a4]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x19fc], edx
mov dword [ebp - 0x77c], 0
jmp 0x409544
mov ecx, dword [ebp - 0x778]
mov edx, dword [ebp - 0x77c]
cmp edx, dword [ecx + 0x18]
jae 0x409750
xor edi, 1
add byte [eax], al
mov eax, dword [ebp - 0x77c]
mov ecx, dword [ebp - 0x19f4]
invalid
xchg ebp, eax
pop esp