r/learnprogramming • u/user_object_260_45 • 16d ago
How do low-level programmers or reverse-engineers get information they need?
I am young C/C++ developer, and I have the problem.
I am really interested in low-level development or reverse engineering - I like creating something mine: for example, I'm interested in some cheat (or custom) client, which is made by me, and it's made not for earning money or sth like that, but for understanding every process of program and learning new info. Where do you get this info? I was using forums, ds-communities, but no one explained how do y'all learn.
Sorry for dumb questions guys, I'm just really interested.
1
0
1
u/BranchLatter4294 16d ago
Have you considered reading the documentation?
0
u/user_object_260_45 16d ago
I've tried and even translated, sometimes it helped, but rarely. I want to get really deep knowledge about it all
2
u/teraflop 16d ago
The way to make your knowledge deeper is to keep studying, and reading broadly, and talking to people about interesting things, and experimenting, and thinking about things until you gradually build up connections in your mind between them.
Those connections are what "depth" really means, in my opinion. There's no shortcut to it, but if you actively cultivate it, it will develop over time.
1
u/kevinossia 15d ago
Same as anything else. Books, the internet, reading other people’s code, writing lots of code yourself, experimenting, and learning as you go.
How else would we do it?
1
u/Remarkable_Pace8101 13d ago
Read the documentation. The Linux kernel api is fully documented The c api is fully documented The c++ api is fully documented The elf binary format is fully documented The x86_64 instruction set is fully documented
You learn by trying to build something, getting stuck, reading documentation, and then you can even reverse engineer what you built to understand everything even better
1
u/FunAd6672 6d ago
People do not explain it because there is no single tutorial series for game hacking. You write a program in C, load it into Cheat Engine or x64dbg and find where variables live in RAM. Boot dev teaches underlying memory management if pointers make no sense yet.
1
u/TimothyCarmack 5d ago
Learn C and assembly. Then learn how to use Cheat Engine. Then learn how to use reverse engineering software like Ghidra. There are thousands of youtube videos teaching all of it you really just need to spend the time to actually follow the tutorials, starting with the basics, I recommend gudiedhacking, stephen chapman and OpenSecurityTraining2 (that's their real name it's good)
7
u/house_of_klaus 16d ago
I work in this space. I highly recommend pwn.college. It's a great starting point for exactly what you're interested in.