View previous topic :: View next topic |
Author |
Message |
Pwnmanship Cheater Reputation: 0
Joined: 19 Jan 2015 Posts: 25
|
Posted: Wed Mar 18, 2015 11:15 am Post subject: Getting list of objects |
|
|
Currently I use the following code to find 'stones' within a room in the game 'Binding of Isaac: Rebirth'.
Code: | [ENABLE]
aobscanmodule(FindStones,isaac-ng.exe,8B 43 20 8B 49 0C 99 F7 F9 8B 7D 08 6A 01 8D 74) // should be unique
alloc(newmem,$1000)
globalalloc(pStones,4)
label(code)
label(return)
newmem:
code:
mov eax,[ebx+20]
mov [pStones],ebx // Add the ebx value to pStones
mov ecx,[ecx+0C]
jmp return
FindStones:
jmp code
nop
return:
registersymbol(FindStones)
[DISABLE]
FindStones:
db 8B 43 20 8B 49 0C 99 F7 F9 8B 7D 08 6A 01 8D 74
unregistersymbol(FindStones)
dealloc(newmem) |
But the 'ebx' I put into 'pStones' here keeps changing (looping through all the stones in the room). Now I could like to save all the different addresses (ebx) of all the stones.
Is there a way to add an list of 'CheatEntries' beneath his code with all the base addresses of the stones. Like:
[X] FindStones
-- [ ] Stone1
---- [ ] X
-- [ ] Stone2
---- [ ] X
Etc
|
|
Back to top |
|
|
justa_dude Grandmaster Cheater Reputation: 23
Joined: 29 Jun 2010 Posts: 891
|
Posted: Wed Mar 18, 2015 2:42 pm Post subject: |
|
|
Change your asm to have a counter that functions as an index into some reserved memory. It doesn't really have to be globally allocated, but it needs to be sufficiently large. Every time you read a value, increment the counter. Register a symbol that points to the beginning of allocated memory. Use the symbol name and some offset to display the stones. Use the counter to show the user how many of the stone entries are valid.
I believe you can programmatically add/remove table entries via Lua, but imho it's kinda' ugly.
_________________
A nagy kapu mellett, mindig van egy kis kapu.
----------------------
Come on... |
|
Back to top |
|
|
Zanzer I post too much Reputation: 126
Joined: 09 Jun 2013 Posts: 3278
|
Posted: Wed Mar 18, 2015 6:31 pm Post subject: |
|
|
Have you checked other registers while that code is executing?
Does one of them already seem to increment as the index while going through each stone?
|
|
Back to top |
|
|
++METHOS I post too much Reputation: 92
Joined: 29 Oct 2010 Posts: 4197
|
Posted: Wed Mar 18, 2015 7:24 pm Post subject: |
|
|
Not sure I understand, given the responses, but it would seem to me that dissecting the data structures might solve your problem. If you can find a reliable identifier, you should be able to segregate the stones and display their addresses/values accordingly.
|
|
Back to top |
|
|
aikoncwd Grandmaster Cheater Reputation: 23
Joined: 21 Dec 2012 Posts: 591 Location: Spain (Barcelona)
|
Posted: Wed Mar 18, 2015 8:10 pm Post subject: |
|
|
look into the registers or stackview, so you can dissect that shared coded and list all the stones with a few aasm lines.
_________________
Hey Hitler
Test here your skill with CheatEngine, I coded a challenge for you. Try to beat it!
HERE |
|
Back to top |
|
|
Zanzer I post too much Reputation: 126
Joined: 09 Jun 2013 Posts: 3278
|
|
Back to top |
|
|
Pwnmanship Cheater Reputation: 0
Joined: 19 Jan 2015 Posts: 25
|
Posted: Thu Mar 19, 2015 7:53 am Post subject: |
|
|
Zanzer wrote: | God, I must be bored. I found all 34 addresses. Not sure how it helps your C# program. |
Thanks guys, and Zanzer for making the script! This helps alot, though now I need to make my C# Hardware debugger work..
|
|
Back to top |
|
|
justa_dude Grandmaster Cheater Reputation: 23
Joined: 29 Jun 2010 Posts: 891
|
Posted: Thu Mar 19, 2015 9:11 am Post subject: |
|
|
Pwnmanship wrote: | Zanzer wrote: | God, I must be bored. I found all 34 addresses. Not sure how it helps your C# program. |
Thanks guys, and Zanzer for making the script! This helps alot, though now I need to make my C# Hardware debugger work.. :P |
There is absolutely nothing in that script that requires implementing a debugger.
_________________
A nagy kapu mellett, mindig van egy kis kapu.
----------------------
Come on... |
|
Back to top |
|
|
Zanzer I post too much Reputation: 126
Joined: 09 Jun 2013 Posts: 3278
|
Posted: Thu Mar 19, 2015 1:05 pm Post subject: |
|
|
justa_dude, don't know if you realize, but this is the same guy you're having a fight with in that other thread.
|
|
Back to top |
|
|
Pwnmanship Cheater Reputation: 0
Joined: 19 Jan 2015 Posts: 25
|
Posted: Thu Mar 19, 2015 4:36 pm Post subject: |
|
|
Zanzer wrote: | justa_dude, don't know if you realize, but this is the same guy you're having a fight with in that other thread. |
Let's not start about that.
But why this is helping me is because my other C# script could get 31 of 34 objects in that room. By knowing for sure that a script like yours can get 34 then I know that the current C# script is just wrong. I just finished my C# debugger which is working.
Thanks alot mate!
|
|
Back to top |
|
|
|