asm

d3l4g0r

alguien sabe lo q hace la instrucción TEST EAX, EAX?

K

Ufff, me da miedo no saber qué hace eso cuando antes veía esa instrucción unas 10 veces al día mínimo...

Si no me equivoco, es el equivalente a "cmp eax, 0", pero gastando menos opcodes :) Si no me equivoco, el flag z es el que cambia. Es una forma de ahorrar, algo así como "xor eax,eax" en lugar de "mov eax, 0".

Puedo equivocarme, pero estoy casi seguro de que es eso.

d3l4g0r

es q es lo tipico q te encuentras en programas tipo mirc q piden un codigo de registro, hacen un TEST EAX, EAX y luego un JNE direccion. lo preguntaba pa saber como funciona internamente ese trozo de programa, o al menos para hacerme una idea

K

#3, exactamente por eso lo leía yo unas 10 veces al día antes xD Y supuse que tú igual, porque un "test eax, eax" no se suele usar por muy hardcore-asm-coder que seas... a no ser que tu compilador de C haga optimizaciones de ese tipo :) Así que supuse que, o estabas debuggeando algo, o estabas en el cracking. De todas formas, con el Olly podrías haber visto tú mismo qué es lo que hace, aunque fuese modificando los datos a mano.

Hablando de cracking. ¿Conoces CracksLatinos? Son muy buena gente y allí podrás aprender mucho. Hay algunos tutoriales míos allí.

PD: Moderadores, esto es legal...

Usuarios habituales

  • kaoD2
  • d3l4g0r