• Trainer
  • Forums
  • Suche
  • Members
  • Kalender
  • Hilfe
  • Extras
Forum stats
Show team
Neue Beiträge ansehen
Heutige Beiträge ansehen
Home of Gamehacking - Archiv
Login to account Create an account
Login
Benutzername:
Passwort: Passwort vergessen?
 



  Home of Gamehacking - Archiv Gamehacking Tutorials für Fortgeschrittene Crysis 3 - Infinite Health Tutorial

Ansichts-Optionen
Crysis 3 - Infinite Health Tutorial
iNvIcTUs oRCuS Offline
Super Moderator
****
Beiträge: 2.688
Themen: 529
Registriert seit: Aug 2010
Bewertung: 19
#7
24.08.2014, 23:55 (Dieser Beitrag wurde zuletzt bearbeitet: 27.01.2017, 21:08 von iNvIcTUs oRCuS.)
Was habe ich mit dem XOR selber erkannt?
Ich denke doch das ich die Sache gut erklärt habe...

Okay, aber bei Codeinjection/Codecave kann man sich wahrscheinlich auch streiten. Für mich ist die Definition einer Codeinjection so, das wenn ich mit einem externen Programm (z.B. Trainer) meinen Code injeziere... Würde praktisch bedeuten das auch schon ein geändertes Byte eine Codeinjection darstellt. Von Patch rede ich wenn ich z.B. eine Datei dauerhaft verändere.

Aber ich lasse mich natürlich auch gerne eines besseren belehren.

Übrigens, wer Lust und Laune hat, kann sich ja mal die Verschlüsselung bei State of Decay anschauen. Also was die Entwickler da geritten hat, ts ts ts... Huh
Is ja schon fast paranoid... Verschiedene mathemathische Rechenoperation und zum Schluß das ganze auch wieder verXORt.

Und hier seht ihr mal die Routine die bei State of Decay dafür zuständig ist.

ASM Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
013F42C0 - 51                    - push ecx              // Start der Decryption Routine
013F42C1 - 8B 49 08              - mov ecx,[ecx+08]      // Wert einlesen und weiterverarbeiten
013F42C4 - 8B C1                 - mov eax,ecx
013F42C6 - 8B D1                 - mov edx,ecx
013F42C8 - 81 E2 22 22 22 22     - and edx,22222222
013F42CE - D1 E8                 - shr eax,1
013F42D0 - 03 D2                 - add edx,edx
013F42D2 - 81 E1 99 99 99 99     - and ecx,99999999
013F42D8 - 25 22 22 22 22        - and eax,22222222
013F42DD - 0B C2                 - or eax,edx
013F42DF - 0B C1                 - or eax,ecx
013F42E1 - 8B D0                 - mov edx,eax
013F42E3 - 81 E2 0C 0C 0C 0C     - and edx,0C0C0C0C
013F42E9 - 8B C8                 - mov ecx,eax
013F42EB - C1 E9 02              - shr ecx,02
013F42EE - 81 E1 0C 0C 0C 0C     - and ecx,0C0C0C0C
013F42F4 - 03 D2                 - add edx,edx
013F42F6 - 03 D2                 - add edx,edx
013F42F8 - 0B CA                 - or ecx,edx
013F42FA - 25 C3 C3 C3 C3        - and eax,C3C3C3C3
013F42FF - 0B C8                 - or ecx,eax
013F4301 - 8B C1                 - mov eax,ecx
013F4303 - 8B D1                 - mov edx,ecx
013F4305 - C1 E8 04              - shr eax,04
013F4308 - 81 E2 F0 00 F0 00     - and edx,00F000F0
013F430E - 81 E1 0F F0 0F F0     - and ecx,F00FF00F
013F4314 - C1 E2 04              - shl edx,04
013F4317 - 25 F0 00 F0 00        - and eax,00F000F0
013F431C - 0B C2                 - or eax,edx
013F431E - 0B C1                 - or eax,ecx
013F4320 - 8B C8                 - mov ecx,eax
013F4322 - C1 E9 08              - shr ecx,08
013F4325 - 8B D0                 - mov edx,eax
013F4327 - 81 E1 00 FF 00 00     - and ecx,0000FF00
013F432D - 81 E2 00 FF 00 00     - and edx,0000FF00
013F4333 - C1 E2 08              - shl edx,08
013F4336 - 0B CA                 - or ecx,edx
013F4338 - 25 FF 00 00 FF        - and eax,FF0000FF
013F433D - 0B C8                 - or ecx,eax
013F433F - 33 0D F8 6B E7 01     - xor ecx,[01E76BF8]
013F4345 - 33 0D D0 7A E7 01     - xor ecx,[01E77AD0]    // Nach diesem Befehl ist der Wert unverschlüsselt und immer im FLOAT Format -> siehe weiter unten
013F434B - 89 0C 24              - mov [esp],ecx         // Wert in [ESP] sichern
013F434E - D9 04 24              - fld dword ptr [esp]   // Wert in FPU einlesen
013F4351 - 59                    - pop ecx
013F4352 - C3                    - ret                   // Ende der Decryption Routine


Wenn ihr also denkt, Crysis 3 war schwer...?!?
Falsch gedacht... Aber diese Routine ist auch relativ schnell geknackt. Das größte Problem ist hier eigentlich nur das nicht nur ein paar Adressen drüberlaufen sondern so gut wie alles was dem Spiel wichtig ist.
Mit anderen Worten, es sind etliche Adressen die hier drüberlaufen. Sowas hab ich zuletzt bei Hard Reset, Shadow Warrior und Terminator Salvation gesehen.

Irren ist menschlich. Aber wer richtigen Mist bauen will, braucht einen Computer !!!

Traineranfragen per PM werden prinzipiell gelöscht...

[Bild: signatur6akm7.gif]
Suchen
Antworten
Share Thread:            


Nachrichten in diesem Thema
Crysis 3 - Infinite Health Tutorial - von iNvIcTUs oRCuS - 22.08.2014, 20:30
RE: Crysis 3 - Infinite Health Tutorial - von Sheek - 22.08.2014, 23:19
RE: Crysis 3 - Infinite Health Tutorial - von BlIzZaRd - 23.08.2014, 01:55
RE: Crysis 3 - Infinite Health Tutorial - von iNvIcTUs oRCuS - 23.08.2014, 03:54
RE: Crysis 3 - Infinite Health Tutorial - von ABartX - 23.08.2014, 20:53
RE: Crysis 3 - Infinite Health Tutorial - von maluc - 24.08.2014, 01:05
RE: Crysis 3 - Infinite Health Tutorial - von iNvIcTUs oRCuS - 24.08.2014, 23:55
RE: Crysis 3 - Infinite Health Tutorial - von maluc - 25.08.2014, 01:28
RE: Crysis 3 - Infinite Health Tutorial - von iNvIcTUs oRCuS - 25.08.2014, 16:28
RE: Crysis 3 - Infinite Health Tutorial - von Sheek - 25.08.2014, 17:12
RE: Crysis 3 - Infinite Health Tutorial - von iNvIcTUs oRCuS - 25.08.2014, 22:08
RE: Crysis 3 - Infinite Health Tutorial - von ABartX - 25.08.2014, 22:09
RE: Crysis 3 - Infinite Health Tutorial - von iNvIcTUs oRCuS - 26.08.2014, 05:52

  • Druckversion anzeigen
  • Thema abonnieren


Benutzer, die gerade dieses Thema anschauen:
1 Gast/Gäste

  • Kontakt
  • Forum team
  • Forum stats
  • Nach oben
 
  • RSS-Synchronisation
  • Lite mode
  • Home of Gamehacking - Archiv
  • Help
 
Forum software by © MyBB - Theme © iAndrew 2014



Linearer Modus
Baumstrukturmodus