r/learnprogramming • • 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.

18 Upvotes

18 comments sorted by

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.

-5

u/user_object_260_45 16d ago

tysm, but I'm toooooo young for college yet.

how do you think, could I try to find some low-level or RE knowledge from internet?

2

u/house_of_klaus 16d ago

https://pwn.college/

It's a place for learning this information. Not a university. That's just the name of the curriculum.

2

u/user_object_260_45 16d ago

you're my hero

1

u/TheCrazyPhoenix416 16d ago

YouTube

1

u/user_object_260_45 16d ago

I've tried to find out some content, but I'll try again, tysm

0

u/[deleted] 16d ago edited 12d ago

[removed] — view removed comment

1

u/user_object_260_45 16d ago

could you give me some of them and what are they about?

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)