//
// Generated by Microsoft (R) HLSL Shader Compiler 9.27.952.3022
//
// Parameters:
//
//   sampler2D SkyCloudAddBiasTex_0;
//   float SkyCloudTimeOscillator_2;
//   float4 SkyCloudUVScale_1;
//   sampler2D SkyDomeColorRampTex_1;
//   float SkySunIntensity_30;
//   
//   struct
//   {
//       float3 m_Direction;
//       float3 m_Color;
//
//   } g_DirectLights[2];
//   
//   float4 g_EyePosition;
//   float4 g_FogColor;
//   float4 g_FogParams;
//   float4 g_LayeredSkyUserColor;
//   float4 g_LayeredSkyUserColor3;
//   
//   struct
//   {
//       float4 m_PositionFar;
//       float4 m_ColorFade;
//
//   } g_OmniLights[4];
//   
//   float4 g_ProjShadowParams[2];
//   float4 g_ProjWorldToLight[8];
//   sampler2D g_ProjectorCookies[2];
//   sampler2D g_ProjectorShadow;
//   float4 g_ShadowMapSize;
//   
//   struct
//   {
//       float4 m_PositionFar;
//       float4 m_ColorFade;
//       float3 m_Direction;
//       float4 m_ConeAngles;
//
//   } g_SpotLights[2];
//   
//   float4 g_SunDirection;
//   float4 g_TimeOfDay;
//   bool g_UseDepthTextureShadows;
//   sampler2D g_WorldLightMapSampler;
//   float4 g_WorldLightmapParameters;
//   float4 g_WorldLightmapUVParameters;
//   float4 g_WorldLightmapZOffsetParameters;
//
//
// Registers:
//
//   Name                             Reg   Size
//   -------------------------------- ----- ----
//   g_UseDepthTextureShadows         b15      1
//   g_EyePosition                    c12      1
//   g_FogColor                       c16      1
//   g_FogParams                      c17      1
//   g_TimeOfDay                      c19      1
//   g_SunDirection                   c21      1
//   g_LayeredSkyUserColor            c23      1
//   g_OmniLights                     c32      2
//   g_DirectLights                   c40      2
//   g_SpotLights                     c44      4
//   g_ProjWorldToLight               c55      4
//   g_ShadowMapSize                  c86      1
//   g_WorldLightmapParameters        c87      1
//   g_WorldLightmapUVParameters      c88      1
//   g_WorldLightmapZOffsetParameters c89      1
//   g_LayeredSkyUserColor3           c103     1
//   g_ProjShadowParams               c119     1
//   SkyCloudUVScale_1                c128     1
//   SkyCloudTimeOscillator_2         c129     1
//   SkySunIntensity_30               c130     1
//   SkyCloudAddBiasTex_0             s0       1
//   SkyDomeColorRampTex_1            s1       1
//   g_ProjectorCookies               s9       1
//   g_ProjectorShadow                s11      1
//   g_WorldLightMapSampler           s12      1
//

    ps_3_0
    def c0, -0.5, 16, 0.0625, 2
    def c1, 0, 1, 0.5, -0.5
    def c2, 1, -1, 0, -0
    dcl_texcoord v0.xy
    dcl_color v1.xzw
    dcl_color1 v2.xyz
    dcl_texcoord1 v3
    dcl_texcoord4 v4.xyz
    dcl_2d s0
    dcl_2d s1
    dcl_2d s9
    dcl_2d s11
    dcl_2d s12
    mov r0, v3.w
    texkill r0
    nrm r0.xyz, v4
    add r1.xyz, c12, -v3
    add r2.x, c129.x, v0.x
    mov r2.y, v0.y
    mul r2.xy, r2, c128
    texld r2, r2, s0
    add r3.xyz, r2, c0.x
    mul r3.xyz, r3, c103.w
    mul r0.w, c0.y, v0.y
    frc r1.w, r0.w
    add r0.w, r0.w, -r1.w
    mul r4.x, r0.w, c0.z
    mov r4.y, c19.x
    texld r5, r4.yxzw, s1
    mad r4.z, r0.w, c0.z, c0.z
    texld r4, r4.yzzw, s1
    lrp r6.xyz, r1.w, r4, r5
    dp3_sat r0.w, r0, -c21
    mul r0.w, r0.w, r2.y
    mul r0.w, r0.w, c130.x
    mul r2.xyz, r0.w, r6
    max r4.xyz, r2, r6
    mad r2.xyz, r3, c0.w, r4
    lrp r3.xyz, c23.w, r2, r2.y
    mul r2.xyz, r3, c23
    mul r3.xyz, r2, v2
    dp3_sat r0.w, r0, c40
    mul r4.xyz, r0.w, c41
    mul r4.xyz, r3, r4
    add r5.xyz, c32, -v3
    dp3 r0.w, r5, r5
    add r1.w, -r0.w, c32.w
    mul_sat r1.w, r1.w, c33.w
    if_lt -r1.w, c1.x
      rsq r0.w, r0.w
      mul r5.xyz, r0.w, r5
      dp3_sat r0.w, r0, r5
      mul r5.xyz, r0.w, c33
      mul r6.xyz, r3, r1.w
      mad r4.xyz, r6, r5, r4
    endif
    add r5.xyz, c44, -v3
    dp3 r0.w, r5, r5
    add r1.w, -r0.w, c44.w
    mul_sat r1.w, r1.w, c45.w
    rsq r0.w, r0.w
    mul r5.xyz, r0.w, r5
    dp3 r0.w, r5, c46
    add r0.w, -r0.w, c47.x
    mul_sat r0.w, r0.w, c47.y
    mul r0.w, r0.w, r1.w
    mad r6.xyz, r0, c119.y, v3
    mul r7, r6.y, c56
    mad r7, r6.x, c55, r7
    mad r6, r6.z, c57, r7
    add r6, r6, c58
    texldp r7, r6, s9
    rcp r1.w, r6.w
    mul_sat r6.xyz, r1.w, r6
    rcp r8.y, c86.w
    mul r1.w, r8.y, c86.z
    frc r3.w, r1.w
    add r4.w, r1.w, -r3.w
    cmp r3.w, -r3.w, c1.x, c1.y
    cmp r1.w, r1.w, c1.x, r3.w
    add r1.w, r1.w, r4.w
    rcp r1.w, r1.w
    mad r9.x, r6.x, r1.w, c119.x
    add r9.y, -r6.y, c1.y
    add_sat r6.z, r6.z, c119.z
    rcp r8.x, c86.z
    //if b15
    //  mad r6.xy, r8, -c0.x, r9
    //  mov r6.w, c1.x
    //  texldl r10, r6, s11
    //else
      mad r6.xy, r8, -c0.x, r9
      mad r8.zw, r8.xyxy, c0.x, r6.xyxy
      texld r9, r8.zwzw, s11
      add r1.w, -r6.z, r9.x
      mad r8.zw, r8.xyxy, c1, r6.xyxy
      texld r9, r8.zwzw, s11
      add r3.w, -r6.z, r9.x
      cmp r3.w, r3.w, c1.y, c1.x
      mad r8.zw, r8.xyxy, c1.xywz, r6.xyxy
      texld r9, r8.zwzw, s11
      add r4.w, -r6.z, r9.x
      mad r8.xy, r8, -c0.x, r6
      texld r8, r8, s11
      add r5.w, -r6.z, r8.x
      cmp r5.w, r5.w, c1.y, c1.x
      mul r6.xy, r6, c86.zwzw
      frc r6.xy, r6
      cmp r6.zw, r1.w, c2.xyxy, c2
      add r1.w, r3.w, r6.w
      mad r1.w, r6.x, r1.w, r6.z
      cmp r6.zw, r4.w, c2.xyxy, c2
      add r3.w, r5.w, r6.w
      mad r3.w, r6.x, r3.w, r6.z
      lrp r10.x, r6.y, r3.w, r1.w
    //endif
    mul r6.xyz, r7, r10.x
    dp3_sat r0.z, r0, r5
    mul r5.xyz, r0.z, c45
    mul r5.xyz, r6, r5
    mul r6.xyz, r3, r0.w
    mad r5.xyz, r6, r5, r4
    cmp r4.xyz, -r0.w, r4, r5
    mul r3.xyz, r3, v1.x
    mad r0.xy, r0, c87.x, v3
    mov r5.x, c0.x
    mad r0.xy, r0, c88.zwzw, -r5.x
    dp3 r1.x, r1, r1
    rsq r1.x, r1.x
    rcp r1.x, r1.x
    add r1.y, r1.x, -c89.x
    rcp r1.z, c89.y
    mul_sat r0.w, r1.z, r1.y
    mov r0.z, c1.x
    texldl r0, r0, s12
    mul r0.xyz, r0, c88.x
    mad r0.w, r0.w, c87.w, c87.y
    add r0.w, r0.w, -v3.z
    mov r1.y, c1.y
    mad_sat r0.w, r0_abs.w, -c87.z, r1.y
    mul r0.xyz, r0.w, r0
    mul r0.xyz, r3, r0
    dp3_sat r0.w, r0, c88.y
    mad r0.xyz, r0.w, r0, r4
    mad_sat r0.xyz, r2, v2, r0
    add r0.w, r1.x, -c17.x
    mul_sat r0.w, r0.w, c17.y
    mul r0.w, r0.w, c17.z
    add r1.xyz, -r0, c16
    mad oC0.xyz, r0.w, r1, r0
    rcp r0.x, v1.w
    mul oC1.xyz, r0.x, v1.z
    mov oC0.w, r2.w
    mov oC1.w, r2.w

// approximately 149 instruction slots used (12 texture, 137 arithmetic)
 