// File: /workspace/github_cpp_makefile_star2_O1/malcolmyeh[P]CC3K/troll.cc
// Function: Troll::dealDamage[abi:cxx11](Character*)
std::string Troll::dealDamage(Character *opponent)
{
    double amount;
    double secondHit;

    std::string combatMsg;
    std::string attacker = this->race;

    int attack = this->Atk;
    int defense = opponent->getDef();
    if (this->stunned)
    {
        this->stunned = false;
        combatMsg = attacker + " is stunned. ";
        return combatMsg;
    }
    if (rand() % 2 == 0)
    {
        combatMsg = attacker + "'s attack missed. ";
        return combatMsg;
    }

    amount = ceil((100.0 / (100.0 + defense)) * attack);
    secondHit = amount * 0.33;

    if (rand() % 3 == 0)
    {
        //double hits player
        combatMsg = attacker + " strikes you twice for " + std::to_string((int)amount) + " + " + std::to_string((int)secondHit) + " damage (HP: " + std::to_string(opponent->getHP()) + "). ";
        opponent->takeDamage((int)(amount + secondHit));
    }
    else if (rand() % 3 == 1)
    {
        //hurts itself with second hit
        combatMsg = attacker + " deals " + std::to_string((int)amount) + " damage to you (HP: " + std::to_string(opponent->getHP()) + "). ";
        combatMsg += attacker + " hurts itself in confusion for " + std::to_string((int)secondHit) + " damage. (HP: " + std::to_string(this->HP) + "). ";
        opponent->takeDamage((int)amount);
        this->takeDamage((int)secondHit);
    }
    else
    {
        opponent->takeDamage((int)amount);
        combatMsg = attacker + " deals " + std::to_string((int)amount) + " damage to you (HP: " + std::to_string(opponent->getHP()) + "). ";
    }

    if (opponent->getHP() == 0)
    {
        combatMsg += "You have been slain.";
    }

    return combatMsg;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x188, %rsp            # imm = 0x188
movq %rdx, %r14
movq %rsi, %r15
movq %rdi, %rbx
leaq 0x10(%rdi), %rax
movq %rax, -0x1a8(%rbp)
movq %rax, (%rdi)
movq $0x0, 0x8(%rdi)
movb $0x0, 0x10(%rdi)
leaq -0x130(%rbp), %r13
movq %r13, -0x10(%r13)
movq 0x18(%rsi), %rsi
movq 0x20(%r15), %rdx
addq %rsi, %rdx
leaq -0x140(%rbp), %rdi
callq 0xa582
movl 0x8(%r15), %r12d
movq (%r14), %rax
movq %r14, -0x110(%rbp)
movq %r14, %rdi
callq *0x10(%rax)
cmpb $0x1, 0x39(%r15)
jne 0x12b9c
movb $0x0, 0x39(%r15)
leaq -0xf8(%rbp), %r15
movq %r15, -0x10(%r15)
movq -0x140(%rbp), %rsi
movq -0x138(%rbp), %rdx
addq %rsi, %rdx
leaq -0x108(%rbp), %rdi
callq 0xa582
leaq 0xadc8(%rip), %rsi      # 0x1d956
leaq -0x108(%rbp), %rdi
callq 0x4280
jmp 0x12be3
movl %eax, %r14d
callq 0x4060
testb $0x1, %al
jne 0x12c15
leaq -0xf8(%rbp), %r15
movq %r15, -0x10(%r15)
movq -0x140(%rbp), %rsi
movq -0x138(%rbp), %rdx
addq %rsi, %rdx
leaq -0x108(%rbp), %rdi
callq 0xa582
leaq 0xad8d(%rip), %rsi      # 0x1d964
leaq -0x108(%rbp), %rdi
callq 0x4280
leaq -0x108(%rbp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x41c0
movq (%r14), %rdi
cmpq %r15, %rdi
je 0x141c9
movq -0xf8(%rbp), %rsi
incq %rsi
callq 0x4170
jmp 0x141c9
cvtsi2sd %r14d, %xmm0
movsd 0xacf6(%rip), %xmm1     # 0x1d918
addsd %xmm1, %xmm0
divsd %xmm0, %xmm1
xorps %xmm0, %xmm0
cvtsi2sd %r12d, %xmm0
mulsd %xmm1, %xmm0
callq 0x4040
movsd 0xaffd(%rip), %xmm1     # 0x1dc40
movsd %xmm0, -0x118(%rbp)
mulsd %xmm0, %xmm1
movsd %xmm1, -0x120(%rbp)
callq 0x4060
imull $0xaaaaaaab, %eax, %eax # imm = 0xAAAAAAAB
addl $0x2aaaaaaa, %eax       # imm = 0x2AAAAAAA
cmpl $0x55555554, %eax       # imm = 0x55555554
jbe 0x12d46
callq 0x4060
cltq
imulq $0x55555556, %rax, %rcx # imm = 0x55555556
movq %rcx, %rdx
shrq $0x3f, %rdx
shrq $0x20, %rcx
addl %edx, %ecx
leal (%rcx,%rcx,2), %ecx
subl %ecx, %eax
cmpl $0x1, %eax
movq -0x110(%rbp), %rdi
jne 0x12deb
leaq -0x38(%rbp), %rax
movq %rax, -0x10(%rax)
movq -0x140(%rbp), %rsi
movq -0x138(%rbp), %rdx
addq %rsi, %rdx
leaq -0x48(%rbp), %rdi
callq 0xa582
leaq 0xacac(%rip), %rsi      # 0x1d977
leaq -0x48(%rbp), %rdi
callq 0x4280
cvttsd2si -0x118(%rbp), %esi
movl %esi, %r13d
negl %r13d
cmovsl %esi, %r13d
movl $0x1, %r12d
cmpl $0xa, %r13d
jb 0x134e7
movl $0x4, %r12d
movl $0xd1b71759, %eax       # imm = 0xD1B71759
movl %r13d, %ecx
cmpl $0x63, %ecx
jbe 0x134d5
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x134e4
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x134e7
movl %ecx, %edx
imulq %rax, %rdx
shrq $0x2d, %rdx
addl $0x4, %r12d
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x12d04
addl $-0x3, %r12d
jmp 0x134e7
leaq -0x58(%rbp), %r13
movq %r13, -0x10(%r13)
movq -0x140(%rbp), %rsi
movq -0x138(%rbp), %rdx
addq %rsi, %rdx
leaq -0x68(%rbp), %rdi
callq 0xa582
leaq 0xaedf(%rip), %rsi      # 0x1dc4e
leaq -0x68(%rbp), %rdi
callq 0x4280
cvttsd2si -0x118(%rbp), %r14d
movl %r14d, %r15d
negl %r15d
cmovsl %r14d, %r15d
movl $0x1, %r12d
cmpl $0xa, %r15d
jb 0x12ea2
movl $0x4, %r12d
movl $0xd1b71759, %eax       # imm = 0xD1B71759
movl %r15d, %ecx
cmpl $0x63, %ecx
jbe 0x12e99
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x12e9f
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x12ea2
movl %ecx, %edx
imulq %rax, %rdx
shrq $0x2d, %rdx
addl $0x4, %r12d
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x12da9
addl $-0x3, %r12d
jmp 0x12ea2
cvttsd2si -0x118(%rbp), %r15d
movq (%rdi), %rax
movl %r15d, %esi
callq *0x48(%rax)
leaq -0x38(%rbp), %r13
movq %r13, -0x10(%r13)
movq -0x140(%rbp), %rsi
movq -0x138(%rbp), %rdx
addq %rsi, %rdx
leaq -0x48(%rbp), %rdi
callq 0xa582
leaq 0xab51(%rip), %rsi      # 0x1d977
leaq -0x48(%rbp), %rdi
callq 0x4280
movl %r15d, %r12d
negl %r12d
cmovsl %r15d, %r12d
movl $0x1, %r14d
cmpl $0xa, %r12d
jb 0x136c2
movl $0x4, %r14d
movl $0xd1b71759, %eax       # imm = 0xD1B71759
movl %r12d, %ecx
cmpl $0x63, %ecx
jbe 0x134db
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x136bf
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x136c2
movl %ecx, %edx
imulq %rax, %rdx
shrq $0x2d, %rdx
addl $0x4, %r14d
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x12e57
addl $-0x3, %r14d
jmp 0x136c2
addl $-0x2, %r12d
jmp 0x12ea2
decl %r12d
shrl $0x1f, %r14d
leal (%r12,%r14), %esi
leaq -0x190(%rbp), %rax
movq %rax, -0x10(%rax)
leaq -0x1a0(%rbp), %rdi
movl $0x2d, %edx
callq 0x41b0
movl %r14d, %edi
addq -0x1a0(%rbp), %rdi
movl %r12d, %esi
movl %r15d, %edx
callq 0xa510
movq -0x68(%rbp), %rcx
movq -0x60(%rbp), %r8
movq -0x198(%rbp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %esi
cmpq %r13, %rcx
je 0x12efc
movq -0x58(%rbp), %rsi
cmpq %rsi, %rax
jbe 0x12f22
movl $0xf, %esi
leaq -0x190(%rbp), %rdi
cmpq %rdi, -0x1a0(%rbp)
je 0x12f1d
movq -0x190(%rbp), %rsi
cmpq %rsi, %rax
jbe 0x12f34
movq -0x1a0(%rbp), %rsi
leaq -0x68(%rbp), %rdi
callq 0x4080
jmp 0x12f44
leaq -0x1a0(%rbp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x4190
leaq -0x78(%rbp), %rdx
movq %rdx, -0x10(%rdx)
movq (%rax), %rsi
leaq 0x10(%rax), %rcx
cmpq %rcx, %rsi
je 0x12f68
movq %rsi, -0x88(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x78(%rbp)
jmp 0x12f70
movupd (%rcx), %xmm0
movupd %xmm0, (%rdx)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, -0x80(%rbp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0xacd3(%rip), %rsi      # 0x1dc66
leaq -0x88(%rbp), %rdi
callq 0x4280
leaq -0x38(%rbp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x12fc3
movq %rdx, -0x48(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x38(%rbp)
jmp 0x12fcd
movupd (%rcx), %xmm0
movupd %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, -0x40(%rbp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
cvttsd2si -0x120(%rbp), %r14d
movl %r14d, %r15d
negl %r15d
cmovsl %r14d, %r15d
movl $0x1, %r12d
cmpl $0xa, %r15d
jb 0x1304d
movl $0x4, %r12d
movl $0xd1b71759, %eax       # imm = 0xD1B71759
movl %r15d, %ecx
cmpl $0x63, %ecx
jbe 0x13044
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x1304a
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x1304d
movl %ecx, %edx
imulq %rax, %rdx
shrq $0x2d, %rdx
addl $0x4, %r12d
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x13011
addl $-0x3, %r12d
jmp 0x1304d
addl $-0x2, %r12d
jmp 0x1304d
decl %r12d
shrl $0x1f, %r14d
leal (%r12,%r14), %esi
leaq -0x170(%rbp), %rax
movq %rax, -0x10(%rax)
leaq -0x180(%rbp), %rdi
movl $0x2d, %edx
callq 0x41b0
movl %r14d, %edi
addq -0x180(%rbp), %rdi
movl %r12d, %esi
movl %r15d, %edx
callq 0xa510
movq -0x48(%rbp), %rcx
movq -0x40(%rbp), %r8
movq -0x178(%rbp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %esi
cmpq %r13, %rcx
je 0x130a7
movq -0x38(%rbp), %rsi
cmpq %rsi, %rax
movq -0x110(%rbp), %r14
jbe 0x130d4
movl $0xf, %esi
leaq -0x170(%rbp), %rdi
cmpq %rdi, -0x180(%rbp)
je 0x130cf
movq -0x170(%rbp), %rsi
cmpq %rsi, %rax
jbe 0x130e6
movq -0x180(%rbp), %rsi
leaq -0x48(%rbp), %rdi
callq 0x4080
jmp 0x130f6
leaq -0x180(%rbp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x4190
leaq -0xb8(%rbp), %rdx
movq %rdx, -0x10(%rdx)
movq (%rax), %rsi
leaq 0x10(%rax), %rcx
cmpq %rcx, %rsi
je 0x13120
movq %rsi, -0xc8(%rbp)
movq (%rcx), %rdx
movq %rdx, -0xb8(%rbp)
jmp 0x13128
movupd (%rcx), %xmm0
movupd %xmm0, (%rdx)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, -0xc0(%rbp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0xa563(%rip), %rsi      # 0x1d6b1
leaq -0xc8(%rbp), %rdi
callq 0x4280
leaq -0xd8(%rbp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x13187
movq %rdx, -0xe8(%rbp)
movq (%rcx), %rdx
movq %rdx, -0xd8(%rbp)
jmp 0x1318f
movupd (%rcx), %xmm0
movupd %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, -0xe0(%rbp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq (%r14), %rax
movq %r14, %rdi
callq *0x18(%rax)
movl %eax, %r12d
movl %eax, %r15d
negl %r15d
cmovsl %eax, %r15d
movl $0x1, %r13d
cmpl $0xa, %r15d
jb 0x13215
movl $0x4, %r13d
movl $0xd1b71759, %eax       # imm = 0xD1B71759
movl %r15d, %ecx
cmpl $0x63, %ecx
jbe 0x1320c
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x13212
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x13215
movl %ecx, %edx
imulq %rax, %rdx
shrq $0x2d, %rdx
addl $0x4, %r13d
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x131d9
addl $-0x3, %r13d
jmp 0x13215
addl $-0x2, %r13d
jmp 0x13215
decl %r13d
shrl $0x1f, %r12d
leal (%r12,%r13), %esi
leaq -0x150(%rbp), %rax
movq %rax, -0x10(%rax)
leaq -0x160(%rbp), %rdi
movl $0x2d, %edx
callq 0x41b0
movl %r12d, %edi
addq -0x160(%rbp), %rdi
movl %r13d, %esi
movl %r15d, %edx
callq 0xa510
movq -0xe8(%rbp), %rcx
movq -0xe0(%rbp), %r8
movq -0x158(%rbp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %esi
leaq -0xd8(%rbp), %r12
cmpq %r12, %rcx
je 0x1327f
movq -0xd8(%rbp), %rsi
cmpq %rsi, %rax
leaq -0x130(%rbp), %r13
jbe 0x132ac
movl $0xf, %esi
leaq -0x150(%rbp), %rdi
cmpq %rdi, -0x160(%rbp)
je 0x132a7
movq -0x150(%rbp), %rsi
cmpq %rsi, %rax
jbe 0x132c1
movq -0x160(%rbp), %rsi
leaq -0xe8(%rbp), %rdi
callq 0x4080
jmp 0x132d1
leaq -0x160(%rbp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x4190
leaq -0x98(%rbp), %rdx
movq %rdx, -0x10(%rdx)
movq (%rax), %rsi
leaq 0x10(%rax), %rcx
cmpq %rcx, %rsi
je 0x132fb
movq %rsi, -0xa8(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x98(%rbp)
jmp 0x13303
movupd (%rcx), %xmm0
movupd %xmm0, (%rdx)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, -0xa0(%rbp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0xa8cc(%rip), %rsi      # 0x1dbf5
leaq -0xa8(%rbp), %rdi
callq 0x4280
leaq -0xf8(%rbp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x13362
movq %rdx, -0x108(%rbp)
movq (%rcx), %rdx
movq %rdx, -0xf8(%rbp)
jmp 0x1336b
movupd (%rcx), %xmm0
movupd %xmm0, (%r15)
movq 0x8(%rax), %rdx
leaq -0x108(%rbp), %r14
movq %rdx, 0x8(%r14)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x41c0
movq (%r14), %rdi
cmpq %r15, %rdi
je 0x133ab
movq -0xf8(%rbp), %rsi
incq %rsi
callq 0x4170
leaq -0x98(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
movq -0x110(%rbp), %r15
je 0x133d1
movq -0x98(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0x160(%rbp), %rdi
leaq -0x150(%rbp), %rax
cmpq %rax, %rdi
je 0x133f3
movq -0x150(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0xe8(%rbp), %rdi
cmpq %r12, %rdi
je 0x1340e
movq -0xd8(%rbp), %rsi
incq %rsi
callq 0x4170
leaq -0xb8(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x1342d
movq -0xb8(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0x180(%rbp), %rdi
leaq -0x170(%rbp), %rax
cmpq %rax, %rdi
je 0x1344f
movq -0x170(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0x48(%rbp), %rdi
leaq -0x38(%rbp), %rax
cmpq %rax, %rdi
je 0x13468
movq -0x38(%rbp), %rsi
incq %rsi
callq 0x4170
leaq -0x78(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x13481
movq -0x78(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0x1a0(%rbp), %rdi
leaq -0x190(%rbp), %rax
cmpq %rax, %rdi
je 0x134a3
movq -0x190(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0x68(%rbp), %rdi
leaq -0x58(%rbp), %rax
cmpq %rax, %rdi
je 0x134bc
movq -0x58(%rbp), %rsi
incq %rsi
callq 0x4170
movsd -0x118(%rbp), %xmm0
addsd -0x120(%rbp), %xmm0
cvttsd2si %xmm0, %esi
jmp 0x141a0
addl $-0x2, %r12d
jmp 0x134e7
addl $-0x2, %r14d
jmp 0x136c2
decl %r12d
movl %esi, -0x118(%rbp)
movl %esi, %r14d
shrl $0x1f, %r14d
leal (%r12,%r14), %esi
leaq -0x78(%rbp), %rax
movq %rax, -0x10(%rax)
leaq -0x88(%rbp), %rdi
movl $0x2d, %edx
callq 0x41b0
movl %r14d, %edi
addq -0x88(%rbp), %rdi
movl %r12d, %esi
movl %r13d, %edx
callq 0xa510
movq -0x48(%rbp), %rcx
movq -0x40(%rbp), %r8
movq -0x80(%rbp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %esi
leaq -0x38(%rbp), %rdi
cmpq %rdi, %rcx
je 0x13548
movq -0x38(%rbp), %rsi
cmpq %rsi, %rax
movq -0x110(%rbp), %r14
jbe 0x1356f
movl $0xf, %esi
leaq -0x78(%rbp), %rdi
cmpq %rdi, -0x88(%rbp)
je 0x1356a
movq -0x78(%rbp), %rsi
cmpq %rsi, %rax
jbe 0x13581
movq -0x88(%rbp), %rsi
leaq -0x48(%rbp), %rdi
callq 0x4080
jmp 0x13591
leaq -0x88(%rbp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x4190
leaq -0xb8(%rbp), %rdx
movq %rdx, -0x10(%rdx)
movq (%rax), %rsi
leaq 0x10(%rax), %rcx
cmpq %rcx, %rsi
je 0x135bb
movq %rsi, -0xc8(%rbp)
movq (%rcx), %rdx
movq %rdx, -0xb8(%rbp)
jmp 0x135c3
movupd (%rcx), %xmm0
movupd %xmm0, (%rdx)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, -0xc0(%rbp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0xa396(%rip), %rsi      # 0x1d97f
leaq -0xc8(%rbp), %rdi
callq 0x4280
leaq -0xd8(%rbp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x13622
movq %rdx, -0xe8(%rbp)
movq (%rcx), %rdx
movq %rdx, -0xd8(%rbp)
jmp 0x1362a
movupd (%rcx), %xmm0
movupd %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, -0xe0(%rbp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq (%r14), %rax
movq %r14, %rdi
callq *0x18(%rax)
movl %eax, %r12d
movl %eax, %r13d
negl %r13d
cmovsl %eax, %r13d
movl $0x1, %r14d
cmpl $0xa, %r13d
jb 0x13896
movl $0x4, %r14d
movl $0xd1b71759, %eax       # imm = 0xD1B71759
movl %r13d, %ecx
cmpl $0x63, %ecx
jbe 0x136b6
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x13893
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x13896
movl %ecx, %edx
imulq %rax, %rdx
shrq $0x2d, %rdx
addl $0x4, %r14d
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x13678
addl $-0x3, %r14d
jmp 0x13896
addl $-0x2, %r14d
jmp 0x13896
decl %r14d
shrl $0x1f, %r15d
leal (%r14,%r15), %esi
leaq -0x78(%rbp), %rax
movq %rax, -0x10(%rax)
leaq -0x88(%rbp), %rdi
movl $0x2d, %edx
callq 0x41b0
movl %r15d, %edi
addq -0x88(%rbp), %rdi
movl %r14d, %esi
movl %r12d, %edx
callq 0xa510
movq -0x48(%rbp), %rcx
movq -0x40(%rbp), %r8
movq -0x80(%rbp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %esi
cmpq %r13, %rcx
je 0x13716
movq -0x38(%rbp), %rsi
cmpq %rsi, %rax
movq -0x110(%rbp), %r14
jbe 0x1373d
movl $0xf, %esi
leaq -0x78(%rbp), %rdi
cmpq %rdi, -0x88(%rbp)
je 0x13738
movq -0x78(%rbp), %rsi
cmpq %rsi, %rax
jbe 0x1374f
movq -0x88(%rbp), %rsi
leaq -0x48(%rbp), %rdi
callq 0x4080
jmp 0x1375f
leaq -0x88(%rbp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x4190
leaq -0xb8(%rbp), %rdx
movq %rdx, -0x10(%rdx)
movq (%rax), %rsi
leaq 0x10(%rax), %rcx
cmpq %rcx, %rsi
je 0x13789
movq %rsi, -0xc8(%rbp)
movq (%rcx), %rdx
movq %rdx, -0xb8(%rbp)
jmp 0x13791
movupd (%rcx), %xmm0
movupd %xmm0, (%rdx)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, -0xc0(%rbp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0xa1c8(%rip), %rsi      # 0x1d97f
leaq -0xc8(%rbp), %rdi
callq 0x4280
leaq -0xd8(%rbp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x137f3
movq %rsi, %r13
movq %rdx, -0xe8(%rbp)
movq (%rcx), %rdx
movq %rdx, -0xd8(%rbp)
jmp 0x137fe
movupd (%rcx), %xmm0
movq %rsi, %r13
movupd %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, -0xe0(%rbp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq (%r14), %rax
movq %r14, %rdi
callq *0x18(%rax)
movl %eax, %r12d
movl %eax, %r15d
negl %r15d
cmovsl %eax, %r15d
movl $0x1, %r14d
cmpl $0xa, %r15d
jb 0x13b5d
movl $0x4, %r14d
movl $0xd1b71759, %eax       # imm = 0xD1B71759
movl %r15d, %ecx
cmpl $0x63, %ecx
jbe 0x1388a
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x13b5a
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x13b5d
movl %ecx, %edx
imulq %rax, %rdx
shrq $0x2d, %rdx
addl $0x4, %r14d
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x1384c
addl $-0x3, %r14d
jmp 0x13b5d
addl $-0x2, %r14d
jmp 0x13b5d
decl %r14d
shrl $0x1f, %r12d
leal (%r14,%r12), %esi
leaq -0x58(%rbp), %rax
movq %rax, -0x10(%rax)
leaq -0x68(%rbp), %rdi
movl $0x2d, %edx
callq 0x41b0
movl %r12d, %edi
addq -0x68(%rbp), %rdi
movl %r14d, %esi
movl %r13d, %edx
callq 0xa510
movq -0xe8(%rbp), %rcx
movq -0xe0(%rbp), %r8
movq -0x60(%rbp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %esi
leaq -0xd8(%rbp), %r12
cmpq %r12, %rcx
je 0x138f4
movq -0xd8(%rbp), %rsi
cmpq %rsi, %rax
jbe 0x13911
movl $0xf, %esi
leaq -0x58(%rbp), %rdi
cmpq %rdi, -0x68(%rbp)
je 0x1390c
movq -0x58(%rbp), %rsi
cmpq %rsi, %rax
jbe 0x13923
movq -0x68(%rbp), %rsi
leaq -0xe8(%rbp), %rdi
callq 0x4080
jmp 0x13930
leaq -0x68(%rbp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x4190
leaq -0x98(%rbp), %rdx
movq %rdx, -0x10(%rdx)
movq (%rax), %rsi
leaq 0x10(%rax), %rcx
cmpq %rcx, %rsi
je 0x1395a
movq %rsi, -0xa8(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x98(%rbp)
jmp 0x13962
movupd (%rcx), %xmm0
movupd %xmm0, (%rdx)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, -0xa0(%rbp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0xa26d(%rip), %rsi      # 0x1dbf5
leaq -0xa8(%rbp), %rdi
callq 0x4280
leaq -0xf8(%rbp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x139c1
movq %rdx, -0x108(%rbp)
movq (%rcx), %rdx
movq %rdx, -0xf8(%rbp)
jmp 0x139cb
movupd (%rcx), %xmm0
movupd %xmm0, (%r13)
movq 0x8(%rax), %rdx
leaq -0x108(%rbp), %r14
movq %rdx, 0x8(%r14)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x41c0
movq (%r14), %rdi
cmpq %r13, %rdi
je 0x13a0b
movq -0xf8(%rbp), %rsi
incq %rsi
callq 0x4170
leaq -0x98(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x13a2a
movq -0x98(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0x68(%rbp), %rdi
leaq -0x58(%rbp), %rax
cmpq %rax, %rdi
je 0x13a43
movq -0x58(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0xe8(%rbp), %rdi
cmpq %r12, %rdi
je 0x13a5e
movq -0xd8(%rbp), %rsi
incq %rsi
callq 0x4170
leaq -0xb8(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x13a7d
movq -0xb8(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0x88(%rbp), %rdi
leaq -0x78(%rbp), %rax
cmpq %rax, %rdi
je 0x13a99
movq -0x78(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0x48(%rbp), %rdi
leaq -0x38(%rbp), %rax
cmpq %rax, %rdi
je 0x13ab2
movq -0x38(%rbp), %rsi
incq %rsi
callq 0x4170
leaq -0x48(%rbp), %rdi
leaq -0x38(%rbp), %rax
movq %rax, (%rdi)
movq -0x140(%rbp), %rsi
movq -0x138(%rbp), %rdx
addq %rsi, %rdx
callq 0xa582
leaq 0xa190(%rip), %rsi      # 0x1dc6a
leaq -0x48(%rbp), %rdi
callq 0x4280
cvttsd2si -0x120(%rbp), %esi
movl %esi, %r12d
negl %r12d
cmovsl %esi, %r12d
movl $0x1, %r14d
cmpl $0xa, %r12d
jb 0x13d84
movl $0x4, %r14d
movl $0xd1b71759, %eax       # imm = 0xD1B71759
movl %r12d, %ecx
cmpl $0x63, %ecx
jbe 0x13b51
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x13d81
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x13d84
movl %ecx, %edx
imulq %rax, %rdx
shrq $0x2d, %rdx
addl $0x4, %r14d
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x13b13
addl $-0x3, %r14d
jmp 0x13d84
addl $-0x2, %r14d
jmp 0x13d84
decl %r14d
shrl $0x1f, %r12d
leal (%r14,%r12), %esi
leaq -0x58(%rbp), %rax
movq %rax, -0x10(%rax)
leaq -0x68(%rbp), %rdi
movl $0x2d, %edx
callq 0x41b0
movl %r12d, %edi
addq -0x68(%rbp), %rdi
movl %r14d, %esi
movl %r15d, %edx
callq 0xa510
movq -0xe8(%rbp), %rcx
movq -0xe0(%rbp), %r8
movq -0x60(%rbp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %esi
cmpq %r13, %rcx
je 0x13bb4
movq -0xd8(%rbp), %rsi
cmpq %rsi, %rax
jbe 0x13bd1
movl $0xf, %esi
leaq -0x58(%rbp), %rdi
cmpq %rdi, -0x68(%rbp)
je 0x13bcc
movq -0x58(%rbp), %rsi
cmpq %rsi, %rax
jbe 0x13be3
movq -0x68(%rbp), %rsi
leaq -0xe8(%rbp), %rdi
callq 0x4080
jmp 0x13bf0
leaq -0x68(%rbp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x4190
leaq -0x98(%rbp), %rdx
movq %rdx, -0x10(%rdx)
movq (%rax), %rsi
leaq 0x10(%rax), %rcx
cmpq %rcx, %rsi
je 0x13c1a
movq %rsi, -0xa8(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x98(%rbp)
jmp 0x13c22
movupd (%rcx), %xmm0
movupd %xmm0, (%rdx)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, -0xa0(%rbp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x9fad(%rip), %rsi      # 0x1dbf5
leaq -0xa8(%rbp), %rdi
callq 0x4280
leaq -0xf8(%rbp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x13c81
movq %rdx, -0x108(%rbp)
movq (%rcx), %rdx
movq %rdx, -0xf8(%rbp)
jmp 0x13c8a
movupd (%rcx), %xmm0
movupd %xmm0, (%r15)
movq 0x8(%rax), %rdx
leaq -0x108(%rbp), %r14
movq %rdx, 0x8(%r14)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq %rbx, %rdi
movq %r14, %rsi
callq 0x41c0
movq (%r14), %rdi
cmpq %r15, %rdi
je 0x13cca
movq -0xf8(%rbp), %rsi
incq %rsi
callq 0x4170
leaq -0x98(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x13ce9
movq -0x98(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0x68(%rbp), %rdi
leaq -0x58(%rbp), %rax
cmpq %rax, %rdi
je 0x13d02
movq -0x58(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0xe8(%rbp), %rdi
cmpq %r13, %rdi
leaq -0x130(%rbp), %r13
je 0x13d24
movq -0xd8(%rbp), %rsi
incq %rsi
callq 0x4170
leaq -0xb8(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x13d43
movq -0xb8(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0x88(%rbp), %rdi
leaq -0x78(%rbp), %rax
cmpq %rax, %rdi
je 0x13d5f
movq -0x78(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0x48(%rbp), %rdi
leaq -0x38(%rbp), %rax
cmpq %rax, %rdi
je 0x141a9
movq -0x38(%rbp), %rsi
incq %rsi
callq 0x4170
jmp 0x141a9
decl %r14d
movl %esi, -0x120(%rbp)
movl %esi, %r13d
shrl $0x1f, %r13d
leal (%r14,%r13), %esi
leaq -0x88(%rbp), %rdi
leaq -0x78(%rbp), %rax
movq %rax, (%rdi)
movl $0x2d, %edx
callq 0x41b0
movl %r13d, %edi
addq -0x88(%rbp), %rdi
movl %r14d, %esi
movl %r12d, %edx
callq 0xa510
movq -0x48(%rbp), %rcx
movq -0x40(%rbp), %r8
movq -0x80(%rbp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %esi
leaq -0x38(%rbp), %rdi
cmpq %rdi, %rcx
je 0x13de4
movq -0x38(%rbp), %rsi
cmpq %rsi, %rax
leaq -0xd8(%rbp), %r14
leaq -0xb8(%rbp), %r12
jbe 0x13e12
movl $0xf, %esi
leaq -0x78(%rbp), %rdi
cmpq %rdi, -0x88(%rbp)
je 0x13e0d
movq -0x78(%rbp), %rsi
cmpq %rsi, %rax
jbe 0x13e24
movq -0x88(%rbp), %rsi
leaq -0x48(%rbp), %rdi
callq 0x4080
jmp 0x13e34
leaq -0x88(%rbp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x4190
movq %r12, -0xc8(%rbp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x13e5a
movq %rdx, -0xc8(%rbp)
movq (%rcx), %rdx
movq %rdx, -0xb8(%rbp)
jmp 0x13e64
movupd (%rcx), %xmm0
movupd %xmm0, (%r12)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, -0xc0(%rbp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x9e00(%rip), %rsi      # 0x1dc8a
leaq -0xc8(%rbp), %rdi
callq 0x4280
movq %r14, -0xe8(%rbp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x13ebf
movq %rdx, -0xe8(%rbp)
movq (%rcx), %rdx
movq %rdx, -0xd8(%rbp)
jmp 0x13ec8
movupd (%rcx), %xmm0
movupd %xmm0, (%r14)
movq 0x8(%rax), %rdx
movq %rdx, -0xe0(%rbp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl 0x10(%r15), %r12d
movl %r12d, %r13d
negl %r13d
cmovsl %r12d, %r13d
movl $0x1, %r14d
cmpl $0xa, %r13d
jb 0x13f46
movl $0x4, %r14d
movl $0xd1b71759, %eax       # imm = 0xD1B71759
movl %r13d, %ecx
cmpl $0x63, %ecx
jbe 0x13f3d
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x13f43
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x13f46
movl %ecx, %edx
imulq %rax, %rdx
shrq $0x2d, %rdx
addl $0x4, %r14d
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x13f0a
addl $-0x3, %r14d
jmp 0x13f46
addl $-0x2, %r14d
jmp 0x13f46
decl %r14d
shrl $0x1f, %r12d
leal (%r14,%r12), %esi
leaq -0x68(%rbp), %rdi
leaq -0x58(%rbp), %rax
movq %rax, (%rdi)
movl $0x2d, %edx
callq 0x41b0
addq -0x68(%rbp), %r12
movq %r12, %rdi
movl %r14d, %esi
movl %r13d, %edx
callq 0xa510
movq -0xe8(%rbp), %rcx
movq -0xe0(%rbp), %r8
movq -0x60(%rbp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %esi
leaq -0xd8(%rbp), %r12
cmpq %r12, %rcx
je 0x13fa3
movq -0xd8(%rbp), %rsi
cmpq %rsi, %rax
leaq -0x130(%rbp), %r13
movq -0x110(%rbp), %r14
jbe 0x13fce
movl $0xf, %esi
leaq -0x58(%rbp), %rdi
cmpq %rdi, -0x68(%rbp)
je 0x13fc9
movq -0x58(%rbp), %rsi
cmpq %rsi, %rax
jbe 0x13fe0
movq -0x68(%rbp), %rsi
leaq -0xe8(%rbp), %rdi
callq 0x4080
jmp 0x13fed
leaq -0x68(%rbp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x4190
leaq -0x98(%rbp), %rsi
movq %rsi, -0xa8(%rbp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x1401a
movq %rdx, -0xa8(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x98(%rbp)
jmp 0x14022
movupd (%rcx), %xmm0
movupd %xmm0, (%rsi)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, -0xa0(%rbp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x9bad(%rip), %rsi      # 0x1dbf5
leaq -0xa8(%rbp), %rdi
callq 0x4280
leaq -0xf8(%rbp), %rsi
movq %rsi, -0x108(%rbp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x14084
movq %rdx, -0x108(%rbp)
movq (%rcx), %rdx
movq %rdx, -0xf8(%rbp)
jmp 0x1408c
movupd (%rcx), %xmm0
movupd %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, -0x100(%rbp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq -0x108(%rbp), %rsi
movq -0x100(%rbp), %rdx
movq %rbx, %rdi
callq 0x4080
movq -0x108(%rbp), %rdi
leaq -0xf8(%rbp), %rax
cmpq %rax, %rdi
je 0x140de
movq -0xf8(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0xa8(%rbp), %rdi
leaq -0x98(%rbp), %rax
cmpq %rax, %rdi
je 0x14100
movq -0x98(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0x68(%rbp), %rdi
leaq -0x58(%rbp), %rax
cmpq %rax, %rdi
je 0x14119
movq -0x58(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0xe8(%rbp), %rdi
cmpq %r12, %rdi
je 0x14134
movq -0xd8(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0xc8(%rbp), %rdi
leaq -0xb8(%rbp), %rax
cmpq %rax, %rdi
je 0x14156
movq -0xb8(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0x88(%rbp), %rdi
leaq -0x78(%rbp), %rax
cmpq %rax, %rdi
je 0x14172
movq -0x78(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0x48(%rbp), %rdi
leaq -0x38(%rbp), %rax
cmpq %rax, %rdi
je 0x1418b
movq -0x38(%rbp), %rsi
incq %rsi
callq 0x4170
movq (%r14), %rax
movq %r14, %rdi
movl -0x118(%rbp), %esi
callq *0x48(%rax)
movl -0x120(%rbp), %esi
movq (%r15), %rax
movq %r15, %rdi
callq *0x48(%rax)
movq -0x110(%rbp), %rdi
movq (%rdi), %rax
callq *0x18(%rax)
testl %eax, %eax
jne 0x141c9
leaq 0x97d3(%rip), %rsi      # 0x1d994
movq %rbx, %rdi
callq 0x4280
movq -0x140(%rbp), %rdi
cmpq %r13, %rdi
je 0x141e4
movq -0x130(%rbp), %rsi
incq %rsi
callq 0x4170
movq %rbx, %rax
addq $0x188, %rsp            # imm = 0x188
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %r14
movq -0x108(%rbp), %rdi
leaq -0xf8(%rbp), %rax
cmpq %rax, %rdi
je 0x14223
movq -0xf8(%rbp), %rsi
incq %rsi
callq 0x4170
jmp 0x14223
movq %rax, %r14
movq -0xa8(%rbp), %rdi
leaq -0x98(%rbp), %rax
cmpq %rax, %rdi
je 0x1424a
movq -0x98(%rbp), %rsi
incq %rsi
callq 0x4170
jmp 0x1424a
movq %rax, %r14
movq -0x68(%rbp), %rdi
leaq -0x58(%rbp), %rax
cmpq %rax, %rdi
je 0x14268
movq -0x58(%rbp), %rsi
incq %rsi
callq 0x4170
jmp 0x14268
movq %rax, %r14
movq -0xe8(%rbp), %rdi
leaq -0xd8(%rbp), %rax
cmpq %rax, %rdi
je 0x1428f
movq -0xd8(%rbp), %rsi
incq %rsi
callq 0x4170
jmp 0x1428f
movq %rax, %r14
movq -0xc8(%rbp), %rdi
leaq -0xb8(%rbp), %rax
jmp 0x14464
jmp 0x14356
jmp 0x1437a
jmp 0x1437a
movq %rax, %r14
leaq -0x98(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x142dd
movq -0x98(%rbp), %rsi
incq %rsi
callq 0x4170
jmp 0x142dd
jmp 0x145a6
movq %rax, %r14
movq -0x68(%rbp), %rdi
leaq -0x58(%rbp), %rax
cmpq %rax, %rdi
je 0x14426
movq -0x58(%rbp), %rsi
incq %rsi
callq 0x4170
jmp 0x14426
movq %rax, %r14
leaq -0x98(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x14326
movq -0x98(%rbp), %rsi
incq %rsi
callq 0x4170
jmp 0x14326
movq %rax, %r14
movq -0x68(%rbp), %rdi
leaq -0x58(%rbp), %rax
cmpq %rax, %rdi
je 0x14437
movq -0x58(%rbp), %rsi
incq %rsi
callq 0x4170
jmp 0x14437
jmp 0x1434c
jmp 0x14356
movq %rax, %r14
jmp 0x14459
jmp 0x1437a
movq %rax, %r14
jmp 0x14478
jmp 0x1437a
movq %rax, %r14
movq -0x48(%rbp), %rdi
cmpq %r13, %rdi
jne 0x144a5
jmp 0x145a9
jmp 0x145a6
movq %rax, %r14
jmp 0x14494
jmp 0x145a6
movq %rax, %r14
leaq -0x98(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x143ae
movq -0x98(%rbp), %rsi
incq %rsi
callq 0x4170
jmp 0x143ae
movq %rax, %r14
movq -0x160(%rbp), %rdi
leaq -0x150(%rbp), %rax
cmpq %rax, %rdi
je 0x144b1
movq -0x150(%rbp), %rsi
incq %rsi
callq 0x4170
jmp 0x144b1
movq %rax, %r14
jmp 0x144d3
movq %rax, %r14
jmp 0x144f2
movq %rax, %r14
jmp 0x14514
movq %rax, %r14
jmp 0x1452d
movq %rax, %r14
jmp 0x14546
movq %rax, %r14
jmp 0x14568
movq %rax, %r14
movq -0x68(%rbp), %rdi
cmpq %r13, %rdi
jne 0x14575
jmp 0x145a9
jmp 0x145a6
movq %rax, %r14
movq -0xe8(%rbp), %rdi
cmpq %r13, %rdi
jne 0x1444a
jmp 0x14459
movq %rax, %r14
movq -0xe8(%rbp), %rdi
leaq -0xd8(%rbp), %rax
cmpq %rax, %rdi
je 0x14459
movq -0xd8(%rbp), %rsi
incq %rsi
callq 0x4170
leaq -0xb8(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x14478
movq -0xb8(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0x88(%rbp), %rdi
leaq -0x78(%rbp), %rax
cmpq %rax, %rdi
je 0x14494
movq -0x78(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0x48(%rbp), %rdi
leaq -0x38(%rbp), %rax
cmpq %rax, %rdi
je 0x145a9
movq -0x38(%rbp), %rsi
jmp 0x14595
movq %rax, %r14
movq -0xe8(%rbp), %rdi
leaq -0xd8(%rbp), %rax
cmpq %rax, %rdi
je 0x144d3
movq -0xd8(%rbp), %rsi
incq %rsi
callq 0x4170
leaq -0xb8(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x144f2
movq -0xb8(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0x180(%rbp), %rdi
leaq -0x170(%rbp), %rax
cmpq %rax, %rdi
je 0x14514
movq -0x170(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0x48(%rbp), %rdi
leaq -0x38(%rbp), %rax
cmpq %rax, %rdi
je 0x1452d
movq -0x38(%rbp), %rsi
incq %rsi
callq 0x4170
leaq -0x78(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x14546
movq -0x78(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0x1a0(%rbp), %rdi
leaq -0x190(%rbp), %rax
cmpq %rax, %rdi
je 0x14568
movq -0x190(%rbp), %rsi
incq %rsi
callq 0x4170
movq -0x68(%rbp), %rdi
leaq -0x58(%rbp), %rax
cmpq %rax, %rdi
je 0x145a9
movq -0x58(%rbp), %rsi
jmp 0x14595
jmp 0x1457f
jmp 0x145a6
movq %rax, %r14
movq -0x108(%rbp), %rdi
cmpq %r15, %rdi
je 0x145a9
movq -0xf8(%rbp), %rsi
incq %rsi
callq 0x4170
jmp 0x145a9
jmp 0x145a6
movq %rax, %r14
jmp 0x145cb
movq %rax, %r14
movq -0x140(%rbp), %rdi
leaq -0x130(%rbp), %rax
cmpq %rax, %rdi
je 0x145cb
movq -0x130(%rbp), %rsi
incq %rsi
callq 0x4170
movq (%rbx), %rdi
cmpq -0x1a8(%rbp), %rdi
je 0x145e9
movq -0x1a8(%rbp), %rax
movq (%rax), %rsi
incq %rsi
callq 0x4170
movq %r14, %rdi
callq 0x4250
nopl (%rax)