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

Disassembly:
and edx, 0x7666
pop edx
push edx
push edi
add esp, 4
jmp 0x416b41
or edx, 0x11b0a
or edx, 0x301f
xor edx, 0x12fd6
pop edx
mov edx, dword fs:[0x18]
mov dword [ebp - 0x1ff4], edx
mov eax, dword [ebp - 0x1ff4]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0x1950], ecx
mov edx, dword [ebp - 0x1950]
mov dword [ebp - 0x159c], edx
push eax
push edi
add esp, 4
add al, 0x81
enter 0xffffffffffffbadd, 0
add byte [ecx + 0xa3c6e8], al
add byte [ecx + 0x13473c8], al
add byte [eax + 0x52], bl
or edx, 0x154ad
pop edx
push ebx
push ebx
add esp, 4
sub ebx, 0x5d8c
sub ebx, 0x371c
pop ebx
cmp dword [ebp - 0x159c], 0
jne 0x416bc6
mov dword [ebp - 0x318], 0
jmp 0x416e82
mov eax, dword [ebp - 0x159c]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0xc98], edx
push eax
add eax, 0x118be
pop eax
push edi
push ecx
add esp, 4
add edi, 0xfc9c
xor edi, 0x52e5
and edi, 0x75ef
add edi, 0x8420
pop edi
push esi
push edi
add esp, 4
sub esi, 0x8e2f
pop esi
cmp dword [ebp - 0xc98], 0
jne 0x416c22
mov dword [ebp - 0x318], 0
jmp 0x416e82
mov eax, dword [ebp - 0xc98]
mov dword [ebp - 0x504], eax
push eax
jmp 0x416c38
jmp 0x416c3f
call 0x416c4e
add byte [ecx], bh
xor al, 0x3d
dec ebx
dec eax
dec edx
xor dh, byte [0x4c4834a]
pop eax
push edi
add edi, 0x5af4
and edi, 0x17f3
pop edi
lea ecx, [ebp - 0x1734]
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 - 0x20c], cx
xor edx, edx
mov word [ebp - 0x10c], dx
push eax
push edx
add esp, 4
sub eax, 0xc95
xor eax, 0x704c
jmp 0x416ca6
pop eax
push esi
call 0x416cb5
add byte [edi], bh
cmp byte ds:[esi + 0x4e], cl
inc ebp
add esp, 4
or esi, 0x13c29
pop esi
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 - 0x20c], 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 esi
and esi, 0x12ebe
pop esi
push edx
push ebx
add esp, 4
and edx, 0xa99d
xor edx, 0x8e8b
add byte [eax], al
add edx, 0x2547
pop edx
push edx
push eax
add esp, 4
add edx, 0x99a7
sub edx, 0x1e97
pop edx
movzx edx, word [ebp - 0x10c]
test edx, edx
jne 0x416d6e
movzx eax, word [ebp - 0x20c]
movzx ecx, word [ebp - 0x10c]
sub eax, ecx
mov dword [ebp - 0x15d8], eax
jmp 0x416dd1
movzx edx, word [ebp - 0x20c]
movzx eax, word [ebp - 0x10c]
cmp edx, eax
je 0x416c8d
movzx ecx, word [ebp - 0x20c]
xor ecx, 0x20
movzx edx, word [ebp - 0x10c]
cmp ecx, edx
je 0x416c8d
movzx eax, word [ebp - 0x20c]
movzx ecx, word [ebp - 0x10c]
cmp eax, ecx
jge 0x416dbb
mov dword [ebp - 0x15d4], 0xffffffff
jmp 0x416dc5
mov dword [ebp - 0x15d4], 1
mov edx, dword [ebp - 0x15d4]
mov dword [ebp - 0x15d8], edx
cmp dword [ebp - 0x15d8], 0
jne 0x416e1a
push edx
push esi
add esp, 4
or edx, 0x129af
jmp 0x416ded
xor edx, 0x1221e
pop edx
push eax
push edx
add esp, 4
xor eax, 0x14acb
add eax, 0xdd8a
or eax, 0x5fdb
pop eax
mov eax, dword [ebp - 0x504]
mov dword [ebp - 0x318], eax
jmp 0x416e82
push edx
push edi
add esp, 4
call 0x416e2c
add byte [esi + 0x41], al
push eax
inc ebx
xor cl, byte ds:[edi - 0x7d]
les eax, [ecx + eax*4]
ret 0x690c
push edx
and edx, 0x7b85
sub edx, 0xbf8
or edx, 0x13535
pop edx
push edi
push esi
add esp, 4
and edi, 0xed2c
add edi, 0x2e71
sub edi, 0x17c5b
and edi, 0xefc9
pop edi
cmp dword [ebp - 0x318], 0
jne 0x4177cd
mov edx, 0x6b
mov word [ebp - 0x1770], dx
mov eax, 0x65
mov word [ebp - 0x176e], ax
mov ecx, 0x72
mov word [ebp - 0x176c], cx
mov edx, 0x6e
mov word [ebp - 0x176a], dx
mov eax, 0x65
mov word [ebp - 0x1768], ax
mov ecx, 0x6c
mov word [ebp - 0x1766], cx
mov edx, 0x33
mov word [ebp - 0x1764], dx
mov eax, 0x32
mov word [ebp - 0x1762], ax
mov ecx, 0x2e
mov word [ebp - 0x1760], cx
mov edx, 0x64
mov word [ebp - 0x175e], dx
mov eax, 0x6c
mov word [ebp - 0x175c], ax
mov ecx, 0x6c
mov word [ebp - 0x175a], cx
xor edx, edx
mov word [ebp - 0x1758], dx
push ebx
push eax
add esp, 4
add ebx, 0x4326
xor ebx, 0x2b48
call 0x416f77
add byte [ebx + 0x43], al
inc ecx
aas
dec edi
add esp, 4
jmp 0x416f83
pop ebx
push ebx
or ebx, 0x436b
pop ebx
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 - 0x1954], eax
mov ecx, dword [ebp - 0x1954]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x1958], edx
mov eax, dword [ebp - 0x1958]
mov dword [ebp - 0x15dc], eax
push edx
push ecx
add esp, 4
sub edx, 0x793
jmp 0x41701f
or edx, 0xa08d
pop edx
push ecx
push edi
add esp, 4
jmp 0x417033
jmp 0x417039
add ecx, 0x56b4
pop ecx
cmp dword [ebp - 0x15dc], 0
jne 0x417058
mov dword [ebp - 0x750], 0
jmp 0x417314
mov ecx, dword [ebp - 0x15dc]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xca4], eax
push edx
push eax
add esp, 4
sub edx, 0x17131
and edx, 0x156c
pop edx
push eax
add eax, 0xc42b
or eax, 0xac84
pop eax
push edx
push edx
add esp, 4
or edx, 0x1128d
or edx, 0xee1b
pop edx
cmp dword [ebp - 0xca4], 0
jne 0x4170b4
mov dword [ebp - 0x750], 0
jmp 0x417314
pushal
add al, byte [eax]
invalid
mov ecx, dword [ebp - 0xca4]
mov dword [ebp - 0x508], ecx
push ebx
push ebx
add esp, 4
or ebx, 0x17844
and ebx, 0x5218
xor ebx, 0xa30f
pop ebx
push ecx
and ecx, 0x9b3c
or ecx, 0x83d8
xor ecx, 0xa9f7
and ecx, 0x101ee
pop ecx
lea edx, [ebp - 0x1770]
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 - 0x210], dx
xor eax, eax
mov word [ebp - 0x110], ax
push eax
push esi
add esp, 4
jmp 0x41712d
jmp 0x417135
jmp 0x41713a
xor eax, 0xd66c
pop eax
push esi
jmp 0x41714a
or esi, 0x15291
pop esi
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 - 0x210], 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 edi
push ecx
add esp, 4
add edi, 0x15bac
sub edi, 0xe6f2
and edi, 0x14770
pop edi
push eax
jmp 0x4171c9
call 0x4171d9
add byte [ebx + 0x37], al
dec eax
dec edx
dec eax
cmp eax, 0x4435334f
add esp, 4
pop eax
movzx eax, word [ebp - 0x110]
test eax, eax
jne 0x417200
movzx ecx, word [ebp - 0x210]
movzx edx, word [ebp - 0x110]
sub ecx, edx
mov dword [ebp - 0x15e4], ecx
jmp 0x417263
movzx eax, word [ebp - 0x210]
movzx ecx, word [ebp - 0x110]
cmp eax, ecx
je 0x41711f
movzx edx, word [ebp - 0x210]
xor edx, 0x20
invalid
cmp dword [ebp - 0x15e4], 0
jne 0x4172ac
push esi
and esi, 0x2cca
pop esi
push edx
push edi
add esp, 4
or edx, 0x8750
xor edx, 0x14407
sub edx, 0x3274
or edx, 0x14807
pop edx
push esi
push edi
add esp, 4
add esi, 0x15df2
pop esi
mov ecx, dword [ebp - 0x508]
mov dword [ebp - 0x750], ecx
jmp 0x417314
push ebx
sub ebx, 0x1849c
call 0x4172c0
add byte [ebx + 0x41], al
inc esi
cmp dh, byte [0xc4833d41]
add al, 0x81
jmp 0x417249
push edx
xor edx, 0xb92c
pop edx
push ecx
sub ecx, 0xefe
call 0x417331
add byte [edx], bh
dec ebp
cmp eax, 0x4c444649
dec ebp
add esp, 4
call 0x417342
add byte [eax + 0x40], dl
inc edx
aaa
cmp esi, dword [edx]
inc ebp
inc esp
add esp, 4
pop ecx
cmp dword [ebp - 0x750], 0
jne 0x417390
push edx
and edx, 0xad86
xor edx, 0xb73b
xor edx, 0xac45
pop edx
push eax
push ecx
add esp, 4
add eax, 0x1268f
and eax, 0xfe34
or eax, 0x14b48
and eax, 0x13816
pop eax
mov dword [ebp - 0x79c], 0
jmp 0x417eb7
push edx
xor edx, 0x12d99
pop edx
push edi
push edi
add esp, 4
jmp 0x4173a4
jmp 0x4173ad
and edi, 0x5c31
pop edi
push esi
and esi, 0x11e19
xor esi, 0xc5e2
pop esi
mov eax, dword [ebp - 0x750]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x320], ecx
mov dword [ebp - 0x760], 0
mov edx, dword [ebp - 0x320]
mov dword [ebp - 0x15e8], edx
cmp dword [ebp - 0x15e8], 0
jne 0x417401
mov eax, dword [ebp - 0x760]
mov dword [ebp - 0x3f0], eax
jmp 0x4176f2
mov ecx, dword [ebp - 0x15e8]
mov edx, dword [ebp - 0x320]
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x15ec], edx
jne 0x417429
mov eax, dword [ebp - 0x760]
mov dword [ebp - 0x3f0], eax
jmp 0x4176f2
mov ecx, 8
imul edx, ecx, 0
mov eax, dword [ebp - 0x15ec]
mov ecx, dword [eax + edx + 0x78]
mov dword [ebp - 0x15f0], ecx
cmp dword [ebp - 0x15f0], 0
jne 0x41745b
mov edx, dword [ebp - 0x760]
mov dword [ebp - 0x3f0], edx
jmp 0x4176f2
mov eax, dword [ebp - 0x320]
add eax, dword [ebp - 0x15f0]
mov dword [ebp - 0x754], eax
jne 0x417480
mov ecx, dword [ebp - 0x760]
mov dword [ebp - 0x3f0], ecx
jmp 0x4176f2
mov edx, dword [ebp - 0x754]
mov eax, dword [ebp - 0x320]
add eax, dword [edx + 0x20]
mov dword [ebp - 0x195c], eax
mov ecx, dword [ebp - 0x754]
mov edx, dword [ebp - 0x320]
add edx, dword [ecx + 0x24]
mov dword [ebp - 0x1960], edx
mov eax, dword [ebp - 0x754]
mov ecx, dword [ebp - 0x320]
add ecx, dword [eax + 0x1c]
mov dword [ebp - 0x1964], ecx
mov dword [ebp - 0x758], 0
jmp 0x4174da
mov eax, dword [ebp - 0x754]
mov ecx, dword [ebp - 0x758]
cmp ecx, dword [eax + 0x18]
jae 0x4176e6
mov edx, dword [ebp - 0x758]
mov eax, dword [ebp - 0x195c]
mov ecx, dword [ebp - 0x320]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x75c], ecx
mov edx, dword [ebp - 0x758]
mov eax, dword [ebp - 0x1960]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x1964]
mov eax, dword [ebp - 0x320]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x1968], eax
mov dword [ebp - 0x19c], 0
jmp 0x41754a
mov ecx, dword [ebp - 0x19c]
add ecx, 1
mov dword [ebp - 0x19c], ecx
mov edx, dword [ebp - 0x75c]
add edx, dword [ebp - 0x19c]
movsx eax, byte [edx]
test eax, eax
je 0x4175fc
mov ecx, dword [ebp - 0x19c]
movsx edx, byte [ebp + ecx - 0x894]
test edx, edx
je 0x4175fc
push edx
sub edx, 0x1cae
jmp 0x417584
add edx, 0xa7e3
jmp 0x41758f
pop edx
push ebx
push eax
add esp, 4
call 0x4175a5
add byte [eax + 0x4d], dl
inc ebx
inc ebx
inc esp
inc esp
cmp eax, 0x8346504e
les eax, [ebx + ebx*2]
mov eax, dword [ebp - 0x75c]
add eax, dword [ebp - 0x19c]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x19c]
movsx eax, byte [ebp + edx - 0x894]
cmp ecx, eax
je 0x4175ee
mov ecx, dword [ebp - 0x75c]
add ecx, dword [ebp - 0x19c]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x19c]
movsx ecx, byte [ebp + eax - 0x894]
cmp edx, ecx
jne 0x4175f5
jmp 0x41753b
invalid
jmp 0x4175fc
push ebx
and ebx, 0xcde7
and ebx, 0x403b
call 0x417616
add byte [eax + ecx*2 + 0x32], cl
xor eax, 0x833e3934
les eax, [ecx + eax*4]
jmp 0x4175f2
mov edx, dword [ebp - 0x760]
mov dword [ebp - 0x3f0], edx
cmp dword [ebp - 0x3f0], 0
je 0x4177cd
push esi
push ecx
add esp, 4
and esi, 0x5642
jmp 0x417710
sub esi, 0x97be
pop esi
push ecx
sub ecx, 0xf373
and ecx, 0x2d8b
or ecx, 0x11f85
or ecx, 0x1616f
pop ecx
mov eax, dword [ebp - 0x3f0]
mov dword [ebp - 0x196c], eax
push ebx
push ebx
add esp, 4
call 0x417752
add byte [edi], bh
xor eax, dword [esi + 0x37]
inc ebp
xor al, 0x36
dec esi
xor bh, byte [eax]
add esp, 4
pop ebx
push esi
xor esi, 0xdbb9
pop esi
push eax
jmp 0x417768
add eax, 0xd1d9
pop eax
mov ecx, dword [ebp - 0x196c]
mov dword [ebp - 0x1970], ecx
lea edx, [ebp - 0x1734]
push edx
call dword [ebp - 0x1970]
test eax, eax
jne 0x4177cd
push edi
sub edi, 0x168e2
add edi, 0x12c73
or edi, 0x1127d
and edi, 0x36e5
pop edi
push eax
sub eax, 0xddd3
call 0x4177ba
add byte [edi + 0x4a], al
cmp edi, dword [0x834e4e38]
les eax, [eax + ebx*2]
mov dword [ebp - 0x79c], 0
jmp 0x417eb7
push ecx
push eax
add esp, 4
sub ecx, 0x380a
call 0x4177e8
add byte [eax + 0x50], cl
xor eax, 0x3650483d
inc esp
dec ebx
xor eax, 0x5904c483
push edi
push ecx
add esp, 4
jmp 0x4177f8
or edi, 0x114ec
pop edi
mov eax, dword fs:[0x18]
mov dword [ebp - 0x1974], eax
mov ecx, dword [ebp - 0x1974]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x1978], edx
mov eax, dword [ebp - 0x1978]
mov dword [ebp - 0x15f4], eax
push edi
push eax
add esp, 4
or edi, 0xf26a
sub edi, 0x5b0e
and edi, 0x1117d
sub edi, 0x148cc
pop edi
push edx
push esi
add esp, 4
jmp 0x417850
jmp 0x417857
pop edx
cmp dword [ebp - 0x15f4], 0
jne 0x417870
mov dword [ebp - 0x318], 0
jmp 0x417b17
mov ecx, dword [ebp - 0x15f4]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xcb4], eax
push edi
push edi
add esp, 4
jmp 0x417890
sub edi, 0x786d
jmp 0x41789f
pop edi
push ebx
and ebx, 0x628c
xor ebx, 0xbf74
add ebx, 0x356e
pop ebx
cmp dword [ebp - 0xcb4], 0
jne 0x4178cc
mov dword [ebp - 0x318], 0
jmp 0x417b17
mov ecx, dword [ebp - 0xcb4]
mov dword [ebp - 0x50c], ecx
push edx
jmp 0x4178de
jmp 0x4178e3
pop edx
push eax
sub eax, 0x8b5d
pop eax
push ebx
push edx
add esp, 4
add ebx, 0x1353e
pop ebx
push esi
push esi
add esp, 4
or esi, 0x3a9e
sub esi, 0xf09e
pop esi
lea edx, [ebp - 0x1734]
mov dword [ebp - 0xcb0], edx
mov eax, dword [ebp - 0x50c]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xcac], ecx
xor edx, edx
mov word [ebp - 0x214], dx
xor eax, eax
mov word [ebp - 0x34], ax
push ecx
jmp 0x41793b
call 0x417949
add byte [ebx + 0x37], cl
xor al, byte [eax + 0x38]
xor eax, dword [ebp + ecx*2 - 0x7d]
les eax, [ecx + ebx*2]
push ebx
jmp 0x417953
and ebx, 0x948f
xor ebx, 0x29b2
and ebx, 0x1631e
pop ebx
mov ecx, dword [ebp - 0xcac]
mov dx, word [ecx]
mov word [ebp - 0x103a], dx
mov eax, dword [ebp - 0xcac]
add eax, 2
mov dword [ebp - 0xcac], eax
mov cx, word [ebp - 0x103a]
mov word [ebp - 0x214], cx
mov edx, dword [ebp - 0xcb0]
mov ax, word [edx]
invalid
invalid
test esp, eax