// AUTOMATICALLY CONVERTED FROM SHADER FIXES 
//
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v0.6.63 on Sun Oct  9 13:52:25 2022
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// POSITION                 0   xyzw        0     NONE   float   xyz
// TEXCOORD                 0   xy          1     NONE   float
// TEXCOORD                 1   xy          2     NONE   float
// TEXCOORD                 2   xy          3     NONE   float
// TEXCOORD                 3   xy          4     NONE   float
// NORMAL                   0   xyz         5     NONE   float   xyz
// TANGENT                  0   xyzw        6     NONE   float
// BLENDWEIGHT              0   xyzw        7     NONE   float   xyz
// BLENDINDICES             0   xyzw        8     NONE    uint   xyzw
// SV_InstanceID            0   x           9   INSTID    uint   x
// SV_VertexID              0   x          10   VERTID    uint   x
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_POSITION              0   xyzw        0      POS   float   xyzw
// VERT_ID                  0   x           1     NONE    uint   x
// P                        0   x           2  RTINDEX    uint   x
//
vs_5_0
dcl_output_siv o2.x, rendertarget_array_index
dcl_globalFlags refactoringAllowed
dcl_constantbuffer CB1[6], immediateIndexed
dcl_constantbuffer CB2[37], immediateIndexed
dcl_resource_structured t0, 48
dcl_resource_structured t2, 104
dcl_input v0.xyz
dcl_input v5.xyz
dcl_input v7.xyz
dcl_input v8.xyzw
dcl_input_sgv v9.x, instance_id
dcl_input_sgv v10.x, vertex_id
dcl_output_siv o0.xyzw, position
dcl_output o1.x
dcl_temps 53
dcl_resource_buffer (float,float,float,float) t125
ld_indexable(buffer)(float,float,float,float) r52.xyzw, l(0, 0, 0, 0), t125.xyzw
mov o2.x, r52.z
ld_indexable(buffer)(float,float,float,float) r40.xyzw, l(0, 0, 0, 0), t125.xyzw
ld_structured_indexable(structured_buffer, stride=48)(mixed,mixed,mixed,mixed) r0.xyzw, v8.y, l(0), t0.xyzw
mul r0.xyzw, r0.xyzw, v7.yyyy
ld_structured_indexable(structured_buffer, stride=48)(mixed,mixed,mixed,mixed) r1.xyzw, v8.x, l(0), t0.xyzw
mad r0.xyzw, v7.xxxx, r1.xyzw, r0.xyzw
ld_structured_indexable(structured_buffer, stride=48)(mixed,mixed,mixed,mixed) r1.xyzw, v8.z, l(0), t0.xyzw
mad r0.xyzw, v7.zzzz, r1.xyzw, r0.xyzw
ld_structured_indexable(structured_buffer, stride=48)(mixed,mixed,mixed,mixed) r1.xyzw, v8.w, l(0), t0.xyzw
add r2.x, v7.y, v7.x
add r2.x, r2.x, v7.z
add r2.x, -r2.x, l(1.000000)
mad r0.xyzw, r2.xxxx, r1.xyzw, r0.xyzw
mov r1.x, r0.w
ld_structured_indexable(structured_buffer, stride=48)(mixed,mixed,mixed,mixed) r3.xyzw, v8.y, l(16), t0.xyzw
mul r3.xyzw, r3.xyzw, v7.yyyy
ld_structured_indexable(structured_buffer, stride=48)(mixed,mixed,mixed,mixed) r4.xyzw, v8.x, l(16), t0.xyzw
mad r3.xyzw, v7.xxxx, r4.xyzw, r3.xyzw
ld_structured_indexable(structured_buffer, stride=48)(mixed,mixed,mixed,mixed) r4.xyzw, v8.z, l(16), t0.xyzw
mad r3.xyzw, v7.zzzz, r4.xyzw, r3.xyzw
ld_structured_indexable(structured_buffer, stride=48)(mixed,mixed,mixed,mixed) r4.xyzw, v8.w, l(16), t0.xyzw
mad r3.xyzw, r2.xxxx, r4.xyzw, r3.xyzw
mov r1.y, r3.w
ld_structured_indexable(structured_buffer, stride=48)(mixed,mixed,mixed,mixed) r4.xyzw, v8.y, l(32), t0.xyzw
mul r4.xyzw, r4.xyzw, v7.yyyy
ld_structured_indexable(structured_buffer, stride=48)(mixed,mixed,mixed,mixed) r5.xyzw, v8.x, l(32), t0.xyzw
mad r4.xyzw, v7.xxxx, r5.xyzw, r4.xyzw
ld_structured_indexable(structured_buffer, stride=48)(mixed,mixed,mixed,mixed) r5.xyzw, v8.z, l(32), t0.xyzw
mad r4.xyzw, v7.zzzz, r5.xyzw, r4.xyzw
ld_structured_indexable(structured_buffer, stride=48)(mixed,mixed,mixed,mixed) r5.xyzw, v8.w, l(32), t0.xyzw
mad r2.xyzw, r2.xxxx, r5.xyzw, r4.xyzw
mov r1.z, r2.w
mad r4.xyz, v0.xyzx, cb1[4].xyzx, cb1[5].xyzx
dp3 r5.x, r4.xyzx, r0.xyzx
dp3 r5.y, r4.xyzx, r3.xyzx
dp3 r5.z, r4.xyzx, r2.xyzx
add r1.xyz, r1.xyzx, r5.xyzx
add r4.xyz, r1.xyzx, -cb2[31].xyzx
dp3 r0.w, r4.xyzx, r4.xyzx
rsq r0.w, r0.w
mul r4.xyz, r0.wwww, r4.xyzx
mad r5.xyz, v5.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), l(-1.000000, -1.000000, -1.000000, 0.000000)
dp3 r0.x, r5.xyzx, r0.xyzx
dp3 r0.y, r5.xyzx, r3.xyzx
dp3 r0.z, r5.xyzx, r2.xyzx
dp3 r0.w, r0.xyzx, r0.xyzx
rsq r0.w, r0.w
mul r0.xyz, r0.wwww, r0.xyzx
dp3_sat r0.w, -r4.xyzx, r0.xyzx
mul r0.xyz, r0.xyzx, cb2[36].yyyy
add r0.w, -r0.w, l(1.000000)
mad r0.xyz, -r0.xyzx, r0.wwww, r1.xyzx
mad r2.xyz, r4.xyzx, cb2[30].wwww, r0.xyzx
add r0.xyz, r0.xyzx, cb2[30].xyzx
ieq r0.w, l(1), cb2[36].x
movc r0.xyz, r0.wwww, r0.xyzx, r2.xyzx
movc r0.xyz, cb2[36].xxxx, r0.xyzx, r1.xyzx
mov r0.w, l(1.000000)
dp4 r42.x, r0.xyzw, cb2[16].xyzw
dp4 r42.y, r0.xyzw, cb2[17].xyzw
dp4 r42.z, r0.xyzw, cb2[18].xyzw
dp4 r42.w, r0.xyzw, cb2[19].xyzw
ieq r41.x, r42.w, l(0x3f800000)
ieq r41.y, l(1), cb2[36].x
if_nz r41.x
  if_z r41.y
    add r40.w, r42.w, -r40.y
    mad r42.x, r40.x, r40.w, r42.x
  endif
endif
mov r50.xyzw, r42.xyzw
iadd r0.x, v9.x, cb1[1].y
ld_structured_indexable(structured_buffer, stride=104)(mixed,mixed,mixed,mixed) r0.x, r0.x, l(100), t2.xxxx
bfi o1.x, l(24), l(0), v10.x, r0.x
add r51.x, -r52.y, r50.w
mul r51.y, r52.x, r52.w
mad r51.x, r51.x, r51.y, r50.x
ne r51.y, l(1.000000), r50.w
movc r50.x, r51.y, r51.x, r50.x
mov o0.xyzw, r50.xyzw
ret
// Approximately 0 instruction slots used
