y segun tengo entendido esto es la maldita firma que tengo que modificar y que lo hago haciendo hexing con e editor HEXADECIMAL y no se que hago mal
Esta bien, conseguiste la firma, pero no podes modificar siempre un programa con un editor hexadecimal a ciegas, porque en muchos casos vas a hacer que deje de funcionar.
Mira, un programa es una serie de instrucciones, y si la firma se encuentra sobre algunas instrucciones que son fundamentales para el funcionamiento del programa, si las editas a ciegas, el programa deja de funcionar (que es lo que te está pasando). Por ahí te convendría leer un poco algunos conceptos básicos de programación, o buscar un tutorial que te explique realmente lo que estás haciendo (mas que darte una serie de instrucciones a seguir), asi te vas a dar cuenta de lo que está sucediendo.
Por ej, este es tu virus:
Instrucción 1
Instrucción 2
Instrucción 3
Instrucción 4
.
.
.
Instrucción N
Obviamente no lo ves así, porque lo estás abriendo con un editor hexadecimal (y no tenés el código fuente, a lo sumo lo podes ver en assembler).
Ahora, si para detectar el virus el AV usa como firma al conjunto de bits que conforman la instrucción 3 y 4, lo que tenés que hacer es modificar estas instrucciones. Ahí podes hacer dos cosas:
1. Cambiarlas con assembler (ej usando jumps) para que el programa haga lo mismo que antes pero de otra forma.
2. Cambiarlas ciegamente con un editor hexadecimal. El problema de esto es que, si las instrucciones 3 y 4 son fundamentales para el funcionamiento del stub, te va a dejar de funcionar. Es como si a la receta de una torta le borres los pasos de agregar la manteca y el chocolate, no vas a poder hacer nunca una torta. En cambio, si usas la solucion 1 y cambias la receta, por ejemplo le cambias el orden (primero el chocolate y despues la manteca) ya la receta es distinta (y por ende la firma), pero obtenes el mismo resultado (una torta

).
Saludos!