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

    ps_3_0
    def c14, 0.999000013, 2, -1, -0
    def c15, 0.25, 0, 9.99999975e-005, -0.999899983
    def c16, 0.0833333358, 0.699999988, 0, 0
  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 r0.xy, r0.w, v0
    mad r1.xy, r0, c1, c1.wzzw
    texld_pp r1, r1, s0
    mul r1.xy, r0, r1.w
    mul r0.xy, vPos, c0
    texld r0, r0, s2
    mul r2, r1.y, c9
  texldl r16, c200.z, s13
  add r16.y, r1.w, -r16.y
  mul r16.x, r16.x, r16.y
  add r1.x, r1.x, -r16.x
    mad r2, c8, r1.x, r2
    mad r1, c10, r1.w, r2
    add r3, r1, c11
    mad_pp r0.xy, c14.y, r0, c14.z
    rcp r3.w, r3.w
    mov_pp r0.zw, -r0.y
    mul r1, r3.xyxy, r3.w
    mad r2, r0.xwxw, c13.xxzz, r1
    min r6.y, r3.z, c14.x
    mad_pp r4, r0.yxyx, c13.yyww, r2
    texld r2, r4, s1
    texld r4, r4.zwzw, s1
    mov r2.y, r4.x
    mad r1, r0.xzxz, c12.xxzz, r1
    add r2.xy, r6.y, -r2
    mad_pp r0, r0.yxyx, c12.yyww, r1
    texld r1, r0.zwzw, s1
    texld r0, r0, s1
    mov r0.y, r1.x
    cmp_pp r1.xy, r2, -c14.w, -c14.z
    add r0.xy, r6.y, -r0
    dp2add_pp r0.w, r1, c15.x, c15.y
    cmp_pp r0.xy, r0, -c14.w, -c14.z
    dp2add_pp r6.w, r0, c15.x, r0.w
    add_pp r0.w, -r6.w, c15.z
    add_pp r0.z, r6.w, c15.w
    cmp_pp r0.w, r0.w, -c14.w, -c14.z
    cmp_pp r0.z, r0.z, -c14.w, -c14.z
    mul r0.w, r0.w, r0.z
    if_ne r0.w, -r0.w
      mad_pp r0, r3.xyxy, r3.w, c7
      mul_pp r1, r0.zwxx, -c14.zzww
      texldl r1, r1, s1
      mov r0.w, r1.x
      mul_pp r1, r0.xyxx, -c14.zzww
      texldl r2, r1, s1
      mad_pp r4, r3.xyxy, r3.w, c2
      mul_pp r1, r4.xyxx, -c14.zzww
      texldl r1, r1, s1
      mul_pp r4, r4.zwxx, -c14.zzww
      texldl r5, r4, s1
      mad_pp r4, r3.xyxy, r3.w, c3
      mov r1.y, r5.x
      mul_pp r5, r4.xyxx, -c14.zzww
      texldl r5, r5, s1
      mul_pp r4, r4.zwxx, -c14.zzww
      texldl r4, r4, s1
      mov r1.z, r5.x
      mov r1.w, r4.x
      mov r0.z, r2.x
      add r1, r6.y, -r1
      cmp_pp r2, r1, -c14.w, -c14.z
      mad_pp r1, r3.xyxy, r3.w, c4
      dp4_pp r6.z, r2, c16.x
      mul_pp r2, r1.zwxx, -c14.zzww
      texldl r4, r2, s1
      mad_pp r5, r3.xyxy, r3.w, c6
      mul_pp r2, r5.zwxx, -c14.zzww
      texldl r2, r2, s1
      mul_pp r5, r5.xyxx, -c14.zzww
      texldl r5, r5, s1
      mov r0.x, r5.x
      mul_pp r1, r1.xyxx, -c14.zzww
      texldl r1, r1, s1
      mad_pp r3, r3.xyxy, r3.w, c5
      mov r1.y, r4.x
      mul_pp r4, r3.xyxx, -c14.zzww
      texldl r4, r4, s1
      mul_pp r3, r3.zwxx, -c14.zzww
      texldl r3, r3, s1
      mov r1.z, r4.x
      mov r1.w, r3.x
      mov r0.y, r2.x
      add r1, r6.y, -r1
      add r0, r6.y, -r0
      cmp_pp r1, r1, -c14.w, -c14.z
      cmp_pp r0, r0, -c14.w, -c14.z
      dp4_pp r1.w, r1, c16.x
      dp4_pp r0.z, r0, c16.x
      add_pp r0.w, r6.z, r1.w
      add_pp r0.w, r0.z, r0.w
      add_pp r0.w, -r6.w, r0.w
      mad_pp r0.z, r0.w, c16.y, r6.w
    else
      mov_pp r0.z, r6.w
    endif
    mul_pp r0.w, r0.z, r0.z
    mul_pp oC0, r0.z, r0.w

// approximately 112 instruction slots used (30 texture, 82 arithmetic)
 

