//CGVER3.4
//
// Generated by Microsoft (R) D3DX9 Shader Compiler 5.04.00.2904
//
//   fxc /T vs_1_1 /Zpr /DCGC=0 /Fc $$out.cg $$in.cg
//
//
// Parameters:
//
//   float4 $CameraPos;
//   float3 $Fog;
//   float4 $LightPos;
//   row_major float4x4 $ModelViewProj;
//   float4 $NoisePos;
//   float3 $Normal;
//   float3 $Tangent;
//   float4 $TexGenRipple0;
//   float4 $TexGenRipple1;
//   float4 $WaterLevel;
//   float4 $g_VSCONST_0_025_05_1;
//   float4 $pg[66];
//
//
// Registers:
//
//   Name                  Reg   Size
//   --------------------- ----- ----
//   $ModelViewProj        c0       4
//   $LightPos             c4       1
//   $CameraPos            c5       1
//   $NoisePos             c6       1
//   $TexGenRipple0        c7       1
//   $TexGenRipple1        c8       1
//   $Normal               c9       1
//   $Tangent              c10      1
//   $WaterLevel           c11      1
//   $g_VSCONST_0_025_05_1 c28      1
//   $Fog                  c29      1
//   $pg                   c30     66
//

    vs_1_1
    def c12, 0.03125, 32, -1, 0
    def c13, 2, 3, 0, 0
    dcl_position v0
    dcl_color v1
    add r1.xy, v0, c6
    mul r2.xy, r1, c12.x
    frc r0.xy, r2
    frc r3.xy, r1
    mul r0.w, r0.x, c12.y
    mov a0.x, r0.w
    mov r1.x, c30[a0.x].w
    mov r1.y, c31[a0.x].w
    mad r2.xy, r0.y, c12.y, r1
    add r0.xy, r3, c12.z
    mov a0.x, r2.y
    mul r0.xy, r0, c31[a0.x]
    add r1.y, r0.y, r0.x
    add r0, r3.xyxy, c12.zwwz
    mov a0.x, r2.x
    mul r4.xy, r0.zwzw, c31[a0.x]
    mov a0.x, r2.y
    mul r0.xy, r0, c30[a0.x]
    mov a0.x, r2.x
    mul r2.xy, r3, c30[a0.x]
    add r1.x, r4.y, r4.x
    add r2.x, r2.y, r2.x
    add r2.y, r0.y, r0.x
    mul r0.xy, r3, r3
    mad r3.xy, c13.x, -r3, c13.y
    add r1.xy, r1, -r2
    mul r0.xy, r0, r3
    mad r1.xy, r0.y, r1, r2
    add r0.w, -r1.x, r1.y
    mad r0.w, r0.x, r0.w, r1.x
    mov r0.x, c6.w
    mad r0.z, r0.w, r0.x, c11.x
    mov r0.xyw, v0
    dp4 oPos.x, c0, r0
    dp4 oPos.y, c1, r0
    dp4 oT0.x, r0, c7
    add r2.xyz, -r0, c4
    dp4 oT0.y, r0, c8
    dp3 r1.x, r2, r2
    rsq r1.w, r1.x
    add r1.xyz, -r0, c5
    mul r3.xyz, r2, r1.w
    dp3 r2.x, r1, r1
    dp3 oT1.x, c10, r3
    rsq r1.w, r2.x
    mov r2.xyz, c10
    mul r4.xyz, r2.zxyw, c9.yzxw
    mad r1.xyz, r1, r1.w, r3
    mad r2.xyz, r2.yzxw, c9.zxyw, -r4
    dp3 r4.x, r1, r1
    dp3 oT1.y, r2, r3
    rsq r1.w, r4.x
    dp3 oT1.z, c9, r3
    mul r1.xyz, r1, r1.w
    dp3 oT2.x, c10, r1
    dp3 oT2.y, r2, r1
    dp3 oT2.z, c9, r1
    dp4 r1.z, c2, r0
    dp4 r1.w, c3, r0
    mad r0.w, c29.x, -r1.z, c29.y
    mov oPos.zw, r1
    max r0.w, r0.w, c28.x
    min oFog, r0.w, c28.w
    mov oT1.w, c12.w
    mov oT2.w, c12.w
    mov oD0, v1

// approximately 70 instruction slots used
