//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// Parameters:
//
//   float4 BufferCamera[27];
//   float4 BufferLights[37];
//   float4 BufferObject[8];
//   float4 BufferParticle;
//   float4 BufferScene[4];
//   sampler2D Sampler_sParticleColorMap;
//   sampler2D Sampler_sParticleOrientationMap;
//   sampler2D Sampler_sParticlePositionMap;
//
//
// Registers:
//
//   Name                            Reg   Size
//   ------------------------------- ----- ----
//   BufferCamera                    c0      18
//   BufferLights                    c18      6
//   BufferScene                     c24      4
//   BufferObject                    c28      3
//   BufferParticle                  c31      1
//   Sampler_sParticlePositionMap    s0       1
//   Sampler_sParticleOrientationMap s1       1
//   Sampler_sParticleColorMap       s2       1
//

    vs_3_0
    def c32, 1, 0, -1, 0.5
    def c33, 0.5, -0.5, 0, 0
def c247, 0.25, 0, 0.0625, 0
dcl_2d s3
    dcl_position v0
    dcl_tangent v1
    dcl_color v2
    dcl_color1 v3
    dcl_texcoord v4
    dcl_2d s0
    dcl_2d s1
    dcl_2d s2
    dcl_position o0
    dcl_texcoord o1
    dcl_texcoord1 o2.xy
    dcl_texcoord2 o3.xyz
    dcl_texcoord3 o4.xy
    dcl_texcoord5 o5.xyz
    frc r0.x, v3.z
    add r0.y, -r0.x, v3.z
    mov o3.z, r0.x
    rcp r1.x, c31.x
    mul r0.y, r0.y, r1.x
    frc r0.z, r0_abs.y
    sge r0.w, r0.y, -r0.y
    lrp r1.z, r0.w, r0.z, -r0.z
    mul r0.x, r1.z, c31.x
    frc r0.zw, r0.xyxy
    add r0.xy, -r0.zwzw, r0
    add r0.zw, c32.xyxz, v4.xyxy
    mad r0.xy, r0.zwzw, c33, r0
    rcp r1.y, c31.y
    mul o2.xy, r0, r1
    mul r0.y, r1.x, v3.w
    frc r1.z, r0_abs.y
    sge r1.w, r0.y, -r0.y
    lrp r2.x, r1.w, r1.z, -r1.z
    mul r0.x, r2.x, c31.x
    frc r1.zw, r0.xyxy
    add r0.xy, r0, -r1.zwzw
    mad r0.xy, r0.zwzw, c33, r0
    mul o3.xy, r1, r0
    mul r0.xyz, c23, v2
    mov r0.w, v2.w
    add r0, r0, r0
    mul r1, c32.xxyy, v3.xyxx
    texldl r2, r1, s2
    mul o1, r0, r2
    texldl r0, r1, s0
    texldl r1, r1, s1
    add r0.xyz, r0, v0
    mov r0.w, c32.x
    dp4 r2.x, r0, c29
    mul r2.xyz, r2.x, c15
    dp4 r2.w, r0, c28
    dp4 r0.x, r0, c30
    mad r0.yzw, r2.w, c14.xxyz, r2.xxyz
    mad r0.xyz, r0.x, c16, r0.yzww
    add r0.xyz, r0, c17
    add r0.w, -r0.z, -c27.x
    max r0.w, r0.w, c32.y
    mul r0.w, r0.w, c27.y
    min r0.w, r0.w, c32.x
    mul o4.x, r0.w, c25.w
    mov r2.xy, v4
    mul r2, r2.xxyy, v1
    add r2, r2.zzww, r2.xxyy
    mul r1, r1, r2
    add r1.xy, r1.zwzw, r1
    add r0.xy, r0, r1
    mul r1, r0.y, c11
    mad r1, r0.x, c10, r1
    mad r1, r0.z, c12, r1
    add r1, r1, c13
mov r10, r1
texldl r24, c247.z, s3	
add r24.y, r1.w, -r24.y
mul r24.x, r24.x, r24.y
add r1.x, r1.x, r24.x
    mul r0.xyw, r1, c32.w
    add r2.xy, r0.w, r0
    add r2.z, r1.w, -r2.y
    mul r0.xy, r1.w, c7.zwzw
    mad r0.xy, r2.xzzw, c7, r0
    mul r2.xy, r1.w, c8
    mad r0.xy, r2, c32.w, r0
    rcp r0.w, r1.w
    mov o0, r10
    mul o5.xy, r0.w, r0
    rcp r0.x, c5.w
    mul o5.z, r0.x, -r0.z
    mov o4.y, c32.y

// approximately 72 instruction slots used (6 texture, 66 arithmetic)
 