Actually I got an idea to stop this possibly.. I just don't know if windows can do it.

What if, when the game is patched the first thing it does after patch is prelink itself and randomizes it's memory address ranges. That way each client would have unique address ranges. This process can be done on Unix and Mac systems..