// File: /workspace/github_cpp_makefile_star2_O3/tomfunkhouser[P]gaps/apps/gapsview/gapsview.cpp
// Function: GLUTRedraw()
static void
GLUTRedraw(void)
{
  // Clear window 
  glClearColor(background_color[0], background_color[1], background_color[2], 1.0);
  glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

  // Set viewing transformation
  viewer->Camera().Load();

  // Set lights
  static GLfloat light0_position[] = { 3.0, 4.0, 5.0, 0.0 };
  glLightfv(GL_LIGHT0, GL_POSITION, light0_position);
  static GLfloat light1_position[] = { -3.0, -2.0, -3.0, 0.0 };
  glLightfv(GL_LIGHT1, GL_POSITION, light1_position);

  // Draw everything
  DrawData(color_scheme);
  DrawSelectedPosition();
  DrawBBox();
  DrawAxes();

  // Swap buffers 
  glutSwapBuffers();
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x50, %rsp
cvtsd2ss 0x1a8310(%rip), %xmm0   # 0x1d5a30
cvtsd2ss 0x1a8318(%rip), %xmm1   # 0x1d5a40
cvtsd2ss 0x1a8320(%rip), %xmm2   # 0x1d5a50
movss 0x11e9f4(%rip), %xmm3   # 0x14c12c
callq 0x27ea0
movl $0x4100, %edi           # imm = 0x4100
callq 0x271f0
movq 0x1ada22(%rip), %rdi    # 0x1db170
addq $0x8, %rdi
xorl %esi, %esi
callq 0x8b048
leaq 0x1a8300(%rip), %rdx    # 0x1d5a60
movl $0x4000, %edi           # imm = 0x4000
movl $0x1203, %esi           # imm = 0x1203
callq 0x28130
leaq 0x1a82fa(%rip), %rdx    # 0x1d5a70
movl $0x4001, %edi           # imm = 0x4001
movl $0x1203, %esi           # imm = 0x1203
callq 0x28130
movl 0x1a82f5(%rip), %edi    # 0x1d5a80
callq 0x2e5b6
movl $0xb50, %edi            # imm = 0xB50
callq 0x27880
xorps %xmm1, %xmm1
xorps %xmm2, %xmm2
movss 0x11e984(%rip), %xmm0   # 0x14c12c
callq 0x28380
leaq 0x1ad594(%rip), %rsi    # 0x1dad48
leaq 0x28(%rsp), %rbx
movsd 0x11e887(%rip), %xmm0   # 0x14c048
movq %rbx, %rdi
callq 0xbb3fa
movl $0x772, %esi            # imm = 0x772
movq %rbx, %rdi
callq 0x915b2
leaq 0x28(%rsp), %rdi
callq 0xbe790
cmpl $0x0, 0x1adbd5(%rip)    # 0x1db3bc
je 0x2d817
movl $0xb50, %edi            # imm = 0xB50
callq 0x27200
movsd 0x11e815(%rip), %xmm0   # 0x14c010
movaps %xmm0, %xmm1
movaps %xmm0, %xmm2
callq 0x27ef0
leaq 0x1ad4eb(%rip), %rdi    # 0x1dacf8
movl $0x1, %esi
callq 0xbec7c
cmpl $0x0, 0x1adba2(%rip)    # 0x1db3c0
je 0x2da16
leaq 0x1ad4cd(%rip), %rdi    # 0x1dacf8
callq 0xbdfc4
mulsd 0x11e7d8(%rip), %xmm0   # 0x14c010
movsd %xmm0, (%rsp)
movl $0xb50, %edi            # imm = 0xB50
callq 0x27200
movss 0x11e8e1(%rip), %xmm0   # 0x14c130
callq 0x281d0
movl $0x3, %edi
callq 0x271a0
movss 0x11e8c6(%rip), %xmm0   # 0x14c12c
xorps %xmm1, %xmm1
xorps %xmm2, %xmm2
callq 0x28380
movsd 0x11e797(%rip), %xmm0   # 0x14c010
mulsd (%rsp), %xmm0
movsd %xmm0, 0x8(%rsp)
leaq 0x129555(%rip), %rsi    # 0x156de0
leaq 0x10(%rsp), %r14
movq %r14, %rdi
callq 0xd580e
leaq 0x5b1da1(%rip), %rbx    # 0x5df640
leaq 0x28(%rsp), %r15
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0xd4723
movq %r15, %rdi
callq 0x271c0
leaq 0x1294d7(%rip), %rsi    # 0x156d98
leaq 0x10(%rsp), %r14
movq %r14, %rdi
movsd (%rsp), %xmm0
callq 0xd580e
leaq 0x28(%rsp), %r15
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0xd4723
movq %r15, %rdi
callq 0x271c0
callq 0x27cd0
movl $0x3, %edi
callq 0x271a0
xorps %xmm0, %xmm0
xorps %xmm2, %xmm2
movss 0x11e821(%rip), %xmm1   # 0x14c12c
callq 0x28380
leaq 0x1294e1(%rip), %rsi    # 0x156df8
leaq 0x10(%rsp), %r14
movq %r14, %rdi
movsd 0x8(%rsp), %xmm0
callq 0xd580e
leaq 0x28(%rsp), %r15
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0xd4723
movq %r15, %rdi
callq 0x271c0
leaq 0x129464(%rip), %rsi    # 0x156db0
leaq 0x10(%rsp), %r14
movq %r14, %rdi
movsd (%rsp), %xmm0
callq 0xd580e
leaq 0x28(%rsp), %r15
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0xd4723
movq %r15, %rdi
callq 0x271c0
callq 0x27cd0
movl $0x3, %edi
callq 0x271a0
xorps %xmm0, %xmm0
xorps %xmm1, %xmm1
movss 0x11e796(%rip), %xmm2   # 0x14c12c
callq 0x28380
leaq 0x12946e(%rip), %rsi    # 0x156e10
leaq 0x10(%rsp), %r14
movq %r14, %rdi
movsd 0x8(%rsp), %xmm0
callq 0xd580e
leaq 0x28(%rsp), %r15
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0xd4723
movq %r15, %rdi
callq 0x271c0
leaq 0x1293f1(%rip), %rsi    # 0x156dc8
leaq 0x10(%rsp), %r14
movq %r14, %rdi
movsd (%rsp), %xmm0
callq 0xd580e
leaq 0x28(%rsp), %r15
movq %r15, %rdi
movq %rbx, %rsi
movq %r14, %rdx
callq 0xd4723
movq %r15, %rdi
callq 0x271c0
callq 0x27cd0
movss 0x11e71b(%rip), %xmm0   # 0x14c12c
callq 0x281d0
callq 0x10ef7a
addq $0x50, %rsp
popq %rbx
popq %r14
popq %r15
retq
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
callq 0xbe790
movq %rbx, %rdi
callq 0x28150