| Code Kitchen Allgemeines Coder-Forum rund um das Programmieren eigenständiger, ausführbarer Programme. |
Diskussion: Patchen einer While Schleife im Forum Code Kitchen, in der Kategorie Software Home; Anzeige Hallo in meinem C Programm gibt es folgende Zeilen (auszüge) Code: namespace { // Anzahl der Seiten die ausgegeben ...
![]() |
| | #1 (permalink) |
| Registriert seit: 28.12.07 ![]() Likes: 0 | Anzeige Hallo in meinem C Programm gibt es folgende Zeilen (auszüge) Code: namespace {
// Anzahl der Seiten die ausgegeben werden sollen
const size_t maxsitestosee = 8;
} // namespace Code: size_t oi = 0;
while (oi < maxsitestosee ) {
...........
} genau dazu möchte ich einen Patch schreiben der dannden Wert 8 anhebt auf sagen wir 20. Da ich Anfänger bin was Dissambler angeht stehe ich auf dem Schlauch zumal ich da sehr viele weitere while Schleifen nutze... Wie finde ich diese eine richtige? Tipps und Ideen sind gesucht ![]() ps: Es gibt keine Strings nach denen gesucht werden kann! |
| | |
| | #2 (permalink) |
| Themenstarter Registriert seit: 28.12.07 ![]() Likes: 0 | Keiner einen Tipp für mich wie ich das mache bzw vor allem die richtige Whileschleife finde? |
| | |
| HaBOT | - Anzeige - |
| |
| | #3 (permalink) |
| Moderator ![]() Registriert seit: 30.09.06 ![]() ![]() ![]() ![]() ![]() ![]() Likes: 441 | Welchen Debugger verwendest du denn? Im GDB kannst du z.B. mittels 'set var foobar = value' einer Variable (foobar) einen Wert (value) zuweisen. Siehe z.B. http://stupefydeveloper.blogspot.com...variables.html
__________________ Mein Blog - Mein Job - Diaspora Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund. Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+ |
| | |
| | #4 (permalink) |
| Moderator ![]() Registriert seit: 20.07.05 ![]() ![]() ![]() ![]() ![]() ![]() Likes: 202 | Es gibt keinen "geheimen" Trick Schau Dich einfach (statt Strings) nach möglichst "einzigartigen" Aktionen in der Nähe der Whileschleife um - z.B Aufrufe der Funktionen in Standardbibliotheken (fopen, atoi) oder auch Kombinationen der häufig gebräuchlichen Aufrufen (z.B malloc/realloc in Verbindung mit anderen). Damit lässt sich die Suche meistens gut eingrenzen. Zudem kannst Du auch nach Initialisierungsroutinen suchen. In OllyDbg 1.10: Einmal direkt nach Konstanten: Rechtsklick, "Search for" -> Constants oder unscharfe Suche: Strg+F für Suchmaske: MOV dword ptr [R32+CONST],8 sollte die lokalen Variablen finden, die mit 8 initialisiert werden (statt R32 kann man auch EBP angeben) da man allerdings nie sicher sein kann, was der Compiler aus dem Code letzendlich macht, wären auch andere Suchmuster erwähnenswert: MOV DWORD PTR[R32],8 oder MOV R32, 8 mit etwas Pech generiert der Compiler allerdings auch sowas: Code: mov REG, dword ptr [constantenspeicheradresse] mov [EBP-X], REG
__________________ Noch mal, für alle Pseudo-Geeks: 1+1=0. -> 10 wäre Überlauf! Selig, wer nichts zu sagen hat und trotzdem schweigt. |
| | |
| | #5 (permalink) |
| Themenstarter Registriert seit: 28.12.07 ![]() Likes: 0 | Das einzige was pregnatn direkt unter der while Schleife steht im QuellCode ist: Code: bool finding = false; bool marked = false; sowie direkt über der schleife: Code: size_t dat_idx = 0; size_t out_idx = 0; size_t pop_idx = 0; ![]() Na ich werd mal weiter suchen. Muss erst einmal rausfinden wie BOOL Werte aussehen... |
| | |
| | #6 (permalink) |
| Senior Member Registriert seit: 13.07.08 ![]() ![]() ![]() Likes: 85 | 0 und -1
__________________ "It is the human race! The deterioration of the spirit of man. Man undermining himself, causing a self-willed, self-imposed, self-evident self-destruction."+++ BREAKING +++ Troll ertrinkt im Planschbecken +++ |
| | |
![]() |
| - Anzeige - | |
| |
| Themen-Optionen | |
| Ansicht | |
| |