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

Disassembly:
mov edx, dword [ebp - 0x500]
add edx, 1
mov dword [ebp - 0x500], edx
push ecx
push edi
add esp, 4
and ecx, 0x2d48
xor ecx, 0xf103
pop ecx
push eax
push edi
add esp, 4
and eax, 0x1000c
pop eax
push ebx
or ebx, 0x10ca0
sub ebx, 0x87e
xor ebx, 0x599a
pop ebx
mov eax, dword [ebp - 0x500]
sub eax, dword [ebp - 0x3f0]
cmp eax, 0xffffffff
jb 0x404a46
push ebx
push ebx
add esp, 4
and ebx, 0x10554
pop ebx
push edi
add edi, 0x10c16
and edi, 0x4627
and edi, 0x138b7
call 0x404a3d
add byte [ecx + ecx*2 + 0x32], cl
cmp al, 0x3b
inc edi
aas
cmp byte [eax - 0x7d], al
les eax, [edi + ebx*2]
jmp 0x404c74
mov dword [ebp - 0xc88], 7
mov ecx, dword [ebp - 0x500]
mov dword [ebp - 0xac0], ecx
push edi
push eax
add esp, 4
and edi, 0xcf95
pop edi
push eax
and eax, 0x3136
and eax, 0x14edd
jmp 0x404a7b
sub eax, 0x5f1
pop eax
push edi
push esi
add esp, 4
and edi, 0xb99c
pop edi
mov edx, dword [ebp - 0x15d0]
mov dword [ebp - 0xabc], edx
mov dword [ebp - 0xc8c], 0
mov eax, dword [ebp - 0x500]
cmp eax, dword [ebp - 0x15d0]
jne 0x404af5
push edx
push edi
add esp, 4
jmp 0x404abf
pop edx
push ebx
push esi
add esp, 4
and ebx, 0xf65e
call 0x404ada
add byte [edi + 0x32], cl
dec esi
dec ebp
inc esi
dec ebp
cmp byte [edx + 0x44], cl
add esp, 4
and ebx, 0x5d95
pop ebx
mov ecx, dword [ebp - 0xc8c]
mov dword [ebp - 0x15d4], ecx
jmp 0x404c26
cmp dword [ebp - 0xc88], 0
jle 0x404c1a
push edx
push edi
add esp, 4
or edx, 0x66ed
xor edx, 0x384
or edx, 0xce0f
or edx, 0x26f4
pop edx
push esi
or esi, 0xafbf
pop esi
push ebx
push ebx
add esp, 4
add ebx, 0x5c80
pop ebx
mov edx, dword [ebp - 0xac0]
movzx eax, byte [edx]
mov ecx, dword [ebp - 0xabc]
movzx edx, byte [ecx]
cmp eax, edx
je 0x404bb6
push esi
add esi, 0x18184
pop esi
push ecx
or ecx, 0x15a09
and ecx, 0x11e57
jmp 0x404b67
or ecx, 0x8da1
pop ecx
push edx
push esi
add esp, 4
jmp 0x404b7b
pop edx
mov eax, dword [ebp - 0xac0]
movzx ecx, byte [eax]
mov edx, dword [ebp - 0xabc]
movzx eax, byte [edx]
cmp ecx, eax
jle 0x404b9e
mov dword [ebp - 0x15a0], 1
jmp 0x404ba8
mov dword [ebp - 0x15a0], 0xffffffff
mov ecx, dword [ebp - 0x15a0]
mov dword [ebp - 0xc8c], ecx
jmp 0x404c1a
push ebx
sub ebx, 0x1854f
pop ebx
push esi
push eax
add esp, 4
add esi, 0x9c51
or esi, 0x653c
jmp 0x404bd8
call fcn.00404be4
add byte [ebx], dh
cmp byte [eax + ecx*2 + 0x3c], al
dec ebx
add esp, 4
pop esi
mov edx, dword [ebp - 0xc88]
sub edx, 1
mov dword [ebp - 0xc88], edx
mov eax, dword [ebp - 0xac0]
add eax, 1
mov dword [ebp - 0xac0], eax
mov ecx, dword [ebp - 0xabc]
add ecx, 1
mov dword [ebp - 0xabc], ecx
jmp 0x404af5
mov edx, dword [ebp - 0xc8c]
mov dword [ebp - 0x15d4], edx
cmp dword [ebp - 0x15d4], 0
jne 0x404c6f
push esi
push edx
add esp, 4
or esi, 0xc2b3
and esi, 0x13df2
and esi, 0x7d93
xor esi, 0x9f8f
pop esi
push ebx
xor ebx, 0x3e96
add ebx, 0x17cfe
add ebx, 0x1002d
pop ebx
mov eax, dword [ebp - 0x500]
mov dword [ebp - 0xab8], eax
jmp 0x404cb0
jmp 0x4049bd
push edx
jmp 0x404c7e
or edx, 0x1483e
call 0x404c94
add byte [ebx], dh
dec edx
cmp al, 0x33
inc esp
inc edx
cmp byte [eax - 0x7d], al
les eax, [edx + ebx*2]
push eax
sub eax, 0x12652
xor eax, 0xbe57
pop eax
mov dword [ebp - 0xab8], 0
push edx
push ecx
add esp, 4
or edx, 0x158f5
xor edx, 0x16113
add edx, 0x8fb3
xor edx, 0x39cb
pop edx
push edx
push edx
add esp, 4
or edx, 0xf995
pop edx
push ecx
xor ecx, 0x11c1f
pop ecx
mov byte [ebp - 0x878], 0x45
mov byte [ebp - 0x877], 0x78
mov byte [ebp - 0x876], 0x69
mov byte [ebp - 0x875], 0x74
mov byte [ebp - 0x874], 0x50
mov byte [ebp - 0x873], 0x72
mov byte [ebp - 0x872], 0x6f
mov byte [ebp - 0x871], 0x63
mov byte [ebp - 0x870], 0x65
mov byte [ebp - 0x86f], 0x73
mov byte [ebp - 0x86e], 0x73
mov byte [ebp - 0x86d], 0
push ebx
add ebx, 0x12e9f
and ebx, 0x96b5
sub ebx, 0x5ca5
xor ebx, 0x1380f
pop ebx
push ebx
push esi
add esp, 4
and ebx, 0x17079
and ebx, 0x15f27
add ebx, 0x12043
pop ebx
mov ecx, 0x6b
mov word [ebp - 0x1738], cx
mov edx, 0x65
mov word [ebp - 0x1736], dx
mov eax, 0x72
mov word [ebp - 0x1734], ax
mov ecx, 0x6e
mov word [ebp - 0x1732], cx
mov edx, 0x65
mov word [ebp - 0x1730], dx
mov eax, 0x6c
mov word [ebp - 0x172e], ax
mov ecx, 0x33
mov word [ebp - 0x172c], cx
mov edx, 0x32
mov word [ebp - 0x172a], dx
mov eax, 0x2e
mov word [ebp - 0x1728], ax
mov ecx, 0x64
mov word [ebp - 0x1726], cx
mov edx, 0x6c
mov word [ebp - 0x1724], dx
mov eax, 0x6c
mov word [ebp - 0x1722], ax
xor ecx, ecx
mov word [ebp - 0x1720], cx
push ebx
push eax
add esp, 4
or ebx, 0x12355
pop ebx
push ebx
push ecx
add esp, 4
add ebx, 0x16414
or ebx, 0x10f83
and ebx, 0x13dae
pop ebx
push edi
xor edi, 0x4ef5
add edi, 0xcc09
pop edi
push ecx
push edi
add esp, 4
and ecx, 0x18078
pop ecx
push eax
sub eax, 0xc4ff
add eax, 0x12c11
sub eax, 0x7271
pop eax
push ebx
push ecx
add esp, 4
or ebx, 0x5454
add ebx, 0x5885
pop ebx
mov edx, dword fs:[0x18]
mov dword [ebp - 0x19a4], edx
mov eax, dword [ebp - 0x19a4]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0x19a8], ecx
mov edx, dword [ebp - 0x19a8]
mov dword [ebp - 0x15d8], edx
push ecx
push esi
add esp, 4
call 0x404e9e
add byte [ebx + 0x4d], cl
cmp byte [ebp + 0x3e], cl
inc eax
add esp, 4
jmp 0x404eaa
add ecx, 0x437e
pop ecx
push ebx
push eax
add esp, 4
jmp 0x404ebe
pop ebx
cmp dword [ebp - 0x15d8], 0
jne 0x404ed7
mov dword [ebp - 0x31c], 0
jmp 0x405193
mov eax, dword [ebp - 0x15d8]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0xc98], edx
push ecx
push edx
add esp, 4
add ecx, 0x4680
jmp 0x404efc
add ecx, 0x290f
and ecx, 0x175d1
pop ecx
push edx
push edx
add esp, 4
sub edx, 0x9d67
or edx, 0x12862
pop edx
cmp dword [ebp - 0xc98], 0
jne 0x404f33
mov dword [ebp - 0x31c], 0
jmp 0x405193
mov eax, dword [ebp - 0xc98]
mov dword [ebp - 0x504], eax
push edi
or edi, 0xfcab
pop edi
push ecx
push edx
add esp, 4
add ecx, 0x657f
sub ecx, 0x16dfe
pop ecx
push ecx
push ecx
add esp, 4
call 0x404f6d
add byte [edx + 0x41], cl
inc esi
xor eax, dword [ebp + 0x41]
dec ebp
dec edx
add esp, 4
pop ecx
lea ecx, [ebp - 0x1738]
mov dword [ebp - 0xc94], ecx
mov edx, dword [ebp - 0x504]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0xc90], eax
xor ecx, ecx
mov word [ebp - 0x210], cx
xor edx, edx
mov word [ebp - 0x10c], dx
push esi
call 0x404faf
add byte [ebx], bh
push eax
xor esi, dword ss:[edi]
inc ebx
aaa
xor eax, 0x5e04c483
push eax
add eax, 0x10cc6
or eax, 0x10e46
call 0x404fcc
add byte [eax + 0x3c], dl
aaa
dec edx
dec ebp
cmp al, 0x83
les eax, [eax + ebx*2]
mov eax, dword [ebp - 0xc90]
mov cx, word [eax]
mov word [ebp - 0x1032], cx
mov edx, dword [ebp - 0xc90]
add edx, 2
mov dword [ebp - 0xc90], edx
mov ax, word [ebp - 0x1032]
mov word [ebp - 0x210], ax
mov ecx, dword [ebp - 0xc94]
mov dx, word [ecx]
mov word [ebp - 0x1034], dx
mov eax, dword [ebp - 0xc94]
add eax, 2
mov dword [ebp - 0xc94], eax
mov cx, word [ebp - 0x1034]
mov word [ebp - 0x10c], cx
push eax
add eax, 0xed34
jmp 0x405038
xor eax, 0xc36b
jmp 0x405043
pop eax
push edi
push edx
add esp, 4
and edi, 0x15154
pop edi
push edi
push ecx
add esp, 4
and edi, 0xdf4c
pop edi
movzx edx, word [ebp - 0x10c]
test edx, edx
jne 0x40507f
movzx eax, word [ebp - 0x210]
movzx ecx, word [ebp - 0x10c]
sub eax, ecx
mov dword [ebp - 0x15e0], eax
jmp 0x4050e2
movzx edx, word [ebp - 0x210]
movzx eax, word [ebp - 0x10c]
cmp edx, eax
je 0x404f9e
movzx ecx, word [ebp - 0x210]
xor ecx, 0x20
movzx edx, word [ebp - 0x10c]
cmp ecx, edx
je 0x404f9e
movzx eax, word [ebp - 0x210]
movzx ecx, word [ebp - 0x10c]
cmp eax, ecx
jge 0x4050cc
mov dword [ebp - 0x15dc], 0xffffffff
jmp 0x4050d6
mov dword [ebp - 0x15dc], 1
mov edx, dword [ebp - 0x15dc]
mov dword [ebp - 0x15e0], edx
cmp dword [ebp - 0x15e0], 0
jne 0x40512b
push eax
or eax, 0x49e8
or eax, 0xd1f7
pop eax
push edi
jmp 0x405102
pop edi
push edi
push ebx
add esp, 4
and edi, 0x162fe
xor edi, 0x17e18
pop edi
push edx
or edx, 0x15cf0
pop edx
mov eax, dword [ebp - 0x504]
mov dword [ebp - 0x31c], eax
jmp 0x405193
push eax
push ebx
add esp, 4
sub eax, 0xa7fa
sub eax, 0x704b
pop eax
push ebx
or ebx, 0x91b8
sub ebx, 0x55ec
or ebx, 0x52b
pop ebx
push ebx
push eax
add esp, 4
and ebx, 0x120b9
pop ebx
mov ecx, dword [ebp - 0x504]
mov edx, dword [ecx]
mov dword [ebp - 0x504], edx
mov eax, dword [ebp - 0x504]
cmp eax, dword [ebp - 0xc98]
je 0x405189
mov ecx, dword [ebp - 0x504]
cmp dword [ecx + 0x30], 0
jne 0x404f3f
mov dword [ebp - 0x31c], 0
push ebx
push edi
add esp, 4
xor ebx, 0x10e73
jmp 0x4051a4
sub ebx, 0xb7d8
sub ebx, 0x98ac
pop ebx
push edi
push edx
add esp, 4
xor edi, 0x3249
jmp 0x4051c4
pop edi
cmp dword [ebp - 0x31c], 0
jne 0x405ade
mov edx, 0x6b
mov word [ebp - 0x1754], dx
mov eax, 0x65
mov word [ebp - 0x1752], ax
mov ecx, 0x72
mov word [ebp - 0x1750], cx
mov edx, 0x6e
mov word [ebp - 0x174e], dx
mov eax, 0x65
mov word [ebp - 0x174c], ax
mov ecx, 0x6c
mov word [ebp - 0x174a], cx
mov edx, 0x33
mov word [ebp - 0x1748], dx
mov eax, 0x32
mov word [ebp - 0x1746], ax
mov ecx, 0x2e
mov word [ebp - 0x1744], cx
mov edx, 0x64
mov word [ebp - 0x1742], dx
mov eax, 0x6c
mov word [ebp - 0x1740], ax
mov ecx, 0x6c
mov word [ebp - 0x173e], cx
xor edx, edx
mov word [ebp - 0x173c], dx
push edi
xor edi, 0x1658e
pop edi
push esi
push edx
add esp, 4
sub esi, 0x5158
or esi, 0x13d6b
xor esi, 0x1855c
and esi, 0xca85
pop esi
push ecx
push ecx
add esp, 4
add ecx, 0x48fb
pop ecx
mov byte [ebp - 0x894], 0x4c
mov byte [ebp - 0x893], 0x6f
mov byte [ebp - 0x892], 0x61
mov byte [ebp - 0x891], 0x64
mov byte [ebp - 0x890], 0x4c
mov byte [ebp - 0x88f], 0x69
mov byte [ebp - 0x88e], 0x62
mov byte [ebp - 0x88d], 0x72
mov byte [ebp - 0x88c], 0x61
mov byte [ebp - 0x88b], 0x72
mov byte [ebp - 0x88a], 0x79
mov byte [ebp - 0x889], 0x57
mov byte [ebp - 0x888], 0
mov eax, dword fs:[0x18]
mov dword [ebp - 0x19ac], eax
mov ecx, dword [ebp - 0x19ac]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x19b0], edx
mov eax, dword [ebp - 0x19b0]
mov dword [ebp - 0x15e4], eax
push ecx
push edx
add esp, 4
or ecx, 0x10747
xor ecx, 0x72ac
jmp 0x405338
add ecx, 0x1d5d
pop ecx
push ecx
push eax
add esp, 4
sub ecx, 0x14df
or ecx, 0x738a
pop ecx
cmp dword [ebp - 0x15e4], 0
jne 0x405369
mov dword [ebp - 0x750], 0
jmp 0x405625
mov ecx, dword [ebp - 0x15e4]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xca4], eax
push edi
push edx
add esp, 4
and edi, 0x90f3
jmp 0x40538e
pop edi
push eax
push esi
add esp, 4
and eax, 0x11a8d
jmp 0x4053a0
xor eax, 0x6ac3
and eax, 0x6944
pop eax
cmp dword [ebp - 0xca4], 0
jne 0x4053c5
mov dword [ebp - 0x750], 0
jmp 0x405625
mov ecx, dword [ebp - 0xca4]
mov dword [ebp - 0x508], ecx
push eax
call 0x4053e2
add byte [edx + 0x4b], cl
dec esi
dec esp
cmp eax, dword [eax + 0x41]
inc ebp
aas
cmp dword [ebx - 0x177efb3c], eax
push ss
push esi
add byte [eax], al
pop eax
push ebx
sub ebx, 0x4f50
jmp 0x4053fa
pop ebx
push ecx
or ecx, 0x15bac
pop ecx
lea edx, [ebp - 0x1754]
mov dword [ebp - 0xca0], edx
mov eax, dword [ebp - 0x508]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xc9c], ecx
xor edx, edx
mov word [ebp - 0x214], dx
xor eax, eax
mov word [ebp - 0x110], ax
push esi
call 0x405440
add byte [esi + 0x4e], cl
push eax
cmp dword [edi + 0x48], ecx
inc ebx
dec esp
add esp, 4
pop esi
push edx
push edi
add esp, 4
and edx, 0x3014
call 0x40545e
add byte [eax], bh
inc ebp
cmp eax, 0x36453239
inc esp
cmp eax, 0x5a04c483
mov ecx, dword [ebp - 0xc9c]
mov dx, word [ecx]
mov word [ebp - 0x1036], dx
mov eax, dword [ebp - 0xc9c]
add eax, 2
mov dword [ebp - 0xc9c], eax
mov cx, word [ebp - 0x1036]
mov word [ebp - 0x214], cx
mov edx, dword [ebp - 0xca0]
mov ax, word [edx]
mov word [ebp - 0x1038], ax
mov ecx, dword [ebp - 0xca0]
add ecx, 2
mov dword [ebp - 0xca0], ecx
mov dx, word [ebp - 0x1038]
mov word [ebp - 0x110], dx
push eax
push edi
add esp, 4
xor eax, 0x11541
add eax, 0xf1a9
sub eax, 0x9736
pop eax
push eax
push edx
add esp, 4
or eax, 0x1132d
jmp 0x4054e5
jmp 0x4054ed
pop eax
movzx eax, word [ebp - 0x110]
test eax, eax
jne 0x405511
movzx ecx, word [ebp - 0x214]
movzx edx, word [ebp - 0x110]
sub ecx, edx
mov dword [ebp - 0x15ec], ecx
jmp 0x405574
movzx eax, word [ebp - 0x214]
movzx ecx, word [ebp - 0x110]
cmp eax, ecx
je 0x405430
movzx edx, word [ebp - 0x214]
xor edx, 0x20
movzx eax, word [ebp - 0x110]
cmp edx, eax
je 0x405430
movzx ecx, word [ebp - 0x214]
movzx edx, word [ebp - 0x110]
cmp ecx, edx
jge 0x40555e
mov dword [ebp - 0x15e8], 0xffffffff
jmp 0x405568
mov dword [ebp - 0x15e8], 1
mov eax, dword [ebp - 0x15e8]
mov dword [ebp - 0x15ec], eax
cmp dword [ebp - 0x15ec], 0
jne 0x4055bd
push eax
push edi
add esp, 4
call 0x405591
add byte [ebp + 0x45], al
cmp byte [edx + 0x3a], cl
cmp al, 0x3c
cmp eax, 0x4c48343
or eax, 0x18413
pop eax
push edx
sub edx, 0x1523e
xor edx, 0xaba7
and edx, 0x562d
pop edx
mov ecx, dword [ebp - 0x508]
mov dword [ebp - 0x750], ecx
jmp 0x405625
push eax
push ebx
add esp, 4
call 0x4055d1
add byte [edi + 0x4b484e42], bh
inc ebx
inc esp
add esp, 4
pop eax
push esi
sub esi, 0x127f0
pop esi
push eax
push ecx
add esp, 4
or eax, 0x1526b
and eax, 0xb2bb
pop eax
mov edx, dword [ebp - 0x508]
mov eax, dword [edx]
mov dword [ebp - 0x508], eax
invalid
invalid
clc
cli
invalid