reverse-engineering
Reverse engineering
Read the real thing. Instructions, bytes, data files, and observed runtime behaviour are the specification; decompiler output, names, wikis, and memory are hypotheses. Work on authorised targets the user owns or may examine. Keep the original untouched and analyse copies.
Frame the question
Turn the request into the specific questions it needs answered and the evidence each answer requires. "How does the boss AI choose attacks" needs the decision function and its inputs. "What format is this file" needs a parser that accepts every sample. Note the stopping condition. Record the target's path, size, SHA-256, build, and tool versions before starting.
For reconstructions and ports, agree the bar first: byte-identical, behaviourally equivalent, or working on a new platform. Each has a different cost. Byte matching needs the original compiler, which may not be legally obtainable. Offer the smallest milestone that proves progress, such as booting to the main menu, and say how it will be demonstrated.
Take free information first
Before deep static analysis, look for what the target already gives away: