//
// Generated by Microsoft (R) HLSL Shader Compiler 9.19.949.1104
//
// Parameters:
//
//   float4 CameraPosition;
//   float3 DecalLocalBinormal;
//   float3 DecalLocation;
//   float2 DecalOffset;
//   float4 InvMaxTesselationLevel_ZScale;
//   float4 InvTerrainSize_SectionBase;
//   float4 lightzMapCoordinateScaleBias;
//   float4 lightzPositionAndInvRadius;
//   float4x4 LocalToWorld;
//   float4 ShadowCoordinateScaleBias;
//   float4x4 ViewProjectionMatrix;
//   float4x4 WorldToDecal;
//
//
// Registers:
//
//   Name                          Reg   Size
//   ----------------------------- ----- ----
//   ViewProjectionMatrix          c0       4
//   CameraPosition                c4       1
//   LocalToWorld                  c5       4
//   WorldToDecal                  c9       4
//   ShadowCoordinateScaleBias     c13      1
//   DecalLocation                 c14      1
//   DecalOffset                   c15      1
//   DecalLocalBinormal            c16      1
//   InvMaxTesselationLevel_ZScale c17      1
//   InvTerrainSize_SectionBase    c18      1
//   lightzMapCoordinateScaleBias   c19      1
//   lightzPositionAndInvRadius     c20      1
//

    vs_3_0
  def c253, 0, 0, 0.0625, 1
    def c21, 256, -32768, 1, 0
    def c22, 0.5, 0, 0, 0
  dcl_2d s0
    dcl_position v0
    dcl_blendweight v1
    dcl_tangent v2
    dcl_texcoord o0.xyz
    dcl_texcoord1 o1.xy
    dcl_texcoord2 o2.xy
    dcl_texcoord3 o3
    dcl_texcoord4 o4.xyz
    dcl_texcoord5 o5
    dcl_texcoord6 o6.xyz
    dcl_texcoord7 o7
    dcl_position o8
    mad r0.x, v0.w, c21.x, v0.z
    add r0.x, r0.x, c21.y
    mul r0.z, r0.x, c17.y
    mul r0.xy, c17.x, v0
    mov r1.zw, c21
    mad o0.xyz, c18.zwzw, r1.zzww, r0
    mad r1, c14.xyzx, r1.zzzw, r1.wwwz
    mul r2.xy, c17.y, v2
    mov r2.zw, c21
    nrm r3.xyz, r2.zwxw
    nrm r4.xyz, r2.wzyw
    mul r2.xyz, r3.zxyw, r4.yzxw
    mad r2.xyz, r3.yzxw, r4.zxyw, -r2
    mad r5.xyz, r2, v1.x, r0
    mad r0.xy, r0, c19, c19.wzzw
    mul r6, r5.y, c6
    mad r6, c5, r5.x, r6
    mad r5, c7, r5.z, r6
    add r5, r5, c8
    add r1, -r1, r5
    mul r0.zw, r1.y, c10.xyxy
    mad r0.zw, c9.xyxy, r1.x, r0
    mad r0.zw, c11.xyxy, r1.z, r0
    mad r0.zw, c12.xyxy, r1.w, r0
    add r0.zw, -r0, c15.xyxy
    add o1.xy, r0.zwzw, c22.x
    mad o2.xy, r0, c13, c13.wzzw
    dp3 r0.x, c16, r2
    mad r0.xyz, r0.x, -r2, c16
    nrm r1.xyz, r0
    mul r0.xyz, r2.yzxw, r1.zxyw
    mad r0.xyz, r1.yzxw, r2.zxyw, -r0
    dp3 r0.w, r3, r0
    dp3 r0.x, r4, r0
    mov o3.x, -r0.w
    dp3 r0.y, r3, r1
    dp3 r0.z, r4, r1
    mov o3.yzw, -r0.xyxz
    mad r0.xyz, r5, -c4.w, c4
    mul r0.xy, r0, c17.zwzw
    dp3 r1.x, r0, c5
    dp3 r1.y, r0, c6
    dp3 r1.z, r0, c7
    dp3 o6.x, r3, r1
    dp3 o6.y, r4, r1
    dp3 o6.z, r2, r1
    add r0.xyz, -r5, c20
    mul r1.xy, r0, c17.zwzw
    mov r1.z, r0.z
    mul o5.xyz, r0, c20.w
    dp3 r0.x, r1, c5
    dp3 r0.y, r1, c6
    dp3 r0.z, r1, c7
    dp3 o4.x, r3, r0
    dp3 o4.y, r4, r0
    dp3 o4.z, r2, r0
    mov o5.w, c21.w
    mul r0, r5.y, c1
    mad r0, c0, r5.x, r0
    mad r0, c2, r5.z, r0
    mad r0, c3, r5.w, r0
    mov r12, r0
    mov o8, r0
 texldl r11, c253.z, s0
 if_ne r12.w, c253.w
 add r11.y, r12.w, -r11.y
 mul r11.x, r11.x, r11.y
 add r12.x, r12.x, r11.x
 endif
 mov o7, r12

// approximately 69 instruction slots used
 

