//
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v1.2.7 on Thu Nov 12 18:21:55 2015
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_POSITION              0   xyzw        0      POS   float   xy  
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Target                0   xyzw        0   TARGET   float   xyzw
//
ps_5_0
dcl_globalFlags refactoringAllowed
dcl_constantbuffer cb12[47], immediateIndexed
dcl_constantbuffer cb2[3], immediateIndexed
dcl_sampler s0, mode_default
dcl_sampler s3, mode_default
dcl_sampler s4, mode_default
dcl_sampler s5, mode_default
dcl_sampler s6, mode_default
dcl_sampler s7, mode_default
dcl_resource_texture2d (float,float,float,float) t0
dcl_resource_texture2d (float,float,float,float) t3
dcl_resource_texture2d (float,float,float,float) t4
dcl_resource_texture2d (float,float,float,float) t5
dcl_resource_texture2d (float,float,float,float) t6
dcl_resource_texture2d (float,float,float,float) t7
dcl_resource_texture2d (float,float,float,float) t125
dcl_input_ps_siv linear noperspective v0.xy, position
dcl_output o0.xyzw
//dcl_temps 11
dcl_temps 28

mul r0.xy, v0.xyxx, cb2[0].xyxx
sample_l_indexable(texture2d)(float,float,float,float) r1.xyzw, r0.xyxx, t0.xyzw, s0, l(0.000000)
sample_l_indexable(texture2d)(float,float,float,float) r0.w, r0.xyxx, t3.xyzw, s3, l(0.000000)
sample_l_indexable(texture2d)(float,float,float,float) r2.xyz, r0.xyxx, t5.xyzw, s5, l(0.000000)
mul r1.xyz, r1.xyzx, r2.xyzx
sample_l_indexable(texture2d)(float,float,float,float) r2.x, r0.xyxx, t7.xyzw, s7, l(0.000000)
sample_indexable(texture2d)(float,float,float,float) r2.yzw, r0.xyxx, t4.wxyz, s4
ge r3.x, l(0.010000), r2.x
if_nz r3.x
  mul r3.z, r2.x, l(100.000000)
  mov r4.xyzw, cb12[24].xyzw
  mov r5.xyzw, cb12[25].xyzw
  mov r6.xyzw, cb12[26].xyzw
  mov r7.xyzw, cb12[27].xyzw
else 
  mad r3.z, r2.x, l(1.010000), l(-0.010000)
  mov r4.xyzw, cb12[20].xyzw
  mov r5.xyzw, cb12[21].xyzw
  mov r6.xyzw, cb12[22].xyzw
  mov r7.xyzw, cb12[23].xyzw
endif 
mul r8.xyz, r1.xyzx, l(3.000000, 3.000000, 3.000000, 0.000000)
mad r9.xyz, r0.wwww, l(255.000000, 255.000000, 255.000000, 0.000000), l(-5.000000, -2.000000, -3.000000, 0.000000)
ge r0.w, |r9.x|, l(0.250000)
if_nz r0.w
  sample_l_indexable(texture2d)(float,float,float,float) r10.xyz, r0.xyxx, t6.xyzw, s6, l(0.000000)
  add r2.xyz, r2.yzwy, r10.xyzx
  mad r8.xyz, r1.xyzx, l(3.000000, 3.000000, 3.000000, 0.000000), r2.xyzx
endif 
lt r0.yw, |r9.yyyz|, l(0.000000, 0.250000, 0.000000, 0.250000)
or r0.y, r0.w, r0.y
if_z r0.y
  mad r0.z, -v0.y, cb2[0].y, l(1.000000)
  mad r3.xy, r0.xzxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
  mov r3.w, l(1.000000)
  dp4 r0.x, r4.xyzw, r3.xyzw
  dp4 r0.y, r5.xyzw, r3.xyzw
  dp4 r0.z, r6.xyzw, r3.xyzw
  dp4 r0.w, r7.xyzw, r3.xyzw
  div r0.xyz, r0.xyzx, r0.wwww

ld_indexable(texture2d)(float,float,float,float) r28.xyzw, l(0, 0, 0, 0), t125.xyzw
add r28.w, r0.z, -r28.y
mul r28.w, r28.w, r28.x
mul r28.w, r28.w, cb12[20].x
add r0.x, r0.x, -r28.w

  mov r0.w, l(1.000000)
  dp4 r0.w, cb12[14].xyzw, r0.xyzw
  add r0.w, r0.w, cb12[35].z
  dp3 r1.x, r0.xyzx, r0.xyzx
  sqrt r1.y, r1.x
  mad r1.y, r1.y, cb12[41].x, -cb12[41].z
  mov_sat r1.z, r1.y
  mad_sat r2.xy, r0.wwww, cb12[46].xyxx, -cb12[46].zwzz
  add r0.w, -r2.x, r2.y
  mad r0.w, r1.z, r0.w, r2.x
  lt r2.x, l(0.750000), r1.y
  add r2.y, r1.z, l(-0.750000)
  mul r2.y, r2.y, l(4.000000)
  add r2.z, -cb12[43].w, l(1.000000)
  mad r2.y, r2.y, r2.z, cb12[43].w
  min r2.y, r2.y, l(1.000000)
  movc r2.x, r2.x, r2.y, cb12[43].w
  lt r1.y, r1.y, l(0.015000)
  mul r2.y, r1.z, l(66.666672)
  movc r1.y, r1.y, r2.y, l(1.000000)
  log r1.z, r1.z
  mul r1.z, r1.z, cb12[42].w
  exp r1.z, r1.z
  min r1.z, r2.x, r1.z
  add r2.x, -r0.w, l(1.000000)
  mad r2.x, r0.w, cb12[44].w, r2.x
  add r2.yzw, -cb12[42].xxyz, cb12[44].xxyz
  mad r2.yzw, r1.zzzz, r2.yyzw, cb12[42].xxyz
  add r3.xyz, -cb12[43].xyzx, cb12[45].xyzx
  mad r3.xyz, r1.zzzz, r3.xyzx, cb12[43].xyzx
  add r3.xyz, -r2.yzwy, r3.xyzx
  mad r2.yzw, r0.wwww, r3.xxyz, r2.yyzw
  mul r0.w, r1.z, r2.x
  rsq r1.x, r1.x
  mul r0.xyzw, r0.xyzw, r1.xxxy
  dp3 r0.x, r0.xyzx, cb2[1].xyzx
  max r0.x, r0.x, l(0.000000)
  log r0.x, r0.x
  mul r0.x, r0.x, cb2[2].w
  exp r0.x, r0.x
  mul r0.x, r0.x, cb2[1].w
  add r1.xyz, -r2.yzwy, cb2[2].xyzx
  mad r0.xyz, r0.xxxx, r1.xyzx, r2.yzwy
  lt r1.x, r0.w, cb12[43].w
  dp3 r1.y, r8.xyzx, l(0.333333343, 0.333333343, 0.333333343, 0.000000)
  add r2.xyz, -r0.xyzx, r1.yyyy
  mad r2.xyz, r1.yyyy, r2.xyzx, r0.xyzx
  movc r0.xyz, r1.xxxx, r2.xyzx, r0.xyzx
  add r0.xyz, -r8.xyzx, r0.xyzx
  mad o0.xyz, r0.wwww, r0.xyzx, r8.xyzx
  mov o0.w, r1.w
else 
  mov o0.xyzw, l(0,0,0,0)
endif 
ret 
// Approximately 0 instruction slots used
