Move hotkey config query out of loop
Add Uplay overlay compatibility mode for hotkeys

This disables using shift as modifier and F2 as hotkey, because
the Uplay overlay relies on legacy behavior for GetAsyncKeyState:

"Although the least significant bit of the return value indicates
whether the key has been pressed since the last query, due to the
pre-emptive multitasking nature of Windows, another application can
call GetAsyncKeyState and receive the "recently pressed" bit instead
of your application. The behavior of the least significant bit of
the return value is retained strictly for compatibility with 16-bit
Windows applications (which are non-preemptive) and should not be
relied upon."