!!ARBvp1.0
# cgc version 2.2.0017, build date Jan 29 2010
# command line args: -profile arbvp1 -quiet
#vendor NVIDIA Corporation
#version 2.2.0.17
#profile arbvp1
#program vmain
#semantic vmain.batch_model_view_proj
#semantic vmain.batch_camera_location
#semantic vmain.batch_camera_params
#semantic vmain.lightDirection
#semantic vmain.lod_profile
#semantic vmain.billboard_constants
#var float3 sIn.m_vPosition : $vin.POSITION : POSITION : 0 : 1
#var float3 sIn.m_vCornerPos : $vin.NORMAL : NORMAL : 0 : 1
#var float4 sIn.m_vCornerAndStart : $vin.TEXCOORD0 : TEXCOORD0 : 0 : 1
#var float4 sIn.m_vGeomTransform : $vin.TEXCOORD1 : TEXCOORD1 : 0 : 1
#var float4 sIn.m_vUnused1 : $vin.TEXCOORD2 :  : 0 : 0
#var float4 sIn.m_vUnused2 : $vin.TEXCOORD3 :  : 0 : 0
#var float4x4 batch_model_view_proj :  : c[1], 4 : 1 : 1
#var float3 batch_camera_location :  : c[5] : 2 : 1
#var float4 batch_camera_params :  : c[6] : 3 : 1
#var float3 lightDirection :  : c[7] : 4 : 1
#var float4 lod_profile :  : c[8] : 5 : 1
#var float4 billboard_constants[0] :  : c[9] : 6 : 1
#var float4 billboard_constants[1] :  : c[10] : 6 : 1
#var float4 billboard_constants[2] :  : c[11] : 6 : 1
#var float4 billboard_constants[3] :  : c[12] : 6 : 1
#var float4 billboard_constants[4] :  : c[13] : 6 : 1
#var float4 billboard_constants[5] :  : c[14] : 6 : 1
#var float4 billboard_constants[6] :  : c[15] : 6 : 1
#var float4 billboard_constants[7] :  : c[16] : 6 : 1
#var float4 billboard_constants[8] :  : c[17] : 6 : 1
#var float4 billboard_constants[9] :  : c[18] : 6 : 1
#var float4 billboard_constants[10] :  : c[19] : 6 : 1
#var float4 billboard_constants[11] :  : c[20] : 6 : 1
#var float4 billboard_constants[12] :  : c[21] : 6 : 1
#var float4 billboard_constants[13] :  : c[22] : 6 : 1
#var float4 billboard_constants[14] :  : c[23] : 6 : 1
#var float4 billboard_constants[15] :  : c[24] : 6 : 1
#var float4 billboard_constants[16] :  : c[25] : 6 : 1
#var float4 billboard_constants[17] :  : c[26] : 6 : 1
#var float4 billboard_constants[18] :  : c[27] : 6 : 1
#var float4 billboard_constants[19] :  : c[28] : 6 : 1
#var float4 billboard_constants[20] :  : c[29] : 6 : 1
#var float4 billboard_constants[21] :  : c[30] : 6 : 1
#var float4 billboard_constants[22] :  : c[31] : 6 : 1
#var float4 billboard_constants[23] :  : c[32] : 6 : 1
#var float4 billboard_constants[24] :  : c[33] : 6 : 1
#var float4 billboard_constants[25] :  : c[34] : 6 : 1
#var float4 billboard_constants[26] :  : c[35] : 6 : 1
#var float4 billboard_constants[27] :  : c[36] : 6 : 1
#var float4 billboard_constants[28] :  : c[37] : 6 : 1
#var float4 billboard_constants[29] :  : c[38] : 6 : 1
#var float4 billboard_constants[30] :  : c[39] : 6 : 1
#var float4 billboard_constants[31] :  : c[40] : 6 : 1
#var float4 billboard_constants[32] :  : c[41] : 6 : 1
#var float4 billboard_constants[33] :  : c[42] : 6 : 1
#var float4 billboard_constants[34] :  : c[43] : 6 : 1
#var float4 billboard_constants[35] :  : c[44] : 6 : 1
#var float4 billboard_constants[36] :  : c[45] : 6 : 1
#var float4 billboard_constants[37] :  : c[46] : 6 : 1
#var float4 billboard_constants[38] :  : c[47] : 6 : 1
#var float4 billboard_constants[39] :  : c[48] : 6 : 1
#var float4 billboard_constants[40] :  : c[49] : 6 : 1
#var float4 billboard_constants[41] :  : c[50] : 6 : 1
#var float4 billboard_constants[42] :  : c[51] : 6 : 1
#var float4 billboard_constants[43] :  : c[52] : 6 : 1
#var float4 billboard_constants[44] :  : c[53] : 6 : 1
#var float4 billboard_constants[45] :  : c[54] : 6 : 1
#var float4 billboard_constants[46] :  : c[55] : 6 : 1
#var float4 billboard_constants[47] :  : c[56] : 6 : 1
#var float4 billboard_constants[48] :  : c[57] : 6 : 1
#var float4 billboard_constants[49] :  : c[58] : 6 : 1
#var float4 billboard_constants[50] :  : c[59] : 6 : 1
#var float4 billboard_constants[51] :  : c[60] : 6 : 1
#var float4 billboard_constants[52] :  : c[61] : 6 : 1
#var float4 billboard_constants[53] :  : c[62] : 6 : 1
#var float4 billboard_constants[54] :  : c[63] : 6 : 1
#var float4 billboard_constants[55] :  : c[64] : 6 : 1
#var float4 billboard_constants[56] :  : c[65] : 6 : 1
#var float4 billboard_constants[57] :  : c[66] : 6 : 1
#var float4 billboard_constants[58] :  : c[67] : 6 : 1
#var float4 billboard_constants[59] :  : c[68] : 6 : 1
#var float4 billboard_constants[60] :  : c[69] : 6 : 1
#var float4 billboard_constants[61] :  : c[70] : 6 : 1
#var float4 billboard_constants[62] :  : c[71] : 6 : 1
#var float4 billboard_constants[63] :  : c[72] : 6 : 1
#var float4 vmain.m_vPosition : $vout.POSITION : HPOS : -1 : 1
#var float2 vmain.m_vTexCoords : $vout.TEXCOORD0 : TEX0 : -1 : 1
#var float1 vmain.m_vAlphaScalar : $vout.TEXCOORD1 : TEX1 : -1 : 1
#var float3 vmain.m_vNormalMapVec : $vout.TEXCOORD2 : TEX2 : -1 : 1
#var float4 vmain.m_vAmbient : $vout.COLOR1 : COL1 : -1 : 1
#var float4 vmain.m_vDiffuse : $vout.TEXCOORD3 : TEX3 : -1 : 1
#const c[0] = 0 0.15915491 1 -1
#const c[73] = 0.25 0.5 0.75 1
#const c[74] = -24.980801 60.145809 -85.453789 64.939346
#const c[75] = -19.73921 1 3 0.63661975
#const c[76] = 6.2831855 0.15915494 2 4
#const c[77] = 5 6 0.44999999
PARAM c[78] = { { 0, 0.15915491, 1, -1 },
		program.local[1..72],
		{ 0.25, 0.5, 0.75, 1 },
		{ -24.980801, 60.145809, -85.453789, 64.939346 },
		{ -19.73921, 1, 3, 0.63661975 },
		{ 6.2831855, 0.15915494, 2, 4 },
		{ 5, 6, 0.44999999 } };
TEMP R0;
TEMP R1;
TEMP R2;
TEMP R3;
TEMP R4;
TEMP R5;
TEMP R6;
ADDRESS A0;
MOV R6.xy, c[0];
MUL R0.x, R6.y, c[6];
FRC R1.z, R0.x;
SLT R0, R1.z, c[73];
ADD R2.xyz, R0.yzww, -R0;
MOV R0.yzw, R2.xxyz;
DP4 R1.y, R0, c[73].xxzz;
DP3 R1.x, R2, c[73].yyww;
ADD R1.xy, R1.z, -R1;
MUL R2.xy, R1, R1;
MUL R2.zw, R2.xyxy, R2.xyxy;
MAD R1, R2.zzww, c[74].xyxy, c[74].zwzw;
MAD R1, R1, R2.zzww, c[75].xyxy;
MAD R1.zw, R1.xyxz, R2.xyxy, R1.xyyw;
DP4 R1.y, R0, c[0].zzww;
DP4 R1.x, R0, c[0].zwwz;
MUL R4.xy, R1, R1.zwzw;
MUL R2.x, -vertex.texcoord[1], c[0].y;
FRC R0.w, R2.x;
SLT R1, R0.w, c[73];
ADD R2.xyz, R1.yzww, -R1;
MOV R1.yzw, R2.xxyz;
DP3 R3.x, R2, c[73].yyww;
DP4 R3.y, R1, c[73].xxzz;
ADD R3.xy, R0.w, -R3;
MUL R4.zw, R3.xyxy, R3.xyxy;
ADD R2.xyz, vertex.position, -c[5];
DP3 R0.w, R2, R2;
MUL R5.xy, R4.zwzw, R4.zwzw;
RSQ R0.w, R0.w;
RCP R5.w, R0.w;
MOV R0.w, c[6].y;
MUL R3.w, R0, c[75];
SLT R3.x, R5.w, c[8].z;
MAD R0.w, -vertex.texcoord[1].y, R3.x, vertex.texcoord[1].y;
ADD R5.z, -R3.w, c[0];
MAD R2, R5.xxyy, c[74].xyxy, c[74].zwzw;
MAD R2, R2, R5.xxyy, c[75].xyxy;
MAD R2.xy, R2.xzzw, R4.zwzw, R2.ywzw;
ABS R3.x, vertex.texcoord[0];
FLR R3.x, R3;
DP4 R2.w, R1, c[0].zzww;
DP4 R2.z, R1, c[0].zwwz;
MOV R0.yz, R4.xxyw;
ADD R3.y, -R3.x, -R3.x;
SLT R3.z, vertex.texcoord[0].x, c[0].x;
MAD R6.y, R3, R3.z, R3.x;
ABS R6.z, R5;
SGE R3.x, c[0], R6.z;
SLT R6.z, c[75], R6.y;
MUL R3.x, R6.z, R3;
MAD R6.w, -R0, R3.x, R0;
MOV R0.w, c[0].x;
MOV R1.w, c[0].x;
ARL A0.x, vertex.texcoord[0].y;
MOV R0.x, -R4.y;
MOV R3.yz, vertex.normal;
MOV R3.x, c[0];
MUL R3.xyz, R3, R6.w;
DP3 R0.x, R0.yxww, R3;
DP3 R0.y, R0.zyww, R3;
MUL R3.xy, R2.zwzw, R2;
MOV R0.z, R3;
MOV R1.yz, R3.xxyw;
MOV R1.x, -R3.y;
DP3 R2.y, vertex.normal, R1.zyww;
DP3 R2.x, vertex.normal, R1.yxww;
ABS R0.w, R6.z;
SGE R1.w, c[0].x, R0;
MOV R2.z, vertex.normal;
MOV R0.w, c[0].z;
MAD R2.xyz, R6.w, R2, vertex.position;
ADD R0.xyz, vertex.position, R0;
ADD R0.xyz, R0, -R2;
MAD R0.xyz, R0, R1.w, R2;
MOV R1.z, c[0].x;
ADD R2.xyz, -R1, c[0].xxzw;
MAD R1.xyz, R1.w, R2, R1;
DP3 result.texcoord[2].y, R1, c[7];
ADD R1.y, R6, -c[0].z;
ABS R1.y, R1;
DP4 result.position.w, R0, c[4];
DP4 result.position.z, R0, c[3];
DP4 result.position.y, R0, c[2];
DP4 result.position.x, R0, c[1];
ABS R0.w, R6.y;
SGE R1.y, c[0].x, R1;
MOV R3.z, c[0].x;
SGE R0.w, c[0].x, R0;
MOV R0.x, -R4.y;
MOV R0.y, R4.x;
MOV R0.z, c[0].x;
ADD R0.xyz, R0, -R3;
MAD R0.xyz, R1.w, R0, R3;
DP3 result.texcoord[2].x, R0, c[7];
ABS R0.y, R0.w;
RCP R0.x, vertex.normal.x;
MUL R0.z, R0.x, c[76].x;
SGE R0.y, c[0].x, R0;
MUL R0.w, R1, R0.y;
MUL R0.y, R0.z, c[73];
ADD R0.x, vertex.texcoord[1], c[6];
ADD R1.x, R0, R0.y;
MUL R1.x, R1, c[76].y;
ABS R1.x, R1;
FRC R1.x, R1;
MUL R2.x, R0.w, R1.y;
MUL R1.x, R1, c[76];
SLT R0.y, R0.x, -R0;
ADD R0.x, -R1, -R1;
MAD R1.z, R0.x, R0.y, R1.x;
MAD R0.xy, R2.x, c[0].wxzw, c[0].zxzw;
ABS R1.x, R1.y;
ADD R2.x, R6.y, -c[76].z;
ABS R1.y, R2.x;
SGE R1.x, c[0], R1;
MUL R2.x, R0.w, R1;
SGE R2.y, c[0].x, R1;
MUL R0.w, R2.x, R2.y;
ADD R1.xy, -R0, c[0].xzzw;
MAD R0.xy, R1, R0.w, R0;
SLT R0.w, R1.z, c[0].x;
MUL R0.w, R1, R0;
MAD R0.w, R0, c[76].x, R1.z;
ABS R2.y, R2;
SGE R1.z, c[0].x, R2.y;
RCP R0.z, R0.z;
MUL R0.z, R0.w, R0;
ADD R1.xy, -R0, c[0].z;
MUL R1.z, R2.x, R1;
MAD R1.xy, R1, R1.z, R0;
FLR R0.y, R0.z;
FLR R0.x, -R0.z;
SLT R0.w, R0.z, c[0].x;
ADD R0.x, -R0, -R0.y;
MAD R1.z, R0.x, R0.w, R0.y;
MOV R0, c[A0.x + 9];
ABS R2.x, R1.z;
FLR R2.x, R2;
ABS R2.z, R0.w;
FLR R2.w, R2.z;
SLT R2.z, R1, c[0].x;
ADD R2.y, -R2.x, -R2.x;
MAD R2.x, R2.y, R2.z, R2;
ABS R1.z, vertex.texcoord[0].y;
ADD R3.x, -R2.w, -R2.w;
SLT R3.y, R0.w, R6.x;
MAD R3.y, R3.x, R3, R2.w;
FLR R1.z, R1;
ADD R2.w, -R1.z, -R1.z;
SLT R3.x, vertex.texcoord[0].y, c[0];
MAD R1.z, R2.w, R3.x, R1;
ADD R2.w, R1.z, R3.y;
ADD R2.x, R2, R2.w;
ARL A0.x, R2.x;
MAD R1.xy, -c[A0.x + 9].zwzw, R1, c[A0.x + 9];
ARL A0.x, R1.z;
ADD R2.y, R6, -c[76].w;
ABS R2.x, R2.y;
SGE R2.x, c[0], R2;
ADD R2.y, R6, -c[77].x;
ABS R2.x, R2;
ABS R2.y, R2;
SGE R2.x, c[0], R2;
ADD R2.w, R6.y, -c[77].y;
ABS R2.w, R2;
MUL R2.x, R6.z, R2;
SGE R2.y, c[0].x, R2;
MUL R2.z, R2.x, R2.y;
ABS R2.y, R2;
SGE R2.y, c[0].x, R2;
MUL R3.x, R2, R2.y;
SGE R2.w, c[0].x, R2;
MAD R2.xy, R2.z, c[0].wxzw, c[0].z;
MUL R3.y, R3.x, R2.w;
MAD R2.xy, -R2, R3.y, R2;
ABS R2.z, R2.w;
SGE R3.y, c[0].x, R2.z;
MUL R3.x, R3, R3.y;
ADD R2.zw, -R2.xyxy, c[0].xyzx;
MAD R2.xy, R2.zwzw, R3.x, R2;
MAD R2.xy, -c[A0.x + 11].zwzw, R2, c[A0.x + 11];
ADD R1.xy, R1, -R2;
ADD R3.y, c[8].w, -c[8].z;
MUL R2.z, -R3.y, c[77];
ADD R1.z, R2, c[8].w;
ADD R1.z, R1, -c[8];
RCP R2.z, R1.z;
ADD R1.z, R5.w, -c[8];
MAD result.texcoord[0].xy, R1.w, R1, R2;
MUL R1.z, R1, R2;
MIN R1.x, R1.z, c[0].z;
MAX R1.x, R1, c[0];
MUL R1.y, R5.z, R1.x;
MOV R4.z, c[0].x;
ADD R2.xyz, R4, -c[0].xxzw;
MAD R2.xyz, R1.w, R2, c[0].xxzw;
MAD R1.x, R3.w, R1, -R1.y;
DP3 result.texcoord[2].z, R2, c[7];
MAD result.texcoord[1].x, R1.w, R1, R1.y;
MOV result.color.secondary, R0;
MOV result.texcoord[3], c[A0.x + 10];
END
# 202 instructions, 7 R-regs
