//VoM pause reflection VS 1. Filtered by pixel shader.
// ---- Created with geo-11 v0.6.198 on Tue Jul  7 00:11:38 2026
//Buffer<float4> t2 : register(t2);
//
//Buffer<float4> t1 : register(t1);
//
//struct t0_t {
//  float val[4];
//};
//StructuredBuffer<t0_t> t0 : register(t0);
//
//cbuffer cb1 : register(b1)
//{
//  float4 cb1[1];
//}
//
//cbuffer cb0 : register(b0)
//{
//  float4 cb0[163];
//}
//
//
//
//
//// 3Dmigoto declarations
//#define cmp -
//Texture1D<float4> IniParams : register(t120);
//Texture2D<float4> StereoParams : register(t125);
//
//
//void main(
//  float4 v0 : ATTRIBUTE0,
//  uint v1 : ATTRIBUTE13,
//  uint v2 : SV_VertexID0,
//  out float4 o0 : TEXCOORD10,
//  out float4 o1 : TEXCOORD11,
//  out float4 o2 : TEXCOORD0,
//  out uint o3 : PRIMITIVE_ID0,
//  out float4 o4 : VELOCITY_PREV_POS0,
//  out float4 o5 : SV_POSITION0)
//{
//// Needs manual fix for instruction:
//// unknown dcl_: dcl_input_sgv v2.x, vertex_id
//  float4 r0,r1,r2,r3,r4,r5,r6,r7,r8;
//  uint4 bitmask, uiDest;
//  float4 fDest;
//
//  r0.x = (int)v2.x + asint(cb1[0].w);
//  r0.y = (uint)r0.x << 1;
//  r0.yzw = t2.Load(r0.y).xyz;
//  bitmask.x = ((~(-1 << 31)) << 1) & 0xffffffff;  r1.x = (((uint)r0.x << 1) & bitmask.x) | ((uint)1 & ~bitmask.x);
//  r1.xyzw = t2.Load(r1.x).xyzw;
//  r2.xyz = r1.yzx * r0.yzw;
//  r0.yzw = r1.xyz * r0.zwy + -r2.xyz;
//  r0.yzw = r0.yzw * r1.www;
//  r2.xyz = r0.yzw * r1.yzx;
//  r0.yzw = r0.wyz * r1.zxy + -r2.xyz;
//  r0.yzw = r0.yzw * r1.www;
//  r2.x = (int)v1.x * 36;
//  r2.x = t0[r2.x].val[0/4];
//  r2.y = t0[r2.x].val[0/4+1];
//  r2.z = t0[r2.x].val[0/4+2];
//  r3.xy = mad((int2)v1.xx, int2(36,36), int2(1,3));
//  r3.x = t0[r3.x].val[0/4];
//  r3.z = t0[r3.x].val[0/4+1];
//  r3.w = t0[r3.x].val[0/4+2];
//  r2.w = mad((int)v1.x, 36, 2);
//  r4.x = t0[r2.w].val[0/4];
//  r4.y = t0[r2.w].val[0/4+1];
//  r4.z = t0[r2.w].val[0/4+2];
//  r5.xy = mad((int2)v1.xx, int2(36,36), int2(4,26));
//  r6.x = t0[r5.x].val[0/4];
//  r6.y = t0[r5.x].val[0/4+1];
//  r6.z = t0[r5.x].val[0/4+2];
//  r6.w = t0[r5.x].val[0/4+3];
//  r5.xzw = r6.xxx * r2.xyz;
//  r7.xyz = r6.yyy * r3.xzw;
//  r6.xyz = r6.zzz * r4.xyz;
//  r8.xyz = r7.xyz * r0.zzz;
//  r8.xyz = r0.yyy * r5.xzw + r8.xyz;
//  o0.xyz = r0.www * r6.xyz + r8.xyz;
//  r0.yzw = r7.xyz * r1.yyy;
//  r0.yzw = r1.xxx * r5.xzw + r0.yzw;
//  o1.xyz = r1.zzz * r6.xyz + r0.yzw;
//  o1.w = r6.w * r1.w;
//  r0.y = t0[r3.y].val[0/4];
//  r0.z = t0[r3.y].val[0/4+1];
//  r0.w = t0[r3.y].val[0/4+2];
//  r1.xyz = v0.yyy * r3.xzw;
//  r1.xyz = r2.xyz * v0.xxx + r1.xyz;
//  r1.xyz = r4.xyz * v0.zzz + r1.xyz;
//  r0.yzw = cb0[74].xyz + r0.yzw;
//  r0.yzw = r1.xyz + r0.yzw;
//  r0.x = (int)r0.x * asint(cb1[0].y);
//  r1.xy = t1.Load(r0.x).xy;
//  r2.xyzw = cb0[1].xyzw * r0.zzzz;
//  r2.xyzw = r0.yyyy * cb0[0].xyzw + r2.xyzw;
//  r0.xyzw = r0.wwww * cb0[2].xyzw + r2.xyzw;
//  o5.xyzw = cb0[3].xyzw + r0.xyzw;
//  r0.x = t0[r5.y].val[12/4];
//  r0.x = cmp(0 < (uint)r0.x);
//  r0.y = cmp(asint(cb0[162].x) != 0);
//  r0.x = (int)r0.y | (int)r0.x;
//  if (r0.x != 0) {
//    r0.xyzw = mad((int4)v1.xxxx, int4(36,36,36,36), int4(10,11,12,13));
//    r2.x = t0[r0.x].val[0/4];
//    r2.y = t0[r0.x].val[0/4+1];
//    r2.z = t0[r0.x].val[0/4+2];
//    r3.x = t0[r0.y].val[0/4];
//    r3.y = t0[r0.y].val[0/4+1];
//    r3.z = t0[r0.y].val[0/4+2];
//    r0.x = t0[r0.z].val[0/4];
//    r0.y = t0[r0.z].val[0/4+1];
//    r0.z = t0[r0.z].val[0/4+2];
//    r4.x = t0[r0.w].val[0/4];
//    r4.y = t0[r0.w].val[0/4+1];
//    r4.z = t0[r0.w].val[0/4+2];
//    r4.xyw = cb0[121].xyz + r4.xyz;
//    r5.x = r2.x;
//    r5.y = r3.x;
//    r5.z = r0.x;
//    r5.w = r4.x;
//    r0.x = dot(v0.xyzw, r5.xyzw);
//    r5.x = r2.y;
//    r5.y = r3.y;
//    r5.z = r0.y;
//    r5.w = r4.y;
//    r0.y = dot(v0.xyzw, r5.xyzw);
//    r4.x = r2.z;
//    r4.y = r3.z;
//    r4.z = r0.z;
//    r0.z = dot(v0.xyzw, r4.xyzw);
//    r2.xyzw = cb0[96].xyzw * r0.yyyy;
//    r2.xyzw = r0.xxxx * cb0[95].xyzw + r2.xyzw;
//    r0.xyzw = r0.zzzz * cb0[97].xyzw + r2.xyzw;
//    o4.xyzw = cb0[98].xyzw + r0.xyzw;
//  } else {
//    o4.xyzw = float4(0,0,0,1);
//  }
//  o0.w = 0;
//  o2.xy = r1.xy;
//  o2.zw = float2(0,0);
//  o3.x = v1.x;
//  return;
//}
//
///*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v0.6.198 on Tue Jul  7 00:11:38 2026
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// ATTRIBUTE                0   xyzw        0     NONE   float   xyzw
// 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
// VELOCITY_PREV_POS        0   xyzw        4     NONE   float   xyzw
// SV_POSITION              0   xyzw        5      POS   float   xyzw
//
vs_5_0
dcl_globalFlags refactoringAllowed
dcl_constantbuffer CB0[163], immediateIndexed
dcl_constantbuffer CB1[1], immediateIndexed
dcl_constantbuffer CB14[3], 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.xyzw
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 o4.xyzw
dcl_output_siv o5.xyzw, position
dcl_temps 29
dcl_resource_texture2d (float,float,float,float) t125
dcl_resource_texture1d (float,float,float,float) t120
ld_indexable(texture2d)(float,float,float,float) r25.xyzw, l(0, 0, 0, 0), t125.xyzw
ld_indexable(texture1d)(float,float,float,float) r23.xyzw, l(3, 0, 0, 0), t120.xyzw
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)
ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r2.xyz, r2.x, l(0), t0.xyzx
imad r3.xy, v1.xxxx, l(36, 36, 0, 0), l(1, 3, 0, 0)
ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r3.xzw, r3.x, l(0), t0.xxyz
imad r2.w, v1.x, l(36), l(2)
ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r4.xyz, r2.w, l(0), t0.xyzx
imad r5.xy, v1.xxxx, l(36, 36, 0, 0), l(4, 26, 0, 0)
ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r6.xyzw, r5.x, l(0), t0.xyzw
mul r5.xzw, r2.xxyz, r6.xxxx
mul r7.xyz, r3.xzwx, r6.yyyy
mul r6.xyz, r4.xyzx, r6.zzzz
mul r8.xyz, r0.zzzz, r7.xyzx
mad r8.xyz, r0.yyyy, r5.xzwx, r8.xyzx
mad o0.xyz, r0.wwww, r6.xyzx, r8.xyzx
mul r0.yzw, r1.yyyy, r7.xxyz
mad r0.yzw, r1.xxxx, r5.xxzw, r0.yyzw
mad o1.xyz, r1.zzzz, r6.xyzx, r0.yzwy
mul o1.w, r1.w, r6.w
ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r0.yzw, r3.y, l(0), t0.xxyz
mul r1.xyz, r3.xzwx, v0.yyyy
mad r1.xyz, r2.xyzx, v0.xxxx, r1.xyzx
mad r1.xyz, r4.xyzx, v0.zzzz, r1.xyzx
add r0.yzw, r0.yyzw, cb0[74].xxyz
add r0.yzw, r0.yyzw, r1.xxyz
imul null, r0.x, r0.x, cb1[0].y
ld_indexable(buffer)(float,float,float,float) r1.xy, r0.xxxx, t1.xyzw
mul r2.xyzw, r0.zzzz, cb0[1].xyzw
mad r2.xyzw, r0.yyyy, cb0[0].xyzw, r2.xyzw
mad r0.xyzw, r0.wwww, cb0[2].xyzw, r2.xyzw
add r15.xyzw, r0.xyzw, cb0[3].xyzw

ne r27.x, r23.x, l(2.0)
ne r27.y, r15.w, l(1.0)
and r27.x, r27.x, r27.y
if_nz r27.x
  add r26.x, r15.w, -r25.y
  mad r15.x, r25.x, r26.x, r15.x
endif

mov o5.xyzw, r15.xyzw
ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r0.x, r5.y, l(12), t0.xxxx
ult r0.x, l(0), r0.x
ine r0.y, cb0[162].x, l(0)
or r0.x, r0.y, r0.x
if_nz r0.x
  imad r0.xyzw, v1.xxxx, l(36, 36, 36, 36), l(10, 11, 12, 13)
  ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r2.xyz, r0.x, l(0), t0.xyzx
  ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r3.xyz, r0.y, l(0), t0.xyzx
  ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r0.xyz, r0.z, l(0), t0.xyzx
  ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r4.xyz, r0.w, l(0), t0.xyzx
  add r4.xyw, r4.xyxz, cb0[121].xyxz
  mov r5.x, r2.x
  mov r5.y, r3.x
  mov r5.z, r0.x
  mov r5.w, r4.x
  dp4 r0.x, v0.xyzw, r5.xyzw
  mov r5.x, r2.y
  mov r5.y, r3.y
  mov r5.z, r0.y
  mov r5.w, r4.y
  dp4 r0.y, v0.xyzw, r5.xyzw
  mov r4.x, r2.z
  mov r4.y, r3.z
  mov r4.z, r0.z
  dp4 r0.z, v0.xyzw, r4.xyzw
  mul r2.xyzw, r0.yyyy, cb0[96].xyzw
  mad r2.xyzw, r0.xxxx, cb0[95].xyzw, r2.xyzw
  mad r0.xyzw, r0.zzzz, cb0[97].xyzw, r2.xyzw
  add o4.xyzw, r0.xyzw, cb0[98].xyzw
else
  mov o4.xyzw, l(0,0,0,1.000000)
endif
mov o0.w, l(0)
mov o2.xy, r1.xyxx
mov o2.zw, l(0,0,0,0)
mov o3.x, v1.x
ret
// Approximately 0 instruction slots used
