//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
//   using 3Dmigoto v1.2.67 on Mon Jan 01 13:11:46 2018
//
//
// Buffer Definitions: 
//
// cbuffer $Globals
// {
//
//   float4 lightCount;                 // Offset:    0 Size:    16 [unused]
//   float4 ambient;                    // Offset:   16 Size:    16 [unused]
//   float4 lightInfo[4];               // Offset:   32 Size:    64 [unused]
//   float4 g_vAmbientSettings;         // Offset:   96 Size:    16 [unused]
//      = 0x00000000 0x00000000 0x00000000 0x00000000 
//   float4 g_vScreenDepthRect;         // Offset:  112 Size:    16 [unused]
//   float4 g_vDitherSettings;          // Offset:  128 Size:    16 [unused]
//   float4 g_ColorK;                   // Offset:  144 Size:    16 [unused]
//      = 0x3e8a3d71 0x3f2b851f 0x3d75c28f 0x00000000 
//   float4 LevelMin;                   // Offset:  160 Size:    16 [unused]
//      = 0x3dcccccd 0x3dcccccd 0x3dcccccd 0x00000000 
//   float4 LevelMax;                   // Offset:  176 Size:    16 [unused]
//      = 0x3f4ccccd 0x3f4ccccd 0x3f4ccccd 0x00000000 
//   float4 MaxAdd;                     // Offset:  192 Size:    16 [unused]
//      = 0x3dcccccd 0x3dcccccd 0x3dcccccd 0x00000000 
//   float4 MinSub;                     // Offset:  208 Size:    16 [unused]
//      = 0x3ca3d70a 0x3ca3d70a 0x3ca3d70a 0x00000000 
//   float4 Color;                      // Offset:  224 Size:    16 [unused]
//   float4 Settings;                   // Offset:  240 Size:    16
//   float4 Settings2;                  // Offset:  256 Size:    16 [unused]
//   float4 Settings3;                  // Offset:  272 Size:    16 [unused]
//   float4 Settings4;                  // Offset:  288 Size:    16 [unused]
//   float4 Transform;                  // Offset:  304 Size:    16 [unused]
//   float4 g_vDepthCoordsClamp;        // Offset:  320 Size:    16 [unused]
//   float4 CamPos;                     // Offset:  336 Size:    16 [unused]
//   float4 g_vCenterOffs;              // Offset:  352 Size:    16 [unused]
//   float4 g_vHFrustrum;               // Offset:  368 Size:    16 [unused]
//   float4 g_vVFrustrum;               // Offset:  384 Size:    16 [unused]
//   float4 g_avNoise[8];               // Offset:  400 Size:   128 [unused]
//   float4x4 g_mView;                  // Offset:  528 Size:    64 [unused]
//   float4 g_PixelsDir[8];             // Offset:  592 Size:   128
//
// }
//
//
// Resource Bindings:
//
// Name                                 Type  Format         Dim Slot Elements
// ------------------------------ ---------- ------- ----------- ---- --------
// LinearSampler                     sampler      NA          NA    0        1
// DiffuseSamplerLerp                sampler      NA          NA    1        1
// DepthTexture                      texture  float4          2d    0        1
// DiffTexture                       texture  float4          2d    1        1
// $Globals                          cbuffer      NA          NA    0        1
//
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Position              0   xyzw        0      POS   float       
// TEXCOORD                 0   xy          1     NONE   float   xy  
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Target                0   xyzw        0   TARGET   float   xyzw
//
ps_4_0
dcl_constantbuffer cb0[45], dynamicIndexed
dcl_sampler s0, mode_default
dcl_sampler s1, mode_default
dcl_resource_texture2d (float,float,float,float) t0
dcl_resource_texture2d (float,float,float,float) t1
dcl_input_ps linear v1.xy
dcl_output o0.xyzw
dcl_temps 4
add r0.x, cb0[15].z, l(-1.000000)
sample_l r1.xyzw, v1.xyxx, t0.xyzw, s0, l(0.000000)
add r0.y, r0.x, r1.x
mul_sat r0.y, r0.y, cb0[15].w
sample_l r1.xyzw, v1.xyxx, t1.xyzw, s1, l(0.000000)
lt r0.z, l(0.050000), r0.y
if_nz r0.z
  mov r2.xyz, r1.xyzx
  mov r0.z, l(0)
  loop 
    ige r1.w, r0.z, l(8)
    breakc_nz r1.w
    mad r3.xy, cb0[r0.z + 37].xyxx, r0.yyyy, v1.xyxx
    sample_l r3.xyzw, r3.xyxx, t1.xyzw, s1, l(0.000000)
    add r2.xyz, r2.xyzx, r3.xyzx
    iadd r0.z, r0.z, l(1)
  endloop 
  mov r1.xyz, r2.xyzx
  mov r0.z, l(9.000000)
else 
  mov r0.z, l(1.000000)
endif 
mov r0.w, r0.y
mov r1.w, l(0)
loop 
  ige r2.x, r1.w, l(8)
  breakc_nz r2.x
  add r2.xy, v1.xyxx, cb0[r1.w + 37].xyxx
  sample_l r2.xyzw, r2.xyxx, t0.xyzw, s0, l(0.000000)
  add r2.x, r0.x, r2.x
  mul_sat r2.x, r2.x, cb0[15].w
  max r0.w, r0.w, r2.x
  iadd r1.w, r1.w, l(1)
endloop 
mov o0.w, r0.w
div o0.xyz, r1.xyzx, r0.zzzz
ret 
// Approximately 37 instruction slots used
