//
// Generated by Microsoft (R) D3DX9 Shader Compiler 9.15.779.0000
//
// Parameters:
//
//   float AxisRotationVectorSourceIndex;
//   float4 AxisRotationVectors[2];
//   float4 CameraPosition;
//   float4 CameraRight;
//   float4 CameraUp;
//   float4 CameraWorldPosition;
//   float4 FogDistanceScale;
//   float4 FogExtinctionDistance;
//   float3 FogInScattering[4];
//   float4 FogMaxHeight;
//   float4 FogMinHeight;
//   float4 FogStartDistance;
//   float4x4 LocalToWorld;
//   float3 ParticleUpRightResultScalars;
//   float4x4 ViewProjectionMatrix;
//
//
// Registers:
//
//   Name                          Reg   Size
//   ----------------------------- ----- ----
//   ViewProjectionMatrix          c0       4
//   CameraPosition                c4       1
//   LocalToWorld                  c5       4
//   FogInScattering               c9       4
//   AxisRotationVectors           c13      2
//   CameraWorldPosition           c15      1
//   CameraRight                   c16      1
//   CameraUp                      c17      1
//   AxisRotationVectorSourceIndex c18      1
//   ParticleUpRightResultScalars  c19      1
//   FogDistanceScale              c20      1
//   FogExtinctionDistance         c21      1
//   FogStartDistance              c22      1
//   FogMinHeight                  c23      1
//   FogMaxHeight                  c24      1
//

    vs_3_0
  def c253, 0, 0, 0.0625, 1
    def c25, -1, 0, 0, 0
    def c26, 0.00999999978, 0.159154937, 0.5, -0.5
    def c27, 6.28318548, -3.14159274, 0.00100000005, 0
  dcl_2d s0
    dcl_position v0
    dcl_normal v1
    dcl_tangent v2
    dcl_texcoord v3
    dcl_blendweight v4
    dcl_texcoord1 v5
    dcl_texcoord2 v6
    dcl_texcoord3 v7
    dcl_position o0
    dcl_texcoord o1.xy
    dcl_texcoord1 o2.xy
    dcl_texcoord2 o3
    dcl_texcoord3 o4
    dcl_texcoord4 o5
    dcl_texcoord5 o6
    dcl_texcoord6 o7
    mul r1.xyz, c6, v1.y
    mul r0, c6, v0.y
    mad r1.xyz, c5, v1.x, r1
    mad r0, c5, v0.x, r0
    mad r1.xyz, c7, v1.z, r1
    mad r0, c7, v0.z, r0
    mad r1.xyz, c8, v1.w, r1
    mad r0, c8, v0.w, r0
    add r2.xyz, -r1, r0
    add r1.xyz, -r0.zxyw, c15.zxyw
    dp3 r2.w, r2, r2
    dp3 r1.w, r1, r1
    max r2.w, r2.w, c26.x
    max r1.w, r1.w, c26.x
    rsq r2.w, r2.w
    rsq r1.w, r1.w
    mul r5.xyz, r2, r2.w
    mul r2.xyz, r1, r1.w
    mul r1.xyz, r5.yzxw, r2
    mad r1.xyz, r2.zxyw, r5.zxyw, -r1
    dp3 r1.w, r1, r1
    max r1.w, r1.w, c26.x
    rsq r1.w, r1.w
    mul r3.xyz, r1, r1.w
    slt r1.z, c18.x, -c18.x
    frc r1.w, c18.x
    add r1.x, -r1.w, c18.x
    slt r1.y, -r1.w, r1.w
    mad r1.w, v4.x, c26.y, c26.z
    mad r3.w, r1.z, r1.y, r1.x
    frc r1.w, r1.w
    mova a0.w, r3.w
    mad r2.w, r1.w, c27.x, c27.y
    mul r4.xyz, r2, c13[a0.w].yzxw
    sincos r1.xy, r2.w
    mad r4.xyz, r2.zxyw, c13[a0.w].zxyw, -r4
    mul r2, r1.y, c16
    dp3 r1.w, r4, r4
    mad r2, -r1.x, c17, r2
    max r1.w, r1.w, c26.x
    mul r2, r2, c19.x
    rsq r1.w, r1.w
    mad r3.xyz, r3, c19.y, r2
    mul r2.xyz, r4, r1.w
    mad r4.xyz, r2, c13[a0.w].w, -c13[a0.w]
    slt r1.z, -r3_abs.w, r3_abs.w
    sge r1.w, -r3_abs.w, r3_abs.w
    mad r2.xyz, r1.z, r4, c13[a0.w]
    mad r4.xyz, r1.w, r4, c13[a0.w]
    mad r2.xyz, r2, c19.z, r3
    mul r3, r1.x, c16
    add r6.xy, c26.w, v6.zwzw
    mad r1, r1.y, c17, r3
    mul r6.xy, r6, v2
    mul r3, r1, c19.x
    mad r0, r6.x, r2, r0
    mad r1.xyz, -r5, c19.y, r3
    mad r3.xyz, r4, c19.z, r1
    mad r0, r6.y, r3, r0
    mad r6.xyz, r0, -c4.w, c4
    dp3 o7.x, r2, r6
    add r1.xyz, r0, -c4
    dp3 o7.y, r3, r6
    sge r1.w, c27.z, r1_abs.z
    lrp r3.w, r1.w, c27.z, r1.z
    dp3 r2.w, r1, r1
    rcp r3.w, r3.w
    mov r4.y, c4.z
    add r1, -r4.y, c23
    mul_sat r5, r3.w, r1
    rsq r2.w, r2.w
    add r1, -r4.y, c24
    rcp r2.w, r2.w
    mul_sat r4, r3.w, r1
    add r1, r2.w, -c22
    add r4, -r5, r4
    max r1, r1, c27.w
    mul r5.xyz, r2.zxyw, r3.yzxw
    mul r1, r4_abs, r1
    mad r5.xyz, r2.yzxw, r3.zxyw, -r5
    mul r2, r1, c20
    slt r1, r1, c21
    exp r2.x, r2.x
    exp r2.y, r2.y
    exp r2.z, r2.z
    exp r2.w, r2.w
    mad r3, r1, r2, c25.x
    mul r4, r1, r2
    mul r1.xyz, r3.x, c9
    mov r1.w, r4.x
    nrm r2.xyz, r5
    mul r1, r4.y, r1
    mad r1.xyz, r3.y, c10, r1
    dp3 o7.z, r2, r6
    mul r1, r4.z, r1
    mad r1.xyz, r3.z, c11, r1
    mul r2, r0.y, c1
    mad r2, c0, r0.x, r2
    mul r1, r4.w, r1
    mad r2, c2, r0.z, r2
    mad o5.xyz, r3.w, c12, r1
    mad r0, c3, r0.w, r2
    mov o5.w, r1.w
    mov o0, r0
    mov r12, r0
    mov o1.xy, v3
    mov o2.xy, v5
    mov o3, v6
    mov o4, v7
    mov o7.w, c27.w
 texldl r11, c253.z, s0
 add r11.y, r12.w, -r11.y
 mul r11.x, r11.x, r11.y
 add r12.x, r12.x, r11.x
 mov o6, r12

// approximately 119 instruction slots used
 

