// AUTOMATICALLY CONVERTED FROM SHADER FIXES 
//
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v0.6.163 on Fri Oct 31 20:25:24 2025
//
//
// 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[47], immediateIndexed
dcl_constantbuffer CB2[14], dynamicIndexed
dcl_resource_structured t4, 128
dcl_resource_structured t5, 32
dcl_resource_texture2d (float,float,float,float) t6
dcl_uav_structured u0, 128
dcl_uav_raw u1
dcl_uav_structured u2, 80
dcl_uav_raw u3
dcl_input vThreadID.x
dcl_temps 35
dcl_constantbuffer CB13[2], immediateIndexed
dcl_thread_group 1024, 1, 1
uge r0.x, vThreadID.x, cb2[10].x
if_nz r0.x
  ret
endif
ld_structured_indexable(structured_buffer, stride=80)(mixed,mixed,mixed,mixed) r0.x, vThreadID.x, l(8), u2.xxxx
and r0.x, r0.x, l(0x10000820)
if_nz r0.x
  ret
endif
ld_structured_indexable(structured_buffer, stride=80)(mixed,mixed,mixed,mixed) r0.x, vThreadID.x, l(8), u2.xxxx
and r0.yz, r0.xxxx, l(0, 128, 8, 0)
mov r1.x, cb0[4].w
mov r1.y, cb0[5].w
mov r1.z, cb0[6].w
add r2.xyz, r1.xyzx, cb2[11].xyzx
movc r2.xyz, r0.yyyy, r2.xyzx, cb2[11].xyzx
ld_structured_indexable(structured_buffer, stride=80)(mixed,mixed,mixed,mixed) r3.xyz, vThreadID.x, l(64), u2.xyzx
add r3.xyz, r2.xyzx, r3.xyzx
add r1.xyz, -r1.xyzx, r3.xyzx
dp3 r0.y, r1.xyzx, r1.xyzx
sqrt r0.y, r0.y
if_nz r0.z
  and r0.x, r0.x, l(16)
  ieq r0.x, r0.x, l(0)
  ieq r0.z, l(0), cb2[10].y
  or r0.x, r0.z, r0.x
  ld_structured_indexable(structured_buffer, stride=80)(mixed,mixed,mixed,mixed) r0.z, vThreadID.x, l(52), u2.xxxx
  mul r0.z, r0.z, cb2[10].w
  lt r0.z, r0.y, r0.z
  movc r0.z, r0.z, l(-1.000000), l(1.000000)
  movc r0.x, r0.x, r0.z, l(1.000000)
else
  mov r0.x, l(1.000000)
endif
ld_structured_indexable(structured_buffer, stride=80)(mixed,mixed,mixed,mixed) r0.z, vThreadID.x, l(8), u2.xxxx
and r0.z, r0.z, l(1024)
ine r0.z, r0.z, l(0)
ne r0.w, l(0.000000, 0.000000, 0.000000, 0.000000), cb0[25].w
not r0.w, r0.w
and r0.z, r0.w, r0.z
if_nz r0.z
  ld_structured_indexable(structured_buffer, stride=80)(mixed,mixed,mixed,mixed) r1.xyz, vThreadID.x, l(64), u2.xyzx
  add r1.xyz, r2.xyzx, r1.xyzx
  mov r1.w, l(1.000000)
  dp4 r0.z, cb0[2].xyzw, r1.xyzw
  ld_structured_indexable(structured_buffer, stride=80)(mixed,mixed,mixed,mixed) r0.w, vThreadID.x, l(52), u2.xxxx
  lt r0.z, -r0.z, r0.w
  movc r0.x, r0.z, l(-1.000000), r0.x
endif
ld_structured_indexable(structured_buffer, stride=80)(mixed,mixed,mixed,mixed) r0.z, vThreadID.x, l(8), u2.xxxx
and r0.w, r0.z, l(4)
if_nz r0.w
  ld_structured_indexable(structured_buffer, stride=80)(mixed,mixed,mixed,mixed) r0.w, vThreadID.x, l(56), u2.xxxx
  mul r0.w, r0.w, cb2[10].w
  ld_structured_indexable(structured_buffer, stride=128)(mixed,mixed,mixed,mixed) r1.x, vThreadID.x, l(76), t4.xxxx
  lt r1.y, l(0.000000), r1.x
  if_nz r1.y
    and r0.z, r0.z, l(8192)
    if_nz r0.z
      mul r0.w, r1.x, cb2[13].x
    else
      mul r0.z, r1.x, cb2[13].x
      min r0.w, r0.z, r0.w
    endif
  endif
  lt r0.y, r0.w, r0.y
  movc r0.x, r0.y, l(-1.000000), r0.x
endif
ld_structured_indexable(structured_buffer, stride=80)(mixed,mixed,mixed,mixed) r0.y, vThreadID.x, l(60), u2.xxxx
mad_sat r0.w, r0.x, cb2[10].z, r0.y
store_structured u2.x, vThreadID.x, l(60), r0.w
if_nz cb2[11].w
  ge r1.x, l(0.000000), r0.w
  if_nz r1.x
    ret
  endif
  ld_structured_indexable(structured_buffer, stride=80)(mixed,mixed,mixed,mixed) r1.xyz, vThreadID.x, l(16), u2.xyzx
  ld_structured_indexable(structured_buffer, stride=80)(mixed,mixed,mixed,mixed) r3.xyz, vThreadID.x, l(32), u2.xyzx
  ld_structured_indexable(structured_buffer, stride=80)(mixed,mixed,mixed,mixed) r1.w, vThreadID.x, l(8), u2.xxxx
  and r1.w, r1.w, l(1)
  if_nz r1.w
    add r1.xyz, r2.xyzx, r1.xyzx
    add r3.xyz, r2.xyzx, r3.xyzx
    add r4.xyz, -r1.xyzx, r3.xyzx
    mad r4.xyz, r4.xyzx, l(0.500000, 0.500000, 0.500000, 0.000000), r1.xyzx
    ld_structured_indexable(structured_buffer, stride=80)(mixed,mixed,mixed,mixed) r2.w, vThreadID.x, l(48), u2.xxxx
    mov r3.w, l(0)
    mov r4.w, l(0)
    loop
      uge r5.x, r3.w, l(6)
      mov r4.w, l(0)
      breakc_nz r5.x
      dp3 r5.x, r4.xyzx, cb2[r3.w + 0].xyzx
      add r5.x, r5.x, cb2[r3.w + 0].w
      lt r5.x, r5.x, -r2.w
      if_nz r5.x
        mov r4.w, l(-1)
        break
      endif
      iadd r3.w, r3.w, l(1)
      mov r4.w, r5.x
    endloop
    if_nz r4.w
      ret
    endif
    mov r1.w, l(1.000000)
    dp4 r4.x, r1.xyzw, cb2[6].xyzw
    dp4 r4.y, r1.xyzw, cb2[7].xyzw
    dp4 r4.z, r1.xyzw, cb2[8].xyzw
    dp4 r5.w, r1.xyzw, cb2[9].xyzw
    add r26.x, r5.w, -cb13[0].y
    mad r4.x, cb13[0].x, r26.x, r4.x
    div r4.xyz, r4.xyzx, r5.wwww
    dp4 r6.x, r1.xyzw, cb0[16].xyzw
    dp4 r6.y, r1.xyzw, cb0[17].xyzw
    dp4 r6.z, r1.xyzw, cb0[18].xyzw
    dp4 r7.w, r1.xyzw, cb0[19].xyzw
    add r26.x, r7.w, -cb13[0].y
    mad r6.x, cb13[0].x, r26.x, r6.x
    div r6.xyz, r6.xyzx, r7.wwww
    mad r5.xyz, r4.xyzx, l(0.500000, -0.500000, 1.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
    mad r7.xyz, r6.xyzx, l(0.500000, -0.500000, 1.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
    add r4.xyzw, -r5.xyzw, r7.xyzw
    mad r6.xyz, -|r4.xywx|, l(20.000000, 20.000000, 1.000000, 0.000000), r5.xywx
    min r6.xyz, r6.xyzx, l(340282346638528859811704183484516925440.000000, 340282346638528859811704183484516925440.000000, 340282346638528859811704183484516925440.000000, 0.000000)
    mad r4.xyzw, |r4.xyzw|, l(20.000000, 20.000000, 20.000000, 1.000000), r5.xyzw
    max r4.xyzw, r4.xyzw, l(-340282346638528859811704183484516925440.000000, -340282346638528859811704183484516925440.000000, -340282346638528859811704183484516925440.000000, -340282346638528859811704183484516925440.000000)
    mov r5.xyw, r1.xyxw
    mov r5.z, r3.z
    dp4 r7.x, r5.xyzw, cb2[6].xyzw
    dp4 r7.y, r5.xyzw, cb2[7].xyzw
    dp4 r7.z, r5.xyzw, cb2[8].xyzw
    dp4 r8.w, r5.xyzw, cb2[9].xyzw
    add r26.x, r8.w, -cb13[0].y
    mad r7.x, cb13[0].x, r26.x, r7.x
    div r7.xyz, r7.xyzx, r8.wwww
    dp4 r9.x, r5.xyzw, cb0[16].xyzw
    dp4 r9.y, r5.xyzw, cb0[17].xyzw
    dp4 r9.z, r5.xyzw, cb0[18].xyzw
    dp4 r10.w, r5.xyzw, cb0[19].xyzw
    add r26.x, r10.w, -cb13[0].y
    mad r9.x, cb13[0].x, r26.x, r9.x
    div r9.xyz, r9.xyzx, r10.wwww
    mad r8.xyz, r7.xyzx, l(0.500000, -0.500000, 1.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
    mad r10.xyz, r9.xyzx, l(0.500000, -0.500000, 1.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
    add r7.xyzw, -r8.xyzw, r10.xyzw
    mad r9.xyz, -|r7.xywx|, l(20.000000, 20.000000, 1.000000, 0.000000), r8.xywx
    min r6.xyz, r6.xyzx, r9.xyzx
    mad r7.xyzw, |r7.xyzw|, l(20.000000, 20.000000, 20.000000, 1.000000), r8.xyzw
    max r4.xyzw, r4.xyzw, r7.xyzw
    mov r7.xzw, r1.xxzw
    mov r7.y, r3.y
    dp4 r8.x, r7.xyzw, cb2[6].xyzw
    dp4 r8.y, r7.xyzw, cb2[7].xyzw
    dp4 r8.z, r7.xyzw, cb2[8].xyzw
    dp4 r9.w, r7.xyzw, cb2[9].xyzw
    add r26.x, r9.w, -cb13[0].y
    mad r8.x, cb13[0].x, r26.x, r8.x
    div r3.yzw, r8.xxyz, r9.wwww
    dp4 r8.x, r7.xyzw, cb0[16].xyzw
    dp4 r8.y, r7.xyzw, cb0[17].xyzw
    dp4 r8.z, r7.xyzw, cb0[18].xyzw
    dp4 r10.w, r7.xyzw, cb0[19].xyzw
    add r26.x, r10.w, -cb13[0].y
    mad r8.x, cb13[0].x, r26.x, r8.x
    div r8.xyz, r8.xyzx, r10.wwww
    mad r9.xyz, r3.yzwy, l(0.500000, -0.500000, 1.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
    mad r10.xyz, r8.xyzx, l(0.500000, -0.500000, 1.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
    add r8.xyzw, -r9.xyzw, r10.xyzw
    mad r3.yzw, -|r8.xxyw|, l(0.000000, 20.000000, 20.000000, 1.000000), r9.xxyw
    min r3.yzw, r3.yyzw, r6.xxyz
    mad r6.xyzw, |r8.xyzw|, l(20.000000, 20.000000, 20.000000, 1.000000), r9.xyzw
    max r4.xyzw, r4.xyzw, r6.xyzw
    mov r5.xyw, r7.xyxw
    dp4 r6.x, r5.xyzw, cb2[6].xyzw
    dp4 r6.y, r5.xyzw, cb2[7].xyzw
    dp4 r6.z, r5.xyzw, cb2[8].xyzw
    dp4 r7.w, r5.xyzw, cb2[9].xyzw
    add r26.x, r7.w, -cb13[0].y
    mad r6.x, cb13[0].x, r26.x, r6.x
    div r6.xyz, r6.xyzx, r7.wwww
    dp4 r8.x, r5.xyzw, cb0[16].xyzw
    dp4 r8.y, r5.xyzw, cb0[17].xyzw
    dp4 r8.z, r5.xyzw, cb0[18].xyzw
    dp4 r9.w, r5.xyzw, cb0[19].xyzw
    add r26.x, r9.w, -cb13[0].y
    mad r8.x, cb13[0].x, r26.x, r8.x
    div r8.xyz, r8.xyzx, r9.wwww
    mad r7.xyz, r6.xyzx, l(0.500000, -0.500000, 1.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
    mad r9.xyz, r8.xyzx, l(0.500000, -0.500000, 1.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
    add r6.xyzw, -r7.xyzw, r9.xyzw
    mad r8.xyz, -|r6.xywx|, l(20.000000, 20.000000, 1.000000, 0.000000), r7.xywx
    min r3.yzw, r3.yyzw, r8.xxyz
    mad r6.xyzw, |r6.xyzw|, l(20.000000, 20.000000, 20.000000, 1.000000), r7.xyzw
    max r4.xyzw, r4.xyzw, r6.xyzw
    mov r1.x, r3.x
    dp4 r6.x, r1.xyzw, cb2[6].xyzw
    dp4 r6.y, r1.xyzw, cb2[7].xyzw
    dp4 r6.z, r1.xyzw, cb2[8].xyzw
    dp4 r7.w, r1.xyzw, cb2[9].xyzw
    add r26.x, r7.w, -cb13[0].y
    mad r6.x, cb13[0].x, r26.x, r6.x
    div r6.xyz, r6.xyzx, r7.wwww
    dp4 r8.x, r1.xyzw, cb0[16].xyzw
    dp4 r8.y, r1.xyzw, cb0[17].xyzw
    dp4 r8.z, r1.xyzw, cb0[18].xyzw
    dp4 r9.w, r1.xyzw, cb0[19].xyzw
    add r26.x, r9.w, -cb13[0].y
    mad r8.x, cb13[0].x, r26.x, r8.x
    div r8.xyz, r8.xyzx, r9.wwww
    mad r7.xyz, r6.xyzx, l(0.500000, -0.500000, 1.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
    mad r9.xyz, r8.xyzx, l(0.500000, -0.500000, 1.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
    add r6.xyzw, -r7.xyzw, r9.xyzw
    mad r8.xyz, -|r6.xywx|, l(20.000000, 20.000000, 1.000000, 0.000000), r7.xywx
    min r3.xyz, r3.yzwy, r8.xyzx
    mad r6.xyzw, |r6.xyzw|, l(20.000000, 20.000000, 20.000000, 1.000000), r7.xyzw
    max r4.xyzw, r4.xyzw, r6.xyzw
    mov r6.xyw, r1.xyxw
    mov r6.z, r5.z
    dp4 r7.x, r6.xyzw, cb2[6].xyzw
    dp4 r7.y, r6.xyzw, cb2[7].xyzw
    dp4 r7.z, r6.xyzw, cb2[8].xyzw
    dp4 r8.w, r6.xyzw, cb2[9].xyzw
    add r26.x, r8.w, -cb13[0].y
    mad r7.x, cb13[0].x, r26.x, r7.x
    div r7.xyz, r7.xyzx, r8.wwww
    dp4 r9.x, r6.xyzw, cb0[16].xyzw
    dp4 r9.y, r6.xyzw, cb0[17].xyzw
    dp4 r9.z, r6.xyzw, cb0[18].xyzw
    dp4 r10.w, r6.xyzw, cb0[19].xyzw
    add r26.x, r10.w, -cb13[0].y
    mad r9.x, cb13[0].x, r26.x, r9.x
    div r9.xyz, r9.xyzx, r10.wwww
    mad r8.xyz, r7.xyzx, l(0.500000, -0.500000, 1.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
    mad r10.xyz, r9.xyzx, l(0.500000, -0.500000, 1.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
    add r7.xyzw, -r8.xyzw, r10.xyzw
    mad r9.xyz, -|r7.xywx|, l(20.000000, 20.000000, 1.000000, 0.000000), r8.xywx
    min r3.xyz, r3.xyzx, r9.xyzx
    mad r7.xyzw, |r7.xyzw|, l(20.000000, 20.000000, 20.000000, 1.000000), r8.xyzw
    max r4.xyzw, r4.xyzw, r7.xyzw
    mov r5.xzw, r1.xxzw
    dp4 r1.x, r5.xyzw, cb2[6].xyzw
    dp4 r1.y, r5.xyzw, cb2[7].xyzw
    dp4 r1.z, r5.xyzw, cb2[8].xyzw
    dp4 r7.w, r5.xyzw, cb2[9].xyzw
    add r26.x, r7.w, -cb13[0].y
    mad r1.x, cb13[0].x, r26.x, r1.x
    div r1.xyz, r1.xyzx, r7.wwww
    dp4 r8.x, r5.xyzw, cb0[16].xyzw
    dp4 r8.y, r5.xyzw, cb0[17].xyzw
    dp4 r8.z, r5.xyzw, cb0[18].xyzw
    dp4 r9.w, r5.xyzw, cb0[19].xyzw
    add r26.x, r9.w, -cb13[0].y
    mad r8.x, cb13[0].x, r26.x, r8.x
    div r8.xyz, r8.xyzx, r9.wwww
    mad r7.xyz, r1.xyzx, l(0.500000, -0.500000, 1.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
    mad r9.xyz, r8.xyzx, l(0.500000, -0.500000, 1.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
    add r1.xyzw, -r7.xyzw, r9.xyzw
    mad r8.xyz, -|r1.xywx|, l(20.000000, 20.000000, 1.000000, 0.000000), r7.xywx
    min r3.xyz, r3.xyzx, r8.xyzx
    mad r1.xyzw, |r1.xyzw|, l(20.000000, 20.000000, 20.000000, 1.000000), r7.xyzw
    max r1.xyzw, r1.xyzw, r4.xyzw
    mov r6.xyw, r5.xyxw
    dp4 r4.x, r6.xyzw, cb2[6].xyzw
    dp4 r4.y, r6.xyzw, cb2[7].xyzw
    dp4 r4.z, r6.xyzw, cb2[8].xyzw
    dp4 r5.w, r6.xyzw, cb2[9].xyzw
    add r26.x, r5.w, -cb13[0].y
    mad r4.x, cb13[0].x, r26.x, r4.x
    div r4.xyz, r4.xyzx, r5.wwww
    dp4 r7.x, r6.xyzw, cb0[16].xyzw
    dp4 r7.y, r6.xyzw, cb0[17].xyzw
    dp4 r7.z, r6.xyzw, cb0[18].xyzw
    dp4 r6.w, r6.xyzw, cb0[19].xyzw
    add r26.x, r6.w, -cb13[0].y
    mad r7.x, cb13[0].x, r26.x, r7.x
    div r7.xyz, r7.xyzx, r6.wwww
    mad r5.xyz, r4.xyzx, l(0.500000, -0.500000, 1.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
    mad r6.xyz, r7.xyzx, l(0.500000, -0.500000, 1.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
    add r4.xyzw, -r5.xyzw, r6.xyzw
    mad r6.xyz, -|r4.xywx|, l(20.000000, 20.000000, 1.000000, 0.000000), r5.xywx
    min r3.xyz, r3.xyzx, r6.xyzx
    mad r4.xyzw, |r4.xyzw|, l(20.000000, 20.000000, 20.000000, 1.000000), r5.xyzw
    max r1.xyzw, r1.xyzw, r4.xyzw
    lt r2.w, r3.z, l(0.000000)
    lt r1.w, r1.w, l(0.000000)
    or r1.w, r1.w, r2.w
    if_z r1.w
      itof r4.xyzw, cb2[12].xyxy
      mov r3.zw, r1.xxxy
      mul r1.xy, r4.xyxx, r3.xyxx
      mad r1.xy, r3.zwzz, r4.zwzz, -r1.xyxx
      max r1.x, r1.y, r1.x
      mul r1.x, r1.x, l(0.500000)
      max r1.x, r1.x, l(1.000000)
      log r1.x, r1.x
      round_pi r1.x, r1.x
      ftoi r1.x, r1.x
      imax r1.x, r1.x, l(0)
      imin r4.zw, r1.xxxx, cb2[12].zzzz
      ishr r5.xyzw, cb2[12].xyxy, r4.wwww
      itof r6.xyzw, r5.zwzw
      mul r3.xyzw, r3.xyzw, r6.xyzw
      round_ni r3.xyzw, r3.xyzw
      iadd r5.xyzw, r5.xyzw, l(-1, -1, -1, -1)
      itof r5.xyzw, r5.xyzw
      max r3.xyzw, r3.xyzw, l(0.000000, 0.000000, 0.000000, 0.000000)
      min r3.xyzw, r5.xyzw, r3.xyzw
      ftoi r1.xy, r3.xyxx
      mov r4.x, r1.x
      mov r1.w, l(0)
      loop
        itof r2.w, r4.x
        lt r2.w, r3.z, r2.w
        mov r1.w, l(0)
        breakc_nz r2.w
        mov r4.y, r1.y
        mov r2.w, l(0)
        loop
          itof r3.x, r4.y
          lt r3.x, r3.w, r3.x
          mov r2.w, l(0)
          breakc_nz r3.x
          ld_indexable(texture2d)(float,float,float,float) r3.x, r4.xyzw, t6.xyzw
          ge r3.x, r1.z, r3.x
          if_nz r3.x
            mov r2.w, l(-1)
            break
          endif
          iadd r4.y, r4.y, l(1)
          mov r2.w, r3.x
        endloop
        mov r1.w, r2.w
        breakc_nz r2.w
        iadd r4.x, r4.x, l(1)
        mov r1.w, r2.w
      endloop
      not r1.x, r1.w
    else
      mov r1.x, l(0)
    endif
    if_nz r1.x
      ret
    endif
  endif
else
  mov r0.w, l(1.000000)
endif
ld_structured_indexable(structured_buffer, stride=80)(mixed,mixed,mixed,mixed) r1.xyz, vThreadID.x, l(0), u2.xyzx
imad r1.y, l(20), r1.y, l(4)
imm_atomic_iadd r3.x, u1, r1.y, l(1)
iadd r1.x, r1.x, r3.x
ld_structured_indexable(structured_buffer, stride=128)(mixed,mixed,mixed,mixed) r3.xyzw, vThreadID.x, l(0), t4.xyzw
ld_structured_indexable(structured_buffer, stride=128)(mixed,mixed,mixed,mixed) r4.xyzw, vThreadID.x, l(16), t4.xyzw
ld_structured_indexable(structured_buffer, stride=128)(mixed,mixed,mixed,mixed) r5.xyzw, vThreadID.x, l(32), t4.xywz
ld_structured_indexable(structured_buffer, stride=128)(mixed,mixed,mixed,mixed) r6.xyzw, vThreadID.x, l(48), t4.xyzw
ld_structured_indexable(structured_buffer, stride=128)(mixed,mixed,mixed,mixed) r0.xyz, vThreadID.x, l(64), t4.xyzx
ld_structured_indexable(structured_buffer, stride=128)(mixed,mixed,mixed,mixed) r7.xyzw, vThreadID.x, l(80), t4.xyzw
ld_structured_indexable(structured_buffer, stride=128)(mixed,mixed,mixed,mixed) r8.xyzw, vThreadID.x, l(96), t4.xyzw
ld_structured_indexable(structured_buffer, stride=128)(mixed,mixed,mixed,mixed) r9.xyzw, vThreadID.x, l(112), t4.xyzw
store_structured u0.xyz, r1.x, l(0), r3.xyzx
store_structured u0.xyz, r1.x, l(16), r4.xyzx
store_structured u0.xyz, r1.x, l(32), r5.xywx
store_structured u0.xyzw, r1.x, l(48), r6.xyzw
store_structured u0.xyzw, r1.x, l(80), r7.xyzw
store_structured u0.xyzw, r1.x, l(96), r8.xyzw
store_structured u0.xyzw, r1.x, l(112), r9.xyzw
store_structured u0.xyzw, r1.x, l(64), r0.xyzw
mov r5.x, r3.w
mov r5.y, r4.w
add r0.xyz, r2.xyzx, r5.xyzx
store_structured u0.x, r1.x, l(12), r0.x
store_structured u0.x, r1.x, l(28), r0.y
store_structured u0.x, r1.x, l(44), r0.z
and r0.w, r1.z, l(4096)
if_nz r0.w
  store_structured u0.xyz, r1.x, l(80), cb0[46].xyzx
endif
ld_structured_indexable(structured_buffer, stride=80)(mixed,mixed,mixed,mixed) r0.w, vThreadID.x, l(8), u2.xxxx
and r1.y, r0.w, l(2)
if_nz r1.y
  ld_structured_indexable(structured_buffer, stride=80)(mixed,mixed,mixed,mixed) r1.y, vThreadID.x, l(76), u2.xxxx
  ld_structured_indexable(structured_buffer, stride=80)(mixed,mixed,mixed,mixed) r1.z, vThreadID.x, l(12), u2.xxxx
  mov r1.w, l(0)
  loop
    uge r2.x, r1.w, cb2[12].w
    breakc_nz r2.x
    ld_structured_indexable(structured_buffer, stride=32)(mixed,mixed,mixed,mixed) r2.xyzw, r1.w, l(0), t5.xyzw
    add r2.xyz, r0.xyzx, -r2.xyzx
    dp3 r3.x, r2.xyzx, r2.xyzx
    sqrt r3.y, r3.x
    add r2.w, r1.y, r2.w
    lt r3.z, r3.y, r2.w
    if_nz r3.z
      ishl r3.z, r1.w, l(2)
      atomic_or u3, r3.z, r0.w
      lt r3.z, l(0.000000), r3.y
      if_nz r3.z
        ld_structured_indexable(structured_buffer, stride=32)(mixed,mixed,mixed,mixed) r3.zw, r1.w, l(16), t5.xxxy
        add r3.w, r3.w, r3.y
        mul r3.w, r3.w, l(0.159154937)
        ge r4.x, r3.w, -r3.w
        frc r3.w, |r3.w|
        movc r3.w, r4.x, r3.w, -r3.w
        mul r3.w, r3.w, l(6.28318548)
        sincos r3.w, null, r3.w
        mad r3.w, r3.w, l(0.500000), l(0.500000)
        rsq r3.x, r3.x
        mul r2.xyz, r2.xyzx, r3.xxxx
        mul r2.xyz, r3.wwww, r2.xyzx
        add r2.w, -r3.y, r2.w
        mul r2.xyz, r2.wwww, r2.xyzx
        mul r2.xyz, r1.zzzz, r2.xyzx
        ld_structured_indexable(structured_buffer, stride=128)(mixed,mixed,mixed,mixed) r3.xyw, r1.x, l(116), u0.xyxz
        mad r2.xyz, r2.xyzx, r3.zzzz, r3.xywx
        store_structured u0.xyz, r1.x, l(116), r2.xyzx
      endif
    endif
    iadd r1.w, r1.w, l(1)
  endloop
endif
ret
// Approximately 0 instruction slots used
