There appears to be a linker bug in the VC++ v8 linker that prevents symbols with absolute addresses being linked in DLL builds. This means, for example, that LEA instructions of the general form:
lea rax,[rax+symbol]
cannot be used for DLL builds. The following general form has to be used instead:
lea rcx,[symbol wrt rip] lea rax,[rax+rcx]
This limitation may also cause problems with other instructions that use absolute addresses.