// File: /workspace/github_cpp_makefile_star2_O2/awbrenn[P]robot-controller/Client.cpp
// Function: createVector(int, int)
void createVector(int len, int num)
{
   angleFirst =  M_PI - ((M_PI * (num - 2)) / num);
   angleSecond = M_PI - ((M_PI * (num - 3)) / (num - 1));
   char turnFirst[20];
   sprintf(turnFirst, "TURN %f%s", angleFirst, "\0");
   char moveFirst[20];
   sprintf(moveFirst, "MOVE %d%s", len, "\0");
 
   for (int i=0; i<num; i++)
   {
      shape1.push_back(moveFirst);
      shape1.push_back("STOP\0");
//      shape1.push_back("GET IMAGE\O");
      shape1.push_back("GET DGPS\0");
      shape1.push_back("GET GPS\0");
      shape1.push_back("GET LASERS\0");
      shape1.push_back(turnFirst);
      shape1.push_back("STOP\0");
   }

   char turnSecond[20];
   sprintf(turnSecond, "TURN -%f%s", angleSecond, "\0");
   char moveSecond[20];
   sprintf(moveSecond, "MOVE %d%s", len, "\0");
   
   for (int j=0; j<num-1; j++)
   {
      shape2.push_back(moveSecond);
      shape2.push_back("STOP\0");
//      shape2.push_back("GET IMAGE\O");
      shape2.push_back("GET DGPS\0");
      shape2.push_back("GET GPS\0");
      shape2.push_back("GET LASERS\0");
      shape2.push_back(turnSecond);
      shape2.push_back("STOP\0");
   }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0xa8, %rsp
movl %esi, %ebx
leal -0x2(%rbx), %eax
cvtsi2sd %eax, %xmm0
movl %edi, %r12d
movsd 0x1678(%rip), %xmm1     # 0x4018
cvtsi2sd %esi, %xmm2
mulsd %xmm1, %xmm0
divsd %xmm2, %xmm0
movapd %xmm1, %xmm2
subsd %xmm0, %xmm2
cvtsd2ss %xmm2, %xmm0
movss %xmm0, 0xf7b00(%rip)    # 0xfa4c0
leal -0x3(%rbx), %eax
cvtsi2sd %eax, %xmm2
mulsd %xmm1, %xmm2
leal -0x1(%rbx), %eax
movl %eax, -0x54(%rbp)
cvtsi2sd %eax, %xmm3
divsd %xmm3, %xmm2
subsd %xmm2, %xmm1
cvtsd2ss %xmm1, %xmm1
movss %xmm1, 0xf7adb(%rip)    # 0xfa4c4
cvtss2sd %xmm0, %xmm0
leaq 0x1734(%rip), %rsi      # 0x4128
leaq 0x187f(%rip), %r14      # 0x427a
leaq -0xd0(%rbp), %rdi
movq %r14, %rdx
movb $0x1, %al
callq 0x2060
leaq 0x171f(%rip), %rsi      # 0x4132
xorl %r15d, %r15d
leaq -0xb0(%rbp), %rdi
movl %r12d, -0x58(%rbp)
movl %r12d, %edx
movq %r14, %rcx
xorl %eax, %eax
callq 0x2060
testl %ebx, %ebx
cmovgl %ebx, %r15d
leaq -0x50(%rbp), %r12
leaq -0x70(%rbp), %r13
leaq 0x37a5(%rip), %rbx      # 0x61e8
leaq 0x1832(%rip), %r14      # 0x427c
subl $0x1, %r15d
jb 0x2b54
movq %r12, %rdi
leaq -0xb0(%rbp), %rsi
movq %r13, %rdx
callq 0x324a
movq %rbx, %rdi
movq %r12, %rsi
callq 0x346c
movq %r12, %rdi
callq 0x2328
movq %r12, %rdi
movq %r14, %rsi
movq %r13, %rdx
callq 0x324a
movq %rbx, %rdi
movq %r12, %rsi
callq 0x346c
movq %r12, %rdi
callq 0x2328
movq %r12, %rdi
leaq 0x17de(%rip), %rsi      # 0x4282
movq %r13, %rdx
callq 0x324a
movq %rbx, %rdi
movq %r12, %rsi
callq 0x346c
movq %r12, %rdi
callq 0x2328
movq %r12, %rdi
leaq 0x17c3(%rip), %rsi      # 0x428c
movq %r13, %rdx
callq 0x324a
movq %rbx, %rdi
movq %r12, %rsi
callq 0x346c
movq %r12, %rdi
callq 0x2328
movq %r12, %rdi
leaq 0x17a7(%rip), %rsi      # 0x4295
movq %r13, %rdx
callq 0x324a
movq %rbx, %rdi
movq %r12, %rsi
callq 0x346c
movq %r12, %rdi
callq 0x2328
movq %r12, %rdi
leaq -0xd0(%rbp), %rsi
movq %r13, %rdx
callq 0x324a
movq %rbx, %rdi
movq %r12, %rsi
callq 0x346c
movq %r12, %rdi
callq 0x2328
movq %r12, %rdi
movq %r14, %rsi
movq %r13, %rdx
callq 0x324a
movq %rbx, %rdi
movq %r12, %rsi
callq 0x346c
movq %r12, %rdi
callq 0x2328
jmp 0x2a4a
cvtss2sd 0xf7968(%rip), %xmm0    # 0xfa4c4
leaq 0x15d9(%rip), %rsi      # 0x413c
leaq 0x1710(%rip), %rbx      # 0x427a
leaq -0x70(%rbp), %rdi
movq %rbx, %rdx
movb $0x1, %al
callq 0x2060
leaq 0x15b3(%rip), %rsi      # 0x4132
xorl %r15d, %r15d
leaq -0x90(%rbp), %rdi
movl -0x58(%rbp), %edx
movq %rbx, %rcx
xorl %eax, %eax
callq 0x2060
movl -0x54(%rbp), %eax
testl %eax, %eax
cmovgl %eax, %r15d
leaq -0x50(%rbp), %rbx
leaq -0x29(%rbp), %r12
leaq 0x3652(%rip), %r13      # 0x6200
leaq 0x16c7(%rip), %r14      # 0x427c
subl $0x1, %r15d
jb 0x2cbc
movq %rbx, %rdi
leaq -0x90(%rbp), %rsi
movq %r12, %rdx
callq 0x324a
movq %r13, %rdi
movq %rbx, %rsi
callq 0x346c
movq %rbx, %rdi
callq 0x2328
movq %rbx, %rdi
movq %r14, %rsi
movq %r12, %rdx
callq 0x324a
movq %r13, %rdi
movq %rbx, %rsi
callq 0x346c
movq %rbx, %rdi
callq 0x2328
movq %rbx, %rdi
leaq 0x1673(%rip), %rsi      # 0x4282
movq %r12, %rdx
callq 0x324a
movq %r13, %rdi
movq %rbx, %rsi
callq 0x346c
movq %rbx, %rdi
callq 0x2328
movq %rbx, %rdi
leaq 0x1658(%rip), %rsi      # 0x428c
movq %r12, %rdx
callq 0x324a
movq %r13, %rdi
movq %rbx, %rsi
callq 0x346c
movq %rbx, %rdi
callq 0x2328
movq %rbx, %rdi
leaq 0x163c(%rip), %rsi      # 0x4295
movq %r12, %rdx
callq 0x324a
movq %r13, %rdi
movq %rbx, %rsi
callq 0x346c
movq %rbx, %rdi
callq 0x2328
movq %rbx, %rdi
leaq -0x70(%rbp), %rsi
movq %r12, %rdx
callq 0x324a
movq %r13, %rdi
movq %rbx, %rsi
callq 0x346c
movq %rbx, %rdi
callq 0x2328
movq %rbx, %rdi
movq %r14, %rsi
movq %r12, %rdx
callq 0x324a
movq %r13, %rdi
movq %rbx, %rsi
callq 0x346c
movq %rbx, %rdi
callq 0x2328
jmp 0x2bb5
addq $0xa8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x2d00
jmp 0x2d00
jmp 0x2d07
jmp 0x2d07
jmp 0x2d00
jmp 0x2d00
jmp 0x2d07
jmp 0x2d07
jmp 0x2d00
jmp 0x2d07
jmp 0x2d00
jmp 0x2d00
jmp 0x2d07
jmp 0x2d07
jmp 0x2d00
jmp 0x2d00
jmp 0x2d07
jmp 0x2d07
jmp 0x2d00
jmp 0x2d00
jmp 0x2d07
jmp 0x2d07
jmp 0x2d00
jmp 0x2d07
jmp 0x2d00
movq %rax, %rbx
jmp 0x2d13
jmp 0x2d07
movq %rax, %rbx
leaq -0x50(%rbp), %rdi
callq 0x2328
movq %rbx, %rdi
callq 0x22c0