//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// Parameters:
//
//   row_major float3x4 BoneMatrices[64];
//   row_major float4x4 WorldMatrix;
//   row_major float4x4 global_View;
//   float4 global_ViewInfo;
//   float4 global_ViewPos;
//   row_major float4x4 global_ViewProjection;
//
//
// Registers:
//
//   Name                  Reg   Size
//   --------------------- ----- ----
//   BoneMatrices          c0     192
//   WorldMatrix           c192     4
//   global_ViewInfo       c237     1
//   global_View           c239     3
//   global_ViewProjection c247     4
//   global_ViewPos        c251     1
//

    vs_3_0
    def c196, 3, 1, 0, 0
    dcl_blendindices v0  // In<0,1,2,3>
    dcl_blendweight v1  // In<4,5,6,7>
    dcl_position v2  // In<8,9,10>
    dcl_texcoord v3  // In<11,12>
    dcl_normal v4  // In<13,14,15>
    dcl_binormal v5  // In<16,17,18>
    dcl_tangent v6  // In<19,20,21>
    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.xyz
    dcl_texcoord6 o7.x

#line 36 "C:\Program Files (x86)\EoC Tools\memory"
    slt r0, v0, -v0
    frc r1, v0
    add r2, -r1, v0
    slt r1, -r1, r1
    mad r0, r0, r1, r2
    mul r0, r0, c196.x
    mova a0, r0.yxzw

#line 39
    mad r1, v2.xyzx, c196.yyyz, c196.zzzy
    dp4 r2.x, c0[a0.x], r1
    dp4 r2.y, c1[a0.x], r1
    dp4 r2.z, c2[a0.x], r1
    mul r2.xyz, r2, v1.y
    dp4 r3.x, c0[a0.y], r1
    dp4 r3.y, c1[a0.y], r1
    dp4 r3.z, c2[a0.y], r1
    mad r2.xyz, v1.x, r3, r2  // ::worldPosition<0,1,2>
    dp4 r0.x, c0[a0.z], r1
    dp4 r0.y, c1[a0.z], r1
    dp4 r0.z, c2[a0.z], r1
    mad r0.xyz, v1.z, r0, r2  // ::worldPosition<0,1,2>
    dp4 r2.x, c0[a0.w], r1
    dp4 r2.y, c1[a0.w], r1
    dp4 r2.z, c2[a0.w], r1
    mad r0.xyz, v1.w, r2, r0  // ::worldPosition<0,1,2>
    mov r0.w, c196.y
    dp4 r1.w, c195, r0  // ::worldPosition<3>
    dp4 r1.x, c192, r0  // ::worldPosition<0>
    dp4 r1.y, c193, r0  // ::worldPosition<1>
    dp4 r1.z, c194, r0  // ::worldPosition<2>

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

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

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

#line 53
    nrm r1.xyz, v4  // ::localNormalNormalized<0,1,2>

#line 58
    dp3 r2.x, c0[a0.x], r1
    dp3 r2.y, c1[a0.x], r1
    dp3 r2.z, c2[a0.x], r1
    mul r0.yzw, r2.xxyz, v1.y
    dp3 r2.x, c0[a0.y], r1
    dp3 r2.y, c1[a0.y], r1
    dp3 r2.z, c2[a0.y], r1
    mad r0.yzw, v1.x, r2.xxyz, r0  // ::worldNormal<0,1,2>
    dp3 r2.x, c0[a0.z], r1
    dp3 r2.y, c1[a0.z], r1
    dp3 r2.z, c2[a0.z], r1
    mad r0.yzw, v1.z, r2.xxyz, r0  // ::worldNormal<0,1,2>
    dp3 r2.x, c0[a0.w], r1
    dp3 r2.y, c1[a0.w], r1
    dp3 r2.z, c2[a0.w], r1
    mad r0.yzw, v1.w, r2.xxyz, r0  // ::worldNormal<0,1,2>
    dp3 r1.x, c192, r0.yzww  // ::worldNormal<0>
    dp3 r1.y, c193, r0.yzww  // ::worldNormal<1>
    dp3 r1.z, c194, r0.yzww  // ::worldNormal<2>

#line 64
    dp3 r0.y, r1, r1
    rsq r0.y, r0.y
    mul o2.xyz, r0.y, r1  // ::main<6,7,8>

#line 69
    nrm r1.xyz, v5  // ::localBinormalNormalized<0,1,2>

#line 74
    dp3 r2.x, c0[a0.x], r1
    dp3 r2.y, c1[a0.x], r1
    dp3 r2.z, c2[a0.x], r1
    mul r0.yzw, r2.xxyz, v1.y
    dp3 r2.x, c0[a0.y], r1
    dp3 r2.y, c1[a0.y], r1
    dp3 r2.z, c2[a0.y], r1
    mad r0.yzw, v1.x, r2.xxyz, r0  // ::worldBinormal<0,1,2>
    dp3 r2.x, c0[a0.z], r1
    dp3 r2.y, c1[a0.z], r1
    dp3 r2.z, c2[a0.z], r1
    mad r0.yzw, v1.z, r2.xxyz, r0  // ::worldBinormal<0,1,2>
    dp3 r2.x, c0[a0.w], r1
    dp3 r2.y, c1[a0.w], r1
    dp3 r2.z, c2[a0.w], r1
    mad r0.yzw, v1.w, r2.xxyz, r0  // ::worldBinormal<0,1,2>
    dp3 r1.x, c192, r0.yzww  // ::worldBinormal<0>
    dp3 r1.y, c193, r0.yzww  // ::worldBinormal<1>
    dp3 r1.z, c194, r0.yzww  // ::worldBinormal<2>

#line 80
    dp3 r0.y, r1, r1
    rsq r0.y, r0.y
    mul o3.xyz, r0.y, r1  // ::main<9,10,11>

#line 85
    nrm r1.xyz, v6  // ::localTangentNormalized<0,1,2>

#line 90
    dp3 r2.x, c0[a0.x], r1
    dp3 r2.y, c1[a0.x], r1
    dp3 r2.z, c2[a0.x], r1
    mul r0.yzw, r2.xxyz, v1.y
    dp3 r2.x, c0[a0.y], r1
    dp3 r2.y, c1[a0.y], r1
    dp3 r2.z, c2[a0.y], r1
    mad r0.yzw, v1.x, r2.xxyz, r0  // ::worldTangent<0,1,2>
    dp3 r2.x, c0[a0.z], r1
    dp3 r2.y, c1[a0.z], r1
    dp3 r2.z, c2[a0.z], r1
    mad r0.yzw, v1.z, r2.xxyz, r0  // ::worldTangent<0,1,2>
    dp3 r2.x, c0[a0.w], r1
    dp3 r2.y, c1[a0.w], r1
    dp3 r2.z, c2[a0.w], r1
    mad r0.yzw, v1.w, r2.xxyz, r0  // ::worldTangent<0,1,2>
    dp3 r1.x, c192, r0.yzww  // ::worldTangent<0>
    dp3 r1.y, c193, r0.yzww  // ::worldTangent<1>
    dp3 r1.z, c194, r0.yzww  // ::worldTangent<2>

#line 96
    dp3 r0.y, r1, r1
    rsq r0.y, r0.y
    mul o4.xyz, r0.y, r1  // ::main<12,13,14>

#line 115
    rcp r0.y, c237.x
    mul o7.x, r0.y, r0.x  // ::main<21>

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

#line 106
    mov o6.xyz, v2  // ::main<18,19,20>

// approximately 114 instruction slots used
 