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

Disassembly:
add esp, 4
pop edi
push ecx
and ecx, 0x7ba8
pop ecx
push edx
call 0x406385
add byte [ebp + 0x4f], al
inc ebp
xor ecx, dword [eax + 0x48]
xor eax, dword [ebx - 0x3d7efb3c]
stc
adc al, 1
add al, ch
or al, byte [eax]
add byte [eax], al
add byte [edi], bh
cmp edi, dword [esi]
inc esp
inc esi
inc ebp
dec edi
cmp byte [ebx + 0x645a04c4], al
mov edx, dword [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 esi
push edx
add esp, 4
or esi, 0x17333
jmp 0x4063d9
pop esi
push edi
sub edi, 0x11722
call 0x4063f1
add byte [ebx], bh
dec edi
xor al, 0x3d
dec esp
cmp edi, dword [0x83333d4a]
les eax, [ecx + eax*4]
out 0x43, eax
imul eax, dword [ecx], 0
pop edi
cmp dword [ebp - 0x15d8], 0
jne 0x406413
mov dword [ebp - 0x31c], 0
jmp 0x4066cf
mov eax, dword [ebp - 0x15d8]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0xc98], edx
push esi
call 0x406436
add byte [eax + 0x40], dl
dec eax
inc edx
inc edi
dec eax
inc ebp
cmp eax, 0xc4833e4c
add al, 0x81
out 0xc1, al
sbb eax, dword [eax]
add byte [ecx + 0x636fe6], al
add al, ch
or dword [eax], eax
add byte [eax], al
add byte [edx + 0x42], al
dec eax
xor esi, dword [0x833e4b47]
les eax, [esi + ebx*2]
cmp dword [ebp - 0xc98], 0
jne 0x40646f
mov dword [ebp - 0x31c], 0
jmp 0x4066cf
mov eax, dword [ebp - 0xc98]
mov dword [ebp - 0x504], eax
push ecx
push ecx
add esp, 4
xor ecx, 0xd3cf
add ecx, 0x14091
or ecx, 0x89da
pop ecx
push edi
xor edi, 0x11497
add edi, 0x14990
pop edi
push ebx
push ecx
add esp, 4
or ebx, 0xa96b
pop ebx
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
push ebx
add esp, 4
and eax, 0xecc
pop eax
push ecx
push ebx
add esp, 4
sub ecx, 0x4de6
pop ecx
push eax
and eax, 0x17817
pop eax
push edi
call 0x406508
add byte [eax + 0x34], dl
aaa
aaa
cmp eax, 0xc4834845
add al, 0x5f
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
push ebx
add esp, 4
add ecx, 0x674b
add byte [ecx + 0x50], bl
xor eax, 0x1fe2
pop eax
push esi
jmp 0x406581
call 0x40658e
add byte [eax + edx*2], dh
cmp edi, dword [ebx + esi]
dec edi
dec esi
add esp, 4
and esi, 0x1a4f
pop esi
movzx edx, word [ebp - 0x10c]
test edx, edx
jne 0x4065bb
movzx eax, word [ebp - 0x210]
movzx ecx, word [ebp - 0x10c]
sub eax, ecx
mov dword [ebp - 0x15e0], eax
jmp 0x40661e
movzx edx, word [ebp - 0x210]
movzx eax, word [ebp - 0x10c]
cmp edx, eax
je 0x4064da
movzx ecx, word [ebp - 0x210]
xor ecx, 0x20
movzx edx, word [ebp - 0x10c]
cmp ecx, edx
je 0x4064da
movzx eax, word [ebp - 0x210]
movzx ecx, word [ebp - 0x10c]
cmp eax, ecx
jge 0x406608
mov dword [ebp - 0x15dc], 0xffffffff
jmp 0x406612
mov dword [ebp - 0x15dc], 1
mov edx, dword [ebp - 0x15dc]
mov dword [ebp - 0x15e0], edx
cmp dword [ebp - 0x15e0], 0
jne 0x406667
push edx
push eax
add esp, 4
add edx, 0x4c6
pop edx
push ecx
push ebx
add esp, 4
or ecx, 0xdf8b
pop ecx
push ebx
add ebx, 0x9151
xor ebx, 0x1166
jmp 0x406652
or ebx, 0x499d
pop ebx
mov eax, dword [ebp - 0x504]
mov dword [ebp - 0x31c], eax
jmp 0x4066cf
push ecx
add ecx, 0xc54a
pop ecx
push edi
push edi
add esp, 4
sub edi, 0xabf3
sub edi, 0x2645
sub edi, 0x12cc7
pop edi
push esi
push ecx
add esp, 4
and esi, 0x16335
xor esi, 0x52d0
pop esi
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 0x4066c5
mov ecx, dword [ebp - 0x504]
cmp dword [ecx + 0x30], 0
jne 0x40647b
mov dword [ebp - 0x31c], 0
push edx
sub edx, 0x18025
add edx, 0xe525
add edx, 0x94f3
pop edx
push eax
push ecx
add esp, 4
call 0x4066f7
add byte [edi], dh
dec edx
dec edx
xor bh, byte [esi]
cmp eax, 0x83463d41
les eax, [ecx + eax*4]
invalid