Título: [Duda] Diferencia entre JB y JS Publicado por: Stakewinner00 en 23 Noviembre 2012, 17:42 pm Estaba estudiando ingenieria inversa (hace poco que comenze) y me encontre con que segun mis apuntes:
EL JB se activa cuando el flag C es uno y por lo tanto si tuvieramos EAX=1 y ECX=2 el flag C saltaria y se activaria, luego en el caso del JS es lo mismo resta u valor al otro y en vez de activar el flag C se activa el S pero en realidad es exactamente lo mismo no? Resumiendo, no se que diferéncias hay entre el JB/JNB y JS/JNS. Gracias por su ayuda. Título: Re: [Duda] Diferencia entre JB y JS Publicado por: apuromafo CLS en 23 Noviembre 2012, 18:31 pm te lo hare mas facil
cuando comparas 2 numeros hay 3 opciones que sean iguales, que sean diferentes y que sean (mayor o menor) pues eso hace, el tema es que la validacion lo hara por un flag o bandera luego si dice cmp eax,7 y eax es 7 je lugar (saltara porque es igual) pero la bandera estara dada por 0 y 1.. si salta o no ira en eso.. pero el tema ahora es el tema del salto como tal si es JB versus JNB (hay diferencia, pues uno saltara si son iguales y el otro si no son iguales) lo importante es que a la fecha no he visto programas que jueguen con los flag , solo los packers asi que suerte en todo lo que estas viendo... intenta seguir leyendo Título: Re: [Duda] Diferencia entre JB y JS Publicado por: Stakewinner00 en 23 Noviembre 2012, 18:35 pm Si lo dle JE y todo eso ya lo sabia. Lo k no se es la díferencia entre JB y JS a parte de que usan flags distintos.
Citar lo importante es que a la fecha no he visto programas que jueguen con los flag , solo los packers Osea que no sirve de much no? XD bueno, estoy leyendo esto para tener unas baes sobre ensamblador para poder seguir aprendiendo cracking. Título: Re: [Duda] Diferencia entre JB y JS Publicado por: apuromafo CLS en 23 Noviembre 2012, 18:47 pm pues pongamos ejemplos bonitos
http://faydoc.tripod.com/cpu/jbe.htm en cuanto a otros , digamos que upack o otros packers cuando terminan de desempacar ahora la variable no es cero por lo tanto salta armadillo, asprotect, buscan dar excepciones y usan saltos para jugar con el tema de la iat y asi suma y sigue, lo importante es reconocer que son saltos y que trabajan con condiciones, a modo que en vez de estar ensamblando todo el tiempo , puedes cambiar el flag y testear si resultara parchado saludos Apuromafo revisa tambien el comando CPU Disasm Address Hex dump Command Comments 0081EDF5 \60 PUSHAD 0081EDF6 9C PUSHFD CPU Disasm Address Hex dump Command Comments 0081EE50 61 POPAD 0081EE51 9D POPFD 0081EE52 ^ E9 5BB5CAFF JMP 004CA3B2 Título: Re: [Duda] Diferencia entre JB y JS Publicado por: karmany en 24 Noviembre 2012, 10:09 am JB: salta si es menor
Por ejemplo: mov al, 4 cmp al, 7 jb ⇒ salta mov al, 4 cmp al, 4 jb ⇒ NO salta mov al, 4 cmp al, 2 jb ⇒ NO salta JS: Salta si tiene signo Bandera SF = 1 Por ejemplo: mov al, 4 sub al, 5 js ⇒ salta mov al, 4 sub al, 4 js ⇒ NO salta mov al, 4 sub al, 2 js ⇒ NO salta mov al,0FC add al,2 js ⇒ salta ya que 0FC es -4: -4 +2 = -2 mov al, 0FC add al, 4 js ⇒ NO salta Título: Re: [Duda] Diferencia entre JB y JS Publicado por: Stakewinner00 en 24 Noviembre 2012, 10:37 am gracais a los dos.
|