// File: /workspace/github_c_makefile_star2_O1/afi-lambda[P]a_little_smalltalk/src/primitive.c
// Function: primitive
object primitive(register int primitiveNumber, object *arguments)
{
    register int primitiveGroup = primitiveNumber / 10;
    object returnedObject;

    if (primitiveNumber >= 150)
    {
        /* system dependent primitives, handled in separate module */
        returnedObject = sysPrimitive(primitiveNumber, arguments);
    }
    else
    {
        switch (primitiveGroup)
        {
        case 0:
            returnedObject = zeroaryPrims(primitiveNumber);
            break;
        case 1:
            returnedObject = unaryPrims(primitiveNumber - 10, arguments[0]);
            break;
        case 2:
            returnedObject = binaryPrims(primitiveNumber - 20, arguments[0],
                                         arguments[1]);
            break;
        case 3:
            returnedObject = trinaryPrims(primitiveNumber - 30, arguments[0],
                                          arguments[1], arguments[2]);
            break;

        case 5: /* integer unary operations */
            if (!isInteger(arguments[0]))
                returnedObject = nilobj;
            else
                returnedObject = intUnary(primitiveNumber - 50,
                                          intValue(arguments[0]));
            break;

        case 6:
        case 7: /* integer binary operations */
            if ((!isInteger(arguments[0])) || !isInteger(arguments[1]))
                returnedObject = nilobj;
            else
                returnedObject = intBinary(primitiveNumber - 60,
                                           intValue(arguments[0]), intValue(arguments[1]));
            break;

        case 8: /* string unary */
            returnedObject = strUnary(primitiveNumber - 80,
                                      charPtr(arguments[0]));
            break;

        case 10: /* float unary */
            returnedObject = floatUnary(primitiveNumber - 100, floatValue(
                                            arguments[0]));
            break;

        case 11: /* float binary */
            returnedObject = floatBinary(primitiveNumber - 110, floatValue(
                                             arguments[0]), floatValue(arguments[1]));
            break;

        case 12:
        case 13: /* file operations */

            returnedObject = ioPrimitive(primitiveNumber - 120, arguments);
            break;

        default:
            sysError("unknown primitive number", "doPrimitive");
            break;
        }
    }

    return (returnedObject);
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x7e8, %rsp            # imm = 0x7E8
movq %rsi, %r15
movl %edi, %r14d
cmpl $0x96, %edi
jl 0x4ebc
movl %r14d, %edi
movq %r15, %rsi
addq $0x7e8, %rsp            # imm = 0x7E8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x4e21
movslq %r14d, %rax
imulq $0x66666667, %rax, %rax # imm = 0x66666667
movq %rax, %rcx
shrq $0x3f, %rcx
sarq $0x22, %rax
addl %ecx, %eax
cmpl $0xd, %eax
ja 0x51b2
leaq 0x45fd(%rip), %rcx      # 0x94e0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movswl (%r15), %edi
callq 0x2f18
testl %eax, %eax
je 0x599b
movswl 0x2(%r15), %edi
callq 0x2f18
testl %eax, %eax
je 0x599b
movswl (%r15), %edi
callq 0x3141
movl %eax, %ebx
movswl 0x2(%r15), %edi
callq 0x3141
movl %eax, %ecx
leal -0x3c(%r14), %eax
cmpl $0x13, %eax
ja 0x594b
leaq 0x4642(%rip), %rdx      # 0x957c
movslq (%rdx,%rax,4), %rax
addq %rdx, %rax
jmpq *%rax
xorl %esi, %esi
cmpl %ecx, %ebx
sete %sil
jmp 0x594b
addl $-0x78, %r14d
movl %r14d, %edi
movq %r15, %rsi
addq $0x7e8, %rsp            # imm = 0x7E8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x8cea
movzwl (%r15), %ebx
addl $-0x15, %r14d
cmpl $0x8, %r14d
ja 0x5668
movzwl 0x2(%r15), %eax
movswl %bx, %r15d
movswl %ax, %ebp
leaq 0x467f(%rip), %rcx      # 0x9614
movslq (%rcx,%r14,4), %rdx
addq %rcx, %rdx
jmpq *%rdx
cmpw %ax, %bx
je 0x5866
jmp 0x595d
decl %r14d
cmpl $0x8, %r14d
ja 0x52f6
leaq 0x4678(%rip), %rax      # 0x9638
movslq (%rax,%r14,4), %rcx
addq %rax, %rcx
jmpq *%rcx
callq 0x2230
movl %eax, %ecx
shrl $0x8, %ecx
movl %ecx, %edx
negl %edx
btl $0x17, %eax
cmovael %ecx, %edx
movswl %dx, %edi
sarl %edi
jmp 0x596b
addl $-0xa, %r14d
movswl (%r15), %esi
movl %r14d, %edi
callq 0x59f6
movl %eax, %ebx
jmp 0x599d
movswl (%r15), %edi
leaq 0x22886(%rip), %rbx     # 0x27890
movw %di, (%rbx)
callq 0x2f18
addl $-0x51, %r14d
cmpl $0x8, %r14d
ja 0x5386
movswl (%rbx), %eax
shrl %eax
movswq %ax, %rax
shlq $0x4, %rax
leaq 0x920c(%rip), %rcx      # 0xe240
movq 0x8(%rcx,%rax), %rsi
leaq 0x4518(%rip), %rax      # 0x9558
movslq (%rax,%r14,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movq %rsi, %rdi
callq 0x20a0
movl %eax, %edi
jmp 0x596b
movzwl (%r15), %ebx
addl $-0x1f, %r14d
cmpl $0x8, %r14d
ja 0x52d2
movzwl 0x2(%r15), %r12d
movzwl 0x4(%r15), %ebp
leaq 0x4575(%rip), %rax      # 0x95f0
movslq (%rax,%r14,4), %rcx
addq %rax, %rcx
jmpq *%rcx
movswl %r12w, %r14d
movl %r14d, %edi
callq 0x2f18
testl %eax, %eax
jne 0x50a7
leaq 0x4669(%rip), %rdi      # 0x9704
leaq 0x410b(%rip), %rsi      # 0x91ad
callq 0x4dfc
movswl %bp, %ebp
movl %ebp, %edi
callq 0x2f18
testl %eax, %eax
jne 0x50c8
leaq 0x4691(%rip), %rdi      # 0x974d
leaq 0x469c(%rip), %rsi      # 0x975f
callq 0x4dfc
movl %r14d, %edi
callq 0x3141
movl %eax, %r14d
movl %ebp, %edi
callq 0x3141
movswl %bx, %edi
movl %r14d, %esi
movl %eax, %edx
callq 0x3045
jmp 0x599d
movswl (%r15), %edi
callq 0x2f18
testl %eax, %eax
je 0x599b
movswl (%r15), %edi
callq 0x3141
addl $-0x33, %r14d
cmpl $0x8, %r14d
ja 0x56fc
leaq 0x44b1(%rip), %rcx      # 0x95cc
movslq (%rcx,%r14,4), %rdx
addq %rcx, %rdx
jmpq *%rdx
cvtsi2sd %eax, %xmm0
jmp 0x5876
movswl (%r15), %edi
callq 0x3a96
movsd %xmm0, (%rsp)
movswl 0x2(%r15), %edi
callq 0x3a96
leal -0x6e(%r14), %eax
cmpl $0x9, %eax
ja 0x5831
leaq 0x43bf(%rip), %rcx      # 0x9518
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movsd (%rsp), %xmm2
addsd %xmm0, %xmm2
jmp 0x5854
movswl (%r15), %edi
callq 0x3a96
addl $-0x65, %r14d
cmpl $0x5, %r14d
ja 0x534e
leaq 0x43b2(%rip), %rax      # 0x9540
movslq (%rax,%r14,4), %rcx
addq %rax, %rcx
jmpq *%rcx
leaq 0x461d(%rip), %rsi      # 0x97bb
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
movb $0x1, %al
callq 0x21f0
jmp 0x55de
leaq 0x44c7(%rip), %rdi      # 0x9680
leaq 0x44d9(%rip), %rsi      # 0x9699
callq 0x4dfc
jmp 0x599d
movswl %bx, %ebx
movl %ebx, %edi
callq 0x6a9c
leaq 0x226b5(%rip), %r14     # 0x27890
movw %r12w, (%r14)
movswl %r12w, %edi
callq 0x2f18
movswl (%r14), %eax
shrl %eax
movswq %ax, %rax
shlq $0x4, %rax
leaq 0x9043(%rip), %r15      # 0xe240
movq 0x8(%r15,%rax), %rsi
movswl %bp, %r14d
movl %r14d, %edi
xorl %edx, %edx
callq 0x6b6a
testl %eax, %eax
je 0x595d
shrl %r14d
movswq %r14w, %rax
shlq $0x4, %rax
movq 0x8(%r15,%rax), %rax
movswl 0x2(%rax), %edi
movl %ebx, %esi
callq 0x3be0
jmp 0x5866
leaq 0x22651(%rip), %r14     # 0x27890
movw %bx, (%r14)
movswl %bx, %edi
callq 0x2f18
movswl (%r14), %eax
shrl %eax
movswq %ax, %rax
shlq $0x4, %rax
leaq 0x8fe0(%rip), %rcx      # 0xe240
movq 0x8(%rcx,%rax), %rbx
movswl %r12w, %r14d
movl %r14d, %edi
callq 0x2f18
testl %eax, %eax
je 0x5281
movswl %bp, %edi
callq 0x2f18
testl %eax, %eax
jne 0x5294
leaq 0x447c(%rip), %rdi      # 0x9704
leaq 0x44d8(%rip), %rsi      # 0x9767
callq 0x4dfc
movl %r14d, %edi
callq 0x3141
movl %eax, %r14d
movswl %bp, %edi
callq 0x3141
movl %eax, %ebp
movl %r14d, %r15d
movq %rbx, %rdi
callq 0x20a0
cmpq %r15, %rax
setb %al
cmpl %ebp, %r14d
seta %cl
orb %al, %cl
je 0x53d2
leaq 0x10(%rsp), %rax
jmp 0x53ef
leaq 0x41e6(%rip), %rdi      # 0x94bf
leaq 0x4492(%rip), %rsi      # 0x9772
jmp 0x5676
xorl %edi, %edi
xorl %eax, %eax
callq 0x21a0
movswl %ax, %edi
jmp 0x596b
leaq 0x41c2(%rip), %rdi      # 0x94bf
leaq 0x43c3(%rip), %rsi      # 0x96c7
callq 0x4dfc
jmp 0x599b
callq 0x2220
jmp 0x531a
callq 0x20e0
callq 0x3a12
jmp 0x55e6
leaq 0xc(%rsp), %rbx
movq %rbx, %rdi
callq 0x2130
movl (%rbx), %edi
cmpl $0xc, %edi
ja 0x574b
callq 0x2040
movl $0x0, 0xc(%rsp)
jmp 0x575c
leaq 0x416a(%rip), %rdi      # 0x94bf
leaq 0x4462(%rip), %rsi      # 0x97be
jmp 0x51c0
movq %rsi, %rdi
addq $0x7e8, %rsp            # imm = 0x7E8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x37bd
leaq 0x4425(%rip), %rdi      # 0x97a6
jmp 0x51c0
leaq 0x4132(%rip), %rdi      # 0x94bf
leaq 0x441e(%rip), %rsi      # 0x97b2
jmp 0x51c0
movq %rsi, %rdi
callq 0x3360
jmp 0x53cb
leaq 0x224ea(%rip), %rax     # 0x27894
movswl (%rax), %edi
addq $0x7e8, %rsp            # imm = 0x7E8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x3478
movq %rsi, %rdi
callq 0x20b0
movl %eax, %edi
jmp 0x596b
leaq 0x10(%rsp), %rax
leal -0x1(%r14), %ecx
movb (%rbx,%rcx), %cl
testb %cl, %cl
je 0x53ef
movb %cl, (%rax)
incq %rax
incl %r14d
cmpl %ebp, %r14d
jbe 0x53d7
movb $0x0, (%rax)
leaq 0x10(%rsp), %rdi
jmp 0x55e1
leaq 0x22bc5(%rip), %r14     # 0x27fc8
movswl (%r14), %eax
shrl %eax
movswq %ax, %rax
shlq $0x4, %rax
leaq 0x8e28(%rip), %r12      # 0xe240
movq 0x8(%r12,%rax), %rax
leaq 0x22ba8(%rip), %rcx     # 0x27fcc
movslq (%rcx), %rcx
movswl -0x2(%rax,%rcx,2), %edi
callq 0x3141
leal 0x1(%rax), %ecx
leaq 0x2245d(%rip), %rdx     # 0x27898
movl %ecx, (%rdx)
movswl (%r14), %ecx
shrl %ecx
movswq %cx, %rcx
shlq $0x4, %rcx
movq 0x8(%r12,%rcx), %rcx
movslq %eax, %r13
movswl (%rcx,%r13,2), %edi
callq 0x2f46
movswl (%r14), %eax
shrl %eax
movswq %ax, %rax
shlq $0x4, %rax
movq 0x8(%r12,%rax), %rax
leaq 0x22421(%rip), %rcx     # 0x27898
movslq (%rcx), %rcx
movw %r15w, -0x2(%rax,%rcx,2)
movl %r15d, %edi
callq 0x2f20
leal 0x4(%r13), %eax
leaq 0x22405(%rip), %r15     # 0x27898
movl %eax, (%r15)
movswl (%r14), %eax
shrl %eax
movswq %ax, %rax
shlq $0x4, %rax
movq 0x8(%r12,%rax), %rax
movswl 0x6(%rax,%r13,2), %edi
callq 0x2f46
movswl (%r14), %eax
shrl %eax
movswq %ax, %rax
shlq $0x4, %rax
movq 0x8(%r12,%rax), %rax
movslq (%r15), %rcx
movw %bp, -0x2(%rax,%rcx,2)
jmp 0x5661
movl %ebp, %edi
callq 0x2f18
testl %eax, %eax
jne 0x54f2
leaq 0x421e(%rip), %rdi      # 0x9704
leaq 0x4229(%rip), %rsi      # 0x9716
callq 0x4dfc
leaq 0x22397(%rip), %rbx     # 0x27890
movw %r15w, (%rbx)
movl %r15d, %edi
callq 0x2f18
movswl (%rbx), %eax
shrl %eax
movswq %ax, %rax
shlq $0x4, %rax
leaq 0x8d27(%rip), %rcx      # 0xe240
movq 0x8(%rcx,%rax), %rbx
movl %ebp, %edi
callq 0x3141
cltq
movzbl -0x1(%rbx,%rax), %edi
callq 0x314c
jmp 0x55e6
movl %ebp, %edi
callq 0x2f18
testl %eax, %eax
jne 0x5554
leaq 0x41bc(%rip), %rdi      # 0x9704
leaq 0x3d38(%rip), %rsi      # 0x9287
callq 0x4dfc
shrl %r15d
movswq %r15w, %rax
shlq $0x4, %rax
leaq 0x8cda(%rip), %rcx      # 0xe240
movq 0x8(%rcx,%rax), %rbx
movl %ebp, %edi
callq 0x3141
cltq
movzwl -0x2(%rbx,%rax,2), %ebx
jmp 0x599d
leaq 0x2230b(%rip), %r14     # 0x27890
movw %r15w, (%r14)
movl %r15d, %edi
callq 0x2f18
movswl (%r14), %eax
shrl %eax
movswq %ax, %rax
shlq $0x4, %rax
leaq 0x8c9a(%rip), %r15      # 0xe240
movq 0x8(%r15,%rax), %rsi
leaq 0x10(%rsp), %rbx
movq %rbx, %rdi
callq 0x2050
movw %bp, (%r14)
movl %ebp, %edi
callq 0x2f18
movswl (%r14), %eax
shrl %eax
movswq %ax, %rax
shlq $0x4, %rax
movq 0x8(%r15,%rax), %rsi
movq %rbx, %rdi
callq 0x21e0
movq %rbx, %rdi
callq 0x3b88
movl %eax, %ebx
jmp 0x599d
leaq 0x222a0(%rip), %rax     # 0x27894
movswl (%rax), %r14d
leaq 0x22291(%rip), %r12     # 0x27890
movw %r15w, (%r12)
movl %r15d, %edi
callq 0x2f18
movswl (%r12), %eax
shrl %eax
movswq %ax, %rax
shlq $0x4, %rax
leaq 0x8c1e(%rip), %rcx      # 0xe240
movq 0x8(%rcx,%rax), %rdi
callq 0x3360
movl %r14d, %edi
movl %eax, %esi
movl %r15d, %edx
movl %ebp, %ecx
callq 0x3158
jmp 0x599d
shrl %r15d
movswq %r15w, %r14
shlq $0x4, %r14
leaq 0x8bee(%rip), %r15      # 0xe240
movswl (%r15,%r14), %edi
callq 0x2f46
movw %bp, (%r15,%r14)
movl %ebp, %edi
jmp 0x57ac
leaq 0x3e50(%rip), %rdi      # 0x94bf
leaq 0x40a8(%rip), %rsi      # 0x971e
callq 0x4dfc
jmp 0x599d
xorl %eax, %eax
callq 0x3631
movswl %ax, %ebx
movl %ebx, %eax
shrl %eax
movswq %ax, %r14
shlq $0x4, %r14
leaq 0x8ba3(%rip), %r12      # 0xe240
movq 0x8(%r12,%r14), %rax
movw %bp, (%rax)
movl %ebp, %edi
callq 0x2f20
shrl %r15d
movswq %r15w, %r15
shlq $0x4, %r15
movq 0x8(%r12,%r15), %rax
movswl 0x2(%rax), %edi
movq 0x8(%r12,%r14), %rax
movw %di, 0x2(%rax)
callq 0x2f20
movq 0x8(%r12,%r15), %rax
movswl 0x4(%rax), %edi
movq 0x8(%r12,%r14), %rax
movw %di, 0x4(%rax)
callq 0x2f20
movq 0x8(%r12,%r15), %rax
movswl 0x6(%rax), %edi
movq 0x8(%r12,%r14), %rax
movw %di, 0x6(%rax)
jmp 0x57ac
leaq 0x4090(%rip), %rdi      # 0x9793
leaq 0x45a3(%rip), %rsi      # 0x9cad
jmp 0x51c0
movl %eax, %edi
addq $0x7e8, %rsp            # imm = 0x7E8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2d15
movl %eax, %edi
callq 0x2110
jmp 0x599b
movl %eax, %edi
addq $0x7e8, %rsp            # imm = 0x7E8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2e89
addl $-0xc, %edi
movl %edi, 0xc(%rsp)
movl $0xc, %edi
callq 0x2040
cvttsd2si %xmm0, %ebp
movl $0x2, %edi
callq 0x35da
movswl %ax, %ebx
movl %ebp, %edi
callq 0x314c
movl %ebx, %ecx
shrl %ecx
movswq %cx, %r14
shlq $0x4, %r14
leaq 0x8ab9(%rip), %r15      # 0xe240
movq 0x8(%r15,%r14), %rcx
movw %ax, (%rcx)
movswl %ax, %edi
callq 0x2f20
movl 0xc(%rsp), %edi
callq 0x314c
movq 0x8(%r15,%r14), %rcx
movw %ax, 0x2(%rcx)
movswl %ax, %edi
callq 0x2f20
jmp 0x599d
xorl %eax, %eax
movsd (%rsp), %xmm2
ucomisd %xmm2, %xmm0
jmp 0x5814
movsd (%rsp), %xmm2
divsd %xmm0, %xmm2
jmp 0x5854
xorl %eax, %eax
movsd (%rsp), %xmm2
ucomisd %xmm2, %xmm0
jmp 0x57e9
xorl %eax, %eax
movsd (%rsp), %xmm2
ucomisd %xmm0, %xmm2
seta %al
jmp 0x5854
movsd (%rsp), %xmm2
movapd %xmm2, %xmm1
cmpneqsd %xmm0, %xmm1
jmp 0x5827
movsd (%rsp), %xmm2
subsd %xmm0, %xmm2
jmp 0x5854
xorl %eax, %eax
movsd (%rsp), %xmm2
ucomisd %xmm0, %xmm2
setae %al
jmp 0x5854
movsd (%rsp), %xmm2
movapd %xmm2, %xmm1
cmpeqsd %xmm0, %xmm1
movq %xmm1, %rax
andl $0x1, %eax
jmp 0x5854
leaq 0x3c87(%rip), %rdi      # 0x94bf
leaq 0x3f8a(%rip), %rsi      # 0x97c9
callq 0x4dfc
movsd (%rsp), %xmm2
jmp 0x5854
movsd (%rsp), %xmm2
mulsd %xmm0, %xmm2
addl $-0x70, %r14d
cmpl $0x5, %r14d
ja 0x5872
testl %eax, %eax
je 0x595d
leaq 0x22765(%rip), %rax     # 0x27fd2
jmp 0x5964
movapd %xmm2, %xmm0
addq $0x7e8, %rsp            # imm = 0x7E8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x3a12
xorl %ebx, %ecx
jmp 0x58a6
testl %ecx, %ecx
je 0x599b
movl %ebx, %eax
cltd
idivl %ecx
movl %eax, %ebx
jmp 0x594b
andl %ebx, %ecx
movl %ecx, %ebx
jmp 0x594b
xorl %esi, %esi
cmpl %ecx, %ebx
setl %sil
jmp 0x594b
xorl %esi, %esi
cmpl %ecx, %ebx
setge %sil
jmp 0x594b
testl %ecx, %ecx
je 0x599b
movl %ebx, %eax
cltd
idivl %ecx
movl %edx, %ebx
jmp 0x594b
movslq %ebx, %rax
movslq %ecx, %rbx
leaq (%rbx,%rax), %rcx
addq $0x3fff, %rcx           # imm = 0x3FFF
cmpq $0x7ffe, %rcx           # imm = 0x7FFE
ja 0x599b
addq %rax, %rbx
jmp 0x594b
movslq %ebx, %rbx
movslq %ecx, %rax
subq %rax, %rbx
jmp 0x592c
testl %ecx, %ecx
js 0x5947
shll %cl, %ebx
jmp 0x594b
xorl %esi, %esi
cmpl %ecx, %ebx
setg %sil
jmp 0x594b
xorl %esi, %esi
cmpl %ecx, %ebx
setle %sil
jmp 0x594b
movslq %ebx, %rax
movslq %ecx, %rbx
imulq %rax, %rbx
leaq 0x3fff(%rbx), %rax
cmpq $0x7ffe, %rax           # imm = 0x7FFE
jbe 0x594b
jmp 0x599b
xorl %esi, %esi
cmpl %ecx, %ebx
setne %sil
jmp 0x594b
negb %cl
sarl %cl, %ebx
addl $-0x3e, %r14d
cmpl $0x5, %r14d
ja 0x5969
testl %esi, %esi
jne 0x5866
leaq 0x22670(%rip), %rax     # 0x27fd4
movzwl (%rax), %ebx
jmp 0x599d
movl %ebx, %edi
addq $0x7e8, %rsp            # imm = 0x7E8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x314c
movl %r12d, %edi
movl %ebx, %esi
movl %ebp, %edx
callq 0x276b
jmp 0x599d
callq 0x283f
jmp 0x599b
callq 0x2819
xorl %ebx, %ebx
movl %ebx, %eax
addq $0x7e8, %rsp            # imm = 0x7E8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq 0x7640(%rip), %rax      # 0xcff8
movq (%rax), %rdi
leaq 0x3d2e(%rip), %rsi      # 0x96f0
movl %r15d, %edx
movl %ebp, %ecx
xorl %eax, %eax
callq 0x2180
jmp 0x599d
movq 0x7621(%rip), %rcx      # 0xcff8
movq (%rcx), %rdi
leaq 0x3d9e(%rip), %rsi      # 0x977f
movl %eax, %edx
xorl %eax, %eax
callq 0x2180
jmp 0x51c5
xorl %edi, %edi
callq 0x2200