// RESIDENT EVIL 6 - WATER REFLECTIONS: SEWER in JAKE Chapter
// HELIXMOD FIX BY MIKE_AR69
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// Parameters:
//
//   float4 CBWaterBubble__packed5;
//   float4 CBWaterWave__packed7;
//   bool bWaterNormalFlip;
//   float2 fScreenHalfPixelOffset;
//   row_major float4x4 fViewProj;
//   float4 fWindNum;
//   float4 fWindParams[8];
//   float4 fWinds[8];
//   row_major float3x4 fWorld;
//
//
// Registers:
//
//   Name                   Reg   Size
//   ---------------------- ----- ----
//   fWindParams            c1       8
//   fWinds                 c9       8
//   fViewProj              c17      4
//   fWorld                 c21      3
//   fScreenHalfPixelOffset c24      1
//   CBWaterBubble__packed5 c25      1
//   CBWaterWave__packed7   c26      1
//   fWindNum               c27      1
//   bWaterNormalFlip       c28      1
//

    vs_3_0
    def c0, 1, 0, 0.100000001, 0
    def c29, 0.159154937, 0.5, 6.28318548, -3.14159274
    def c30, -2, 0, 0, 0
    defi i0, 255, 0, 0, 0
def c200, 0, 0, 0.0625, 0
dcl_2d s0
    dcl_position v0
    dcl_tangent v1
    dcl_binormal v2
    dcl_position o0
    dcl_color o1.xy
    dcl_texcoord o2
    dcl_texcoord1 o3
    dcl_texcoord2 o4
    dcl_texcoord3 o5
    dcl_texcoord4 o6
    dcl_texcoord5 o7
dcl_texcoord6 o8			//provide shifted o2
    mad r0, v0.xyzx, c0.xxxy, c0.yyyx
    dp4 r1.x, c21, r0
    dp4 r1.y, c22, r0
    dp4 r1.z, c23, r0
    mad o7.zw, r1.xyxz, c25, c25.xyxy
    add r0.x, r1.x, c26.x
    mov r0.yz, r1
    mov r2.xy, r1
    add r2.z, r0.z, c26.y
    mov r3.z, c0.z
    mul r0.w, r3.z, c27.x
    frc r1.w, r0.w
    add r2.w, r0.w, -r1.w
    slt r0.w, r0.w, -r0.w
    slt r1.w, -r1.w, r1.w
    mad r0.w, r0.w, r1.w, r2.w
    mov r3.xz, c0.y
    mov r4.xz, c0.y
    mov r5.xz, c0.y
    mov r6.y, c0.y
    mov r7.y, c0.y
    mov r8.y, c0.y
    mov r1.w, r0.w
    rep i0
      break_ge r1.w, c27.x
      if_ge r1.w, c27.x
        break_ne c0.x, -c0.x
      endif
      mova a0.x, r1.w
      dp3 r2.w, r1, c9[a0.x]
      mad r2.w, r2.w, c1[a0.x].y, c1[a0.x].z
      mad r2.w, r2.w, c29.x, c29.y
      frc r2.w, r2.w
      mad r2.w, r2.w, c29.z, c29.w
      sincos r9.xy, r2.w
      mad r6.y, r9.x, c1[a0.x].x, r6.y
      mul r3.yw, r9.y, c9[a0.x].xxzz
      rcp r2.w, c1[a0.x].y
      mad r3.xz, r3.yyww, r2.w, r3
      dp3 r3.y, r0, c9[a0.x]
      mad r3.y, r3.y, c1[a0.x].y, c1[a0.x].z
      mad r3.y, r3.y, c29.x, c29.y
      frc r3.y, r3.y
      mad r3.y, r3.y, c29.z, c29.w
      sincos r9.xy, r3.y
      mad r7.y, r9.x, c1[a0.x].x, r7.y
      mul r3.yw, r9.y, c9[a0.x].xxzz
      mad r4.xz, r3.yyww, r2.w, r4
      dp3 r3.y, r2, c9[a0.x]
      mad r3.y, r3.y, c1[a0.x].y, c1[a0.x].z
      mad r3.y, r3.y, c29.x, c29.y
      frc r3.y, r3.y
      mad r3.y, r3.y, c29.z, c29.w
      sincos r9.xy, r3.y
      mad r8.y, r9.x, c1[a0.x].x, r8.y
      mul r3.yw, r9.y, c9[a0.x].xxzz
      mad r5.xz, r3.yyww, r2.w, r5
      add r1.w, r1.w, c0.x
    endrep
    mul r6.xz, r3, c26.z
    mul r7.xz, r4, c26.z
    mul r8.xz, r5, c26.z
    add r1.xyz, r1, r6
    add r0.xyz, r0, r7
    add r2.xyz, r2, r8
    add r0.xyz, -r1, r0
    nrm r3.xyz, r0
    add r0.xyz, -r1, r2
    nrm r2.xyz, r0
    mul r0.xyz, r3.yzxw, r2.zxyw
    mad r0.xyz, r2.yzxw, r3.zxyw, -r0
    
	mul r4, r1.y, c18
    mad r4, r1.x, c17, r4
    mad r4, r1.z, c19, r4
    add r4, r4, c20
    
	mul r5.xyz, r0, c28.x
    mad o3.xyz, r5, c30.x, r0
	
mov r10, r4
texldl r14, c200.z, s0
add r14.y, r10.w, -r14.y   
mul r14.x, r14.x, r14.y
add r10.x, r10.x, r14.x

    mad o0.x, c24.x, -r4.w, r4.x
    mad o0.y, c24.y, r4.w, r4.y
    mov o0.zw, r4
    
	mov o1.xy, r4.zwzw
    
	mov o2, r4 //r10 //r4			//UNSHIFTED
mov o8, r10							//SHIFTED
 
	mov o3.w, r6.y
    mov o4.w, v2.w
    mov o4.xyz, r3
    mov o5.xyz, r2
    mov o5.w, c0.x
    mov o6.xyz, r1
    mov o6.w, c0.y
    mov o7.xy, v1

// approximately 124 instruction slots used
 