Foro de elhacker.net

Programación => ASM => Mensaje iniciado por: Eliptico en 20 Mayo 2009, 20:10 pm



Título: Quiero pasar de lo aprendido al compilador
Publicado por: Eliptico en 20 Mayo 2009, 20:10 pm
Buenas a todos!!!!!!!!!

Con tood esto del cracking, he leido mucho (a mi me lo parece pero seguro que es mentira) sobre las instrucciones en ASM, pero creo que podria entnder mejor el desensamblado si programase algo en ensamblador.

Hace poco descargue de internet el MASM, y echando un ojo por ahi para ver cual era la etructura de los programas me di cuenta de que no tenia mucho que ver con lo que veia en el debugger.

Quisiera saber si conoceis algun tutorial que explique cual es la estructura del codigo fuente para algun compilador en el que el codigo sea similar al del debugger, y un compilador que genere ejecutables bajo WinXP con dicho compilador.

Otra cosa, en todo lo que he leido hasta ahora, solo venian las instrucciones y pequeñas porciones de codigo. No tengo ni idea de lo que son los modelos de memoria, como se define la longitud de los segmentos ni como se declaran y si me hace falta saber algo mas para poder empezar. Asi que si podeis, dejad algun link a algun tutorial y algun ensamblador con los que pueda aprender todo eso.

Ya se que soy un pedugüeño, pero el que no llora no mama. :)

Un saludo!!!!!!!!!!!


Título: Re: Quiero pasar de lo aprendido al compilador
Publicado por: karmany en 21 Mayo 2009, 18:03 pm
Bueno, me imagino que te referirás a MASM32 ya que MASM es para DOS.

La diferencia te puede surgir a la hora de programar una aplicación en Windows, pero si programas en puro asm, en un mismo ordenador(mismo procesador) te puede valer tanto para Linux como para Windows, respetando ciertos cambios.

El problema es que cuando programas en Windows pues necesitas muchos datos, tienes que llamar a distintas API y cuando ves el desensamblado pues te puede parecer no asm. Sin embargo, tú puedes programar directamente en asm compilarlo con MASM32 y debuggearlo y verás que el código es el mismo que tú has hecho.

Mira, hay unos fenomenales tutoriales, aunque posteriormente no utilices la IDE que te voy a mostrar que hablan de programación en asm con MASM32 y RadASM. El grupo que está en google-groups es el siguiente:
http://groups.google.es/group/MASM32-RadASM
Y ahí tienes unos tutoriales que te enseñarán a aprender a programar con MASM32 con RadASM. Son muy buenos y posteriormente ya verás que no necesitas siquiera RadASM y podrás compilar con otros compiladores haciendo distintos cambios.


Título: Re: Quiero pasar de lo aprendido al compilador
Publicado por: Eliptico en 22 Mayo 2009, 06:29 am
Muchas gracias por todo!!!!!!!!!

Ahora a hincarle el diente. :)

Iva a hacer otra pregunta pero supongo que en el grupo que me has indicado estara resuelta.

Es sobre el ASM de la AT&T, ya que el compilador C++ que utilizo no utiliza el convenio INTEL, sino el AT&T, pero bueno, ya me lo mirare en el grupo.

Muchas gracias de nuevo!!!!!!!!!!