If I understand you correctly, you have the previous image as a texture, right? If so, then it should be pretty easy to vary the intensity of the light using a pixel shader. You just need to get the intensity of the image:
float4 PreviousImage = tex2d(previousImage, In.UV);
Then you can calculate the intensity, using something like this:
float Luminosity = (0.2126* PreviousImage.r) + (0.7152* PreviousImage.g) + (0.0722* PreviousImage.b);
Then just use that to modulate your texture:
float4 OutColour = tex2d(overlayImage, In.UV) * float4(1, 1, 1, Luminosity);
(Note: My HLSL is very rusty and untested, so this might not be exactly right, but it should be about right :) )