¿Se puede recuperar el código fuente a partir de un ejecutable?: ciencia, algoritmos y límites de la descompilación