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

Disassembly:
test dword [0x6ffffff7], eax
mov byte [ebp - 0x8fa], 0x61
mov byte [ebp - 0x8f9], 0x64
mov byte [ebp - 0x8f8], 0x4c
mov byte [ebp - 0x8f7], 0x69
mov byte [ebp - 0x8f6], 0x62
mov byte [ebp - 0x8f5], 0x72
mov byte [ebp - 0x8f4], 0x61
mov byte [ebp - 0x8f3], 0x72
mov byte [ebp - 0x8f2], 0x79
mov byte [ebp - 0x8f1], 0x57
mov byte [ebp - 0x8f0], 0
mov eax, dword fs:[0x18]
mov dword [ebp - 0x217c], eax
mov ecx, dword [ebp - 0x217c]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x219c], edx
mov eax, dword [ebp - 0x219c]
mov dword [ebp - 0x16e0], eax
push ebx
push ecx
add esp, 4
jmp 0x406c44
add ebx, 0x2efd
jmp 0x406c50
jmp 0x406c57
pop ebx
push ecx
and ecx, 0x1399d
and ecx, 0x6e98
add ecx, 0x1678c
pop ecx
cmp dword [ebp - 0x16e0], 0
jne 0x406c84
mov dword [ebp - 0x7a8], 0
jmp 0x406f40
mov ecx, dword [ebp - 0x16e0]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xd58], eax
push edx
push ecx
add esp, 4
and edx, 0x10338
and edx, 0x8514
pop edx
push esi
xor esi, 0xa565
and esi, 0x14e9a
sub esi, 0xf887
pop esi
push eax
push ecx
add esp, 4
or eax, 0x157ad
pop eax
cmp dword [ebp - 0xd58], 0
jne 0x406ce0
mov dword [ebp - 0x7a8], 0
jmp 0x406f40
mov ecx, dword [ebp - 0xd58]
mov dword [ebp - 0x548], ecx
push edx
or edx, 0x2df1
sub edx, 0x1306d
pop edx
push ebx
push ecx
add esp, 4
and ebx, 0xd498
pop ebx
push edx
push edi
add esp, 4
and edx, 0x4a01
sub edx, 0x50e
sub edx, 0x16937
pop edx
lea edx, [ebp - 0x18b0]
mov dword [ebp - 0xd54], edx
mov eax, dword [ebp - 0x548]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xd50], ecx
xor edx, edx
mov word [ebp - 0x22c], dx
xor eax, eax
mov word [ebp - 0x11c], ax
push ecx
call 0x406d58
add byte [eax + 0x4e], cl
dec ecx
inc ecx
dec eax
add esp, 4
or ecx, 0xccc2
add ecx, 0x16175
pop ecx
push edi
add edi, 0xd288
jmp 0x406d76
or edi, 0x1d51
pop edi
mov ecx, dword [ebp - 0xd50]
mov dx, word [ecx]
mov word [ebp - 0x1116], dx
mov eax, dword [ebp - 0xd50]
add eax, 2
mov dword [ebp - 0xd50], eax
mov cx, word [ebp - 0x1116]
mov word [ebp - 0x22c], cx
mov edx, dword [ebp - 0xd54]
mov ax, word [edx]
mov word [ebp - 0x1118], ax
mov ecx, dword [ebp - 0xd54]
add ecx, 2
mov dword [ebp - 0xd54], ecx
mov dx, word [ebp - 0x1118]
mov word [ebp - 0x11c], dx
push ecx
jmp 0x406dde
pop ecx
push ecx
push ebx
add esp, 4
add ecx, 0x4751
sub ecx, 0xa1ef
and ecx, 0x9680
pop ecx
push edx
push edi
add esp, 4
or edx, 0x5274
xor edx, 0x135fc
pop edx
movzx eax, word [ebp - 0x11c]
test eax, eax
jne 0x406e2c
movzx ecx, word [ebp - 0x22c]
movzx edx, word [ebp - 0x11c]
sub ecx, edx
mov dword [ebp - 0x16e8], ecx
jmp 0x406e8f
movzx eax, word [ebp - 0x22c]
movzx ecx, word [ebp - 0x11c]
cmp eax, ecx
je 0x406d4b
movzx edx, word [ebp - 0x22c]
xor edx, 0x20
movzx eax, word [ebp - 0x11c]
cmp edx, eax
je 0x406d4b
movzx ecx, word [ebp - 0x22c]
movzx edx, word [ebp - 0x11c]
cmp ecx, edx
jge 0x406e79
mov dword [ebp - 0x16e4], 0xffffffff
jmp 0x406e83
mov dword [ebp - 0x16e4], 1
mov eax, dword [ebp - 0x16e4]
mov dword [ebp - 0x16e8], eax
cmp dword [ebp - 0x16e8], 0
jne 0x406ed8
push eax
or eax, 0x5b73
jmp 0x406ea5
or eax, 0x16d55
pop eax
push eax
push eax
add esp, 4
add eax, 0x11a70
call 0x406ec6
add byte [ebx + 0x4d], cl
inc esp
xor al, 0x42
inc ebx
dec edi
inc ecx
inc ebx
add esp, 4
pop eax
mov ecx, dword [ebp - 0x548]
mov dword [ebp - 0x7a8], ecx
jmp 0x406f40
push edi
push edi
add esp, 4
add edi, 0x443
pop edi
push ecx
and ecx, 0x1666e
or ecx, 0x314b
xor ecx, 0x1164f
sub ecx, 0x8332
pop ecx
push ecx
push ecx
add esp, 4
or ecx, 0xd2cb
pop ecx
mov edx, dword [ebp - 0x548]
mov eax, dword [edx]
mov dword [ebp - 0x548], eax
mov ecx, dword [ebp - 0x548]
cmp ecx, dword [ebp - 0xd58]
je 0x406f36
mov edx, dword [ebp - 0x548]
cmp dword [edx + 0x30], 0
jne 0x406cec
mov dword [ebp - 0x7a8], 0
push edx
push ebx
add esp, 4
add edx, 0x16a1e
sub edx, 0x7ac2
jmp 0x406f58
pop edx
push ebx
push ebx
add esp, 4
add ebx, 0x10198
jmp 0x406f6b
or ebx, 0x2eab
pop ebx
cmp dword [ebp - 0x7a8], 0
jne 0x406fbc
push esi
push edx
add esp, 4
add esi, 0xa344
sub esi, 0x2c67
add esi, 0x12dfd
pop esi
push esi
push eax
add esp, 4
or esi, 0xb3d4
and esi, 0x13b4
pop esi
push edi
and edi, 0x15f1a
pop edi
mov dword [ebp - 0x7f4], 0
jmp 0x407ae3
push edx
push ecx
add esp, 4
xor edx, 0x8ff6
and edx, 0x10631
pop edx
push edx
push edi
add esp, 4
or edx, 0x379a
add edx, 0x1154a
or edx, 0xb92
pop edx
push ebx
add ebx, 0x9bcc
pop ebx
mov eax, dword [ebp - 0x7a8]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x340], ecx
mov dword [ebp - 0x7b8], 0
mov edx, dword [ebp - 0x340]
mov dword [ebp - 0x16ec], edx
cmp dword [ebp - 0x16ec], 0
jne 0x40702d
mov eax, dword [ebp - 0x7b8]
mov dword [ebp - 0x424], eax
jmp 0x40731e
mov ecx, dword [ebp - 0x16ec]
mov edx, dword [ebp - 0x340]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x16f0], edx
jne 0x407055
mov eax, dword [ebp - 0x7b8]
mov dword [ebp - 0x424], eax
jmp 0x40731e
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x16f0]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x16f4], ecx
cmp dword [ebp - 0x16f4], 0
jne 0x407087
mov edx, dword [ebp - 0x7b8]
mov dword [ebp - 0x424], edx
jmp 0x40731e
mov eax, dword [ebp - 0x340]
add eax, dword [ebp - 0x16f4]
mov dword [ebp - 0x7ac], eax
jne 0x4070ac
mov ecx, dword [ebp - 0x7b8]
mov dword [ebp - 0x424], ecx
jmp 0x40731e
mov edx, dword [ebp - 0x7ac]
mov eax, dword [ebp - 0x340]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x1aac], eax
mov ecx, dword [ebp - 0x7ac]
mov edx, dword [ebp - 0x340]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x1ab0], edx
mov eax, dword [ebp - 0x7ac]
mov ecx, dword [ebp - 0x340]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x1ab4], ecx
mov dword [ebp - 0x7b0], 0
jmp 0x407106
mov eax, dword [ebp - 0x7ac]
mov ecx, dword [ebp - 0x7b0]
cmp ecx, dword [eax + 0x18]
jae 0x407312
mov edx, dword [ebp - 0x7b0]
mov eax, dword [ebp - 0x1aac]
mov ecx, dword [ebp - 0x340]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x7b4], ecx
mov edx, dword [ebp - 0x7b0]
mov eax, dword [ebp - 0x1ab0]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x1ab4]
mov eax, dword [ebp - 0x340]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x1ab8], eax
mov dword [ebp - 0x1ac], 0
jmp 0x407176
mov ecx, dword [ebp - 0x1ac]
add ecx, 1
mov dword [ebp - 0x1ac], ecx
mov edx, dword [ebp - 0x7b4]
add edx, dword [ebp - 0x1ac]
movsx eax, byte [edx]
test eax, eax
je 0x407228
mov ecx, dword [ebp - 0x1ac]
movsx edx, byte [ebp + ecx - 0x8fc]
test edx, edx
je 0x407228
push eax
and eax, 0x6423
and eax, 0x34d5
and eax, 0x1a22
add eax, 0x17f62
pop eax
push eax
push ecx
add esp, 4
or eax, 0x4314
and eax, 0x5995
sub eax, 0x133c7
pop eax
mov eax, dword [ebp - 0x7b4]
add eax, dword [ebp - 0x1ac]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x1ac]
movsx eax, byte [ebp + edx - 0x8fc]
cmp ecx, eax
je 0x40721a
mov ecx, dword [ebp - 0x7b4]
add ecx, dword [ebp - 0x1ac]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x1ac]
movsx ecx, byte [ebp + eax - 0x8fc]
cmp edx, ecx
jne 0x407221
jmp 0x407167
jmp 0x407228
push esi
push esi
add esp, 4
add esi, 0x2eb3
or esi, 0x9ab4
pop esi
push eax
add eax, 0xacdc
xor eax, 0xabe8
pop eax
push ebx
push edx
add esp, 4
xor ebx, 0x219b
or ebx, 0x1497e
pop ebx
mov edx, dword [ebp - 0x7b4]
add edx, dword [ebp - 0x1ac]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x1ac]
movsx edx, byte [ebp + ecx - 0x8fc]
cmp eax, edx
jne 0x407287
mov dword [ebp - 0xd5c], 0
jmp 0x4072f6
push eax
push ecx
add esp, 4
sub eax, 0x965f
jmp 0x407298
xor eax, 0xb568
add eax, 0xbfa4
pop eax
push ecx
and ecx, 0x16c56
and ecx, 0xecd1
or ecx, 0x638c
pop ecx
mov eax, dword [ebp - 0x7b4]
add eax, dword [ebp - 0x1ac]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x1ac]
dec dword [edi]
mov esi, 0xf7041584
invalid
inc dword [ebx - 0x37c4df38]
jge 0x4072ec
mov dword [ebp - 0xd5c], 0xffffffff
jmp 0x4072f6
mov dword [ebp - 0xd5c], 1
cmp dword [ebp - 0xd5c], 0
jne 0x40730d
mov ecx, dword [ebp - 0x1ab8]
mov dword [ebp - 0x424], ecx
jmp 0x40731e
invalid
jmp 0x4070f7
mov edx, dword [ebp - 0x7b8]
mov dword [ebp - 0x424], edx
cmp dword [ebp - 0x424], 0
je 0x4073f9
push edi
push esi
add esp, 4
and edi, 0x227e
sub edi, 0x3afb
pop edi
push eax
or eax, 0x101ec
call 0x407353
add byte [ecx + 0x37], al
xor edi, dword [ecx]
xor esi, dword [eax + ecx*2]
dec edi
cmp al, 0x83
les eax, [ecx + eax*4]
loopne 0x40730a
sub dword [ecx], eax
add byte [eax - 0x75], bl
test esp, ebx
sti
invalid
push ebx
push ebx
add esp, 4
sub ebx, 0x9b5
jmp 0x40740c
add ebx, 0xecae
and ebx, 0x143a2
pop ebx
push edx
push esi
add esp, 4
sub edx, 0x1ea7
sub edx, 0xb9b
pop edx
mov eax, dword fs:[0x18]
mov dword [ebp - 0x1ac4], eax
mov ecx, dword [ebp - 0x1ac4]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x1ac8], edx
mov eax, dword [ebp - 0x1ac8]
mov dword [ebp - 0x16f8], eax
push edi
push esi
add esp, 4
xor edi, 0x1351
and edi, 0x11395
pop edi
push edi
and edi, 0x2ea2
jmp 0x407471
call 0x407480
add byte [eax], bh
inc eax
aaa
dec ecx
xor al, 0x3f
xor al, 0x44
add esp, 4
pop edi
cmp dword [ebp - 0x16f8], 0
jne 0x40749c
mov dword [ebp - 0x324], 0
jmp 0x407743
mov ecx, dword [ebp - 0x16f8]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xd68], eax
push edi
push edx
add esp, 4
and edi, 0xd73d
call 0x4074c8
add byte [ebx + 0x3f], al
dec edi
dec ebx
dec edx
cmp al, 0x4b
dec esp
xor eax, dword [ebx - 0x187efb3c]
invalid
push ebx
push edx
add esp, 4
jmp 0x407750
and ebx, 0x15461
xor ebx, 0xdf9d
pop ebx
push ebx
push ebx
add esp, 4
sub ebx, 0x5fc8
and ebx, 0x83c4
add ebx, 0x678
pop ebx
mov eax, dword [ebp - 0x324]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x344], ecx
push eax
push edx
add esp, 4
jmp 0x407792
jmp 0x407797
sub eax, 0x14ae3
or eax, 0xc887
pop eax
push eax
push edx
add esp, 4
add eax, 0x11487
xor eax, 0x97c0
pop eax
mov dword [ebp - 0x7c8], 0
mov edx, dword [ebp - 0x344]
mov dword [ebp - 0x1704], edx
cmp dword [ebp - 0x1704], 0
jne 0x4077e6
mov eax, dword [ebp - 0x7c8]
mov dword [ebp - 0x550], eax
jmp 0x407ad7
mov ecx, dword [ebp - 0x1704]
mov edx, dword [ebp - 0x344]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x1708], edx
jne 0x40780e
mov eax, dword [ebp - 0x7c8]
mov dword [ebp - 0x550], eax
jmp 0x407ad7
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x1708]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x170c], ecx
cmp dword [ebp - 0x170c], 0
jne 0x407840
mov edx, dword [ebp - 0x7c8]
mov dword [ebp - 0x550], edx
jmp 0x407ad7
mov eax, dword [ebp - 0x344]
add eax, dword [ebp - 0x170c]
mov dword [ebp - 0x7bc], eax
push dword [ebp + 0x11]
mov edx, dword [ebp - 0x7bc]
mov eax, dword [ebp - 0x344]
inc dword [ebx]
inc edx
and byte [ecx - 0x1acb7b], cl
dec dword [ebx - 0x7bb73]
dec dword [ebx - 0x3436b]
inc dword [ebx]
push ecx
and al, 0x89
xchg ebp, eax
xor ch, ah
invalid
dec dword [ebx - 0x7bb7b]
dec dword [ebx - 0x34373]
inc dword [ebx]
dec eax
sbb al, 0x89
lea ebp, [0x85c7ffff]
inc eax
clc
invalid
inc dword [eax]
add byte [eax], al
add bl, ch
invalid
mov edx, dword [ebp - 0x7c0]
add edx, 1
mov dword [ebp - 0x7c0], edx
mov eax, dword [ebp - 0x7bc]
mov ecx, dword [ebp - 0x7c0]
cmp ecx, dword [eax + 0x18]
jae 0x407acb
mov edx, dword [ebp - 0x7c0]
mov eax, dword [ebp - 0x1acc]
mov ecx, dword [ebp - 0x344]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x7c4], ecx
mov edx, dword [ebp - 0x7c0]
mov eax, dword [ebp - 0x1ad0]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x1ad4]
mov eax, dword [ebp - 0x344]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x1e88], eax
mov dword [ebp - 0x1b0], 0
jmp 0x40792f
mov ecx, dword [ebp - 0x1b0]
add ecx, 1
mov dword [ebp - 0x1b0], ecx
mov edx, dword [ebp - 0x7c4]
add edx, dword [ebp - 0x1b0]
movsx eax, byte [edx]
test eax, eax
je 0x4079e1
mov ecx, dword [ebp - 0x1b0]
movsx edx, byte [ebp + ecx - 0x8e0]
test edx, edx
je 0x4079e1
push ecx
add ecx, 0xcfd9
xor ecx, 0x12631
pop ecx
push edx
and edx, 0x13626
call 0x40797d
add byte [edi], dh
dec esi
inc edx
dec eax
inc edi
inc eax
add esp, 4
pop edx
push ecx
push ecx
add esp, 4
jmp 0x40798d
pop ecx
mov eax, dword [ebp - 0x7c4]
add eax, dword [ebp - 0x1b0]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x1b0]
movsx eax, byte [ebp + edx - 0x8e0]
cmp ecx, eax
je 0x4079d3
mov ecx, dword [ebp - 0x7c4]
add ecx, dword [ebp - 0x1b0]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x1b0]
movsx ecx, byte [ebp + eax - 0x8e0]
cmp edx, ecx
jne 0x4079da
jmp 0x407920
jmp 0x4079e1
push eax
or eax, 0x4d79
and eax, 0x13320
xor eax, 0x6e8e
pop eax
push eax
push ebx
add esp, 4
xor eax, 0x16ecc
add eax, 0xcf40
and eax, 0x140f3
add eax, 0x1165b
pop eax
mov edx, dword [ebp - 0x7c4]
add edx, dword [ebp - 0x1b0]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x1b0]
movsx edx, byte [ebp + ecx - 0x8e0]
cmp eax, edx
jne 0x407a40
mov dword [ebp - 0xd6c], 0
jmp 0x407aaf
push esi
call 0x407a50
add byte [esi + 0x34], al
inc ebp
push eax
inc esp
cmp al, 0x36
dec esp
add esp, 4
add esi, 0x525d
or esi, 0x13b3f
add esi, 0xe54a
pop esi
push ecx
push ecx
add esp, 4
sub ecx, 0xe1aa
pop ecx
mov eax, dword [ebp - 0x7c4]
add eax, dword [ebp - 0x1b0]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x1b0]
movsx eax, byte [ebp + edx - 0x8e0]
or eax, 0x20
cmp ecx, eax
jge 0x407aa5
mov dword [ebp - 0xd6c], 0xffffffff
jmp 0x407aaf
mov dword [ebp - 0xd6c], 1
cmp dword [ebp - 0xd6c], 0
jne 0x407ac6
mov ecx, dword [ebp - 0x1e88]
mov dword [ebp - 0x550], ecx
jmp 0x407ad7
jmp 0x4078b0
mov edx, dword [ebp - 0x7c8]
mov dword [ebp - 0x550], edx