NE1
September 3rd, 2002, 22:25
cHeCksUm,
Ooops, that is supposed to read:
You do NOT need to change instructions to NOP's or change >>JNE's to JE's, etc
I will edit it, and correct it, so as not to confuse people.
As for changing the comparison routine, as I said, it depends on the specific case. As for NOP's, yes they do work, as long as you know how to use them correctly. In my example: I exchanged a 2 byte instruction with a 2 byte instruction, and therefore no other lines of code are affected. That seems better to me then changing a 6 byte conditional jump to a 1 byte NOP (or 6 NOP's).
I guess as long as you know what you are doing, it does not make that much of a difference. I mainly wanted to offer another option, as most tutorials just tell you to NOP away, and often don't even bother to explain to you how to do this, and what effects it might have on the rest of the code. With tools like Ollydbg (which wasn't around when I first starting learning this stuff), which fills the NOP's for you, it is not as bad as it used to be (i.e. Doing it inside Softice, when you are still learning and are not completely sure of the consequences of changing the instruction to a NOP, and then watching all the lines below change, and then the program crashes, and you don't know what you did worng, etc, etc). Anyway, you make a good point as well, and all options should be considered, and anyone of them can be better than another depending on the situation.
FADE
Ollydbg is fine. I only mentioned Softice because you mentioned it in your first post.
Quote:
I know some basic asm, how to use W32Dasm, SoftICE etc. |