UPX
# UPX

UPX es un empaquetador de ejecutables gratuito, portable y de alto rendimiento, con funciones de protector de software. UPX soporta diferentes formatos de ejecutables, incluyendo programas de Windows 95/98/ME/NT/2000/XP/VISTA y DLLs, programas de DOS, Linux, etc.

## Desempaquetando UPX

Hay quien puede pensar que "Sin embargo, al ser de código abierto, cualquier usuario puede ver su código fuente y por ello se ha convertido en uno de los compresores de ejecutables más fáciles de desempaquetar", realmente el mismo programa UPX trae la opción de desempaquetar el .exe o .dll. Upx no implementa en su código fuente técnicas anti-desempaquetado ni anti-debug y de otros tipos ya que la mayoría de los .exe empaquetados se han logrado desempaquetar aplicando ingeniería inversa. Lo único que lograría UPX incluyendo estas técnicas es un rendimiento menor y un aumento de tamaño en los archivos empaquetados.

## Características

* Excelente relación de compresión: típicamente comprime mejor que el WinZip/zip/gzip.
* Descompresión muy rápida: ~10 MB/s en un Pentium 133, ~200 MB/s en un Athlon XP 2000+.
* Universal: UPX puede empaquetar muchos formatos de ejecutables.
* Portable
* Libre: UPX es distribuido bajo la GNU General Public License.

## Formatos soportados

* Ejecutable Atari TOS/MiNT
* DOS 32-bit COFF
* DOS 16-bit archivos .com
* Ejecutables DOS 16-bit
* DOS 16-bit archivos .sys
* Linux AOUT/ELF/script
* ejecutable o DLL de Windows 32-bit
* DOS 32-bit ejecutable TMT Pascal
* DOS 32-bit linear ejecutable Watcom C/C++
