Possibly a weeb
Dank Tier Donator
- Jul 9, 2020
- Game Name
- Unreal Engine 4
- Coding Language
- What you need
- IDA / GHIDRA | Braincells
How to easily make signatures for Unreal Engine 4 GamesIntroduction:
Hey guys so the reason that I am even making this "tutorial" is so that people who are interested in making anything to do with unreal engine will have some kind of information on collecting signatures as the resources for learning about unreal engine 4 seem to be very dated or follow a narrative or version specifics which does not help someone trying to follow it with a game that does not follow the same versioning.
From personal experience what I am about to post about here helped me regain motivation to investigate further into the engine and what can be done.
NOTE: SORRY FOR POOR LAYOUT OR STRUCTURE
The prerequisites to follow this guide will be the following very simple list.
- Epic Games account.
- GitHub account. (Optional will cover in the end)
- IDA Pro or Ghidra. (I will not be covering Ghidra)
- 2-3 Brain cells
- Ability to read
Okay so now on to getting started first head over to the Unreal Engine download - Unreal Engine | Authentication Required
From here it is going to allow you to download the Epic Games Launcher with the ability to download... what is it... can you guess? WELL DONE!!! THE ENGINE!!!
Now before downloading the version of unreal its telling you to get do you know what engine version the game you want to play with is using?
The 2 ways I check for what version a game is running is the following very simple steps.
Check the properties of the game executable sometimes the developers are top blokes and leave the version like this.
Or sometimes the big meanies hide it but do not fear Ahegao is here with today's top tips.
And there you go by the magic of the temp folder we now know which version is required to be downloaded from the Epic Games launcher.
Getting Unreal Engine Versions:
Yay lets open the Fortnite meme machine that is the Epic Games Launcher and see what we need to select in order to start being 1337 GaMe HaCKeRs!!!
This is how the UI should look for you minus the versions that I have downloaded.
Now this is where the core process of getting the signatures relies so if you fuck this up you will have to retake this step all over again.
Click here on this.
You will now notice under "ENGINE VERSIONS" you have a grayed out box with a version number, you will need to click the drop down arrow next to version number and select the corresponding value to match up with the game you are trying to hack, Then click the install button
IMPORTANT STEP READ THIS CAREFULLY!!!
PRESS THE OPTIONS BUTTON BEFORE INSTALLING AND TICK "EDITOR SYMBOLS FOR DEBUGGING"
Now if like me the internet you use complete ass go grab a coffee and watch that sucker drain yo life homie.
It has downloaded now wut?!?:
Okay now the engine has finished downloading the next step is to create a sample project following a blueprint that relates to the kind of game you are playing with so ideally do not select a "Twin Stick Shooter" if you trying to hack a FPS.
Small tip: Name the project using the version number in case you repeat this for multiple games nothing worse than playing guess the folder.
Now quit playing with the demo... I know you are... STAHP IT?!?!
It is now time to setup the right options to get you that juicy PDB.
Now that all the build settings are correct its time to compile a build and have this sucker ready for Forging Signatures.. HA you see what I did there FORGE... nvm.
Click File -> Package Project -> Windows -> and select which matches the game you hacking 32 Bit or 64 Bit
The folder its asking to create is your choice.
Okay its compiled and I have PDB what to do now:
Time to load up old trusty IDA and throw in the UE4Game.exe after it creates segments and this can take a little while you will get a popup asking if you would like to load debug file,
I think that we probably should and let this analyze fully before doing ANYTHING or face eternal loading times.
Small tip #2: Close every window inside of IDA until it has finished i.e. all the function windows. you can thank @iMoD1998 for that handy tip it has saved me so much time on EVERYTHING!
And that is it you now have a labeled IDB to reference with the game you are trying to hack, I am not going to show you how to create the patterns etc... simple byte matching!
as papa @Rake would say go read the bibles filthy paste scrubs!
Get Unreal Engine source codes for specific versions for easier looking up, such as finding static objects like GObjects, GNames - How to get access
Here is an example of why this is very useful.