// File: /workspace/github_cpp_makefile_star2_O3/alexwarth[P]nothing/main.cpp
// Function: init(int)
void init(int _debug) {
  debug   = _debug;
  OTSize  = 0;
  sp      = Int(0);
  ip      = Int(-1);
  growOT();
  nil     = mk(0);   // allocate nil before any other objects so it gets to be 0
  globals = cons(nil, nil);
  stack    = addGlobal(mk(sizeof(contextSlots) + 1024));
  internedStringsRef = addGlobal(ref(nil));
  chars = addGlobal(mk(256));

  // "objectify" primNames (they were C strings up to this point)
  for (int p = 0; p < numPrims; p++)
    primNames[p] = (void *)_p1(StrIntern, stringify((const char *)primNames[p]));
  
  sIntern       = _p1(StrIntern, stringify("intern"));
  sIdentityHash = _p1(StrIntern, stringify("identityHash"));
  sPrint        = _p1(StrIntern, stringify("print"));
  sPrintln      = _p1(StrIntern, stringify("println"));
  sAdd          = _p1(StrIntern, stringify("+"));
  sSub          = _p1(StrIntern, stringify("-"));
  sMul          = _p1(StrIntern, stringify("*"));

  Obj = _p3(MkClass, _p1(StrIntern, stringify("Obj")), nil, nil);
    installPrimAsMethod(Obj, sIdentityHash, ObjIdentityHash); 
    installPrimAsMethod(Obj, sPrint,        ObjPrint       );
    installPrimAsMethod(Obj, sPrintln,      ObjPrintln     );
    for (int idx = 0; idx < OTSize; idx++) {
      if (IntValue(OT[idx].numSlots) < 0)
        continue;
      OT[idx].cls = Obj;
    }
  value_t classSlotNames = _p1(Push, mk(7));
    slotAtPut(classSlotNames, Int(0), _p1(StrIntern, stringify("name"      )));
    slotAtPut(classSlotNames, Int(1), _p1(StrIntern, stringify("slotNames" )));
    slotAtPut(classSlotNames, Int(2), _p1(StrIntern, stringify("numSlots"  )));
    slotAtPut(classSlotNames, Int(3), _p1(StrIntern, stringify("vTableSize")));
    slotAtPut(classSlotNames, Int(4), _p1(StrIntern, stringify("sels"      )));
    slotAtPut(classSlotNames, Int(5), _p1(StrIntern, stringify("impls"     )));
    slotAtPut(classSlotNames, Int(6), _p1(StrIntern, stringify("super     ")));
    assert(numSlots(classSlotNames) == Int(sizeof(classSlots) / sizeof(value_t))); // sanity check
  Class = addGlobal(_p2(MkObj, Obj, Int(7)));
    _p4(ClassInit, Class, _p1(StrIntern, stringify("Class")), Obj, classSlotNames);
    _p(Pop); // pop classSlotNames
    classOf_(Class, Class);
    classOf_(Obj,   Class);
  Int = _p3(MkClass, _p1(StrIntern, stringify("Int")), Obj, nil);
    installPrimAsMethod(Int, sPrint,        IntPrint);
    installPrimAsMethod(Int, sAdd,          IntAdd  );
    installPrimAsMethod(Int, sSub,          IntSub  );
    installPrimAsMethod(Int, sMul,          IntMul  );
  Nil = _p3(MkClass, _p1(StrIntern, stringify("Nil")), Obj, nil);
    installPrimAsMethod(Nil, sPrint, NilPrint);
    classOf_(nil, Nil);
  Str = _p3(MkClass, _p1(StrIntern, stringify("Str")), Obj, nil);
    installPrimAsMethod(Str, sIntern, StrIntern);
    installPrimAsMethod(Str, sPrint,  StrPrint);
    for (value_t curr = deref(internedStringsRef); curr != nil; curr = cdr(curr)) {
      value_t internedString = car(curr);
      OT[OopValue(internedString)].cls = Str;
    }

  fp = sp; // done at the end in the code above (intentionally) has left something on the stack
  initDone = 1;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
movl %edi, 0xb370(%rip)      # 0x13540
movq $0x0, 0xb3cd(%rip) # 0x135a8
movl $0x1, 0xb377(%rip)      # 0x1355c
movl $0xffffffff, 0xb365(%rip) # imm = 0xFFFFFFFF
callq 0x28e7
xorl %edi, %edi
callq 0x2d11
movl %eax, %ebx
movl %eax, 0xb345(%rip)      # 0x13548
movl $0x2, %edi
callq 0x2d11
movl 0xb32d(%rip), %esi      # 0x13540
testl %esi, %esi
sete %cl
testb $0x1, %al
sete %dl
orb %cl, %dl
je 0x913d
movl %eax, %edx
sarl %edx
movq 0xb380(%rip), %rcx      # 0x135b0
movslq %edx, %rdx
testl %esi, %esi
je 0x8251
leaq (%rdx,%rdx,2), %rsi
movl (%rcx,%rsi,8), %esi
testb $0x1, %sil
je 0x917d
cmpl $0x1, %esi
jle 0x9186
testb $0x1, %al
sete %dil
leaq (%rdx,%rdx,2), %rdx
movq 0x10(%rcx,%rdx,8), %rsi
movl %ebx, (%rsi)
movl 0xb2d8(%rip), %esi      # 0x13540
testl %esi, %esi
sete %r8b
orb %dil, %r8b
je 0x913d
testl %esi, %esi
je 0x8291
movl (%rcx,%rdx,8), %esi
testb $0x1, %sil
je 0x917d
cmpl $0x3, %esi
jle 0x9186
leaq (%rcx,%rdx,8), %rcx
addq $0x10, %rcx
movq (%rcx), %rcx
movl %ebx, 0x4(%rcx)
movl %eax, 0xb2bb(%rip)      # 0x13560
movl $0x414, %edi            # imm = 0x414
callq 0x2d11
movl %eax, %ebx
movl %eax, %edi
callq 0x2bb5
movl %ebx, 0xb28e(%rip)      # 0x1354c
movl 0xb284(%rip), %ebp      # 0x13548
movl $0x1, %edi
callq 0x2d11
movl %eax, %ebx
movl 0xb26a(%rip), %edx      # 0x13540
testl %edx, %edx
sete %al
testb $0x1, %bl
sete %cl
orb %al, %cl
je 0x91e1
movl %ebx, %ecx
sarl %ecx
movq 0xb2bc(%rip), %rax      # 0x135b0
movslq %ecx, %rcx
testl %edx, %edx
je 0x8314
leaq (%rcx,%rcx,2), %rdx
movl (%rax,%rdx,8), %edx
testb $0x1, %dl
je 0x9338
cmpl $0x1, %edx
jle 0x9341
leaq (%rcx,%rcx,2), %rcx
movq 0x10(%rax,%rcx,8), %rax
movl %ebp, (%rax)
movl %ebx, %edi
callq 0x2bb5
movl %ebx, 0xb238(%rip)      # 0x13564
movl $0x100, %edi            # imm = 0x100
callq 0x2d11
movl %eax, %ebx
movl %eax, %edi
callq 0x2bb5
movl %ebx, 0xb223(%rip)      # 0x13568
cmpq $0x0, 0xb133(%rip)      # 0x13480
je 0x83aa
leaq 0xaf2a(%rip), %rbx      # 0x13280
xorl %r14d, %r14d
leaq 0xad20(%rip), %r15      # 0x13080
movl 0xb1ce(%rip), %eax      # 0x13534
cmpl $0x0, 0xb1d3(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x8fe3
sarl %eax
cltq
movq (%r15,%rax,8), %r12
movq (%rbx), %rdi
callq 0x78ba
movl %eax, %edi
callq *%r12
cltq
movq %rax, (%rbx)
incq %r14
addq $0x8, %rbx
cmpq %r14, 0xb0d8(%rip)      # 0x13480
ja 0x8360
movl 0xb184(%rip), %eax      # 0x13534
cmpl $0x0, 0xb189(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
testb %dl, %cl
jne 0x91ed
sarl %eax
cltq
leaq 0xacae(%rip), %r14      # 0x13080
movq (%r14,%rax,8), %rbx
leaq 0x7cad(%rip), %rdi      # 0x1008a
callq 0x78ba
movl %eax, %edi
callq *%rbx
movl %eax, 0xb19c(%rip)      # 0x13588
movl 0xb142(%rip), %eax      # 0x13534
cmpl $0x0, 0xb147(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x920c
sarl %eax
cltq
movq (%r14,%rax,8), %rbx
leaq 0x7c76(%rip), %rdi      # 0x10091
callq 0x78ba
movl %eax, %edi
callq *%rbx
movl %eax, 0xb162(%rip)      # 0x1358c
movl 0xb104(%rip), %eax      # 0x13534
cmpl $0x0, 0xb109(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x922b
sarl %eax
cltq
movq (%r14,%rax,8), %rbx
leaq 0x7c45(%rip), %rdi      # 0x1009e
callq 0x78ba
movl %eax, %edi
callq *%rbx
movl %eax, 0xb128(%rip)      # 0x13590
movl 0xb0c6(%rip), %eax      # 0x13534
cmpl $0x0, 0xb0cb(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x924a
sarl %eax
cltq
movq (%r14,%rax,8), %rbx
leaq 0x7c0d(%rip), %rdi      # 0x100a4
callq 0x78ba
movl %eax, %edi
callq *%rbx
movl %eax, 0xb0ee(%rip)      # 0x13594
movl 0xb088(%rip), %eax      # 0x13534
cmpl $0x0, 0xb08d(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x9269
sarl %eax
cltq
movq (%r14,%rax,8), %rbx
leaq 0x7bd7(%rip), %rdi      # 0x100ac
callq 0x78ba
movl %eax, %edi
callq *%rbx
movl %eax, 0xb0b4(%rip)      # 0x13598
movl 0xb04a(%rip), %eax      # 0x13534
cmpl $0x0, 0xb04f(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x9288
sarl %eax
cltq
movq (%r14,%rax,8), %rbx
leaq 0x7b9b(%rip), %rdi      # 0x100ae
callq 0x78ba
movl %eax, %edi
callq *%rbx
movl %eax, 0xb07a(%rip)      # 0x1359c
movl 0xb00c(%rip), %eax      # 0x13534
cmpl $0x0, 0xb011(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x92a7
sarl %eax
cltq
movq (%r14,%rax,8), %rbx
leaq 0x7b5f(%rip), %rdi      # 0x100b0
callq 0x78ba
movl %eax, %edi
callq *%rbx
movl %eax, 0xb040(%rip)      # 0x135a0
movl 0xaf22(%rip), %eax      # 0x13488
cmpl $0x0, 0xafd3(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x90c1
sarl %eax
cltq
movl 0xafbe(%rip), %edi      # 0x13548
callq *(%r14,%rax,8)
movl 0xaef4(%rip), %eax      # 0x13488
cmpl $0x0, 0xafa5(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x90c1
sarl %eax
cltq
movl 0xaf90(%rip), %edi      # 0x13548
callq *(%r14,%rax,8)
movl 0xaf2a(%rip), %eax      # 0x134ec
movl 0xaf78(%rip), %ecx      # 0x13540
testl %ecx, %ecx
setne %dl
testb $0x1, %al
sete %sil
andb %dl, %sil
cmpb $0x1, %sil
je 0x90c1
testl %ecx, %ecx
setne %dl
movl 0xaf49(%rip), %ecx      # 0x13534
testb $0x1, %cl
sete %sil
andb %dl, %sil
cmpb $0x1, %sil
je 0x90c1
sarl %eax
cltq
movq (%r14,%rax,8), %rbx
sarl %ecx
movslq %ecx, %rax
movq (%r14,%rax,8), %r15
leaq 0x5fb6(%rip), %rdi      # 0xe5cd
callq 0x78ba
movl %eax, %edi
callq *%r15
movl %eax, %edi
callq *%rbx
movl %eax, 0xaf41(%rip)      # 0x1356c
movl 0xaf5b(%rip), %esi      # 0x1358c
movl 0xaed1(%rip), %edx      # 0x13508
movl %eax, %edi
callq 0x7a4e
movl 0xaf28(%rip), %edi      # 0x1356c
movl 0xaf46(%rip), %esi      # 0x13590
movl 0xaec8(%rip), %edx      # 0x13518
callq 0x7a4e
movl 0xaf11(%rip), %edi      # 0x1356c
movl 0xaf33(%rip), %esi      # 0x13594
movl 0xaeb5(%rip), %edx      # 0x1351c
callq 0x7a4e
movq 0xaf35(%rip), %rcx      # 0x135a8
movl 0xaec7(%rip), %eax      # 0x13540
testq %rcx, %rcx
je 0x86b6
movq 0xaf2b(%rip), %rdx      # 0x135b0
addq $0x4, %rdx
movl -0x4(%rdx), %esi
testl %eax, %eax
je 0x869b
movl %esi, %edi
andl $0x1, %edi
je 0x9002
testl %esi, %esi
js 0x86ad
movl 0xaec7(%rip), %eax      # 0x1356c
movl %eax, (%rdx)
movl 0xae93(%rip), %eax      # 0x13540
addq $0x18, %rdx
decq %rcx
jne 0x8689
movl 0xadcc(%rip), %ecx      # 0x13488
testl %eax, %eax
setne %al
testb $0x1, %cl
sete %dl
testb %dl, %al
jne 0x92c6
sarl %ecx
movslq %ecx, %rax
movq (%r14,%rax,8), %rbx
movl $0x7, %edi
callq 0x2d11
movl %eax, %edi
callq *%rbx
movl %eax, %ebx
movl 0xae52(%rip), %ecx      # 0x13540
testl %ecx, %ecx
je 0x86fd
movl %ebx, %eax
andl $0x1, %eax
jne 0x92e5
movl 0xae31(%rip), %eax      # 0x13534
testl %ecx, %ecx
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x9165
movl %ebx, %ebp
sarl %ebp
sarl %eax
cltq
movq (%r14,%rax,8), %r15
leaq 0x7987(%rip), %rdi      # 0x100b2
callq 0x78ba
movl %eax, %edi
callq *%r15
cmpl $0x0, 0xae04(%rip)      # 0x13540
movq 0xae6d(%rip), %rcx      # 0x135b0
movslq %ebp, %rdx
je 0x8762
leaq (%rdx,%rdx,2), %rsi
movl (%rcx,%rsi,8), %esi
testb $0x1, %sil
je 0x9165
cmpl $0x1, %esi
jle 0x9360
testb $0x1, %bl
sete %sil
leaq (%rdx,%rdx,2), %r15
movq 0x10(%rcx,%r15,8), %rcx
movl %eax, (%rcx)
movl 0xadc6(%rip), %ecx      # 0x13540
testl %ecx, %ecx
sete %al
orb %sil, %al
je 0x92ee
movl 0xada6(%rip), %eax      # 0x13534
testl %ecx, %ecx
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x9171
sarl %eax
cltq
movq (%r14,%rax,8), %r12
leaq 0x79d3(%rip), %rdi      # 0x10185
callq 0x78ba
movl %eax, %edi
callq *%r12
cmpl $0x0, 0xad7d(%rip)      # 0x13540
movq 0xade6(%rip), %rcx      # 0x135b0
je 0x8802
movl (%rcx,%r15,8), %edx
testb $0x1, %dl
je 0x9171
cmpl $0x3, %edx
jle 0x937f
movq 0x10(%rcx,%r15,8), %rcx
movl %eax, 0x4(%rcx)
testb $0x1, %bl
jne 0x939e
movl 0xad3b(%rip), %eax      # 0x13534
testb $0x1, %al
jne 0x8810
jmp 0x91a5
movq 0x10(%rcx,%r15,8), %rcx
movl %eax, 0x4(%rcx)
movl 0xad24(%rip), %eax      # 0x13534
sarl %eax
cltq
movq (%r14,%rax,8), %r12
leaq 0x7a3e(%rip), %rdi      # 0x1025d
callq 0x78ba
movl %eax, %edi
callq *%r12
cmpl $0x0, 0xad10(%rip)      # 0x13540
movq 0xad79(%rip), %rcx      # 0x135b0
je 0x886f
movl (%rcx,%r15,8), %edx
testb $0x1, %dl
je 0x91a5
cmpl $0x5, %edx
jle 0x93a7
movq 0x10(%rcx,%r15,8), %rcx
movl %eax, 0x8(%rcx)
testb $0x1, %bl
jne 0x93c6
movl 0xacce(%rip), %eax      # 0x13534
testb $0x1, %al
jne 0x887d
jmp 0x91b1
movq 0x10(%rcx,%r15,8), %rcx
movl %eax, 0x8(%rcx)
movl 0xacb7(%rip), %eax      # 0x13534
sarl %eax
cltq
movq (%r14,%rax,8), %r12
leaq 0x7aa8(%rip), %rdi      # 0x10334
callq 0x78ba
movl %eax, %edi
callq *%r12
cmpl $0x0, 0xaca3(%rip)      # 0x13540
movq 0xad0c(%rip), %rcx      # 0x135b0
je 0x88dc
movl (%rcx,%r15,8), %edx
testb $0x1, %dl
je 0x91b1
cmpl $0x7, %edx
jle 0x93cf
movq 0x10(%rcx,%r15,8), %rcx
movl %eax, 0xc(%rcx)
testb $0x1, %bl
jne 0x93ee
movl 0xac61(%rip), %eax      # 0x13534
testb $0x1, %al
jne 0x88ea
jmp 0x91bd
movq 0x10(%rcx,%r15,8), %rcx
movl %eax, 0xc(%rcx)
movl 0xac4a(%rip), %eax      # 0x13534
sarl %eax
cltq
movq (%r14,%rax,8), %r12
leaq 0x7b14(%rip), %rdi      # 0x1040d
callq 0x78ba
movl %eax, %edi
callq *%r12
cmpl $0x0, 0xac36(%rip)      # 0x13540
movq 0xac9f(%rip), %rcx      # 0x135b0
je 0x8949
movl (%rcx,%r15,8), %edx
testb $0x1, %dl
je 0x91bd
cmpl $0x9, %edx
jle 0x93f7
movq 0x10(%rcx,%r15,8), %rcx
movl %eax, 0x10(%rcx)
testb $0x1, %bl
jne 0x9416
movl 0xabf4(%rip), %eax      # 0x13534
testb $0x1, %al
jne 0x8957
jmp 0x91c9
movq 0x10(%rcx,%r15,8), %rcx
movl %eax, 0x10(%rcx)
movl 0xabdd(%rip), %eax      # 0x13534
sarl %eax
cltq
movq (%r14,%rax,8), %r12
leaq 0x7b7a(%rip), %rdi      # 0x104e0
callq 0x78ba
movl %eax, %edi
callq *%r12
cmpl $0x0, 0xabc9(%rip)      # 0x13540
movq 0xac32(%rip), %rcx      # 0x135b0
je 0x89b6
movl (%rcx,%r15,8), %edx
testb $0x1, %dl
je 0x91c9
cmpl $0xb, %edx
jle 0x941f
movq 0x10(%rcx,%r15,8), %rcx
movl %eax, 0x14(%rcx)
testb $0x1, %bl
jne 0x943e
movl 0xab87(%rip), %eax      # 0x13534
testb $0x1, %al
jne 0x89c4
jmp 0x91d5
movq 0x10(%rcx,%r15,8), %rcx
movl %eax, 0x14(%rcx)
movl 0xab70(%rip), %eax      # 0x13534
sarl %eax
cltq
movq (%r14,%rax,8), %r12
leaq 0x7be1(%rip), %rdi      # 0x105b4
callq 0x78ba
movl %eax, %edi
callq *%r12
cmpl $0x0, 0xab5c(%rip)      # 0x13540
movq 0xabc5(%rip), %rcx      # 0x135b0
je 0x8a03
movl (%rcx,%r15,8), %edx
testb $0x1, %dl
je 0x91d5
cmpl $0xd, %edx
jle 0x9447
movq 0x10(%rcx,%r15,8), %rcx
movl %eax, 0x18(%rcx)
movl %ebx, %edi
callq 0x29e3
cmpl $0xf, %eax
jne 0x92fa
movl 0xaa67(%rip), %eax      # 0x13488
cmpl $0x0, 0xab18(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x9146
sarl %eax
cltq
movl $0xf, %edi
callq *(%r14,%rax,8)
movl 0xaa96(%rip), %eax      # 0x134e4
cmpl $0x0, 0xaaeb(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x9146
sarl %eax
cltq
movl 0xaafa(%rip), %edi      # 0x1356c
callq *(%r14,%rax,8)
movl %eax, %ebp
movl %eax, %edi
callq 0x2bb5
movl %ebp, 0xaaff(%rip)      # 0x13584
movl 0xa9fd(%rip), %eax      # 0x13488
cmpl $0x0, 0xaaae(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x90a2
sarl %eax
cltq
movl %ebx, %edi
callq *(%r14,%rax,8)
movl 0xa9d3(%rip), %eax      # 0x13488
cmpl $0x0, 0xaa84(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x90a2
sarl %eax
cltq
movl 0xaa93(%rip), %edi      # 0x1356c
callq *(%r14,%rax,8)
movl 0xa9a5(%rip), %eax      # 0x13488
movl 0xaa57(%rip), %ecx      # 0x13540
testl %ecx, %ecx
setne %dl
testb $0x1, %al
sete %sil
andb %dl, %sil
cmpb $0x1, %sil
je 0x90a2
testl %ecx, %ecx
setne %dl
movl 0xaa28(%rip), %ecx      # 0x13534
testb $0x1, %cl
sete %sil
andb %dl, %sil
cmpb $0x1, %sil
je 0x90a2
sarl %eax
cltq
movq (%r14,%rax,8), %rbx
sarl %ecx
movslq %ecx, %rax
movq (%r14,%rax,8), %r15
leaq 0x5ba9(%rip), %rdi      # 0xe6e1
callq 0x78ba
movl %eax, %edi
callq *%r15
movl %eax, %edi
callq *%rbx
movl 0xa99c(%rip), %eax      # 0x134e8
cmpl $0x0, 0xa9ed(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x90a2
sarl %eax
cltq
movl 0xaa14(%rip), %edi      # 0x13584
callq *(%r14,%rax,8)
movl 0xa912(%rip), %eax      # 0x1348c
cmpl $0x0, 0xa9bf(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x9319
sarl %eax
cltq
movl 0xa9aa(%rip), %edi      # 0x13548
callq *(%r14,%rax,8)
movl 0xa9dc(%rip), %edi      # 0x13584
movl %edi, %esi
callq 0x2a93
movl 0xa9b7(%rip), %edi      # 0x1356c
movl 0xa9c9(%rip), %esi      # 0x13584
callq 0x2a93
movl 0xa8c2(%rip), %eax      # 0x13488
cmpl $0x0, 0xa973(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x90e0
sarl %eax
cltq
movl 0xa95e(%rip), %edi      # 0x13548
callq *(%r14,%rax,8)
movl 0xa894(%rip), %eax      # 0x13488
cmpl $0x0, 0xa945(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x90e0
sarl %eax
cltq
movl 0xa954(%rip), %edi      # 0x1356c
callq *(%r14,%rax,8)
movl 0xa8ca(%rip), %eax      # 0x134ec
movl 0xa918(%rip), %ecx      # 0x13540
testl %ecx, %ecx
setne %dl
testb $0x1, %al
sete %sil
andb %dl, %sil
cmpb $0x1, %sil
je 0x90e0
testl %ecx, %ecx
setne %dl
movl 0xa8e9(%rip), %ecx      # 0x13534
testb $0x1, %cl
sete %sil
andb %dl, %sil
cmpb $0x1, %sil
je 0x90e0
sarl %eax
cltq
movq (%r14,%rax,8), %rbx
sarl %ecx
movslq %ecx, %rax
movq (%r14,%rax,8), %r15
leaq 0x7a5c(%rip), %rdi      # 0x106d3
callq 0x78ba
movl %eax, %edi
callq *%r15
movl %eax, %edi
callq *%rbx
movl %eax, 0xa8e9(%rip)      # 0x13574
movl 0xa8ff(%rip), %esi      # 0x13590
movl 0xa879(%rip), %edx      # 0x13510
movl %eax, %edi
callq 0x7a4e
movl 0xa8d0(%rip), %edi      # 0x13574
movl 0xa8ee(%rip), %esi      # 0x13598
movl 0xa874(%rip), %edx      # 0x13524
callq 0x7a4e
movl 0xa8b9(%rip), %edi      # 0x13574
movl 0xa8db(%rip), %esi      # 0x1359c
movl 0xa861(%rip), %edx      # 0x13528
callq 0x7a4e
movl 0xa8a2(%rip), %edi      # 0x13574
movl 0xa8c8(%rip), %esi      # 0x135a0
movl 0xa84e(%rip), %edx      # 0x1352c
callq 0x7a4e
movl 0xa79f(%rip), %eax      # 0x13488
cmpl $0x0, 0xa850(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x90ff
sarl %eax
cltq
movl 0xa83b(%rip), %edi      # 0x13548
callq *(%r14,%rax,8)
movl 0xa771(%rip), %eax      # 0x13488
cmpl $0x0, 0xa822(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x90ff
sarl %eax
cltq
movl 0xa831(%rip), %edi      # 0x1356c
callq *(%r14,%rax,8)
movl 0xa7a7(%rip), %eax      # 0x134ec
movl 0xa7f5(%rip), %ecx      # 0x13540
testl %ecx, %ecx
setne %dl
testb $0x1, %al
sete %sil
andb %dl, %sil
cmpb $0x1, %sil
je 0x90ff
testl %ecx, %ecx
setne %dl
movl 0xa7c6(%rip), %ecx      # 0x13534
testb $0x1, %cl
sete %sil
andb %dl, %sil
cmpb $0x1, %sil
je 0x90ff
sarl %eax
cltq
movq (%r14,%rax,8), %rbx
sarl %ecx
movslq %ecx, %rax
movq (%r14,%rax,8), %r15
leaq 0x793d(%rip), %rdi      # 0x106d7
callq 0x78ba
movl %eax, %edi
callq *%r15
movl %eax, %edi
callq *%rbx
movl %eax, 0xa7c2(%rip)      # 0x13570
movl 0xa7dc(%rip), %esi      # 0x13590
movl 0xa752(%rip), %edx      # 0x1350c
movl %eax, %edi
callq 0x7a4e
movl 0xa781(%rip), %edi      # 0x13548
movl 0xa7a3(%rip), %esi      # 0x13570
callq 0x2a93
movl 0xa6b0(%rip), %eax      # 0x13488
cmpl $0x0, 0xa761(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x911e
sarl %eax
cltq
movl 0xa74c(%rip), %edi      # 0x13548
callq *(%r14,%rax,8)
movl 0xa682(%rip), %eax      # 0x13488
cmpl $0x0, 0xa733(%rip)      # 0x13540
setne %cl
testb $0x1, %al
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
je 0x911e
sarl %eax
cltq
movl 0xa742(%rip), %edi      # 0x1356c
callq *(%r14,%rax,8)
movl 0xa6b8(%rip), %eax      # 0x134ec
movl 0xa706(%rip), %ecx      # 0x13540
testl %ecx, %ecx
setne %dl
testb $0x1, %al
sete %sil
andb %dl, %sil
cmpb $0x1, %sil
je 0x911e
testl %ecx, %ecx
setne %dl
movl 0xa6d7(%rip), %ecx      # 0x13534
testb $0x1, %cl
sete %sil
andb %dl, %sil
cmpb $0x1, %sil
je 0x911e
sarl %eax
cltq
movq (%r14,%rax,8), %rbx
sarl %ecx
movslq %ecx, %rax
movq (%r14,%rax,8), %r14
leaq 0x7852(%rip), %rdi      # 0x106db
callq 0x78ba
movl %eax, %edi
callq *%r14
movl %eax, %edi
callq *%rbx
movl %eax, 0xa6db(%rip)      # 0x13578
movl 0xa6e5(%rip), %esi      # 0x13588
movl 0xa68b(%rip), %edx      # 0x13534
movl %eax, %edi
callq 0x7a4e
movl 0xa6c2(%rip), %edi      # 0x13578
movl 0xa6d4(%rip), %esi      # 0x13590
movl 0xa652(%rip), %edx      # 0x13514
callq 0x7a4e
movl 0xa697(%rip), %edx      # 0x13564
movl 0xa66d(%rip), %ecx      # 0x13540
testl %ecx, %ecx
sete %al
testb $0x1, %dl
sete %sil
orb %al, %sil
je 0x9021
sarl %edx
movq 0xa6bf(%rip), %rax      # 0x135b0
movslq %edx, %rdx
testl %ecx, %ecx
je 0x8f12
leaq (%rdx,%rdx,2), %rsi
movl (%rax,%rsi,8), %esi
testb $0x1, %sil
je 0x903c
cmpl $0x1, %esi
jle 0x9033
leaq (%rdx,%rdx,2), %rdx
movq 0x10(%rax,%rdx,8), %rdx
movl (%rdx), %edx
cmpl 0xa625(%rip), %edx      # 0x13548
je 0x8fc4
testl %ecx, %ecx
sete %sil
testb $0x1, %dl
sete %dil
orb %sil, %dil
je 0x902a
movl %edx, %esi
sarl %esi
movslq %esi, %rsi
leaq (%rsi,%rsi,2), %rsi
testl %ecx, %ecx
je 0x8f74
movl (%rax,%rsi,8), %ecx
testb $0x1, %cl
je 0x9083
cmpl $0x1, %ecx
jle 0x905b
movq 0x10(%rax,%rsi,8), %rdi
movl (%rdi), %ecx
testb $0x1, %cl
je 0x8f7b
jmp 0x9064
movq 0x10(%rax,%rsi,8), %rdi
movl (%rdi), %ecx
testb $0x1, %dl
sete %dl
movl 0xa5f0(%rip), %r8d      # 0x13578
sarl %ecx
movslq %ecx, %rcx
leaq (%rcx,%rcx,2), %rcx
movl %r8d, 0x4(%rax,%rcx,8)
movl 0xa5a4(%rip), %ecx      # 0x13540
testl %ecx, %ecx
sete %r8b
orb %dl, %r8b
je 0x9021
testl %ecx, %ecx
je 0x8fbc
movl (%rax,%rsi,8), %edx
testb $0x1, %dl
je 0x903c
cmpl $0x3, %edx
jle 0x9033
movl 0x4(%rdi), %edx
jmp 0x8f1d
movl 0xa592(%rip), %eax      # 0x1355c
movl %eax, 0xa588(%rip)      # 0x13558
movl $0x1, 0xa56a(%rip)      # 0x13544
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
leaq 0x31a4(%rip), %rdi      # 0xc18e
leaq 0x3046(%rip), %rsi      # 0xc037
leaq 0x6ee7(%rip), %rcx      # 0xfedf
movl $0x218, %edx            # imm = 0x218
callq 0x2060
leaq 0x3185(%rip), %rdi      # 0xc18e
leaq 0x3027(%rip), %rsi      # 0xc037
leaq 0x6ec8(%rip), %rcx      # 0xfedf
movl $0x227, %edx            # imm = 0x227
callq 0x2060
leaq 0x3032(%rip), %rdi      # 0xc05a
jmp 0x9043
leaq 0x3029(%rip), %rdi      # 0xc05a
jmp 0x908a
leaq 0x76a5(%rip), %rdi      # 0x106df
jmp 0x9043
leaq 0x314b(%rip), %rdi      # 0xc18e
leaq 0x2fed(%rip), %rsi      # 0xc037
leaq 0x6e8e(%rip), %rcx      # 0xfedf
movl $0x244, %edx            # imm = 0x244
callq 0x2060
leaq 0x774b(%rip), %rdi      # 0x107ad
jmp 0x908a
leaq 0x2fef(%rip), %rdi      # 0xc05a
leaq 0x2fc5(%rip), %rsi      # 0xc037
leaq 0x6e66(%rip), %rcx      # 0xfedf
movl $0x246, %edx            # imm = 0x246
callq 0x2060
leaq 0x3104(%rip), %rdi      # 0xc18e
leaq 0x2fa6(%rip), %rsi      # 0xc037
leaq 0x6e47(%rip), %rcx      # 0xfedf
movl $0x245, %edx            # imm = 0x245
callq 0x2060
leaq 0x30e5(%rip), %rdi      # 0xc18e
leaq 0x2f87(%rip), %rsi      # 0xc037
leaq 0x6e28(%rip), %rcx      # 0xfedf
movl $0x235, %edx            # imm = 0x235
callq 0x2060
leaq 0x30c6(%rip), %rdi      # 0xc18e
leaq 0x2f68(%rip), %rsi      # 0xc037
leaq 0x6e09(%rip), %rcx      # 0xfedf
movl $0x222, %edx            # imm = 0x222
callq 0x2060
leaq 0x30a7(%rip), %rdi      # 0xc18e
leaq 0x2f49(%rip), %rsi      # 0xc037
leaq 0x6dea(%rip), %rcx      # 0xfedf
movl $0x239, %edx            # imm = 0x239
callq 0x2060
leaq 0x3088(%rip), %rdi      # 0xc18e
leaq 0x2f2a(%rip), %rsi      # 0xc037
leaq 0x6dcb(%rip), %rcx      # 0xfedf
movl $0x23e, %edx            # imm = 0x23E
callq 0x2060
leaq 0x3069(%rip), %rdi      # 0xc18e
leaq 0x2f0b(%rip), %rsi      # 0xc037
leaq 0x6dac(%rip), %rcx      # 0xfedf
movl $0x241, %edx            # imm = 0x241
callq 0x2060
leaq 0x2f16(%rip), %rdi      # 0xc05a
jmp 0x918d
leaq 0x3041(%rip), %rdi      # 0xc18e
leaq 0x2ee3(%rip), %rsi      # 0xc037
leaq 0x6d84(%rip), %rcx      # 0xfedf
movl $0x234, %edx            # imm = 0x234
callq 0x2060
leaq 0x3022(%rip), %rdi      # 0xc18e
jmp 0x9367
leaq 0x3016(%rip), %rdi      # 0xc18e
jmp 0x9386
leaq 0x300a(%rip), %rdi      # 0xc18e
jmp 0x918d
leaq 0x6d61(%rip), %rdi      # 0xfeee
leaq 0x2ea3(%rip), %rsi      # 0xc037
leaq 0x6d44(%rip), %rcx      # 0xfedf
movl $0x211, %edx            # imm = 0x211
callq 0x2060
leaq 0x2fe2(%rip), %rdi      # 0xc18e
jmp 0x93ae
leaq 0x2fd6(%rip), %rdi      # 0xc18e
jmp 0x93d6
leaq 0x2fca(%rip), %rdi      # 0xc18e
jmp 0x93fe
leaq 0x2fbe(%rip), %rdi      # 0xc18e
jmp 0x9426
leaq 0x2fb2(%rip), %rdi      # 0xc18e
jmp 0x944e
leaq 0x2e72(%rip), %rdi      # 0xc05a
jmp 0x9348
leaq 0x2f9a(%rip), %rdi      # 0xc18e
leaq 0x2e3c(%rip), %rsi      # 0xc037
leaq 0x6cdd(%rip), %rcx      # 0xfedf
movl $0x21a, %edx            # imm = 0x21A
callq 0x2060
leaq 0x2f7b(%rip), %rdi      # 0xc18e
leaq 0x2e1d(%rip), %rsi      # 0xc037
leaq 0x6cbe(%rip), %rcx      # 0xfedf
movl $0x21b, %edx            # imm = 0x21B
callq 0x2060
leaq 0x2f5c(%rip), %rdi      # 0xc18e
leaq 0x2dfe(%rip), %rsi      # 0xc037
leaq 0x6c9f(%rip), %rcx      # 0xfedf
movl $0x21c, %edx            # imm = 0x21C
callq 0x2060
leaq 0x2f3d(%rip), %rdi      # 0xc18e
leaq 0x2ddf(%rip), %rsi      # 0xc037
leaq 0x6c80(%rip), %rcx      # 0xfedf
movl $0x21d, %edx            # imm = 0x21D
callq 0x2060
leaq 0x2f1e(%rip), %rdi      # 0xc18e
leaq 0x2dc0(%rip), %rsi      # 0xc037
leaq 0x6c61(%rip), %rcx      # 0xfedf
movl $0x21e, %edx            # imm = 0x21E
callq 0x2060
leaq 0x2eff(%rip), %rdi      # 0xc18e
leaq 0x2da1(%rip), %rsi      # 0xc037
leaq 0x6c42(%rip), %rcx      # 0xfedf
movl $0x21f, %edx            # imm = 0x21F
callq 0x2060
leaq 0x2ee0(%rip), %rdi      # 0xc18e
leaq 0x2d82(%rip), %rsi      # 0xc037
leaq 0x6c23(%rip), %rcx      # 0xfedf
movl $0x220, %edx            # imm = 0x220
callq 0x2060
leaq 0x2ec1(%rip), %rdi      # 0xc18e
leaq 0x2d63(%rip), %rsi      # 0xc037
leaq 0x6c04(%rip), %rcx      # 0xfedf
movl $0x22b, %edx            # imm = 0x22B
callq 0x2060
leaq 0x2d6e(%rip), %rdi      # 0xc05a
jmp 0x9367
leaq 0x2d65(%rip), %rdi      # 0xc05a
jmp 0x9386
leaq 0x738c(%rip), %rdi      # 0x1068d
leaq 0x2d2f(%rip), %rsi      # 0xc037
leaq 0x6bd0(%rip), %rcx      # 0xfedf
movl $0x233, %edx            # imm = 0x233
callq 0x2060
leaq 0x2e6e(%rip), %rdi      # 0xc18e
leaq 0x2d10(%rip), %rsi      # 0xc037
leaq 0x6bb1(%rip), %rcx      # 0xfedf
movl $0x236, %edx            # imm = 0x236
callq 0x2060
leaq 0x2e4f(%rip), %rdi      # 0xc18e
jmp 0x9348
leaq 0x6c74(%rip), %rdi      # 0xffbc
leaq 0x2ce8(%rip), %rsi      # 0xc037
leaq 0x6b89(%rip), %rcx      # 0xfedf
movl $0x213, %edx            # imm = 0x213
callq 0x2060
leaq 0x6d50(%rip), %rdi      # 0x100b7
leaq 0x2cc9(%rip), %rsi      # 0xc037
leaq 0x6b6a(%rip), %rcx      # 0xfedf
movl $0x22c, %edx            # imm = 0x22C
callq 0x2060
leaq 0x6e09(%rip), %rdi      # 0x1018f
leaq 0x2caa(%rip), %rsi      # 0xc037
leaq 0x6b4b(%rip), %rcx      # 0xfedf
movl $0x22d, %edx            # imm = 0x22D
callq 0x2060
leaq 0x2cb5(%rip), %rdi      # 0xc05a
jmp 0x93ae
leaq 0x6eb8(%rip), %rdi      # 0x10266
leaq 0x2c82(%rip), %rsi      # 0xc037
leaq 0x6b23(%rip), %rcx      # 0xfedf
movl $0x22e, %edx            # imm = 0x22E
callq 0x2060
leaq 0x2c8d(%rip), %rdi      # 0xc05a
jmp 0x93d6
leaq 0x6f69(%rip), %rdi      # 0x1033f
leaq 0x2c5a(%rip), %rsi      # 0xc037
leaq 0x6afb(%rip), %rcx      # 0xfedf
movl $0x22f, %edx            # imm = 0x22F
callq 0x2060
leaq 0x2c65(%rip), %rdi      # 0xc05a
jmp 0x93fe
leaq 0x7014(%rip), %rdi      # 0x10412
leaq 0x2c32(%rip), %rsi      # 0xc037
leaq 0x6ad3(%rip), %rcx      # 0xfedf
movl $0x230, %edx            # imm = 0x230
callq 0x2060
leaq 0x2c3d(%rip), %rdi      # 0xc05a
jmp 0x9426
leaq 0x70c0(%rip), %rdi      # 0x104e6
leaq 0x2c0a(%rip), %rsi      # 0xc037
leaq 0x6aab(%rip), %rcx      # 0xfedf
movl $0x231, %edx            # imm = 0x231
callq 0x2060
leaq 0x2c15(%rip), %rdi      # 0xc05a
jmp 0x944e
leaq 0x7171(%rip), %rdi      # 0x105bf
leaq 0x2be2(%rip), %rsi      # 0xc037
leaq 0x6a83(%rip), %rcx      # 0xfedf
movl $0x232, %edx            # imm = 0x232
callq 0x2060