OldSchoolHack

Registrieren / Anmelden Deutsch

Benutzersuche: tonarmA1

Such-Informationen
tonarmA1
Themen im Forum
Thema Forum Letzter Beitrag Beiträge Zugriffe
icon

Go to first new post GameHacking Tutorial Part 07 (Multi-page thread 1 2) Erstellt am: So 14. Okt 2007, 04:28

KN4CK3R

preview Vorschau

Go To Post

Hi,Hi,

Na dann hol ich den Thread mal wieder aus der Versenkung und melde mich nun zu Wort.
Habe das Tut genutzt um mal die Aresse 004B786C (COD2 1.3) ausser Kraft zu setzen mit Jump geht es in ollydbg auch, nur wenn ich das selbe mit externen Programm mache stürzt COD2 beim ersten Klick auf die linke Maustaste ab! Problembericht Senden? -> NNEEIINN!!!! Ich denke COD2 wartet auf einen Wert den er zurück bekommen muss nach der anweisung, oder? Aber warum geht es in olly? weil er nach dem Jump weiter gehen kann? Und bei mir nicht?

Da sind wir doch scho bei Detours:/

Kn4ck3er? warum gibst du für das Array Werte an? das muss nicht, oder hast du einen Grund dafür?

TEXT Code:
  1.  
  2.  
  3. // Norecoil COD 2
  4. // source by © 2007 KN4CK3R modet by congo
  5.  
  6.  
  7. BYTE norec [] = { 0xEB, 0x21 };
  8.  
  9.  
  10.  
  11. int main()
  12.  
  13. {
  14. cout << \"Norecoil for COD2 SP\" << endl << \"coded by congo\" << endl;
  15.  
  16. HWND fenster = NULL;
  17. while(fenster == NULL)
  18.  
  19. {
  20. fenster = FindWindow (\"CoD2\", NULL);
  21. Sleep(100);
  22. }
  23.  
  24. cout << \"COD2 wurde gefunden!\" << endl;
  25.  
  26. DWORD prozessid;
  27. GetWindowThreadProcessId(fenster, &prozessid);
  28.  
  29. HANDLE handleprozess;
  30. handleprozess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, prozessid);
  31.  
  32. DWORD puffer = NULL;
  33. WriteProcessMemory(handleprozess,(void*)(0x004B786E),&norec,sizeof(norec),&puffer);
  34.  
  35.  

Best wishes!!
Tutorials

Do 25. Feb 2010, 15:34

von XoThek Go to last post
31 8878
icon

Go to first new post KN4CK3R Tutorial 6 Pinball Trainer Erstellt am: Mo 28. Sep 2009, 13:40

tonarmA1

preview Vorschau

Go To Post

Hallo erstmal an das Forum und an KN4CK3R!


Ich lerne der Zeit etwas C++ und bin auf die Tut\'s von KN4CK3R gestossen, die sehr gut gemacht sind.
Nun hab ich ein Problem mit dem Trainer für MS Pinball, hatte die Tuts bis zum 6 Teil alle erfolgreich abgeschlossen, aber sobald es ums coden geht funktioniert es nicht, das habe ich bis jetzt fast mit allen codes in Online Tutorial\'s gehabt. Wenn ich Übungen aus Büchern z.B. wie C++ von A-Z oder Jetzt lerne ich C++ (Markt und Technik) heraus mache, geht es immer. Naja wie auch immer, ich Poste mal den Code, den ich fast 1zu1 übernommen habe, es sei gesagt ohne Copy and Paste.  Was ich jetzt schon weiß die Adressen sind falsch und müssen bei mir korrigiert werden das ist aber nicht das Problem, das Problem ist das Program findet die Anwendung nicht es steht nur \"MS Pinball Trainer coded by congo\" wenn ich nun Pinball starte kommt die Meldung \"Pinball wurde gefunden!\" einfach nicht. Ich schau und gucke aber ich weiß nicht woran es liegt. Hat jemand noch eine Idee? Jetzt wird der ein oder andere hier sagen, wieso macht er sich den die Mühe und will diesen Pinball Trainer zum laufen bekommen,  mir geht es ums Progen nicht um den Trainer an sich.

Bei den header Dateien musste ich hier jetzt \" nehmen in wirklichkeit steht da <   aber wenn ich das nutze werden die header Dateien im Forum nicht angezeigt.

TEXT Code:
  1. #include \"iostream.h\"
  2. #include \"windows.h\"
  3. #include \"conio.h\"
  4.  
  5. using namespace std;
  6.  
  7. int punkte;
  8.  
  9. int main()
  10.  
  11. {
  12. cout << \"MS Pinball Trainer\" << endl << \"coded by congo\" << endl;
  13. HWND fenster = NULL;
  14.  
  15. while(fenster == NULL);
  16.  
  17. {
  18. fenster = FindWindow(NULL, \"3D-Pinball für Windows – Space Cadet\");
  19. Sleep(200);
  20. }
  21.  
  22. cout << \"Pinball wurde gefunden!\" << endl;
  23.  
  24. DWORD processid;
  25. GetWindowThreadProcessId(fenster, &processid);
  26.  
  27. HANDLE handleprocess; handleprocess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, processid);
  28.  
  29. DWORD puffer = NULL;
  30. ReadProcessMemory(handleprocess,(void*)(0x0C23EDC),&punkte,sizeof(punkte),&puffer);
  31.  
  32. cout << \"aktueller Punktestand: \" << punkte << endl << \"neuer Punktestand: \";
  33. cin >> punkte;
  34.  
  35. WriteProcessMemory(handleprocess,(void*)(0x0C23EDC),&punkte,sizeof(punkte),&puffer);
  36. WriteProcessMemory(handleprocess,(void*)(0x0D9AEBA),&punkte,sizeof(punkte),&puffer);
  37.  
  38. CloseHandle(handleprocess);
  39.  
  40. return 0;
  41.  
  42. }
Tutorials

Mo 28. Sep 2009, 21:24

von KN4CK3R Go to last post
8 1517
icon

Go to first new post KN4CK3R Tutorial 6 Pinball Trainer Erstellt am: Mo 28. Sep 2009, 13:40

tonarmA1

preview Vorschau

Go To Post

Danke für die schnelle Antwort KN4CK3R und weißt du was das habe ich mir schon fast gedacht, aber da ich dachte das der Code bei Dir so gegangen sein müsste, hab ich die Idee verworfen.

Ich werd mich jetzt nochmal hier umschauen.

DANKE.
Tutorials

Mo 28. Sep 2009, 21:24

von KN4CK3R Go to last post
8 1517
icon

Go to first new post KN4CK3R Tutorial 6 Pinball Trainer Erstellt am: Mo 28. Sep 2009, 13:40

tonarmA1

preview Vorschau

Go To Post

Und ich finde es auch nicht, habe nun die ganze Zeit geschaut.
Habe es jetzt auch mal so probiert->

{
fenster = FindWindow(NULL, "3D-Pinball f\x81r Windows – Space Cadet");
Sleep(200);
}

habe statt "für" eben "f\x81r" probiert und.............?

Nein, es hat nicht geklappt, wär ja auch zu einfach gewesen, hat hier jemand noch eine Idee?

@KN4CK3R wenn man mit Spy++ das Problem umgehen kann würdest du dir die Mühe machen mir das nochmal aufzuführen?

Danke & Gruß.
Tutorials

Mo 28. Sep 2009, 21:24

von KN4CK3R Go to last post
8 1517
icon

Go to first new post KN4CK3R Tutorial 6 Pinball Trainer Erstellt am: Mo 28. Sep 2009, 13:40

tonarmA1

preview Vorschau

Go To Post

Also, das kann es auch nicht sein, denn wenn ich für Hearts schauen lasse ob das Fenster geöffnet wurde, macht er das auch nicht und hier ist kein Umlaut vorhanden.
Wenn ich Sleep(0) schreibe und Ausführe dann sucht er auch denn die CPU ist dann ausgelastet. Habe es auch nochmal mit anderen Windowsfenster Probiert ging auch nicht hier scheint was im Code falsch zu sein.

TEXT Code:
  1. //KN4CK3R\'s Tutorial 06 codet by congo
  2. #include \"iostream.h\"
  3. #include \"windows.h\"
  4. #include \"conio.h\"
  5.  
  6. using namespace std;
  7.  
  8. int punkte;
  9.  
  10. int main()
  11.  
  12. {
  13. cout << \"Hearts Trainer\" << endl << \"coded by congo\" << endl;
  14. HWND fenster = NULL;
  15.  
  16. while(fenster == NULL);
  17.  
  18. {
  19. fenster = FindWindow(NULL, \"Das Microsoft-Netzwerk mit Herz\");
  20. Sleep(100);
  21. }
  22.  
  23. cout << \"Hearts wurde gefunden!\" << endl;
  24.  
  25. DWORD prozessid;
  26. GetWindowThreadProcessId(fenster, &prozessid);
  27.  
  28. HANDLE handleprozess;
  29. handleprozess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, prozessid);
  30.  
  31. DWORD puffer = NULL;
  32. ReadProcessMemory(handleprozess,(void*)(0x0A53E54),&punkte,sizeof(punkte),&puffer);
  33.  
  34. cout << \"aktueller Punktestand: \" << punkte << endl << \"neuer Punktestand: \";
  35. cin >> punkte;
  36.  
  37. WriteProcessMemory(handleprozess,(void*)(0x0A53E54),&punkte,sizeof(punkte),&puffer);
  38. WriteProcessMemory(handleprozess,(void*)(0x0BCAEBA),&punkte,sizeof(punkte),&puffer);
  39.  
  40. CloseHandle(handleprozess);
  41.  
  42. return 0;
  43.  
  44. }
Tutorials

Mo 28. Sep 2009, 21:24

von KN4CK3R Go to last post
8 1517
Downloads
Es wurden keine entsprechenden Downloads gefunden.