Lezione no.1:
Il termine Virus è incorretto:
Si utilizza spesso il termine Virus per indicare in modo generico un ospite indesiderato mentre bisognerebbe utilizzare uno fra i termini Malware o Badware.
Un Virus, difatti è una specifica forma di Malware che ha caratteristiche ben precise: non è composto da un eseguinbile, ma copia il suo codice all'interno di altri eseguibili; usa tecniche come il polimorfismo per nascondersi; si replica e si diffonde.
Lezione no.2:
La perdita dell'associazione ai file eseguibili può avere diverse cause:
1 - La "contaminazione" da Malware
2 - Un errore accidentale che ha causato perdita di informazioni nel registro
3 - errore umano
Ovviamente la più diffusa delle cause è la prima anche se c'è da dire che a volte danni simili sono causati indirettamente dal.... software Antivirus! 
Alcuni di essi, infatti, cercando di "ripulire" alcune chiavi di registro "infette" commettono degli errori e non completano adeguatamente l'operazione.
Un esempio classico di danni al sistema causati da software antivirus?
Eccolo:
Nel registro di sistema, c'è un valore di una chiave che si riferisce all'inizializzazione del profilo utente:
codice:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
Userinit = %sysdir%\userinit.exe,
Da notare che la virgola finale è necessaria.
Alcuni malware "appendono" un loro eseguibile dopo la virgola causando l'avvio automatico dell'eseguibile al caricamento del profilo:
codice:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
Userinit = %sysdir%\userinit.exe, sonoLaTuaTrojan.exe
Il software antivirus (esperienza diretta ed empiricamente sperimentata) individua la parte estranea e può fare diverse cose:
a) Rimpiazzare il valore con quello corretto.
b) Eliminare il codice in eccesso
c) Sostituire il valore con uno di default
Nel secondo e terzo caso potremmo avere dei problemi.
Mi è capitato di constatare che, a volte, il valore dopo il passaggio di Symantec Antivirus (nel caso in esame) era:
codice:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
Userinit = %sysdir%\userinit.exe, userinit.exe
Questo, semplicemente, causa all'avvio l'apertura della cartella dell'utente