//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// Parameters:
//
//   float3 FalloffParameters;
//   float4 LightPosition;
//   float4 MinZ_MaxZRatio;
//   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
//   ScreenToWorld           c8       4
//   ScreenToShadowMatrix    c12      4
//   SampleOffsets           c16      2
//   LightPosition           c18      1
//   FalloffParameters       c19      1
//   SceneColorTexture       s0       1
//   ShadowDepthTexture      s1       1
//

    ps_3_0
    def c3, 0, 1, 0.999000013, 0.25
    dcl_texcoord v0.xyw
    dcl_2d s0
    dcl_2d s1

def c220, 0, 1, 0.0625, 0.5
dcl_2d s15


// Unreal Engine shadow fix inserted with DarkStarSword's shadertool.py:
// shadertool.py -I ../../.. --auto-fix-unreal-shadows --stereo-sampler-ps=s15 -f 3EC0AABE.txt
texldl r31, c220.z, s15
mov r6.xyw, v0
add r31.w, r6.w, -r31.y
mad r6.x, r31.w, r31.x, r6.x

    rcp r0.x, r6.w
    mul r0.xy, r0.x, r6
    mad r1.xy, r0, c1, c1.wzzw
    mov r1.zw, c3.x
    texldl r1, r1, s0
    mov r1.y, c3.y
    add r0.z, r1.y, -c2.y
    add r0.z, -r0.z, r1.w
    rcp r0.z, r0.z
    mul r0.z, r0.z, -c2.x
    mul r0.xy, r0.z, r0
    mul r2, r0.y, c13

// Unreal Engine shadow fix inserted with DarkStarSword's shadertool.py:
// shadertool.py -I ../../.. --auto-fix-unreal-shadows --stereo-sampler-ps=s15 -f 3EC0AABE.txt
add r31.w, r0.z, -r31.y
mad r0.x, -r31.w, r31.x, r0.x

    mad r2, c12, r0.x, r2
    mad r2, c14, r0.z, r2
    add r2, r2, c15
    rcp r0.w, r2.w
    mad_pp r3, r2.xyxy, r0.w, c16
    mad_pp r4, r2.xyxy, r0.w, c17.zwxy
    min r5.z, r2.z, c3.z
    mad r5.xyw, r3.xyzx, c3.yyzx, c3.xxzy
    mad r2.xyw, r3.zwzx, c3.yyzx, c3.xxzy
    texldp_pp r3, r5, s1
    mov r2.z, r5.z
    texldp r5, r2, s1
    add_pp r0.w, r3.x, r5.x
    mov_pp r2.xy, r4.zwzw
    texldp r3, r2, s1
    mov r4.zw, r2
    texldp r2, r4, s1
    add_pp r0.w, r0.w, r3.x
    add_pp r0.w, r2.x, r0.w
    mul_pp r0.w, r0.w, c3.w
    mul r0.w, r0.w, r0.w
    mul r1.xzw, r0.y, c9.xyyz
    mad r1.xzw, c8.xyyz, r0.x, r1
    mad r0.xyz, c10, r0.z, r1.xzww
    add r0.xyz, r0, c11
    add r0.xyz, -r0, c18
    mul r0.xyz, r0, c18.w
    dp3 r0.x, r0, r0
    rsq r0.x, r0.x
    rcp r0.x, r0.x
    mad r0.x, r0.x, c19.y, c19.z
    max r1.x, r0.x, c3.x
    mad r0.x, r1.x, -r1.x, c3.y
    max r1.x, r0.x, c3.x
    pow_pp r0.x, r1.x, c19.x
    add r1, -r1.y, c0
    mad r1, r0.x, r1, c3.y
    add r2, -r1, c3.y
    mad oC0, r0.w, r2, r1

// approximately 54 instruction slots used (6 texture, 48 arithmetic)
