// File: /workspace/github_cpp_makefile_star2_O3/tomfunkhouser[P]gaps/apps/confview/confview.cpp
// Function: main
int
main(int argc, char **argv)
{
  // Initialize packages
  if (!R3InitGraphics()) exit(-1);

  // Check number of arguments
  if (!ParseArgs(argc, argv)) exit(1);

  // Read configuration
  if (!ReadConfigurationFile(configuration, input_configuration_filename)) exit(-1);

  // Read mesh
  if (input_mesh_filename) {
    if (!ReadMeshFile(configuration, input_mesh_filename)) exit(-1);
  }

  // Read segmentation
  if (input_segmentation_filename) {
    if (!ReadSegmentationFile(configuration, input_segmentation_filename)) exit(-1);
  }

  // Read obbs
  if (input_obbs_filename) {
    if (!ReadOrientedBoxFile(configuration, input_obbs_filename)) exit(-1);
  }

  // Read image-image overlaps
  if (input_overlap_matrix) {
    if (!ReadOverlapMatrix(configuration, input_overlap_matrix)) exit(-1);
  }

  // Read vertex-image overlaps
  if (input_overlap_filename) {
    if (!ReadOverlapFile(configuration, input_overlap_filename)) exit(-1);
  }

  // Begin viewing interface -- never returns
  GLUTInterface();

  // Return success 
  return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x878, %rsp            # imm = 0x878
movq %rsi, %r15
movl %edi, %r13d
callq 0x38c00
testl %eax, %eax
je 0x2aaa2
movq 0x141d78(%rip), %r12    # 0x16bb20
cmpl $0x2, %r13d
jl 0x2a034
movq 0x141c9f(%rip), %rax    # 0x16ba58
movq %rax, 0x8(%rsp)
leaq 0x8(%r15), %rbp
leal -0x1(%r13), %r14d
movq 0x8(%r15), %rbx
cmpb $0x2d, (%rbx)
jne 0x29f09
cmpb $0x76, 0x1(%rbx)
jne 0x29de3
cmpb $0x0, 0x2(%rbx)
je 0x29f5e
movq %rbx, %rdi
leaq 0xd056f(%rip), %rsi     # 0xfa35c
callq 0x23d30
testl %eax, %eax
je 0x29f3a
movq %rbx, %rdi
leaq 0xd056b(%rip), %rsi     # 0xfa36f
callq 0x23d30
testl %eax, %eax
je 0x29f46
movq %rbx, %rdi
leaq 0xd055a(%rip), %rsi     # 0xfa375
callq 0x23d30
testl %eax, %eax
je 0x29f6a
movq %rbx, %rdi
leaq 0xd0549(%rip), %rsi     # 0xfa37b
callq 0x23d30
testl %eax, %eax
je 0x29f82
movq %rbx, %rdi
leaq 0xd0540(%rip), %rsi     # 0xfa389
callq 0x23d30
testl %eax, %eax
je 0x29f9a
movq %rbx, %rdi
leaq 0xd0537(%rip), %rsi     # 0xfa397
callq 0x23d30
testl %eax, %eax
je 0x29faf
movq %rbx, %rdi
leaq 0xd0530(%rip), %rsi     # 0xfa3a7
callq 0x23d30
testl %eax, %eax
je 0x29fc4
movq %rbx, %rdi
leaq 0xd052f(%rip), %rsi     # 0xfa3bd
callq 0x23d30
testl %eax, %eax
je 0x29fdd
movq %rbx, %rdi
leaq 0xd0527(%rip), %rsi     # 0xfa3cc
callq 0x23d30
testl %eax, %eax
je 0x29ff8
movq %rbx, %rdi
leaq 0xd0518(%rip), %rsi     # 0xfa3d4
callq 0x23d30
testl %eax, %eax
jne 0x2ab2c
movq 0x10(%r15), %rdi
callq 0x23bc0
movsd %xmm0, 0x141aa6(%rip)   # 0x16b980
movq 0x18(%r15), %rdi
callq 0x23bc0
movsd %xmm0, 0x141a9d(%rip)   # 0x16b988
addl $-0x4, %r13d
movq 0x20(%r15), %rdi
addq $0x20, %r15
callq 0x23bc0
movsd %xmm0, 0x141a8c(%rip)   # 0x16b990
jmp 0x2a01e
testq %r12, %r12
je 0x29f2b
cmpq $0x0, 0x8(%rsp)
jne 0x2aa58
movq %rbx, 0x141b37(%rip)    # 0x16ba58
movq %rbx, 0x8(%rsp)
jmp 0x2a024
movq %rbx, 0x141bee(%rip)    # 0x16bb20
movq %rbx, %r12
jmp 0x2a024
movb $0x1, 0x141c1f(%rip)    # 0x16bb60
jmp 0x2a024
addl $-0x2, %r13d
movq 0x10(%r15), %rax
addq $0x10, %r15
movq %rax, 0x141bcf(%rip)    # 0x16bb28
jmp 0x2a01e
movb $0x1, 0x141b3b(%rip)    # 0x16baa0
jmp 0x2a024
addl $-0x2, %r13d
movq 0x10(%r15), %rax
addq $0x10, %r15
movq %rax, 0x141bbb(%rip)    # 0x16bb38
jmp 0x2a01e
addl $-0x2, %r13d
movq 0x10(%r15), %rax
addq $0x10, %r15
movq %rax, 0x141b9b(%rip)    # 0x16bb30
jmp 0x2a01e
addl $-0x2, %r13d
movq 0x10(%r15), %rax
addq $0x10, %r15
movq %rax, 0x141b9b(%rip)    # 0x16bb48
jmp 0x2a01e
addl $-0x2, %r13d
movq 0x10(%r15), %rax
addq $0x10, %r15
movq %rax, 0x141b7e(%rip)    # 0x16bb40
jmp 0x2a01e
addl $-0x2, %r13d
movq 0x10(%r15), %rdi
addq $0x10, %r15
callq 0x23f20
movl %eax, 0x13ca55(%rip)    # 0x166a30
jmp 0x2a01e
addl $-0x2, %r13d
movq 0x10(%r15), %rdi
addq $0x10, %r15
callq 0x23bc0
movsd %xmm0, 0x141b62(%rip)   # 0x16bb58
jmp 0x2a01e
movq 0x10(%r15), %rdi
callq 0x23f20
movl %eax, 0x13c9d5(%rip)    # 0x1669dc
addl $-0x3, %r13d
movq 0x18(%r15), %rdi
addq $0x18, %r15
callq 0x23f20
movl %eax, 0x13c9c2(%rip)    # 0x1669e0
movl %r13d, %r14d
movq %r15, %rbp
movq %rbp, %r15
movl %r14d, %r13d
cmpl $0x1, %r14d
jg 0x29dbe
testq %r12, %r12
je 0x2aaa4
leaq 0x70(%rsp), %rbx
movq %rbx, %rdi
callq 0xa6650
movq %rbx, %rdi
xorl %esi, %esi
callq 0x23ff0
cmpb $0x1, 0x141a45(%rip)    # 0x16baa0
jne 0x2a07d
leaq 0xd03e5(%rip), %rdi     # 0xfa449
movq %r12, %rsi
xorl %eax, %eax
callq 0x23080
movq 0x13beab(%rip), %rax    # 0x165f20
movq (%rax), %rdi
callq 0x23ac0
movl 0x13c9ad(%rip), %edx    # 0x166a30
movq 0x141826(%rip), %rax    # 0x16b8b0
leaq 0x14181f(%rip), %rdi    # 0x16b8b0
movq %r12, %rsi
callq *0x70(%rax)
testl %eax, %eax
je 0x2aab4
cmpb $0x0, 0x141aba(%rip)    # 0x16bb60
je 0x2a0cc
movq 0x141801(%rip), %rax    # 0x16b8b0
leaq 0x1417fa(%rip), %rdi    # 0x16b8b0
callq *0xd8(%rax)
testl %eax, %eax
je 0x2ab0a
movl 0x14180a(%rip), %eax    # 0x16b8d4
jmp 0x2a0fa
cmpl $0x0, 0x141801(%rip)    # 0x16b8d4
jle 0x2a13d
xorl %ebx, %ebx
movq 0x1417ea(%rip), %rax    # 0x16b8c8
movq (%rax,%rbx,8), %rdi
movq (%rdi), %rax
callq *0x88(%rax)
incq %rbx
movslq 0x1417df(%rip), %rax    # 0x16b8d4
cmpq %rax, %rbx
jl 0x2a0d7
movsd 0x141a56(%rip), %xmm0   # 0x16bb58
xorpd %xmm1, %xmm1
ucomisd %xmm1, %xmm0
jbe 0x2a13d
testl %eax, %eax
jle 0x2a13d
xorl %ebx, %ebx
movq 0x1417af(%rip), %rax    # 0x16b8c8
movq (%rax,%rbx,8), %rdi
movsd 0x141a33(%rip), %xmm0   # 0x16bb58
movq (%rdi), %rax
callq *0xd0(%rax)
incq %rbx
movslq 0x14179c(%rip), %rax    # 0x16b8d4
cmpq %rax, %rbx
jl 0x2a112
cmpb $0x1, 0x14195c(%rip)    # 0x16baa0
jne 0x2a195
leaq 0x70(%rsp), %rdi
callq 0xa66b2
leaq 0xd0166(%rip), %rdi     # 0xfa2bd
movb $0x1, %al
callq 0x23080
movl 0x141760(%rip), %esi    # 0x16b8c4
leaq 0xd0169(%rip), %rdi     # 0xfa2d4
xorl %eax, %eax
callq 0x23080
movl 0x14175c(%rip), %esi    # 0x16b8d4
leaq 0xd0166(%rip), %rdi     # 0xfa2e5
xorl %eax, %eax
callq 0x23080
movq 0x13bd93(%rip), %rax    # 0x165f20
movq (%rax), %rdi
callq 0x23ac0
movq 0x14198c(%rip), %rbx    # 0x16bb28
testq %rbx, %rbx
je 0x2a295
leaq 0x70(%rsp), %r14
movq %r14, %rdi
callq 0xa6650
movq %r14, %rdi
xorl %esi, %esi
callq 0x23ff0
movl $0x138, %edi            # imm = 0x138
callq 0x238e0
movq %rax, %r14
movq %rax, %rdi
callq 0x633b0
movq (%r14), %rax
movq %r14, %rdi
movq %rbx, %rsi
callq *0x180(%rax)
testl %eax, %eax
je 0x2aad3
movl $0xa0, %edi
callq 0x238e0
movq %rax, %r15
movsd 0x14195b(%rip), %xmm0   # 0x16bb58
movq %rax, %rdi
xorl %esi, %esi
movq %r14, %rdx
callq 0x2f9e6
movq 0x14169f(%rip), %rax    # 0x16b8b0
leaq 0x141698(%rip), %rdi    # 0x16b8b0
movq %r15, %rsi
callq *0x20(%rax)
cmpb $0x1, 0x14187b(%rip)    # 0x16baa0
jne 0x2a295
leaq 0xd02a1(%rip), %rdi     # 0xfa4cf
movq %rbx, %rsi
xorl %eax, %eax
callq 0x23080
leaq 0x70(%rsp), %rdi
callq 0xa66b2
leaq 0xd0074(%rip), %rdi     # 0xfa2bd
movb $0x1, %al
callq 0x23080
movl 0x34(%r14), %esi
leaq 0xd028b(%rip), %rdi     # 0xfa4e6
xorl %eax, %eax
callq 0x23080
movl 0x24(%r14), %esi
leaq 0xd0289(%rip), %rdi     # 0xfa4f6
xorl %eax, %eax
callq 0x23080
movl 0x14(%r14), %esi
leaq 0xd0287(%rip), %rdi     # 0xfa506
xorl %eax, %eax
callq 0x23080
movq 0x13bc93(%rip), %rax    # 0x165f20
movq (%rax), %rdi
callq 0x23ac0
movq 0x141894(%rip), %rbx    # 0x16bb30
testq %rbx, %rbx
je 0x2a344
leaq 0x70(%rsp), %r14
movq %r14, %rdi
callq 0xa6650
movq %r14, %rdi
xorl %esi, %esi
callq 0x23ff0
movq 0x1415ed(%rip), %rax    # 0x16b8b0
leaq 0x1415e6(%rip), %rdi    # 0x16b8b0
movq %rbx, %rsi
callq *0x88(%rax)
testl %eax, %eax
je 0x2aadc
cmpb $0x1, 0x1417be(%rip)    # 0x16baa0
jne 0x2a344
leaq 0xd022e(%rip), %rdi     # 0xfa519
movq %rbx, %rsi
xorl %eax, %eax
callq 0x23080
leaq 0x70(%rsp), %rdi
callq 0xa66b2
leaq 0xcffb7(%rip), %rdi     # 0xfa2bd
movb $0x1, %al
callq 0x23080
movl 0x1415b1(%rip), %esi    # 0x16b8c4
leaq 0xcffba(%rip), %rdi     # 0xfa2d4
xorl %eax, %eax
callq 0x23080
movl 0x1415ad(%rip), %esi    # 0x16b8d4
leaq 0xcffb7(%rip), %rdi     # 0xfa2e5
xorl %eax, %eax
callq 0x23080
movq 0x13bbe4(%rip), %rax    # 0x165f20
movq (%rax), %rdi
callq 0x23ac0
movq 0x1417ed(%rip), %rbx    # 0x16bb38
testq %rbx, %rbx
je 0x2a3f3
leaq 0x70(%rsp), %r14
movq %r14, %rdi
callq 0xa6650
movq %r14, %rdi
xorl %esi, %esi
callq 0x23ff0
movq 0x14153e(%rip), %rax    # 0x16b8b0
leaq 0x141537(%rip), %rdi    # 0x16b8b0
movq %rbx, %rsi
callq *0x90(%rax)
testl %eax, %eax
je 0x2aae1
cmpb $0x1, 0x14170f(%rip)    # 0x16baa0
jne 0x2a3f3
leaq 0xd019e(%rip), %rdi     # 0xfa538
movq %rbx, %rsi
xorl %eax, %eax
callq 0x23080
leaq 0x70(%rsp), %rdi
callq 0xa66b2
leaq 0xcff08(%rip), %rdi     # 0xfa2bd
movb $0x1, %al
callq 0x23080
movl 0x141502(%rip), %esi    # 0x16b8c4
leaq 0xcff0b(%rip), %rdi     # 0xfa2d4
xorl %eax, %eax
callq 0x23080
movl 0x1414fe(%rip), %esi    # 0x16b8d4
leaq 0xcff08(%rip), %rdi     # 0xfa2e5
xorl %eax, %eax
callq 0x23080
movq 0x13bb35(%rip), %rax    # 0x165f20
movq (%rax), %rdi
callq 0x23ac0
movq 0x141746(%rip), %rbx    # 0x16bb40
testq %rbx, %rbx
je 0x2a4ef
leaq 0x70(%rsp), %r14
movq %r14, %rdi
callq 0xa6650
movq %r14, %rdi
xorl %esi, %esi
callq 0x23ff0
movl $0xd0, %edi
callq 0x238e0
movq %rax, %r14
movq %rax, %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x91588
movq %r14, 0x14172e(%rip)    # 0x16bb68
movq %r14, %rdi
movq %rbx, %rsi
callq 0x999a6
testl %eax, %eax
je 0x2aae6
leaq 0xd25e0(%rip), %rsi     # 0xfca34
movq %rbx, %rdi
callq 0x23180
testq %rax, %rax
je 0x2a475
movq 0x141700(%rip), %rdi    # 0x16bb68
movsd 0xcfc20(%rip), %xmm0    # 0xfa090
callq 0x95fbc
cmpb $0x1, 0x141624(%rip)    # 0x16baa0
jne 0x2a4ef
leaq 0xd00fb(%rip), %rdi     # 0xfa580
movq %rbx, %rsi
xorl %eax, %eax
callq 0x23080
movq 0x1416d2(%rip), %rax    # 0x16bb68
movl 0xc0(%rax), %esi
leaq 0xcfe31(%rip), %rdi     # 0xfa2d4
xorl %eax, %eax
callq 0x23080
movq 0x1416b7(%rip), %rdi    # 0x16bb68
callq 0x923f4
leaq 0xd00de(%rip), %rdi     # 0xfa59b
movl %eax, %esi
xorl %eax, %eax
callq 0x23080
movq 0x14169b(%rip), %rdi    # 0x16bb68
callq 0x92440
leaq 0xd00d5(%rip), %rdi     # 0xfa5ae
movb $0x1, %al
callq 0x23080
movq 0x13ba39(%rip), %rax    # 0x165f20
movq (%rax), %rdi
callq 0x23ac0
movq 0x141652(%rip), %rax    # 0x16bb48
movq %rax, 0x8(%rsp)
testq %rax, %rax
je 0x2a9e9
leaq 0x60(%rsp), %rbx
movq %rbx, %rdi
callq 0xa6650
movq %rbx, %rdi
xorl %esi, %esi
callq 0x23ff0
cmpl $0x0, 0x1413b2(%rip)    # 0x16b8d4
je 0x2aaf2
movq 0x141399(%rip), %rax    # 0x16b8c8
movq (%rax), %rax
movq 0x88(%rax), %rbp
testq %rbp, %rbp
je 0x2aa87
movslq 0x14(%rbp), %rbx
testq %rbx, %rbx
je 0x2aa87
movq %rbx, %r13
shlq $0x4, %r13
leaq 0x8(%r13), %rax
testl %ebx, %ebx
movq $-0x1, %r14
cmovnsq %rax, %r14
movq %r14, %rdi
callq 0x23040
movq %rbx, (%rax)
movq %rax, 0x20(%rsp)
leaq 0x8(%rax), %r15
negq %r13
xorl %r12d, %r12d
movq %r15, %rbx
movq %rbx, %rdi
callq 0xa6bec
addq $-0x10, %r12
addq $0x10, %rbx
cmpq %r12, %r13
jne 0x2a584
movq %r15, 0x1415b0(%rip)    # 0x16bb50
movslq 0x14131d(%rip), %rbx    # 0x16b8c4
movq %rbx, %r15
shlq $0x4, %r15
leaq 0x8(%r15), %rax
testq %rbx, %rbx
movq $-0x1, %r14
cmovnsq %rax, %r14
movq %r14, %rdi
callq 0x23040
leaq 0x8(%rax), %r13
movq %rax, 0x20(%rsp)
movq %rbx, (%rax)
testq %rbx, %rbx
je 0x2a5f7
negq %r15
xorl %r12d, %r12d
movq %r13, %rbx
movq %rbx, %rdi
callq 0xa6bec
addq $-0x10, %r12
addq $0x10, %rbx
cmpq %r12, %r15
jne 0x2a5e2
cmpq $0x0, 0x141569(%rip)    # 0x16bb68
jne 0x2a625
movl $0xd0, %edi
callq 0x238e0
movq %rax, %r14
movl 0x1412b0(%rip), %edx    # 0x16b8c4
movq %rax, %rdi
movl %edx, %esi
callq 0x91588
movq %r14, 0x141543(%rip)    # 0x16bb68
leaq 0xd7e47(%rip), %rsi     # 0x102473
movq 0x8(%rsp), %rdi
callq 0x23ad0
testq %rax, %rax
je 0x2aafe
movq %rax, %r14
leaq 0xf0d42(%rip), %rsi     # 0x11b38b
xorl %ebx, %ebx
leaq 0x70(%rsp), %rdx
movq %rax, %rdi
xorl %eax, %eax
callq 0x241c0
cmpl $0x1, %eax
jne 0x2a992
leaq 0xf0d21(%rip), %r15     # 0x11b38b
leaq 0x470(%rsp), %r12
xorl %ebx, %ebx
movzwl 0x70(%rsp), %eax
cmpl $0x4d, %eax
je 0x2a6a1
cmpl $0x43, %eax
jne 0x2a6bf
movq %r14, %rdi
movq %r15, %rsi
movq %r12, %rdx
xorl %eax, %eax
callq 0x241c0
cmpl $0x1, %eax
je 0x2a977
jmp 0x2aa73
movq %r14, %rdi
movq %r15, %rsi
movq %r12, %rdx
xorl %eax, %eax
callq 0x241c0
cmpl $0x1, %eax
je 0x2a977
jmp 0x2aa7c
movl 0x70(%rsp), %eax
movl $0x4956, %ecx           # imm = 0x4956
xorl %ecx, %eax
movzbl 0x72(%rsp), %ecx
orw %ax, %cx
je 0x2a771
movl 0x70(%rsp), %eax
movl $0x5649, %ecx           # imm = 0x5649
xorl %ecx, %eax
movzbl 0x72(%rsp), %ecx
orw %ax, %cx
je 0x2a8a4
movl 0x70(%rsp), %eax
movl $0x4949, %ecx           # imm = 0x4949
xorl %ecx, %eax
movzbl 0x72(%rsp), %ecx
orw %ax, %cx
jne 0x2a977
movq %r14, %rdi
leaq 0xd0067(%rip), %rsi     # 0xfa77b
leaq 0x18(%rsp), %rdx
leaq 0x28(%rsp), %rcx
leaq 0x38(%rsp), %r8
movq %r12, %r9
xorl %eax, %eax
callq 0x241c0
cmpl $0x4, %eax
jne 0x2ab20
movq 0x14142b(%rip), %rax    # 0x16bb68
movslq 0x18(%rsp), %rcx
movslq 0x28(%rsp), %rdx
movsd 0x470(%rsp), %xmm0
movq 0xb8(%rax), %rsi
movslq 0xc8(%rax), %rax
imulq %rdx, %rax
addq %rcx, %rax
movsd %xmm0, (%rsi,%rax,8)
incl %ebx
jmp 0x2a977
movq %r14, %rdi
leaq 0xcfed5(%rip), %rsi     # 0xfa650
leaq 0x14(%rsp), %rdx
leaq 0x18(%rsp), %rcx
leaq 0x28(%rsp), %r8
leaq 0x38(%rsp), %r9
xorl %eax, %eax
leaq 0x30(%rsp), %r10
pushq %r10
leaq 0x50(%rsp), %r10
pushq %r10
leaq 0x60(%rsp), %r10
pushq %r10
leaq 0x70(%rsp), %r10
pushq %r10
callq 0x241c0
addq $0x20, %rsp
cmpl $0x8, %eax
jne 0x2aa99
movslq 0x14(%rsp), %rsi
testq %rsi, %rsi
js 0x2aa85
cmpl 0x14(%rbp), %esi
jge 0x2aa85
movl %ebx, %r15d
movq 0x8(%rbp), %rax
movq (%rax,%rsi,8), %rbx
addq $0x18, %rbx
movsd 0x18(%rsp), %xmm0
movsd 0x28(%rsp), %xmm1
movsd 0x38(%rsp), %xmm2
movq %r12, %rdi
callq 0x87916
movq %rbx, %rdi
movq %r12, %rsi
callq 0x5e7a7
leaq 0x13c917(%rip), %rax    # 0x167128
ucomisd (%rax), %xmm0
ja 0x2aa89
cmpl $0x0, 0x30(%rsp)
jle 0x2a96d
xorl %ebx, %ebx
movq %r14, %rdi
leaq 0xcfea1(%rip), %rsi     # 0xfa6d3
leaq 0x34(%rsp), %rdx
movq %r12, %rcx
leaq 0x40(%rsp), %r8
xorl %eax, %eax
callq 0x241c0
cmpl $0x3, %eax
jne 0x2aa20
movslq 0x34(%rsp), %rsi
testq %rsi, %rsi
js 0x2aa02
cmpl 0x14(%rbp), %esi
jge 0x2aa02
movq 0x14104b(%rip), %rax    # 0x16b8b8
movq (%rax,%rsi,8), %rsi
testq %rsi, %rsi
je 0x2aa29
movq 0x1412cf(%rip), %rax    # 0x16bb50
movslq 0x14(%rsp), %rcx
shlq $0x4, %rcx
leaq (%rax,%rcx), %rdi
movl 0xc(%rax,%rcx), %edx
callq 0xa6c82
incl %ebx
cmpl 0x30(%rsp), %ebx
jl 0x2a828
jmp 0x2a96a
movq %r14, %rdi
leaq 0xd18a5(%rip), %rsi     # 0xfc153
movq %r12, %rdx
leaq 0x18(%rsp), %rcx
xorl %eax, %eax
callq 0x241c0
cmpl $0x2, %eax
jne 0x2aac2
movslq 0x470(%rsp), %rsi
testq %rsi, %rsi
js 0x2aace
cmpl 0x140fe7(%rip), %esi    # 0x16b8c4
jge 0x2aace
movq 0x140fce(%rip), %rax    # 0x16b8b8
cmpq $0x0, (%rax,%rsi,8)
je 0x2aabd
cmpl $0x0, 0x18(%rsp)
jle 0x2a977
movl %ebx, %r15d
xorl %ebx, %ebx
movq %r14, %rdi
leaq 0xd77df(%rip), %rsi     # 0x1020ea
leaq 0x28(%rsp), %rdx
xorl %eax, %eax
callq 0x241c0
cmpl $0x1, %eax
jne 0x2aa3b
movslq 0x28(%rsp), %rsi
testq %rsi, %rsi
js 0x2aa0b
cmpl 0x14(%rbp), %esi
jge 0x2aa0b
movq 0x8(%rbp), %rax
movq (%rax,%rsi,8), %rsi
testq %rsi, %rsi
je 0x2aa2b
movslq 0x470(%rsp), %rax
shlq $0x4, %rax
leaq (%rax,%r13), %rdi
movl 0xc(%r13,%rax), %edx
callq 0xa6c82
incl %ebx
cmpl 0x18(%rsp), %ebx
jl 0x2a901
addl %ebx, %r15d
movl %r15d, %ebx
leaq 0xf0a14(%rip), %r15     # 0x11b38b
movq %r14, %rdi
movq %r15, %rsi
leaq 0x70(%rsp), %rdx
xorl %eax, %eax
callq 0x241c0
cmpl $0x1, %eax
je 0x2a674
movq %r14, %rdi
callq 0x238d0
cmpb $0x1, 0x1410ff(%rip)    # 0x16baa0
jne 0x2a9e9
leaq 0xcfbd6(%rip), %rdi     # 0xfa580
movq 0x8(%rsp), %rsi
xorl %eax, %eax
callq 0x23080
movl 0x140f08(%rip), %esi    # 0x16b8c4
leaq 0xcf911(%rip), %rdi     # 0xfa2d4
xorl %eax, %eax
callq 0x23080
leaq 0xcfbca(%rip), %rdi     # 0xfa59b
movl %ebx, %esi
xorl %eax, %eax
callq 0x23080
movq 0x13b53f(%rip), %rax    # 0x165f20
movq (%rax), %rdi
callq 0x23ac0
callq 0x29c3a
xorl %eax, %eax
addq $0x878, %rsp            # imm = 0x878
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0xcfcf5(%rip), %rdi     # 0xfa6fe
jmp 0x2aa12
leaq 0xcfc72(%rip), %rdi     # 0xfa684
movq 0x8(%rsp), %rdx
xorl %eax, %eax
callq 0xa975e
jmp 0x2aa4e
leaq 0xcfcb5(%rip), %rdi     # 0xfa6dc
jmp 0x2aa42
jmp 0x2aa2b
leaq 0xcfcea(%rip), %rdi     # 0xfa71c
xorl %eax, %eax
callq 0xa975e
jmp 0x2aa4e
leaq 0xcfd13(%rip), %rdi     # 0xfa755
movq 0x8(%rsp), %rsi
xorl %eax, %eax
callq 0xa975e
movl $0xffffffff, %edi       # imm = 0xFFFFFFFF
callq 0x23b30
leaq 0xcf981(%rip), %rdi     # 0xfa3e0
movq %rbx, %rsi
xorl %eax, %eax
callq 0xa975e
movl $0x1, %edi
callq 0x23b30
leaq 0xcfb82(%rip), %rdi     # 0xfa5fc
jmp 0x2aa42
leaq 0xcfba6(%rip), %rdi     # 0xfa629
jmp 0x2aa42
jmp 0x2aa0b
jmp 0x2aaf2
movl 0x14(%rsp), %esi
leaq 0xcfc0f(%rip), %rdi     # 0xfa6a3
jmp 0x2aa12
leaq 0xcfbc7(%rip), %rdi     # 0xfa667
jmp 0x2aa42
jmp 0x2aa4e
leaq 0xcf952(%rip), %rdi     # 0xfa3fd
xorl %eax, %eax
callq 0xa975e
jmp 0x2aa69
leaq 0xcf9b1(%rip), %rdi     # 0xfa46c
jmp 0x2ab11
jmp 0x2aa2b
leaq 0xcfc70(%rip), %rdi     # 0xfa739
jmp 0x2aa42
jmp 0x2aa02
leaq 0xcf9d8(%rip), %rdi     # 0xfa4b2
jmp 0x2aaed
jmp 0x2aa4e
jmp 0x2aa4e
leaq 0xcfa6c(%rip), %rdi     # 0xfa559
movq %rbx, %rsi
jmp 0x2ab14
leaq 0xcfac2(%rip), %rdi     # 0xfa5bb
jmp 0x2aa32
leaq 0xcfad7(%rip), %rdi     # 0xfa5dc
jmp 0x2aa42
leaq 0xcf981(%rip), %rdi     # 0xfa492
movq %r12, %rsi
xorl %eax, %eax
callq 0xa975e
jmp 0x2aa4e
leaq 0xcfc5e(%rip), %rdi     # 0xfa785
jmp 0x2aa42
jmp 0x2aa58
jmp 0x2ab33
movq %rax, %rbx
movl $0xd0, %esi
jmp 0x2ab52
movq %rax, %rbx
movl $0xa0, %esi
movq %r15, %rdi
jmp 0x2ab55
movq %rax, %rbx
movl $0x138, %esi            # imm = 0x138
movq %r14, %rdi
callq 0x23900
jmp 0x2abb1
movq %rax, %rbx
testq %r12, %r12
je 0x2ab7f
negq %r12
movq 0x20(%rsp), %r15
addq $-0x8, %r15
leaq (%r15,%r12), %rdi
callq 0xa6c56
addq $-0x10, %r12
jne 0x2ab70
jmp 0x2aba4
movq %rax, %rbx
testq %r12, %r12
je 0x2aba4
negq %r12
movq 0x20(%rsp), %r15
addq $-0x8, %r15
leaq (%r15,%r12), %rdi
callq 0xa6c56
addq $-0x10, %r12
jne 0x2ab95
movq 0x20(%rsp), %rdi
movq %r14, %rsi
callq 0x242d0
movq %rbx, %rdi
callq 0x240f0