Terve vaan kaikille jälleen,
Elikkäs olen tässä väsillyt yhteen peliin traineriä, minulle on tosin tullut eteen yksi probleema. Eli etsin eka yhellä muistin scannaus ohjelmalla pelin muistipaikat ja etsin missä osoitteessa sijaitsee rahan määrä. Noh kun lyödän sen voin hienosti muokata sitä omalla trainerillä. Sitten kun käynnistän seuraavan kerran pelin, niin osoite on kin muuttunut, eli raha ei sijaitsekkaan enää samassa osoitteessa missä sijaitis viimeksi.
Eli miten saisin selville joka kerta kun käynnistän trainerin, että missä se rahan osoite oikein sijaitsee?
Edit1: Vai onko tarkoitus saada etsittyä osoite joka muuttaa tuota raha määrää?
Luultavasti ohjelma varaa ko. muistipaikan dynaamisesti. Ohjelmasta mahdollisesti löytyy vakiopaikasta pointteri tuohon osoitteeseen (tai vähän ennen sitä, jos se on isompi muistialue)
Ahaa, noh nytten olen selvittänyt pointterin osoitteen. Miten saan tuosta pointterista selville, että mihin osoitteeseen tuo osoittaa?!?!?
Pointterin arvo on sen osoittaman muistipaikan indeksi.
Eli siis jos pointterin osoite on hexinä 0x776E68AC ja sen arvo on 0x006D8398, niin onko tuo 0x006D8398 sitten se esim. raha määrän osoite jota muokkaamalla voidaan muokata rahan määrää?
On, jos se pointteri osoittaa rahamäärään. Ja tietenkin siis pitää muokata sitä rahamäärää eikä osoitinta. Ihmettelen suuresti, miten olet voinut muka löytää oikean osoittimen, jos et edes tiedä itse, minne se osoittaa. :D
Mikä kumma niissä osoittimissa on niin hankalaa? Osoitin = muuttuja, jossa on osoite.
Tiedän sen osittain siitä, koska katsoin mikä osoite muokkaa raha määrä. Tuloksena oli pop[eax+edi] eax = 0000002C ja pointteri(0x776E68AC) osoittaa tuohon 0x006D839 ja 0x006D839 osoittaa tuohon eax eli 0000002C?
Tosin tuo edi muuttu joka kerta, eli se pitäisi saada selvitettyä. Koska rahan sijainti saadaan kun tuohon eax(0x776E68AC -> 0x006D839 -> 0000002C) + edi...
Luultavasti ette tajunneet yhtikäs mitään mitä selitän, mutta koitan vielä itse jos saisin sen itse toimimaan. :)
Eli siis tuo edi on offsetti, eli jos eax + edi = rahan sijainti
No mikä tuossa nyt on sitten niin vaikeeta? Siis kun kuitenkin kerrat näet sen disassembloidun koodin ja ilmeisesti ainakin jollain tasolla osaat sitä tulkitakin. Tuskinpa sitä EDInkään sisältöä mistään satunnaislukugeneraattorista on luettu.
Jep jep, sitä tässä koitankin etsiä ja selvittää tulisesti. Ei vielä tosin ole tuottanut tulosta. :)
Jihuu, sain selvitettyä offsetin arvon, eli tuon edin:n se oli 0x000141EC.
Aihe on jo aika vanha, joten et voi enää vastata siihen.