//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// Parameters:
//
//   float4 DiffuseOverrideParameter;
//   float4 MinZ_MaxZRatio;
//   sampler2D PixelTexture2D_0;
//   sampler2D PixelTexture2D_1;
//   samplerCUBE PixelTextureCube_0;
//   sampler2D SceneColorTexture;
//   float4 ScreenPositionScaleBias;
//   float4 UniformPixelScalars_3;
//   float4 UniformPixelScalars_4;
//   float4 UniformPixelVector_0;
//   float4 UniformPixelVector_1;
//   float4 UniformPixelVector_2;
//   float4 UniformPixelVector_3;
//   float4 UniformPixelVector_4;
//   float4 WorldIncidentLighting[7];
//
//
// Registers:
//
//   Name                     Reg   Size
//   ------------------------ ----- ----
//   UniformPixelVector_0     c0       1
//   ScreenPositionScaleBias  c1       1
//   MinZ_MaxZRatio           c2       1
//   DiffuseOverrideParameter c4       1
//   WorldIncidentLighting    c8       7
//   UniformPixelVector_1     c15      1
//   UniformPixelVector_2     c16      1
//   UniformPixelVector_3     c17      1
//   UniformPixelVector_4     c18      1
//   UniformPixelScalars_3    c19      1
//   UniformPixelScalars_4    c20      1
//   SceneColorTexture        s0       1
//   PixelTexture2D_0         s1       1
//   PixelTexture2D_1         s2       1
//   PixelTextureCube_0       s3       1
//

    ps_3_0
    def c3, 0.899999976, 1.5, 2, -1
    def c5, 2.5, 3.5, -9.99999997e-007, 1.20000005
    def c6, -1.02332771, 1.02332771, 0.886227608, 0
    def c7, 0, 3, -1, 0.858085215
    def c21, -0.858085215, 0.247708291, 0.429042608, 0
    dcl_color v0.xyz
    dcl_color1 v1
    dcl_texcoord v2.xy
    dcl_texcoord6 v3.xyz
    dcl_texcoord7 v4.xyw
    dcl_2d s0
    dcl_2d s1
    dcl_2d s2
    dcl_cube s3

def c220, 0, 1, 0.0625, 0.5
dcl_2d s15

// Unreal Engine SceneColorTexture halo fix inserted with DarkStarSword's shadertool.py:
// shadertool.py -i --fix-unreal-halo-sct --only-autofixed --stereo-sampler-ps=s15 CRC32_9CDE220E_1142.txt
mov r30, r30
texldl r31, c220.z, s15
add r31.w, r30.w, -r31.y
mad r30.x, r31.w, r31.x, r30.x

    mov r0.xyw, c3
    mad r0.xy, v2, r0, c16
    texld r1, r0, s1
    mad r0.xyz, r1, c3.z, c3.w
    mul r1.xyz, r0, c19.y
    mov r2.xy, c5
    mad r2.xy, v2, r2, c17
    texld r2, r2, s2
    mad r2.xyz, r2, c3.z, c3.w
    mul r3.xyz, r2, c19.y
    mul r0.xyz, r0, r3
    mad r1.xyz, r2, r1, -r0
    dp3 r1.w, v3, v3
    rsq r1.w, r1.w
    mad r2.x, v3.z, -r1.w, -c3.w
    mul r2.yzw, r1.w, v3.xxyz
    cmp r1.w, r2.w, r2_abs.x, -c3.w
    add r2.x, r1.w, c5.z
    pow r3.x, r1.w, c5.w
    cmp r1.w, r2.x, r3.x, c7.x
    add r2.x, r1.w, c5.z
    pow r3.x, r1.w, c19.z
    cmp r1.w, r2.x, r3.x, c7.x
    mad r0.xyz, r1.w, r1, r0
    mul_pp r0.xyz, r0, c15
    nrm_pp r1.xyz, r0
    nrm_pp r0.xyz, v1
    nrm_pp r3.xyz, v0
    mul_pp r4.xyz, r0.zxyw, r3.yzxw
    mad_pp r4.xyz, r0.yzxw, r3.zxyw, -r4
    mul r4.xyz, r4, v1.w
    dp3_pp r5.x, r4, r1
    dp3_pp r5.y, r0, r1
    dp3_pp r5.z, r3, r1
    mul r6.xz, r5, r5.y
    mul r7.xyz, r5, r5.xyxw
    mul r8.xyz, r5, c6.xyxw
    mad_pp r6.w, r5.z, r5.z, -r7.x
    mad r6.y, r7.y, c7.y, c7.z
    mul r8.w, r7.z, c7.w
    mul r5, r6, c21.xyxz
    dp4 r2.x, c10, r5
    dp4 r3.w, c9, r8
    mov r6.z, c6.z
    mad_pp r3.w, c8.x, r6.z, r3.w
    add_pp r7.x, r2.x, r3.w
    dp4 r2.x, c12, r5
    dp4 r3.w, c14, r5
    dp4 r4.w, c11, r8
    dp4 r5.x, c13, r8
    mad_pp r5.x, c8.z, r6.z, r5.x
    add_pp r7.z, r3.w, r5.x
    mad_pp r3.w, c8.y, r6.z, r4.w
    add_pp r7.y, r2.x, r3.w
    max_pp r5.xyz, r7, c7.x
    dp3 r2.x, r1, r2.yzww
    mul r1.xyz, r1, r2.x
    mad r1.xyz, r1, c3.z, -r2.yzww
    dp3 r2.x, r3, r1
    dp3 r2.z, r0, r1
    dp3 r2.y, r4, r1
    texld r2, r2, s3
    mul r0.xyz, r1.w, r2
    add_sat r1.x, r1.w, c20.x
    mov r1.w, c19.w
    mad r0.xyz, r1.w, r0, c18
    add r1.yzw, -r0.w, -c0.xxyz
    mul_pp r0.xyz, r0, r1.yzww
    mad_pp r0.xyz, r0, c4.w, c4
    mul_pp oC0.xyz, r5, r0
    rcp r0.x, r30.w
    mul r0.xy, r0.x, r30
    mad r2.xy, r0, c1, c1.wzzw
    mov r2.zw, c7.x
    texldl r2, r2, s0
    add r0.x, -r0.w, -c2.y
    add r0.x, -r0.x, r2.w
    rcp r0.x, r0.x
    mad r0.x, -c2.x, r0.x, -r30.w
    rcp r0.y, c20.y
    mul_sat r0.x, r0.y, r0.x
    mul_pp oC0.w, r0.x, r1.x

// approximately 93 instruction slots used (5 texture, 88 arithmetic)
