Adversaries may perform software packing or virtual machine software protection to conceal their code. Software packing is a method of compressing or encrypting an executable. Packing an executable changes the file signature in an attempt to avoid signature-based detection. Most decompression techniques decompress the executable code in memory. Virtual machine software protection translates an executable's original code into a special format that only a special virtual machine can run. A virtual machine is then called to run this code.(Citation: ESET FinFisher Jan 2018) 

Utilities used to perform software packing are called packers. Example packers are MPRESS and UPX. A more comprehensive list of known packers is available, but adversaries may create their own packing techniques that do not leave the same artifacts as well-known packers to evade defenses.(Citation: Awesome Executable Packing)  
Software Packing
source_name: mitre-attack  url: https://attack.mitre.org/techniques/T1027/002  external_id: T1027.002     source_name: Awesome Executable Packing  description: Alexandre D'Hondt. (n.d.). Awesome Executable Packing. Retrieved March 11, 2022.  url: https://github.com/dhondta/awesome-executable-packing     source_name: ESET FinFisher Jan 2018  description: Kafka, F. (2018, January). ESET's Guide to Deobfuscating and Devirtualizing FinFisher. Retrieved August 12, 2019.  url: https://www.welivesecurity.com/wp-content/uploads/2018/01/WP-FinFisher.pdf     