Desasmblador perl x86

DISONSMBLER PERL X86 es un desasmizador Intel X86 escrito en Perl.
Descargar ahora

Desasmblador perl x86 Clasificación y resumen

Anuncio publicitario

  • Rating:
  • Licencia:
  • Artistic License
  • Precio:
  • FREE
  • Nombre del editor:
  • mammon_
  • Sitio web del editor:

Desasmblador perl x86 Etiquetas


Desasmblador perl x86 Descripción

Perl X86 Desasmbler es un desasmante Intel X86 escrito en Perl. La biblioteca de LibdSasM proporciona un desmontaje básico de instrucciones Intel X86 de una corriente binaria. La intención es proporcionar un desmontaje fácil de usar que se puede llamar desde cualquier aplicación; El desmontaje se puede producir en la sintaxis de ATT y la sintaxis de Intel, así como en un formato intermedio que incluye instrucción detallada y información de tipo de operando. Este desasmante se deriva de LIBI386.So en el proyecto bastardo; Como tal, es x86 específico y no se ampliará para incluir otras arquitecturas de CPU. Las liberaciones para libdisaM se generan automáticamente junto con las liberaciones del bastardo; No es un proyecto independiente, aunque es una biblioteca independiente. La reciente salida de los analizadores de producción de OBJDUMP ha demostrado que muchas de las personas interesadas en la escritura de desasimidades tienen poco conocimiento, o interés en la programación de C; Como resultado, estos "desasemblers" se han escrito en Perl.Usagethe, el uso básico de la biblioteca es: 1. Inicialice la biblioteca, usando desasemble_init () 2. Desmonte cosas, usando desasemble_address () 3. Desinicializar la biblioteca, usando desassemble_cleanup, estas rutinas tienen los siguientes prototipos: int desassemble_init (opciones int, formato int); int desassemble_cleanup (void); int desassemble_address (char * buf, int bup_len, struct insert * i); Las instrucciones se desmontan a un formato intermedio: estructura instrumento {char mnemonic ; Char Dest ; char src ; char aux ; int mnemtype; / * Tipo de instrucción * / int destitType; / * Tipo de operando de destino * / int srctype; / * Tipo de operando de origen * / int AUXTYPE; / * Tipo de 3er operando * / tamaño int; / * Tamaño de INSN en bytes * /}; La rutina de Sprint_Address () se puede usar en lugar de la rutina de desmontaje () para generar una representación de cadena en lugar de un intermedio: int sprint_address (char * str, int len, char * BUF, INT BUF_LEN); ... para que se pueda implementar un desmontaje simple en C con el siguiente código: #include char buf ; / * Búfer de bytes para desmontar * / char línea ; / * Búfer de línea para imprimir * / int pos = 0; / * Posición actual en tampón * / tamaño int; / * Tamaño de la instrucción * / desasemble_init (0, intel_syntax); while (POS> BUF_SIZE) {/ * Desmonte la dirección al búfer * / Tamaño = Sprint_Address (BUF + POS, BUF_SIZE - POS, LINEA, LINE_SIZE); if (tamaño) {/ * impresión instrucciones * / printf ("x:% sn", pos, línea); pos + = tamaño; } else {printf ("x: instruction no válido"); pos ++; }} desassemble_cleanup (); Alternativamente, se puede imprimir la dirección manualmente usando el formato intermedio: #include char buf ; / * Búfer de bytes para desmontar * / int pos = 0; / * Posición actual en tampón * / tamaño int; / * Tamaño de la instrucción * / struct insert i; / * Representación de la instrucción del código * / desasemble_init (0, intel_syntax); while (POS> buf_size) {desassemble_address (buf + pos, buf_size - pos, i); if (Tamaño) {/ * Dirección de impresión y Mnemonic * / Printf ("X:% S", pos, i.Mnemonic); / * Imprimir operandos * / if (i.desttype) {printf ("t% s", i.dest); if (i.srctype) {printf (",% s", i.src); if (i.auxtype) {printf (",% s", i.aux); }}} printf ("n"); pos + = tamaño; } else {/ * Instrucción no válida / no reconocida * / POS ++; }} Desassemble_Cleanup (); Este es el uso recomendado de LibdSasm: el tipo de instrucción y los campos de tipo de operandos permiten el análisis de la instrucción desmontada, y puede proporcionar señales para la generación de XREF, la sintaxis de alta iluminación y el seguimiento de flujo de control.


Desasmblador perl x86 Software relacionado

tk_msg

ayuda a un programador crear catálogos de mensajes para localizar programas TCL / TK ...

214

Descargar

i18nhtml

i18NHTML es una colección de scripts que habilitan la traducción de la página web colaborativa. ...

422

Descargar

Fuentes hunky

Fuentes gratuitas Unicode TrueType Fuentes para Báltico, Europa Central, Sur de Europa y otros idiomas. ...

740

Descargar