View previous topic :: View next topic |
Author |
Message |
Geronticus_eremita How do I cheat?
Reputation: 0
Joined: 21 Mar 2023 Posts: 2
|
Posted: Tue Mar 21, 2023 10:11 am Post subject: Can't find value after pressing "Next Scan" |
|
|
Hi!
I've been looking for a value (total newbie here), but can't find it. I have tried float, 2 bytes, 4 bytes and bytes, but after pressing "Next Scan" after changing the amount, nothing shows up. Been using "exact value" both times.
Do you have any advice on how I could solve this?
Thanks a lot in advance,
Sarah |
|
Back to top |
|
 |
ParkourPenguin I post too much
Reputation: 150
Joined: 06 Jul 2014 Posts: 4654
|
Posted: Tue Mar 21, 2023 1:35 pm Post subject: |
|
|
Unknown initial value, changed / unchanged value scans
The value you want to find might not be stored in the way you'd expect it to be. It could be split up amongst several values (e.g. time might have hours / minutes / seconds split up), maybe it's a packed bitfield (e.g. old flash *8+N value type), or maybe it's intentionally obfuscated (e.g. xor key). _________________
I don't know where I'm going, but I'll figure it out when I get there. |
|
Back to top |
|
 |
Geronticus_eremita How do I cheat?
Reputation: 0
Joined: 21 Mar 2023 Posts: 2
|
Posted: Tue Mar 21, 2023 3:25 pm Post subject: |
|
|
Hi there,
Thank you very much!
I have tried with unknown initial value, changed / unchanged value scans, but nothing came that fit the number (it's the money amount, so shouldn't contain several values I guess?).
Do you know if there is a tutorial how to solve packed bitfields or obfuscated values?
Cheers,
Sarah |
|
Back to top |
|
 |
ParkourPenguin I post too much
Reputation: 150
Joined: 06 Jul 2014 Posts: 4654
|
Posted: Tue Mar 21, 2023 4:39 pm Post subject: |
|
|
Any results that change in relation to the value you're searching for are naturally related in at least that way. You can try freezing values and see what happens.
Try to narrow down the list as much as possible before changing random things, as changing the wrong things might crash the process. Beyond simple changed / unchanged value scans, you can try changing your money, bringing it back to the original amount, and doing an unchanged value scan. "Compare to first scan" might help.
Of course, that's making some assumptions. Doing that could leave you with nothing if the game is generating a new random key for obfuscation at every value mutation.
Simple integers can be derived from several values. e.g. skill points left = points earned - points spent. Points left might not exist persistently in memory.
I was just listing a few of the literally infinite ways a value can be stored in an unintuitive manner. You'd have to identify the value that changes money before you can start reverse engineering the way it's stored.
If other reverse engineering opportunities are available (e.g. unity game: dissect mono), you can try those.
PS: if whatever you're doing with money requires an internet connection, give up _________________
I don't know where I'm going, but I'll figure it out when I get there. |
|
Back to top |
|
 |
++METHOS I post too much
Reputation: 92
Joined: 29 Oct 2010 Posts: 4197
|
Posted: Tue Mar 21, 2023 10:25 pm Post subject: |
|
|
As mentioned, depending on the nature of the target (online, emulated etc.), you may have to alter your approach or accept that you are fighting a losing battle.
If it is emulated, then you will want to make sure that you include all memory region types under Scan Settings. |
|
Back to top |
|
 |
|