//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// Parameters:
//
//   float4 AmbientColorAndSkyFactor;
//   float4 DiffuseOverrideParameter;
//   float4 LightMapScale[2];
//   sampler2D LightMapTextures[2];
//   float4 MinZ_MaxZRatio;
//   float NvStereoEnabled;
//   sampler2D NvStereoFixTexture;
//   sampler2D PixelTexture2D_0;
//   sampler2D PixelTexture2D_1;
//   float4 ScreenPositionScaleBias;
//   float4 SpecularOverrideParameter;
//   float4 UniformPixelVector_0;
//   float4 UniformPixelVector_1;
//   float4 UniformPixelVector_2;
//
//
// Registers:
//
//   Name                      Reg   Size
//   ------------------------- ----- ----
//   UniformPixelVector_0      c0       1
//   ScreenPositionScaleBias   c1       1
//   MinZ_MaxZRatio            c2       1
//   NvStereoEnabled           c3       1
//   DiffuseOverrideParameter  c4       1
//   SpecularOverrideParameter c5       1
//   LightMapScale             c7       2
//   UniformPixelVector_1      c9       1
//   UniformPixelVector_2      c10      1
//   AmbientColorAndSkyFactor  c11      1
//   LightMapTextures          s0       2
//   NvStereoFixTexture        s2       1
//   PixelTexture2D_0          s3       1
//   PixelTexture2D_1          s4       1
//

    ps_3_0
    def c6, 0.0625, 0, 0.00999999978, 0.5
    def c12, 2, -1, 1.5, 1
    def c13, -0.707106769, -0.408248305, 0.577350259, 0.707106769
    def c14, 0.816496611, 0.577350259, 0, 0
    dcl_texcoord v0.xy
    dcl_texcoord1 v1.xy
    dcl_texcoord6 v2.xyz
    dcl_texcoord5 v3.xyw
    dcl_2d s0
    dcl_2d s1
    dcl_2d s2
    dcl_2d s3
    dcl_2d s4
    nrm r0.xyz, v2
    add r1.xy, c9, v1
    texld r1, r1, s3
    mad r1.xyz, r1, c12.x, c12.y
    mov r2.zw, c12
    mad r2.xy, v1, r2.z, c10
    texld r3, r2, s3
    mad r1.xyz, r3, c12.x, r1
    add_pp r1.xyz, r1, c12.y
    nrm_pp r2.xyz, r1
    dp3 r0.w, r2, r0
    mul r3.xyz, r0.w, r2
    mad r0.xyz, r3, c12.x, -r0
    add r3.xyz, r2.w, -c0
    abs r0.w, c3.x
    if_ne c3.x, -c3.x
      texld r4, c6, s2
      add r1.z, -r4.y, v3.w
      mad r4.x, r4_abs.x, r1_abs.z, v3.x
      mov r4.yz, v3.xyww
    else
      mov r4.xyz, c6.y
    endif
    cmp r4.xyz, -r0.w, v3.xyww, r4
	//mov r4.xyz, v3.xyww
    rcp r1.z, r4.z
    mul r1.zw, r1.z, r4.xyxy
    mad r1.zw, r1, c1.xyxy, c1.xywz
    mad r1.zw, r1.xyxy, c6.z, r1
    texld r4, r1.zwzw, s4
    mul_pp r3.xyz, r3, r4
    mad_pp r3.xyz, r3, c4.w, c4
    if_ne c3.x, -c3.x
      texld r4, c6, s2
      add r1.z, -r4.y, v3.w
      mad r4.x, r4_abs.x, r1_abs.z, v3.x
      mov r4.yz, v3.xyww
    else
      mov r4.xyz, c6.y
    endif
    cmp r4.xyz, -r0.w, v3.xyww, r4
	//mov r4.xyz, v3.xyww
    rcp r0.w, r4.z
    mul r1.zw, r0.w, r4.xyxy
    mad r1.zw, r1, c1.xyxy, c1.xywz
    mad r1.xy, r1, c6.z, r1.zwzw
    texld r1, r1, s4
    mov r0.w, c6.w
    mad_pp r1.xyz, r1, r0.w, c0
    dp2add_sat_pp r4.x, r2.yzzw, c14, c14.z
    dp3_sat_pp r4.y, r2, c13
    dp3_sat_pp r4.z, r2.yzxw, c13.yzww
    dp2add_sat_pp r2.x, r0.yzzw, c14, c14.z
    dp3_sat_pp r2.y, r0, c13
    dp3_sat_pp r2.z, r0.yzxw, c13.yzww
    mul_pp r0.xyz, r4, r4
    mul_pp r2.xyz, r2, r2
    mul_pp r2.xyz, r2, r2
    mul_pp r2.xyz, r2, r2
    mul_pp r2.xyz, r2, r2
    texld r4, v0, s0
    mul_pp r4.xyz, r4, c7
    texld r5, v0, s1
    mul_pp r5.xyz, r5, c8
    dp3_pp r0.x, r5, r0
    mul_pp r0.xyz, r0.x, r4
    mul r4.xyz, r4, c5
    dp3_pp r0.w, r5, r2
    mul r2.xyz, r0.w, r4
    mad_pp r0.xyz, r3, r0, r2
    add_pp r0.xyz, r0, r1
    mad_pp oC0.xyz, r3, c11, r0
    add r0.x, r2.w, -c2.y
    rcp r0.y, v3.w
    mad oC0.w, -c2.x, r0.y, r0.x

// approximately 83 instruction slots used (8 texture, 75 arithmetic)
 