If you really want to mod, you'll probably want to learn how to use a debugger. I believe I once used Borland Turbo Debugger back in the day for some 16-bit stuff, and found it to be quite good. I vaguely remember it working similar to how OllyDbg works (which is a 32-bit debugger I've used with Outpost 2 stuff). You'd need to know assembly though, and it would probably take you a rather long time to get a foothold on even something simple.
If you do play around with it, and feel a bit lost, and looking up assembly opcodes isn't getting you very far, maybe trying reading about the C ABI (Application Binary Interface). You can google for it (but remember it's platform specific, and sometimes a bit compiler specific too), and it will describe things like calling conventions, and generally give you a better sense of how C code would translate into assembly code. That, along with knowing a handful of opcodes would help you make sense of function call sequences. Once you get a feel for that, you might be able to start figuring out what a few simple functions do.
Working on a rewrite is probably a bit easier, but still a rather large task. It's also a bit more open ended, so it can be hard to know what to do if you don't have a plan.
Either way, you're bound to learn something by just making an attempt.