//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
//   using 3Dmigoto v1.2.67 on Mon Jan 01 13:11:46 2018
//
//
// Buffer Definitions: 
//
// cbuffer $Globals
// {
//
//   float4 g_vStringPos;               // Offset:    0 Size:    16
//   float4 cv1;                        // Offset:   16 Size:    16
//   float4 g_vCellSize;                // Offset:   32 Size:    16
//   float4 g_vRotation;                // Offset:   48 Size:    16
//   float4 g_avChars[64];              // Offset:   64 Size:  1024
//   float4 g_avOffsets[64];            // Offset: 1088 Size:  1024
//   float4 g_vColor;                   // Offset: 2112 Size:    16 [unused]
//      = 0x3f800000 0x3f800000 0x3f800000 0x3f800000 
//   float4 g_avMask[4];                // Offset: 2128 Size:    64
//      = 0x3f800000 0x00000000 0x00000000 0x00000000 
//        0x00000000 0x3f800000 0x00000000 0x00000000 
//        0x00000000 0x00000000 0x3f800000 0x00000000 
//        0x00000000 0x00000000 0x00000000 0x3f800000 
//
// }
//
//
// Resource Bindings:
//
// Name                                 Type  Format         Dim Slot Elements
// ------------------------------ ---------- ------- ----------- ---- --------
// $Globals                          cbuffer      NA          NA    0        1
//
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// POSITION                 0   xyz         0     NONE   float   xyz 
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Position              0   xyzw        0      POS   float   xyzw
// TEXCOORD                 0   xy          1     NONE   float   xy  
//
vs_4_0
dcl_constantbuffer cb0[137], dynamicIndexed
dcl_input v0.xyz
dcl_output_siv o0.xyzw, position
dcl_output o1.xy
dcl_temps 5
ftoi r0.x, v0.z
ishr r0.y, r0.x, l(2)
and r0.z, r0.x, l(3)
dp4 r0.w, cb0[r0.z + 133].xyzw, cb0[r0.y + 68].xyzw
ilt r1.x, r0.x, l(255)
if_nz r1.x
  iadd r1.x, r0.x, l(1)
  and r1.y, r1.x, l(3)
  ishr r1.x, r1.x, l(2)
  dp4 r1.x, cb0[r1.y + 133].xyzw, cb0[r1.x + 68].xyzw
  add r1.x, -r0.w, r1.x
else 
  iadd r0.x, r0.x, l(-1)
  and r1.y, r0.x, l(3)
  ishr r0.x, r0.x, l(2)
  dp4 r0.x, cb0[r1.y + 133].xyzw, cb0[r0.x + 68].xyzw
  add r1.x, -r0.x, r0.w
endif 
mul r0.x, r1.x, cb0[1].w
mul r0.w, r0.w, cb0[1].w
mad r0.x, v0.x, r0.x, r0.w
mul r0.w, -v0.y, cb0[0].z
mul r0.w, r0.w, cb0[3].y
sincos r2.x, r3.x, cb0[3].x
mul r1.y, r0.w, r2.x
mad r4.x, r0.x, r3.x, -r1.y
mul r0.w, r0.w, r3.x
mad r0.x, r0.x, r2.x, r0.w
div r4.y, r0.x, cb0[3].y
add o0.xy, r4.xyxx, cb0[0].xyxx
dp4 r0.x, cb0[r0.z + 133].xyzw, cb0[r0.y + 4].xyzw
add r0.x, r0.x, -cb0[1].x
add r0.x, r0.x, l(0.001000)
ftoi r0.x, r0.x
ftoi r0.y, cb0[2].z
xor r0.z, r0.y, r0.x
imax r0.w, r0.x, -r0.x
imax r1.y, r0.y, -r0.y
udiv r0.w, null, r0.w, r1.y
ineg r1.y, r0.w
and r0.z, r0.z, l(0x80000000)
movc r0.z, r0.z, r1.y, r0.w
imad r0.x, -r0.z, r0.y, r0.x
mul r0.y, r1.x, v0.x
itof r0.x, r0.x
mul r0.x, r0.x, cb0[2].x
mad o1.x, r0.y, cb0[1].z, r0.x
itof r0.x, r0.z
add r0.x, r0.x, v0.y
mul o1.y, r0.x, cb0[2].y
mov o0.zw, l(0,0,0,1.000000)
ret 
// Approximately 52 instruction slots used
