//
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v0.6.164 on Wed Dec 17 16:14:41 2025
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_POSITION              0   xyzw        0      POS   float
// TEXCOORD                 0   xy          1     NONE   float   xy
// TEXCOORD                 7     zw        1     NONE   float     zw
// TEXCOORD                 1   xyzw        2     NONE   float   xy w
// TEXCOORD                 2   xyzw        3     NONE   float   xy w
// TEXCOORD                 3   xyzw        4     NONE   float   xyz
// TEXCOORD                 4   xyz         5     NONE   float
// TEXCOORD                 5   xyz         6     NONE   float
// TEXCOORD                 6   xyz         7     NONE   float
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Target                0   xyzw        0   TARGET   float   xyzw
//
ps_4_0
dcl_constantbuffer CB0[49], immediateIndexed
dcl_constantbuffer CB1[1], immediateIndexed
dcl_sampler s0, mode_default
dcl_sampler s1, mode_default
dcl_sampler s2, mode_default
dcl_sampler s3, mode_default
dcl_sampler s4, mode_default
dcl_sampler s5, mode_default
dcl_sampler s6, 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_resource_texture2d (float,float,float,float) t4
dcl_resource_texture2d (float,float,float,float) t5
dcl_resource_texture2d (float,float,float,float) t6
dcl_input_ps linear v1.xy
dcl_input_ps linear v1.zw
dcl_input_ps linear v2.xyw
dcl_input_ps linear v3.xyw
dcl_input_ps linear v4.xyz
dcl_output o0.xyzw
dcl_temps 6
div r0.xy, v2.xyxx, v2.wwww
mad r0.zw, r0.xxxy, l(0.000000, 0.000000, 2.000000, 2.000000), l(0.000000, 0.000000, -1.000000, -1.000000)
mul r1.xyzw, r0.wwww, cb0[26].xyzw
mad r1.xyzw, cb0[25].xyzw, r0.zzzz, r1.xyzw
sample r2.xyzw, r0.xyxx, t1.xyzw, s3
mad r1.xyzw, cb0[27].xyzw, r2.xxxx, r1.xyzw
add r1.xyzw, r1.xyzw, cb0[28].xyzw
div r1.xyz, r1.xyzx, r1.wwww
add r0.z, r1.y, -v4.y
add r1.xyz, -r1.xyzx, v4.xyzx
dp3 r0.w, r1.xyzx, r1.xyzx
sqrt r0.w, r0.w
div_sat r0.w, r0.w, cb0[32].y
add r0.z, -|r0.z|, l(1.000000)
add r0.z, -r0.z, l(1.000000)
div_sat r1.xy, r0.zzzz, cb0[29].xzxx
add r1.xy, -r1.xyxx, l(1.000000, 1.000000, 0.000000, 0.000000)
mul r0.z, r1.x, cb0[29].y
lt r1.x, l(0.000000), r1.y
itof r1.x, -r1.x
mov_sat r1.x, r1.x
add r1.y, -r0.w, l(1.000000)
mad_sat r2.xyz, cb0[36].xyzx, r1.yyyy, r0.wwww
mul r0.w, r1.y, cb0[31].w
add r1.y, -cb0[33].x, cb0[33].y
add r3.xyz, v4.xyzx, -cb0[46].xyzx
dp3 r1.z, r3.xyzx, r3.xyzx
sqrt r1.z, r1.z
add r1.w, r1.z, -cb0[33].x
div_sat r1.y, r1.w, r1.y
add r1.y, -r1.y, l(1.000000)
mul_sat r3.xyz, r1.yyyy, cb0[34].xyzx
mul r1.y, cb0[38].x, cb1[0].x
mul r4.xy, r1.yyyy, cb0[20].zwzz
mad r4.xy, v4.xzxx, cb0[20].xyxx, r4.xyxx
sample r4.xyzw, r4.xyxx, t0.xyzw, s2
mad r4.xy, r4.xyxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
mad r0.xy, r4.xyxx, cb0[32].xxxx, r0.xyxx
sample r5.xyzw, r0.xyxx, t2.xyzw, s4
mad r0.xyw, r5.xyxz, r0.wwww, r3.xyxz
mul r3.xy, r1.yyyy, cb0[19].zwzz
mad r3.zw, r4.xxxy, cb0[29].wwww, v1.xxxy
mad r3.xy, r3.zwzz, cb0[19].xyxx, r3.xyxx
sample r3.xyzw, r3.xyxx, t3.xyzw, s1
mad r0.xyz, r3.xyzx, r0.zzzz, r0.xywx
add r0.xyz, -r0.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
add r0.w, r1.z, -cb0[41].x
add r1.w, -cb0[41].x, cb0[41].y
div_sat r0.w, r0.w, r1.w
add r0.w, -r0.w, l(1.000000)
div r3.xy, v3.xyxx, v3.wwww
add r3.z, -r3.x, l(1.000000)
mad r3.xy, r4.xyxx, cb0[32].wwww, r3.zyzz
mad r3.zw, r4.xxxy, cb0[38].yyyy, v1.xxxy
sample r4.xyzw, r3.xyxx, t5.xyzw, s5
mul r4.xyz, r4.xyzx, cb0[32].zzzz
mul_sat r4.xyz, r0.wwww, r4.xyzx
add r4.xyz, -r4.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
mad r0.xyz, -r0.xyzx, r4.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
mul r3.xy, r1.yyyy, cb0[18].zwzz
mul r1.yw, r1.yyyy, cb0[24].zzzw
mad r1.yw, r3.zzzw, cb0[24].xxxy, r1.yyyw
mad r3.xy, r3.zwzz, cb0[18].xyxx, r3.xyxx
sample r3.xyzw, r3.xyxx, t4.xyzw, s0
sample r4.xyzw, r1.ywyy, t6.xyzw, s6
add r0.w, r1.z, -cb0[39].x
add r1.y, r1.z, -cb0[40].x
add r1.z, -cb0[39].x, cb0[39].y
div_sat r0.w, r0.w, r1.z
add r0.w, -r0.w, l(1.000000)
mul_sat r3.xyz, r0.wwww, r3.xyzx
mad r0.xyz, r3.xyzx, cb0[47].zzzz, r0.xyzx
mul r3.xyz, r2.xyzx, r0.xyzx
mad r0.xyz, -r0.xyzx, r2.xyzx, cb0[48].xyzx
add r0.w, -cb0[40].x, cb0[40].y
div_sat r0.w, r1.y, r0.w
add r0.w, -r0.w, l(1.000000)
mul_sat r0.w, r0.w, r4.x
mad r0.xyz, r0.wwww, r0.xyzx, r3.xyzx
add r1.yzw, cb0[4].xxyz, -cb0[5].xxyz
mad r1.yzw, v1.wwww, r1.yyzw, cb0[5].xxyz
add r1.yzw, -r0.xxyz, r1.yyzw
mad r1.yzw, cb0[7].xxxx, r1.yyzw, r0.xxyz
add r0.xyz, r0.xyzx, -r1.yzwy
mad r0.xyz, v1.zzzz, r0.xyzx, r1.yzwy
mul r1.yzw, cb0[30].wwww, cb0[30].xxyz
mad_sat o0.xyz, r1.yzwy, r1.xxxx, r0.xyzx
mov o0.w, cb0[31].z
ret
// Approximately 0 instruction slots used

///////////////////////////////// HLSL Code /////////////////////////////////
// // ---- Created with 3Dmigoto v0.6.164 on Wed Dec 17 16:14:41 2025
// Texture2D<float4> t6 : register(t6);
//
// Texture2D<float4> t5 : register(t5);
//
// Texture2D<float4> t4 : register(t4);
//
// Texture2D<float4> t3 : register(t3);
//
// Texture2D<float4> t2 : register(t2);
//
// Texture2D<float4> t1 : register(t1);
//
// Texture2D<float4> t0 : register(t0);
//
// SamplerState s6_s : register(s6);
//
// SamplerState s5_s : register(s5);
//
// SamplerState s4_s : register(s4);
//
// SamplerState s3_s : register(s3);
//
// SamplerState s2_s : register(s2);
//
// SamplerState s1_s : register(s1);
//
// SamplerState s0_s : register(s0);
//
// cbuffer cb1 : register(b1)
// {
//   float4 cb1[1];
// }
//
// cbuffer cb0 : register(b0)
// {
//   float4 cb0[49];
// }
//
//
//
//
// // 3Dmigoto declarations
// #define cmp -
// Texture1D<float4> IniParams : register(t120);
// Texture2D<float4> StereoParams : register(t125);
//
//
// void main(
//   float4 v0 : SV_POSITION0,
//   float2 v1 : TEXCOORD0,
//   float2 w1 : TEXCOORD7,
//   float4 v2 : TEXCOORD1,
//   float4 v3 : TEXCOORD2,
//   float4 v4 : TEXCOORD3,
//   float4 v5 : TEXCOORD4,
//   float4 v6 : TEXCOORD5,
//   float3 v7 : TEXCOORD6,
//   out float4 o0 : SV_Target0)
// {
//   float4 r0,r1,r2,r3,r4,r5;
//   uint4 bitmask, uiDest;
//   float4 fDest;
//
//   r0.xy = v2.xy / v2.ww;
//   r0.zw = r0.xy * float2(2,2) + float2(-1,-1);
//   r1.xyzw = cb0[26].xyzw * r0.wwww;
//   r1.xyzw = cb0[25].xyzw * r0.zzzz + r1.xyzw;
//   r2.xyzw = t1.Sample(s3_s, r0.xy).xyzw;
//   r1.xyzw = cb0[27].xyzw * r2.xxxx + r1.xyzw;
//   r1.xyzw = cb0[28].xyzw + r1.xyzw;
//   r1.xyz = r1.xyz / r1.www;
//   r0.z = -v4.y + r1.y;
//   r1.xyz = v4.xyz + -r1.xyz;
//   r0.w = dot(r1.xyz, r1.xyz);
//   r0.w = sqrt(r0.w);
//   r0.w = saturate(r0.w / cb0[32].y);
//   r0.z = 1 + -abs(r0.z);
//   r0.z = 1 + -r0.z;
//   r1.xy = saturate(r0.zz / cb0[29].xz);
//   r1.xy = float2(1,1) + -r1.xy;
//   r0.z = cb0[29].y * r1.x;
//   r1.x = cmp(0 < r1.y);
//   r1.x = (int)-r1.x;
//   r1.x = saturate(r1.x);
//   r1.y = 1 + -r0.w;
//   r2.xyz = saturate(cb0[36].xyz * r1.yyy + r0.www);
//   r0.w = cb0[31].w * r1.y;
//   r1.y = cb0[33].y + -cb0[33].x;
//   r3.xyz = -cb0[46].xyz + v4.xyz;
//   r1.z = dot(r3.xyz, r3.xyz);
//   r1.z = sqrt(r1.z);
//   r1.w = -cb0[33].x + r1.z;
//   r1.y = saturate(r1.w / r1.y);
//   r1.y = 1 + -r1.y;
//   r3.xyz = saturate(cb0[34].xyz * r1.yyy);
//   r1.y = cb1[0].x * cb0[38].x;
//   r4.xy = cb0[20].zw * r1.yy;
//   r4.xy = v4.xz * cb0[20].xy + r4.xy;
//   r4.xyzw = t0.Sample(s2_s, r4.xy).xyzw;
//   r4.xy = r4.xy * float2(2,2) + float2(-1,-1);
//   r0.xy = r4.xy * cb0[32].xx + r0.xy;
//   r5.xyzw = t2.Sample(s4_s, r0.xy).xyzw;
//   r0.xyw = r5.xyz * r0.www + r3.xyz;
//   r3.xy = cb0[19].zw * r1.yy;
//   r3.zw = r4.xy * cb0[29].ww + v1.xy;
//   r3.xy = r3.zw * cb0[19].xy + r3.xy;
//   r3.xyzw = t3.Sample(s1_s, r3.xy).xyzw;
//   r0.xyz = r3.xyz * r0.zzz + r0.xyw;
//   r0.xyz = float3(1,1,1) + -r0.xyz;
//   r0.w = -cb0[41].x + r1.z;
//   r1.w = cb0[41].y + -cb0[41].x;
//   r0.w = saturate(r0.w / r1.w);
//   r0.w = 1 + -r0.w;
//   r3.xy = v3.xy / v3.ww;
//   r3.z = 1 + -r3.x;
//   r3.xy = r4.xy * cb0[32].ww + r3.zy;
//   r3.zw = r4.xy * cb0[38].yy + v1.xy;
//   r4.xyzw = t5.Sample(s5_s, r3.xy).xyzw;
//   r4.xyz = cb0[32].zzz * r4.xyz;
//   r4.xyz = saturate(r4.xyz * r0.www);
//   r4.xyz = float3(1,1,1) + -r4.xyz;
//   r0.xyz = -r0.xyz * r4.xyz + float3(1,1,1);
//   r3.xy = cb0[18].zw * r1.yy;
//   r1.yw = cb0[24].zw * r1.yy;
//   r1.yw = r3.zw * cb0[24].xy + r1.yw;
//   r3.xy = r3.zw * cb0[18].xy + r3.xy;
//   r3.xyzw = t4.Sample(s0_s, r3.xy).xyzw;
//   r4.xyzw = t6.Sample(s6_s, r1.yw).xyzw;
//   r0.w = -cb0[39].x + r1.z;
//   r1.y = -cb0[40].x + r1.z;
//   r1.z = cb0[39].y + -cb0[39].x;
//   r0.w = saturate(r0.w / r1.z);
//   r0.w = 1 + -r0.w;
//   r3.xyz = saturate(r3.xyz * r0.www);
//   r0.xyz = r3.xyz * cb0[47].zzz + r0.xyz;
//   r3.xyz = r0.xyz * r2.xyz;
//   r0.xyz = -r0.xyz * r2.xyz + cb0[48].xyz;
//   r0.w = cb0[40].y + -cb0[40].x;
//   r0.w = saturate(r1.y / r0.w);
//   r0.w = 1 + -r0.w;
//   r0.w = saturate(r4.x * r0.w);
//   r0.xyz = r0.www * r0.xyz + r3.xyz;
//   r1.yzw = -cb0[5].xyz + cb0[4].xyz;
//   r1.yzw = w1.yww * r1.yzw + cb0[5].xyz;
//   r1.yzw = r1.yzw + -r0.xyz;
//   r1.yzw = cb0[7].xxx * r1.yzw + r0.xyz;
//   r0.xyz = -r1.yzw + r0.xyz;
//   r0.xyz = w1.xzz * r0.xyz + r1.yzw;
//   r1.yzw = cb0[30].xyz * cb0[30].www;
//   o0.xyz = saturate(r1.yzw * r1.xxx + r0.xyz);
//   o0.w = cb0[31].z;
//   return;
// }
//////////////////////////////// HLSL Errors ////////////////////////////////
// C:\Program Files (x86)\Steam\steamapps\common\Planet of Lana\ShaderFixes\e4395483622971d0-ps_replace.txt(145,12-17): error X3018: invalid subscript 'yww'
/////////////////////////////////////////////////////////////////////////////
