//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// Parameters:
//
//   samplerCUBE $AmbientCubeDiffuseTexture;
//   float4 $CloudColor;
//   sampler2D $CloudTexture;
//   float4x2 $CloudTextureProjection;
//   sampler2D $DepthBuffer;
//   float4x4 $InvViewMatrix;
//   sampler2D $NormalBuffer;
//   sampler2D $ShadowBuffer;
//   float4 $ShadowParams;
//   float4 $SunColor;
//   float4 $SunInvLightDirection;
//   float4 $SunInvSpecularDirection;
//   float4 $SunMiddleColor;
//   float4 $SunSecondaryColor;
//   float4 $SunSpecularColor;
//   float4x4 $ViewSpaceToShadowMapSpace;
//   float4 GlobalGBufferOffset;
//   float4 GlobalGBufferScale;
//   float4 GlobalPosDecodingParams;
//
//
// Registers:
//
//   Name                       Reg   Size
//   -------------------------- ----- ----
//   $InvViewMatrix             c10      3
//   $SunInvLightDirection      c14      1
//   $SunColor                  c15      1
//   $SunSecondaryColor         c16      1
//   $SunMiddleColor            c17      1
//   $SunSpecularColor          c18      1
//   $SunInvSpecularDirection   c19      1
//   $CloudColor                c20      1
//   $CloudTextureProjection    c21      2
//   $ViewSpaceToShadowMapSpace c25      4
//   $ShadowParams              c29      1
//   GlobalGBufferOffset        c218     1
//   GlobalPosDecodingParams    c219     1
//   GlobalGBufferScale         c223     1
//   $CloudTexture              s0       1
//   $AmbientCubeDiffuseTexture s5       1
//   $NormalBuffer              s6       1
//   $DepthBuffer               s10      1
//   $ShadowBuffer              s12      1
//

    ps_3_0
    def c0, 2, -1, 1, 0
    def c1, 1024, 0.00142799411, 0.00110813056, 0
    def c2, -0.00119449559, -0.00128778024, 0, 4
    def c3, 0.00138513593, -0.00112632895, 0, 0.00100000005
    def c4, -0.00119252864, 0.00133941777, 0, 0.0625
    def c5, -0.00137990655, -0.000584563706, 0, 0.25
    def c6, -0.000137964991, -0.0013614092, 0, 0
    def c7, 0.000505311589, 0.000430484768, 0, 0
    def c8, -0.00134162966, 0.00067047996, 0, 0
    def c9, -0.00056070619, 0.000405422528, 0, 0
    def c13, 0.000649267458, -0.0014283919, 0, 0
    def c23, 0.000787250698, -0.000693946553, 0, 0
    def c24, -0.000388138345, -0.000613667304, 0, 0
    def c30, 0.00116011978, 0.000279641419, 0, 0
    def c31, -0.000354328717, 0.00146054453, 0, 0
    def c32, 0.000292736222, 0.00115197315, 0, 0
    def c33, 1, 0, 0.000210690836, -0.000206554541
def c216, 1.0, 0.475, 0.0625, 1
dcl_2d s13
    dcl vPos.xy
    dcl_2d s0
    dcl_cube s5
    dcl_2d s6
    dcl_2d s10
    dcl_2d s12
    mov r0, c223
    mad r0, vPos.xyxy, r0, c218
    texld_pp r1, r0, s6
    mad_pp r2.xyz, r1.yzww, c0.x, c0.y
    dp2add_pp r1.y, r2, -r2, c0.z
    rsq_pp r1.y, r1.y
    rcp_pp r1.y, r1.y
    mul_pp r2.w, r2.z, r1.y
    texld_pp r3, r0, s10
    mad r0.x, r3.x, c219.z, c219.w
    rcp r0.x, r0.x
    mad r0.yzw, r0.xzwz, c0.xzzw, c0.xwwz
    mul r0.xyz, r0.x, r0.yzww
    mul r1.yzw, r2.y, c11.xxyz
    mad r1.yzw, c10.xxyz, r2.x, r1
    mad_pp r1.yzw, c12.xxyz, r2.w, r1
    texld_pp r3, r1.yzww, s5
    dp3_pp r1.y, r2.xyww, c14
    add_pp r1.y, r1.y, c16.w
    dp3 r1.z, r0, r0
    rsq r1.z, r1.z
    mad r4.xyz, r0, -r1.z, c19
    nrm r5.xyz, r4
    mul_pp r1.x, r1.x, c1.x
    dp3_sat r1.z, r5, r2.xyww
    pow r2.x, r1.z, r1.x
    mov_sat_pp r1.x, r1.y
    mul_pp r1.z, r1.x, r2.x
    mov r2.xyz, c17
    add r4.xyz, -r2, c15
    mad_pp r4.xyz, r1.x, r4, c17
    mov_sat_pp r1.w, -r1.y
    add r2.xyz, -r2, c16
    mad_pp r2.xyz, r1.w, r2, c17
    cmp_pp r2.xyz, r1.y, r4, r2
    mul_pp r1.y, r1.z, c18.w
mov r21.x, c172.x
mov r21.y, c173.x
mov r21.z, c174.x
mov r21.w, c175.x
dp4 r20.x, r21, c176
mov r15.w, c213.w
//if_eq r15.w, c0.w
	//rcp r20.x, r20.x
//else
	mov r20.x, c216.y 
//endif
texldl r24, c216.z, s13
add r24.y, r0.z, -r24.y
mul r24.x, r24.x, r24.y
mul r24.x, r24.x, r20.x
add r0.x, r0.x, -r24.x
    mul r4, r0.y, c26.xyzx
    mad r4, c25.xyzx, r0.x, r4
    mad r4, c27.xyzx, r0.z, r4
    add r4, r4, c28.xyzx
    mul r5, r4.wyzw, c0.zzzw
    add r6, r5, c1.yzww
    texldl_pp r6, r6, s12
    add r7, r5, c2.xyzz
    texldl_pp r7, r7, s12
    add_pp r1.z, r6.x, r7.x
    add r6, r5, c3.xyzz
    texldl_pp r6, r6, s12
    add_pp r1.z, r1.z, r6.x
    add r6, r5, c4.xyzz
    texldl_pp r6, r6, s12
    add_pp r1.z, r1.z, r6.x
    add_pp r2.w, -r1.z, c2.w
    mul_pp r2.w, r1.z, r2.w
    mul_pp r1.x, r1.x, r2.w
    if_lt c3.w, r1.x
      add r6, r5, c5.xyzz
      texldl_pp r6, r6, s12
      add_pp r1.x, r1.z, r6.x
      add r6, r5, c6.xyzz
      texldl_pp r6, r6, s12
      add_pp r1.x, r1.x, r6.x
      add r6, r5, c7.xyzz
      texldl_pp r6, r6, s12
      add_pp r1.x, r1.x, r6.x
      add r6, r5, c8.xyzz
      texldl_pp r6, r6, s12
      add_pp r1.x, r1.x, r6.x
      add r6, r5, c9.xyzz
      texldl_pp r6, r6, s12
      add_pp r1.x, r1.x, r6.x
      add r6, r5, c13.xyzz
      texldl_pp r6, r6, s12
      add_pp r1.x, r1.x, r6.x
      add r6, r5, c23.xyzz
      texldl_pp r6, r6, s12
      add_pp r1.x, r1.x, r6.x
      add r6, r5, c24.xyzz
      texldl_pp r6, r6, s12
      add_pp r1.x, r1.x, r6.x
      add r6, r5, c30.xyzz
      texldl_pp r6, r6, s12
      add_pp r1.x, r1.x, r6.x
      add r6, r5, c31.xyzz
      texldl_pp r6, r6, s12
      add_pp r1.x, r1.x, r6.x
      add r5, r5, c32.xyzz
      texldl_pp r5, r5, s12
      add_pp r1.x, r1.x, r5.x
      mad r4, r4, c33.xxxy, c33.zwyy
      texldl_pp r4, r4, s12
      add_pp r1.x, r1.x, r4.x
      mul_pp r1.x, r1.x, c4.w
    else
      mul_pp r1.x, r1.z, c5.w
    endif
    add r1.z, r1.x, c29.x
    add_sat_pp r1.z, r1.w, r1.z
    mul_pp r1.x, r1.x, r1.y
    mad_pp r1.yzw, r2.xxyz, r1.z, r3.xxyz
    mov_pp r0.w, c0.z
    dp4 r2.x, r0, c21
    dp4 r2.y, r0, c22
    mov_pp r2.zw, c0.w
    texldl_pp r0, r2, s0
    mul_pp r2, r0, c20
    mov r0.z, c0.z
    mad_pp r0.x, r0.w, -c20.w, r0.z
    lrp_pp oC0.xyz, r2.w, r2, r1.yzww
    mul_pp oC0.w, r0.x, r1.x

// approximately 134 instruction slots used (37 texture, 97 arithmetic)
 