• 0 Posts
  • 192 Comments
Joined 1 year ago
cake
Cake day: June 11th, 2023

help-circle

  • The general difference is that you lose out on metadata - names, comments and organization that helps the source code in whatever programming language make sense, but which is not needed to actually execute the desired behavior on your CPU. Usually stuff like sensible names for bits of your code - functions/reusable logic, storage locations for “health” or “armor” or “current powerup”, movement states, types of objects etc.

    However, most of these are just another kind of number to the computer itself, so a lot of compilation processes strip a lot of this information. You could still reverse engineer it, but you’re missing context (like all those names) from the original code and that makes the work potentially pretty difficult. Bear in mind that reading actual original source code is sometimes cryptic enough, then compare “if player is dead, show game over screen” to if (sdfdfgsdfg == jgdfg) { lkghku(); } because the “decompiler” has to invent some kind of name for everything that’s missing. Now you have to deal with thousands of jfdsghklgs, and figure out what it all means.










  • amio@kbin.socialtoMemes@lemmy.ml6÷2(1+2)
    link
    fedilink
    arrow-up
    9
    ·
    edit-2
    1 year ago

    Forgot the algebra using fruit emoji or whatever the fuck.

    Bonus points for the stuff where suddenly one of the symbols has changed and it’s “supposedly” 1/2 or 2/3 etc. of a banana now, without that symbol having been defined.