Cheat Engine Forum Index Cheat Engine
The Official Site of Cheat Engine
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 


{Question} Addresses in programs/dlls (Delphi)

 
Post new topic   Reply to topic    Cheat Engine Forum Index -> General programming
View previous topic :: View next topic  
Author Message
Ki113r
Newbie cheater
Reputation: 0

Joined: 21 Nov 2007
Posts: 12

PostPosted: Wed Nov 21, 2007 5:27 pm    Post subject: {Question} Addresses in programs/dlls (Delphi) Reply with quote

well i was wondering all the possible ways to like make a program with addresses to activate a cheat i read kaspersky tut on it but that only thought me how to use the address's value and then change it by the aob to a different value in a game....well i was wondering how would i activate a cheat like for example: maplestory> the pintyper what kinda of coding would i need to use to activate that cheat with a button or hotkey...w/e also changing the registry of the address when u right click the address and u hit change register on the engine i would like to know how to make a program do that * too hard to explain what i want and made it sound noobish but i know delphi and know what iam doing i just need to learn more about this address and bypassing games*

What i want to learn:


Activating a cheat by using the given address
Changing the registry of the cheat to activate it


if u know how to do this can u plz post the codes to do so i need to learn more about this and i have nowhere to learn this stuff from...thanks
Back to top
View user's profile Send private message
samuri25404
Grandmaster Cheater
Reputation: 7

Joined: 04 May 2007
Posts: 955
Location: Why do you care?

PostPosted: Wed Nov 21, 2007 5:34 pm    Post subject: Reply with quote

Quote:
Activating a cheat by using the given address


I think you're a little mixed up.

I'm assuming that when you say "Activating a cheat", you're talking about toggling an Auto-Assemble script. You can't toggle that by using an address.

However, I'm working on a project that will convert opcodes to byte arrays, which you can write into the program using an API Call to WriteProcessMemory.

Quote:
Changing the registry of the cheat to activate it


Once again, I think you're a little mixed up.

The registry is something used by Windows to store data, and it usually doesn't have anything to do with hacking).
Back to top
View user's profile Send private message
Flyte
Peanuts!!!!
Reputation: 6

Joined: 19 Apr 2006
Posts: 1887
Location: Canada

PostPosted: Wed Nov 21, 2007 5:39 pm    Post subject: Reply with quote

samuri25404 wrote:
However, I'm working on a project that will convert opcodes to byte arrays, which you can write into the program using an API Call to WriteProcessMemory.


If you are not already you should look at assemblerunit.pas, it is a great source of information, even though the way it is done isn't exactly the most efficient.

samuri25404 wrote:
The registry is something used by Windows to store data, and it usually doesn't have anything to do with hacking).


I think he means changing registers.

To the OP, if you don't know the answer to the first question, you won't understand the answer to the second one. I suggest you get a little more experience before you tackle it.
Back to top
View user's profile Send private message
samuri25404
Grandmaster Cheater
Reputation: 7

Joined: 04 May 2007
Posts: 955
Location: Why do you care?

PostPosted: Wed Nov 21, 2007 5:43 pm    Post subject: Reply with quote

Yes, I've been checking out assemblerunit.pas (I've also been asking DB some questions), thanks.

That makes a little more sense, registers instead of the registry.

Anyways, the registers are incredibly complicated. I asked DB about it, and BASICALLY, what you have to do (or what he does anyway) is

Sets a breakpoint (or int1) on it, and when that comes up, a function in the driver is called to do some things silently, then goes back and gives the original program back the control.
Back to top
View user's profile Send private message
Ki113r
Newbie cheater
Reputation: 0

Joined: 21 Nov 2007
Posts: 12

PostPosted: Wed Nov 21, 2007 5:56 pm    Post subject: Reply with quote

yeah i messed that paragraph up really bad since it was hard for me to explain what i wanted lol and yeah i did assume that changing register part was gonna be hard... can u guys tell me the code for activating a cheat by clicking a button on a form on the program like on the cheatengine where u tick the check boxes...
Back to top
View user's profile Send private message
Flyte
Peanuts!!!!
Reputation: 6

Joined: 19 Apr 2006
Posts: 1887
Location: Canada

PostPosted: Wed Nov 21, 2007 6:03 pm    Post subject: Reply with quote

Ki113r wrote:
yeah i messed that paragraph up really bad since it was hard for me to explain what i wanted lol and yeah i did assume that changing register part was gonna be hard... can u guys tell me the code for activating a cheat by clicking a button on a form on the program like on the cheatengine where u tick the check boxes...


Well, that would involve making your own assembler, which you don't quite have the experience for.

If you wanted to do simple cheats like changing the value at an address you should look into WriteProcessMemory.
Back to top
View user's profile Send private message
Ki113r
Newbie cheater
Reputation: 0

Joined: 21 Nov 2007
Posts: 12

PostPosted: Wed Nov 21, 2007 6:41 pm    Post subject: Reply with quote

cant i just use part of the cheatengine source? and if so what parts of the source do i need to use?
Back to top
View user's profile Send private message
Flyte
Peanuts!!!!
Reputation: 6

Joined: 19 Apr 2006
Posts: 1887
Location: Canada

PostPosted: Wed Nov 21, 2007 6:42 pm    Post subject: Reply with quote

Ki113r wrote:
cant i just use part of the cheatengine source? and if so what parts of the source do i need to use?


Assemblerunit.pas, like I said above. Have fun sorting through it.
Back to top
View user's profile Send private message
samuri25404
Grandmaster Cheater
Reputation: 7

Joined: 04 May 2007
Posts: 955
Location: Why do you care?

PostPosted: Wed Nov 21, 2007 6:51 pm    Post subject: Reply with quote

Dude, I really suggest you get some more experience in programming in general before you try to look at assemblerunit.pas.

It's a very complicated thing.

If you wait a little longer (a week tops), I'll have a tool to convert the string version of an opcode to its array of bytes.

For example, you might have:

Code:

mov eax,ebx


My tool will convert that into

Code:

89 C3


Which you can then use WriteProcessMemory to inject into your program.
Back to top
View user's profile Send private message
atom0s
Moderator
Reputation: 205

Joined: 25 Jan 2006
Posts: 8587
Location: 127.0.0.1

PostPosted: Wed Nov 21, 2007 8:05 pm    Post subject: Reply with quote

Yes you can use CE's autoassembler, as Flyte pointed out you will need to compile a few of the files from the CE source together for it. Heres a compiled dll from the newest public release of CE (5.3).

Look at CE's source to understand how to use it.

The functions you need to look at (exports):
- CEAutoAsm
- CEInitialize
- CEReloadModuleListOnly
- CEReloadSymbolsAndModules

Simple enough, you mainly only need the first two. CEAutoASM is used to enable and disable scripts. Make sure to read through the source carefully cause CEAutoAsm, when used to enable a script, gives you an alloc id that is needed when you use it to disable a script to deallocate memory used with the alloc() function.

Umm.. all credits to DarkByte of course, he gave me a project file to compile the source into the DLL which took a little editing to get it to compile correctly. Works perfect, I have tested it in C++ and VB6.



The Extension 'rar' was deactivated by an board admin, therefore this Attachment is not displayed.


_________________
- Retired.
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    Cheat Engine Forum Index -> General programming All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group

CE Wiki   IRC (#CEF)   Twitter
Third party websites