couple of questions

02/23/2014 02:34 OverKill.#1
first about memory based bots, would it be possible to hook functions using c# application pinvoking a c++ dll ?

second about parallel processing for packets to decrease ping(split long buffer with many packets and process them at once), would that even be possible, if yes how vulnerable it would be
02/23/2014 05:38 Spirited#2
Yes. You can call any Windows 32 API function using a platform invoke. As far as parallel, I'd recommend using a threaded worker queue system or asynchronous socket system for receiving packets in parallel. If this is a client bot, you could also use tasks to parallel packet processing. I've found that the best option is an IOCP model or C#'s asynchronous classes.
02/23/2014 06:01 OverKill.#3
Quote:
Originally Posted by Spirited Fang View Post
Yes. You can call any Windows 32 API function using a platform invoke. As far as parallel, I'd recommend using a threaded worker queue system or asynchronous socket system for receiving packets in parallel. If this is a client bot, you could also use tasks to parallel packet processing. I've found that the best option is an IOCP model or C#'s asynchronous classes.
you didn't really get the last part but here ill explain more
sometimes you get buffer with more than a packet (ex. buffer with 5 walk packets or buffer with jump and use item packets)
i was talking about processing those packets in the buffer in parallel so i can reply faster to the client

but the question is how vulnerable that would be, for instance if one walk packet from the middle of distance finished first, also if people could exploit it


regard of the first part, sorry if this sound stupid but when you say "Windows 32 API" does this include plain c++ dlls compiled maybe with pure clr
02/23/2014 06:16 Spirited#4
Oh, I see. You don't want to process all of the walk packets at once. That does create problems with updating the location of the character. You want to process packets in some sort of queued system where there's some delay between packets. You can still execute some things in parallel, but walking isn't something you should do in parallel. Regarding the Windows API, yes, it does contain ANSI C++ functions, but editing a process's memory is part of the Windows API.