// Lights
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v1.2.34 on Tue Mar 22 18:42:18 2016
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// TEXCOORD                 0   xyzw        0     NONE   float   xy w
//
//
// 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 cb0[12], immediateIndexed
dcl_constantbuffer cb1[54], immediateIndexed
dcl_constantbuffer cb2[2], immediateIndexed
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 v0.xyw
dcl_output o0.xyzw
//dcl_temps 4
dcl_temps 16

div r0.xy, v0.xyxx, v0.wwww
mad r0.zw, r0.xxxy, cb1[41].xxxy, cb1[41].wwwz
sample_l_indexable(texture2d)(float,float,float,float) r0.z, r0.zwzz, t1.yzxw, s1, l(0.000000)
mad r0.z, r0.z, cb1[40].z, -cb1[40].w
div r0.z, l(1.000000, 1.000000, 1.000000, 1.000000), r0.z
mul r0.xy, r0.zzzz, r0.xyxx

ld_indexable(texture2d)(float,float,float,float) r16.xyzw, l(0, 0, 0, 0), t125.xyzw
  add r16.w, r0.z, -r16.y
  mul r16.w, r16.x, r16.w
  add r0.x, r0.x, -r16.w

mul r1.xyzw, r0.yyyy, cb0[8].xyzw
mad r1.xyzw, r0.xxxx, cb0[7].xyzw, r1.xyzw
mad r1.xyzw, r0.zzzz, cb0[9].xyzw, r1.xyzw
add r1.xyzw, r1.xyzw, cb0[10].xyzw
div r1.xyz, r1.yzxy, r1.wwww
dp3 r0.w, r1.xyzx, r1.xyzx
rsq r0.w, r0.w
mul r2.xyz, r0.wwww, r1.xyzx
max r0.w, |r2.y|, |r2.x|
div r0.w, l(1.000000, 1.000000, 1.000000, 1.000000), r0.w
min r1.w, |r2.y|, |r2.x|
mul r0.w, r0.w, r1.w
mul r1.w, r0.w, r0.w
mad r2.w, r1.w, l(0.0208350997), l(-0.085133)
mad r2.w, r1.w, r2.w, l(0.180141)
mad r2.w, r1.w, r2.w, l(-0.330299497)
mad r1.w, r1.w, r2.w, l(0.999866)
mul r2.w, r0.w, r1.w
mad r2.w, r2.w, l(-2.000000), l(1.57079637)
lt r3.x, |r2.y|, |r2.x|
and r2.w, r2.w, r3.x
mad r0.w, r0.w, r1.w, r2.w
lt r3.xy, r2.yzyy, -r2.yzyy
and r1.w, r3.x, l(0xc0490fdb)
add r0.w, r0.w, r1.w
min r1.w, r2.y, r2.x
lt r1.w, r1.w, -r1.w
max r2.x, r2.y, r2.x
ge r2.x, r2.x, -r2.x
and r1.w, r1.w, r2.x
movc r0.w, r1.w, -r0.w, r0.w
add r0.w, r0.w, l(3.14159274)
mul r2.x, r0.w, l(0.159154937)
mad r0.w, |r2.z|, l(-0.0187292993), l(0.074261)
mad r0.w, r0.w, |r2.z|, l(-0.212114394)
mad r0.w, r0.w, |r2.z|, l(1.57072878)
add r1.w, -|r2.z|, l(1.000000)
sqrt r1.w, r1.w
mul r2.z, r0.w, r1.w
mad r2.z, r2.z, l(-2.000000), l(3.14159274)
and r2.z, r3.y, r2.z
mad r0.w, r0.w, r1.w, r2.z
mul r2.y, r0.w, l(0.318309873)
lt r2.zw, l(0.000000, 0.000000, 0.000000, 0.000000), cb0[2].zzzw
movc r2.xy, r2.wwww, r2.xyxx, r1.yxyy
mul r0.w, r1.z, cb0[2].x
div r1.xy, r1.yxyy, r0.wwww
mad r1.xy, r1.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
movc r1.xy, r2.zzzz, r1.xyxx, r2.xyxx
frc r0.w, cb1[53].z
mul r1.zw, r0.wwww, l(0.000000, 0.000000, 16.000000, 4.000000)
round_ni r1.zw, r1.zzzw
mul r1.zw, r1.zzzw, l(0.000000, 0.000000, 0.250000, 0.250000)
mad r1.xy, r1.xyxx, l(0.250000, 0.250000, 0.000000, 0.000000), r1.zwzz
sample_indexable(texture2d)(float,float,float,float) r1.xyz, r1.xyxx, t0.xyzw, s0
add r1.xyz, r1.xyzx, cb2[1].xyzx
max r1.xyz, r1.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
add r1.xyz, r1.xyzx, -cb0[11].yyyy
mul r2.xyzw, r0.yyyy, cb1[29].xyzw
mad r2.xyzw, r0.xxxx, cb1[28].xyzw, r2.xyzw
mad r0.xyzw, r0.zzzz, cb1[30].xyzw, r2.xyzw
add r0.xyzw, r0.xyzw, cb1[31].xyzw
div r0.xyz, r0.xyzx, r0.wwww
add r0.xyz, -r0.xyzx, cb1[44].xyzx
dp3 r0.x, r0.xyzx, r0.xyzx
sqrt r0.x, r0.x
add r0.x, -r0.x, cb0[11].x
mul r0.y, cb0[11].x, l(0.200000)
div_sat r0.x, r0.x, r0.y
mul r0.xyz, r1.xyzx, r0.xxxx
mad r0.xyz, cb0[2].yyyy, r0.xyzx, cb0[11].yyyy
dp3 r0.x, r0.xyzx, l(0.333300, 0.333300, 0.333300, 0.000000)
sqrt r0.z, r0.x
mov r0.xyw, l(1.000000,1.000000,0,1.000000)
add r1.xyzw, -r0.wwzw, r0.zzzz
mad o0.xyzw, cb0[11].zzzz, r1.xyzw, r0.xyzw
ret 
// Approximately 0 instruction slots used
