//
// 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;
//   float2 ShadowBufferSize;
//   sampler2D ShadowDepthTexture;
//
//
// Registers:
//
//   Name                      Reg   Size
//   ------------------------- ----- ----
//   InvRandomAngleTextureSize c0       1
//   ScreenPositionScaleBias   c1       1
//   ScreenToShadowMatrix      c2       4
//   RefiningSampleOffsets     c6       2
//   EdgeSampleOffsets         c8       2
//   ShadowBufferSize          c10      1
//   SceneColorTexture         s0       1
//   ShadowDepthTexture        s1       1
//   RandomAngleTexture        s2       1
//

    ps_3_0
    def c11, 0.999000013, 2, -1, -0
    def c12, 0.0625, 9.99999975e-005, -0.999899983, 0.25
    def c13, 0.699999988, 0, 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 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.xy, vPos, c0
    texld r1, r1, s2
    mul r2, 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 r2, c2, r0.x, r2
    mad r0, c4, r0.w, r2
    add r0, r0, c5
    mad_pp r3.xy, c11.y, r1, c11.z
    rcp r8.w, r0.w
    mov_pp r3.zw, -r3.y
    mul r4, r0.xyxy, r8.w
    mad r1, r3.xwxw, c9.xxzz, r4
    min r2.z, r0.z, c11.x
    mad_pp r1, r3.yxyx, c9.yyww, r1
    mad r4, r3.xzxz, c8.xxzz, r4
    mov_pp r7.xy, r1.zwzw
    mad_pp r5, r3.yxyx, c8.yyww, r4
    mul r4.xyw, r5.zwzx, -c11.zzzw
    mov r4.z, r2.z
    texldl r3, r4, s1
    add r3, r4.z, -r3
    mul r2.xyw, r5.xyzx, -c11.zzzw
    texldl r2, r2, s1
    add r2, r4.z, -r2
    cmp_pp r3, r3, -c11.w, -c11.z
    cmp_pp r2, r2, -c11.w, -c11.z
    dp4_pp r0.z, r3, c12.x
    dp4_pp r0.w, r2, c12.x
    add_pp r0.w, r0.z, r0.w
    mov r1.zw, r4
    texldl r2, r1, s1
    add r2, r4.z, -r2
    cmp_pp r2, r2, -c11.w, -c11.z
    mov r7.zw, r1
    texldl r1, r7, s1
    add r1, r4.z, -r1
    dp4_pp r0.z, r2, c12.x
    cmp_pp r1, r1, -c11.w, -c11.z
    add_pp r0.w, r0.w, r0.z
    dp4_pp r0.z, r1, c12.x
    add_pp r9.w, r0.w, r0.z
    add_pp r0.w, -r9.w, c12.y
    add_pp r0.z, r9.w, c12.z
    cmp r0.w, r0.w, -c11.w, -c11.z
    cmp r0.z, r0.z, -c11.w, -c11.z
    mul r0.w, r0.w, r0.z
    if_ne r0.w, -r0.w
      mov r5.zw, r7
      mov r1.zw, r5
      mad_pp r2, r0.xyxy, r8.w, c7
      mov r6.zw, r1
      mul r3, r2, c10.xyxy
      frc_pp r3, r3
      mov_pp r6.xy, r2.zwzw
      texldl r6, r6, s1
      add r2.zw, r4.z, -r6.xywx
      add r0.zw, r4.z, -r6.xyyz
      cmp_pp r6.zw, r2, -c11.w, -c11.z
      cmp_pp r2.zw, r0, -c11.w, -c11.z
      mov_pp r1.xy, r2
      texldl r1, r1, s1
      add r1, r4.z, -r1.wxyz
      cmp_pp r6.xy, r1, -c11.w, -c11.z
      mad_pp r0, r0.xyxy, r8.w, c6
      cmp_pp r2.xy, r1.zwzw, -c11.w, -c11.z
      mul r1, r0, c10.xyxy
      frc_pp r1, r1
      mov_pp r5.xy, r0.zwzw
      texldl r8, r5, s1
      add r0.zw, r4.z, -r8.xywx
      cmp_pp r5.zw, r0, -c11.w, -c11.z
      add r0.zw, r4.z, -r8.xyyz
      cmp_pp r0.zw, r0, -c11.w, -c11.z
      mov_pp r7.xy, r0
      texldl r7, r7, s1
      add r4, r4.z, -r7.wxyz
      cmp_pp r5.xy, r4, -c11.w, -c11.z
      cmp_pp r0.xy, r4.zwzw, -c11.w, -c11.z
      lrp_pp r4, r3.yyww, r2, r6
      lrp_pp r2, r1.yyww, r0, r5
      lrp_pp r0.zw, r3.xyxz, r4.xyyw, r4.xyxz
      lrp_pp r0.xy, r1.xzzw, r2.ywzw, r2.xzzw
      dp4_pp r0.w, r0, c12.w
      add_pp r0.w, -r9.w, r0.w
      mad_pp r0.z, r0.w, c13.x, r9.w
    else
      mov_pp r0.z, r9.w
    endif
    mul_pp r0.w, r0.z, r0.z
    mul_pp oC0, r0.z, r0.w

// approximately 104 instruction slots used (18 texture, 86 arithmetic)
 

