// AUTOMATICALLY CONVERTED FROM SHADER FIXES 
//
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v0.6.198 on Sun Nov  2 17:25:29 2025
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Position              0   xyzw        0      POS   float   xy
// SV_IsFrontFace           0   x           1    FFACE    uint
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Target                0   xyzw        0   TARGET   float   xyzw
// SV_Target                1   xyzw        1   TARGET   float   xyzw
// SV_Target                2   xyzw        2   TARGET   float   xyzw
//
ps_5_0
dcl_globalFlags refactoringAllowed
dcl_constantbuffer CB0[14], immediateIndexed
dcl_constantbuffer CB1[144], immediateIndexed
dcl_constantbuffer CB2[7], immediateIndexed
dcl_sampler s0, mode_default
dcl_sampler s1, mode_default
dcl_sampler s2, mode_default
dcl_sampler s3, mode_default
dcl_resource_texture2d (float,float,float,float) t0
dcl_resource_texture2d (float,float,float,float) t1
dcl_resource_texture2d (float,float,float,float) t2
dcl_resource_texture2d (float,float,float,float) t3
dcl_input_ps_siv linear noperspective v0.xy, position
dcl_output o0.xyzw
dcl_output o1.xyzw
dcl_output o2.xyzw
dcl_temps 23
dcl_resource_buffer (float,float,float,float) t125
dcl_resource_texture1d (float,float,float,float) t120
ld_indexable(buffer)(float,float,float,float) r7.xyzw, l(0, 0, 0, 0), t125.xyzw
ld_indexable(texture1d)(float,float,float,float) r5.xyzw, l(15, 0, 0, 0), t120.xyzw
ftou r6.xyzw, r5.xyzw
mov r8.x, v0.x
mul r9.xyzw, v0.yyyy, cb0[1].xyzw
mad r9.xyzw, r8.xxxx, cb0[0].xyzw, r9.xyzw
mul r10.xy, v0.xyxx, cb1[132].zwzz
sample_l_indexable(texture2d)(float,float,float,float) r11.x, r10.xyxx, t0.xyzw, s0, l(0.000000)
mad r9.xyzw, r11.xxxx, cb0[2].xyzw, r9.xyzw
add r9.xyzw, r9.xyzw, cb0[3].xyzw
mul r12.x, l(0.500000), cb1[r6.x + 0].x
mad r12.y, r9.w, r7.y, l(-1.000000)
mul r12.y, r12.y, r12.x
mad r8.x, r7.x, r12.y, r8.x
mul r0.xyzw, v0.yyyy, cb0[1].xyzw
mad r0.xyzw, r8.xxxx, cb0[0].xyzw, r0.xyzw
mul r1.xy, v0.xyxx, cb1[132].zwzz
sample_l_indexable(texture2d)(float,float,float,float) r1.x, r1.xyxx, t0.xyzw, s0, l(0.000000)
mad r0.xyzw, r1.xxxx, cb0[2].xyzw, r0.xyzw
add r0.xyzw, r0.xyzw, cb0[3].xyzw
div r0.xyz, r0.xyzx, r0.wwww
add r1.yzw, r0.xxyz, l(0.000000, 1.000000, 1.000000, 1.000000)
lt r1.yzw, r1.yyzw, l(0.000000, 0.000000, 0.000000, 0.000000)
or r0.w, r1.z, r1.y
or r0.w, r1.w, r0.w
discard_nz r0.w
add r1.yzw, -r0.xxyz, l(0.000000, 1.000000, 1.000000, 1.000000)
mad r0.xyz, r0.xyzx, l(0.500000, 0.500000, 0.500000, 0.000000), l(0.500000, 0.500000, 0.500000, 0.000000)
lt r1.yzw, r1.yyzw, l(0.000000, 0.000000, 0.000000, 0.000000)
or r0.w, r1.z, r1.y
or r0.w, r1.w, r0.w
discard_nz r0.w
mul r21.yzw, v0.yyyy, cb1[45].xxyw
mad r21.yzw, v0.xxxx, cb1[44].xxyw, r21.yyzw
mad r21.xyz, r1.xxxx, cb1[46].xywx, r21.yzwy
add r21.xyz, r21.xyzx, cb1[47].xywx
mad r12.y, r21.z, r7.y, l(-1.000000)
mul r12.y, r12.y, r12.x
mad r8.x, r7.x, r12.y, v0.x
mul r1.yzw, v0.yyyy, cb1[45].xxyw
mad r1.yzw, r8.xxxx, cb1[44].xxyw, r1.yyzw
mad r1.xyz, r1.xxxx, cb1[46].xywx, r1.yzwy
add r1.xyz, r1.xyzx, cb1[47].xywx
div r1.xy, r1.xyxx, r1.zzzz
add r1.xy, r1.xyxx, -cb1[70].xyxx
div r1.xy, r1.xyxx, cb2[5].xxxx
sample_b_indexable(texture2d)(float,float,float,float) r2.xyz, r1.xyxx, t2.xyzw, s2, cb1[143].y
sample_b_indexable(texture2d)(float,float,float,float) r1.xy, r1.xyxx, t1.xyzw, s1, cb1[143].y
mad r1.xy, r1.xyxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
add r3.xyz, -r2.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
mul r3.xyz, r3.xyzx, cb2[4].xyzx
mad r3.xyz, -r3.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), l(1.000000, 1.000000, 1.000000, 0.000000)
mul r4.xyz, r2.xyzx, cb2[3].xyzx
ge r2.xyz, r2.xyzx, l(0.500000, 0.500000, 0.500000, 0.000000)
add r4.xyz, r4.xyzx, r4.xyzx
movc_sat o0.xyz, r2.xyzx, r3.xyzx, r4.xyzx
mad r0.x, r0.x, l(2.000000), l(-1.000000)
sample_b_indexable(texture2d)(float,float,float,float) r0.y, r0.zyzz, t3.yxzw, s3, cb1[143].y
mul_sat r0.y, r0.y, cb2[6].w
mad_sat r0.x, -|r0.x|, l(4.000000), l(4.000000)
mul r0.x, r0.x, cb0[13].x
mul r0.x, r0.x, r0.y
mov o0.w, r0.x
dp2 r0.y, r1.xyxx, r1.xyxx
add r0.y, -r0.y, l(1.000000)
max r0.y, r0.y, l(0.000000)
sqrt r1.z, r0.y
add r0.yzw, -r1.xxyz, l(0.000000, 0.000000, 0.000000, 1.000000)
mad r0.yzw, cb2[5].zzzz, r0.yyzw, r1.xxyz
mad r0.yzw, r0.yyzw, cb1[138].wwww, cb1[138].xxyz
dp3 r1.x, r0.yzwy, r0.yzwy
rsq r1.x, r1.x
mul r0.yzw, r0.yyzw, r1.xxxx
dp3 r1.x, cb0[4].xyzx, cb0[4].xyzx
rsq r1.x, r1.x
mul r0.w, -r0.w, r1.x
dp3 r1.x, cb0[5].xyzx, cb0[5].xyzx
rsq r1.y, r1.x
dp3 r1.x, cb0[6].xyzx, cb0[6].xyzx
rsq r1.z, r1.x
mul r0.yz, r0.zzyz, r1.yyzy
mul r1.xyz, r0.yyyy, cb0[5].xyzx
mad r1.xyz, r0.wwww, cb0[4].xyzx, r1.xyzx
mad r0.yzw, r0.zzzz, cb0[6].xxyz, r1.xxyz
dp3 r1.x, r0.yzwy, r0.yzwy
rsq r1.x, r1.x
mul r0.yzw, r0.yyzw, r1.xxxx
mad o1.xyz, r0.yzwy, l(0.500000, 0.500000, 0.500000, 0.000000), l(0.501960814, 0.501960814, 0.501960814, 0.000000)
mov o1.w, r0.x
mov o2.w, r0.x
mov_sat r0.xyz, cb2[6].xyzx
mad o2.z, r0.z, cb1[139].y, cb1[139].x
mov o2.xy, r0.xyxx
ret
// Approximately 0 instruction slots used
