Note that there is a hell of a difference between changing existing instructions or even managing to squeeze a minor fix into some broken logic, and implementing new logic entirely.
There's a whole lot more reverse-engineering required to understand the working input handling, followed by more reverse-engineering to understand the broken input handling. The code might also be missing altogether if it was just ifdef'd out at compile-time or lacked initialization against the Windows input handling.
Trying to extend the input handling that never had this handling, unless the original is 50% NOPs, mean writing a new implementation at the end, and having the old implementation jump out and back.
Sure, it's possible, but on an entirely different level than patching conditions in place like done here. I feel like being disappointed at this is like going through a hello-world tutorial for a language and end up disappointed that it didn't teach you to write a fully functioning game.