Wouldn't a total re-write be the right thing to do instead?
Yes, if you can get the proper requirements. (This does not apply to the current article, since I assume that the requirements for these syscalls, etc. are well described.)
On most business systems, especially one that us written over the course of a few months, the requirements are just as spaghetti as the code, so rewriting the system from scratch might also rewriting the requirements from scratch, which is a monumental task if it already have customers with different configurations.
On a more humorous note, I find it funny that this is today's article on The Daily WTF: Seven Minutes In Heaven
don't allow your users to be admins on their local machines,
Ding ding ding ding ding... whenever anyone came to me for malware-related help with Windows, I make sure that they no longer have admin privileges before I let them back in. Create a separated local admin account for them if necessary, but their everyday web-surfing and mail-reading account should not need admin privileges.
We all agree on the necessity of compromise. We just can't agree on when it's necessary to compromise. -- Larry Wall