// MANUALLY DUMPED [ShaderRegex\ShaderFixes\ShaderRegEx_UE4_UNIVERSAL2_C44.ini\_33_Objects2] Octopath Traveler II. Manual transparency fix. Castti ship ropes chapter 1.
//
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v1.3.16 on Fri Mar 03 22:57:11 2023
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Position              0   xyzw        0      POS   float   xyz
// SV_IsFrontFace           0   x           1    FFACE    uint
//
//
// 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[153], immediateIndexed
dcl_constantbuffer cb1[19], immediateIndexed
dcl_constantbuffer cb2[2], immediateIndexed
dcl_constantbuffer cb3[9], immediateIndexed
dcl_input_ps_siv linear noperspective v0.xyz, position
dcl_output o0.xyzw
dcl_temps 36
dcl_resource_texture2d (float,float,float,float) t125
ld_indexable(texture2d)(float,float,float,float) r2.xyzw, l(0, 0, 0, 0), t125.xyzw

mul r21.xyzw, v0.yyyy, cb0[45].xyzw
mad r21.xyzw, v0.xxxx, cb0[44].xyzw, r21.xyzw
mad r21.xyzw, v0.zzzz, cb0[46].xyzw, r21.xyzw
add r21.xyzw, r21.xyzw, cb0[47].xyzw

mov r20.xyz, v0.xyzx
mad r22.x, r2.y, r21.w, l(-1.0)
mul r22.x, r22.x, cb0[130].x
mul r22.x, r22.x, l(0.5)
mad r20.x, r2.x, r22.x, r20.x

add r0.xy, r20.xyxx, -cb0[129].xyxx
mul r0.y, r0.y, cb0[130].w
add r0.zw, cb2[0].xxxy, cb2[1].xxxy
mad r1.y, r0.y, l(0.560000), r0.w
mad r1.x, r0.x, cb0[130].z, r0.z
add r0.xy, r1.xyxx, l(-0.500000, -0.280000, 0.000000, 0.000000)
dp2 r0.x, r0.xyxx, r0.xyxx

mul r1.xyzw, v0.yyyy, cb0[45].xyzw
mad r1.xyzw, v0.xxxx, cb0[44].xyzw, r1.xyzw
//PS
mad r1.xyzw, v0.zzzz, cb0[46].xyzw, r1.xyzw
add r1.xyzw, r1.xyzw, cb0[47].xyzw

//PS
div r0.yzw, r1.xxyz, r1.wwww


mov r4.x, l(44)
iadd r4.x, r4.x, l(-4)
mov r5.xyzw, r0.yzww
mul r3.xyzw, r5.yyyy, cb0[1].xyzw
mad r3.xyzw, r5.xxxx, cb0[0].xyzw, r3.xyzw
mad r3.xyzw, r5.zzzz, cb0[2].xyzw, r3.xyzw
add r3.xyzw, r3.xyzw, cb0[3].xyzw
add r2.w, r3.w, -r2.y
mad r3.x, r2.x, -r2.w, r3.x
mul r5.xyzw, r3.yyyy, cb0[r4.x + 1].xyzw
mad r5.xyzw, r3.xxxx, cb0[r4.x + 0].xyzw, r5.xyzw
mad r5.xyzw, r3.zzzz, cb0[r4.x + 2].xyzw, r5.xyzw
mad r5.xyzw, r3.wwww, cb0[r4.x + 3].xyzw, r5.xyzw
mov r0.yzw, r5.xxyz
//ObjectFixHere - cb0
add r0.yzw, r0.yyzw, -cb0[70].xxyz
add r1.xyz, r0.yzwy, -cb0[67].xyzx
div r0.yz, r0.wwzw, cb3[6].xxxx
dp3 r0.w, r1.xyzx, r1.xyzx
sqrt r0.xw, r0.xxxw
div r1.xy, r0.wwww, cb3[7].ywyy
log r1.zw, r1.xxxy
ge r1.xy, l(0.000000, 0.000000, 0.000000, 0.000000), r1.xyxx
mul r0.w, r1.z, cb3[7].z
mul r1.z, r1.w, cb3[8].x
exp r1.z, r1.z
min r1.z, r1.z, l(1.000000)
movc r1.y, r1.y, l(0), r1.z
exp r0.w, r0.w
min r0.w, r0.w, l(0.800000)
add r0.w, -r0.w, l(1.000000)
movc r0.w, r1.x, l(1.000000), r0.w
div r0.x, r0.x, r0.w
add r0.x, -r0.x, l(1.000000)
mul r0.w, r0.x, l(2.333000)
mul r0.w, r0.w, r0.w
mul r0.w, r0.w, l(1.44269514)
exp r0.w, r0.w
div r0.w, l(1.000000, 1.000000, 1.000000, 1.000000), r0.w
add r0.w, -r0.w, l(1.000000)
add r0.w, r0.w, r0.w
ge r1.x, r0.x, l(0.000000)
lt r0.x, l(0.000010), |r0.x|
and r0.w, r0.w, r1.x
and r0.x, r0.w, r0.x
mad r0.x, r1.y, -r0.x, r0.x
add r0.x, -r0.x, l(1.000000)
mul r0.x, r0.x, cb3[7].x
div r1.xy, cb1[18].zyzz, cb3[6].xxxx
add r1.xy, r1.xyxx, cb3[6].yyyy
add r0.yz, r0.yyzy, -r1.xxyx
add r0.z, -r0.y, r0.z
mad r0.y, cb3[6].z, r0.z, r0.y
mad r0.z, r0.y, l(-2.000000), l(1.000000)
mad r0.y, cb3[6].w, r0.z, r0.y
add r0.z, cb3[7].x, l(-1.000000)
mad r0.y, r0.y, r0.z, l(1.000000)
mad r0.x, r0.y, r0.x, -r0.y
mad r0.x, cb3[8].y, r0.x, r0.y
mad r0.y, v0.y, l(2.000000), v0.x
add r0.y, r0.y, cb0[152].x
add r0.y, r0.y, l(-1.500000)
mul r0.y, r0.y, l(0.200000)
dp2 r0.z, l(2.40845060, 3.25352120, 0.000000, 0.000000), v0.xyxx
frc r0.yz, r0.yyzy
mad r0.y, r0.y, l(5.000000), r0.z
mad r0.x, r0.y, l(0.166666672), r0.x
add r0.x, r0.x, l(-0.833300)
lt r0.x, r0.x, l(0.000000)
discard_nz r0.x
mov o0.xyzw, l(0,0,0,0)
ret
// Approximately 0 instruction slots used
