Jump to content
OGXbox.com

Data Breakpoints in VS2003 - Reversing Games


MichiS97
 Share

Recommended Posts

Hiya,

first time poster, long time lurker and I'm already here with an extremely specific question. Basically, I've just set up my very first OG Xbox with Cerbios and everything and I'm really happy about that but I WANT MORE. I realized that there aren't any trainers for some of the games I'm planning to play so I wanted to set up a debug environment so I can do some reversing and patching of the executables myself. Don't worry, I have a lot of experience doing this with other consoles, so it's not like I'm completely lost.

My plan was to set up a dev environment on that xbox using the Easy XDK Installer, along with setting up a WinXP VM on my PC with Visual Studio 2003 and everything. Finally, I expected to be able to attach VS2003 to any process that's running on the Xbox, find where a certain games stores e.g. the current amount of money, set a data breakpoint on that address and then figure out how to patch the executable so that I would have infinite money.

Surprisingly, a lot of this has worked very easily. The setup was done in under two hours and I have already identified an interesting address in one game. However, I can't seem to seta  data breakpoint on that address, as VS2003 always tells me "Invalid context".

Has anyone done something like this before? Do you know how to setup a data breakpoint?

As far as I can tell the problem is that VS2003 expects me to set the data breakpoint on a variable. Obviously I don't have the source code so I can't work with any actual variables. Is there a workaround?

This may be a stretch, but is it really not possible to just attach GDB remotely? I'm not planning on doing any actual software development, I'm really just interested in reverse engineering.

Any help would be very appreciated, thank you!

  • Like 1
Link to comment
Share on other sites

58 minutes ago, MichiS97 said:

Hiya,

first time poster, long time lurker and I'm already here with an extremely specific question. Basically, I've just set up my very first OG Xbox with Cerbios and everything and I'm really happy about that but I WANT MORE. I realized that there aren't any trainers for some of the games I'm planning to play so I wanted to set up a debug environment so I can do some reversing and patching of the executables myself. Don't worry, I have a lot of experience doing this with other consoles, so it's not like I'm completely lost.

My plan was to set up a dev environment on that xbox using the Easy XDK Installer, along with setting up a WinXP VM on my PC with Visual Studio 2003 and everything. Finally, I expected to be able to attach VS2003 to any process that's running on the Xbox, find where a certain games stores e.g. the current amount of money, set a data breakpoint on that address and then figure out how to patch the executable so that I would have infinite money.

Surprisingly, a lot of this has worked very easily. The setup was done in under two hours and I have already identified an interesting address in one game. However, I can't seem to seta  data breakpoint on that address, as VS2003 always tells me "Invalid context".

Has anyone done something like this before? Do you know how to setup a data breakpoint?

As far as I can tell the problem is that VS2003 expects me to set the data breakpoint on a variable. Obviously I don't have the source code so I can't work with any actual variables. Is there a workaround?

This may be a stretch, but is it really not possible to just attach GDB remotely? I'm not planning on doing any actual software development, I'm really just interested in reverse engineering.

Any help would be very appreciated, thank you!

I have zero experience with any of this stuff tbh, but, I will 100% champion anyone who sets out to fill in some of the gaps in the trainer library! 
I hope you get things working as having someone around with this knowledge and ability is handy to have in a forum and it may encourage others to pick up and help the cause. 

Link to comment
Share on other sites

11 minutes ago, MichiS97 said:

Hiya,

first time poster, long time lurker and I'm already here with an extremely specific question. Basically, I've just set up my very first OG Xbox with Cerbios and everything and I'm really happy about that but I WANT MORE. I realized that there aren't any trainers for some of the games I'm planning to play so I wanted to set up a debug environment so I can do some reversing and patching of the executables myself. Don't worry, I have a lot of experience doing this with other consoles, so it's not like I'm completely lost.

My plan was to set up a dev environment on that xbox using the Easy XDK Installer, along with setting up a WinXP VM on my PC with Visual Studio 2003 and everything. Finally, I expected to be able to attach VS2003 to any process that's running on the Xbox, find where a certain games stores e.g. the current amount of money, set a data breakpoint on that address and then figure out how to patch the executable so that I would have infinite money.

Surprisingly, a lot of this has worked very easily. The setup was done in under two hours and I have already identified an interesting address in one game. However, I can't seem to seta  data breakpoint on that address, as VS2003 always tells me "Invalid context".

Has anyone done something like this before? Do you know how to setup a data breakpoint?

As far as I can tell the problem is that VS2003 expects me to set the data breakpoint on a variable. Obviously I don't have the source code so I can't work with any actual variables. Is there a workaround?

This may be a stretch, but is it really not possible to just attach GDB remotely? I'm not planning on doing any actual software development, I'm really just interested in reverse engineering.

Any help would be very appreciated, thank you!

I also wonder about this. Maybe @Jay Yardley may have some insight? 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

Board Life Status


Board startup date: April 23, 2017 12:45:48
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.