¿Cómo truncar una función Booleana para que siempre devuelva True?

Iniciado por Eleкtro, 27 Diciembre 2014, 09:43 AM

0 Miembros y 1 Visitante están viendo este tema.

Eleкtro

Hola

Me gustaría que esta función siempre devolviese True (brtrue), para intentar descubrir si eso es suficiente para poder bypassear la protección de este ensamblado, aunque sinceramente no se si la función está relacionada con la protección del programa, ya que el programa hace verificaciones en otros archivos y...no se.

¿Alguien me podría explicar un poco que operador debo modificar y por cual debo reemplazarlo?, estuve investigando por mi cuenta pero no supe encontrar algo que me sirviera, de todas formas sospecho que es el último idloc.0 antes del ret ya que hace tiempo hice una pregunta parecida y andaba por ahí la cosa... pero no se que hacer.

PD: Es una aplicación .Net

Muchas gracias de antemano.









MCKSys Argentina

Hola!

Por lo que veo en la imagen, para que devuelva siempre TRUE (1) deberías modificar el ldc.i4.0 de la linea 24, por un ldc.i4.1 (igual al de la linea 21).

Fíjate que la función devuelve el valor almacenado en la primera variable local (0). El branch de la linea 20 es quien decide si se coloca un 1 o un 0 en esa variable.

Saludos!
MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."


Eleкtro

Muchas gracias MCKsys, tengo otra pregunta relacionada con lo que has dicho creo que será lo correcto publicarlo un nuevo post.