Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon.

Pages: 1-

GDB Cheat Engine script

Name: Anonymous 2012-08-31 14:49

Can anyone here help me with a Cheat Engine style GDB (Gnu debugger) script?
I am a noob to scripting so help is much appreciated.

This is what I have so far:

define find
    dont-repeat
    set $_count=0
    while ( $_count < $arg1)
        if ( ($r0 == $arg0) || ($r1 == $arg0) || ($r2 == $arg0) || ($r3 == $arg0) || ($r4 == $arg0) || ($r5 == $arg0) || ($r6 == $arg0) || ($r7 == $arg0) || ($r8 == $arg0) || ($r9 == $arg0) || ($r10 == $arg0) || ($r11 == $arg0) || ($r12 == $arg0))
            break
            set $_count=$arg1
        else
            si
            set $_count++
        end
    end
end


Usage:
find 30 100
This will search the next 100 instructions and breakpoint when a register holds 30.
But this is only good after a breakpoint in a function/method.

What I want is it to scan the program and find all values by writing the address to a plain text file.
Then on next scan compare to the plain text file and ditch all addresses that do not match.
Rinse and repeat until you narrow down your results(like cheat engine).

Or is it possible to dump something and compare dumps to narrow searches?

I don't expect any help, but I would love you if you did help.
I'm new to reverse engineering type stuff so don't bash me too hard.

Name: Anonymous 2012-08-31 15:59

Just get a Bochs or QEMU source code, then modify them to do anything you want.

Name: Anonymous 2012-08-31 23:19

end end end end

Name: Anonymous 2012-08-31 23:36

looks like Ruby

Name: Anonymous 2012-09-01 0:24

>>1

I have read that you can use python with gdb is the new version. I think you would be much better off using that than gdb script.

Don't change these.
Name: Email:
Entire Thread Thread List