Memory.dll - C#/VB.NET Game Trainer Library

Upload *YOUR* gamehacking tools/helpers here
Post Reply
User avatar
erfg12
Table Makers
Table Makers
Posts: 61
Joined: Thu Mar 16, 2017 4:55 pm
Reputation: 27

Memory.dll - C#/VB.NET Game Trainer Library

Post by erfg12 »

This library file can be used to create PC game cheat trainers. It can read and write to any program process.



FEATURES
  • Built with C# for .NET projects.
  • Check if process is running and open, all in 1 function.
  • 32bit and 64bit games supported.
  • AoB scanning with full & partial masking.
    • Example: "?? ?? ?? ?5 ?? ?? 5? 00 ?? A9 C3 3B ?? 00 50 00"
  • Open process with ID or name and full privileges.
  • Inject DLLs and create named pipes to communicate with them.
    • See [Link] for more info.
  • Read & write to addresses.
  • Can make external .ini file for code storage.
  • Address structures can include modules with multiple offsets.
    • Example: "game.exe+0x12345678,0x12,0x34,0x56"
Please check out the [Link] on the github repo for how to use it.



NuGet has the latest compiled releases. [Link]



Use Visual Studio to get it! Project > Manage NuGet Packages... > Browse > Search "memory.dll".



[Link]
Last edited by erfg12 on Tue Jul 14, 2020 2:29 pm, edited 3 times in total.

JohnFK
Cheater
Cheater
Posts: 49
Joined: Tue Aug 29, 2017 10:50 am
Reputation: 16

Memory.dll - C#/VB.NET Game Trainer Library

Post by JohnFK »

This can be very useful, thanks a lot.



Few suggestions:

- For maintenance throwinjg everything in one class is awful..NET is OOP language. Make use of it!

- Opening/reading/writing process does not specifically require admin rights. Your check should be optional

- Dont use the inbuilt Process.Modules as it fails/does not give you all modules when the bit version of yours and target process is different. Instead use WinAPI to enumerate modules

- There is a lot of copy and paste code (duplicated code). For example all reading/writing functions nearly have 95% of equal code. Maybe making one function where all others just point to and give the 5% different as paramater? Or even better, make usage of a generic function [URL]https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/generics/generic-methods[/URL]

- You dont check/handle the returns of WinAPI calls in Injectdll function, thus you will never know which api has failed why.

Post Reply

Who is online

Users browsing this forum: No registered users