// MANUALLY DUMPED [ShaderRegex\ShaderFixes\ShaderRegEx_UE4_UNIVERSAL2_C44.ini\_32_Objects01SSR] Octopath Traveler II. Manual transparency fix. Agne chapter 1 house wall.
//
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v1.3.16 on Sat Mar 04 10:38:27 2023
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Position              0   xyzw        0      POS   float   xyz
// PRIMITIVE_ID             0   x           1     NONE    uint   x
// SV_IsFrontFace           0   x           2    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[2], immediateIndexed
dcl_constantbuffer cb2[1], immediateIndexed
dcl_constantbuffer cb3[13], immediateIndexed
dcl_resource_structured t0, 16
dcl_input_ps_siv linear noperspective v0.xyz, position
dcl_input_ps constant v1.x
dcl_output o0.xyzw
dcl_temps 38
dcl_resource_texture2d (float,float,float,float) t125
ld_indexable(texture2d)(float,float,float,float) r4.xyzw, l(0, 0, 0, 0), t125.xyzw

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


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


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

//PS
div r0.xyz, r0.xyzx, r0.wwww

//mov r6.w, r0.w
//
//mov r7.x, l(44)
//iadd r7.x, r7.x, l(-4)
//mul r5.xyzw, r0.yyyy, cb0[1].xyzw
//mad r5.xyzw, r0.xxxx, cb0[0].xyzw, r5.xyzw
//mad r5.xyzw, r0.zzzz, cb0[2].xyzw, r5.xyzw
//add r5.xyzw, r5.xyzw, cb0[3].xyzw
//add r4.w, r5.w, -r4.y
//mad r5.x, r4.x, -r4.w, r5.x
//mul r0.xyzw, r5.yyyy, cb0[r7.x + 1].xyzw
//mad r0.xyzw, r5.xxxx, cb0[r7.x + 0].xyzw, r0.xyzw
//mad r0.xyzw, r5.zzzz, cb0[r7.x + 2].xyzw, r0.xyzw
//mad r0.xyzw, r5.wwww, cb0[r7.x + 3].xyzw, r0.xyzw
//mov r0.w, r6.w
////ObjectFixHere - cb0
add r0.xyz, r0.xyzx, -cb0[70].xyzx
add r1.xyz, r0.xyzx, -cb0[67].xyzx
div r0.xy, r0.zyzz, cb3[9].zzzz
dp3 r0.z, r1.xyzx, r1.xyzx
sqrt r0.z, r0.z
div r0.w, r0.z, cb3[10].w
div r0.z, r0.z, cb3[11].y
log r1.x, r0.w
ge r0.w, l(0.000000), r0.w
mul r1.x, r1.x, cb3[11].x
exp r1.x, r1.x
min r1.x, r1.x, l(0.800000)
add r1.x, -r1.x, l(1.000000)
movc r0.w, r0.w, l(1.000000), r1.x
add r1.xy, r20.xyxx, -cb0[129].xyxx
mul r1.z, r1.y, cb0[130].w
add r2.xy, cb1[0].xyxx, cb1[1].xyxx
mad r3.y, r1.z, l(0.560000), r2.y
mad r3.x, r1.x, cb0[130].z, r2.x
mad r1.xy, r1.xyxx, cb0[130].zwzz, -cb2[0].zwzz
dp2 r1.x, r1.xyxx, r1.xyxx
sqrt r1.x, r1.x
div r1.x, r1.x, cb3[12].x
add r1.yz, r3.xxyx, l(0.000000, -0.500000, -0.280000, 0.000000)
dp2 r1.y, r1.yzyy, r1.yzyy
sqrt r1.y, r1.y
div r0.w, r1.y, r0.w
add r0.w, -r0.w, l(1.000000)
mul r1.y, r0.w, l(2.333000)
mul r1.y, r1.y, r1.y
mul r1.y, r1.y, l(1.44269514)
exp r1.y, r1.y
div r1.y, l(1.000000, 1.000000, 1.000000, 1.000000), r1.y
add r1.xy, -r1.xyxx, l(1.000000, 1.000000, 0.000000, 0.000000)
add r1.y, r1.y, r1.y
ge r1.z, r0.w, l(0.000000)
lt r0.w, l(0.000010), |r0.w|
and r1.y, r1.y, r1.z
and r0.w, r0.w, r1.y
log r1.y, r0.z
ge r0.z, l(0.000000), r0.z
mul r1.y, r1.y, cb3[11].z
exp r1.y, r1.y
min r1.y, r1.y, l(1.000000)
movc r0.z, r0.z, l(0), r1.y
mad r0.z, r0.z, -r0.w, r0.w
add r0.z, -r0.z, l(1.000000)
imad r0.w, v1.x, l(36), l(18)
ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r1.yz, r0.w, l(4), t0.xxyx
div r1.yz, r1.zzyz, cb3[9].zzzz
add r1.yz, r1.yyzy, cb3[9].wwww
add r0.xy, r0.xyxx, -r1.yzyy
add r0.y, -r0.x, r0.y
mad r0.x, cb3[10].x, r0.y, r0.x
mad r0.y, r0.x, l(-2.000000), l(1.000000)
mad r0.x, cb3[10].y, r0.y, r0.x
add r0.y, cb3[10].z, l(-1.000000)
mad r0.x, r0.x, r0.y, l(1.000000)
mul r0.y, cb3[10].z, cb3[10].z
mad r0.y, r0.y, r0.z, -r0.x
mad r0.x, cb3[11].w, r0.y, r0.x
mul r0.y, r1.x, l(2.333000)
mul r0.y, r0.y, r0.y
mul r0.y, r0.y, l(1.44269514)
exp r0.y, r0.y
div r0.y, l(1.000000, 1.000000, 1.000000, 1.000000), r0.y
add r0.y, -r0.y, l(1.000000)
mad r0.y, -r0.y, l(2.000000), l(1.000000)
ge r0.z, r1.x, l(0.000000)
lt r0.w, l(0.000010), |r1.x|
movc r0.y, r0.z, r0.y, l(1.000000)
movc r0.y, r0.w, r0.y, l(1.000000)
mad r0.y, r0.y, cb3[10].z, -r0.x
mad r0.x, cb2[0].y, r0.y, r0.x
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
