// AUTOMATICALLY CONVERTED FROM SHADER FIXES 
//
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v0.6.181 on Sat Aug 23 17:57:03 2025
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Position              0   xyzw        0      POS   float
// TEXCOORD                 0   xyzw        1     NONE   float   xyzw
// TEXCOORD                 1   xyzw        2     NONE   float   xyz
// TEXCOORD                 2   xyzw        3     NONE   float   xy w
// TEXCOORD                 3   xyzw        4     NONE   float   xy w
// TEXCOORD                 4   xyzw        5     NONE   float   xyzw
// TEXCOORD                 5   xyzw        6     NONE   float   xyzw
// TEXCOORD                 6   xyz         7     NONE   float   xyz
// TEXCOORD                 7   xyz         8     NONE   float   xyz
// TEXCOORD                 8   xyz         9     NONE   float   xyz
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Target                0   xyzw        0   TARGET   float   xyzw
//
ps_5_0
dcl_globalFlags refactoringAllowed
dcl_constantbuffer CB0[61], immediateIndexed
dcl_constantbuffer CB13[61], 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_texturecube (float,float,float,float) t4
dcl_resource_texture2d (float,float,float,float) t5
dcl_resource_texture1d (float,float,float,float) t6
dcl_input_ps linear v1.xyzw
dcl_input_ps linear v2.xyz
dcl_input_ps linear v3.xyw
dcl_input_ps linear v4.xyw
dcl_input_ps linear v5.xyzw
dcl_input_ps linear v6.xyzw
dcl_input_ps linear v7.xyz
dcl_input_ps linear v8.xyz
dcl_input_ps linear v9.xyz
dcl_output o0.xyzw
dcl_temps 31
dcl_resource_buffer (float,float,float,float) t125
ld_indexable(buffer)(float,float,float,float) r25.xyzw, l(0, 0, 0, 0), t125.xyzw
mov r24.xyw, v4.xyxw
add r26.x, r24.w, -r25.y
mul r26.x, r26.x, l(0.500000)
mad r24.x, r25.x, r26.x, r24.x
sample_indexable(texture2d)(float,float,float,float) r0.xyz, v1.xyxx, t0.xyzw, s0
mad r0.xyz, r0.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), l(-1.000000, -1.000000, -1.000000, 0.000000)
sample_indexable(texture2d)(float,float,float,float) r1.xyz, v1.zwzz, t0.xyzw, s0
mad r1.xyz, r1.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), l(-1.000000, -1.000000, -1.000000, 0.000000)
mul r1.xyz, r1.xyzx, cb0[45].yyyy
mad r0.xyz, r0.xyzx, cb0[45].xxxx, r1.xyzx
sample_indexable(texture2d)(float,float,float,float) r1.xyz, v2.xyxx, t0.xyzw, s0
mad r1.xyz, r1.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), l(-1.000000, -1.000000, -1.000000, 0.000000)
mad r0.xyz, r1.xyzx, cb0[45].zzzz, r0.xyzx
dp3 r0.w, r0.xyzx, r0.xyzx
rsq r0.w, r0.w
mul r1.xyz, r0.wwww, r0.xyzx
add r1.w, -cb0[45].w, l(1.000000)
mad r0.xyz, -r0.xyzx, r0.wwww, l(0.000000, 0.000000, 1.000000, 0.000000)
mad r0.xyz, r1.wwww, r0.xyzx, r1.xyzx
dp3 r1.x, r0.xyzx, v7.xyzx
dp3 r1.y, r0.xyzx, v8.xyzx
dp3 r1.z, r0.xyzx, v9.xyzx
div r0.x, v2.z, cb0[59].x
div r0.yz, r24.xxyx, v4.wwww
mad r0.yz, r0.yyzy, cb0[46].zzwz, cb0[46].xxyx
sample_l_aoffimmi_indexable(0,0,0)(texture2d)(float,float,float,float) r0.y, r0.yzyy, t1.yxzw, s1, l(0.000000)
add r0.y, r0.y, -cb0[60].z
div r0.y, cb0[60].w, r0.y
div r0.y, r0.y, cb0[60].y
add r0.z, -r0.x, r0.y
max r0.z, r0.z, l(0.000000)
mul r2.w, r0.z, cb0[59].x
add r0.z, v2.z, -cb0[53].x
div_sat r0.z, r0.z, cb0[53].y
div_sat r0.w, r2.w, cb0[53].z
mul r3.x, r0.w, r0.z
mad r3.yz, r1.xxyx, r3.xxxx, r24.xxyx
div r4.xy, r3.yzyy, v4.wwww
mad r4.xy, r4.xyxx, cb0[46].zwzz, cb0[46].xyxx
sample_l_aoffimmi_indexable(0,0,0)(texture2d)(float,float,float,float) r0.w, r4.xyxx, t1.yzwx, s1, l(0.000000)
add r0.w, r0.w, -cb0[60].z
div r0.w, cb0[60].w, r0.w
div r0.w, r0.w, cb0[60].y
lt r1.w, l(0.990000), r0.w
movc r0.w, r1.w, l(5.000000), r0.w
add r1.w, -r0.x, r0.w
mul r3.w, r1.w, cb0[59].x
lt r1.w, r3.w, l(0.000000)
if_nz r1.w
  mov r2.xy, r24.xyxx
  mov r2.z, l(0)
else
  add r0.y, -r0.y, r0.w
  mul r0.y, r0.y, cb0[59].x
  lt r0.y, r0.y, l(0.000000)
  if_nz r0.y
    div_sat r0.y, r3.w, cb0[53].z
    mul r3.x, r0.y, r0.z
    mad r3.yz, r1.xxyx, r3.xxxx, r24.xxyx
    div r0.yz, r3.yyzy, v4.wwww
    mad r0.yz, r0.yyzy, cb0[46].zzwz, cb0[46].xxyx
    sample_l_aoffimmi_indexable(0,0,0)(texture2d)(float,float,float,float) r0.y, r0.yzyy, t1.yxzw, s1, l(0.000000)
    add r0.y, r0.y, -cb0[60].z
    div r0.y, cb0[60].w, r0.y
    div r0.y, r0.y, cb0[60].y
    lt r0.z, l(0.990000), r0.y
    movc r0.y, r0.z, l(5.000000), r0.y
    add r0.x, -r0.x, r0.y
    mul r3.w, r0.x, cb0[59].x
  endif
  lt r0.x, r3.w, l(0.100000)
  mov r2.z, l(0)
  mov r2.xy, r24.xyxx
  movc r2.xyzw, r0.xxxx, r2.xyzw, r3.yzxw
endif
mad r0.xy, r1.xyxx, r2.zzzz, v3.xyxx
add r26.x, v3.w, -r25.y
mul r26.x, r26.x, l(0.500000)
mad r0.x, r25.x, r26.x, r0.x
div r0.xy, r0.xyxx, v3.wwww
mad r0.xy, r0.xyxx, cb0[46].zwzz, cb0[46].xyxx
div r0.zw, r2.xxxy, v4.wwww
mad r0.zw, r0.zzzw, cb0[46].zzzw, cb0[46].xxxy
add r2.xyz, v5.xyzx, -cb0[48].xyzx
mul r26.x, r25.y, cb13[4].x
mul r26.y, r25.y, cb13[5].x
mul r26.z, r25.y, cb13[6].x
mul r26.w, cb13[4].x, cb13[4].x
mad r26.w, cb13[5].x, cb13[5].x, r26.w
mad r26.w, cb13[6].x, cb13[6].x, r26.w
div r26.xyz, r26.xyzx, r26.wwww
mad r2.xyz, -r25.xxxx, r26.xyzx, r2.xyzx
mul r3.xyz, r2.yyyy, cb0[1].xyzx
mad r3.xyz, cb0[0].xyzx, r2.xxxx, r3.xyzx
mad r2.xyz, cb0[2].xyzx, r2.zzzz, r3.xyzx
mul r3.xyz, r2.yyyy, v8.xyzx
mad r3.xyz, v7.xyzx, r2.xxxx, r3.xyzx
mad r2.xyz, v9.xyzx, r2.zzzz, r3.xyzx
dp3 r1.w, r2.xyzx, r1.xyzx
add r1.w, r1.w, r1.w
mad r3.xyz, r1.xyzx, -r1.wwww, r2.xyzx
dp3 r1.w, -r2.xyzx, -r2.xyzx
rsq r1.w, r1.w
mul r4.xyz, r1.wwww, -r2.xyzx
dp3_sat r3.w, r4.xyzx, r1.xyzx
add r4.x, -v5.w, cb0[42].x
add r4.x, |r4.x|, l(-1.000000)
mul_sat r4.x, r4.x, l(0.500000)
mul r4.x, r4.x, cb0[41].w
max r4.x, r3.w, r4.x
mad r5.xyzw, r1.xyxy, cb0[43].wwww, v6.xyzw
sample_indexable(texture2d)(float,float,float,float) r6.xyzw, r5.xyxx, t5.xyzw, s5
sample_indexable(texture2d)(float,float,float,float) r5.xyzw, r5.zwzz, t5.xyzw, s5
add_sat r5.xyzw, r5.xyzw, r6.xyzw
add r4.yzw, -r5.xxyz, cb0[54].xxyz
mad r4.yzw, cb0[43].zzzz, r4.yyzw, r5.xxyz
div_sat r5.x, r2.w, cb0[43].y
mad r5.x, -r5.x, r5.x, l(1.000000)
dp3_sat r5.y, cb0[47].xyzx, l(0.212600, 0.715200, 0.072200, 0.000000)
add r5.z, -r5.x, l(0.800000)
lt r6.x, r5.z, l(0.000000)
mul r5.z, |r5.z|, r5.x
mad r5.z, -r5.z, l(5.000000), r5.x
movc r5.x, r6.x, r5.z, r5.x
mul r5.z, r5.w, cb0[43].x
mul r5.x, r5.z, r5.x
mul r5.z, r5.y, cb0[43].x
mul r5.x, r5.x, r5.z
mul r5.x, r5.w, r5.x
sample_indexable(texture2d)(float,float,float,float) r6.xyz, r0.xyxx, t2.xyzw, s2
sample_indexable(texturecube)(float,float,float,float) r3.xyz, r3.xyzx, t4.xyzw, s4
mad r3.xyz, r3.xyzx, r5.yyyy, -r6.xyzx
mad r3.xyz, cb0[42].wwww, r3.xyzx, r6.xyzx
mul r5.yzw, r3.xxyz, cb0[39].xxyz
mad r3.xyz, -r3.xyzx, cb0[39].xyzx, cb0[54].xyzx
mad r3.xyz, r4.xxxx, r3.xyzx, r5.yzwy
sample_indexable(texture2d)(float,float,float,float) r0.xyz, r0.zwzz, t3.xyzw, s3
div_sat r0.w, r2.w, cb0[57].x
mad r0.w, -r0.w, cb0[57].y, l(1.000000)
mul r0.xyz, r0.wwww, r0.xyzx
add r0.w, r2.w, -cb0[56].w
lt r4.x, r0.w, l(0.000000)
mul r0.w, r0.w, -cb0[56].z
mul r0.w, r0.w, l(1.442695)
exp r0.w, r0.w
min r0.w, r0.w, l(1.000000)
add r0.w, -r0.w, l(1.000000)
movc r0.w, r4.x, l(0), r0.w
div_sat r4.x, r2.w, cb0[59].y
sample_indexable(texture1d)(float,float,float,float) r5.yzw, r4.xxxx, t6.wxyz, s6
mul r5.yzw, r5.yyzw, cb0[40].xxyz
mad r5.yzw, r5.yyzw, cb0[54].xxyz, -r0.xxyz
mad r0.xyz, r0.wwww, r5.yzwy, r0.xyzx
add r4.x, -cb0[41].x, l(1.000000)
add r3.w, -r3.w, l(1.000000)
log r3.w, r3.w
mul r3.w, r3.w, cb0[41].y
exp r3.w, r3.w
mad r3.w, r4.x, r3.w, cb0[41].x
mul r0.w, r0.w, r3.w
add_sat r3.w, v2.z, l(-0.100000)
mul r0.w, r0.w, r3.w
mul r0.w, r0.w, cb0[59].w
add r3.xyz, -r0.xyzx, r3.xyzx
mad r0.xyz, r0.wwww, r3.xyzx, r0.xyzx
dp3 r0.w, r1.xyzx, r1.xyzx
rsq r0.w, r0.w
mul r1.xyz, r0.wwww, r1.xyzx
mad r2.xyz, -r2.xyzx, r1.wwww, -cb0[51].xyzx
dp3 r0.w, r2.xyzx, r2.xyzx
rsq r0.w, r0.w
mul r2.xyz, r0.wwww, r2.xyzx
dp3_sat r0.w, r1.xyzx, r2.xyzx
add r1.x, -cb0[39].w, l(1.000000)
mul r1.x, r1.x, r1.x
mad r1.x, r1.x, l(13.000000), l(3.000000)
exp r1.x, r1.x
log r0.w, r0.w
mul r0.w, r0.w, r1.x
exp r0.w, r0.w
mul_sat r1.x, r2.w, l(0.500000)
mul r0.w, r0.w, r1.x
mul r1.xyz, cb0[39].xyzx, cb0[47].xyzx
mad r0.xyz, r1.xyzx, r0.wwww, r0.xyzx
mad r0.xyz, r4.yzwy, r5.xxxx, r0.xyzx
add r1.xyz, -v5.xyzx, cb0[48].xyzx
dp3 r0.w, r1.xyzx, r1.xyzx
sqrt r0.w, r0.w
add r0.w, r0.w, -cb0[55].y
mad r1.x, -v5.w, cb0[55].z, l(1.000000)
mul r0.w, r0.w, -cb0[55].x
mul r0.w, r1.x, r0.w
mul r0.w, r0.w, l(1.442695)
exp r0.w, r0.w
min r1.x, r0.w, l(1.000000)
add r1.x, -r1.x, l(1.000000)
add r1.yzw, -r0.xxyz, cb0[44].xxyz
mad r0.xyz, r1.xxxx, r1.yzwy, r0.xyzx
lt r1.x, l(0.100000), cb0[35].w
movc r0.xyz, r1.xxxx, cb0[35].xyzx, r0.xyzx
lt r0.w, r0.w, l(0.020000)
and r0.w, r0.w, r1.x
movc o0.xyz, r0.wwww, cb0[36].xyzx, r0.xyzx
mov o0.w, l(1.000000)
ret
// Approximately 0 instruction slots used
