Changing or hooking into exectuables

BlitzMax Forums/BlitzMax Beginners Area/Changing or hooking into exectuables

Hezkore(Posted 2011) [#1]
Hello there, I'm very curious about how I could manipulate already compiled EXE files.
Here's a screenshot from IL-Spy which is a tool I use a lot to get information about executables.

As you can see, it shows some interesting stuff and I would like to be able to either manipulate this data somehow or get information about when it's changed.
I'm not sure what all this is called as I'm new to this area, but any help in the right way would be appreciated! :)
Thank you for you time.


jsp(Posted 2011) [#2]
If you like also assembler have a look at:
olly debugger
http://www.ollydbg.de/

Or to check programs in memory, what values have changed after a certain operation and such:
Tsearch
http://www.timsvault.com/cheattools/tsearch.htm


Hezkore(Posted 2011) [#3]
Well I'd like to be able to do this from BlitzMax.
For example, I'd like to be able to change the maxLiquidBuffer either in the memory or before the EXE is executed.
Or alternatively, just check if it HAS been changed.
This isn't really for cheating, it's for a server interface.

Last edited 2011


Czar Flavius(Posted 2011) [#4]
You want to be able to change values in the debugger instead of just viewing them? Me too!


Hezkore(Posted 2011) [#5]
Well not in the debugger, but in another application...
Basically what I'm trying to do is start an application and getting as much data as possible from it!
It outputs text (it's a console window) so I'm starting it with TProcesses or whatever it's called and reading the text it outputs, but it's not enough heh, I need more data from it so I'd like to know when certain things happen.
It's a server application I'm trying to hook and I'd like to know for example when a user connects, there's no visual text for that, so TProcesses isn't enough for me.


xlsior(Posted 2011) [#6]
Keep in mind that even if you succeed here, practical applications are very limited since it's the kind of tampering that will set off any half-way decent antivirus program.


plash(Posted 2011) [#7]
@Hezkore: The reason that is possible with CIL executables is because the compiled code is very descriptive. BlitzMax - along with a trove of other languages - compiles to bytecode that happens to be very non-descriptive. What you want isn't really possible with Max.

Last edited 2011


.rIKmAN.(Posted 2011) [#8]
Sorry to hijack this thread, but I've been trying to get hold of Plash via email and twitter for a few weeks and had no response.

Plash, do you still have your FryGUI Designer code / exe as the links are dead from the archives (and the comments), and other posts about it haven't been answered on here

Again sorry for the hijack, hope Plash reads this.

Last edited 2011


ImaginaryHuman(Posted 2011) [#9]
You can add stuff to the end of the exe file and it will be ignored by the exe loader, but you can then open the exe file from within your app and read the data.