i just had a terrible idea for a program.
so we have lossless audio compression (FLAC, ALAC) and lossy audio compression (MP3, opus). we have lossless (PNG, WEBP) and lossy (JPEG, also WEBP) image compression. we have lossless executable binary compression, either through general purpose formats such as GZIP or XZ, but also through specialised formats like UPX... but no lossy binary compression!
there are a lot of common routines that you can guess, having seen the preceding few opcodes. memcpy, strlen, etc. we can throw away most of it and reconstruct it at decompression time. if your program's machine code has a block that kinda looks like a strlen, sorry, it's getting compressed as a strlen. the majority of programs will surely be just fine