First of all, I wanted to say that I'm a big fan of Kroah's work.
The amount of detail on this website is astonishing and a real pleasure to read.
I'm starting this thread to ask if people are interested to do the complete reverse engineering of the MS-DOS port of « Fire & Ice: The Daring Adventures of Cool Coyote » (1993, Graftgold Ltd. (dev.) and Renegade Software (pub.)).
I've read somewhere on this forum that Kroah considers reverse engineering of DOS application to be hard, and to be honest it's true. This is why I don't want to be alone on this journey.
I'm a computer scientist, with little x86 assembly knowledge. I can write assembly, but reading assembly I haven't written is not easy (yet).
Still, here are some clues I've figured out to help you out helping me reverse engineering this little gem.
- — Everything is packed into a single .EXE that has been recursively compressed 3 times using LZEXE. I don't know why, maybe it was an anti-reverse-engineering technique at the time.
— INT 21h has been replaced by INT 3h. Every time you stumble upon Interrupt 3, don't be fooled, it's a disguised Interrupt 21. I haven't discovered this on my own, so I don't have the technical vocabulary to explain it better. Some friend figured it out for me while looking at the uncompressed binary thou IDA Pro.
- Code: Select all
$ sha256sum fire.exe
ca0e8e19074351bf3ba6ca69c537220ec4a75077b376ecd458a92e4e4255e469 fire.exe
$ du -b fire.exe
1021763 fire.exe