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

Disassembly:
mov edx, dword [ebp - 0x910]
add edx, 1
mov dword [ebp - 0x910], edx
mov eax, dword [ebp - 0x90c]
mov ecx, dword [ebp - 0x910]
cmp ecx, dword [eax + 0x18]
jae 0x40ff7b
mov edx, dword [ebp - 0x910]
mov eax, dword [ebp - 0x24a8]
mov ecx, dword [ebp - 0x3e0]
add ecx, dword [eax + edx*4]
mov dword [ebp - 0x870], ecx
mov edx, dword [ebp - 0x910]
mov eax, dword [ebp - 0x24ac]
movzx ecx, word [eax + edx*2]
mov edx, dword [ebp - 0x24b0]
mov eax, dword [ebp - 0x3e0]
add eax, dword [edx + ecx*4]
mov dword [ebp - 0x24b4], eax
mov dword [ebp - 0x1e4], 0
jmp 0x40fddf
mov ecx, dword [ebp - 0x1e4]
add ecx, 1
mov dword [ebp - 0x1e4], ecx
mov edx, dword [ebp - 0x870]
add edx, dword [ebp - 0x1e4]
movsx eax, byte [edx]
test eax, eax
je 0x40fe91
mov ecx, dword [ebp - 0x1e4]
movsx edx, byte [ebp + ecx - 0xbbc]
test edx, edx
je 0x40fe91
push edx
push edx
add esp, 4
jmp 0x40fe19
or edx, 0x9e65
add edx, 0xf33b
pop edx
push edx
xor edx, 0x3916
pop edx
push esi
and esi, 0x9d7f
pop esi
push edx
and edx, 0x70ae
pop edx
mov eax, dword [ebp - 0x870]
add eax, dword [ebp - 0x1e4]
movsx ecx, byte [eax]
mov edx, dword [ebp - 0x1e4]
movsx eax, byte [ebp + edx - 0xbbc]
cmp ecx, eax
je 0x40fe83
mov ecx, dword [ebp - 0x870]
add ecx, dword [ebp - 0x1e4]
movsx edx, byte [ecx]
xor edx, 0x20
mov eax, dword [ebp - 0x1e4]
movsx ecx, byte [ebp + eax - 0xbbc]
cmp edx, ecx
jne 0x40fe8a
jmp fcn.0040fdd0
jmp 0x40fe91
push edi
and edi, 0xfe8d
or edi, 0xd60f
and edi, 0x10b1
and edi, 0x14815
pop edi
push edi
push ebx
add esp, 4
or edi, 0x110e4
sub edi, 0xe764
jmp 0x40fec2
pop edi
mov edx, dword [ebp - 0x870]
add edx, dword [ebp - 0x1e4]
movsx eax, byte [edx]
mov ecx, dword [ebp - 0x1e4]
movsx edx, byte [ebp + ecx - 0xbbc]
cmp eax, edx
jne 0x40fef0
mov dword [ebp - 0xf78], 0
jmp 0x40ff5f
push ebx
push edi
add esp, 4
add ebx, 0xa9d1
sub ebx, 0x3524
pop ebx
push ebx
push edx
add esp, 4
and ebx, 0xa5d8
or ebx, 0x1027b
or ebx, 0x1618
pop ebx
push eax
and eax, 0x434b
pop eax
mov eax, dword [ebp - 0x870]
add eax, dword [ebp - 0x1e4]
movsx ecx, byte [eax]
or ecx, 0x20
mov edx, dword [ebp - 0x1e4]
movsx eax, byte [ebp + edx - 0xbbc]
or eax, 0x20
cmp ecx, eax
jge 0x40ff55
mov dword [ebp - 0xf78], 0xffffffff
jmp 0x40ff5f
mov dword [ebp - 0xf78], 1
cmp dword [ebp - 0xf78], 0
jne 0x40ff76
mov ecx, dword [ebp - 0x24b4]
mov dword [ebp - 0x614], ecx
jmp 0x40ff87
jmp 0x40fd60
mov edx, dword [ebp - 0x918]
mov dword [ebp - 0x614], edx
push eax
push edx
add esp, 4
sub eax, 0xe82a
xor eax, 0xcad8
sub eax, 0x10867
or eax, 0xde4a
pop eax
push eax
add eax, 0x116c0
sub eax, 0xc720
xor eax, 0x16319
pop eax
mov ecx, dword [ebp - 0x263c]
mov dword [ebp - 0xc68], ecx
push esi
push edi
add esp, 4
jmp 0x410200
pop esi
push edi
jmp 0x41020a
or edi, 0x13b75
and edi, 0x6213
pop edi
push edi
and edi, 0x13462
add edi, 0xcad6
pop edi
mov edx, dword fs:[0x18]
mov dword [ebp - 0x24bc], edx
mov eax, dword [ebp - 0x24bc]
mov ecx, dword [eax + 0x30]
mov dword [ebp - 0x24c0], ecx
mov edx, dword [ebp - 0x24c0]
mov dword [ebp - 0x1adc], edx
push ecx
add ecx, 0x7c7b
and ecx, 0x10f20
pop ecx
push esi
push eax
add esp, 4
call 0x41026e
add byte [eax + edx*2], bh
dec edx
cmp byte [edx + 0x41], al
cmp al, 0x3f
add esp, 4
or esi, 0x4b67
jmp 0x41027e
pop esi
cmp dword [ebp - 0x1adc], 0
jne 0x410297
mov dword [ebp - 0x398], 0
jmp 0x41053e
mov eax, dword [ebp - 0x1adc]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0xf8c], edx
push esi
jmp 0x4102b0
xor esi, 0x6ff2
jmp 0x4102bf
pop esi
push edi
push ecx
add esp, 4
or edi, 0x163a4
or edi, 0x209c
jmp 0x4102da
pop edi
cmp dword [ebp - 0xf8c], 0
jne 0x4102f3
mov dword [ebp - 0x398], 0
jmp 0x41053e
mov eax, dword [ebp - 0xf8c]
mov dword [ebp - 0x618], eax
push edx
push edi
add esp, 4
and edx, 0x58fa
xor edx, 0xd3e
sub edx, 0x5fa6
pop edx
push eax
sub eax, 0x9d30
and eax, 0x17f45
or eax, 0x17c39
add eax, 0x8017
pop eax
lea ecx, [ebp - 0x14d4]
mov dword [ebp - 0xf88], ecx
mov edx, dword [ebp - 0x618]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0xf84], eax
xor ecx, ecx
mov word [ebp - 0x298], cx
xor edx, edx
mov word [ebp - 0x54], dx
push edi
sub edi, 0x100a5
pop edi
push edi
push esi
add esp, 4
xor edi, 0x11699
sub edi, 0xe212
or edi, 0xe38a
pop edi
push edi
push eax
add esp, 4
and edi, 0x14bfb
or edi, 0x53c3
pop edi
mov eax, dword [ebp - 0xf84]
mov cx, word [eax]
mov word [ebp - 0x1392], cx
mov edx, dword [ebp - 0xf84]
add edx, 2
mov dword [ebp - 0xf84], edx
mov ax, word [ebp - 0x1392]
mov word [ebp - 0x298], ax
mov ecx, dword [ebp - 0xf88]
mov dx, word [ecx]
mov word [ebp - 0x1394], dx
mov eax, dword [ebp - 0xf88]
add eax, 2
mov dword [ebp - 0xf88], eax
mov cx, word [ebp - 0x1394]
mov word [ebp - 0x54], cx
push esi
xor esi, 0x78cd
pop esi
push esi
jmp 0x4103f2
sub esi, 0x127cb
pop esi
push eax
jmp 0x410403
and eax, 0xc8a3
xor eax, 0x11dd5
sub eax, 0x2262
pop eax
movzx edx, word [ebp - 0x54]
test edx, edx
jne 0x410433
movzx eax, word [ebp - 0x298]
movzx ecx, word [ebp - 0x54]
sub eax, ecx
mov dword [ebp - 0x1ae4], eax
jmp 0x41048d
movzx edx, word [ebp - 0x298]
movzx eax, word [ebp - 0x54]
cmp edx, eax
je 0x41035b
movzx ecx, word [ebp - 0x298]
xor ecx, 0x20
movzx edx, word [ebp - 0x54]
cmp ecx, edx
je 0x41035b
movzx eax, word [ebp - 0x298]
movzx ecx, word [ebp - 0x54]
cmp eax, ecx
jge 0x410477
mov dword [ebp - 0x1ae0], 0xffffffff
jmp 0x410481
mov dword [ebp - 0x1ae0], 1
mov edx, dword [ebp - 0x1ae0]
mov dword [ebp - 0x1ae4], edx
cmp dword [ebp - 0x1ae4], 0
jne 0x4104d6
push esi
push eax
add esp, 4
call 0x4104a8
add byte [edx], bh
push eax
inc ecx
dec eax
dec esi
xor al, byte [eax - 0x7d]
les eax, [ecx + eax*4]
invalid
push eax
push edi
add esp, 4
sub eax, 0x9cb7
call 0x4104ef
add byte [0x4e444e4f], bh
inc ecx
inc edx
inc edi
add esp, 4
or eax, 0xc6ca
call 0x410504
add byte [esi], dh
inc ebp
dec edi
xor edi, dword ss:[esi]
add esp, 4
pop eax
mov ecx, dword [ebp - 0x618]
mov edx, dword [ecx]
mov dword [ebp - 0x618], edx
mov eax, dword [ebp - 0x618]
cmp eax, dword [ebp - 0xf8c]
je 0x410534
mov ecx, dword [ebp - 0x618]
cmp dword [ecx + 0x30], 0
jne 0x4102ff
mov dword [ebp - 0x398], 0
push edi
push edi
add esp, 4
and edi, 0x75c2
sub edi, 0x62a6
pop edi
push edx
push ebx
add esp, 4
xor edx, 0x1824f
pop edx
push ebx
xor ebx, 0x12263
and ebx, 0x1d
and ebx, 0xf2b9
pop ebx
cmp dword [ebp - 0x398], 0
jne 0x410e74
mov edx, 0x6b
mov word [ebp - 0x1c38], dx
mov eax, 0x65
mov word [ebp - 0x1c36], ax
mov ecx, 0x72
mov word [ebp - 0x1c34], cx
mov edx, 0x6e
mov word [ebp - 0x1c32], dx
mov eax, 0x65
mov word [ebp - 0x1c30], ax
mov ecx, 0x6c
mov word [ebp - 0x1c2e], cx
mov edx, 0x33
mov word [ebp - 0x1c2c], dx
mov eax, 0x32
mov word [ebp - 0x1c2a], ax
mov ecx, 0x2e
mov word [ebp - 0x1c28], cx
mov edx, 0x64
mov word [ebp - 0x1c26], dx
mov eax, 0x6c
mov word [ebp - 0x1c24], ax
mov ecx, 0x6c
mov word [ebp - 0x1c22], cx
xor edx, edx
mov word [ebp - 0x1c20], dx
push ecx
jmp 0x41061c
sub ecx, 0x165ea
pop ecx
push esi
push ecx
add esp, 4
add esi, 0x9d45
pop esi
push edi
push ebx
add esp, 4
call 0x410644
add byte [ebp + 0x3e], cl
push eax
inc eax
inc edx
cmp cl, byte [edx + 0x3d]
add esp, 4
pop edi
mov byte [ebp - 0xb1c], 0x4c
mov byte [ebp - 0xb1b], 0x6f
mov byte [ebp - 0xb1a], 0x61
mov byte [ebp - 0xb19], 0x64
mov byte [ebp - 0xb18], 0x4c
mov byte [ebp - 0xb17], 0x69
jmp [ecx - 0x3a]
test edx, ebp
hlt
invalid
jmp dword [edx - 0x3a]
test ebx, ebp
hlt
invalid
push dword [edx - 0x3a]
test esp, ebp
hlt
invalid
jmp dword [ecx - 0x3a]
test ebp, ebp
hlt
invalid
push dword [edx - 0x3a]
test esi, ebp
hlt
invalid
invalid
jns 0x41065c
test edi, ebp
hlt
invalid
call dword [edi - 0x3a]
test eax, esi
hlt
invalid
inc dword [eax]
mov eax, dword fs:[0x18]
mov dword [ebp - 0x24c4], eax
invalid