this post was submitted on 26 Jun 2023
8 points (100.0% liked)

Explain Like I'm Five

14289 readers
1 users here now

Simplifying Complexity, One Answer at a Time!

Rules

  1. Be respectful and inclusive.
  2. No harassment, hate speech, or trolling.
  3. Engage in constructive discussions.
  4. Share relevant content.
  5. Follow guidelines and moderators' instructions.
  6. Use appropriate language and tone.
  7. Report violations.
  8. Foster a continuous learning environment.

founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] Zardoz@lemmy.world 1 points 1 year ago

Reverse engineering is more about understanding how a piece of software does something so you can better work with it, or make your own version of it. Typically requires a lot of time studying it, and usually goes hand in hand with decompiling. But decompiled source isnt the cleanest and doesn't give you the exact same code the devs have. It only gives you the low level order of operations.

Most of the time, knowing why requires understanding all the code from an architecture perspective, which typically requires being part of the internal decision making. You won't get that unless you have the actual source code with good comments and documentation. All of which would be stripped out during compilation.

Whenever I reverse engineer something at work is because it is usually a super old 3rd party software that's out of support, and I need to see how it's performing some task. I'm never able to get the context of why they do it a certain way but I do get the how of it