A method and system for obfuscating computer code of a program to protect
it from the adverse effects of malware is provided. The obfuscation
system retrieves an executable form of the computer code. The obfuscation
system then selects various obfuscation techniques to use in obfuscating
the computer code. The obfuscation system applies the selected
obfuscation techniques to the computer code. The obfuscation system then
causes the obfuscated computer code to execute.