//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// Parameters:
//
//   float FloatParameter_PulseSpeed;
//   float FloatParameter_PulseStrength;
//   row_major float4x4 WorldMatrix;
//   float4 global_Data;
//   row_major float4x4 global_View;
//   float4 global_ViewInfo;
//   float4 global_ViewPos;
//   row_major float4x4 global_ViewProjection;
//
//
// Registers:
//
//   Name                         Reg   Size
//   ---------------------------- ----- ----
//   WorldMatrix                  c0       4
//   FloatParameter_PulseSpeed    c4       1
//   FloatParameter_PulseStrength c5       1
//   global_ViewInfo              c237     1
//   global_Data                  c238     1
//   global_View                  c239     3
//   global_ViewProjection        c247     4
//   global_ViewPos               c251     1
//

    vs_3_0
    def c6, 1, 0, 0.0399999991, 0.5
    def c7, 2, -1, 3, 8
    dcl_color v0  // In<1>
    dcl_normal v1  // In<4,5,6>
    dcl_position v2  // In<7,8,9>
    dcl_texcoord v3  // In<10,11>
    dcl_binormal v4  // In<12,13,14>
    dcl_tangent v5  // In<15,16,17>
    dcl_position o0
    dcl_texcoord o1.xy
    dcl_texcoord1 o2.xyz
    dcl_texcoord2 o3.xyz
    dcl_texcoord3 o4.xyz
    dcl_texcoord4 o5.xyz
    dcl_texcoord5 o6.x

#line 70 "F:\EoC Tools\EoC Tools\memory"
    mad r0, v2.xyzx, c6.xxxy, c6.yyyx
    dp4 r1.x, c0, r0  // ::worldPosition<0>
    dp4 r1.y, c1, r0  // ::worldPosition<1>
    dp4 r1.z, c2, r0  // ::worldPosition<2>
    dp4 r1.w, c3, r0  // ::worldPosition<3>

#line 35
    mul r0.xyz, r1, c6.z  // ::Local2<0,1,2>
    dp3 r0.x, r0, r0
    rsq r0.x, r0.x
    rcp r0.x, r0.x  // ::Local4<0>
    add r0.x, r0.x, c6.w
    frc r0.x, r0.x
    mad r0.x, r0.x, c7.x, c7.y
    mul r0.y, r0_abs.x, r0_abs.x
    mad r0.x, r0_abs.x, -c7.x, c7.z
    mul r0.x, r0.x, r0.y  // ::Local6<0>
    mul r0.x, r0.x, c7.w  // ::Local7<0>
    mov r2.x, c238.x  // ::global_Data<0>
    mad r0.x, r2.x, c4.x, -r0.x  // ::Local8<0>

#line 46
    add r0.x, r0.x, c6.w
    frc r0.x, r0.x
    mad r0.x, r0.x, c7.x, c7.y
    mul r0.y, r0_abs.x, r0_abs.x
    mad r0.x, r0_abs.x, -c7.x, c7.z
    mul r0.x, r0.x, r0.y  // ::Local10<0>
    mul r0.x, r0.x, c5.x  // ::Local11<0>

#line 61
    nrm r2.xyz, v1  // ::localNormalNormalized<0,1,2>

#line 64
    dp3 r3.x, c0, r2  // ::worldNormal<0>
    dp3 r3.y, c1, r2  // ::worldNormal<1>
    dp3 r3.z, c2, r2  // ::worldNormal<2>

#line 67
    nrm r2.xyz, r3  // ::worldNormalNormalized<0,1,2>

#line 33
    mul r0.yzw, r2.xxyz, v0.y  // ::Local0<0,1,2>

#line 67
    mov o2.xyz, r2  // ::main<6,7,8>

#line 51
    mul r0.xyz, r0.x, r0.yzww  // ::Local12<0,1,2>

#line 73
    mov r0.w, c6.y
    add r0, r0, r1  // ::worldPosition<0,1,2,3>

#line 76
    dp4 o0.x, c247, r0  // ::main<0>
    dp4 o0.y, c248, r0  // ::main<1>
    dp4 o0.z, c249, r0  // ::main<2>
    dp4 o0.w, c250, r0  // ::main<3>

#line 85
    nrm r1.xyz, v4  // ::localBinormalNormalized<0,1,2>

#line 88
    dp3 r2.x, c0, r1  // ::worldBinormal<0>
    dp3 r2.y, c1, r1  // ::worldBinormal<1>
    dp3 r2.z, c2, r1  // ::worldBinormal<2>

#line 91
    dp3 r1.x, r2, r2
    rsq r1.x, r1.x
    mul o3.xyz, r1.x, r2  // ::main<9,10,11>

#line 96
    nrm r1.xyz, v5  // ::localTangentNormalized<0,1,2>

#line 99
    dp3 r2.x, c0, r1  // ::worldTangent<0>
    dp3 r2.y, c1, r1  // ::worldTangent<1>
    dp3 r2.z, c2, r1  // ::worldTangent<2>

#line 102
    dp3 r1.x, r2, r2
    rsq r1.x, r1.x
    mul o4.xyz, r1.x, r2  // ::main<12,13,14>

#line 107
    add o5.xyz, -r0, c251  // ::main<15,16,17>

#line 112
    dp4 r0.x, c241, r0  // ::viewPosition<2>

#line 118
    rcp r0.y, c237.x
    mul o6.x, r0.y, r0.x  // ::main<18>

#line 81
    mov o1.xy, v3  // ::main<4,5>

// approximately 66 instruction slots used
 