// AUTOMATICALLY CONVERTED FROM SHADER FIXES 
//
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v0.6.89 on Thu Dec  8 00:09:56 2022
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// ATTRIBUTE                0   xyzw        0     NONE   float   xyz
// ATTRIBUTE               13   x           1     NONE    uint   x
// SV_VertexID              0   x           2   VERTID    uint   x
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// TEXCOORD                10   xyzw        0     NONE   float   xyzw
// TEXCOORD                11   xyzw        1     NONE   float   xyzw
// COLOR                    0   xyzw        2     NONE   float   xyzw
// TEXCOORD                 0   xyzw        3     NONE   float   xyzw
// PRIMITIVE_ID             0   x           4     NONE    uint   x
// SV_POSITION              0   xyzw        5      POS   float   xyzw
// SV_ClipDistance          0   x           6  CLIPDST   float   x
// P                        0   x           7  RTINDEX    uint   x
//
vs_5_0
dcl_output_siv o7.x, rendertarget_array_index
dcl_globalFlags refactoringAllowed
dcl_constantbuffer CB0[143], immediateIndexed
dcl_constantbuffer CB1[1], immediateIndexed
dcl_constantbuffer CB2[12], immediateIndexed
dcl_resource_structured t0, 16
dcl_resource_buffer (float,float,float,float) t1
dcl_resource_buffer (float,float,float,float) t2
dcl_resource_buffer (float,float,float,float) t3
dcl_input v0.xyz
dcl_input v1.x
dcl_input_sgv v2.x, vertex_id
dcl_output o0.xyzw
dcl_output o1.xyzw
dcl_output o2.xyzw
dcl_output o3.xyzw
dcl_output o4.x
dcl_output_siv o5.xyzw, position
dcl_output_siv o6.x, clip_distance
dcl_temps 33
dcl_resource_buffer (float,float,float,float) t125
ld_indexable(buffer)(float,float,float,float) r32.xyzw, l(0, 0, 0, 0), t125.xyzw
mov o7.x, r32.z
ld_indexable(buffer)(float,float,float,float) r25.xyzw, l(0, 0, 0, 0), t125.xyzw
mov o0.w, l(0)
iadd r0.x, v2.x, cb1[0].w
ishl r0.y, r0.x, l(1)
ld_indexable(buffer)(float,float,float,float) r0.yzw, r0.yyyy, t2.wxyz
bfi r1.x, l(31), l(1), r0.x, l(1)
ld_indexable(buffer)(float,float,float,float) r1.xyzw, r1.xxxx, t2.xyzw
mul r2.xyz, r0.yzwy, r1.yzxy
mad r0.yzw, r1.xxyz, r0.zzwy, -r2.xxyz
mul r0.yzw, r1.wwww, r0.yyzw
mul r2.xyz, r1.yzxy, r0.yzwy
mad r0.yzw, r0.wwyz, r1.zzxy, -r2.xxyz
mul r0.yzw, r1.wwww, r0.yyzw
imul null, r2.x, v1.x, l(36)
imad r2.yz, v1.xxxx, l(0, 36, 36, 0), l(0, 1, 3, 0)
ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r3.xyz, r2.y, l(0), t0.xyzx
ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r2.yzw, r2.z, l(0), t0.xxyz
add r2.yzw, r2.yyzw, cb0[70].xxyz
imad r3.w, v1.x, l(36), l(4)
ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r4.xyzw, r3.w, l(0), t0.xyzw
mul r5.xyz, r3.xyzx, r4.yyyy
mul r3.xyz, r3.xyzx, v0.yyyy
mul r6.xyz, r0.zzzz, r5.xyzx
mul r5.xyz, r1.yyyy, r5.xyzx
ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r7.xyz, r2.x, l(0), t0.xyzx
imad r0.z, v1.x, l(36), l(2)
ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r8.xyz, r0.z, l(0), t0.xyzx
mul r9.xyz, r4.xxxx, r7.xyzx
mad r3.xyz, r7.xyzx, v0.xxxx, r3.xyzx
mad r3.xyz, r8.xyzx, v0.zzzz, r3.xyzx
mul r4.xyz, r4.zzzz, r8.xyzx
mul o1.w, r1.w, r4.w
add r2.xyz, r2.yzwy, r3.xyzx
mad r3.xyz, r0.yyyy, r9.xyzx, r6.xyzx
mad o0.xyz, r0.wwww, r4.xyzx, r3.xyzx
mad r0.yzw, r1.xxxx, r9.xxyz, r5.xxyz
mad o1.xyz, r1.zzzz, r4.xyzx, r0.yzwy
and r0.y, r0.x, cb1[0].x
imul null, r0.x, r0.x, cb1[0].y
ld_indexable(buffer)(float,float,float,float) r0.xz, r0.xxxx, t1.xzyw
mov o3.xy, r0.xzxx
ld_indexable(buffer)(float,float,float,float) r0.xyzw, r0.yyyy, t3.xyzw
mov o2.xyzw, r0.zyxw
mov o3.zw, l(0,0,0,0)
mov o4.x, v1.x
add r0.x, r0.w, l(-1.000000)
ge r0.y, r0.w, l(1.000000)
movc r0.y, r0.y, l(0), cb2[8].x
lt r0.x, l(0.000010), |r0.x|
and r0.x, r0.y, r0.x
add r0.x, r0.x, cb0[142].w
mul r0.x, r0.x, cb2[8].y
frc r0.x, r0.x
add r0.y, -cb2[11].y, cb2[11].x
mad r0.z, r0.x, r0.y, cb2[11].y
add r1.xyz, r2.xyzx, -cb0[70].xyzx
add r1.xyz, -r1.xyzx, cb0[67].xyzx
dp3 r0.w, r1.xyzx, r1.xyzx
sqrt r0.w, r0.w
div r1.xyz, r1.xyzx, r0.wwww
add r0.w, r0.w, l(-20.000000)
min r0.w, r0.w, cb2[11].z
mov r0.xy, l(0,0,0,0)
mad r0.xyz, r1.xyzx, r0.wwww, r0.xyzx
add r0.xyz, r0.xyzx, r2.xyzx
mul r1.xyzw, r0.yyyy, cb0[1].xyzw
mad r1.xyzw, r0.xxxx, cb0[0].xyzw, r1.xyzw
mad r1.xyzw, r0.zzzz, cb0[2].xyzw, r1.xyzw
add r0.xyz, r0.xyzx, -cb0[70].xyzx
mul r26.x, r25.y, l(0.020000)
mad r1.x, r25.x, r26.x, r1.x
add r30.xyzw, r1.xyzw, cb0[3].xyzw
mov r0.w, l(1.000000)
dp4 o6.x, cb0[127].xyzw, r0.xyzw
add r31.x, -r32.y, r30.w
mul r31.y, r32.x, r32.w
mad r31.x, r31.x, r31.y, r30.x
ne r31.y, l(1.000000), r30.w
movc r30.x, r31.y, r31.x, r30.x
mov o5.xyzw, r30.xyzw
ret
// Approximately 0 instruction slots used
