Advertisement
Guest User

Untitled

a guest
Jul 21st, 2018
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.46 KB | None | 0 0
  1. public static class ClientServices
  2. {
  3. public static uint cave;
  4.  
  5. public static void Send2(byte[] bytes)
  6. {
  7. cave = Globals.Magic.AllocateMemory(0x100);
  8.  
  9. uint caveDataStore = Globals.Magic.AllocateMemory(0x18);
  10. uint cavePacketData = Globals.Magic.AllocateMemory(bytes.Length);
  11.  
  12. DataStore dataStore = new DataStore();
  13. dataStore.VTable = Offsets.CDataStore.DataStore;
  14. dataStore.Buffer = cavePacketData;
  15. dataStore.BufferType = 0x100;
  16. dataStore.BufferLength = (uint) bytes.Length;
  17.  
  18. Globals.Magic.WriteObject(caveDataStore, dataStore, typeof(DataStore));
  19. Globals.Magic.WriteBytes(cavePacketData, bytes);
  20.  
  21. Globals.Magic.Asm.AddLine("push {0}", caveDataStore);
  22. Globals.Magic.Asm.AddLine("call {0}", Offsets.ClientServices.Send2);
  23. Globals.Magic.Asm.AddLine("add esp, 4");
  24. Globals.Magic.Asm.AddLine("retn");
  25.  
  26. bool detoured = NetClient.Send2.IsDetoured;
  27.  
  28. if (detoured)
  29. NetClient.Send2.RemoveDetour();
  30.  
  31. Globals.Magic.Asm.InjectAndExecute(cave);
  32. Globals.Magic.Asm.Clear();
  33.  
  34. Globals.Magic.FreeMemory(cave);
  35. Globals.Magic.FreeMemory(caveDataStore);
  36. Globals.Magic.FreeMemory(cavePacketData);
  37.  
  38. if (detoured)
  39. NetClient.Send2.Detour();
  40. }
  41.  
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement