Moin,
ich kann dir empfehlen, fang damit an, x86 Assembly zu lernen. Dazu bietet es sich an, einen Taschenrechner mit MASM zu schreiben. Das geht z. B. mit Visual Studio Community. Verwende Prozeduren, übergebe Werte, schreibe Schleifen, verwende Bedingungen, verwende Zeiger, mach eine Benutzereingabe, baue eine Fehlerbehandlung ein, was auch immer dir sonst noch einfällt.
Dann schreibe ein einfaches C-Programm, was das Gleiche macht. Bei C kann man das noch etwas nachvollziehen, was da passiert als Anfänger. Deaktiviere aber die Codeoptimierung, damit man das noch etwas nachvollziehen kann. Da kannst du dir anschauen, welchen Assembly-Code der Compiler generiert hat. Du wirst feststellen, das sieht komplett anders aus als das, was du geschrieben hast. Versuche, nachzuvollziehen, wo die Unterschiede liegen.
Versuche, dir aus dem generierten Code ein eigenes Programm zu schreiben. Kopiere aus dem generierten Code, was du denkst, was wichtig ist. Der Fantasy sind da keine Grenzen gesetzt, solange du dich an die Regeln von ASM bzw. MASM hältst.
Dann wirst du denken, du hast es verstanden. Mache das Gleiche mit C++ und Klassen und du wirst feststellen, das sieht wieder anders aus.
Wenn du an diesem Punkt bist, kannst du x86 (und x64) Assembly, C und etwas C++. Das sind gute Voraussetzungen, um Hacks zu schreiben, die mehr machen als einfach ReadProcessMemory zu verwenden.
Wenn du Hilfe beim Einrichten von MASM mit VS brauchst, kann ich dir gerne helfen.