//
// Generated by Microsoft (R) HLSL Shader Compiler 9.27.952.3022
//
// Parameters:
//
//   samplerCUBE CubeMap_0;
//   float DepthScale_6;
//   float Depthbias_5;
//   float4 Layer0Color01_1;
//   float4 Layer0Color02_2;
//   sampler2D Layer0Diffuse_1;
//   sampler2D Layer0NormalMap_0;
//   float SpecFactor_27;
//   float SpecPower_28;
//   float4 g_AmbientCube[6];
//   sampler2D g_DepthSampler;
//   float4 g_EyePosition;
//   float4 g_FogColor;
//   float4 g_FogParams;
//   float4 g_LayeredSkyUserColor4;
//   
//   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_ReverseProjectionParams;
//   float4 g_ShadowMapSize;
//   
//   struct
//   {
//       float4 m_PositionFar;
//       float4 m_ColorFade;
//       float3 m_Direction;
//       float4 m_ConeAngles;
//
//   } g_SpotLights[2];
//   
//   bool g_UseDepthTextureShadows;
//   float4 g_VPosToUV;
//   sampler2D g_WorldLightMapSampler;
//   float4 g_WorldLightmapParameters;
//   float4 g_WorldLightmapUVParameters;
//   float4 g_WorldLightmapZOffsetParameters;
//   float4x4 g_WorldToView;
//
//
// Registers:
//
//   Name                             Reg   Size
//   -------------------------------- ----- ----
//   g_UseDepthTextureShadows         b15      1
//   g_ReverseProjectionParams        c0       1
//   g_WorldToView                    c6       3
//   g_EyePosition                    c12      1
//   g_FogColor                       c16      1
//   g_FogParams                      c17      1
//   g_AmbientCube                    c24      6
//   g_OmniLights                     c32      6
//   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_VPosToUV                       c100     1
//   g_LayeredSkyUserColor4           c104     1
//   g_ProjShadowParams               c119     1
//   Layer0Color01_1                  c128     1
//   Layer0Color02_2                  c129     1
//   Depthbias_5                      c130     1
//   DepthScale_6                     c131     1
//   SpecFactor_27                    c132     1
//   SpecPower_28                     c133     1
//   Layer0NormalMap_0                s0       1
//   Layer0Diffuse_1                  s1       1
//   CubeMap_0                        s2       1
//   g_DepthSampler                   s8       1
//   g_ProjectorCookies               s9       1
//   g_ProjectorShadow                s11      1
//   g_WorldLightMapSampler           s12      1
//

    ps_3_0
    def c1, 0.5, -0.5, 1, 0
    def c2, 1, -1, 0, -0
    dcl_texcoord v0.xy
    dcl_color v1.xzw
    dcl_color1 v2.xy
    dcl_texcoord1 v3
    dcl_texcoord2 v4.xyz
    dcl_texcoord3 v5.xyz
    dcl_texcoord4 v6.xyz
    dcl vPos.xy
    dcl_2d s0
    dcl_2d s1
    dcl_cube s2
    dcl_2d s8
    dcl_2d s9
    dcl_2d s11
    dcl_2d s12
    add r0.xy, c1.x, vPos
    mul r0.xy, r0, c100
    mov r1, v3.w
    texkill r1
    texld r1, v0, s0
    mul r1.x, r1.w, r1.x
    add r0.zw, r1.xyxy, c1.y
    add r0.zw, r0, r0
    dp2add r1.x, r0.zwzw, -r0.zwzw, c1.z
    rsq r1.x, r1.x
    rcp r1.x, r1.x
    nrm r2.xyz, v4
    nrm r3.xyz, v5
    nrm r4.xyz, v6
    mul r1.yzw, r0.w, r3.xxyz
    mad r1.yzw, r0.z, r2.xxyz, r1
    mad r1.xyz, r1.x, r4, r1.yzww
    nrm r2.xyz, r1
    add r1.xyz, c12, -v3
    texld r3, v0, s1
    mov r5.xyz, c128
    add r5.xyz, -r5, c129
    mad r5.xyz, r3.w, r5, c128
    mul r3.xyz, r3, r5
    texld r0, r0, s8
    add r0.x, r0.x, c0.z
    rcp r0.x, r0.x
    mad r5, v3.xyzx, c1.zzzw, c1.wwwz
    dp4 r0.y, r5, c8
    mad r0.x, c0.w, -r0.x, r0.y
    mul r0.x, r0.x, c131.x
    mad_sat r0.x, r0.x, v2.x, c130.x
    mul r0.xyz, r0.x, r3
    mov r3.xzw, c1
    mad r5, v3.xyzx, -r3.zzzw, c12
    dp4 r0.w, r5, r5
    rsq r0.w, r0.w
    mul r5.xyz, r0.w, r5.xzyw
    dp3 r0.w, r5.xzyw, r4
    add r0, r0, r0
    mad r5.xyz, r4.xzyw, -r0.w, r5
    texld r5, r5, s2
    pow r0.w, v2_abs.y, c133.x
    mul r0.w, r0.w, c132.x
    mul r5.xyz, r0.w, r5
    add r6.xyz, c32, -v3
    dp3 r0.w, r6, r6
    rsq r1.w, r0.w
    mul r6.xyz, r1.w, r6
    add r0.w, -r0.w, c32.w
    mul_sat r0.w, r0.w, c33.w
    dp3_sat r1.w, r2, r6
    mul r6.xyz, r1.w, c33
    mul r7.xyz, r0, r0.w
    mul r6.xyz, r6, r7
    cmp r6.xyz, -r0.w, c1.w, r6
    add r7.xyz, c34, -v3
    dp3 r0.w, r7, r7
    rsq r1.w, r0.w
    mul r7.xyz, r1.w, r7
    add r0.w, -r0.w, c34.w
    mul_sat r0.w, r0.w, c35.w
    dp3_sat r1.w, r2, r7
    mul r7.xyz, r1.w, c35
    mul r8.xyz, r0, r0.w
    mad r7.xyz, r8, r7, r6
    cmp r6.xyz, -r0.w, r6, r7
    add r7.xyz, c36, -v3
    dp3 r0.w, r7, r7
    rsq r1.w, r0.w
    mul r7.xyz, r1.w, r7
    add r0.w, -r0.w, c36.w
    mul_sat r0.w, r0.w, c37.w
    dp3_sat r1.w, r2, r7
    mul r7.xyz, r1.w, c37
    mul r8.xyz, r0, r0.w
    mad r7.xyz, r8, r7, r6
    cmp r6.xyz, -r0.w, r6, r7
    add r7.xyz, c44, -v3
    dp3 r0.w, r7, r7
    add r1.w, -r0.w, c44.w
    mul_sat r1.w, r1.w, c45.w
    rsq r0.w, r0.w
    mul r7.xyz, r0.w, r7
    dp3 r0.w, r7, c46
    add r0.w, -r0.w, c47.x
    mul_sat r0.w, r0.w, c47.y
    mul r0.w, r0.w, r1.w
    mad r4.xyz, r4, c119.y, v3
    mul r8, r4.y, c56
    mad r8, r4.x, c55, r8
    mad r4, r4.z, c57, r8
    add r4, r4, c58
    texldp r8, r4, s9
    rcp r1.w, r4.w
    mul_sat r4.xyz, r1.w, r4
    rcp r9.y, c86.w
    mul r1.w, r9.y, c86.z
    frc r2.w, r1.w
    add r3.y, r1.w, -r2.w
    cmp r2.w, -r2.w, c1.w, c1.z
    cmp r1.w, r1.w, c1.w, r2.w
    add r1.w, r1.w, r3.y
    rcp r1.w, r1.w
    mad r10.x, r4.x, r1.w, c119.x
    add r10.y, -r4.y, c1.z
    add_sat r4.z, r4.z, c119.z
    rcp r9.x, c86.z
    //if b15
    //  mad r4.xy, r9, c1.x, r10
    //  mov r4.w, c1.w
    //  texldl r11, r4, s11
    //else
      mad r3.yw, r9.xxzy, c1.x, r10.xxzy
      mad r4.xy, r9, c1.y, r3.ywzw
      texld r10, r4, s11
      add r1.w, -r4.z, r10.x
      mad r4.xy, r9, c1, r3.ywzw
      texld r10, r4, s11
      add r2.w, -r4.z, r10.x
      cmp r2.w, r2.w, c1.z, c1.w
      mad r4.xy, r9, c1.yxzw, r3.ywzw
      texld r10, r4, s11
      add r4.x, -r4.z, r10.x
      mad r4.yw, r9.xxzy, c1.x, r3
      texld r9, r4.ywzw, s11
      add r4.y, -r4.z, r9.x
      cmp r4.y, r4.y, c1.z, c1.w
      mul r3.yw, r3, c86.xzzw
      frc r3.yw, r3
      cmp r4.zw, r1.w, c2.xyxy, c2
      add r1.w, r2.w, r4.w
      mad r1.w, r3.y, r1.w, r4.z
      cmp r4.xz, r4.x, c2.xyyw, c2.zyww
      add r2.w, r4.z, r4.y
      mad r2.w, r3.y, r2.w, r4.x
      lrp r11.x, r3.w, r2.w, r1.w
    //endif
    mul r4.xyz, r8, r11.x
    dp3_sat r1.w, r2, r7
    mul r7.xyz, r1.w, c45
    mul r4.xyz, r4, r7
    mul r7.xyz, r0, r0.w
    mad r4.xyz, r7, r4, r6
    cmp r4.xyz, -r0.w, r6, r4
    mul r0.xyz, r0, v1.x
    mul r6.xyz, r2, r2
    cmp r7.xyz, r2, c1.z, c1.w
    cmp r8.xyz, -r2, c1.z, c1.w
    mul r9, r6.x, c24
    mul r10, r6.x, c25
    mul r10, r8.x, r10
    mad r9, r9, r7.x, r10
    mul r10, r6.y, c26
    mad r9, r10, r7.y, r9
    mul r10, r6.y, c27
    mad r9, r10, r8.y, r9
    mul r10, r6.z, c28
    mad r7, r10, r7.z, r9
    mul r6, r6.z, c29
    mad r6, r6, r8.z, r7
    mul r6.xyz, r6.w, r6
    mul r6.xyz, r0, r6
    mad r2.xy, r2, c87.x, v3
    mad r2.xy, r2, c88.zwzw, r3.x
    dp3 r0.w, r1, r1
    rsq r0.w, r0.w
    rcp r0.w, r0.w
    add r1.x, r0.w, -c89.x
    rcp r1.y, c89.y
    mul_sat r2.w, r1.y, r1.x
    mov r2.z, c1.w
    texldl r1, r2, s12
    mul r1.xyz, r1, c88.x
    mad r1.w, r1.w, c87.w, c87.y
    add r1.w, r1.w, -v3.z
    mad_sat r1.w, r1_abs.w, -c87.z, r3.z
    mul r1.xyz, r1.w, r1
    mul r2.xyz, r0, r1
    dp3_sat r1.w, r2, c88.y
    mad r0.xyz, r1, r0, -r6
    mad r0.xyz, r1.w, r0, r6
    add r0.xyz, r0, r4
    mad_sat r0.xyz, c104, r5, r0
    add r0.w, r0.w, -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, c1.z
    mov oC1.w, c1.z

// approximately 208 instruction slots used (13 texture, 195 arithmetic)
 