//light shaft fix
// MANUALLY DUMPED [ShaderRegex\ShaderFixes\ShaderRegEx_UE4_UNIVERSAL2_C44.ini\_09_Lights2CS]
//
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v1.3.16 on Thu Sep 23 17:10:53 2021
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// no Input
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// no Output
cs_5_0
dcl_globalFlags refactoringAllowed
dcl_constantbuffer cb0[27], immediateIndexed
dcl_constantbuffer cb1[133], immediateIndexed
dcl_sampler s0, mode_default
dcl_sampler s1, mode_default
dcl_resource_texture2d (float,float,float,float) t0
dcl_resource_texture3d (float,float,float,float) t1
dcl_uav_typed_texture3d (float,float,float,float) u0
dcl_uav_typed_texture3d (float,float,float,float) u1
dcl_input vThreadID.xy
dcl_temps 36
//dcl_constantbuffer cb13[4], immediateIndexed
//dcl_constantbuffer cb12[4], immediateIndexed
dcl_thread_group 8, 8, 1
dcl_resource_texture2d (float,float,float,float) t125
ld_indexable(texture2d)(float,float,float,float) r33.xyzw, l(0, 0, 0, 0), t125.xy
iadd r0.xy, -cb0[19].xyxx, cb0[19].zwzz
utof r0.xy, r0.xyxx
utof r0.zw, vThreadID.xxxy

mul r0.zw, r0.zzzw, cb0[20].xxxx

div r0.xy, r0.zwzz, r0.xyxx


//not working
ld_indexable(texture2d)(float,float,float,float) r22.xyzw, l(0, 0, 0, 0), t125.xyzw
mad r0.x, -r22.x, l(0.5), r0.x


mad r0.xy, r0.xyxx, l(2.000000, -2.000000, 0.000000, 0.000000), l(-1.000000, 1.000000, 0.000000, 0.000000)
mul r0.xy, r0.xyxx, l(10.000000, 10.000000, 0.000000, 0.000000)



//
mul r21.xyzw, r0.yyyy, cb1[45].xyzw
mad r20.xyzw, r0.xxxx, cb1[44].xyzw, r21.xyzw
mad r20.xyzw, cb1[46].xyzw, l(10.000000, 10.000000, 10.000000, 10.000000), r20.xyzw
add r20.xyzw, r20.xyzw, cb1[47].xyzw



ld_indexable(texture2d)(float,float,float,float) r22.xyzw, l(0, 0, 0, 0), t125.xyzw
mul r22.x, r22.x, l(0.5)
mad r0.x, r20.w, r22.x, r0.x


//r25 modded r0
mul r1.xyzw, r0.yyyy, cb1[45].xyzw
mad r0.xyzw, r0.xxxx, cb1[44].xyzw, r1.xyzw
mad r0.xyzw, cb1[46].xyzw, l(10.000000, 10.000000, 10.000000, 10.000000), r0.xyzw
add r0.xyzw, r0.xyzw, cb1[47].xyzw

div r0.xyz, r0.xyzx, r0.wwww




add r1.xyz, r0.xyzx, cb1[62].xyzx
dp3 r0.w, r1.xyzx, r1.xyzx
rsq r0.w, r0.w
mul r1.xyz, r0.wwww, r1.xyzx



mul r2.xyz, r0.yyyy, cb0[22].xyzx
mad r2.xyz, r0.xxxx, cb0[21].xyzx, r2.xyzx
mad r2.xyz, r0.zzzz, cb0[23].xyzx, r2.xyzx
add r2.xyz, r2.xyzx, cb0[24].xyzx



mad r3.xy, cb0[20].zzzz, l(15.000000, -0.125000, 0.000000, 0.000000), l(5.000000, 0.200000, 0.000000, 0.000000)
add r3.zw, -r3.xxxy, l(0.000000, 0.000000, 2.000000, 0.200000)
mad r3.xy, cb0[20].wwww, r3.zwzz, r3.xyxx
mad r4.xyz, r1.xyzx, l(15.000000, 15.000000, 15.000000, 0.000000), r0.xyzx
mul r5.xyz, r4.yyyy, cb0[22].xyzx
mad r4.xyw, r4.xxxx, cb0[21].xyxz, r5.xyxz
mad r4.xyz, r4.zzzz, cb0[23].xyzx, r4.xywx
add r4.xyz, r4.xyzx, cb0[24].xyzx
add r4.xyz, -r2.xyzx, r4.xyzx
mov r5.xyz, r2.xyzx
mov r6.x, l(0)
mov r0.w, l(0)
loop
  uge r1.w, r0.w, l(8)
  breakc_nz r1.w
  gather4_indexable(texture2d)(float,float,float,float) r7.xyzw, r5.xyxx, t0.xyzw, s0.x
  lt r8.xyzw, r7.xyzw, r5.zzzz
  and r8.xyzw, r8.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
  add r7.xyzw, r5.zzzz, -r7.xyzw
  add r7.xyzw, -r3.yyyy, r7.xyzw
  mul_sat r7.xyzw, r3.xxxx, r7.xyzw
  add r7.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  mul r3.zw, r7.xxxy, r8.xxxy
  add r1.w, r3.w, r3.z
  mad r1.w, r8.z, r7.z, r1.w
  mad r1.w, r8.w, r7.w, r1.w
  mul r1.w, r1.w, l(0.250000)
  mad r2.w, -r6.x, l(0.400000), l(1.000000)
  mul r1.w, r1.w, r2.w
  mad r6.x, r1.w, l(0.030000), r6.x
  add r5.xyz, r4.xyzx, r5.xyzx
  iadd r0.w, r0.w, l(1)
endloop
mov r2.xyz, r5.xyzx
mov r6.y, r6.x
mov r0.w, l(0)
loop
  uge r1.w, r0.w, l(8)
  breakc_nz r1.w
  gather4_indexable(texture2d)(float,float,float,float) r7.xyzw, r2.xyxx, t0.xyzw, s0.x
  lt r8.xyzw, r7.xyzw, r2.zzzz
  and r8.xyzw, r8.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
  add r7.xyzw, r2.zzzz, -r7.xyzw
  add r7.xyzw, -r3.yyyy, r7.xyzw
  mul_sat r7.xyzw, r3.xxxx, r7.xyzw
  add r7.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  mul r3.zw, r7.xxxy, r8.xxxy
  add r1.w, r3.w, r3.z
  mad r1.w, r8.z, r7.z, r1.w
  mad r1.w, r8.w, r7.w, r1.w
  mul r1.w, r1.w, l(0.250000)
  mad r2.w, -r6.y, l(0.400000), l(1.000000)
  mul r1.w, r1.w, r2.w
  mad r6.y, r1.w, l(0.030000), r6.y
  add r2.xyz, r4.xyzx, r2.xyzx
  iadd r0.w, r0.w, l(1)
endloop
mov r5.xyz, r2.xyzx
mov r6.z, r6.y
mov r0.w, l(0)
loop
  uge r1.w, r0.w, l(8)
  breakc_nz r1.w
  gather4_indexable(texture2d)(float,float,float,float) r7.xyzw, r5.xyxx, t0.xyzw, s0.x
  lt r8.xyzw, r7.xyzw, r5.zzzz
  and r8.xyzw, r8.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
  add r7.xyzw, r5.zzzz, -r7.xyzw
  add r7.xyzw, -r3.yyyy, r7.xyzw
  mul_sat r7.xyzw, r3.xxxx, r7.xyzw
  add r7.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  mul r3.zw, r7.xxxy, r8.xxxy
  add r1.w, r3.w, r3.z
  mad r1.w, r8.z, r7.z, r1.w
  mad r1.w, r8.w, r7.w, r1.w
  mul r1.w, r1.w, l(0.250000)
  mad r2.w, -r6.z, l(0.400000), l(1.000000)
  mul r1.w, r1.w, r2.w
  mad r6.z, r1.w, l(0.030000), r6.z
  add r5.xyz, r4.xyzx, r5.xyzx
  iadd r0.w, r0.w, l(1)
endloop
mov r2.xyz, r5.xyzx
mov r6.w, r6.z
mov r0.w, l(0)
loop
  uge r1.w, r0.w, l(8)
  breakc_nz r1.w
  gather4_indexable(texture2d)(float,float,float,float) r7.xyzw, r2.xyxx, t0.xyzw, s0.x
  lt r8.xyzw, r7.xyzw, r2.zzzz
  and r8.xyzw, r8.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
  add r7.xyzw, r2.zzzz, -r7.xyzw
  add r7.xyzw, -r3.yyyy, r7.xyzw
  mul_sat r7.xyzw, r3.xxxx, r7.xyzw
  add r7.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  mul r3.zw, r7.xxxy, r8.xxxy
  add r1.w, r3.w, r3.z
  mad r1.w, r8.z, r7.z, r1.w
  mad r1.w, r8.w, r7.w, r1.w
  mul r1.w, r1.w, l(0.250000)
  mad r2.w, -r6.w, l(0.400000), l(1.000000)
  mul r1.w, r1.w, r2.w
  mad r6.w, r1.w, l(0.030000), r6.w
  add r2.xyz, r4.xyzx, r2.xyzx
  iadd r0.w, r0.w, l(1)
endloop
mov r5.xy, vThreadID.xyxx
mov r5.zw, l(0,0,0,0)
store_uav_typed u0.xyzw, r5.xyzw, r6.xyzw
add r0.w, -r6.w, l(1.000000)
mov r5.xyz, r2.xyzx
mov r7.x, r6.w
mov r1.w, l(0)
loop
  uge r2.w, r1.w, l(8)
  breakc_nz r2.w
  gather4_indexable(texture2d)(float,float,float,float) r8.xyzw, r5.xyxx, t0.xyzw, s0.x
  lt r9.xyzw, r8.xyzw, r5.zzzz
  and r9.xyzw, r9.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
  add r8.xyzw, r5.zzzz, -r8.xyzw
  add r8.xyzw, -r3.yyyy, r8.xyzw
  mul_sat r8.xyzw, r3.xxxx, r8.xyzw
  add r8.xyzw, -r8.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  mul r3.zw, r8.xxxy, r9.xxxy
  add r2.w, r3.w, r3.z
  mad r2.w, r9.z, r8.z, r2.w
  mad r2.w, r9.w, r8.w, r2.w
  mul r2.w, r2.w, l(0.250000)
  mad r3.z, -r7.x, l(0.400000), l(1.000000)
  mul r2.w, r2.w, r3.z
  mad r7.x, r2.w, l(0.030000), r7.x
  add r5.xyz, r4.xyzx, r5.xyzx
  iadd r1.w, r1.w, l(1)
endloop
mov r2.xyz, r5.xyzx
mov r7.y, r7.x
mov r1.w, l(0)
loop
  uge r2.w, r1.w, l(8)
  breakc_nz r2.w
  gather4_indexable(texture2d)(float,float,float,float) r6.xyzw, r2.xyxx, t0.xyzw, s0.x
  lt r8.xyzw, r6.xyzw, r2.zzzz
  and r8.xyzw, r8.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
  add r6.xyzw, r2.zzzz, -r6.xyzw
  add r6.xyzw, -r3.yyyy, r6.xyzw
  mul_sat r6.xyzw, r3.xxxx, r6.xyzw
  add r6.xyzw, -r6.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  mul r3.zw, r6.xxxy, r8.xxxy
  add r2.w, r3.w, r3.z
  mad r2.w, r8.z, r6.z, r2.w
  mad r2.w, r8.w, r6.w, r2.w
  mul r2.w, r2.w, l(0.250000)
  mad r3.z, -r7.y, l(0.400000), l(1.000000)
  mul r2.w, r2.w, r3.z
  mad r7.y, r2.w, l(0.030000), r7.y
  add r2.xyz, r4.xyzx, r2.xyzx
  iadd r1.w, r1.w, l(1)
endloop
mov r5.xyz, r2.xyzx
mov r7.z, r7.y
mov r1.w, l(0)
loop
  uge r2.w, r1.w, l(8)
  breakc_nz r2.w
  gather4_indexable(texture2d)(float,float,float,float) r6.xyzw, r5.xyxx, t0.xyzw, s0.x
  lt r8.xyzw, r6.xyzw, r5.zzzz
  and r8.xyzw, r8.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
  add r6.xyzw, r5.zzzz, -r6.xyzw
  add r6.xyzw, -r3.yyyy, r6.xyzw
  mul_sat r6.xyzw, r3.xxxx, r6.xyzw
  add r6.xyzw, -r6.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  mul r3.zw, r6.xxxy, r8.xxxy
  add r2.w, r3.w, r3.z
  mad r2.w, r8.z, r6.z, r2.w
  mad r2.w, r8.w, r6.w, r2.w
  mul r2.w, r2.w, l(0.250000)
  mad r3.z, -r7.z, l(0.400000), l(1.000000)
  mul r2.w, r2.w, r3.z
  mad r7.z, r2.w, l(0.030000), r7.z
  add r5.xyz, r4.xyzx, r5.xyzx
  iadd r1.w, r1.w, l(1)
endloop
mov r2.xyz, r5.xyzx
mov r7.w, r7.z
mov r1.w, l(0)
loop
  uge r2.w, r1.w, l(8)
  breakc_nz r2.w
  gather4_indexable(texture2d)(float,float,float,float) r6.xyzw, r2.xyxx, t0.xyzw, s0.x
  lt r8.xyzw, r6.xyzw, r2.zzzz
  and r8.xyzw, r8.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
  add r6.xyzw, r2.zzzz, -r6.xyzw
  add r6.xyzw, -r3.yyyy, r6.xyzw
  mul_sat r6.xyzw, r3.xxxx, r6.xyzw
  add r6.xyzw, -r6.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  mul r3.zw, r6.xxxy, r8.xxxy
  add r2.w, r3.w, r3.z
  mad r2.w, r8.z, r6.z, r2.w
  mad r2.w, r8.w, r6.w, r2.w
  mul r2.w, r2.w, l(0.250000)
  mad r3.z, -r7.w, l(0.400000), l(1.000000)
  mul r2.w, r2.w, r3.z
  mad r7.w, r2.w, l(0.030000), r7.w
  add r2.xyz, r4.xyzx, r2.xyzx
  iadd r1.w, r1.w, l(1)
endloop
mul r5.xyzw, r0.wwww, r7.xyzw
mov r6.xy, vThreadID.xyxx
mov r6.zw, l(0,0,1,1)
store_uav_typed u0.xyzw, r6.xyzw, r5.xyzw
mov r5.xyz, r2.xyzx
mov r6.x, r7.w
mov r1.w, l(0)
loop
  uge r2.w, r1.w, l(8)
  breakc_nz r2.w
  gather4_indexable(texture2d)(float,float,float,float) r8.xyzw, r5.xyxx, t0.xyzw, s0.x
  lt r9.xyzw, r8.xyzw, r5.zzzz
  and r9.xyzw, r9.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
  add r8.xyzw, r5.zzzz, -r8.xyzw
  add r8.xyzw, -r3.yyyy, r8.xyzw
  mul_sat r8.xyzw, r3.xxxx, r8.xyzw
  add r8.xyzw, -r8.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  mul r3.zw, r8.xxxy, r9.xxxy
  add r2.w, r3.w, r3.z
  mad r2.w, r9.z, r8.z, r2.w
  mad r2.w, r9.w, r8.w, r2.w
  mul r2.w, r2.w, l(0.250000)
  mad r3.z, -r6.x, l(0.400000), l(1.000000)
  mul r2.w, r2.w, r3.z
  mad r6.x, r2.w, l(0.030000), r6.x
  mad r5.xyz, r4.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), r5.xyzx
  iadd r1.w, r1.w, l(1)
endloop
mov r2.xyz, r5.xyzx
mov r6.y, r6.x
mov r1.w, l(0)
loop
  uge r2.w, r1.w, l(8)
  breakc_nz r2.w
  gather4_indexable(texture2d)(float,float,float,float) r7.xyzw, r2.xyxx, t0.xyzw, s0.x
  lt r8.xyzw, r7.xyzw, r2.zzzz
  and r8.xyzw, r8.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
  add r7.xyzw, r2.zzzz, -r7.xyzw
  add r7.xyzw, -r3.yyyy, r7.xyzw
  mul_sat r7.xyzw, r3.xxxx, r7.xyzw
  add r7.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  mul r3.zw, r7.xxxy, r8.xxxy
  add r2.w, r3.w, r3.z
  mad r2.w, r8.z, r7.z, r2.w
  mad r2.w, r8.w, r7.w, r2.w
  mul r2.w, r2.w, l(0.250000)
  mad r3.z, -r6.y, l(0.400000), l(1.000000)
  mul r2.w, r2.w, r3.z
  mad r6.y, r2.w, l(0.030000), r6.y
  mad r2.xyz, r4.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), r2.xyzx
  iadd r1.w, r1.w, l(1)
endloop
mov r5.xyz, r2.xyzx
mov r6.z, r6.y
mov r1.w, l(0)
loop
  uge r2.w, r1.w, l(8)
  breakc_nz r2.w
  gather4_indexable(texture2d)(float,float,float,float) r7.xyzw, r5.xyxx, t0.xyzw, s0.x
  lt r8.xyzw, r7.xyzw, r5.zzzz
  and r8.xyzw, r8.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
  add r7.xyzw, r5.zzzz, -r7.xyzw
  add r7.xyzw, -r3.yyyy, r7.xyzw
  mul_sat r7.xyzw, r3.xxxx, r7.xyzw
  add r7.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  mul r3.zw, r7.xxxy, r8.xxxy
  add r2.w, r3.w, r3.z
  mad r2.w, r8.z, r7.z, r2.w
  mad r2.w, r8.w, r7.w, r2.w
  mul r2.w, r2.w, l(0.250000)
  mad r3.z, -r6.z, l(0.400000), l(1.000000)
  mul r2.w, r2.w, r3.z
  mad r6.z, r2.w, l(0.030000), r6.z
  mad r5.xyz, r4.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), r5.xyzx
  iadd r1.w, r1.w, l(1)
endloop
mov r2.xyz, r5.xyzx
mov r6.w, r6.z
mov r1.w, l(0)
loop
  uge r2.w, r1.w, l(8)
  breakc_nz r2.w
  gather4_indexable(texture2d)(float,float,float,float) r7.xyzw, r2.xyxx, t0.xyzw, s0.x
  lt r8.xyzw, r7.xyzw, r2.zzzz
  and r8.xyzw, r8.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
  add r7.xyzw, r2.zzzz, -r7.xyzw
  add r7.xyzw, -r3.yyyy, r7.xyzw
  mul_sat r7.xyzw, r3.xxxx, r7.xyzw
  add r7.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  mul r3.zw, r7.xxxy, r8.xxxy
  add r2.w, r3.w, r3.z
  mad r2.w, r8.z, r7.z, r2.w
  mad r2.w, r8.w, r7.w, r2.w
  mul r2.w, r2.w, l(0.250000)
  mad r3.z, -r6.w, l(0.400000), l(1.000000)
  mul r2.w, r2.w, r3.z
  mad r6.w, r2.w, l(0.030000), r6.w
  mad r2.xyz, r4.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), r2.xyzx
  iadd r1.w, r1.w, l(1)
endloop
mul r5.xyzw, r0.wwww, r6.xyzw
mov r7.xy, vThreadID.xyxx
mov r7.zw, l(0,0,2,2)
store_uav_typed u0.xyzw, r7.xyzw, r5.xyzw
mov r5.xyz, r2.xyzx
mov r7.x, r6.w
mov r1.w, l(0)
loop
  uge r2.w, r1.w, l(8)
  breakc_nz r2.w
  gather4_indexable(texture2d)(float,float,float,float) r8.xyzw, r5.xyxx, t0.xyzw, s0.x
  lt r9.xyzw, r8.xyzw, r5.zzzz
  and r9.xyzw, r9.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
  add r8.xyzw, r5.zzzz, -r8.xyzw
  add r8.xyzw, -r3.yyyy, r8.xyzw
  mul_sat r8.xyzw, r3.xxxx, r8.xyzw
  add r8.xyzw, -r8.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  mul r3.zw, r8.xxxy, r9.xxxy
  add r2.w, r3.w, r3.z
  mad r2.w, r9.z, r8.z, r2.w
  mad r2.w, r9.w, r8.w, r2.w
  mul r2.w, r2.w, l(0.250000)
  mad r3.z, -r7.x, l(0.400000), l(1.000000)
  mul r2.w, r2.w, r3.z
  mad r7.x, r2.w, l(0.030000), r7.x
  mad r5.xyz, r4.xyzx, l(4.000000, 4.000000, 4.000000, 0.000000), r5.xyzx
  iadd r1.w, r1.w, l(1)
endloop
mov r2.xyz, r5.xyzx
mov r7.y, r7.x
mov r1.w, l(0)
loop
  uge r2.w, r1.w, l(8)
  breakc_nz r2.w
  gather4_indexable(texture2d)(float,float,float,float) r6.xyzw, r2.xyxx, t0.xyzw, s0.x
  lt r8.xyzw, r6.xyzw, r2.zzzz
  and r8.xyzw, r8.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
  add r6.xyzw, r2.zzzz, -r6.xyzw
  add r6.xyzw, -r3.yyyy, r6.xyzw
  mul_sat r6.xyzw, r3.xxxx, r6.xyzw
  add r6.xyzw, -r6.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  mul r3.zw, r6.xxxy, r8.xxxy
  add r2.w, r3.w, r3.z
  mad r2.w, r8.z, r6.z, r2.w
  mad r2.w, r8.w, r6.w, r2.w
  mul r2.w, r2.w, l(0.250000)
  mad r3.z, -r7.y, l(0.400000), l(1.000000)
  mul r2.w, r2.w, r3.z
  mad r7.y, r2.w, l(0.030000), r7.y
  mad r2.xyz, r4.xyzx, l(4.000000, 4.000000, 4.000000, 0.000000), r2.xyzx
  iadd r1.w, r1.w, l(1)
endloop
mov r5.xyz, r2.xyzx
mov r7.z, r7.y
mov r1.w, l(0)
loop
  uge r2.w, r1.w, l(8)
  breakc_nz r2.w
  gather4_indexable(texture2d)(float,float,float,float) r6.xyzw, r5.xyxx, t0.xyzw, s0.x
  lt r8.xyzw, r6.xyzw, r5.zzzz
  and r8.xyzw, r8.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
  add r6.xyzw, r5.zzzz, -r6.xyzw
  add r6.xyzw, -r3.yyyy, r6.xyzw
  mul_sat r6.xyzw, r3.xxxx, r6.xyzw
  add r6.xyzw, -r6.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  mul r3.zw, r6.xxxy, r8.xxxy
  add r2.w, r3.w, r3.z
  mad r2.w, r8.z, r6.z, r2.w
  mad r2.w, r8.w, r6.w, r2.w
  mul r2.w, r2.w, l(0.250000)
  mad r3.z, -r7.z, l(0.400000), l(1.000000)
  mul r2.w, r2.w, r3.z
  mad r7.z, r2.w, l(0.030000), r7.z
  mad r5.xyz, r4.xyzx, l(4.000000, 4.000000, 4.000000, 0.000000), r5.xyzx
  iadd r1.w, r1.w, l(1)
endloop
mov r2.xyz, r5.xyzx
mov r7.w, r7.z
mov r1.w, l(0)
loop
  uge r2.w, r1.w, l(8)
  breakc_nz r2.w
  gather4_indexable(texture2d)(float,float,float,float) r6.xyzw, r2.xyxx, t0.xyzw, s0.x
  lt r8.xyzw, r6.xyzw, r2.zzzz
  and r8.xyzw, r8.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
  add r6.xyzw, r2.zzzz, -r6.xyzw
  add r6.xyzw, -r3.yyyy, r6.xyzw
  mul_sat r6.xyzw, r3.xxxx, r6.xyzw
  add r6.xyzw, -r6.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  mul r3.zw, r6.xxxy, r8.xxxy
  add r2.w, r3.w, r3.z
  mad r2.w, r8.z, r6.z, r2.w
  mad r2.w, r8.w, r6.w, r2.w
  mul r2.w, r2.w, l(0.250000)
  mad r3.z, -r7.w, l(0.400000), l(1.000000)
  mul r2.w, r2.w, r3.z
  mad r7.w, r2.w, l(0.030000), r7.w
  mad r2.xyz, r4.xyzx, l(4.000000, 4.000000, 4.000000, 0.000000), r2.xyzx
  iadd r1.w, r1.w, l(1)
endloop
mul r5.xyzw, r0.wwww, r7.xyzw
mov r6.xy, vThreadID.xyxx
mov r6.zw, l(0,0,3,3)
store_uav_typed u0.xyzw, r6.xyzw, r5.xyzw
mov r5.xyz, r2.xyzx
mov r6.x, r7.w
mov r1.w, l(0)
loop
  uge r2.w, r1.w, l(8)
  breakc_nz r2.w
  gather4_indexable(texture2d)(float,float,float,float) r8.xyzw, r5.xyxx, t0.xyzw, s0.x
  lt r9.xyzw, r8.xyzw, r5.zzzz
  and r9.xyzw, r9.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
  add r8.xyzw, r5.zzzz, -r8.xyzw
  add r8.xyzw, -r3.yyyy, r8.xyzw
  mul_sat r8.xyzw, r3.xxxx, r8.xyzw
  add r8.xyzw, -r8.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  mul r3.zw, r8.xxxy, r9.xxxy
  add r2.w, r3.w, r3.z
  mad r2.w, r9.z, r8.z, r2.w
  mad r2.w, r9.w, r8.w, r2.w
  mul r2.w, r2.w, l(0.250000)
  mad r3.z, -r6.x, l(0.400000), l(1.000000)
  mul r2.w, r2.w, r3.z
  mad r6.x, r2.w, l(0.030000), r6.x
  mad r5.xyz, r4.xyzx, l(8.000000, 8.000000, 8.000000, 0.000000), r5.xyzx
  iadd r1.w, r1.w, l(1)
endloop
mov r2.xyz, r5.xyzx
mov r6.y, r6.x
mov r1.w, l(0)
loop
  uge r2.w, r1.w, l(8)
  breakc_nz r2.w
  gather4_indexable(texture2d)(float,float,float,float) r7.xyzw, r2.xyxx, t0.xyzw, s0.x
  lt r8.xyzw, r7.xyzw, r2.zzzz
  and r8.xyzw, r8.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
  add r7.xyzw, r2.zzzz, -r7.xyzw
  add r7.xyzw, -r3.yyyy, r7.xyzw
  mul_sat r7.xyzw, r3.xxxx, r7.xyzw
  add r7.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  mul r3.zw, r7.xxxy, r8.xxxy
  add r2.w, r3.w, r3.z
  mad r2.w, r8.z, r7.z, r2.w
  mad r2.w, r8.w, r7.w, r2.w
  mul r2.w, r2.w, l(0.250000)
  mad r3.z, -r6.y, l(0.400000), l(1.000000)
  mul r2.w, r2.w, r3.z
  mad r6.y, r2.w, l(0.030000), r6.y
  mad r2.xyz, r4.xyzx, l(8.000000, 8.000000, 8.000000, 0.000000), r2.xyzx
  iadd r1.w, r1.w, l(1)
endloop
mov r5.xyz, r2.xyzx
mov r6.z, r6.y
mov r1.w, l(0)
loop
  uge r2.w, r1.w, l(8)
  breakc_nz r2.w
  gather4_indexable(texture2d)(float,float,float,float) r7.xyzw, r5.xyxx, t0.xyzw, s0.x
  lt r8.xyzw, r7.xyzw, r5.zzzz
  and r8.xyzw, r8.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
  add r7.xyzw, r5.zzzz, -r7.xyzw
  add r7.xyzw, -r3.yyyy, r7.xyzw
  mul_sat r7.xyzw, r3.xxxx, r7.xyzw
  add r7.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  mul r3.zw, r7.xxxy, r8.xxxy
  add r2.w, r3.w, r3.z
  mad r2.w, r8.z, r7.z, r2.w
  mad r2.w, r8.w, r7.w, r2.w
  mul r2.w, r2.w, l(0.250000)
  mad r3.z, -r6.z, l(0.400000), l(1.000000)
  mul r2.w, r2.w, r3.z
  mad r6.z, r2.w, l(0.030000), r6.z
  mad r5.xyz, r4.xyzx, l(8.000000, 8.000000, 8.000000, 0.000000), r5.xyzx
  iadd r1.w, r1.w, l(1)
endloop
mov r2.xyz, r5.xyzx
mov r6.w, r6.z
mov r1.w, l(0)
loop
  uge r2.w, r1.w, l(8)
  breakc_nz r2.w
  gather4_indexable(texture2d)(float,float,float,float) r7.xyzw, r2.xyxx, t0.xyzw, s0.x
  lt r8.xyzw, r7.xyzw, r2.zzzz
  and r8.xyzw, r8.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
  add r7.xyzw, r2.zzzz, -r7.xyzw
  add r7.xyzw, -r3.yyyy, r7.xyzw
  mul_sat r7.xyzw, r3.xxxx, r7.xyzw
  add r7.xyzw, -r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  mul r3.zw, r7.xxxy, r8.xxxy
  add r2.w, r3.w, r3.z
  mad r2.w, r8.z, r7.z, r2.w
  mad r2.w, r8.w, r7.w, r2.w
  mul r2.w, r2.w, l(0.250000)
  mad r3.z, -r6.w, l(0.400000), l(1.000000)
  mul r2.w, r2.w, r3.z
  mad r6.w, r2.w, l(0.030000), r6.w
  mad r2.xyz, r4.xyzx, l(8.000000, 8.000000, 8.000000, 0.000000), r2.xyzx
  iadd r1.w, r1.w, l(1)
endloop
mul r2.xyzw, r0.wwww, r6.xyzw
mov r3.xy, vThreadID.xyxx
mov r3.zw, l(0,0,4,4)
store_uav_typed u0.xyzw, r3.xyzw, r2.xyzw
mad r2.xyz, cb1[132].zzzz, cb0[25].xyzx, r0.xyzx
mad r0.xyz, cb1[132].zzzz, cb0[26].xyzx, r0.xyzx
mul r1.xyz, r1.xyzx, l(0.00799999945, 0.00799999945, 0.00799999945, 0.000000)
mul r2.xyw, r2.xyxz, l(0.000100, 0.000100, 0.000000, 0.000100)
mul r0.xyw, r0.xyxz, l(0.000100, 0.000100, 0.000000, 0.000100)
add r1.w, r2.z, l(-3000.000000)
add r0.z, r0.z, l(-3000.000000)
mov r3.xy, vThreadID.xyxx
mov r4.xyz, r2.xywx
mov r5.xyz, r0.xywx
mov r2.z, l(0)
mov r4.w, l(8.000000)
mov r5.w, l(0)
loop
  uge r6.x, r5.w, l(16)
  breakc_nz r6.x
  sample_l_indexable(texture3d)(float,float,float,float) r6.x, r4.xyzx, t1.wxyz, s1, l(0.000000)
  mad r6.y, r6.x, l(0.500000), l(1.000000)
  mad r6.yzw, r6.yyyy, r1.xxyz, r4.xxyz
  mad r7.x, r6.w, l(10000.000000), -r1.w
  mul_sat r7.x, r7.x, l(0.000125)
  add r7.x, -r7.x, l(1.000000)
  mul r7.x, r7.x, r7.x
  mul r6.x, r6.x, r7.x
  sample_l_indexable(texture3d)(float,float,float,float) r7.x, r6.yzwy, t1.wxyz, s1, l(0.000000)
  mad r7.y, r7.x, l(0.500000), l(1.000000)
  mad r6.yzw, r7.yyyy, r1.xxyz, r6.yyzw
  mad r7.y, r6.w, l(10000.000000), -r1.w
  mul_sat r7.y, r7.y, l(0.000125)
  add r7.y, -r7.y, l(1.000000)
  mul r7.y, r7.y, r7.y
  mul r7.x, r7.y, r7.x
  mul r7.x, r7.x, l(3.000000)
  mad r6.x, r6.x, l(3.000000), r7.x
  sample_l_indexable(texture3d)(float,float,float,float) r7.x, r6.yzwy, t1.wxyz, s1, l(0.000000)
  mad r7.y, r7.x, l(0.500000), l(1.000000)
  mad r6.yzw, r7.yyyy, r1.xxyz, r6.yyzw
  mad r7.y, r6.w, l(10000.000000), -r1.w
  mul_sat r7.y, r7.y, l(0.000125)
  add r7.y, -r7.y, l(1.000000)
  mul r7.y, r7.y, r7.y
  mul r7.x, r7.y, r7.x
  mad r6.x, r7.x, l(3.000000), r6.x
  sample_l_indexable(texture3d)(float,float,float,float) r7.x, r6.yzwy, t1.wxyz, s1, l(0.000000)
  mad r7.y, r7.x, l(0.500000), l(1.000000)
  mad r4.xyz, r7.yyyy, r1.xyzx, r6.yzwy
  mad r6.y, r4.z, l(10000.000000), -r1.w
  mul_sat r6.y, r6.y, l(0.000125)
  add r6.y, -r6.y, l(1.000000)
  mul r6.y, r6.y, r6.y
  mul r6.y, r6.y, r7.x
  mad r6.x, r6.y, l(3.000000), r6.x
  add r6.x, r2.z, r6.x
  sample_l_indexable(texture3d)(float,float,float,float) r6.y, r5.xyzx, t1.xwyz, s1, l(0.000000)
  mad r6.z, r6.y, l(0.500000), l(1.000000)
  mad r7.xyz, r6.zzzz, r1.xyzx, r5.xyzx
  mad r6.z, r7.z, l(10000.000000), -r0.z
  mul_sat r6.z, r6.z, l(0.000125)
  add r6.z, -r6.z, l(1.000000)
  mul r6.z, r6.z, r6.z
  mul r6.y, r6.z, r6.y
  sample_l_indexable(texture3d)(float,float,float,float) r6.z, r7.xyzx, t1.xywz, s1, l(0.000000)
  mad r6.w, r6.z, l(0.500000), l(1.000000)
  mad r7.xyz, r6.wwww, r1.xyzx, r7.xyzx
  mad r6.w, r7.z, l(10000.000000), -r0.z
  mul_sat r6.w, r6.w, l(0.000125)
  add r6.w, -r6.w, l(1.000000)
  mul r6.w, r6.w, r6.w
  mul r6.z, r6.w, r6.z
  mul r6.z, r6.z, l(3.000000)
  mad r6.y, r6.y, l(3.000000), r6.z
  sample_l_indexable(texture3d)(float,float,float,float) r6.z, r7.xyzx, t1.xywz, s1, l(0.000000)
  mad r6.w, r6.z, l(0.500000), l(1.000000)
  mad r7.xyz, r6.wwww, r1.xyzx, r7.xyzx
  mad r6.w, r7.z, l(10000.000000), -r0.z
  mul_sat r6.w, r6.w, l(0.000125)
  add r6.w, -r6.w, l(1.000000)
  mul r6.w, r6.w, r6.w
  mul r6.z, r6.w, r6.z
  mad r6.y, r6.z, l(3.000000), r6.y
  sample_l_indexable(texture3d)(float,float,float,float) r6.z, r7.xyzx, t1.xywz, s1, l(0.000000)
  mad r6.w, r6.z, l(0.500000), l(1.000000)
  mad r5.xyz, r6.wwww, r1.xyzx, r7.xyzx
  mad r6.w, r5.z, l(10000.000000), -r0.z
  mul_sat r6.w, r6.w, l(0.000125)
  add r6.w, -r6.w, l(1.000000)
  mul r6.w, r6.w, r6.w
  mul r6.z, r6.w, r6.z
  mad r6.y, r6.z, l(3.000000), r6.y
  add r2.z, r6.y, r6.x
  div r6.x, r2.z, r4.w
  add r4.w, r4.w, l(8.000000)
  mov r3.zw, r5.wwww
  store_uav_typed u1.xyzw, r3.xyzw, r6.xxxx
  iadd r5.w, r5.w, l(1)
endloop
ret
// Approximately 0 instruction slots used
