//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// Parameters:
//
//   float3 FalloffParameters;
//   float4 LightPosition;
//   float4 MinZ_MaxZRatio;
//   float NvStereoEnabled;
//   sampler2D NvStereoFixTexture;
//   float4 SampleOffsets[2];
//   sampler2D SceneColorTexture;
//   float4 ScreenPositionScaleBias;
//   float4x4 ScreenToShadowMatrix;
//   float4x4 ScreenToWorld;
//   sampler2D ShadowDepthTexture;
//   float4 ShadowModulateColor;
//
//
// Registers:
//
//   Name                    Reg   Size
//   ----------------------- ----- ----
//   ShadowModulateColor     c0       1
//   ScreenPositionScaleBias c1       1
//   MinZ_MaxZRatio          c2       1
//   NvStereoEnabled         c3       1
//   ScreenToWorld           c8       4
//   ScreenToShadowMatrix    c12      4
//   SampleOffsets           c16      2
//   LightPosition           c18      1
//   FalloffParameters       c19      1
//   SceneColorTexture       s0       1
//   NvStereoFixTexture      s1       1
//   ShadowDepthTexture      s2       1
//

    ps_3_0
    def c4, 0.0625, 0, 1, 0.999000013
    def c5, 0.25, 0, 0, 0
  def c200, 0.5, 0, 0.0625, 0
  dcl_2d s13
    dcl_texcoord v0.xyw
    dcl_2d s0
    dcl_2d s1
    dcl_2d s2
    abs r0.x, c3.x
    if_ne c3.x, -c3.x
      texld r1, c4, s1
      add r0.y, -r1.y, v0.w
      mad r1.x, r1.x, r0.y, v0.x
      mov r1.yz, v0.xyww
    else
      mov r1.xyz, c4.y
       endif
				   mov r16.xyw, v0
    texldl r11, c200.z, s13
    add r11.y, r16.w, -r11.y
    mul r11.x, r11.x, r11.y
    add r16.x, r16.x, r11.x
    cmp r0.xyz, -r0.x, r16.xyww, r1
    rcp r0.z, r0.z
    mul r0.xy, r0.z, r0
    mad r0.xy, r0, c1, c1.wzzw
    mov r0.zw, c4.y
    texldl r0, r0, s0
    mov r0.z, c4.z
    add r0.x, r0.z, -c2.y
    add r0.x, -r0.x, r0.w
    rcp r0.x, r0.x
    mul r0.x, r0.x, -c2.x
    rcp r0.y, r16.w
    mul r0.yw, r0.y, r16.xxzy
    mul r0.yw, r0.x, r0
    mul r1, r0.w, c13
  texldl r16, c200.z, s13
  add r16.y, r0.x, -r16.y
  mul r16.x, r16.x, r16.y
  add r0.y, r0.y, -r16.x
    mad r1, c12, r0.y, r1
    mad r1, c14, r0.x, r1
    add r1, r1, c15
    rcp r1.w, r1.w
    min r2.z, r1.z, c4.w
    mad_pp r3, r1.xyxy, r1.w, c16
    mad r2.xyw, r3.xyzx, c4.zzzy, c4.yyzz
    texldp_pp r4, r2, s2
    mad r2.xyw, r3.zwzx, c4.zzzy, c4.yyzz
    texldp r3, r2, s2
    add_pp r1.z, r3.x, r4.x
    mad_pp r3, r1.xyxy, r1.w, c17
    mov_pp r2.xy, r3
    texldp r4, r2, s2
    add_pp r1.x, r1.z, r4.x
    mov_pp r2.xy, r3.zwzw
    texldp r2, r2, s2
    add_pp r1.x, r1.x, r2.x
    mul_pp r1.x, r1.x, c5.x
    mul r1.yzw, r0.w, c9.xxyz
    mad r1.yzw, c8.xxyz, r0.y, r1
    mad r0.xyw, c10.xyzz, r0.x, r1.yzzw
    add r0.xyw, r0, c11.xyzz
    add r0.xyw, -r0, c18.xyzz
    mul r0.xyw, r0, c18.w
    dp3 r0.x, r0.xyww, r0.xyww
    rsq r0.x, r0.x
    rcp r0.x, r0.x
    mad r0.x, r0.x, c19.y, c19.z
    max r1.y, r0.x, c4.y
    mad r0.x, r1.y, -r1.y, c4.z
    max r1.y, r0.x, c4.y
    pow_pp r0.x, r1.y, c19.x
    add r2, -r0.z, c0
    mad r0, r0.x, r2, c4.z
    mul r1.x, r1.x, r1.x
    add r2, -r0, c4.z
    mad oC0, r1.x, r2, r0

// approximately 67 instruction slots used (7 texture, 60 arithmetic)
 

