Pero leyendo memoria del proceso simplemente no puedes añadir un overlay. Tienes que MODIFICAR las funciones de pintado
No, ése es el por qué del overlay, tener tu propia ventana usando DX, leer memoria del exe y pintar en todo en tu propio programa (DX), con lo cual, la única manera de detectar éso es mirando los procesos o sacando una screen, que a su vez ambas maneras son ilegales.