Why only talking about it and think how hard this could/might/should be insteat of just doing it.Of course this will work and fucking up UPX is easy that you might thought. In an packed UPX-exe overwrite everything (obviously this will not more than 0x80byte) what comes before offset 0x0400 with 00. exe will run as normal but UPX -d sorely will miss this data. Why use UPX - there are more exe-packer out there. Especially one whose put all their efforts on making it hard to unpack/remove them since their 'protection' relys on their presents. So what about using Armadillon, ASPack & ASProtect, PE-Compact, Morhine... Or binder like nBind or Molehole. Get Ollydbg (or some other debugger) if poking around with a hexeditor don't make sence anymore.With some patience & experience you may also get out or modify small parts of source that 'interests' you.