// File: /workspace/github_cpp_makefile_star2_O3/tomfunkhouser[P]gaps/pkgs/GSV/GSVScanline.cpp
// Function: gaps::LoadColor(int)
static void
LoadColor(int k)
{
#if 1
  // Make array of colors
  static const int ncolors = 72;
  static const RNRgb colors[ncolors] = {
    RNRgb(0.5, 0.2, 0.2), RNRgb(0, 1, 0), RNRgb(0, 0, 1), 
    RNRgb(0.3, 0.6, 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, 0.0, 0.3), RNRgb(0.3, 1, 1), RNRgb(1, 0.3, 1), 
    RNRgb(1, 0.2, 0.7), 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)
  };

  // Return color based on k
  if (k <= 0) RNLoadRgb(colors[0]);
  else RNLoadRgb(colors[1 + (k % (ncolors-1))]);
#else
  // Load identifier color
  if (k < 0) {
    RNLoadRgb(0.5, 0.5, 0.5);
  }
  else {
    unsigned char r = (224 + 67*k) % 256;
    unsigned char g = (32  + 47*k) % 256;
    unsigned char b = (32  + 29*k) % 256;
    RNLoadRgb(r, g, b);
  }
#endif
}

// Assembly:
pushq %rbx
movl %edi, %ebx
movb 0x19a0a4(%rip), %al     # 0x1dbe20
testb %al, %al
je 0x41dd8
testl %ebx, %ebx
jle 0x41dba
movl %ebx, %eax
movl $0xe6c2b449, %ecx       # imm = 0xE6C2B449
imulq %rax, %rcx
shrq $0x26, %rcx
imull $0x47, %ecx, %eax
negl %eax
addl %ebx, %eax
incl %eax
leaq (%rax,%rax,2), %rax
leaq 0x1999b9(%rip), %rcx    # 0x1db760
movsd (%rcx,%rax,8), %xmm0
movsd 0x8(%rcx,%rax,8), %xmm1
movsd 0x10(%rcx,%rax,8), %xmm2
jmp 0x41dd2
movsd 0x19999e(%rip), %xmm0   # 0x1db760
movsd 0x19999e(%rip), %xmm1   # 0x1db768
movsd 0x19999e(%rip), %xmm2   # 0x1db770
popq %rbx
jmp 0x27ef0
leaq 0x19a041(%rip), %rdi    # 0x1dbe20
callq 0x281c0
testl %eax, %eax
je 0x41d80
leaq 0x199971(%rip), %rdi    # 0x1db760
movsd 0x10a219(%rip), %xmm0   # 0x14c010
movsd 0x10b4a9(%rip), %xmm1   # 0x14d2a8
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x19996a(%rip), %rdi    # 0x1db778
movsd 0x10a262(%rip), %xmm1   # 0x14c078
xorps %xmm0, %xmm0
xorps %xmm2, %xmm2
callq 0xf89f4
leaq 0x199968(%rip), %rdi    # 0x1db790
movsd 0x10a248(%rip), %xmm2   # 0x14c078
xorps %xmm0, %xmm0
xorps %xmm1, %xmm1
callq 0xf89f4
leaq 0x199966(%rip), %rdi    # 0x1db7a8
movsd 0x10a27e(%rip), %xmm0   # 0x14c0c8
movsd 0x10b45e(%rip), %xmm1   # 0x14d2b0
xorps %xmm2, %xmm2
callq 0xf89f4
leaq 0x19995f(%rip), %rdi    # 0x1db7c0
movsd 0x10a20f(%rip), %xmm1   # 0x14c078
xorps %xmm0, %xmm0
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x19995d(%rip), %rdi    # 0x1db7d8
movsd 0x10a1f5(%rip), %xmm0   # 0x14c078
xorps %xmm1, %xmm1
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x19995b(%rip), %rdi    # 0x1db7f0
movsd 0x10a1db(%rip), %xmm0   # 0x14c078
movsd 0x10a16b(%rip), %xmm1   # 0x14c010
xorps %xmm2, %xmm2
callq 0xf89f4
leaq 0x199954(%rip), %rdi    # 0x1db808
movsd 0x10a1bc(%rip), %xmm1   # 0x14c078
movsd 0x10a14c(%rip), %xmm2   # 0x14c010
xorps %xmm0, %xmm0
callq 0xf89f4
leaq 0x19994d(%rip), %rdi    # 0x1db820
movsd 0x10a135(%rip), %xmm0   # 0x14c010
movsd 0x10a195(%rip), %xmm2   # 0x14c078
xorps %xmm1, %xmm1
callq 0xf89f4
leaq 0x199946(%rip), %rdi    # 0x1db838
movsd 0x10a116(%rip), %xmm0   # 0x14c010
movsd 0x10a176(%rip), %xmm1   # 0x14c078
xorps %xmm2, %xmm2
callq 0xf89f4
leaq 0x19993f(%rip), %rdi    # 0x1db850
movsd 0x10a0f7(%rip), %xmm1   # 0x14c010
movsd 0x10a157(%rip), %xmm2   # 0x14c078
xorps %xmm0, %xmm0
callq 0xf89f4
leaq 0x199938(%rip), %rdi    # 0x1db868
movsd 0x10a140(%rip), %xmm0   # 0x14c078
movsd 0x10a0d0(%rip), %xmm2   # 0x14c010
xorps %xmm1, %xmm1
callq 0xf89f4
leaq 0x199931(%rip), %rdi    # 0x1db880
movsd 0x10a0b9(%rip), %xmm0   # 0x14c010
xorps %xmm1, %xmm1
xorps %xmm2, %xmm2
callq 0xf89f4
leaq 0x19992f(%rip), %rdi    # 0x1db898
movsd 0x10a09f(%rip), %xmm1   # 0x14c010
xorps %xmm0, %xmm0
xorps %xmm2, %xmm2
callq 0xf89f4
leaq 0x19992d(%rip), %rdi    # 0x1db8b0
movsd 0x10a085(%rip), %xmm2   # 0x14c010
xorps %xmm0, %xmm0
xorps %xmm1, %xmm1
callq 0xf89f4
leaq 0x19992b(%rip), %rdi    # 0x1db8c8
movsd 0x10a06b(%rip), %xmm0   # 0x14c010
xorps %xmm2, %xmm2
movaps %xmm0, %xmm1
callq 0xf89f4
leaq 0x199929(%rip), %rdi    # 0x1db8e0
movsd 0x10a051(%rip), %xmm1   # 0x14c010
xorps %xmm0, %xmm0
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x199927(%rip), %rdi    # 0x1db8f8
movsd 0x10a037(%rip), %xmm0   # 0x14c010
xorps %xmm1, %xmm1
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x199925(%rip), %rdi    # 0x1db910
movsd 0x10a0cd(%rip), %xmm0   # 0x14c0c0
xorps %xmm1, %xmm1
xorps %xmm2, %xmm2
callq 0xf89f4
leaq 0x199923(%rip), %rdi    # 0x1db928
movsd 0x10a0b3(%rip), %xmm1   # 0x14c0c0
xorps %xmm0, %xmm0
xorps %xmm2, %xmm2
callq 0xf89f4
leaq 0x199921(%rip), %rdi    # 0x1db940
movsd 0x10a099(%rip), %xmm2   # 0x14c0c0
xorps %xmm0, %xmm0
xorps %xmm1, %xmm1
callq 0xf89f4
leaq 0x19991f(%rip), %rdi    # 0x1db958
movsd 0x10a07f(%rip), %xmm0   # 0x14c0c0
xorps %xmm2, %xmm2
movaps %xmm0, %xmm1
callq 0xf89f4
leaq 0x19991d(%rip), %rdi    # 0x1db970
movsd 0x10a065(%rip), %xmm1   # 0x14c0c0
xorps %xmm0, %xmm0
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x19991b(%rip), %rdi    # 0x1db988
movsd 0x10a04b(%rip), %xmm0   # 0x14c0c0
xorps %xmm1, %xmm1
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x199919(%rip), %rdi    # 0x1db9a0
movsd 0x10a031(%rip), %xmm0   # 0x14c0c0
movsd 0x10a031(%rip), %xmm1   # 0x14c0c8
xorps %xmm2, %xmm2
callq 0xf89f4
leaq 0x199912(%rip), %rdi    # 0x1db9b8
movsd 0x10a012(%rip), %xmm1   # 0x14c0c0
movsd 0x10a012(%rip), %xmm2   # 0x14c0c8
xorps %xmm0, %xmm0
callq 0xf89f4
leaq 0x19990b(%rip), %rdi    # 0x1db9d0
movsd 0x109ffb(%rip), %xmm0   # 0x14c0c8
movsd 0x109feb(%rip), %xmm2   # 0x14c0c0
xorps %xmm1, %xmm1
callq 0xf89f4
leaq 0x199904(%rip), %rdi    # 0x1db9e8
movsd 0x109fdc(%rip), %xmm0   # 0x14c0c8
movsd 0x109fcc(%rip), %xmm1   # 0x14c0c0
xorps %xmm2, %xmm2
callq 0xf89f4
leaq 0x1998fd(%rip), %rdi    # 0x1dba00
movsd 0x109fbd(%rip), %xmm1   # 0x14c0c8
movsd 0x109fad(%rip), %xmm2   # 0x14c0c0
xorps %xmm0, %xmm0
callq 0xf89f4
leaq 0x1998f6(%rip), %rdi    # 0x1dba18
movsd 0x109f96(%rip), %xmm0   # 0x14c0c0
movsd 0x109f96(%rip), %xmm2   # 0x14c0c8
xorps %xmm1, %xmm1
callq 0xf89f4
leaq 0x1998ef(%rip), %rdi    # 0x1dba30
movsd 0x109f7f(%rip), %xmm0   # 0x14c0c8
xorps %xmm1, %xmm1
xorps %xmm2, %xmm2
callq 0xf89f4
leaq 0x1998ed(%rip), %rdi    # 0x1dba48
movsd 0x109f65(%rip), %xmm1   # 0x14c0c8
xorps %xmm0, %xmm0
xorps %xmm2, %xmm2
callq 0xf89f4
leaq 0x1998eb(%rip), %rdi    # 0x1dba60
movsd 0x109f4b(%rip), %xmm2   # 0x14c0c8
xorps %xmm0, %xmm0
xorps %xmm1, %xmm1
callq 0xf89f4
leaq 0x1998e9(%rip), %rdi    # 0x1dba78
movsd 0x109f31(%rip), %xmm0   # 0x14c0c8
xorps %xmm2, %xmm2
movaps %xmm0, %xmm1
callq 0xf89f4
leaq 0x1998e7(%rip), %rdi    # 0x1dba90
movsd 0x109f17(%rip), %xmm1   # 0x14c0c8
xorps %xmm0, %xmm0
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x1998e5(%rip), %rdi    # 0x1dbaa8
movsd 0x109efd(%rip), %xmm0   # 0x14c0c8
xorps %xmm1, %xmm1
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x1998e3(%rip), %rdi    # 0x1dbac0
movsd 0x109e93(%rip), %xmm0   # 0x14c078
movsd 0x109edb(%rip), %xmm1   # 0x14c0c8
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x1998dc(%rip), %rdi    # 0x1dbad8
movsd 0x109e74(%rip), %xmm1   # 0x14c078
movsd 0x109ebc(%rip), %xmm0   # 0x14c0c8
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x1998d5(%rip), %rdi    # 0x1dbaf0
movsd 0x109ea5(%rip), %xmm0   # 0x14c0c8
movsd 0x109e4d(%rip), %xmm2   # 0x14c078
movaps %xmm0, %xmm1
callq 0xf89f4
leaq 0x1998ce(%rip), %rdi    # 0x1dbb08
movsd 0x109e36(%rip), %xmm0   # 0x14c078
movsd 0x109e7e(%rip), %xmm2   # 0x14c0c8
xorps %xmm1, %xmm1
callq 0xf89f4
leaq 0x1998c7(%rip), %rdi    # 0x1dbb20
movsd 0x109e67(%rip), %xmm0   # 0x14c0c8
movsd 0x109e0f(%rip), %xmm1   # 0x14c078
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x1998c0(%rip), %rdi    # 0x1dbb38
movsd 0x109e48(%rip), %xmm1   # 0x14c0c8
movsd 0x109df0(%rip), %xmm0   # 0x14c078
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x1998b9(%rip), %rdi    # 0x1dbb50
movsd 0x109dd9(%rip), %xmm0   # 0x14c078
movsd 0x10b001(%rip), %xmm1   # 0x14d2a8
movsd 0x109e11(%rip), %xmm2   # 0x14c0c0
callq 0xf89f4
leaq 0x1998ad(%rip), %rdi    # 0x1dbb68
movsd 0x109e05(%rip), %xmm0   # 0x14c0c8
movsd 0x109dad(%rip), %xmm1   # 0x14c078
movsd 0x109d3d(%rip), %xmm2   # 0x14c010
callq 0xf89f4
leaq 0x1998a1(%rip), %rdi    # 0x1dbb80
movsd 0x109d29(%rip), %xmm0   # 0x14c010
movsd 0x109dd9(%rip), %xmm1   # 0x14c0c8
movsd 0x109d81(%rip), %xmm2   # 0x14c078
callq 0xf89f4
leaq 0x199895(%rip), %rdi    # 0x1dbb98
movsd 0x109d05(%rip), %xmm0   # 0x14c010
movsd 0x109d65(%rip), %xmm1   # 0x14c078
movsd 0x109dad(%rip), %xmm2   # 0x14c0c8
callq 0xf89f4
leaq 0x199889(%rip), %rdi    # 0x1dbbb0
movsd 0x109d99(%rip), %xmm0   # 0x14c0c8
movsd 0x109cd9(%rip), %xmm1   # 0x14c010
movsd 0x109d39(%rip), %xmm2   # 0x14c078
callq 0xf89f4
leaq 0x19987d(%rip), %rdi    # 0x1dbbc8
movsd 0x109d25(%rip), %xmm0   # 0x14c078
movsd 0x109d6d(%rip), %xmm1   # 0x14c0c8
movsd 0x109cad(%rip), %xmm2   # 0x14c010
callq 0xf89f4
leaq 0x199871(%rip), %rdi    # 0x1dbbe0
movsd 0x109c99(%rip), %xmm0   # 0x14c010
movsd 0x109d49(%rip), %xmm1   # 0x14c0c8
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x19986a(%rip), %rdi    # 0x1dbbf8
movsd 0x109c7a(%rip), %xmm1   # 0x14c010
movsd 0x109d2a(%rip), %xmm0   # 0x14c0c8
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x199863(%rip), %rdi    # 0x1dbc10
movsd 0x109d13(%rip), %xmm0   # 0x14c0c8
movsd 0x109c53(%rip), %xmm2   # 0x14c010
movaps %xmm0, %xmm1
callq 0xf89f4
leaq 0x19985c(%rip), %rdi    # 0x1dbc28
movsd 0x109c3c(%rip), %xmm0   # 0x14c010
movsd 0x109cec(%rip), %xmm2   # 0x14c0c8
movaps %xmm0, %xmm1
callq 0xf89f4
leaq 0x199855(%rip), %rdi    # 0x1dbc40
movsd 0x109cd5(%rip), %xmm0   # 0x14c0c8
movsd 0x109c15(%rip), %xmm1   # 0x14c010
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x19984e(%rip), %rdi    # 0x1dbc58
movsd 0x109cb6(%rip), %xmm1   # 0x14c0c8
movsd 0x109bf6(%rip), %xmm0   # 0x14c010
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x199847(%rip), %rdi    # 0x1dbc70
movsd 0x109c97(%rip), %xmm0   # 0x14c0c8
movsd 0x109bd7(%rip), %xmm1   # 0x14c010
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x199840(%rip), %rdi    # 0x1dbc88
movsd 0x109c78(%rip), %xmm1   # 0x14c0c8
movsd 0x109bb8(%rip), %xmm0   # 0x14c010
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x199839(%rip), %rdi    # 0x1dbca0
movsd 0x109ba1(%rip), %xmm0   # 0x14c010
movsd 0x109c51(%rip), %xmm2   # 0x14c0c8
movaps %xmm0, %xmm1
callq 0xf89f4
leaq 0x199832(%rip), %rdi    # 0x1dbcb8
movsd 0x109c3a(%rip), %xmm0   # 0x14c0c8
movsd 0x109b7a(%rip), %xmm2   # 0x14c010
movaps %xmm0, %xmm1
callq 0xf89f4
leaq 0x19982b(%rip), %rdi    # 0x1dbcd0
movsd 0x109b63(%rip), %xmm0   # 0x14c010
movsd 0x109c13(%rip), %xmm1   # 0x14c0c8
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x199824(%rip), %rdi    # 0x1dbce8
movsd 0x109b44(%rip), %xmm1   # 0x14c010
movsd 0x109bf4(%rip), %xmm0   # 0x14c0c8
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x19981d(%rip), %rdi    # 0x1dbd00
movsd 0x109bdd(%rip), %xmm0   # 0x14c0c8
movsd 0x109b95(%rip), %xmm1   # 0x14c088
movsd 0x109b15(%rip), %xmm2   # 0x14c010
callq 0xf89f4
leaq 0x199811(%rip), %rdi    # 0x1dbd18
movsd 0x109b01(%rip), %xmm0   # 0x14c010
movsd 0x109bb1(%rip), %xmm1   # 0x14c0c8
movsd 0x109b69(%rip), %xmm2   # 0x14c088
callq 0xf89f4
leaq 0x199805(%rip), %rdi    # 0x1dbd30
movsd 0x109b55(%rip), %xmm0   # 0x14c088
movsd 0x109ad5(%rip), %xmm1   # 0x14c010
movsd 0x109b85(%rip), %xmm2   # 0x14c0c8
callq 0xf89f4
leaq 0x1997f9(%rip), %rdi    # 0x1dbd48
movsd 0x109b31(%rip), %xmm0   # 0x14c088
movsd 0x109b69(%rip), %xmm1   # 0x14c0c8
movsd 0x109aa9(%rip), %xmm2   # 0x14c010
callq 0xf89f4
leaq 0x1997ed(%rip), %rdi    # 0x1dbd60
movsd 0x109a95(%rip), %xmm0   # 0x14c010
movsd 0x109b05(%rip), %xmm1   # 0x14c088
movsd 0x109b3d(%rip), %xmm2   # 0x14c0c8
callq 0xf89f4
leaq 0x1997e1(%rip), %rdi    # 0x1dbd78
movsd 0x109b29(%rip), %xmm0   # 0x14c0c8
movsd 0x109a69(%rip), %xmm1   # 0x14c010
movsd 0x109ad9(%rip), %xmm2   # 0x14c088
callq 0xf89f4
leaq 0x1997d5(%rip), %rdi    # 0x1dbd90
movsd 0x109ac5(%rip), %xmm0   # 0x14c088
movsd 0x109a45(%rip), %xmm1   # 0x14c010
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x1997ce(%rip), %rdi    # 0x1dbda8
movsd 0x109aa6(%rip), %xmm1   # 0x14c088
movsd 0x109a26(%rip), %xmm0   # 0x14c010
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x1997c7(%rip), %rdi    # 0x1dbdc0
movsd 0x109a0f(%rip), %xmm0   # 0x14c010
movsd 0x109a7f(%rip), %xmm2   # 0x14c088
movaps %xmm0, %xmm1
callq 0xf89f4
leaq 0x1997c0(%rip), %rdi    # 0x1dbdd8
movsd 0x109a68(%rip), %xmm0   # 0x14c088
movsd 0x1099e8(%rip), %xmm2   # 0x14c010
movaps %xmm0, %xmm1
callq 0xf89f4
leaq 0x1997b9(%rip), %rdi    # 0x1dbdf0
movsd 0x1099d1(%rip), %xmm0   # 0x14c010
movsd 0x109a41(%rip), %xmm1   # 0x14c088
movaps %xmm1, %xmm2
callq 0xf89f4
leaq 0x1997b2(%rip), %rdi    # 0x1dbe08
movsd 0x1099b2(%rip), %xmm1   # 0x14c010
movsd 0x109a22(%rip), %xmm0   # 0x14c088
movaps %xmm0, %xmm2
callq 0xf89f4
leaq 0x1997ab(%rip), %rdi    # 0x1dbe20
callq 0x275f0
jmp 0x41d80
movq %rax, %rbx
leaq 0x199797(%rip), %rdi    # 0x1dbe20
callq 0x275d0
movq %rbx, %rdi
callq 0x28150