Decompiler |
|
Un Decompiler es un programa que tiene el código ejecutable y produce el código fuente del mismo. Un compilador genera el código ejecutable de código fuente, un descompilador intentos de revertir este proceso. Un Decompiler es una versión especializada de un desensamblador. Mientras que un desensamblador convierte el código ejecutable en lenguaje ensamblador, un decompiler intentos de ir más allá y convertir el código ejecutable para el código fuente en lenguaje de alto nivel, como C o C + +. DescompiladoresBoomerangEl objetivo es el proyecto Boomerang es un intento de desarrollar una Decompiler real para los programas de código máquina a través de la comunidad de código abierto. Un decompiler toma como un archivo ejecutable de entrada, y los intentos de crear un alto nivel, compilar, el archivo de origen, posiblemente, incluso de mantener que hace lo mismo. Por tanto, es lo contrario de un compilador, que tiene un archivo de origen y hace un ejecutable. Sin embargo, un decompiler general no tratar de revertir todas las acciones de la decompiler, sino que transforma el programa de entrada varias veces hasta que el resultado es el código fuente de alto nivel. Por lo tanto, no se puede restaurar el archivo original, probablemente nada como eso. No importa si el archivo ejecutable tiene sÃmbolos o no, o fue compilado de una lengua determinada. (Sin embargo, los lenguajes declarativos, como ML no son consideradas.) La intención es crear un decompiler redestinables (es decir, que puede descompilar los diferentes tipos de archivos de código de máquina, con un esfuerzo modesto, por ejemplo, X86-Windows, sparc, Solaris, etc). También se destina a ser altamente modular, de modo que las diferentes partes del decompiler puede ser sustituida con módulos de experimentación. Se pretende eventualmente convertirse en interactivo, a la IDA Pro, porque los nombres de algunas cosas (no sólo variables y los comentarios, aunque estos son obviamente muy importante) requieren la intervención de expertos. Ya sea la interactividad pertenece a la decompiler o en una herramienta independiente no está clara. Mediante la transformación de la semántica de las instrucciones individuales y el uso de técnicas de gran alcance tales como análisis de flujo de datos estático individual de misiones, Boomerang se debe (en gran parte) independiente del comportamiento exacto del compilador que pasó a ser utilizado. Optimización no debe afectar a los resultados. Por lo tanto, el objetivo es un decompiler general. |
Discuss Decompiler in the forums.
You need to login or register to post comments.


