//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// Parameters:
//
//   float4 DepthPlanes;
//   sampler2D Depth_RT;
//   float4 LightAtt;
//   float4 LightColor;
//   float4 LightColorEnd;
//   sampler2D LightMapSampler;
//   float4 LightPlanes;
//   float4 LightPos;
//   float4 LightRange;
//   sampler2D ShadowMapNoiseSampler;
//   sampler2D ShadowMapSampler;
//   row_major float4x4 ShadowMap_Mat;
//   float4 ShadowMap_Params;
//   float4 ShadowMap_Size;
//   row_major float4x4 SpotLight_MatProjector;
//   float Value;
//   row_major float4x4 matViewProjectionInv;
//
//
// Registers:
//
//   Name                   Reg   Size
//   ---------------------- ----- ----
//   matViewProjectionInv   c0       4
//   SpotLight_MatProjector c4       4
//   ShadowMap_Mat          c8       4
//   DepthPlanes            c12      1
//   LightPlanes            c13      1
//   Value                  c14      1
//   LightPos               c15      1
//   LightRange             c16      1
//   LightColor             c17      1
//   LightColorEnd          c18      1
//   LightAtt               c19      1
//   ShadowMap_Size         c20      1
//   ShadowMap_Params       c21      1
//   Depth_RT               s0       1
//   LightMapSampler        s7       1
//   ShadowMapSampler       s10      1
//   ShadowMapNoiseSampler  s11      1
//

    ps_3_0
    def c22, 0.5, 0.500100017, 0.499900013, 1
    def c23, 1.00000095, 10, 5, 0
    def c24, 0.03125, 0.25, 0, 0
    def c25, 1, -1, 0, -0
    def c26, 1, 0, 0.5, -1
def c220, 0, 0, 0.0625, 0
dcl_2d s13

    defi i0, 32, 0, 0, 0
    dcl_texcoord2 v0.xyw
    dcl_2d s0
    dcl_2d s7
    dcl_2d s10
    dcl_2d s11
    rcp r0.x, v0.w
    mul r0.xy, r0.x, v0
    mad r1.xy, r0, c22.x, c22.yzzw
    add r1.z, -r1.y, c22.w
    texld r2, r1.xzzw, s0
    add r0.z, -c13.x, c13.y
    add r0.w, -c12.x, c12.y
    min r1.y, r0.w, r0.z
    add r0.z, r1.y, c13.x
    mul r3, r0.y, c1
    mad r3, r0.x, c0, r3
    mov r0.x, c23.x
    add r0.x, r0.x, -c19.y
    mul r0.y, r0.x, c16.y
    rcp r0.y, r0.y
    mul r1.xy, r1.xzzw, c23.yzzw
    texld_pp r1, r1, s11
    add_pp r1.xy, r1, -c22.x
    mul r1.xy, r1, c20.zwzw
    mul r1.x, r1.x, c22.x
    mov r1.z, c22.x
    mov r4, c26
    mad r5, c20.zzww, r4.xyyx, r4.yxzy
    mad r6, c20.wwzz, r4.ywwy, r4.zyyx
    mov_pp r2.yzw, c26.y
    mov r0.w, c26.y
    rep i0
      mul r1.w, r0.z, r0.w
      mul r4.y, r1.w, c24.x
      mov r7.x, c24.x
      mad r1.w, r1.w, r7.x, c12.x
      rcp r1.w, r1.w
      mul r4.z, r1.w, r4.y
      mad r7, r4.z, c2, r3
      add r7, r7, c3
      rcp r4.z, r7.w
      mul r8.xyz, r4.z, r7
      mad r7.xyz, r7, -r4.z, c15
      mul r9, r8.y, c5
      mad r9, r8.x, c4, r9
      mad r9, r8.z, c6, r9
      add r9, r9, c7
      rcp r4.z, r9.w
      mad r10.xy, r9, r4.z, c22.w
      mad r10.zw, r9.xyxy, -r4.z, c22.w
      mad r1.w, r4.y, -r1.w, r2.x
      dp3 r4.y, r7, r7
      rsq r4.y, r4.y
      rcp r4.y, r4.y
      mov r7.y, c16.y
      mad r4.y, r7.y, -c19.y, r4.y
      cmp r4.y, r4.y, -r4.y, -c26.y
      mad r4.y, c16.y, r0.x, r4.y
      mul_pp r4.z, r0.y, r4.y
      mul r7, r8.y, c9
      mad r7, r8.x, c8, r7
      mad r7, r8.z, c10, r7
      add r7, r7, c11
      mul r7.xy, r7, c22.x
      rcp r7.w, r7.w
      mad r8.xy, r7, r7.w, r1.xzzw
      mad r8.z, r1.y, c22.x, -r8.y
      mad r7.x, r7.z, r7.w, -c21.x
      add r11, r8.xzxz, c26.zxyx
      mul r7.yz, r11.xxyw, c20.xxyw
      frc r7.yz, r7
      texld_pp r12, r11, s10
      add r8.w, r8.x, c22.x
      add r8.yw, r5.xxzy, r8.xwzz
      texld_pp r13, r8.ywzw, s10
      add r8.yw, r5.xzzw, r11.xzzw
      texld_pp r14, r8.ywzw, s10
      add r8.yw, r11.xxzy, c20.xzzw
      texld_pp r15, r8.ywzw, s10
      add r8.yw, r11.xxzy, -c20.xzzw
      texld_pp r16, r8.ywzw, s10
      add r8.yw, r6.xxzy, r11.xzzw
      texld_pp r17, r8.ywzw, s10
      add r8.xy, r8.xzzw, c26.zyzw
      add r8.xy, r6.zwzw, r8
      texld_pp r8, r8, s10
      mad r11, c20.zwzw, r4.wxxw, r11.xyxy
      texld_pp r18, r11, s10
      texld_pp r11, r11.zwzw, s10
      mov_pp r12.y, r12.x
      mov_pp r12.x, r14.x
      mov_pp r12.z, r16.x
      mov_pp r12.w, r8.x
      add r8, -r7.x, r12.yxzw
      cmp_pp r14, r8, c26.x, c26.y
      mov_pp r13.y, r15.x
      mov_pp r13.z, r17.x
      mov_pp r13.w, r12.y
      add r15, -r7.x, r13
      cmp_pp r15, r15, c26.x, c26.y
      cmp_pp r8, r8, -c26.x, -c26.y
      add r8, r8, r15
      mad_pp r8, r7.y, r8, r14
      mov_pp r14.xz, r18.x
      mov_pp r14.yw, r13.z
      add r13, -r7.x, r14
      mov_pp r12.y, r11.x
      add r7.xw, -r7.x, r12.xyzy
      cmp_pp r7.xw, r7, c26.x, c26.y
      cmp_pp r11, r13, c25.xxyy, c25.zzww
      add r7.xw, r7, r11.zyzw
      mad_pp r11.xz, r7.y, r7.wyxw, r11.yyxw
      mov_pp r12.xyz, r8.xzww
      mov_pp r12.w, r11.x
      mov_pp r11.xyw, r8.ywzx
      lrp_pp r8, r7.z, r11, r12
      dp4_pp r7.x, r8, c24.y
      max_pp r8.x, c19.x, r7.x
      add_sat_pp r7.x, r8.x, c21.w
      add r7.y, r9.w, r9.w
      rcp r7.y, r7.y
      mad r7.yz, r9.xxyw, r7.y, c22.x
      texld_pp r8, r7.yzzw, s7
      mov_sat_pp r7.y, r4.z
      mul r7.x, r7.y, r7.x
      mul r7.xyz, r8, r7.x
      cmp r7.xyz, r1.w, r7, c26.y
      cmp r7.xyz, r10.w, r7, c26.y
      cmp r7.xyz, r10.y, r7, c26.y
      cmp r7.xyz, r10.z, r7, c26.y
      cmp r7.xyz, r10.x, r7, c26.y
      cmp r7.xyz, -r9.z, c26.y, r7
      mad_pp r1.w, r4.y, -r0.y, c22.w
      mul r8.xyz, r1.w, c18
      mad r8.xyz, c17, r4.z, r8
      mad_pp r2.yzw, r7.xxyz, r8.xxyz, r2
      add r0.w, r0.w, c22.w
    endrep
    mul_pp r0.xyz, r2.yzww, c14.x
    mul_pp oC0.xyz, r0, c24.x
    mov_pp oC0.w, c26.y

// approximately 139 instruction slots used (12 texture, 127 arithmetic)
 
