Get the latest tech news
A blast from the past: Disassembling DOS (2020)
[This nearly-ancient text (along with others from Undocumented DOS and Undocumented Windows) is being presented as a case study in some methodologies of software reverse engineering, applied to mass-market software. Note that this chapter appeared in the 2nd edition of the book, not in the 1st edition.] The previous chapter showed that it possible to discover a lot about a program without resorting to what is often called reverse engineering.
If the previous line of code did an unconditional JMP or (I)RET, and if there are no labels at the current address (i.e., ftab[$1] is empty, indicating that $1 is not the target of a jump, call, or loop), NICEDBG adds $1 to a not_reached array: Similarly, Raymond T. Nimmer's excellent textbook, The Law of Computer Technology notes that "The attempt to alter the expectations of the common purchaser by virtue of a printed form included within the product package is unlikely to be successful." The original MS-DOS (Versions 1.0-3.2) Technical Reference Encyclopedia(1986), one of the few books ever to be subject to a recall from the publisher, made an attempt to provide descriptions, not only of each DOS function's inputs and outputs, but also of its internal operation.
Or read this on Hacker News