Btw Hackwiz, for making a C2 code on a address where its instruction value can change (due to module loading), you can throw a simple conditional on top of the C2 code like this..
#Example, you want to hook a C2 code @ 0x8045678C whenever its instruction is 0x901E0000.
2045678C 901E0000
C245678C 000000xx
...
...
...
E0000000 80008000
This should work even if a new module load rewrites in a new different instruction at your Hook. Because once the Code Handler gets executed again after that, it will *not* apply the C2 code because the instruction no longer equals 0x901E0000
#Example, you want to hook a C2 code @ 0x8045678C whenever its instruction is 0x901E0000.
2045678C 901E0000
C245678C 000000xx
...
...
...
E0000000 80008000
This should work even if a new module load rewrites in a new different instruction at your Hook. Because once the Code Handler gets executed again after that, it will *not* apply the C2 code because the instruction no longer equals 0x901E0000