// MANUALLY DUMPED [ShaderRegex\ShaderFixes\ShaderRegEx_UE4_UNIVERSAL2_C44.ini\_100_SunMoonVSSpecial1]
//
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v1.3.16 on Sat Dec 18 22:39:06 2021
//
//
// 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
// TEXCOORD                 0   xyzw        2     NONE   float   xyzw
// PRIMITIVE_ID             0   x           3     NONE    uint   x
// SV_POSITION              0   xyzw        4      POS   float   xyzw
//
vs_5_0
dcl_globalFlags refactoringAllowed
dcl_constantbuffer cb0[71], immediateIndexed
dcl_constantbuffer cb1[1], immediateIndexed
dcl_constantbuffer cb2[10], immediateIndexed
dcl_resource_structured t0, 16
dcl_resource_buffer (float,float,float,float) t1
dcl_resource_buffer (float,float,float,float) t2
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.x
dcl_output_siv o4.xyzw, position
dcl_temps 12
dcl_resource_texture2d (float,float,float,float) t125
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)
imul null, r0.x, r0.x, cb1[0].y
ld_indexable(buffer)(float,float,float,float) r1.yz, r0.xxxx, t1.zxyw
ld_indexable(buffer)(float,float,float,float) r2.xyzw, r1.xxxx, t2.xyzw
mul r3.xyz, r0.yzwy, r2.yzxy
mad r0.xyz, r2.xyzx, r0.zwyz, -r3.xyzx
mul r0.xyz, r2.wwww, r0.xyzx
mul r3.xyz, r2.yzxy, r0.xyzx
mad r0.xyz, r0.zxyz, r2.zxyz, -r3.xyzx
mul r0.xyz, r2.wwww, r0.xyzx
imad r3.xyzw, v1.xxxx, l(35, 35, 35, 35), l(1, 2, 4, 3)
ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r4.xyz, r3.x, l(0), t0.xyzx
ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r5.xyzw, r3.z, l(0), t0.xyzw
mul r6.xyz, r4.xyzx, r5.yyyy
mul r4.xyz, r4.xyzx, v0.yyyy
mul r7.xyz, r0.yyyy, r6.xyzx
mul r6.xyz, r2.yyyy, r6.xyzx
imul null, r0.y, v1.x, l(35)
ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r8.xyz, r0.y, l(0), t0.xyzx
mul r9.xyz, r5.xxxx, r8.xyzx
mad r4.xyz, r8.xyzx, v0.xxxx, r4.xyzx
mad r0.xyw, r0.xxxx, r9.xyxz, r7.xyxz
mad r6.xyz, r2.xxxx, r9.xyzx, r6.xyzx
ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r3.xyz, r3.y, l(0), t0.xyzx
ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r7.xyz, r3.w, l(0), t0.xyzx
add r7.xyz, r7.xyzx, cb0[70].xyzx
mul r5.xyz, r5.zzzz, r3.xyzx
mad r3.xyz, r3.xyzx, v0.zzzz, r4.xyzx
add r3.xyz, r7.xyzx, r3.xyzx
mul o1.w, r2.w, r5.w
mad o1.xyz, r2.zzzz, r5.xyzx, r6.xyzx
mad o0.xyz, r0.zzzz, r5.xyzx, r0.xywx
mov o2.xy, r1.yzyy
add r0.xy, r1.yzyy, l(-0.500000, -0.500000, 0.000000, 0.000000)
add r0.xy, r0.xyxx, r0.xyxx
mov o2.zw, l(0,0,0,0)
mov o3.x, v1.x
add r1.xyz, r3.xyzx, -cb0[70].xyzx
add r2.xyz, -r1.zxyz, cb0[67].zxyz
dp3 r0.z, r2.xyzx, r2.xyzx
sqrt r0.z, r0.z
div r2.xyz, r2.xyzx, r0.zzzz
mul r4.xyz, r2.zxyz, l(1.000000, 0.000000, 0.000000, 0.000000)
mad r4.xyz, r2.xyzx, l(0.000000, 1.000000, 0.000000, 0.000000), -r4.xyzx
mul r5.xyz, r2.xyzx, r4.yzxy
mad r2.xyz, r2.zxyz, r4.zxyz, -r5.xyzx
mul r0.xzw, r0.xxxx, r4.xxyz
mul r0.xzw, r0.xxzw, cb2[9].xxxx
mad r0.xyz, r2.xyzx, r0.yyyy, r0.xzwx
mul r0.xyz, r0.xyzx, cb2[9].zzzz
imad r0.w, v1.x, l(35), l(5)
ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r2.xyz, r0.w, l(0), t0.xyzx
add r2.xyz, r2.xyzx, -cb0[67].xyzx
dp3 r0.w, r2.xyzx, r2.xyzx
sqrt r0.w, r0.w
mad r1.xyz, r0.xyzx, r0.wwww, r1.xyzx
mul r0.xyz, r0.wwww, r0.xyzx
add r1.xyz, -r1.xyzx, cb0[67].xyzx
mad r0.xyz, r1.xyzx, cb2[9].wwww, r0.xyzx
mad r0.xyz, r0.xyzx, cb2[7].zzzz, r3.xyzx

mul r1.xyzw, r0.yyyy, cb0[1].xyzw
mad r1.xyzw, r0.xxxx, cb0[0].xyzw, r1.xyzw
mad r0.xyzw, r0.zzzz, cb0[2].xyzw, r1.xyzw

ld_indexable(texture2d)(float,float,float,float) r10.xyzw, l(0, 0, 0, 0), t125.xyzw
add r11.xyzw, r0.xyzw, cb0[3].xyzw
mul r10.x, r10.x, l(0.98)
mad r11.x, r10.x, r10.y, r11.x
mov o4.xyzw, r11.xyzw
ret
// Approximately 0 instruction slots used
