Lo primero quiero decir que uso x64dbg, y tengo conocimientos de programacion en C# y javascript y ahora me ha ado la vena de la ingenieria inversa
Bueno a lo que voy he hecho varios crackmes pero he dicho "vamos a probar con algo de la vida real como un juego" asi que no se me ocurre otra cosa que intentar bypasear el DRM de Steam, he conseguido pasar el isDebuggerPresent pero hay otra funcion que no me deja pasar NTSetInformationThread mas que nada porque me termina el proceso o porque se elimina del debugger he intentado poner el eax a -1 usando mov eax, -1 parece que me lo pasa pero luego vuelve otra vez a la funcion y por mucho que la ponga a -1 vuelve siempre.La razon por la que pongo -1 es porque esa funcion devuelve un int y si detecta que es mayor o igual a 0 salta el debugger
Las funciones de la llamada son:
mov eax, D ---> No se que porque pone una D
mov esi, ntdl.Direccion ---> Ahora mismo no estoy en mi casa por eso no puedo poner la direccion de memoria
call esi
ret 10
Espero que me podais ayudar.
El unico fin de esto es saber como funciona el DRM de Steam y satisfaccion propia