Les désassembleurs sont des utilitaires qui servent à transformer un code binaire en code assembleur c'est-à-dire en données textuelles du code de la machine. Les programmeurs utilisent ces utilitaires pour débugger des programmes. Les analystes viraux utilisent les désassembleurs pour rendre lisible les versions des codes malicieux. En d'autres mots, les analystes viraux doivent avoir la possibilité de désassembler des fichiers viraux avant de pouvoir identifier le virus, alors que les hackers et auteurs de virus font leur possible pour protéger leurs oeuvres contre les désassembleurs.