//
// Generated by Microsoft (R) D3DX9 Shader Compiler 9.15.779.0000
//
// Parameters:
//
//   float4 EdgeSampleOffsets[2];
//   float2 InvRandomAngleTextureSize;
//   sampler2D RandomAngleTexture;
//   float4 RefiningSampleOffsets[2];
//   sampler2D SceneColorTexture;
//   float4 ScreenPositionScaleBias;
//   float4x4 ScreenToShadowMatrix;
//   sampler2D ShadowDepthTexture;
//
//
// Registers:
//
//   Name                      Reg   Size
//   ------------------------- ----- ----
//   InvRandomAngleTextureSize c0       1
//   ScreenPositionScaleBias   c1       1
//   ScreenToShadowMatrix      c2       4
//   RefiningSampleOffsets     c6       2
//   EdgeSampleOffsets         c8       2
//   SceneColorTexture         s0       1
//   ShadowDepthTexture        s1       1
//   RandomAngleTexture        s2       1
//

    ps_3_0
    def c10, 0.999000013, 2, -1, -0
    def c11, 0.25, 9.99999975e-005, -0.999899983, 0.699999988
  def c200, 0.5, 0, 0.0625, 0
  dcl_2d s13
    dcl_texcoord v0.xyw
    dcl vPos.xy
    dcl_2d s0
    dcl_2d s1
    dcl_2d s2
    rcp r0.w, v0.w
    mul r1.xy, r0.w, v0
    mad r0.xy, r1, c1, c1.wzzw
    texld_pp r0, r0, s0
    mul r0.xy, r1, r0.w
    mul r1, r0.y, c3
  texldl r16, c200.z, s13
  add r16.y, r0.w, -r16.y
  mul r16.x, r16.x, r16.y
  add r0.x, r0.x, -r16.x
    mad r1, c2, r0.x, r1
    mad r0, c4, r0.w, r1
    add r2, r0, c5
    rcp r6.w, r2.w
    min r4.z, r2.z, c10.x
    mov r3.z, r4.z
    mul r0.xy, vPos, c0
    texld r0, r0, s2
    mad_pp r0.xy, c10.y, r0, c10.z
    mov_pp r0.zw, -r0.y
    mul r5, r2.xyxy, r6.w
    mad r1, r0.xwxw, c9.xxzz, r5
    mad r5, r0.xzxz, c8.xxzz, r5
    mad_pp r1, r0.yxyx, c9.yyww, r1
    mad_pp r5, r0.yxyx, c8.yyww, r5
    mov_pp r0.xy, r1
    mul r4.xyw, r5.xyzx, -c10.zzzw
    texldl_pp r4, r4, s1
    mul r3.xyw, r5.zwzx, -c10.zzzw
    texldl_pp r5, r3, s1
    add_pp r1.y, r4.x, r5.x
    mov r0.zw, r3
    texldl_pp r3, r0, s1
    add_pp r2.w, r1.y, r3.x
    mov_pp r0.xy, r1.zwzw
    texldl_pp r1, r0, s1
    add_pp r0.x, r2.w, r1.x
    mad_pp r1.w, r0.x, c11.x, c11.z
    mad_pp r0.y, r0.x, -c11.x, c11.y
    cmp r1.w, r1.w, -c10.w, -c10.z
    cmp r0.y, r0.y, -c10.w, -c10.z
    mul r0.y, r1.w, r0.y
    mul_pp r5.w, r0.x, c11.x
    if_ne r0.y, -r0.y
      mov r2.zw, r0
      mov r3.zw, r2
      mov r1.zw, r3
      mad_pp r4, r2.xyxy, r6.w, c7
      mov r0.zw, r1
      mov_pp r0.xy, r4.zwzw
      texldl_pp r0, r0, s1
      mov_pp r1.xy, r4
      texldl_pp r1, r1, s1
      mad_pp r4, r2.xyxy, r6.w, c6
      mov_pp r3.xy, r4.zwzw
      texldl_pp r3, r3, s1
      mov_pp r2.xy, r4
      texldl_pp r2, r2, s1
      add_pp r0.w, r3.x, r2.x
      add_pp r0.w, r1.x, r0.w
      add_pp r0.w, r0.x, r0.w
      mad_pp r0.w, r0.w, c11.x, -r5.w
      mad_pp r0.z, r0.w, c11.w, r5.w
    else
      mov_pp r0.z, r5.w
    endif
    mul_pp r0.w, r0.z, r0.z
    mul_pp oC0, r0.z, r0.w

// approximately 74 instruction slots used (18 texture, 56 arithmetic)
 

