// File: 0x0584[P]scmin-plus/src/builtin/builtin.cpp
// Function: builtin::_let(std::shared_ptr<sexpr> const&, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::shared_ptr<sexpr>, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const, std::shared_ptr<sexpr>>>>&)
sexpr_t builtin::_let(const sexpr_t& args, env_t& bindings) {
    if (args->length() < 2) {
        cerr << "Err: let requires an env and sexpr(s)" << endl;
        return nullptr;
    }

    unordered_set<string> seen;
    bool labeled = args->car()->issymb();
    env_t local = bindings;
    sexpr_t walk = labeled ? args->cdr()->car(): args->car(),
        curr;
    sexpr_t let_args, let_args_tail;

    if (not (walk->islist() or walk->isnil())) {
        cerr << "Err: let is mal formatted" << endl;
        return nullptr;
    }
    while (not walk->isnil()) {
        curr = walk->car();
        if (not curr->islist() or curr->length() != 2) {
            cerr << "Err: let bound is mal formatted" << endl;
            return nullptr;
        }
        if (not curr->car()->issymb()) {
            cerr << "Err: cannot bind constant" << endl;
            return nullptr;
        }
        auto sy = any_cast<sexpr_text>(*curr->car()->blob).text();
        if (not seen.insert(sy).second) {
            cerr << "Err: variable appeared twice!" << endl;
            return nil();
        }
        if (labeled) {
            auto tmp = cons(curr->car(), nil());
            if (not let_args) {
                let_args_tail = let_args = tmp;
            } else {
                let_args_tail->setcdr(tmp);
                let_args_tail = let_args_tail->cdr();
            }
        }
        local[sy] = ::eval(curr->cdr()->car(), bindings);
        walk = walk->cdr();
    }
    if (labeled) {
        auto let_lambda = lambda(let_args, cons(symb("begin"),
                                                args->cdr()->cdr()));
        local[any_cast<sexpr_text>(*args->car()->blob).text()] = let_lambda;
    }
    return builtin::_begin(labeled ? args->cdr()->cdr() : args->cdr(), local) ;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x3c0, %rsp            # imm = 0x3C0
movq %rdi, -0x330(%rbp)
movq %rdi, %rax
movq %rax, -0x328(%rbp)
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movq -0x10(%rbp), %rdi
callq 0x4400
movq %rax, %rdi
callq 0x75d0
cmpq $0x2, %rax
jae 0xeef6
movq 0x1f12a(%rip), %rdi     # 0x2dff0
leaq 0x125ea(%rip), %rsi     # 0x214b7
callq 0x32c0
movq %rax, %rdi
movq 0x1f0b4(%rip), %rsi     # 0x2df90
callq 0x32f0
movq -0x330(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x4570
jmp 0xfb99
leaq -0x50(%rbp), %rdi
callq 0x10ec0
movq -0x10(%rbp), %rdi
callq 0x4400
movq %rax, %rsi
leaq -0x68(%rbp), %rdi
callq 0xb520
jmp 0xef16
leaq -0x68(%rbp), %rdi
callq 0x4400
movq %rax, %rdi
callq 0x7500
movb %al, -0x331(%rbp)
jmp 0xef2f
leaq -0x68(%rbp), %rdi
callq 0x4450
movb -0x331(%rbp), %al
andb $0x1, %al
movb %al, -0x51(%rbp)
movq -0x18(%rbp), %rsi
leaq -0xb0(%rbp), %rdi
callq 0xa1d0
jmp 0xef55
movb -0x51(%rbp), %al
movb $0x0, -0xd1(%rbp)
testb $0x1, %al
je 0xefa3
movq -0x10(%rbp), %rdi
callq 0x4400
movq %rax, %rsi
leaq -0xd0(%rbp), %rdi
callq 0xb440
jmp 0xef7d
movb $0x1, -0xd1(%rbp)
leaq -0xd0(%rbp), %rdi
callq 0x4400
movq %rax, %rsi
leaq -0xc0(%rbp), %rdi
callq 0xb520
jmp 0xefa1
jmp 0xefbf
movq -0x10(%rbp), %rdi
callq 0x4400
movq %rax, %rsi
leaq -0xc0(%rbp), %rdi
callq 0xb520
jmp 0xefbd
jmp 0xefbf
testb $0x1, -0xd1(%rbp)
jne 0xefca
jmp 0xefd6
leaq -0xd0(%rbp), %rdi
callq 0x4450
leaq -0xe8(%rbp), %rdi
callq 0x6ef0
leaq -0xf8(%rbp), %rdi
callq 0x6ef0
leaq -0x108(%rbp), %rdi
callq 0x6ef0
leaq -0xc0(%rbp), %rdi
callq 0x4400
movq %rax, %rdi
callq 0x72f0
movb %al, -0x332(%rbp)
jmp 0xf016
movb -0x332(%rbp), %al
testb $0x1, %al
jne 0xf117
jmp 0xf026
leaq -0xc0(%rbp), %rdi
callq 0x4400
movq %rax, %rdi
callq 0x7270
movb %al, -0x333(%rbp)
jmp 0xf042
movb -0x333(%rbp), %al
testb $0x1, %al
jne 0xf117
jmp 0xf052
movq 0x1ef97(%rip), %rdi     # 0x2dff0
leaq 0x1247d(%rip), %rsi     # 0x214dd
callq 0x32c0
movq %rax, -0x340(%rbp)
jmp 0xf06e
movq -0x340(%rbp), %rdi
movq 0x1ef14(%rip), %rsi     # 0x2df90
callq 0x32f0
jmp 0xf083
movq -0x330(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x4570
movl $0x1, -0x10c(%rbp)
jmp 0xfb0b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
jmp 0xfb8e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
leaq -0x68(%rbp), %rdi
callq 0x4450
jmp 0xfb8e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
jmp 0xfb82
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
testb $0x1, -0xd1(%rbp)
jne 0xf0f5
jmp 0xf101
leaq -0xd0(%rbp), %rdi
callq 0x4450
jmp 0xfb82
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
jmp 0xfb52
jmp 0xf119
leaq -0xc0(%rbp), %rdi
callq 0x4400
movq %rax, %rdi
callq 0x7270
movb %al, -0x341(%rbp)
jmp 0xf135
movb -0x341(%rbp), %al
xorb $-0x1, %al
testb $0x1, %al
jne 0xf146
jmp 0xf740
leaq -0xc0(%rbp), %rdi
callq 0x4400
movq %rax, %rsi
leaq -0x120(%rbp), %rdi
callq 0xb520
jmp 0xf163
leaq -0xe8(%rbp), %rdi
movq %rdi, -0x350(%rbp)
leaq -0x120(%rbp), %rsi
movq %rsi, -0x358(%rbp)
callq 0x4420
movq -0x358(%rbp), %rdi
callq 0x4450
movq -0x350(%rbp), %rdi
callq 0x4400
movq %rax, %rdi
callq 0x72f0
movb %al, -0x342(%rbp)
jmp 0xf1ac
movb -0x342(%rbp), %al
testb $0x1, %al
jne 0xf1b8
jmp 0xf1e2
leaq -0xe8(%rbp), %rdi
callq 0x4400
movq %rax, %rdi
callq 0x75d0
movq %rax, -0x360(%rbp)
jmp 0xf1d5
movq -0x360(%rbp), %rax
cmpq $0x2, %rax
je 0xf232
movq 0x1ee07(%rip), %rdi     # 0x2dff0
leaq 0x12307(%rip), %rsi     # 0x214f7
callq 0x32c0
movq %rax, -0x368(%rbp)
jmp 0xf1fe
movq -0x368(%rbp), %rdi
movq 0x1ed84(%rip), %rsi     # 0x2df90
callq 0x32f0
jmp 0xf213
movq -0x330(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x4570
movl $0x1, -0x10c(%rbp)
jmp 0xfb0b
leaq -0xe8(%rbp), %rdi
callq 0x4400
movq %rax, %rsi
leaq -0x130(%rbp), %rdi
callq 0xb520
jmp 0xf24f
leaq -0x130(%rbp), %rdi
callq 0x4400
movq %rax, %rdi
callq 0x7500
movb %al, -0x369(%rbp)
jmp 0xf26b
movb -0x369(%rbp), %al
xorb $-0x1, %al
movb %al, -0x36a(%rbp)
leaq -0x130(%rbp), %rdi
callq 0x4450
movb -0x36a(%rbp), %al
testb $0x1, %al
jne 0xf291
jmp 0xf2fe
movq 0x1ed58(%rip), %rdi     # 0x2dff0
leaq 0x12278(%rip), %rsi     # 0x21517
callq 0x32c0
movq %rax, -0x378(%rbp)
jmp 0xf2ad
movq -0x378(%rbp), %rdi
movq 0x1ecd5(%rip), %rsi     # 0x2df90
callq 0x32f0
jmp 0xf2c2
movq -0x330(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x4570
movl $0x1, -0x10c(%rbp)
jmp 0xfb0b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
leaq -0x130(%rbp), %rdi
callq 0x4450
jmp 0xfb52
leaq -0xe8(%rbp), %rdi
callq 0x4400
movq %rax, %rsi
leaq -0x188(%rbp), %rdi
callq 0xb520
jmp 0xf31b
leaq -0x188(%rbp), %rdi
callq 0x4400
movq %rax, %rdi
callq 0x4520
movq %rax, -0x380(%rbp)
jmp 0xf338
movq -0x380(%rbp), %rsi
leaq -0x178(%rbp), %rdi
callq 0x44d0
jmp 0xf34d
leaq -0x150(%rbp), %rdi
leaq -0x178(%rbp), %rsi
callq 0x3a60
jmp 0xf362
leaq -0x178(%rbp), %rdi
callq 0x4550
leaq -0x188(%rbp), %rdi
callq 0x4450
leaq -0x50(%rbp), %rdi
leaq -0x150(%rbp), %rsi
callq 0x10ee0
movb %dl, -0x389(%rbp)
movq %rax, -0x388(%rbp)
jmp 0xf399
movb -0x389(%rbp), %al
movq -0x388(%rbp), %rcx
movq %rcx, -0x1a8(%rbp)
movb %al, -0x1a0(%rbp)
movq -0x1a8(%rbp), %rax
movq %rax, -0x198(%rbp)
movb -0x1a0(%rbp), %al
movb %al, -0x190(%rbp)
movb -0x190(%rbp), %al
xorb $-0x1, %al
testb $0x1, %al
jne 0xf3de
jmp 0xf474
movq 0x1ec0b(%rip), %rdi     # 0x2dff0
leaq 0x12145(%rip), %rsi     # 0x21531
callq 0x32c0
movq %rax, -0x398(%rbp)
jmp 0xf3fa
movq -0x398(%rbp), %rdi
movq 0x1eb88(%rip), %rsi     # 0x2df90
callq 0x32f0
jmp 0xf40f
movq -0x330(%rbp), %rdi
callq 0x78f0
jmp 0xf41d
movl $0x1, -0x10c(%rbp)
jmp 0xf6c2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
jmp 0xf452
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
leaq -0x178(%rbp), %rdi
callq 0x4550
leaq -0x188(%rbp), %rdi
callq 0x4450
jmp 0xfb52
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
jmp 0xf72f
testb $0x1, -0x51(%rbp)
je 0xf5cf
leaq -0xe8(%rbp), %rdi
callq 0x4400
movq %rax, %rsi
leaq -0x1c8(%rbp), %rdi
callq 0xb520
jmp 0xf49b
leaq -0x1d8(%rbp), %rdi
callq 0x78f0
jmp 0xf4a9
leaq -0x1b8(%rbp), %rdi
leaq -0x1c8(%rbp), %rsi
leaq -0x1d8(%rbp), %rdx
callq 0x7a40
jmp 0xf4c5
leaq -0x1d8(%rbp), %rdi
callq 0x4450
leaq -0x1c8(%rbp), %rdi
callq 0x4450
leaq -0xf8(%rbp), %rdi
callq 0xb5c0
testb $0x1, %al
jne 0xf54b
leaq -0xf8(%rbp), %rdi
leaq -0x1b8(%rbp), %rsi
callq 0xb5e0
movq %rax, %rsi
leaq -0x108(%rbp), %rdi
callq 0xb5e0
jmp 0xf5c3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
jmp 0xf53a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
leaq -0x1d8(%rbp), %rdi
callq 0x4450
leaq -0x1c8(%rbp), %rdi
callq 0x4450
jmp 0xf72f
leaq -0x108(%rbp), %rdi
callq 0x4400
movq %rax, %rdi
leaq -0x1b8(%rbp), %rsi
callq 0xb3d0
jmp 0xf568
leaq -0x108(%rbp), %rdi
callq 0x4400
movq %rax, %rsi
leaq -0x1e8(%rbp), %rdi
callq 0xb440
jmp 0xf585
leaq -0x108(%rbp), %rdi
leaq -0x1e8(%rbp), %rsi
callq 0x4420
leaq -0x1e8(%rbp), %rdi
callq 0x4450
jmp 0xf5c3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
leaq -0x1b8(%rbp), %rdi
callq 0x4450
jmp 0xf72f
leaq -0x1b8(%rbp), %rdi
callq 0x4450
leaq -0xe8(%rbp), %rdi
callq 0x4400
movq %rax, %rsi
leaq -0x218(%rbp), %rdi
callq 0xb440
jmp 0xf5ec
leaq -0x218(%rbp), %rdi
callq 0x4400
movq %rax, %rsi
leaq -0x208(%rbp), %rdi
callq 0xb520
jmp 0xf609
movq -0x18(%rbp), %rdx
leaq -0x1f8(%rbp), %rdi
leaq -0x208(%rbp), %rsi
callq 0x19aa0
jmp 0xf622
leaq -0xb0(%rbp), %rdi
leaq -0x150(%rbp), %rsi
callq 0x10b60
movq %rax, -0x3a0(%rbp)
jmp 0xf63e
movq -0x3a0(%rbp), %rdi
leaq -0x1f8(%rbp), %rsi
movq %rsi, -0x3a8(%rbp)
callq 0x4420
movq -0x3a8(%rbp), %rdi
callq 0x4450
leaq -0x208(%rbp), %rdi
callq 0x4450
leaq -0x218(%rbp), %rdi
callq 0x4450
leaq -0xc0(%rbp), %rdi
callq 0x4400
movq %rax, %rsi
leaq -0x228(%rbp), %rdi
callq 0xb440
jmp 0xf699
leaq -0xc0(%rbp), %rdi
leaq -0x228(%rbp), %rsi
callq 0x4420
leaq -0x228(%rbp), %rdi
callq 0x4450
movl $0x0, -0x10c(%rbp)
leaq -0x150(%rbp), %rdi
callq 0x31d0
movl -0x10c(%rbp), %eax
testl %eax, %eax
jne 0xfb0b
jmp 0xf6de
jmp 0xf119
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
jmp 0xf723
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
jmp 0xf717
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
leaq -0x1f8(%rbp), %rdi
callq 0x4450
leaq -0x208(%rbp), %rdi
callq 0x4450
leaq -0x218(%rbp), %rdi
callq 0x4450
leaq -0x150(%rbp), %rdi
callq 0x31d0
jmp 0xfb52
testb $0x1, -0x51(%rbp)
je 0xfa17
leaq -0x279(%rbp), %rdi
movq %rdi, -0x3b0(%rbp)
callq 0x3500
movq -0x3b0(%rbp), %rdx
leaq 0x11de4(%rip), %rsi     # 0x2154f
leaq -0x278(%rbp), %rdi
callq 0xc230
jmp 0xf779
leaq -0x258(%rbp), %rdi
leaq -0x278(%rbp), %rsi
callq 0x7920
jmp 0xf78e
movq -0x10(%rbp), %rdi
callq 0x4400
movq %rax, %rsi
leaq -0x2a0(%rbp), %rdi
callq 0xb440
jmp 0xf7a8
leaq -0x2a0(%rbp), %rdi
callq 0x4400
movq %rax, %rsi
leaq -0x290(%rbp), %rdi
callq 0xb440
jmp 0xf7c5
leaq -0x248(%rbp), %rdi
leaq -0x258(%rbp), %rsi
leaq -0x290(%rbp), %rdx
callq 0x7a40
jmp 0xf7e1
leaq -0x238(%rbp), %rdi
leaq -0xf8(%rbp), %rsi
leaq -0x248(%rbp), %rdx
callq 0x79c0
jmp 0xf7fd
leaq -0x248(%rbp), %rdi
callq 0x4450
leaq -0x290(%rbp), %rdi
callq 0x4450
leaq -0x2a0(%rbp), %rdi
callq 0x4450
leaq -0x258(%rbp), %rdi
callq 0x4450
leaq -0x278(%rbp), %rdi
callq 0x31d0
leaq -0x279(%rbp), %rdi
callq 0x3310
movq -0x10(%rbp), %rdi
callq 0x4400
movq %rax, %rsi
leaq -0x2f8(%rbp), %rdi
callq 0xb520
jmp 0xf85f
leaq -0x2f8(%rbp), %rdi
callq 0x4400
movq %rax, %rdi
callq 0x4520
movq %rax, -0x3b8(%rbp)
jmp 0xf87c
movq -0x3b8(%rbp), %rsi
leaq -0x2e8(%rbp), %rdi
callq 0x44d0
jmp 0xf891
leaq -0x2c0(%rbp), %rdi
leaq -0x2e8(%rbp), %rsi
callq 0x3a60
jmp 0xf8a6
leaq -0xb0(%rbp), %rdi
leaq -0x2c0(%rbp), %rsi
callq 0x44a0
movq %rax, -0x3c0(%rbp)
jmp 0xf8c2
movq -0x3c0(%rbp), %rdi
leaq -0x238(%rbp), %rsi
callq 0xb5e0
leaq -0x2c0(%rbp), %rdi
callq 0x31d0
leaq -0x2e8(%rbp), %rdi
callq 0x4550
leaq -0x2f8(%rbp), %rdi
callq 0x4450
leaq -0x238(%rbp), %rdi
callq 0x4450
jmp 0xfa17
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
jmp 0xf99b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
jmp 0xf98f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
jmp 0xf983
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
jmp 0xf977
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
jmp 0xf96b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
leaq -0x248(%rbp), %rdi
callq 0x4450
leaq -0x290(%rbp), %rdi
callq 0x4450
leaq -0x2a0(%rbp), %rdi
callq 0x4450
leaq -0x258(%rbp), %rdi
callq 0x4450
leaq -0x278(%rbp), %rdi
callq 0x31d0
leaq -0x279(%rbp), %rdi
callq 0x3310
jmp 0xfb52
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
jmp 0xfa06
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
jmp 0xf9fa
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
jmp 0xf9ee
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
leaq -0x2c0(%rbp), %rdi
callq 0x31d0
leaq -0x2e8(%rbp), %rdi
callq 0x4550
leaq -0x2f8(%rbp), %rdi
callq 0x4450
leaq -0x238(%rbp), %rdi
callq 0x4450
jmp 0xfb52
movb -0x51(%rbp), %al
movb $0x0, -0x319(%rbp)
testb $0x1, %al
je 0xfa65
movq -0x10(%rbp), %rdi
callq 0x4400
movq %rax, %rsi
leaq -0x318(%rbp), %rdi
callq 0xb440
jmp 0xfa3f
movb $0x1, -0x319(%rbp)
leaq -0x318(%rbp), %rdi
callq 0x4400
movq %rax, %rsi
leaq -0x308(%rbp), %rdi
callq 0xb440
jmp 0xfa63
jmp 0xfa81
movq -0x10(%rbp), %rdi
callq 0x4400
movq %rax, %rsi
leaq -0x308(%rbp), %rdi
callq 0xb440
jmp 0xfa7f
jmp 0xfa81
movq -0x330(%rbp), %rdi
leaq -0x308(%rbp), %rsi
leaq -0xb0(%rbp), %rdx
callq 0xe780
jmp 0xfa9d
leaq -0x308(%rbp), %rdi
callq 0x4450
testb $0x1, -0x319(%rbp)
jne 0xfab4
jmp 0xfac0
leaq -0x318(%rbp), %rdi
callq 0x4450
movl $0x1, -0x10c(%rbp)
jmp 0xfb0b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
jmp 0xfaf2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x70(%rbp)
movl %eax, -0x74(%rbp)
leaq -0x308(%rbp), %rdi
callq 0x4450
testb $0x1, -0x319(%rbp)
jne 0xfafd
jmp 0xfb09
leaq -0x318(%rbp), %rdi
callq 0x4450
jmp 0xfb52
leaq -0x108(%rbp), %rdi
callq 0x4450
leaq -0xf8(%rbp), %rdi
callq 0x4450
leaq -0xe8(%rbp), %rdi
callq 0x4450
leaq -0xc0(%rbp), %rdi
callq 0x4450
leaq -0xb0(%rbp), %rdi
callq 0x4250
leaq -0x50(%rbp), %rdi
callq 0x10f20
jmp 0xfb99
leaq -0x108(%rbp), %rdi
callq 0x4450
leaq -0xf8(%rbp), %rdi
callq 0x4450
leaq -0xe8(%rbp), %rdi
callq 0x4450
leaq -0xc0(%rbp), %rdi
callq 0x4450
leaq -0xb0(%rbp), %rdi
callq 0x4250
leaq -0x50(%rbp), %rdi
callq 0x10f20
jmp 0xfba9
movq -0x328(%rbp), %rax
addq $0x3c0, %rsp            # imm = 0x3C0
popq %rbp
retq
movq -0x70(%rbp), %rdi
callq 0x34f0
nopw %cs:(%rax,%rax)