Wenn du einen Breakpoint setzen willst, dann musst du den Maschinencode an der betreffenden Stelle überschreiben. Dort sollte dann eine "int 3"-Anweisung stehen. Natürlich musst du dir zum Fortfahren den alten Inhalt merken. Die "int 3"-Anweisung besteht aus einem einzigen Byte ($
CC), daher kann man sie an jeder Stelle einfügen.
Die
API-Befehle, die du dafür brauchst sind VirtualProtect und WriteProcessMemory. Such mal hier im Forum danach, da findest du einige Beispiele.
Also:
1. Das fremde Programm laden
2. An der betreffenden Stelle mit VirtualProtect und WriteProcessMemory in $
CC platzieren
3. Auf das Debug-Ereignis warten
4. Den alten Code an der Stelle wiederherstellen
5. Das Programm weiterlaufen lassen
(wenn das das ist was du meintest)