Вы можете использовать утилиту REBASE, которая поставляется с платформой SDK, и с Visual Studio, я думаю, установить базовые адреса целой связки DLLS, загруженной приложением
Вы предоставляете REBASE список библиотек DLL, составляющих вашу программу, не включая системные DLL, затем она выполняет фиктивную загрузку всех библиотек DLL и присваивает им новые базовые адреса.
Это может быть выполнено как часть заключительного шага сборки.
Есть статья доктора Доббса о перебазировании здесь и статья Microsoft о перебазировании в целом здесь