Some viruses have been crafted to vary themselves when infecting new disks or machines. These are known as polymorphic viruses. Such viruses might add do-nothing instructions in the middle of their program code to throw off virus scanners looking for strings of code which match known viruses. The more sophisticated polymorphics actually encrypt virus code with randomly generated numbers, and decrypt the virus each time it is executed.
Programs known as mutation engines allow almost any virus to be made into a polymorphic virus.
The MtE mutation engine is the best known of these.