//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// Parameters:
//
//   float4 LghtAttn0;
//   float4 LghtPos0;
//   float cameraFar;
//   float cameraFarMinusNear;
//   float cameraNearFar;
//   float3 eyePositionWS;
//   float g_BlobFallOff;
//   sampler2D g_GBufferDepth;
//   float4 g_PixelPerfectScreenOffset;
//   float g_RenderRatio;
//
//
// Registers:
//
//   Name                       Reg   Size
//   -------------------------- ----- ----
//   eyePositionWS              c0       1
//   cameraFar                  c1       1
//   cameraNearFar              c2       1
//   cameraFarMinusNear         c3       1
//   g_RenderRatio              c4       1
//   LghtPos0                   c5       1
//   LghtAttn0                  c6       1
//   g_PixelPerfectScreenOffset c7       1
//   g_BlobFallOff              c8       1
//   g_GBufferDepth             s0       1
//

    ps_3_0
    def c9, 0.5, -0.5, -4, 1
def c220, 1, 0.5, 0.0625, 0.83
dcl_2d s14
dcl vPos.xy
    dcl_texcoord v0.xyw  // IN<4,5,7>
    dcl_texcoord1 v1.xyz  // IN<8,9,10>
    dcl_2d s0

#line 1857 "pp_def_omni.cgfx"
    rcp r0.x, v0.w  // ::oow<0>
    mul r0.yz, r0.x, v0.xxyw  // ::uvProj<0,1>
    mul_pp r1.xyz, r0.x, v1  // IN<8,9,10>

#line 1864
    mov r2.xy, c9
    mad r0.xy, r0.yzzw, r2, c7
    add r0.xy, r0, c9.x  // ::uv<0,1>

#line 702
    mul r0.xy, r0, c4.x  // FetchGeom::uv<0,1>

    mov r11.xy, vPos.xy
    rcp r11.z, c210.x
    rcp r11.w, c210.y
    mul r11.xy, r11.xy, r11.zw
    mul r11.zw, r11.zw, c220.yy
    add r0.xy, r11.xy, r11.zw
	
#line 706
    texld r0, r0, s0  // getDepth::depthSample<0>

#line 231 "incCommon.cgfx"
    mov r2.x, c3.x  // ::cameraFarMinusNear<0>
    mad r0.x, r0.x, r2.x, -c1.x
    rcp r0.x, r0.x
    mul r0.x, r0.x, c2.x  // ::viewSpaceZ<0>

#line 710 "pp_def_omni.cgfx"
    mad r0.xyz, r0.x, r1, c0  // ::geom<0,1,2>

//Mike_ar69: Stereo Correct
mov r21.xyz, r0.xyz
mov r21.w, c220.x

mul r22, r21.y, c205
mad r22, c204, r21.x, r22
mad r22, c206, r21.z, r22
add r22, c207, r22
	
texldl r24, c220.z, s14
add r24.y, -r22.z, -r24.y
mul r24.x, r24.x, r24.y
rcp r25.x, c100.x
mul r24.x, r24.x, r25.x //c100.x //c220.w
add r22.x, r22.x, -r24.x

rcp r25.w, r22.w
mul r22, r22, r25.w

mul r21, r22.y, c201
mad r21, c200, r22.x, r21
mad r21, c202, r22.z, r21
add r21, c203, r21

rcp r25.w, r21.w
mul r21.xyz, r21.xyz, r25.w

mov r0.xyz, r21.xyz

#line 1872
    add r0.xyz, -r0, c5  // ::lightVec<0,1,2>
    dp3 r0.x, r0, r0
    rsq r0.x, r0.x
    mul r0.y, r0.x, r0.z  // ::lightVecN<2>
    rcp r0.x, r0.x  // ::d<0>

#line 1878
    mad_sat r0.y, r0.y, -c9.z, c9.w  // ::dup<0>
    rcp r0.z, c6.x
    mul_sat r0.x, r0.z, r0.x
    pow r1.x, r0.x, c8.x  // ::distAttn<0>
    add r0.x, r0.y, -r1.x
    add_pp r0.y, -r0.x, c9.w
    cmp_pp oC0.xyz, r0.x, r0.y, c9.w  // ::mainFPStencilBlob<0,1,2>
    mov_pp oC0.w, c9.w  // ::mainFPStencilBlob<3>

// approximately 28 instruction slots used (1 texture, 27 arithmetic)
 