// File: /workspace/github_cpp_makefile_star2_O3/tomfunkhouser[P]gaps/apps/gapsview/gapsview.cpp
// Function: LoadColorIdentifier(int)
static void
LoadColorIdentifier(int k)
{
  // Make array of colors
  const int ncolors = 72;
  const RNRgb colors[ncolors] = {
    RNRgb(0.5, 0.5, 0.5), RNRgb(1, 0, 0), RNRgb(0, 0, 1), 
    RNRgb(0, 1, 0), RNRgb(0, 1, 1), RNRgb(1, 0, 1), 
    RNRgb(1, 0.5, 0), RNRgb(0, 1, 0.5), RNRgb(0.5, 0, 1), 
    RNRgb(0.5, 1, 0), RNRgb(0, 0.5, 1), RNRgb(1, 0, 0.5), 
    RNRgb(0.5, 0, 0), RNRgb(0, 0.5, 0), RNRgb(0, 0, 0.5), 
    RNRgb(0.5, 0.5, 0), RNRgb(0, 0.5, 0.5), RNRgb(0.5, 0, 0.5),
    RNRgb(0.7, 0, 0), RNRgb(0, 0.7, 0), RNRgb(0, 0, 0.7), 
    RNRgb(0.7, 0.7, 0), RNRgb(0, 0.7, 0.7), RNRgb(0.7, 0, 0.7), 
    RNRgb(0.7, 0.3, 0), RNRgb(0, 0.7, 0.3), RNRgb(0.3, 0, 0.7), 
    RNRgb(0.3, 0.7, 0), RNRgb(0, 0.3, 0.7), RNRgb(0.7, 0, 0.3), 
    RNRgb(0.3, 0, 0), RNRgb(0, 0.3, 0), RNRgb(0, 0, 0.3), 
    RNRgb(0.3, 0.3, 0), RNRgb(0, 0.3, 0.3), RNRgb(0.3, 0, 0.3),
    RNRgb(1, 0.3, 0.3), RNRgb(0.3, 1, 0.3), RNRgb(0.3, 0.3, 1), 
    RNRgb(1, 1, 0.3), RNRgb(0.3, 1, 1), RNRgb(1, 0.3, 1), 
    RNRgb(1, 0.5, 0.3), RNRgb(0.3, 1, 0.5), RNRgb(0.5, 0.3, 1), 
    RNRgb(0.5, 1, 0.3), RNRgb(0.3, 0.5, 1), RNRgb(1, 0.3, 0.5), 
    RNRgb(0.5, 0.3, 0.3), RNRgb(0.3, 0.5, 0.3), RNRgb(0.3, 0.3, 0.5), 
    RNRgb(0.5, 0.5, 0.3), RNRgb(0.3, 0.5, 0.5), RNRgb(0.5, 0.3, 0.5),
    RNRgb(0.3, 0.5, 0.5), RNRgb(0.5, 0.3, 0.5), RNRgb(0.5, 0.5, 0.3), 
    RNRgb(0.3, 0.3, 0.5), RNRgb(0.5, 0.3, 0.3), RNRgb(0.3, 0.5, 0.3), 
    RNRgb(0.3, 0.8, 0.5), RNRgb(0.5, 0.3, 0.8), RNRgb(0.8, 0.5, 0.3), 
    RNRgb(0.8, 0.3, 0.5), RNRgb(0.5, 0.8, 0.3), RNRgb(0.3, 0.5, 0.8), 
    RNRgb(0.8, 0.5, 0.5), RNRgb(0.5, 0.8, 0.5), RNRgb(0.5, 0.5, 0.8), 
    RNRgb(0.8, 0.8, 0.5), RNRgb(0.5, 0.8, 0.8), RNRgb(0.8, 0.5, 0.8)
  };

  // Load color
  if (k == -1) RNLoadRgb(0.8, 0.8, 0.8);
  else if (k == 0) RNLoadRgb(colors[0]);
  else RNLoadRgb(colors[1 + (k % (ncolors-1))]);
}

// Assembly:
pushq %rbx
subq $0x6c0, %rsp            # imm = 0x6C0
movl %edi, %ebx
movq %rsp, %rdi
movsd 0x11b834(%rip), %xmm0   # 0x14c010
movaps %xmm0, %xmm1
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x18(%rsp), %rdi
movsd 0x11b884(%rip), %xmm0   # 0x14c078
xorps %xmm1, %xmm1
xorps %xmm2, %xmm2
callq 0xf89f4
leaq 0x30(%rsp), %rdi
xorps %xmm0, %xmm0
xorps %xmm1, %xmm1
movsd 0x11b866(%rip), %xmm2   # 0x14c078
callq 0xf89f4
leaq 0x48(%rsp), %rdi
xorps %xmm0, %xmm0
xorps %xmm2, %xmm2
movsd 0x11b84e(%rip), %xmm1   # 0x14c078
callq 0xf89f4
leaq 0x60(%rsp), %rdi
xorps %xmm0, %xmm0
movsd 0x11b839(%rip), %xmm1   # 0x14c078
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x78(%rsp), %rdi
xorps %xmm1, %xmm1
movsd 0x11b821(%rip), %xmm0   # 0x14c078
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x90(%rsp), %rdi
xorps %xmm2, %xmm2
movsd 0x11b806(%rip), %xmm0   # 0x14c078
movsd 0x11b796(%rip), %xmm1   # 0x14c010
callq 0xf89f4
leaq 0xa8(%rsp), %rdi
xorps %xmm0, %xmm0
movsd 0x11b7e6(%rip), %xmm1   # 0x14c078
movsd 0x11b776(%rip), %xmm2   # 0x14c010
callq 0xf89f4
leaq 0xc0(%rsp), %rdi
xorps %xmm1, %xmm1
movsd 0x11b75e(%rip), %xmm0   # 0x14c010
movsd 0x11b7be(%rip), %xmm2   # 0x14c078
callq 0xf89f4
leaq 0xd8(%rsp), %rdi
xorps %xmm2, %xmm2
movsd 0x11b73e(%rip), %xmm0   # 0x14c010
movsd 0x11b79e(%rip), %xmm1   # 0x14c078
callq 0xf89f4
leaq 0xf0(%rsp), %rdi
xorps %xmm0, %xmm0
movsd 0x11b71e(%rip), %xmm1   # 0x14c010
movsd 0x11b77e(%rip), %xmm2   # 0x14c078
callq 0xf89f4
leaq 0x108(%rsp), %rdi
xorps %xmm1, %xmm1
movsd 0x11b766(%rip), %xmm0   # 0x14c078
movsd 0x11b6f6(%rip), %xmm2   # 0x14c010
callq 0xf89f4
leaq 0x120(%rsp), %rdi
xorps %xmm1, %xmm1
xorps %xmm2, %xmm2
movsd 0x11b6db(%rip), %xmm0   # 0x14c010
callq 0xf89f4
leaq 0x138(%rsp), %rdi
xorps %xmm0, %xmm0
xorps %xmm2, %xmm2
movsd 0x11b6c0(%rip), %xmm1   # 0x14c010
callq 0xf89f4
leaq 0x150(%rsp), %rdi
xorps %xmm0, %xmm0
xorps %xmm1, %xmm1
movsd 0x11b6a5(%rip), %xmm2   # 0x14c010
callq 0xf89f4
leaq 0x168(%rsp), %rdi
xorps %xmm2, %xmm2
movsd 0x11b68d(%rip), %xmm0   # 0x14c010
movaps %xmm0, %xmm1
callq 0xf89f4
leaq 0x180(%rsp), %rdi
xorps %xmm0, %xmm0
movsd 0x11b672(%rip), %xmm1   # 0x14c010
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x198(%rsp), %rdi
xorps %xmm1, %xmm1
movsd 0x11b657(%rip), %xmm0   # 0x14c010
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x1b0(%rsp), %rdi
movsd 0x11b6ef(%rip), %xmm0   # 0x14c0c0
xorps %xmm1, %xmm1
xorps %xmm2, %xmm2
callq 0xf89f4
leaq 0x1c8(%rsp), %rdi
xorps %xmm0, %xmm0
xorps %xmm2, %xmm2
movsd 0x11b6ce(%rip), %xmm1   # 0x14c0c0
callq 0xf89f4
leaq 0x1e0(%rsp), %rdi
xorps %xmm0, %xmm0
xorps %xmm1, %xmm1
movsd 0x11b6b3(%rip), %xmm2   # 0x14c0c0
callq 0xf89f4
leaq 0x1f8(%rsp), %rdi
xorps %xmm2, %xmm2
movsd 0x11b69b(%rip), %xmm0   # 0x14c0c0
movaps %xmm0, %xmm1
callq 0xf89f4
leaq 0x210(%rsp), %rdi
xorps %xmm0, %xmm0
movsd 0x11b680(%rip), %xmm1   # 0x14c0c0
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x228(%rsp), %rdi
xorps %xmm1, %xmm1
movsd 0x11b665(%rip), %xmm0   # 0x14c0c0
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x240(%rsp), %rdi
movsd 0x11b655(%rip), %xmm1   # 0x14c0c8
xorps %xmm2, %xmm2
movsd 0x11b642(%rip), %xmm0   # 0x14c0c0
callq 0xf89f4
leaq 0x258(%rsp), %rdi
xorps %xmm0, %xmm0
movsd 0x11b62a(%rip), %xmm1   # 0x14c0c0
movsd 0x11b62a(%rip), %xmm2   # 0x14c0c8
callq 0xf89f4
leaq 0x270(%rsp), %rdi
xorps %xmm1, %xmm1
movsd 0x11b612(%rip), %xmm0   # 0x14c0c8
movsd 0x11b602(%rip), %xmm2   # 0x14c0c0
callq 0xf89f4
leaq 0x288(%rsp), %rdi
xorps %xmm2, %xmm2
movsd 0x11b5f2(%rip), %xmm0   # 0x14c0c8
movsd 0x11b5e2(%rip), %xmm1   # 0x14c0c0
callq 0xf89f4
leaq 0x2a0(%rsp), %rdi
xorps %xmm0, %xmm0
movsd 0x11b5d2(%rip), %xmm1   # 0x14c0c8
movsd 0x11b5c2(%rip), %xmm2   # 0x14c0c0
callq 0xf89f4
leaq 0x2b8(%rsp), %rdi
xorps %xmm1, %xmm1
movsd 0x11b5aa(%rip), %xmm0   # 0x14c0c0
movsd 0x11b5aa(%rip), %xmm2   # 0x14c0c8
callq 0xf89f4
leaq 0x2d0(%rsp), %rdi
xorps %xmm1, %xmm1
xorps %xmm2, %xmm2
movsd 0x11b58f(%rip), %xmm0   # 0x14c0c8
callq 0xf89f4
leaq 0x2e8(%rsp), %rdi
xorps %xmm0, %xmm0
xorps %xmm2, %xmm2
movsd 0x11b574(%rip), %xmm1   # 0x14c0c8
callq 0xf89f4
leaq 0x300(%rsp), %rdi
xorps %xmm0, %xmm0
xorps %xmm1, %xmm1
movsd 0x11b559(%rip), %xmm2   # 0x14c0c8
callq 0xf89f4
leaq 0x318(%rsp), %rdi
xorps %xmm2, %xmm2
movsd 0x11b541(%rip), %xmm0   # 0x14c0c8
movaps %xmm0, %xmm1
callq 0xf89f4
leaq 0x330(%rsp), %rdi
xorps %xmm0, %xmm0
movsd 0x11b526(%rip), %xmm1   # 0x14c0c8
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x348(%rsp), %rdi
xorps %xmm1, %xmm1
movsd 0x11b50b(%rip), %xmm0   # 0x14c0c8
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x360(%rsp), %rdi
movsd 0x11b4a3(%rip), %xmm0   # 0x14c078
movsd 0x11b4eb(%rip), %xmm1   # 0x14c0c8
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x378(%rsp), %rdi
movsd 0x11b4d3(%rip), %xmm0   # 0x14c0c8
movsd 0x11b47b(%rip), %xmm1   # 0x14c078
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x390(%rsp), %rdi
movsd 0x11b4b3(%rip), %xmm0   # 0x14c0c8
movaps %xmm0, %xmm1
movsd 0x11b458(%rip), %xmm2   # 0x14c078
callq 0xf89f4
leaq 0x3a8(%rsp), %rdi
movsd 0x11b443(%rip), %xmm0   # 0x14c078
movaps %xmm0, %xmm1
movsd 0x11b488(%rip), %xmm2   # 0x14c0c8
callq 0xf89f4
leaq 0x3c0(%rsp), %rdi
movsd 0x11b473(%rip), %xmm0   # 0x14c0c8
movsd 0x11b41b(%rip), %xmm1   # 0x14c078
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x3d8(%rsp), %rdi
movsd 0x11b403(%rip), %xmm0   # 0x14c078
movsd 0x11b44b(%rip), %xmm1   # 0x14c0c8
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x3f0(%rsp), %rdi
movsd 0x11b3e3(%rip), %xmm0   # 0x14c078
movsd 0x11b373(%rip), %xmm1   # 0x14c010
movsd 0x11b423(%rip), %xmm2   # 0x14c0c8
callq 0xf89f4
leaq 0x408(%rsp), %rdi
movsd 0x11b40e(%rip), %xmm0   # 0x14c0c8
movsd 0x11b3b6(%rip), %xmm1   # 0x14c078
movsd 0x11b346(%rip), %xmm2   # 0x14c010
callq 0xf89f4
leaq 0x420(%rsp), %rdi
movsd 0x11b331(%rip), %xmm0   # 0x14c010
movsd 0x11b3e1(%rip), %xmm1   # 0x14c0c8
movsd 0x11b389(%rip), %xmm2   # 0x14c078
callq 0xf89f4
leaq 0x438(%rsp), %rdi
movsd 0x11b30c(%rip), %xmm0   # 0x14c010
movsd 0x11b36c(%rip), %xmm1   # 0x14c078
movsd 0x11b3b4(%rip), %xmm2   # 0x14c0c8
callq 0xf89f4
leaq 0x450(%rsp), %rdi
movsd 0x11b39f(%rip), %xmm0   # 0x14c0c8
movsd 0x11b2df(%rip), %xmm1   # 0x14c010
movsd 0x11b33f(%rip), %xmm2   # 0x14c078
callq 0xf89f4
leaq 0x468(%rsp), %rdi
movsd 0x11b32a(%rip), %xmm0   # 0x14c078
movsd 0x11b372(%rip), %xmm1   # 0x14c0c8
movsd 0x11b2b2(%rip), %xmm2   # 0x14c010
callq 0xf89f4
leaq 0x480(%rsp), %rdi
movsd 0x11b29d(%rip), %xmm0   # 0x14c010
movsd 0x11b34d(%rip), %xmm1   # 0x14c0c8
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x498(%rsp), %rdi
movsd 0x11b335(%rip), %xmm0   # 0x14c0c8
movsd 0x11b275(%rip), %xmm1   # 0x14c010
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x4b0(%rsp), %rdi
movsd 0x11b315(%rip), %xmm0   # 0x14c0c8
movaps %xmm0, %xmm1
movsd 0x11b252(%rip), %xmm2   # 0x14c010
callq 0xf89f4
leaq 0x4c8(%rsp), %rdi
movsd 0x11b23d(%rip), %xmm0   # 0x14c010
movaps %xmm0, %xmm1
movsd 0x11b2ea(%rip), %xmm2   # 0x14c0c8
callq 0xf89f4
leaq 0x4e0(%rsp), %rdi
movsd 0x11b2d5(%rip), %xmm0   # 0x14c0c8
movsd 0x11b215(%rip), %xmm1   # 0x14c010
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x4f8(%rsp), %rdi
movsd 0x11b1fd(%rip), %xmm0   # 0x14c010
movsd 0x11b2ad(%rip), %xmm1   # 0x14c0c8
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x510(%rsp), %rdi
movsd 0x11b295(%rip), %xmm0   # 0x14c0c8
movsd 0x11b1d5(%rip), %xmm1   # 0x14c010
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x528(%rsp), %rdi
movsd 0x11b1bd(%rip), %xmm0   # 0x14c010
movsd 0x11b26d(%rip), %xmm1   # 0x14c0c8
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x540(%rsp), %rdi
movsd 0x11b19d(%rip), %xmm0   # 0x14c010
movaps %xmm0, %xmm1
movsd 0x11b24a(%rip), %xmm2   # 0x14c0c8
callq 0xf89f4
leaq 0x558(%rsp), %rdi
movsd 0x11b235(%rip), %xmm0   # 0x14c0c8
movaps %xmm0, %xmm1
movsd 0x11b172(%rip), %xmm2   # 0x14c010
callq 0xf89f4
leaq 0x570(%rsp), %rdi
movsd 0x11b15d(%rip), %xmm0   # 0x14c010
movsd 0x11b20d(%rip), %xmm1   # 0x14c0c8
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x588(%rsp), %rdi
movsd 0x11b1f5(%rip), %xmm0   # 0x14c0c8
movsd 0x11b135(%rip), %xmm1   # 0x14c010
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x5a0(%rsp), %rdi
movsd 0x11b195(%rip), %xmm1   # 0x14c088
movsd 0x11b1cd(%rip), %xmm0   # 0x14c0c8
movsd 0x11b10d(%rip), %xmm2   # 0x14c010
callq 0xf89f4
leaq 0x5b8(%rsp), %rdi
movsd 0x11b0f8(%rip), %xmm0   # 0x14c010
movsd 0x11b1a8(%rip), %xmm1   # 0x14c0c8
movsd 0x11b160(%rip), %xmm2   # 0x14c088
callq 0xf89f4
leaq 0x5d0(%rsp), %rdi
movsd 0x11b14b(%rip), %xmm0   # 0x14c088
movsd 0x11b0cb(%rip), %xmm1   # 0x14c010
movsd 0x11b17b(%rip), %xmm2   # 0x14c0c8
callq 0xf89f4
leaq 0x5e8(%rsp), %rdi
movsd 0x11b126(%rip), %xmm0   # 0x14c088
movsd 0x11b15e(%rip), %xmm1   # 0x14c0c8
movsd 0x11b09e(%rip), %xmm2   # 0x14c010
callq 0xf89f4
leaq 0x600(%rsp), %rdi
movsd 0x11b089(%rip), %xmm0   # 0x14c010
movsd 0x11b0f9(%rip), %xmm1   # 0x14c088
movsd 0x11b131(%rip), %xmm2   # 0x14c0c8
callq 0xf89f4
leaq 0x618(%rsp), %rdi
movsd 0x11b11c(%rip), %xmm0   # 0x14c0c8
movsd 0x11b05c(%rip), %xmm1   # 0x14c010
movsd 0x11b0cc(%rip), %xmm2   # 0x14c088
callq 0xf89f4
leaq 0x630(%rsp), %rdi
movsd 0x11b0b7(%rip), %xmm0   # 0x14c088
movsd 0x11b037(%rip), %xmm1   # 0x14c010
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x648(%rsp), %rdi
movsd 0x11b01f(%rip), %xmm0   # 0x14c010
movsd 0x11b08f(%rip), %xmm1   # 0x14c088
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x660(%rsp), %rdi
movsd 0x11afff(%rip), %xmm0   # 0x14c010
movaps %xmm0, %xmm1
movsd 0x11b06c(%rip), %xmm2   # 0x14c088
callq 0xf89f4
leaq 0x678(%rsp), %rdi
movsd 0x11b057(%rip), %xmm0   # 0x14c088
movaps %xmm0, %xmm1
movsd 0x11afd4(%rip), %xmm2   # 0x14c010
callq 0xf89f4
leaq 0x690(%rsp), %rdi
movsd 0x11afbf(%rip), %xmm0   # 0x14c010
movsd 0x11b02f(%rip), %xmm1   # 0x14c088
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x6a8(%rsp), %rdi
movsd 0x11b017(%rip), %xmm0   # 0x14c088
movsd 0x11af97(%rip), %xmm1   # 0x14c010
movaps %xmm0, %xmm2
callq 0xf89f4
testl %ebx, %ebx
je 0x3109a
cmpl $-0x1, %ebx
jne 0x310ad
movsd 0x11aff6(%rip), %xmm0   # 0x14c088
movaps %xmm0, %xmm1
movaps %xmm0, %xmm2
jmp 0x310e7
movsd (%rsp), %xmm0
movsd 0x8(%rsp), %xmm1
movsd 0x10(%rsp), %xmm2
jmp 0x310e7
movslq %ebx, %rax
imulq $-0x193d4bb7, %rax, %rax # imm = 0xE6C2B449
shrq $0x20, %rax
addl %ebx, %eax
movl %eax, %ecx
shrl $0x1f, %ecx
sarl $0x6, %eax
addl %ecx, %eax
imull $0x47, %eax, %eax
negl %eax
addl %ebx, %eax
incl %eax
cltq
leaq (%rax,%rax,2), %rax
movsd (%rsp,%rax,8), %xmm0
movsd 0x8(%rsp,%rax,8), %xmm1
movsd 0x10(%rsp,%rax,8), %xmm2
callq 0x27ef0
addq $0x6c0, %rsp            # imm = 0x6C0
popq %rbx
retq