//
// Generated by Microsoft (R) HLSL Shader Compiler 9.27.952.3022
//
// Parameters:
//
//   float3 FalloffParameters;
//   float4 LightPosition;
//   float4 MinZ_MaxZRatio;
//   float2 OverDarkeningFactor;
//   sampler2D SceneColorTexture;
//   float4 ScreenPositionScaleBias;
//   float4x4 ScreenToShadowMatrix;
//   float4x4 ScreenToWorld;
//   float2 ShadowBufferSize;
//   sampler2D ShadowDepthTexture;
//   float4 ShadowModulateColor;
//
//
// Registers:
//
//   Name                    Reg   Size
//   ----------------------- ----- ----
//   ShadowModulateColor     c0       1
//   ScreenPositionScaleBias c1       1
//   MinZ_MaxZRatio          c2       1
//   ScreenToWorld           c3       4
//   ScreenToShadowMatrix    c7       4
//   LightPosition           c11      1
//   FalloffParameters       c12      1
//   ShadowBufferSize        c13      1
//   OverDarkeningFactor     c14      1
//   SceneColorTexture       s0       1
//   ShadowDepthTexture      s1       1
//

    ps_3_0
    def c15, -0.999000013, -0.5, 0.5, -1.44269502
    def c16, 1, 0.999998987, -1, 0
    def c17, 0.368247509, -9.99999997e-007, -19.9315681, 0
    dcl_texcoord v0.xyw
    dcl_texcoord1 v1
    dcl_2d s0
    dcl_2d s1
    rcp r0.x, v0.w
    mul r0.xy, r0.x, v0
    mad r0.zw, r0.xyxy, c1.xyxy, c1.xywz
	rcp r10.x, v1.w
    mul r10.xy, r10.x, v1
    mad r10.zw, r10.xyxy, c1.xyxy, c1.xywz
    //mov r0,r10
    texld_pp r1, r10.zwzw, s0
    mad r0.z, r1.w, c2.z, -c2.w
    rcp_pp r0.z, r0.z
    mul r0.xy, r0.z, r0
    mul r1, r0.y, c8
    mad r1, c7, r0.x, r1
    mad r1, c9, r0.z, r1
    add r1, r1, c10
    rcp r0.w, r1.w
    mul r2, r0.w, r1.xyxy
    mul r2, r2, c13.xyxy
    frc r3, r2.zwzw
    add r2, r2, -r3
    add r4, r2.zwzw, c15.yzzz
    add r2, r2, c15.zyyy
    rcp r1.x, c13.x
    rcp r1.y, c13.y
    mul r3.xy, r1, r4
    mul r4.xy, r1, r4.zwzw
    texld r4, r4, s1
    texld r5, r3, s1
    mul r2.zw, r1.xyxy, r2
    mul r1.xy, r1, r2
    texld r6, r1, s1
    lrp r0.w, r3.w, r4.x, r6.x
    texld r2, r2.zwzw, s1
    lrp r1.x, r3.w, r5.x, r2.x
    lrp r2.x, r3.z, r0.w, r1.x
    mul r0.w, r1.z, c15.w
    add r1.x, r1.z, c15.x
    exp r0.w, r0.w
    cmp r0.w, r1.x, c17.x, r0.w
    mul r0.w, r0.w, r2.x
    add r1.x, r0_abs.w, c17.y
    log r0.w, r0_abs.w
    cmp r0.w, r1.x, r0.w, c17.z
    mul r0.w, r0.w, c14.x
    exp_pp r0.w, r0.w
    max_sat_pp r1.x, r0.w, c14.y
    mul r0.w, r1.x, r1.x
    mul r1.xyz, r0.y, c4
    mad r1.xyz, c3, r0.x, r1
    mad r0.xyz, c5, r0.z, r1
    add r0.xyz, r0, c6
    add r0.xyz, -r0, c11
    mul r0.xyz, r0, c11.w
    dp3 r0.x, r0, r0
    rsq r0.x, r0.x
    rcp r0.x, r0.x
    mad r0.x, r0.x, c12.y, c12.z
    max r1.x, r0.x, c17.w
    mad r0.xy, r1.x, -r1.x, c16
    log r0.x, r0.x
    cmp r0.x, r0.y, r0.x, c17.z
    mul r0.x, r0.x, c12.x
    exp_pp r0.x, r0.x
    mov r0.z, c16.z
    add r1, r0.z, c0
    mad r1, r0.x, r1, c16.x
    add r2, -r1, c16.x
    mad oC0, r0.w, r2, r1

// approximately 64 instruction slots used (5 texture, 59 arithmetic)
 