// File: BohangZhang[P]Sorcery-C-Project/player.cc
// Function: Player::play(int)
void Player::play(int i) { // call Game notify()
    if (getHand()->getHand().size() < i) throw 7; // Number; The card doesn't exist
    else {
        shared_ptr<Card> c = getHand()->getHand()[i - 1];
        if (getMagic() < c->getCost()) throw 6; // Number; You don't have enough Magic
        string card_type = c->getType();
        if (card_type == "Enchantment") throw 8; // Number; Wrong command
        else if (card_type == "Spell") {
            c->action();
            getHand()->pop(i);
        } else if (card_type == "Ritual") {
            ritual = dynamic_pointer_cast<Ritual>(c);
            game->notifyRitual("REnter", ritual);
            getHand()->pop(i);
        } else {
            if (isSlotFull()) {
                throw 2;
            } else {
                shared_ptr<Minion> m = dynamic_pointer_cast<Minion>(c);
                getSlot()->push(m);
                getHand()->pop(i);
                game->notify("Enter", m);
            }
        }
        subMagic(c->getCost());
        for (auto it = this->getSlot()->getSlot().begin(); it != this->getSlot()->getSlot().end(); ) {
            if ((*it)->ifDead()) {
                this->getGraveyard()->pushfirst((*it));
                this->getSlot()->pop((*it));
            } else {
                ++it;
            }
        }
        for (auto it = this->getGame()->getNoncurrent()->getSlot()->getSlot().begin(); 
             it != this->getGame()->getNoncurrent()->getSlot()->getSlot().end(); ) {
            if ((*it)->ifDead()) {
                this->getGame()->getNoncurrent()->getGraveyard()->pushfirst((*it));
                this->getGame()->getNoncurrent()->getSlot()->pop((*it));
            } else {
                ++it;
            }
        }
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x460, %rsp            # imm = 0x460
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movq -0x8(%rbp), %rsi
movq %rsi, -0x2c8(%rbp)
leaq -0x20(%rbp), %rdi
movq %rdi, -0x2c0(%rbp)
callq 0x2a770
movq -0x2c0(%rbp), %rdi
callq 0x12e10
movq %rax, %rdi
callq 0x278e0
movq %rax, -0x2b8(%rbp)
jmp 0x2ac1a
movq -0x2b8(%rbp), %rdi
callq 0x1d510
movq %rax, -0x2d0(%rbp)
movslq -0xc(%rbp), %rax
movq %rax, -0x2d8(%rbp)
leaq -0x20(%rbp), %rdi
callq 0x12e30
movq -0x2d8(%rbp), %rcx
movq -0x2d0(%rbp), %rax
cmpq %rcx, %rax
jae 0x2ac91
movl $0x4, %edi
callq 0x6160
movq %rax, %rdi
movl $0x7, (%rdi)
movq 0x2932a(%rip), %rsi     # 0x53f98
xorl %eax, %eax
movl %eax, %edx
callq 0x6430
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x20(%rbp), %rdi
callq 0x12e30
jmp 0x2ba30
movq -0x2c8(%rbp), %rsi
leaq -0x50(%rbp), %rdi
movq %rdi, -0x2e8(%rbp)
callq 0x2a770
movq -0x2e8(%rbp), %rdi
callq 0x12e10
movq %rax, %rdi
callq 0x278e0
movq %rax, -0x2e0(%rbp)
jmp 0x2acc5
movq -0x2e0(%rbp), %rdi
movl -0xc(%rbp), %eax
decl %eax
movslq %eax, %rsi
callq 0x287a0
movq %rax, %rsi
leaq -0x40(%rbp), %rdi
movq %rdi, -0x2f8(%rbp)
callq 0x1a1f0
leaq -0x50(%rbp), %rdi
callq 0x12e30
movq -0x2c8(%rbp), %rdi
callq 0x2a620
movq -0x2f8(%rbp), %rdi
movl %eax, -0x2f0(%rbp)
callq 0x15c20
movq %rax, %rdi
callq 0x19c80
movl %eax, -0x2ec(%rbp)
jmp 0x2ad23
movl -0x2f0(%rbp), %eax
movl -0x2ec(%rbp), %ecx
cmpl %ecx, %eax
jge 0x2ad86
movl $0x4, %edi
callq 0x6160
movq %rax, %rdi
movl $0x6, (%rdi)
movq 0x2924b(%rip), %rsi     # 0x53f98
xorl %eax, %eax
movl %eax, %edx
callq 0x6430
jmp 0x2ba39
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x50(%rbp), %rdi
callq 0x12e30
jmp 0x2ba30
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x2ba1c
leaq -0x40(%rbp), %rdi
callq 0x15c20
movq %rax, %rsi
leaq -0x70(%rbp), %rdi
callq 0x19c20
jmp 0x2ad9d
leaq 0x16a30(%rip), %rsi     # 0x417d4
leaq -0x70(%rbp), %rdi
callq 0x12920
movb %al, -0x2f9(%rbp)
jmp 0x2adb5
movb -0x2f9(%rbp), %al
testb $0x1, %al
jne 0x2adc1
jmp 0x2adfa
movl $0x4, %edi
callq 0x6160
movq %rax, %rdi
movl $0x8, (%rdi)
movq 0x291bd(%rip), %rsi     # 0x53f98
xorl %eax, %eax
movl %eax, %edx
callq 0x6430
jmp 0x2ba39
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x2ba13
leaq 0x15a49(%rip), %rsi     # 0x4084a
leaq -0x70(%rbp), %rdi
callq 0x12920
movb %al, -0x2fa(%rbp)
jmp 0x2ae12
movb -0x2fa(%rbp), %al
testb $0x1, %al
jne 0x2ae1e
jmp 0x2ae8d
leaq -0x40(%rbp), %rdi
callq 0x15c20
movq %rax, %rdi
movq (%rdi), %rax
movq 0x40(%rax), %rax
callq *%rax
jmp 0x2ae35
movq -0x2c8(%rbp), %rsi
leaq -0x80(%rbp), %rdi
movq %rdi, -0x308(%rbp)
callq 0x2a770
movq -0x308(%rbp), %rdi
callq 0x12e10
movq %rax, %rdi
movl -0xc(%rbp), %esi
callq 0x27990
jmp 0x2ae65
leaq -0x80(%rbp), %rdi
callq 0x12e30
jmp 0x2b292
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x80(%rbp), %rdi
callq 0x12e30
jmp 0x2ba13
leaq 0x159af(%rip), %rsi     # 0x40843
leaq -0x70(%rbp), %rdi
callq 0x12920
movb %al, -0x309(%rbp)
jmp 0x2aea5
movb -0x309(%rbp), %al
testb $0x1, %al
jne 0x2aeb4
jmp 0x2b039
leaq -0x90(%rbp), %rdi
movq %rdi, -0x328(%rbp)
leaq -0x40(%rbp), %rsi
callq 0x3ac90
movq -0x328(%rbp), %rsi
movq -0x2c8(%rbp), %rdi
addq $0x68, %rdi
callq 0x3a790
movq -0x328(%rbp), %rdi
callq 0x12e70
movq -0x2c8(%rbp), %rdi
addq $0x88, %rdi
callq 0x12a20
movq %rax, -0x320(%rbp)
leaq -0xb1(%rbp), %rdi
movq %rdi, -0x318(%rbp)
callq 0x6470
movq -0x318(%rbp), %rdx
leaq 0x16a8e(%rip), %rsi     # 0x419b7
leaq -0xb0(%rbp), %rdi
callq 0x12870
jmp 0x2af37
movq -0x2c8(%rbp), %rsi
addq $0x68, %rsi
leaq -0xc8(%rbp), %rdi
movq %rdi, -0x330(%rbp)
callq 0x25f70
movq -0x320(%rbp), %rdi
movq -0x330(%rbp), %rdx
leaq -0xb0(%rbp), %rsi
callq 0x25aa0
jmp 0x2af71
leaq -0xc8(%rbp), %rdi
callq 0x12e70
leaq -0xb0(%rbp), %rdi
callq 0x64c8
leaq -0xb1(%rbp), %rdi
callq 0x62f0
movq -0x2c8(%rbp), %rsi
leaq -0xd8(%rbp), %rdi
movq %rdi, -0x338(%rbp)
callq 0x2a770
movq -0x338(%rbp), %rdi
callq 0x12e10
movq %rax, %rdi
movl -0xc(%rbp), %esi
callq 0x27990
jmp 0x2afc8
leaq -0xd8(%rbp), %rdi
callq 0x12e30
jmp 0x2b290
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x2b00b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0xc8(%rbp), %rdi
callq 0x12e70
leaq -0xb0(%rbp), %rdi
callq 0x64c8
leaq -0xb1(%rbp), %rdi
callq 0x62f0
jmp 0x2ba13
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0xd8(%rbp), %rdi
callq 0x12e30
jmp 0x2ba13
movq -0x2c8(%rbp), %rdi
callq 0x2a920
movb %al, -0x339(%rbp)
jmp 0x2b04d
movb -0x339(%rbp), %al
testb $0x1, %al
jne 0x2b059
jmp 0x2b081
movl $0x4, %edi
callq 0x6160
movq %rax, %rdi
movl $0x2, (%rdi)
movq 0x28f25(%rip), %rsi     # 0x53f98
xorl %eax, %eax
movl %eax, %edx
callq 0x6430
jmp 0x2ba39
leaq -0xe8(%rbp), %rdi
movq %rdi, -0x358(%rbp)
leaq -0x40(%rbp), %rsi
callq 0x3ad20
movq -0x2c8(%rbp), %rsi
leaq -0xf8(%rbp), %rdi
movq %rdi, -0x360(%rbp)
callq 0x2a6b0
movq -0x360(%rbp), %rdi
callq 0x12af0
movq -0x358(%rbp), %rsi
movq %rax, -0x350(%rbp)
leaq -0x108(%rbp), %rdi
movq %rdi, -0x348(%rbp)
callq 0x12c10
movq -0x350(%rbp), %rdi
movq -0x348(%rbp), %rsi
callq 0x3d2b0
jmp 0x2b0f4
leaq -0x108(%rbp), %rdi
callq 0x12d50
leaq -0xf8(%rbp), %rdi
callq 0x12b30
movq -0x2c8(%rbp), %rsi
leaq -0x118(%rbp), %rdi
movq %rdi, -0x368(%rbp)
callq 0x2a770
movq -0x368(%rbp), %rdi
callq 0x12e10
movq %rax, %rdi
movl -0xc(%rbp), %esi
callq 0x27990
jmp 0x2b13f
leaq -0x118(%rbp), %rdi
callq 0x12e30
movq -0x2c8(%rbp), %rdi
addq $0x88, %rdi
callq 0x12a20
movq %rax, -0x378(%rbp)
leaq -0x139(%rbp), %rdi
movq %rdi, -0x370(%rbp)
callq 0x6470
movq -0x370(%rbp), %rdx
leaq 0x16824(%rip), %rsi     # 0x419aa
leaq -0x138(%rbp), %rdi
callq 0x12870
jmp 0x2b194
leaq -0x150(%rbp), %rdi
movq %rdi, -0x380(%rbp)
leaq -0xe8(%rbp), %rsi
callq 0x12c10
movq -0x378(%rbp), %rdi
movq -0x380(%rbp), %rdx
leaq -0x138(%rbp), %rsi
callq 0x22cc0
jmp 0x2b1ca
leaq -0x150(%rbp), %rdi
callq 0x12d50
leaq -0x138(%rbp), %rdi
callq 0x64c8
leaq -0x139(%rbp), %rdi
callq 0x62f0
leaq -0xe8(%rbp), %rdi
callq 0x12d50
jmp 0x2b28e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x108(%rbp), %rdi
callq 0x12d50
leaq -0xf8(%rbp), %rdi
callq 0x12b30
jmp 0x2b27d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x118(%rbp), %rdi
callq 0x12e30
jmp 0x2b27d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x2b271
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x150(%rbp), %rdi
callq 0x12d50
leaq -0x138(%rbp), %rdi
callq 0x64c8
leaq -0x139(%rbp), %rdi
callq 0x62f0
leaq -0xe8(%rbp), %rdi
callq 0x12d50
jmp 0x2ba13
jmp 0x2b290
jmp 0x2b292
jmp 0x2b294
leaq -0x40(%rbp), %rdi
callq 0x15c20
movq %rax, %rdi
callq 0x19c80
movl %eax, -0x384(%rbp)
jmp 0x2b2ad
movl -0x384(%rbp), %esi
movq -0x2c8(%rbp), %rdi
callq 0x2a7c0
jmp 0x2b2c1
movq -0x2c8(%rbp), %rsi
leaq -0x168(%rbp), %rdi
movq %rdi, -0x398(%rbp)
callq 0x2a6b0
movq -0x398(%rbp), %rdi
callq 0x12af0
movq %rax, %rdi
callq 0x3d220
movq %rax, -0x390(%rbp)
jmp 0x2b2f8
movq -0x390(%rbp), %rdi
callq 0x12b50
movq %rax, -0x158(%rbp)
leaq -0x168(%rbp), %rdi
callq 0x12b30
movq -0x2c8(%rbp), %rsi
leaq -0x180(%rbp), %rdi
movq %rdi, -0x3a8(%rbp)
callq 0x2a6b0
movq -0x3a8(%rbp), %rdi
callq 0x12af0
movq %rax, %rdi
callq 0x3d220
movq %rax, -0x3a0(%rbp)
jmp 0x2b34e
movq -0x3a0(%rbp), %rdi
callq 0x12b80
movq %rax, -0x170(%rbp)
leaq -0x158(%rbp), %rdi
leaq -0x170(%rbp), %rsi
callq 0x12bb0
movb %al, -0x3a9(%rbp)
leaq -0x180(%rbp), %rdi
callq 0x12b30
movb -0x3a9(%rbp), %al
testb $0x1, %al
jne 0x2b395
jmp 0x2b569
leaq -0x158(%rbp), %rdi
callq 0x12bf0
movq %rax, %rdi
callq 0x12d30
movq %rax, %rdi
movq (%rdi), %rax
movq 0xc0(%rax), %rax
callq *%rax
movb %al, -0x3aa(%rbp)
jmp 0x2b3c0
movb -0x3aa(%rbp), %al
testb $0x1, %al
jne 0x2b3cf
jmp 0x2b558
movq -0x2c8(%rbp), %rsi
leaq -0x190(%rbp), %rdi
movq %rdi, -0x3c8(%rbp)
callq 0x2a6e0
movq -0x3c8(%rbp), %rdi
callq 0x3ab30
movq %rax, -0x3c0(%rbp)
leaq -0x158(%rbp), %rdi
callq 0x12bf0
movq %rax, %rsi
leaq -0x1a0(%rbp), %rdi
movq %rdi, -0x3b8(%rbp)
callq 0x12c10
movq -0x3c0(%rbp), %rdi
movq -0x3b8(%rbp), %rsi
callq 0x26f20
jmp 0x2b433
leaq -0x1a0(%rbp), %rdi
callq 0x12d50
leaq -0x190(%rbp), %rdi
callq 0x3a9d0
movq -0x2c8(%rbp), %rsi
leaq -0x1b0(%rbp), %rdi
movq %rdi, -0x3e0(%rbp)
callq 0x2a6b0
movq -0x3e0(%rbp), %rdi
callq 0x12af0
movq %rax, -0x3d8(%rbp)
leaq -0x158(%rbp), %rdi
callq 0x12bf0
movq %rax, %rsi
leaq -0x1c0(%rbp), %rdi
movq %rdi, -0x3d0(%rbp)
callq 0x12c10
movq -0x3d8(%rbp), %rdi
movq -0x3d0(%rbp), %rsi
callq 0x3d2d0
jmp 0x2b4af
leaq -0x1c0(%rbp), %rdi
callq 0x12d50
leaq -0x1b0(%rbp), %rdi
callq 0x12b30
jmp 0x2b564
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x168(%rbp), %rdi
callq 0x12b30
jmp 0x2ba13
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x180(%rbp), %rdi
callq 0x12b30
jmp 0x2ba13
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x1a0(%rbp), %rdi
callq 0x12d50
leaq -0x190(%rbp), %rdi
callq 0x3a9d0
jmp 0x2ba13
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x1c0(%rbp), %rdi
callq 0x12d50
leaq -0x1b0(%rbp), %rdi
callq 0x12b30
jmp 0x2ba13
leaq -0x158(%rbp), %rdi
callq 0x12d70
jmp 0x2b317
movq -0x2c8(%rbp), %rsi
leaq -0x1f8(%rbp), %rdi
movq %rdi, -0x3e8(%rbp)
callq 0x2a670
movq -0x3e8(%rbp), %rdi
callq 0x12a20
movq %rax, %rsi
leaq -0x1e8(%rbp), %rdi
callq 0x22910
jmp 0x2b5a0
leaq -0x1e8(%rbp), %rdi
callq 0x12980
movq %rax, %rsi
leaq -0x1d8(%rbp), %rdi
movq %rdi, -0x3f8(%rbp)
callq 0x2a6b0
movq -0x3f8(%rbp), %rdi
callq 0x12af0
movq %rax, %rdi
callq 0x3d220
movq %rax, -0x3f0(%rbp)
jmp 0x2b5df
movq -0x3f0(%rbp), %rdi
callq 0x12b50
movq %rax, -0x1c8(%rbp)
leaq -0x1d8(%rbp), %rdi
callq 0x12b30
leaq -0x1e8(%rbp), %rdi
callq 0x12a00
leaq -0x1f8(%rbp), %rdi
callq 0x12a70
movq -0x2c8(%rbp), %rsi
leaq -0x230(%rbp), %rdi
movq %rdi, -0x400(%rbp)
callq 0x2a670
movq -0x400(%rbp), %rdi
callq 0x12a20
movq %rax, %rsi
leaq -0x220(%rbp), %rdi
callq 0x22910
jmp 0x2b64d
leaq -0x220(%rbp), %rdi
callq 0x12980
movq %rax, %rsi
leaq -0x210(%rbp), %rdi
movq %rdi, -0x410(%rbp)
callq 0x2a6b0
movq -0x410(%rbp), %rdi
callq 0x12af0
movq %rax, %rdi
callq 0x3d220
movq %rax, -0x408(%rbp)
jmp 0x2b68c
movq -0x408(%rbp), %rdi
callq 0x12b80
movq %rax, -0x200(%rbp)
leaq -0x1c8(%rbp), %rdi
leaq -0x200(%rbp), %rsi
callq 0x12bb0
movb %al, -0x411(%rbp)
leaq -0x210(%rbp), %rdi
callq 0x12b30
leaq -0x220(%rbp), %rdi
callq 0x12a00
leaq -0x230(%rbp), %rdi
callq 0x12a70
movb -0x411(%rbp), %al
testb $0x1, %al
jne 0x2b6eb
jmp 0x2b9ff
leaq -0x1c8(%rbp), %rdi
callq 0x12bf0
movq %rax, %rdi
callq 0x12d30
movq %rax, %rdi
movq (%rdi), %rax
movq 0xc0(%rax), %rax
callq *%rax
movb %al, -0x412(%rbp)
jmp 0x2b716
movb -0x412(%rbp), %al
testb $0x1, %al
jne 0x2b725
jmp 0x2b9ee
movq -0x2c8(%rbp), %rsi
leaq -0x260(%rbp), %rdi
movq %rdi, -0x420(%rbp)
callq 0x2a670
movq -0x420(%rbp), %rdi
callq 0x12a20
movq %rax, %rsi
leaq -0x250(%rbp), %rdi
callq 0x22910
jmp 0x2b75c
leaq -0x250(%rbp), %rdi
callq 0x12980
movq %rax, %rsi
leaq -0x240(%rbp), %rdi
movq %rdi, -0x438(%rbp)
callq 0x2a6e0
movq -0x438(%rbp), %rdi
callq 0x3ab30
movq %rax, -0x430(%rbp)
leaq -0x1c8(%rbp), %rdi
callq 0x12bf0
movq %rax, %rsi
leaq -0x270(%rbp), %rdi
movq %rdi, -0x428(%rbp)
callq 0x12c10
movq -0x430(%rbp), %rdi
movq -0x428(%rbp), %rsi
callq 0x26f20
jmp 0x2b7c8
leaq -0x270(%rbp), %rdi
callq 0x12d50
leaq -0x240(%rbp), %rdi
callq 0x3a9d0
leaq -0x250(%rbp), %rdi
callq 0x12a00
leaq -0x260(%rbp), %rdi
callq 0x12a70
movq -0x2c8(%rbp), %rsi
leaq -0x2a0(%rbp), %rdi
movq %rdi, -0x440(%rbp)
callq 0x2a670
movq -0x440(%rbp), %rdi
callq 0x12a20
movq %rax, %rsi
leaq -0x290(%rbp), %rdi
callq 0x22910
jmp 0x2b82f
leaq -0x290(%rbp), %rdi
callq 0x12980
movq %rax, %rsi
leaq -0x280(%rbp), %rdi
movq %rdi, -0x458(%rbp)
callq 0x2a6b0
movq -0x458(%rbp), %rdi
callq 0x12af0
movq %rax, -0x450(%rbp)
leaq -0x1c8(%rbp), %rdi
callq 0x12bf0
movq %rax, %rsi
leaq -0x2b0(%rbp), %rdi
movq %rdi, -0x448(%rbp)
callq 0x12c10
movq -0x450(%rbp), %rdi
movq -0x448(%rbp), %rsi
callq 0x3d2d0
jmp 0x2b89b
leaq -0x2b0(%rbp), %rdi
callq 0x12d50
leaq -0x280(%rbp), %rdi
callq 0x12b30
leaq -0x290(%rbp), %rdi
callq 0x12a00
leaq -0x2a0(%rbp), %rdi
callq 0x12a70
jmp 0x2b9fa
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x2b902
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x1d8(%rbp), %rdi
callq 0x12b30
leaq -0x1e8(%rbp), %rdi
callq 0x12a00
leaq -0x1f8(%rbp), %rdi
callq 0x12a70
jmp 0x2ba13
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x2b945
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x210(%rbp), %rdi
callq 0x12b30
leaq -0x220(%rbp), %rdi
callq 0x12a00
leaq -0x230(%rbp), %rdi
callq 0x12a70
jmp 0x2ba13
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x2b994
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x270(%rbp), %rdi
callq 0x12d50
leaq -0x240(%rbp), %rdi
callq 0x3a9d0
leaq -0x250(%rbp), %rdi
callq 0x12a00
leaq -0x260(%rbp), %rdi
callq 0x12a70
jmp 0x2ba13
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
jmp 0x2b9e0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x28(%rbp)
movl %eax, -0x2c(%rbp)
leaq -0x2b0(%rbp), %rdi
callq 0x12d50
leaq -0x280(%rbp), %rdi
callq 0x12b30
leaq -0x290(%rbp), %rdi
callq 0x12a00
leaq -0x2a0(%rbp), %rdi
callq 0x12a70
jmp 0x2ba13
leaq -0x1c8(%rbp), %rdi
callq 0x12d70
jmp 0x2b616
leaq -0x70(%rbp), %rdi
callq 0x64c8
leaq -0x40(%rbp), %rdi
callq 0x15c40
jmp 0x2ba27
leaq -0x70(%rbp), %rdi
callq 0x64c8
leaq -0x40(%rbp), %rdi
callq 0x15c40
jmp 0x2ba30
addq $0x460, %rsp            # imm = 0x460
popq %rbp
retq
movq -0x28(%rbp), %rdi
callq 0x6460
nopl (%rax)