// MANUALLY DUMPED [ShaderRegexDecals2] Temporal AO fixed manually. Some NPC clothes.
//
// Generated by Microsoft (R) D3D Shader Disassembler
//
//   using 3Dmigoto v1.3.16 on Tue Jun 08 00:22:50 2021
//
//
// Note: shader requires additional functionality:
//       Early depth-stencil
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// TEXCOORD                10   xyzw        0     NONE   float   xyz
// TEXCOORD                11   xyzw        1     NONE   float   xyzw
// COLOR                    0   xyzw        2     NONE   float    y
// TEXCOORD                 0   xy          3     NONE   float   xy
// TEXCOORD                 1   xy          4     NONE   float   xy
// TEXCOORD                 2   xy          5     NONE   float
// TEXCOORD                 3   xy          6     NONE   float
// TEXCOORD                 4   xy          7     NONE   float   xy
// TEXCOORD                 5   xy          8     NONE   float   x
// TEXCOORD                12   x           9     NONE    uint
// SV_IsFrontFace           0    y          9    FFACE    uint    y
// VELOCITY_PREV_POS        0   xyzw       10     NONE   float   xy w
// TEXCOORD                 9   xyz        11     NONE   float   xyz
// SV_POSITION              0   xyzw       12      POS   float   xyzw
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Target                0   xy          0   TARGET    uint   xy
// SV_Target                1   x           1   TARGET    uint   x
// SV_Target                2   xy          2   TARGET   float   xy
//
ps_5_0
dcl_globalFlags refactoringAllowed | forceEarlyDepthStencil
dcl_constantbuffer cb0[60], immediateIndexed
dcl_constantbuffer cb1[11], immediateIndexed
dcl_constantbuffer cb2[15], immediateIndexed
dcl_constantbuffer cb3[51], dynamicIndexed
dcl_constantbuffer cb4[3], immediateIndexed
dcl_constantbuffer cb5[69], immediateIndexed
dcl_constantbuffer cb13[35], 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_sampler s7, mode_default
dcl_sampler s8, mode_default
dcl_sampler s9, mode_default
dcl_sampler s10, mode_default
dcl_sampler s11, mode_default
dcl_sampler s12, 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_texture2d (float,float,float,float) t8
dcl_resource_texture2d (float,float,float,float) t9
dcl_resource_texture2d (float,float,float,float) t10
dcl_resource_texture2d (float,float,float,float) t11
dcl_resource_texture2d (float,float,float,float) t12
dcl_resource_texture2d (float,float,float,float) t13
dcl_resource_texture2d (float,float,float,float) t14
dcl_resource_texture2d (float,float,float,float) t15
dcl_resource_texture2d (float,float,float,float) t16
dcl_input_ps linear centroid v0.xyz
dcl_input_ps linear centroid v1.xyzw
dcl_input_ps linear v2.y
dcl_input_ps linear v3.xy
dcl_input_ps linear v4.xy
dcl_input_ps linear v7.xy
dcl_input_ps linear v8.x
dcl_input_ps_sgv v9.y, is_front_face
dcl_input_ps linear v10.xyw
dcl_input_ps linear v11.xyz
dcl_input_ps_siv linear noperspective v12.xyzw, position
dcl_output o0.xy
dcl_output o1.x
dcl_output o2.xy
dcl_temps 39
dcl_resource_texture2d (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
add r1.xy, v12.xyxx, -cb1[1].xyxx

ld_indexable(texture2d)(float,float,float,float) r16.xyzw, l(0, 0, 0, 0), t125.xyzw
ld_indexable(texture2d)(float,float,float,float) r34.xyzw, l(2, 0, 0, 0), t125.xyzw
ld_indexable(texture1d)(float,float,float,float) r14.xyzw, l(10, 0, 0, 0), t120.xyzw

mul r18.xyzw, v12.yyyy, cb0[37].xyzw
mad r18.xyzw, v12.xxxx, cb0[36].xyzw, r18.xyzw
mad r18.xyzw, v12.zzzz, cb0[38].xyzw, r18.xyzw
add r18.xyzw, r18.xyzw, cb0[39].xyzw

mul r16.w, cb13[2].x, l(0.5)
mul r16.w, r16.w, r14.x
//mad r1.x, -r16.x, r16.w, r1.x
//mul r16.w, cb13[2].x, l(0.5)
//mul r16.w, r16.w, r14.x
//mul r16.w, r16.w, r16.y
//mul r16.w, r16.w, r18.w
//mad r1.x, r16.x, r16.w, r1.x

mad r1.xy, r1.xyxx, cb1[2].zwzz, l(-0.500000, -0.500000, 0.000000, 0.000000)
mul r1.xy, r1.xyxx, v12.wwww
mov r1.z, v12.w

mov r17.x, v12.x
mul r18.xyzw, v12.yyyy, cb0[37].xyzw
mad r18.xyzw, r17.xxxx, cb0[36].xyzw, r18.xyzw
mad r18.xyzw, v12.zzzz, cb0[38].xyzw, r18.xyzw
add r18.xyzw, r18.xyzw, cb0[39].xyzw
mul r16.w, cb13[2].x, l(0.5)
mul r16.w, r16.w, r14.x
mad r17.x, -r16.x, r16.w, r17.x

mul r28.xyzw, v12.yyyy, cb0[37].xyzw
mad r28.xyzw, r17.xxxx, cb0[36].xyzw, r28.xyzw
mad r28.xyzw, v12.zzzz, cb0[38].xyzw, r28.xyzw
add r28.xyzw, r28.xyzw, cb0[39].xyzw
div r28.xyz, r28.xyzx, r28.wwww

mul r16.w, cb13[2].x, l(0.5)
mul r16.w, r16.w, r14.x
mul r16.w, r16.w, r16.y
mul r16.w, r16.w, r18.w
mad r17.x, r16.x, r16.w, r17.x
mul r2.xyzw, v12.yyyy, cb0[37].xyzw
mad r2.xyzw, r17.xxxx, cb0[36].xyzw, r2.xyzw
mad r2.xyzw, v12.zzzz, cb0[38].xyzw, r2.xyzw
add r2.xyzw, r2.xyzw, cb0[39].xyzw
div r2.xyz, r2.xyzx, r2.wwww
add r3.xyz, v11.xyzx, -cb0[56].xyzx
dp3 r0.w, -r28.xyzx, -r28.xyzx
rsq r0.w, r0.w
mul r2.xyz, r0.wwww, -r28.xyzx
mul r0.w, cb1[10].w, cb2[9].w
movc r1.w, v9.y, l(1.000000), l(-1.000000)
mul r4.z, r0.w, r1.w
mul r5.xy, v3.xyxx, cb5[2].xyxx
sample_indexable(texture2d)(float,float,float,float) r5.zw, r5.xyxx, t0.zwxy, s2
add r6.xy, r5.zwzz, l(-0.500000, -0.500000, 0.000000, 0.000000)
add r7.xy, r6.xyxx, r6.xyxx
dp2 r0.w, r7.xyxx, r7.xyxx
add r0.w, -r0.w, l(1.000000)
max r0.w, r0.w, l(0.000000)
sqrt r7.z, r0.w
add r8.xyz, r7.xyzx, l(0.000000, 0.000000, 1.000000, 0.000000)
mul r5.zw, v4.xxxy, cb5[4].xxxy
sample_indexable(texture2d)(float,float,float,float) r9.xyz, r5.zwzz, t1.xyzw, s3
add r9.xyw, r9.xyxz, l(-0.500000, -0.500000, 0.000000, -0.500000)
mul r5.zw, r9.xxxy, cb5[53].xxxx
add r10.xy, r5.zwzz, r5.zwzz
dp2 r0.w, r10.xyxx, r10.xyxx
add r0.w, -r0.w, l(1.000000)
max r0.w, r0.w, l(0.000000)
sqrt r10.z, r0.w
add r10.xyz, r10.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
mad r10.xyz, r10.xyzx, l(-1.000000, -1.000000, 1.000000, 0.000000), l(1.000000, 1.000000, -1.000000, 0.000000)
dp3 r0.w, r8.xyzx, r10.xyzx
mul r10.xyz, r8.zzzz, r10.xyzx
mad r8.xyz, r8.xyzx, r0.wwww, -r10.xyzx
sample_indexable(texture2d)(float,float,float,float) r10.xyz, r5.xyxx, t2.xywz, s0
add r5.zw, r10.xxxy, l(0.000000, 0.000000, -0.500000, -0.500000)
mul_sat r5.zw, r5.zzzw, l(0.000000, 0.000000, 5.000000, 5.000000)
add r10.xyw, r7.xyxz, -r8.xyxz
mad r8.xyz, r5.zzzz, r10.xywx, r8.xyzx
add r7.xyw, r7.xyxz, -r8.xyxz
mad r7.xyw, r5.wwww, r7.xyxw, r8.xyxz
add r8.xyz, r7.xywx, l(0.000000, 0.000000, 1.000000, 0.000000)
sample_indexable(texture2d)(float,float,float,float) r10.xyw, v3.xyxx, t3.xywz, s4
add r11.xyzw, r10.xyww, l(-0.500000, -0.500000, -0.250000, -0.500000)
add r12.xy, r11.xyxx, r11.xyxx
dp2 r0.w, r12.xyxx, r12.xyxx
add r0.w, -r0.w, l(1.000000)
max r0.w, r0.w, l(0.000000)
sqrt r12.z, r0.w
add r10.xyw, r12.xyxz, l(1.000000, 1.000000, 0.000000, 1.000000)
mad r10.xyw, r10.xyxw, l(-1.000000, -1.000000, 0.000000, 1.000000), l(1.000000, 1.000000, 0.000000, -1.000000)
dp3 r0.w, r8.xyzx, r10.xywx
mul r10.xyw, r8.zzzz, r10.xyxw
mad r8.xyz, r8.xyzx, r0.wwww, -r10.xywx
mul r0.w, r11.z, v8.x
mul_sat r0.w, r0.w, l(6.000000)
add r8.xyz, -r7.xywx, r8.xyzx
mad r7.xyw, r0.wwww, r8.xyxz, r7.xyxw
mul r8.xy, v3.xyxx, cb5[6].xyxx
sample_b_indexable(texture2d)(float,float,float,float) r8.xyz, r8.xyxx, t4.xyzw, s5, l(-1.000000)
add r8.xyw, r8.xyxz, l(-0.500000, -0.500000, 0.000000, -0.500000)
add r11.xy, r8.xyxx, r8.xyxx
dp2 r1.w, r11.xyxx, r11.xyxx
add r1.w, -r1.w, l(1.000000)
max r1.w, r1.w, l(0.000000)
sqrt r11.z, r1.w
max r10.xyw, |v7.yxyy|, l(0.000001, 0.000001, 0.000000, 0.000001)
log r10.xyw, r10.xyxw
mul r10.xyw, r10.xyxw, l(0.250000, 0.250000, 0.000000, 0.250000)
exp r10.xyw, r10.xyxw
mul r8.xy, r10.xyxx, l(0.765000, 1.110000, 0.000000, 0.000000)
add r11.xyz, -r7.xywx, r11.xyzx
mad r7.xyw, r8.xxxx, r11.xyxz, r7.xyxw
mad r9.xy, v3.xyxx, cb5[8].xyxx, -cb5[10].xyxx
add r9.xy, r9.xyxx, l(-0.500000, -0.500000, 0.000000, 0.000000)
frc r1.w, cb5[53].y
mul r1.xyzw, r1.xyzw, l(2.000000, -2.000000, 1.000000, 6.28318548)
sincos r10.x, r11.x, r1.w
mov r12.x, -r10.x
mov r12.y, r11.x
dp2 r11.x, r9.yxyy, r12.xyxx
mov r12.z, r10.x
dp2 r11.y, r9.yxyy, r12.yzyy
add r9.xy, r11.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000)
sample_indexable(texture2d)(float,float,float,float) r12.xyzw, r9.xyxx, t5.xyzw, s6
mad r11.xyz, r12.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), l(-1.000000, -1.000000, -1.000000, 0.000000)
mad r10.xy, v3.xyxx, cb5[13].xyxx, cb5[14].xyxx
sample_indexable(texture2d)(float,float,float,float) r1.w, r10.xyxx, t6.xywz, s0
mul r1.w, r1.w, cb5[54].x
mul_sat r1.w, r1.w, cb5[54].y
mul r2.w, r12.w, cb5[54].z
add r3.w, cb5[54].w, -cb5[55].x
mad r2.w, r2.w, r3.w, cb5[55].x
mul r1.w, r1.w, r2.w
add r2.w, -v2.y, l(1.000000)
mad r2.w, cb5[55].y, r2.w, v2.y
mul r1.w, r1.w, r2.w
add r11.xyz, -r7.xywx, r11.xyzx
mad r7.xyw, r1.wwww, r11.xyxz, r7.xyxw
mad r7.xyw, r7.xyxw, cb1[7].wwww, cb1[7].xyxz
mul r7.xyw, r4.zzzz, r7.xyxw
dp3 r2.w, r7.xywx, r7.xywx
rsq r2.w, r2.w
mul r7.xyw, r2.wwww, r7.xyxw
mul r11.xyz, r0.xyzx, r7.yyyy
mad r11.xyz, r7.xxxx, v0.xyzx, r11.xyzx
mad r7.xyw, r7.wwww, v1.xyxz, r11.xyxz
dp3 r2.w, r7.xywx, r7.xywx
rsq r2.w, r2.w
mul r7.xyw, r2.wwww, r7.xyxw
dp3 r2.w, r2.xyzx, r7.xywx
mul_sat r3.w, r2.w, l(0.500000)
add r3.w, -r3.w, l(1.000000)
ftou r4.w, cb5[56].x
iadd r4.w, l(2), r4.w
add r6.w, cb3[0].x, cb3[r4.w + 0].x
mad r3.w, r3.w, r3.w, l(-1.000000)
mad r3.w, r6.w, r3.w, l(1.000000)
mov r6.z, r7.z
mov r4.xy, l(2.000000,2.000000,0,0)
mul r4.xyz, r4.xyzx, r6.xyzx
mul r0.xyz, r0.xyzx, r4.yyyy
mad r0.xyz, r4.xxxx, v0.xyzx, r0.xyzx
mad r0.xyz, r4.zzzz, v1.xyzx, r0.xyzx
dp3_sat r0.x, r2.xyzx, r0.xyzx
add r0.y, -r0.x, l(1.000000)
max r0.y, r0.y, l(0.000001)
mul r0.y, r0.y, r0.y
mul r0.z, r0.y, r0.y
mul r0.y, r0.z, r0.y
mul r0.x, r0.x, l(0.800000)
mad r0.x, r0.y, l(0.800000), -r0.x
add r0.x, r0.x, l(1.000000)
sample_indexable(texture2d)(float,float,float,float) r2.xyz, r5.xyxx, t7.xyzw, s1
add r0.y, cb5[57].z, l(-1.000000)
div r0.y, r0.y, cb5[57].y
ge r0.z, r0.y, -r0.y
frc r0.y, |r0.y|
movc r0.y, r0.z, r0.y, -r0.y
mul r0.y, r0.y, cb5[57].y
eq r0.z, r0.y, l(0.000000)
if_nz r0.z
  mad r4.xy, v4.xyxx, cb5[20].xyxx, -cb5[22].xyxx
  add r4.xy, r4.xyxx, l(-0.500000, -0.500000, 0.000000, 0.000000)
  frc r0.z, cb5[56].y
  mul r0.z, r0.z, l(6.28318548)
  sincos r6.x, r10.x, r0.z
  mov r11.x, -r6.x
  mov r11.y, r10.x
  dp2 r10.x, r4.yxyy, r11.xyxx
  mov r11.z, r6.x
  dp2 r10.y, r4.yxyy, r11.yzyy
  add r4.xy, r10.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000)
  sample_indexable(texture2d)(float,float,float,float) r4.xyz, r4.xyxx, t8.xyzw, s7
else
  eq r0.z, r0.y, l(1.000000)
  if_nz r0.z
    mad r6.xy, v4.xyxx, cb5[24].xyxx, -cb5[26].xyxx
    add r6.xy, r6.xyxx, l(-0.500000, -0.500000, 0.000000, 0.000000)
    frc r0.z, cb5[56].z
    mul r0.z, r0.z, l(6.28318548)
    sincos r10.x, r11.x, r0.z
    mov r12.x, -r10.x
    mov r12.y, r11.x
    dp2 r11.x, r6.yxyy, r12.xyxx
    mov r12.z, r10.x
    dp2 r11.y, r6.yxyy, r12.yzyy
    add r6.xy, r11.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000)
    sample_indexable(texture2d)(float,float,float,float) r4.xyz, r6.xyxx, t9.xyzw, s8
  else
    eq r0.z, r0.y, l(2.000000)
    if_nz r0.z
      mad r6.xy, v4.xyxx, cb5[28].xyxx, -cb5[30].xyxx
      add r6.xy, r6.xyxx, l(-0.500000, -0.500000, 0.000000, 0.000000)
      frc r0.z, cb5[56].w
      mul r0.z, r0.z, l(6.28318548)
      sincos r10.x, r11.x, r0.z
      mov r12.x, -r10.x
      mov r12.y, r11.x
      dp2 r11.x, r6.yxyy, r12.xyxx
      mov r12.z, r10.x
      dp2 r11.y, r6.yxyy, r12.yzyy
      add r6.xy, r11.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000)
      sample_indexable(texture2d)(float,float,float,float) r4.xyz, r6.xyxx, t10.xyzw, s9
    else
      eq r0.y, r0.y, l(3.000000)
      if_nz r0.y
        mad r0.yz, v4.xxyx, cb5[32].xxyx, -cb5[34].xxyx
        add r0.yz, r0.yyzy, l(0.000000, -0.500000, -0.500000, 0.000000)
        frc r6.x, cb5[57].x
        mul r6.x, r6.x, l(6.28318548)
        sincos r6.x, r10.x, r6.x
        mov r11.x, -r6.x
        mov r11.y, r10.x
        dp2 r10.x, r0.zyzz, r11.xyxx
        mov r11.z, r6.x
        dp2 r10.y, r0.zyzz, r11.yzyy
        add r0.yz, r10.xxyx, l(0.000000, 0.500000, 0.500000, 0.000000)
        sample_indexable(texture2d)(float,float,float,float) r4.xyz, r0.yzyy, t11.xyzw, s10
      else
        mov r4.xyz, l(0,0,0,0)
      endif
    endif
  endif
endif
add r4.xyz, r4.xyzx, l(-0.500000, -0.500000, -0.500000, 0.000000)
mul r4.xyz, r2.xyzx, r4.xyzx
mad_sat r4.xyz, r4.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), r2.xyzx
mad r0.y, -r10.z, cb5[57].w, l(1.000000)
add r4.xyz, -r2.xyzx, r4.xyzx
mad r4.xyz, r0.yyyy, r4.xyzx, r2.xyzx
mul r0.xyz, r0.xxxx, r4.xyzx
mad r0.xyz, cb3[r4.w + 0].yyyy, r0.xyzx, r3.wwww
mul r6.xyz, r4.xyzx, cb5[58].xxxx
mul r10.xyz, r0.xyzx, r6.xyzx
sample_indexable(texture2d)(float,float,float,float) r12.xyzw, r5.xyxx, t12.xyzw, s0
mad r0.xyz, -r0.xyzx, r6.xyzx, r4.xyzx
mad r0.xyz, r12.zzzz, r0.xyzx, r10.xyzx
mad r4.xy, v4.xyxx, cb5[36].xyxx, l(-0.500000, -0.500000, 0.000000, 0.000000)
frc r3.w, cb5[58].y
mul r3.w, r3.w, l(6.28318548)
sincos r5.x, r6.x, r3.w
mov r10.x, -r5.x
mov r10.y, r6.x
dp2 r6.x, r4.yxyy, r10.xyxx
mov r10.z, r5.x
dp2 r6.y, r4.yxyy, r10.yzyy
add r4.xy, r6.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000)
sample_indexable(texture2d)(float,float,float,float) r13.xyzw, r4.xyxx, t13.xyzw, s11
mad r4.xyz, r0.xyzx, r13.xyzx, -r0.xyzx
mul r4.xyz, r4.xyzx, r13.wwww
mul r4.xyz, r4.xyzx, cb5[58].zzzz
mad_sat r3.w, v4.y, l(999.000000), l(1.000000)
mul r3.w, r3.w, r12.w
mad r0.xyz, r3.wwww, r4.xyzx, r0.xyzx
mul r3.w, cb5[58].w, l(6.28318548)
dp3 r4.x, l(0.577350259, 0.577350259, 0.577350259, 0.000000), cb5[38].xyzx
mad r6.xyz, -r4.xxxx, l(0.577350259, 0.577350259, 0.577350259, 0.000000), cb5[38].xyzx
mul r10.xyz, r6.zxyz, l(0.577350259, 0.577350259, 0.577350259, 0.000000)
mad r10.xyz, r6.zxyz, l(0.577350259, 0.577350259, 0.577350259, 0.000000), -r10.zxyz
sincos r5.x, r11.x, r3.w
mul r10.xyz, r5.xxxx, r10.xyzx
mad r6.xyz, r6.xyzx, r11.xxxx, r10.xyzx
mad r4.xyz, r4.xxxx, l(0.577350259, 0.577350259, 0.577350259, 0.000000), r6.xyzx
mul r0.xyz, r0.xyzx, r4.xyzx
dp3 r3.w, l(0.577350259, 0.577350259, 0.577350259, 0.000000), cb5[40].xyzx
mad r4.xyz, -r3.wwww, l(0.577350259, 0.577350259, 0.577350259, 0.000000), cb5[40].xyzx
mul r6.xyz, r4.zxyz, l(0.577350259, 0.577350259, 0.577350259, 0.000000)
mad r6.xyz, r4.zxyz, l(0.577350259, 0.577350259, 0.577350259, 0.000000), -r6.zxyz
mul r6.xyz, r5.xxxx, r6.xyzx
mad r4.xyz, r4.xyzx, r11.xxxx, r6.xyzx
mad r4.xyz, r3.wwww, l(0.577350259, 0.577350259, 0.577350259, 0.000000), r4.xyzx
mad r4.xyz, r2.xyzx, r4.xyzx, -r0.xyzx
mad r0.xyz, r5.zzzz, r4.xyzx, r0.xyzx
dp3 r3.w, l(0.577350259, 0.577350259, 0.577350259, 0.000000), cb5[42].xyzx
mad r4.xyz, -r3.wwww, l(0.577350259, 0.577350259, 0.577350259, 0.000000), cb5[42].xyzx
mul r6.xyz, r4.zxyz, l(0.577350259, 0.577350259, 0.577350259, 0.000000)
mad r6.xyz, r4.zxyz, l(0.577350259, 0.577350259, 0.577350259, 0.000000), -r6.zxyz
mul r6.xyz, r5.xxxx, r6.xyzx
mad r4.xyz, r4.xyzx, r11.xxxx, r6.xyzx
mad r4.xyz, r3.wwww, l(0.577350259, 0.577350259, 0.577350259, 0.000000), r4.xyzx
mad r2.xyz, r2.xyzx, r4.xyzx, -r0.xyzx
mad r0.xyz, r5.wwww, r2.xyzx, r0.xyzx
mad r2.xy, v3.xyxx, cb5[59].xxxx, l(-0.500000, -0.500000, 0.000000, 0.000000)
frc r2.z, cb5[59].y
mul r2.z, r2.z, l(6.28318548)
sincos r4.x, r5.x, r2.z
mov r6.x, -r4.x
mov r6.y, r5.x
dp2 r5.y, r2.yxyy, r6.xyxx
mov r6.z, r4.x
dp2 r5.x, r2.yxyy, r6.yzyy
add r2.xy, r5.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000)
add r2.xy, r2.xyxx, -cb5[46].xyxx
sample_indexable(texture2d)(float,float,float,float) r2.x, r2.xyxx, t14.zxyw, s1
add r2.y, r12.x, l(-1.000000)
mad r2.z, cb5[60].x, r2.y, l(1.000000)
mul r2.x, r2.z, r2.x
mul r2.z, r2.x, cb5[60].y
add r4.xyz, -r0.xyzx, cb5[44].xyzx
mad r0.xyz, r2.zzzz, r4.xyzx, r0.xyzx
mad r4.xy, v3.xyxx, cb5[60].zzzz, l(-0.500000, -0.500000, 0.000000, 0.000000)
frc r2.z, cb5[60].w
mul r2.z, r2.z, l(6.28318548)
sincos r5.x, r6.x, r2.z
mov r10.x, -r5.x
mov r10.y, r6.x
dp2 r6.y, r4.yxyy, r10.xyxx
mov r10.z, r5.x
dp2 r6.x, r4.yxyy, r10.yzyy
add r4.xy, r6.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000)
add r4.xy, r4.xyxx, -cb5[50].xyxx
sample_indexable(texture2d)(float,float,float,float) r4.xy, r4.xyxx, t14.xyzw, s1
mad r2.z, cb5[61].z, r2.y, l(1.000000)
mul r2.z, r2.z, r4.y
mul r3.w, r2.z, cb5[61].w
add r6.xyz, -r0.xyzx, cb5[48].xyzx
mad r0.xyz, r3.wwww, r6.xyzx, r0.xyzx
mad r2.y, cb5[62].x, r2.y, l(1.000000)
mul r2.y, r2.y, r4.x
mul r3.w, r2.y, cb5[62].y
add r4.xyz, -r0.xyzx, cb5[52].xyzx
mad r0.xyz, r3.wwww, r4.xyzx, r0.xyzx
add r4.xyz, -r0.xyzx, l(0.100000, 0.078000, 0.050000, 0.000000)
mad r0.xyz, r0.wwww, r4.xyzx, r0.xyzx
mul r4.xyz, r0.xyzx, cb5[55].zzzz
mul r5.xy, v3.xyxx, l(3.670000, 3.670000, 0.000000, 0.000000)
sample_b_indexable(texture2d)(float,float,float,float) r6.x, r5.xyxx, t15.xyzw, s12, l(1.000000)
add r6.x, r6.x, l(0.500000)
mad r6.x, r6.x, l(0.350000), r8.y
add r6.y, -r9.z, l(1.000000)
max r6.y, |r6.y|, l(0.000001)
mul r6.y, r6.y, r6.y
mad r6.y, -r6.y, l(0.250000), l(1.000000)
add r6.z, -r6.y, l(1.000000)
mad r6.y, r5.z, r6.z, r6.y
add r6.z, -r6.y, l(1.000000)
mad r6.y, r5.w, r6.z, r6.y
mad r6.y, -r6.y, r6.y, l(1.000000)
mad r6.x, r6.y, cb5[62].z, r6.x
max r6.x, r6.x, l(0.900000)
mul r6.z, r6.x, r6.x
mad r6.x, -r6.x, r6.x, l(1.000000)
mad r0.xyz, -cb5[55].zzzz, r0.xyzx, r0.xyzx
mad r0.xyz, r6.xxxx, r0.xyzx, r4.xyzx
mul r4.x, r8.w, l(0.500000)
mad r4.y, cb5[62].w, cb5[63].x, -cb5[62].w
mad r4.x, r4.x, r4.y, cb5[62].w
mad r4.y, -r10.w, l(0.255000), l(1.000000)
sample_b_indexable(texture2d)(float,float,float,float) r4.z, r5.xyxx, t4.yzxw, s5, l(1.000000)
add r4.z, r4.z, l(0.500000)
mad r4.y, r4.z, l(0.350000), r4.y
mad r4.y, r6.y, cb5[63].w, r4.y
max r4.y, r4.y, l(0.900000)
add r4.y, r4.y, r8.z
max r4.y, |r4.y|, l(0.000001)
mul r4.y, r4.y, r4.y
mul r4.z, r4.y, cb5[63].z
mad r5.x, cb5[63].y, r8.x, -cb5[63].y
mad_sat r4.z, r4.z, r5.x, cb5[63].y
add r10.xyz, -r0.xyzx, r4.xxxx
mad_sat r0.xyz, r4.zzzz, r10.xyzx, r0.xyzx
mad r0.xyz, r1.wwww, -r0.xyzx, r0.xyzx
sqrt r10.xyz, r0.xyzx
mov_sat r4.x, r2.w
mul r4.x, r4.x, -cb4[1].w
exp r4.x, r4.x
add r4.x, r4.x, r4.x
min r4.x, r4.x, l(1.000000)
mov_sat r4.z, v1.z
add r4.z, -r4.z, l(1.000000)
mad r4.z, -r4.z, l(0.500000), l(1.000000)
mul r4.x, r4.z, r4.x
mul r3.y, r3.y, cb2[5].z
mad r3.x, r3.x, cb2[4].z, r3.y
mad r3.x, r3.z, cb2[6].z, r3.x
add r3.x, r3.x, cb2[7].z
add r3.x, r3.x, -cb2[13].z
add r3.y, -cb2[13].z, cb2[14].z
div_sat r3.x, r3.x, r3.y
mul r3.x, r3.x, r4.x
add r11.xyz, cb0[53].xyzx, -cb2[8].xyzx
dp3 r3.y, r11.xyzx, r11.xyzx
sqrt r3.y, r3.y
mul r3.z, cb4[2].x, l(100.000000)
mad r3.y, -cb4[2].y, l(100.000000), r3.y
div_sat r3.y, r3.y, r3.z
mul r3.x, r3.y, r3.x
add r3.y, -cb4[2].z, l(1.000000)
mul r3.y, r3.y, cb4[1].z
mul r3.z, r3.y, r3.x
add r10.xyz, -r0.xyzx, r10.xyzx
mad r0.xyz, r3.zzzz, r10.xyzx, r0.xyzx
mul r0.xyz, r0.xyzx, cb5[17].xyzx
add r3.z, r12.z, -cb3[r4.w + 0].z
mad r3.z, r12.z, r3.z, cb3[r4.w + 0].z
add r4.x, -r3.z, r12.z
mad r3.z, r5.z, r4.x, r3.z
add r4.x, -r3.z, r12.z
mad r3.z, r5.w, r4.x, r3.z
mad r3.w, r2.z, cb5[61].w, r3.w
mad_sat r3.w, r2.x, cb5[60].y, r3.w
add r3.w, -r3.w, l(1.000000)
mul r3.z, r3.w, r3.z
mad r3.z, r0.w, -r3.z, r3.z
sample_indexable(texture2d)(float,float,float,float) r9.xyz, r9.xyxx, t16.xyzw, s2
add r3.w, -r3.z, r9.z
mad_sat r10.x, r1.w, r3.w, r3.z
add r2.w, -r2.w, l(1.000000)
mul r3.z, r2.w, r2.w
mul r3.z, r3.z, r3.z
mad r2.w, r2.w, l(0.400000), -r3.z
mad r2.w, r6.w, r2.w, r3.z
add r2.w, r2.w, l(0.250000)
add r3.z, -r2.w, l(0.250000)
mad r2.w, r5.z, r3.z, r2.w
add r3.z, -r2.w, l(0.250000)
mad r2.w, r5.w, r3.z, r2.w
add r3.z, -r2.w, cb5[64].x
mad r2.w, r2.x, r3.z, r2.w
add r3.z, -r2.w, cb5[64].y
mad r2.w, r2.z, r3.z, r2.w
add r3.z, -r2.w, cb5[64].z
mad r2.w, r2.y, r3.z, r2.w
add r3.z, -r2.w, l(0.300000)
mad r2.w, r0.w, r3.z, r2.w
add r3.z, -r2.w, cb5[64].w
mul r3.z, r3.z, r6.z
mad r2.w, r8.y, r3.z, r2.w
add r3.z, -r2.w, cb5[65].x
mul r3.z, r3.z, r4.y
mad r2.w, r8.x, r3.z, r2.w
add r3.z, -r2.w, r9.x
mad r2.w, r1.w, r3.z, r2.w
mad_sat r2.w, r3.x, r3.y, r2.w
mul r3.z, r12.y, cb5[65].y
mul r3.w, r3.z, cb3[r4.w + 0].w
mad r3.z, -cb3[r4.w + 0].w, r3.z, r12.y
mad r3.z, r12.z, r3.z, r3.w
add r3.w, -r3.z, r12.y
mad r3.z, r5.z, r3.w, r3.z
add r3.w, -r3.z, r12.y
mad r3.z, r5.w, r3.w, r3.z
add r3.w, -r3.z, cb5[65].z
mad r2.x, r2.x, r3.w, r3.z
add r3.z, -r2.x, cb5[65].w
mad r2.x, r2.z, r3.z, r2.x
add r2.z, -r2.x, cb5[66].x
mad r2.x, r2.y, r2.z, r2.x
add r2.y, -r2.x, l(0.900000)
mad r0.w, r0.w, r2.y, r2.x
add r2.x, -r0.w, cb5[66].y
mul r2.x, r2.x, r6.z
mad r0.w, r8.y, r2.x, r0.w
add r2.x, -r0.w, cb5[66].z
mul r2.x, r2.x, r4.y
mad r0.w, r8.x, r2.x, r0.w
add r2.x, -r0.w, r9.y
mad r0.w, r1.w, r2.x, r0.w
mad_sat r0.w, r3.x, r3.y, r0.w
mul r2.x, r9.w, cb5[67].w
mul r2.x, r2.x, l(0.500000)
mad r2.x, r5.z, -r2.x, r2.x
mad r2.x, r5.w, -r2.x, r2.x
mad r2.x, r11.w, l(0.500000), r2.x
add r2.y, -r2.x, cb5[68].x
mad r1.w, r1.w, r2.y, r2.x
mul r1.w, r1.w, cb5[68].y
mad_sat r10.y, r0.w, cb1[8].y, cb1[8].x
dp3_sat r2.x, l(0.627403915, 0.329283029, 0.0433130674, 0.000000), r0.xyzx
dp3_sat r2.y, l(0.0690972880, 0.919540405, 0.0113623161, 0.000000), r0.xyzx
dp3_sat r2.z, l(0.0163914394, 0.0880133063, 0.895595253, 0.000000), r0.xyzx
add r0.xy, v1.zzzz, l(1.000000, -0.920000, 0.000000, 0.000000)
add_sat r0.x, r0.x, r0.x
mad r0.x, r0.x, l(-0.100000), l(1.000000)
lt r0.z, l(0.920000), v1.z
mul_sat r0.y, r0.y, l(10.000000)
mad r0.y, r0.y, l(-0.780000), l(0.900000)
movc r0.x, r0.z, r0.y, r0.x
and r0.yz, cb2[14].wwww, l(0, 1, 8, 0)
movc r0.x, r0.y, l(1.000000), r0.x
ieq r0.y, r0.z, l(8)
movc_sat r10.z, r0.y, l(1.000000), r0.x
sqrt r0.xyz, r2.xyzx
mul r0.xyz, r0.xyzx, l(255.000000, 255.000000, 255.000000, 0.000000)
ftou r0.xyz, r0.xyzx
imad r0.x, r0.y, l(256), r0.x
imad r0.x, r0.z, l(0x00010000), r0.x
mul r0.y, r2.w, l(255.000000)
ftou r0.y, r0.y
imad o0.x, r0.y, l(0x01000000), r0.x
mul r0.xyz, r10.xyzx, l(255.000000, 255.000000, 255.000000, 0.000000)
ftou r0.xyz, r0.xyzx
imad r0.x, r0.y, l(256), r0.x
iadd r0.x, r0.x, l(0x00ff0000)
imad o0.y, r0.z, l(0x01000000), r0.x
dp3 r0.x, l(1.000000, 1.000000, 1.000000, 0.000000), |r7.xywx|
div r0.xy, r7.xyxx, r0.xxxx
add r0.zw, -|r0.yyyx|, l(0.000000, 0.000000, 1.000000, 1.000000)
ge r2.xy, r0.xyxx, l(0.000000, 0.000000, 0.000000, 0.000000)
movc r0.zw, r2.xxxy, r0.zzzw, -r0.zzzw
ge r2.x, l(0.000000), r7.w
movc r0.xy, r2.xxxx, r0.zwzz, r0.xyxx
mad r0.xy, r0.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
mad r0.xy, r0.xyxx, l(1023.000000, 1023.000000, 0.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
ftou r0.xy, r0.xyxx
ishl r0.y, r0.y, l(10)
or r0.x, r0.y, r0.x
mad_sat r0.y, r1.w, l(0.062500), l(0.500000)
mad r0.y, r0.y, l(2046.000000), l(0.500000)
ftou r0.y, r0.y
ishl r0.y, r0.y, l(20)
or o1.x, r0.y, r0.x

ld_indexable(texture2d)(float,float,float,float) r10.xyzw, l(0, 0, 0, 0), t125.xyzw
ge r30.x, r34.x, l(5.0)

//add r28.x, r1.z, -r10.y
//mad r1.x, -r10.x, r28.x, r1.x

div r0.xy, r1.xyxx, r1.zzzz
add r0.xy, r0.xyxx, -cb0[26].xyxx

mov r15.xyw, v10.xyxw
if_nz r30.x
add r28.x, v10.w, -r10.y
mad r15.x, r10.x, r28.x, r15.x
else
add r28.x, v10.w, -r34.y
mad r15.x, r34.x, r28.x, r15.x
endif

div r0.zw, r15.xxxy, v10.wwww
add r0.zw, r0.zzzw, -cb0[59].xxxy
add r0.xy, -r0.zwzz, r0.xyxx
mad r0.xy, r0.xyxx, l(0.249500, 0.249500, 0.000000, 0.000000), l(0.499992371, 0.499992371, 0.000000, 0.000000)
mul r0.y, r0.y, l(32767.500000)
round_ne r0.y, r0.y
add r0.y, r0.y, l(0.500000)
mul r0.z, r0.y, l(0.0000305180438)
mov o2.xy, r0.xzxx
ret
// Approximately 0 instruction slots used
