// AUTOMATICALLY CONVERTED FROM SHADER FIXES 
//
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v0.6.198 on Fri Apr 24 19:38:16 2026
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// TEXCOORD                10   xyzw        0     NONE   float   xyz
// TEXCOORD                11   xyzw        1     NONE   float   xyzw
// COLOR                    3   x           2     NONE   float
// SV_Position              0   xyzw        3      POS   float   xyz
// SV_IsFrontFace           0   x           4    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
// SV_Target                3   xyzw        3   TARGET   float   xyzw
// SV_Target                5   xyzw        5   TARGET   float   xyzw
// SV_Target                6   xyzw        6   TARGET   float   xyzw
//
ps_5_0
dcl_globalFlags refactoringAllowed
dcl_constantbuffer CB0[162], immediateIndexed
dcl_constantbuffer CB1[19], immediateIndexed
dcl_constantbuffer CB2[128], 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_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_resource_texture2d (float,float,float,float) t7
dcl_resource_texturecube (float,float,float,float) t8
dcl_input_ps linear centroid v0.xyz
dcl_input_ps linear centroid v1.xyzw
dcl_input_ps_siv linear noperspective v3.xyz, position
dcl_output o0.xyzw
dcl_output o1.xyzw
dcl_output o2.xyzw
dcl_output o3.xyzw
dcl_output o5.xyzw
dcl_output o6.xyzw
dcl_temps 36
dcl_resource_buffer (float,float,float,float) t125
dcl_resource_texture1d (float,float,float,float) t120
mul r0.xyz, v0.yzxy, v1.zxyz
mad r0.xyz, v1.yzxy, v0.zxyz, -r0.xyzx
mul r0.xyz, r0.xyzx, v1.wwww
ld_indexable(buffer)(float,float,float,float) r18.xyzw, l(0, 0, 0, 0), t125.xyzw
ld_indexable(texture1d)(float,float,float,float) r16.xyzw, l(15, 0, 0, 0), t120.xyzw
mov r35.xyzw, cb0[55].xyzw
mul r30.w, cb0[24].x, cb0[24].x
mul r30.x, r18.y, cb0[0].x
mul r30.y, r18.y, cb0[1].x
mul r30.z, r18.y, cb0[2].x
div r30.xyz, r30.xyzx, r30.wwww
mad r35.xyz, r18.x, r30.xyzx, r35.xyzx
ftou r17.xyzw, r16.xyzw
mov r19.x, v3.x
mov r19.y, v3.x
mul r20.xyzw, v3.yyyy, cb0[37].xyzw
mad r20.xyzw, r19.xxxx, cb0[36].xyzw, r20.xyzw
mad r20.xyzw, v3.zzzz, cb0[38].xyzw, r20.xyzw
add r20.xyzw, r20.xyzw, cb0[39].xyzw
ge r22.w, cb0[r17.x + 0].x, l(20.000000)
if_nz r22.w
  mul r22.x, l(0.500000), cb0[r17.x + 0].x
else
  mul r22.x, l(0.500000), cb1[r17.x + 0].x
endif
mad r22.y, r20.w, r18.y, l(-1.000000)
mul r22.y, r22.y, r22.x
mad r19.x, r18.x, r22.y, r19.x
mad r19.y, -r18.x, r22.x, r19.y
mul r21.xyzw, v3.yyyy, cb0[37].xyzw
mad r21.xyzw, r19.yyyy, cb0[36].xyzw, r21.xyzw
mad r21.xyzw, v3.zzzz, cb0[38].xyzw, r21.xyzw
add r21.xyzw, r21.xyzw, cb0[39].xyzw
div r21.xyz, r21.xyzx, r21.wwww
mul r1.xyzw, v3.yyyy, cb0[37].xyzw
mad r1.xyzw, r19.xxxx, cb0[36].xyzw, r1.xyzw
mad r1.xyzw, v3.zzzz, cb0[38].xyzw, r1.xyzw
add r1.xyzw, r1.xyzw, cb0[39].xyzw
div r1.xyz, r1.xyzx, r1.wwww
add r2.xyz, r1.xyzx, -cb0[58].xyzx
dp3 r0.w, -r21.xyzx, -r21.xyzx
rsq r0.w, r0.w
mul r1.xyz, r0.wwww, -r21.xyzx
mad r3.xyz, cb0[124].wwww, l(0.000000, 0.000000, 1.000000, 0.000000), cb0[124].xyzx
dp3 r0.w, r3.xyzx, r3.xyzx
rsq r0.w, r0.w
mul r3.xyz, r0.wwww, r3.xyzx
mul r0.xyz, r0.xyzx, r3.yyyy
mad r0.xyz, r3.xxxx, v0.xyzx, r0.xyzx
mad r0.xyz, r3.zzzz, v1.xyzx, r0.xyzx
dp3 r0.w, r0.xyzx, r0.xyzx
rsq r0.w, r0.w
mul r0.xyz, r0.wwww, r0.xyzx
dp3 r0.w, r0.xyzx, r1.xyzx
mul r0.xyz, r0.wwww, r0.xyzx
mad r0.xyz, r0.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), -r1.xyzx
max r0.w, r0.w, l(0.000000)
add r0.w, -r0.w, l(1.000000)
log r1.w, |r0.w|
mul r2.w, r1.w, cb2[89].x
exp r2.w, r2.w
mad r2.w, r2.w, cb2[89].z, cb2[89].y
mul r2.w, r2.w, cb2[89].w
max r2.w, r2.w, l(0.000000)
log r2.w, r2.w
mul r2.w, r2.w, cb2[90].x
exp r2.w, r2.w
min r2.w, r2.w, l(1.000000)
add r2.w, -r2.w, l(1.000000)
add r3.xyzw, r2.xyxy, -cb1[10].xyxy
div r3.xyzw, r3.xyzw, cb1[8].wwww
add r3.xyzw, r3.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
div r4.x, l(1.000000, 1.000000, 1.000000, 1.000000), cb1[8].w
mov r1.z, |r1.z|
div r4.y, cb2[90].y, r1.z
mul r4.yz, -r1.xxyx, r4.yyyy
mad r4.yz, r4.xxxx, r4.yyzy, r3.zzwz
add r4.yz, r4.yyzy, l(0.000000, -1.000000, -1.000000, 0.000000)
min r4.w, |r4.z|, |r4.y|
max r5.x, |r4.z|, |r4.y|
div r5.x, l(1.000000, 1.000000, 1.000000, 1.000000), r5.x
mul r4.w, r4.w, r5.x
mul r5.x, r4.w, r4.w
mad r5.y, r5.x, l(0.0208350997), l(-0.085133)
mad r5.y, r5.x, r5.y, l(0.180141)
mad r5.y, r5.x, r5.y, l(-0.330299497)
mad r5.x, r5.x, r5.y, l(0.999866)
mul r5.y, r4.w, r5.x
lt r5.z, |r4.z|, |r4.y|
mad r5.y, r5.y, l(-2.000000), l(1.57079637)
and r5.y, r5.z, r5.y
mad r4.w, r4.w, r5.x, r5.y
lt r5.x, r4.z, -r4.z
and r5.x, r5.x, l(0xc0490fdb)
add r4.w, r4.w, r5.x
min r5.x, r4.z, r4.y
max r5.y, r4.z, r4.y
lt r5.x, r5.x, -r5.x
ge r5.y, r5.y, -r5.y
and r5.x, r5.y, r5.x
movc r4.w, r5.x, -r4.w, r4.w
mul r4.w, r4.w, l(0.159159631)
frc r4.w, r4.w
mul r4.yz, r4.yyzy, r4.yyzy
add r4.y, r4.z, r4.y
sqrt r4.y, r4.y
mad r5.x, cb2[2].x, cb0[161].z, r4.w
mad r5.y, cb2[2].y, cb0[161].z, r4.y
mul r4.yz, r5.xxyx, cb2[4].xxyx
sample_indexable(texture2d)(float,float,float,float) r4.y, r4.yzyy, t0.yxzw, s4
add r4.y, r4.y, cb2[90].z
mul r4.zw, r2.xxxy, l(0.000000, 0.000000, 0.000100, 0.000100)
dp2 r4.z, -r4.zwzz, -r4.zwzz
sqrt r4.z, r4.z
mul r4.w, r4.z, cb2[90].w
max r4.w, r4.w, l(0.000000)
log r4.w, r4.w
mul r4.w, r4.w, cb2[91].x
exp r4.w, r4.w
min r4.w, r4.w, l(1.000000)
mad r4.y, r4.w, -r4.y, r4.y
mul r2.w, r2.w, r4.y
mad r5.xyz, r2.wwww, cb2[7].xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
div r2.w, cb2[91].z, r1.z
mul r4.yw, -r1.xxxy, r2.wwww
mad r4.yw, r4.xxxx, r4.yyyw, r3.zzzw
add r4.yw, r4.yyyw, l(0.000000, -1.000000, 0.000000, -1.000000)
min r2.w, |r4.w|, |r4.y|
max r5.w, |r4.w|, |r4.y|
div r5.w, l(1.000000, 1.000000, 1.000000, 1.000000), r5.w
mul r2.w, r2.w, r5.w
mul r5.w, r2.w, r2.w
mad r6.x, r5.w, l(0.0208350997), l(-0.085133)
mad r6.x, r5.w, r6.x, l(0.180141)
mad r6.x, r5.w, r6.x, l(-0.330299497)
mad r5.w, r5.w, r6.x, l(0.999866)
mul r6.x, r2.w, r5.w
lt r6.y, |r4.w|, |r4.y|
mad r6.x, r6.x, l(-2.000000), l(1.57079637)
and r6.x, r6.y, r6.x
mad r2.w, r2.w, r5.w, r6.x
lt r5.w, r4.w, -r4.w
and r5.w, r5.w, l(0xc0490fdb)
add r2.w, r2.w, r5.w
min r5.w, r4.w, r4.y
max r6.x, r4.w, r4.y
lt r5.w, r5.w, -r5.w
ge r6.x, r6.x, -r6.x
and r5.w, r5.w, r6.x
movc r2.w, r5.w, -r2.w, r2.w
mul r2.w, r2.w, l(0.159159631)
frc r2.w, r2.w
mul r4.yw, r4.yyyw, r4.yyyw
add r4.y, r4.w, r4.y
sqrt r4.y, r4.y
mad r6.x, cb2[9].x, cb0[161].z, r2.w
mad r6.y, cb2[9].y, cb0[161].z, r4.y
mul r4.yw, r6.xxxy, cb2[11].xxxy
sample_indexable(texture2d)(float,float,float,float) r2.w, r4.ywyy, t1.yzwx, s4
div r4.y, cb2[92].x, r1.z
mul r4.yw, -r1.xxxy, r4.yyyy
mad r4.yw, r4.xxxx, r4.yyyw, r3.zzzw
add r4.yw, r4.yyyw, l(0.000000, -1.000000, 0.000000, -1.000000)
min r5.w, |r4.w|, |r4.y|
max r6.x, |r4.w|, |r4.y|
div r6.x, l(1.000000, 1.000000, 1.000000, 1.000000), r6.x
mul r5.w, r5.w, r6.x
mul r6.x, r5.w, r5.w
mad r6.y, r6.x, l(0.0208350997), l(-0.085133)
mad r6.y, r6.x, r6.y, l(0.180141)
mad r6.y, r6.x, r6.y, l(-0.330299497)
mad r6.x, r6.x, r6.y, l(0.999866)
mul r6.y, r5.w, r6.x
lt r6.z, |r4.w|, |r4.y|
mad r6.y, r6.y, l(-2.000000), l(1.57079637)
and r6.y, r6.z, r6.y
mad r5.w, r5.w, r6.x, r6.y
lt r6.x, r4.w, -r4.w
and r6.x, r6.x, l(0xc0490fdb)
add r5.w, r5.w, r6.x
min r6.x, r4.w, r4.y
max r6.y, r4.w, r4.y
lt r6.x, r6.x, -r6.x
ge r6.y, r6.y, -r6.y
and r6.x, r6.y, r6.x
movc r5.w, r6.x, -r5.w, r5.w
mul r5.w, r5.w, l(0.159159631)
frc r5.w, r5.w
mul r4.yw, r4.yyyw, r4.yyyw
add r4.y, r4.w, r4.y
sqrt r4.y, r4.y
mad r6.x, cb2[13].x, cb0[161].z, r5.w
mad r6.y, cb2[13].y, cb0[161].z, r4.y
mul r4.yw, r6.xxxy, cb2[15].xxxy
mad r4.yw, r2.wwww, cb2[91].wwww, r4.yyyw
sample_indexable(texture2d)(float,float,float,float) r4.y, r4.ywyy, t0.yxzw, s4
add r4.y, r4.y, cb2[92].y
mul r4.w, r4.z, cb2[92].z
max r4.w, r4.w, l(0.000000)
log r4.w, r4.w
mul r4.w, r4.w, cb2[92].w
exp r4.w, r4.w
min r4.w, r4.w, l(1.000000)
mad r4.y, r4.w, -r4.y, r4.y
mad r6.xyz, r4.yyyy, cb2[18].xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
mul r2.w, r2.w, cb2[93].y
div r4.y, cb2[93].z, r1.z
mul r4.yw, -r1.xxxy, r4.yyyy
mad r4.yw, r4.xxxx, r4.yyyw, r3.zzzw
add r4.yw, r4.yyyw, l(0.000000, -1.000000, 0.000000, -1.000000)
min r5.w, |r4.w|, |r4.y|
max r6.w, |r4.w|, |r4.y|
div r6.w, l(1.000000, 1.000000, 1.000000, 1.000000), r6.w
mul r5.w, r5.w, r6.w
mul r6.w, r5.w, r5.w
mad r7.x, r6.w, l(0.0208350997), l(-0.085133)
mad r7.x, r6.w, r7.x, l(0.180141)
mad r7.x, r6.w, r7.x, l(-0.330299497)
mad r6.w, r6.w, r7.x, l(0.999866)
mul r7.x, r5.w, r6.w
lt r7.y, |r4.w|, |r4.y|
mad r7.x, r7.x, l(-2.000000), l(1.57079637)
and r7.x, r7.y, r7.x
mad r5.w, r5.w, r6.w, r7.x
lt r6.w, r4.w, -r4.w
and r6.w, r6.w, l(0xc0490fdb)
add r5.w, r5.w, r6.w
min r6.w, r4.w, r4.y
max r7.x, r4.w, r4.y
lt r6.w, r6.w, -r6.w
ge r7.x, r7.x, -r7.x
and r6.w, r6.w, r7.x
movc r5.w, r6.w, -r5.w, r5.w
mul r5.w, r5.w, l(0.159159631)
frc r5.w, r5.w
mul r4.yw, r4.yyyw, r4.yyyw
add r4.y, r4.w, r4.y
sqrt r4.y, r4.y
mad r7.x, cb2[20].x, cb0[161].z, r5.w
mad r7.y, cb2[20].y, cb0[161].z, r4.y
mad r4.yw, r7.xxxy, cb2[22].xxxy, r2.wwww
sample_indexable(texture2d)(float,float,float,float) r4.y, r4.ywyy, t2.yxzw, s4
add r4.y, r4.y, cb2[93].w
mul r4.w, r4.z, cb2[94].x
max r4.w, r4.w, l(0.000000)
log r4.w, r4.w
mul r4.w, r4.w, cb2[94].y
exp r4.w, r4.w
min r4.w, r4.w, l(1.000000)
mad r4.y, r4.w, -r4.y, r4.y
mad r7.xyz, r4.yyyy, cb2[25].xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
div r4.y, cb2[94].w, r1.z
mul r4.yw, -r1.xxxy, r4.yyyy
mad r4.yw, r4.xxxx, r4.yyyw, r3.zzzw
add r4.yw, r4.yyyw, l(0.000000, -1.000000, 0.000000, -1.000000)
min r5.w, |r4.w|, |r4.y|
max r6.w, |r4.w|, |r4.y|
div r6.w, l(1.000000, 1.000000, 1.000000, 1.000000), r6.w
mul r5.w, r5.w, r6.w
mul r6.w, r5.w, r5.w
mad r7.w, r6.w, l(0.0208350997), l(-0.085133)
mad r7.w, r6.w, r7.w, l(0.180141)
mad r7.w, r6.w, r7.w, l(-0.330299497)
mad r6.w, r6.w, r7.w, l(0.999866)
mul r7.w, r5.w, r6.w
lt r8.x, |r4.w|, |r4.y|
mad r7.w, r7.w, l(-2.000000), l(1.57079637)
and r7.w, r8.x, r7.w
mad r5.w, r5.w, r6.w, r7.w
lt r6.w, r4.w, -r4.w
and r6.w, r6.w, l(0xc0490fdb)
add r5.w, r5.w, r6.w
min r6.w, r4.w, r4.y
max r7.w, r4.w, r4.y
lt r6.w, r6.w, -r6.w
ge r7.w, r7.w, -r7.w
and r6.w, r6.w, r7.w
movc r5.w, r6.w, -r5.w, r5.w
mul r5.w, r5.w, l(0.159159631)
frc r5.w, r5.w
mul r4.yw, r4.yyyw, r4.yyyw
add r4.y, r4.w, r4.y
sqrt r4.y, r4.y
mad r8.x, cb2[27].x, cb0[161].z, r5.w
mad r8.y, cb2[27].y, cb0[161].z, r4.y
mad r4.yw, r8.xxxy, cb2[29].xxxy, r2.wwww
sample_indexable(texture2d)(float,float,float,float) r2.w, r4.ywyy, t0.yzwx, s4
add r2.w, r2.w, cb2[95].x
mul r4.y, r4.z, cb2[95].y
max r4.y, r4.y, l(0.000000)
log r4.y, r4.y
mul r4.y, r4.y, cb2[95].z
exp r4.y, r4.y
min r4.y, r4.y, l(1.000000)
mad r2.w, r4.y, -r2.w, r2.w
mul r4.y, r4.z, cb2[96].x
max r4.y, r4.y, l(0.000000)
log r4.y, r4.y
mul r4.y, r4.y, cb2[96].y
exp r4.y, r4.y
min r4.y, r4.y, l(1.000000)
add r4.y, -r4.y, l(1.000000)
sample_indexable(texturecube)(float,float,float,float) r0.xyz, r0.xyzx, t8.xyzw, s3
mul r0.xyz, r0.xyzx, cb2[96].zzzz
max r0.xyz, r0.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
log r0.xyz, r0.xyzx
mul r0.xyz, r0.xyzx, cb2[96].wwww
exp r0.xyz, r0.xyzx
mul r4.w, r1.w, cb2[97].x
exp r4.w, r4.w
mad r4.w, r4.w, cb2[97].z, cb2[97].y
max r4.w, r4.w, l(0.000000)
log r4.w, r4.w
mul r4.w, r4.w, cb2[97].w
exp r4.w, r4.w
min r4.w, r4.w, l(1.000000)
mad r0.xyz, r0.xyzx, r4.wwww, cb2[34].xyzx
mul r0.xyz, r0.xyzx, r4.yyyy
div r4.y, cb2[98].y, r1.z
mul r4.yw, -r1.xxxy, r4.yyyy
mad r4.yw, r4.xxxx, r4.yyyw, r3.zzzw
add r4.yw, r4.yyyw, l(0.000000, -1.000000, 0.000000, -1.000000)
min r5.w, |r4.w|, |r4.y|
max r6.w, |r4.w|, |r4.y|
div r6.w, l(1.000000, 1.000000, 1.000000, 1.000000), r6.w
mul r5.w, r5.w, r6.w
mul r6.w, r5.w, r5.w
mad r7.w, r6.w, l(0.0208350997), l(-0.085133)
mad r7.w, r6.w, r7.w, l(0.180141)
mad r7.w, r6.w, r7.w, l(-0.330299497)
mad r6.w, r6.w, r7.w, l(0.999866)
mul r7.w, r5.w, r6.w
lt r8.x, |r4.w|, |r4.y|
mad r7.w, r7.w, l(-2.000000), l(1.57079637)
and r7.w, r8.x, r7.w
mad r5.w, r5.w, r6.w, r7.w
lt r6.w, r4.w, -r4.w
and r6.w, r6.w, l(0xc0490fdb)
add r5.w, r5.w, r6.w
min r6.w, r4.w, r4.y
max r7.w, r4.w, r4.y
lt r6.w, r6.w, -r6.w
ge r7.w, r7.w, -r7.w
and r6.w, r6.w, r7.w
movc r5.w, r6.w, -r5.w, r5.w
mul r5.w, r5.w, l(0.159159631)
frc r5.w, r5.w
mul r4.yw, r4.yyyw, r4.yyyw
add r4.y, r4.w, r4.y
sqrt r4.y, r4.y
mad r8.x, cb2[39].x, cb0[161].z, r5.w
mad r8.y, cb2[39].y, cb0[161].z, r4.y
mul r4.yw, r8.xxxy, cb2[41].xxxy
sample_indexable(texture2d)(float,float,float,float) r4.y, r4.ywyy, t0.yxzw, s4
add r4.y, r4.y, cb2[98].z
mul r4.w, r4.z, cb2[98].w
max r4.w, r4.w, l(0.000000)
log r4.w, r4.w
mul r4.w, r4.w, cb2[99].x
exp r4.w, r4.w
min r4.w, r4.w, l(1.000000)
mul r4.y, r4.y, r4.w
mul_sat r8.xyz, r4.yyyy, cb2[44].xyzx
div r4.y, cb2[99].w, r1.z
mul r4.yw, -r1.xxxy, r4.yyyy
mad r4.yw, r4.xxxx, r4.yyyw, r3.zzzw
add r4.yw, r4.yyyw, l(0.000000, -1.000000, 0.000000, -1.000000)
min r5.w, |r4.w|, |r4.y|
max r6.w, |r4.w|, |r4.y|
div r6.w, l(1.000000, 1.000000, 1.000000, 1.000000), r6.w
mul r5.w, r5.w, r6.w
mul r6.w, r5.w, r5.w
mad r7.w, r6.w, l(0.0208350997), l(-0.085133)
mad r7.w, r6.w, r7.w, l(0.180141)
mad r7.w, r6.w, r7.w, l(-0.330299497)
mad r6.w, r6.w, r7.w, l(0.999866)
mul r7.w, r5.w, r6.w
lt r8.w, |r4.w|, |r4.y|
mad r7.w, r7.w, l(-2.000000), l(1.57079637)
and r7.w, r8.w, r7.w
mad r5.w, r5.w, r6.w, r7.w
lt r6.w, r4.w, -r4.w
and r6.w, r6.w, l(0xc0490fdb)
add r5.w, r5.w, r6.w
min r6.w, r4.w, r4.y
max r7.w, r4.w, r4.y
lt r6.w, r6.w, -r6.w
ge r7.w, r7.w, -r7.w
and r6.w, r6.w, r7.w
movc r5.w, r6.w, -r5.w, r5.w
mul r5.w, r5.w, l(0.159159631)
frc r5.w, r5.w
mul r4.yw, r4.yyyw, r4.yyyw
add r4.y, r4.w, r4.y
sqrt r4.y, r4.y
mad r9.x, cb2[48].x, cb0[161].z, r5.w
mad r9.y, cb2[48].y, cb0[161].z, r4.y
mul r4.yw, r9.xxxy, cb2[50].xxxy
sample_indexable(texture2d)(float,float,float,float) r5.w, r4.ywyy, t0.yzwx, s4
mul r5.w, r5.w, cb2[100].x
max r5.w, r5.w, l(0.000000)
log r5.w, r5.w
mul r5.w, r5.w, cb2[100].y
exp r5.w, r5.w
add r5.w, r5.w, cb2[100].z
sample_indexable(texture2d)(float,float,float,float) r9.xyz, r4.ywyy, t3.xyzw, s4
mul r10.xyz, r9.xyzx, cb2[100].wwww
max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
log r10.xyz, r10.xyzx
mul r10.xyz, r10.xyzx, cb2[101].xxxx
exp r10.xyz, r10.xyzx
add r10.xyz, r10.xyzx, cb2[101].yyyy
mul r9.xyz, r9.xyzx, cb2[101].zzzz
max r9.xyz, r9.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
log r9.xyz, r9.xyzx
mul r9.xyz, r9.xyzx, cb2[101].wwww
exp r9.xyz, r9.xyzx
add r9.xyz, r9.xyzx, cb2[102].xxxx
add r9.xyz, r9.xyzx, r10.xyzx
add r9.xyz, r5.wwww, r9.xyzx
mul r9.xyz, r9.xyzx, cb2[51].xyzx
div r4.y, cb2[102].z, r1.z
mul r4.yw, -r1.xxxy, r4.yyyy
mad r4.yw, r4.xxxx, r4.yyyw, r3.zzzw
add r4.yw, r4.yyyw, l(0.000000, -1.000000, 0.000000, -1.000000)
min r5.w, |r4.w|, |r4.y|
max r6.w, |r4.w|, |r4.y|
div r6.w, l(1.000000, 1.000000, 1.000000, 1.000000), r6.w
mul r5.w, r5.w, r6.w
mul r6.w, r5.w, r5.w
mad r7.w, r6.w, l(0.0208350997), l(-0.085133)
mad r7.w, r6.w, r7.w, l(0.180141)
mad r7.w, r6.w, r7.w, l(-0.330299497)
mad r6.w, r6.w, r7.w, l(0.999866)
mul r7.w, r5.w, r6.w
lt r8.w, |r4.w|, |r4.y|
mad r7.w, r7.w, l(-2.000000), l(1.57079637)
and r7.w, r8.w, r7.w
mad r5.w, r5.w, r6.w, r7.w
lt r6.w, r4.w, -r4.w
and r6.w, r6.w, l(0xc0490fdb)
add r5.w, r5.w, r6.w
min r6.w, r4.w, r4.y
max r7.w, r4.w, r4.y
lt r6.w, r6.w, -r6.w
ge r7.w, r7.w, -r7.w
and r6.w, r6.w, r7.w
movc r5.w, r6.w, -r5.w, r5.w
mul r5.w, r5.w, l(0.159159631)
frc r5.w, r5.w
mul r4.yw, r4.yyyw, r4.yyyw
add r4.y, r4.w, r4.y
sqrt r4.y, r4.y
mad r10.x, cb2[55].x, cb0[161].z, r5.w
mad r10.y, cb2[55].y, cb0[161].z, r4.y
mul r4.yw, r10.xxxy, cb2[57].xxxy
sample_indexable(texture2d)(float,float,float,float) r5.w, r4.ywyy, t0.yzwx, s4
mul r5.w, r5.w, cb2[102].w
max r5.w, r5.w, l(0.000000)
log r5.w, r5.w
mul r5.w, r5.w, cb2[103].x
exp r5.w, r5.w
add r5.w, r5.w, cb2[103].y
sample_indexable(texture2d)(float,float,float,float) r10.xyz, r4.ywyy, t3.xyzw, s4
mul r11.xyz, r10.xyzx, cb2[103].zzzz
max r11.xyz, r11.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
log r11.xyz, r11.xyzx
mul r11.xyz, r11.xyzx, cb2[103].wwww
exp r11.xyz, r11.xyzx
add r11.xyz, r11.xyzx, cb2[104].xxxx
mul r10.xyz, r10.xyzx, cb2[104].yyyy
max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
log r10.xyz, r10.xyzx
mul r10.xyz, r10.xyzx, cb2[104].zzzz
exp r10.xyz, r10.xyzx
add r10.xyz, r10.xyzx, cb2[104].wwww
add r10.xyz, r10.xyzx, r11.xyzx
add r10.xyz, r5.wwww, r10.xyzx
add r4.yw, -r2.xxxy, cb1[10].xxxy
dp2 r4.y, r4.ywyy, r4.ywyy
sqrt r4.y, r4.y
mad r4.w, -r4.y, cb2[105].z, l(1.000000)
mul_sat r4.w, r4.w, cb2[106].z
add r5.w, r35.z, -cb2[108].w
add r11.xyz, r2.xyzx, -r35.xyzx
div r5.w, -r5.w, r11.z
mad r12.xy, r5.wwww, r11.xyxx, r35.xyxx
add r12.xy, r12.xyxx, -cb2[59].xyxx
mov r12.z, -r12.x
mad r12.xy, cb1[10].xyxx, l(1.000000, -1.000000, 0.000000, 0.000000), r12.zyzz
add r12.xy, r12.xyxx, cb2[109].wwww
div r12.xy, r12.xyxx, cb2[109].zzzz
mov r12.z, -r12.x
add r12.xy, r12.zyzz, l(0.500000, -0.500000, 0.000000, 0.000000)
dp2 r13.x, cb2[60].xyxx, r12.xyxx
dp2 r5.w, cb2[61].xyxx, r12.xyxx
add r13.y, r5.w, l(1.000000)
sample_indexable(texture2d)(float,float,float,float) r12.xyz, r13.xyxx, t4.xyzw, s0
mul r12.xyz, r12.xyzx, cb2[110].xxxx
mul r12.xyz, r4.wwww, r12.xyzx
mad r10.xyz, cb2[58].xyzx, r10.xyzx, -r9.xyzx
mad r9.xyz, r12.xyzx, r10.xyzx, r9.xyzx
add r4.w, r35.z, -cb2[112].x
div r4.w, -r4.w, r11.z
mad r10.xy, r4.wwww, r11.xyxx, r35.xyxx
add r10.xy, r10.xyxx, -cb2[62].xyxx
mov r10.z, -r10.x
mad r10.xy, cb1[10].xyxx, l(1.000000, -1.000000, 0.000000, 0.000000), r10.zyzz
add r10.xy, r10.xyxx, cb2[112].wwww
div r10.xy, r10.xyxx, cb2[112].zzzz
mov r10.z, -r10.x
add r10.xy, r10.zyzz, l(0.500000, -0.500000, 0.000000, 0.000000)
dp2 r14.x, cb2[63].xyxx, r10.xyxx
dp2 r4.w, cb2[64].xyxx, r10.xyxx
add r14.y, r4.w, l(1.000000)
sample_indexable(texture2d)(float,float,float,float) r10.xyz, r14.xyxx, t5.xyzw, s1
mad_sat r14.xyz, r10.xyzx, cb2[113].xxxx, -r12.xyzx
add r15.xyz, -r9.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
mad r9.xyz, r14.xyzx, r15.xyzx, r9.xyzx
mad r4.w, -r4.y, cb2[113].w, l(1.000000)
mul_sat r4.w, r4.w, cb2[114].w
mad r4.y, -r4.y, cb2[115].z, l(1.000000)
mul_sat r4.y, r4.y, cb2[116].z
add r5.w, r35.z, -cb2[118].z
div r5.w, -r5.w, r11.z
mad r13.zw, r5.wwww, r11.xxxy, r35.xxxy
add r14.xy, r13.zwzz, -cb2[65].xyxx
mov r14.z, -r14.x
mad r13.zw, cb1[10].xxxy, l(0.000000, 0.000000, 1.000000, -1.000000), r14.zzzy
add r13.zw, r13.zzzw, cb2[119].yyyy
div r14.xy, r13.zwzz, cb2[119].xxxx
mov r14.z, -r14.x
add r13.zw, r14.zzzy, l(0.000000, 0.000000, 0.500000, -0.500000)
dp2 r14.x, cb2[66].xyxx, r13.zwzz
dp2 r5.w, cb2[67].xyxx, r13.zwzz
add r14.y, r5.w, l(1.000000)
sample_indexable(texture2d)(float,float,float,float) r14.xyz, r14.xyxx, t5.xyzw, s1
add r5.w, r35.z, -cb2[121].z
div r5.w, -r5.w, r11.z
mad r11.xy, r5.wwww, r11.xyxx, r35.xyxx
add r11.xy, r11.xyxx, -cb2[68].xyxx
mov r11.z, -r11.x
mad r11.xy, cb1[10].xyxx, l(1.000000, -1.000000, 0.000000, 0.000000), r11.zyzz
add r11.xy, r11.xyxx, cb2[122].yyyy
div r11.xy, r11.xyxx, cb2[122].xxxx
mov r11.z, -r11.x
add r11.xy, r11.zyzz, l(0.500000, -0.500000, 0.000000, 0.000000)
dp2 r15.x, cb2[69].xyxx, r11.xyxx
dp2 r5.w, cb2[70].xyxx, r11.xyxx
add r15.y, r5.w, l(1.000000)
sample_indexable(texture2d)(float,float,float,float) r11.xyz, r15.xyxx, t5.xyzw, s1
mul r11.xyz, r11.xyzx, cb2[122].zzzz
mad r11.xyz, r14.xyzx, cb2[119].zzzz, r11.xyzx
mad r10.xyz, r10.xyzx, cb2[113].xxxx, r11.xyzx
mul r11.xyz, r4.yyyy, r10.xyzx
mad r10.xyz, r4.yyyy, r10.xyzx, r12.xyzx
mul r10.xyz, r10.xyzx, cb2[122].wwww
max r10.xyz, r10.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
log r10.xyz, r10.xyzx
mul r10.xyz, r10.xyzx, cb2[123].xxxx
exp r10.xyz, r10.xyzx
min r10.xyz, r10.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
mul r12.xyz, r4.wwww, r10.xyzx
mul r9.xyz, r9.xyzx, r12.xyzx
mul r4.y, r1.w, cb2[123].z
exp r4.y, r4.y
mad r4.y, r4.y, cb2[124].x, cb2[123].w
mul r4.y, r4.y, cb2[124].y
max r4.y, r4.y, l(0.000000)
log r4.y, r4.y
mul r4.y, r4.y, cb2[124].z
exp r4.y, r4.y
min r4.y, r4.y, l(1.000000)
mul r12.xyz, r4.yyyy, cb2[73].xyzx
mul r4.y, r4.z, cb2[124].w
max r4.y, r4.y, l(0.000000)
log r4.y, r4.y
mul r4.y, r4.y, cb2[125].x
exp r4.y, r4.y
min r4.y, r4.y, l(1.000000)
mul r4.yzw, r4.yyyy, r12.xxyz
mul r11.xyz, r4.yzwy, r11.xyzx
mul r4.yzw, r4.yyzw, cb2[125].zzzz
mad r4.yzw, r11.xxyz, cb2[125].yyyy, r4.yyzw
mad r4.yzw, r8.xxyz, r9.xxyz, r4.yyzw
mad r0.xyz, r0.xyzx, cb2[37].xyzx, r4.yzwy
mad r0.xyz, r2.wwww, cb2[32].xyzx, r0.xyzx
mul r0.xyz, r0.xyzx, r7.xyzx
div r7.xyzw, cb2[126].xxyy, r1.zzzz
mul r7.xyzw, -r1.xyxy, r7.xyzw
mad r3.xyzw, r4.xxxx, r7.xyzw, r3.xyzw
add r3.xyzw, r3.xyzw, l(-1.000000, -1.000000, -1.000000, -1.000000)
min r1.xy, |r3.ywyy|, |r3.xzxx|
max r4.xy, |r3.ywyy|, |r3.xzxx|
div r4.xy, l(1.000000, 1.000000, 1.000000, 1.000000), r4.xyxx
mul r1.xy, r1.xyxx, r4.xyxx
mul r4.xy, r1.xyxx, r1.xyxx
mad r4.zw, r4.xxxy, l(0.000000, 0.000000, 0.0208350997, 0.0208350997), l(0.000000, 0.000000, -0.085133, -0.085133)
mad r4.zw, r4.xxxy, r4.zzzw, l(0.000000, 0.000000, 0.180141, 0.180141)
mad r4.zw, r4.xxxy, r4.zzzw, l(0.000000, 0.000000, -0.330299497, -0.330299497)
mad r4.xy, r4.xyxx, r4.zwzz, l(0.999866, 0.999866, 0.000000, 0.000000)
mul r4.zw, r1.xxxy, r4.xxxy
lt r7.xy, |r3.ywyy|, |r3.xzxx|
mad r4.zw, r4.zzzw, l(0.000000, 0.000000, -2.000000, -2.000000), l(0.000000, 0.000000, 1.57079637, 1.57079637)
and r4.zw, r7.xxxy, r4.zzzw
mad r1.xy, r1.xyxx, r4.xyxx, r4.zwzz
lt r4.xy, r3.ywyy, -r3.ywyy
and r4.xy, r4.xyxx, l(0xc0490fdb, 0xc0490fdb, 0, 0)
add r1.xy, r1.xyxx, r4.xyxx
min r4.xy, r3.ywyy, r3.xzxx
max r4.zw, r3.yyyw, r3.xxxz
lt r4.xy, r4.xyxx, -r4.xyxx
ge r4.zw, r4.zzzw, -r4.zzzw
and r4.xy, r4.zwzz, r4.xyxx
movc r1.xy, r4.xyxx, -r1.xyxx, r1.xyxx
mul r1.xy, r1.xyxx, l(0.159159631, 0.159159631, 0.000000, 0.000000)
frc r1.xy, r1.xyxx
mul r3.xyzw, r3.xyzw, r3.xyzw
add r3.xy, r3.ywyy, r3.xzxx
sqrt r3.xy, r3.xyxx
mad r4.x, cb2[77].x, cb0[161].z, r1.x
mad r4.y, cb2[77].y, cb0[161].z, r3.x
mul r4.xy, r4.xyxx, cb2[79].xyxx
mad r1.x, cb2[81].x, cb0[161].z, r1.y
mad r1.y, cb2[81].y, cb0[161].z, r3.y
mul r1.xy, r1.xyxx, cb2[83].xyxx
sample_indexable(texture2d)(float,float,float,float) r1.x, r1.xyxx, t6.xyzw, s4
mad r4.z, r1.x, cb2[126].z, r4.y
sample_indexable(texture2d)(float,float,float,float) r1.x, r4.xzxx, t6.xyzw, s4
mul r1.x, r1.x, cb2[126].w
max r1.x, r1.x, l(0.000000)
log r1.x, r1.x
mul r1.x, r1.x, cb2[127].x
exp r1.x, r1.x
add_sat r1.x, r1.x, cb2[127].y
mul r1.xyz, r1.xxxx, cb2[84].xyzx
sample_indexable(texture2d)(float,float,float,float) r3.xyz, r13.xyxx, t7.xyzw, s2
mul r1.xyz, r1.xyzx, r3.xyzx
mul r1.xyz, r1.xyzx, r10.xyzx
mad r0.xyz, r6.xyzx, r0.xyzx, r1.xyzx
mul r1.xy, r1.wwww, l(0.100000, 4.522807, 0.000000, 0.000000)
exp r1.xy, r1.xyxx
mad r1.x, r1.x, l(0.500000), l(0.500000)
log r1.x, r1.x
mul r1.x, r1.x, l(4.461851)
exp r1.x, r1.x
min r1.x, r1.x, l(1.000000)
mul r1.z, |r0.w|, |r0.w|
mul r1.z, r1.z, r1.z
mul r0.w, |r0.w|, r1.z
mad r0.w, r0.w, l(1.695238), l(-0.695238)
add r0.w, -r0.w, l(1.000000)
max r0.w, r0.w, l(0.000000)
log r0.w, r0.w
mul r0.w, r0.w, l(3.665797)
exp r0.w, r0.w
min r0.w, r0.w, l(1.000000)
mul r3.x, r0.w, r1.x
add r0.w, -r1.y, l(1.000000)
max r0.w, r0.w, l(0.000000)
log r0.w, r0.w
mul r0.w, r0.w, l(4.230005)
exp r3.y, r0.w
mov r3.z, l(0)
mul r1.xyz, r3.xyzx, cb2[87].xyzx
mad r0.xyz, r5.xyzx, r0.xyzx, r1.xyzx
add r0.xyz, r0.xyzx, cb2[88].xyzx
ieq r0.w, cb1[17].y, l(1)
ne r1.xy, l(0.000000, 0.000000, 0.000000, 0.000000), cb1[17].zwzz
or r0.w, r0.w, r1.x
or r1.x, cb1[17].y, l(512)
movc r0.w, r0.w, r1.x, cb1[17].y
or r1.x, r0.w, l(2048)
movc r0.w, r1.y, r1.x, r0.w
ne r1.xy, l(0.000000, 0.000000, 0.000000, 0.000000), cb1[18].xyxx
or r1.z, r0.w, l(0x00004000)
movc r0.w, r1.x, r1.z, r0.w
or r1.x, r0.w, l(4096)
movc r0.w, r1.y, r1.x, r0.w
mad r1.xyz, cb0[123].wwww, l(0.040000, 0.040000, 0.040000, 0.000000), cb0[123].xyzx
mad r1.xyz, r1.xyzx, l(0.450000, 0.450000, 0.450000, 0.000000), cb0[122].xyzx
lt r1.w, l(0.000000), cb0[126].x
if_nz r1.w
  add r3.xyz, r2.xyzx, -cb1[8].xyzx
  add r4.xyz, cb1[9].xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  lt r3.xyz, r4.xyzx, |r3.xyzx|
  or r1.w, r3.y, r3.x
  or r1.w, r3.z, r1.w
  dp3 r2.x, r2.xyzx, l(0.577000, 0.577000, 0.577000, 0.000000)
  mul r2.x, r2.x, l(0.002000)
  frc r2.x, r2.x
  lt r2.x, l(0.500000), r2.x
  movc r2.xyz, r2.xxxx, l(0,1.000000,1.000000,0), l(1.000000,1.000000,0,0)
  movc r0.xyz, r1.wwww, r2.xyzx, r0.xyzx
endif
mul r0.xyz, r0.xyzx, cb0[160].wwww
mad o0.xyz, cb0[130].xxxx, r1.xyzx, r0.xyzx
itof r0.x, r0.w
mul o6.w, r0.x, l(0.0000152590219)
mov o0.w, l(0)
mov o1.xyzw, l(0,0,0,0)
mov o2.xyzw, l(0,0,0,0)
mov o3.xyzw, l(0,0,0,0)
mov o5.xyzw, l(0,0,0,0)
mov o6.xyz, l(0,0,0,0)
ret
// Approximately 0 instruction slots used
