//Clipping CS 1.
//
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v1.3.16 on Sun May 23 23:04:52 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[81], dynamicIndexed
dcl_constantbuffer cb1[54], immediateIndexed
dcl_resource_texture2d (float,float,float,float) t0
dcl_uav_typed_texture2d (uint,uint,uint,uint) u0
dcl_input vThreadID.xy
dcl_temps 40
dcl_resource_texture2d (float,float,float,float) t125
dcl_thread_group 8, 8, 1

ld_indexable(texture2d)(float,float,float,float) r25.xyzw, l(0, 0, 0, 0), t125.xyzw

mov r0.xy, vThreadID.xyxx
mov r0.zw, l(0,0,0,0)
ld_indexable(texture2d)(float,float,float,float) r0.x, r0.xyzw, t0.xyzw

mov r10.x, r0.x

utof r0.yz, vThreadID.xxyx
add r0.yz, r0.yyzy, l(0.000000, 0.500000, 0.500000, 0.000000)
div r0.yz, r0.yyzy, cb0[80].yyzy
max r0.x, r0.x, l(1.000000012E-007)
mad r0.yz, r0.yyzy, l(0.000000, 2.000000, 2.000000, 0.000000), l(0.000000, -1.000000, -1.000000, 0.000000)

mad r0.y, -r25.x, l(1.0), r0.y

mul r25.w, r10.x, r25.y
mul r25.w, r25.w, l(0.105)
mad r0.y, r25.x, r25.w, r0.y

mul r1.xyzw, -r0.zzzz, cb1[33].xyzw
mad r1.xyzw, r0.yyyy, cb1[32].xyzw, r1.xyzw
mad r0.xyzw, r0.xxxx, cb1[34].xyzw, r1.xyzw
add r0.xyzw, r0.xyzw, cb1[35].xyzw
div r0.xyz, r0.xyzx, r0.wwww
add r0.xyz, r0.xyzx, cb1[53].xyzx
mov r0.w, cb0[80].x
mov r1.xy, l(0,0,0,0)
loop
  breakc_z r0.w
  iadd r1.z, r1.y, l(1)
  ige r1.w, r1.y, l(32)
  if_nz r1.w
    break
  endif
  firstbit_lo r1.w, r0.w
  ishl r2.x, l(1), r1.w
  xor r0.w, r0.w, r2.x
  ishl r2.x, r1.w, l(2)
  mul r2.yzw, cb1[53].yyyy, cb0[r2.x + 1].xxyz
  mad r2.yzw, cb1[53].xxxx, cb0[r2.x + 0].xxyz, r2.yyzw
  mad r2.yzw, cb1[53].zzzz, cb0[r2.x + 2].xxyz, r2.yyzw
  add r2.yzw, r2.yyzw, cb0[r2.x + 3].xxyz
  mul r3.xyz, r0.yyyy, cb0[r2.x + 1].xyzx
  mad r3.xyz, r0.xxxx, cb0[r2.x + 0].xyzx, r3.xyzx
  mad r3.xyz, r0.zzzz, cb0[r2.x + 2].xyzx, r3.xyzx
  add r3.xyz, r3.xyzx, cb0[r2.x + 3].xyzx
  mad r4.xyz, cb0[r1.w + 64].wwww, l(0.500000, 0.500000, 0.500000, 0.000000), cb0[r1.w + 64].xyzx
  add r5.xyz, -r2.yzwy, r3.xyzx
  dp3 r2.x, r5.xyzx, r5.xyzx
  rsq r2.x, r2.x
  mul r5.xyz, r2.xxxx, r5.xyzx
  add r6.xyz, -r3.xyzx, -r4.xyzx
  div r6.xyz, r6.xyzx, -r5.xyzx
  add r3.xyz, -r3.xyzx, r4.xyzx
  div r3.xyz, r3.xyzx, -r5.xyzx
  min r7.xyz, r3.xyzx, r6.xyzx
  max r2.x, r7.x, r7.y
  max r3.xyz, r3.xyzx, r6.xyzx
  min r3.x, r3.x, r3.y
  max r2.x, r2.x, r7.z
  min r3.x, r3.x, r3.z
  ge r3.y, r3.x, l(0.000000)
  ge r2.x, r3.x, r2.x
  and r2.x, r3.y, r2.x
  add r3.xyz, -r2.yzwy, -r4.xyzx
  div r3.xyz, r3.xyzx, r5.xyzx
  add r2.yzw, -r2.yyzw, r4.xxyz
  div r2.yzw, r2.yyzw, r5.xxyz
  min r4.xyz, r2.yzwy, r3.xyzx
  max r3.w, r4.x, r4.y
  max r2.yzw, r2.yyzw, r3.xxyz
  min r2.y, r2.y, r2.z
  max r2.z, r3.w, r4.z
  min r2.y, r2.y, r2.w
  ge r2.w, r2.y, l(0.000000)
  ge r2.y, r2.y, r2.z
  and r2.y, r2.w, r2.y
  and r2.x, r2.y, r2.x
  bfi r1.w, l(1), r1.w, l(1), r1.x
  movc r1.x, r2.x, r1.w, r1.x
  mov r1.xy, r1.xzxx
endloop
store_uav_typed u0.xyzw, vThreadID.xyyy, r1.xxxx
ret
// Approximately 0 instruction slots used
