There is an online game written in delphi. I want to write something like a trainer. Inject my Dll into it. I learned the socket descriptor and sent the packages I needed by pressing the keys, but GetAsyncKeyState created a loop and as a result a huge load on the percent and the application crashed. How can it be otherwise? Is it possible to write my data to the stack using writeprocessmemory and send it from the application?

ws2_32.send

  • Can. If in a nutshell - you can record data in any free space. Send - by launching the standard game function of sending data. It usually takes the address and size of the data sent. But you have to look for this function - Vladimir Klykov
  • what is on the screen, not that? - p01s0n
  • The fact that the screenshot is a WSA call if the data does not need preparation (encryption / compression / ....) then you can also set registers and call the WSA code and data injection .... and do not forget to clean up after yourself - Vladimir Klykov
  • I set a breakpoint on Data. sending the packet occurs much after than calling the function on the screen. I thought to write the data into memory, then on the date that on the screen and then just call the send function, but I don’t know how to call it through my program) data It's not a problem to register, but how to send (just call a function), Google did not help me) - p01s0n
  • отправка пакета происходит намного после чем вызов функции possible due to the use of the algorithm of the charge. но не знаю как вызывать to write a code that will put the necessary values ​​in registers (address \ size \ socket \ ...) and further place this code in the memory of another process, in the same way as the data, and then call CreateRemoteThread - Vladimir Klykov

0