// File: pfnet-research[P]pml/src/test.cpp
// Function: translation_rand_test::translation_rand_test()
PML_TEST(translation_rand_test) {
    using namespace ast;
    using namespace mdp;
    assert_eq(
            translate_to_mdp(ast::rand_expr_t{1, 2}).mdp,
            mdp_t {
                "default",
                {
                    mdp::variable_t{"location", bound_t{0, 1}, 0},
                    mdp::variable_t{"v0", bound_t{1, 2}, 1}
                },
                {}, // constants
                {
                    command_t {
                        make<mdp::binop_expr_t>(
                            make<mdp::var_expr_t>("location"),
                            make<mdp::int_expr_t>(0),
                            mdp::binop_kind_t::Eq),
                        {
                            branch_t {
                                make<mdp::binop_expr_t>(
                                    make<mdp::int_expr_t>(1),
                                    make<mdp::int_expr_t>(2),
                                    mdp::binop_kind_t::Div),
                                make<mdp::binop_expr_t>(
                                    make<mdp::binop_expr_t>(
                                        make<mdp::var_expr_t>("location'"),
                                        make<mdp::int_expr_t>(1),
                                        mdp::binop_kind_t::Eq),
                                    make<mdp::binop_expr_t>(
                                        make<mdp::var_expr_t>("v0'"),
                                        make<mdp::int_expr_t>(1),
                                        mdp::binop_kind_t::Eq),
                                    mdp::binop_kind_t::And)
                            },
                            branch_t {
                                make<mdp::binop_expr_t>(
                                    make<mdp::int_expr_t>(1),
                                    make<mdp::int_expr_t>(2),
                                    mdp::binop_kind_t::Div),
                                make<mdp::binop_expr_t>(
                                    make<mdp::binop_expr_t>(
                                        make<mdp::var_expr_t>("location'"),
                                        make<mdp::int_expr_t>(1),
                                        mdp::binop_kind_t::Eq),
                                    make<mdp::binop_expr_t>(
                                        make<mdp::var_expr_t>("v0'"),
                                        make<mdp::int_expr_t>(2),
                                        mdp::binop_kind_t::Eq),
                                    mdp::binop_kind_t::And)
                            }
                        }
                    }
                }
            });
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x5e0, %rsp            # imm = 0x5E0
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rdi
movq %rdi, -0x480(%rbp)
callq 0x71f20
movq -0x480(%rbp), %rax
leaq 0x79a6b(%rip), %rcx     # 0xe67b8
movq %rcx, (%rax)
leaq -0xb8(%rbp), %rdi
movl $0x1, %esi
movl $0x2, %edx
callq 0x4c8d0
jmp 0x6cd68
leaq -0xa8(%rbp), %rdi
leaq -0xb8(%rbp), %rsi
callq 0x8afa0
jmp 0x6cd7d
leaq -0xa8(%rbp), %rax
movq %rax, -0x498(%rbp)
leaq -0x130(%rbp), %rax
movq %rax, -0x490(%rbp)
leaq -0x131(%rbp), %rdi
movq %rdi, -0x488(%rbp)
callq 0xa660
movq -0x490(%rbp), %rdi
movq -0x488(%rbp), %rdx
leaq 0x32e79(%rip), %rsi     # 0x9fc3a
callq 0x1dd10
jmp 0x6cdc8
movb $0x1, -0x475(%rbp)
leaq -0x110(%rbp), %rax
movq %rax, -0x4a8(%rbp)
movb $0x1, -0x20d(%rbp)
leaq -0x1a8(%rbp), %rax
movq %rax, -0x1b0(%rbp)
leaq -0x1d1(%rbp), %rdi
movq %rdi, -0x4a0(%rbp)
callq 0xa660
movq -0x4a0(%rbp), %rdx
leaq 0x2c351(%rip), %rsi     # 0x99164
leaq -0x1d0(%rbp), %rdi
callq 0x1dd10
jmp 0x6ce21
movl $0x0, -0x1dc(%rbp)
movl $0x1, -0x1d8(%rbp)
leaq -0x1a8(%rbp), %rdi
leaq -0x1d0(%rbp), %rsi
leaq -0x1dc(%rbp), %rdx
xorl %ecx, %ecx
callq 0x7a3c0
jmp 0x6ce53
leaq -0x178(%rbp), %rax
movq %rax, -0x4b8(%rbp)
movq %rax, -0x1b0(%rbp)
leaq -0x201(%rbp), %rdi
movq %rdi, -0x4b0(%rbp)
callq 0xa660
movq -0x4b0(%rbp), %rdx
leaq 0x32de7(%rip), %rsi     # 0x9fc70
leaq -0x200(%rbp), %rdi
callq 0x1dd10
jmp 0x6ce97
movq -0x4b8(%rbp), %rdi
movl $0x1, -0x20c(%rbp)
movl $0x2, -0x208(%rbp)
leaq -0x200(%rbp), %rsi
leaq -0x20c(%rbp), %rdx
movl $0x1, %ecx
callq 0x7a3c0
jmp 0x6cecc
movb $0x0, -0x20d(%rbp)
leaq -0x1a8(%rbp), %rax
movq %rax, -0x148(%rbp)
movq $0x2, -0x140(%rbp)
leaq -0x20e(%rbp), %rdi
movq %rdi, -0x4c0(%rbp)
callq 0x7a440
movq -0x4a8(%rbp), %rdi
movq -0x4c0(%rbp), %rcx
movq -0x148(%rbp), %rsi
movq -0x140(%rbp), %rdx
callq 0x7a460
jmp 0x6cf22
movb $0x1, -0x474(%rbp)
leaq -0xf8(%rbp), %rdi
movq %rdi, -0x4d8(%rbp)
xorps %xmm0, %xmm0
movups %xmm0, -0xf8(%rbp)
movq $0x0, -0xe8(%rbp)
callq 0x7a4e0
movb $0x1, -0x473(%rbp)
leaq -0xe0(%rbp), %rax
movq %rax, -0x4d0(%rbp)
movb $0x1, -0x471(%rbp)
leaq -0x248(%rbp), %rax
movq %rax, -0x4c8(%rbp)
movq %rax, -0x250(%rbp)
leaq 0x2c1db(%rip), %rsi     # 0x99164
leaq -0x270(%rbp), %rdi
callq 0x68420
jmp 0x6cf97
movl $0x0, -0x284(%rbp)
leaq -0x280(%rbp), %rdi
leaq -0x284(%rbp), %rsi
callq 0x68450
jmp 0x6cfb6
movl $0x8, -0x288(%rbp)
leaq -0x260(%rbp), %rdi
leaq -0x270(%rbp), %rsi
leaq -0x280(%rbp), %rdx
leaq -0x288(%rbp), %rcx
callq 0x683e0
jmp 0x6cfe3
movq -0x4c8(%rbp), %rdi
leaq -0x260(%rbp), %rsi
callq 0x7a500
movb $0x1, -0x470(%rbp)
leaq -0x238(%rbp), %rax
movq %rax, -0x4e8(%rbp)
movb $0x1, -0x46e(%rbp)
leaq -0x2d8(%rbp), %rax
movq %rax, -0x4e0(%rbp)
movq %rax, -0x2e0(%rbp)
movl $0x1, -0x304(%rbp)
leaq -0x300(%rbp), %rdi
leaq -0x304(%rbp), %rsi
callq 0x68450
jmp 0x6d046
movl $0x2, -0x31c(%rbp)
leaq -0x318(%rbp), %rdi
leaq -0x31c(%rbp), %rsi
callq 0x68450
jmp 0x6d065
movl $0x1, -0x320(%rbp)
leaq -0x2f0(%rbp), %rdi
leaq -0x300(%rbp), %rsi
leaq -0x318(%rbp), %rdx
leaq -0x320(%rbp), %rcx
callq 0x68480
jmp 0x6d092
movq -0x4e0(%rbp), %rdi
leaq -0x2f0(%rbp), %rsi
callq 0x7a500
movb $0x1, -0x3a5(%rbp)
leaq -0x2c8(%rbp), %rax
movq %rax, -0x4f0(%rbp)
leaq 0x32bb2(%rip), %rsi     # 0x9fc73
leaq -0x350(%rbp), %rdi
callq 0x68500
jmp 0x6d0cf
movl $0x1, -0x364(%rbp)
leaq -0x360(%rbp), %rdi
leaq -0x364(%rbp), %rsi
callq 0x68450
jmp 0x6d0ee
movl $0x8, -0x368(%rbp)
leaq -0x340(%rbp), %rdi
leaq -0x350(%rbp), %rsi
leaq -0x360(%rbp), %rdx
leaq -0x368(%rbp), %rcx
callq 0x683e0
jmp 0x6d11b
leaq 0x32b5b(%rip), %rsi     # 0x9fc7d
leaq -0x388(%rbp), %rdi
callq 0x68530
jmp 0x6d130
movl $0x1, -0x39c(%rbp)
leaq -0x398(%rbp), %rdi
leaq -0x39c(%rbp), %rsi
callq 0x68450
jmp 0x6d14f
movl $0x8, -0x3a0(%rbp)
leaq -0x378(%rbp), %rdi
leaq -0x388(%rbp), %rsi
leaq -0x398(%rbp), %rdx
leaq -0x3a0(%rbp), %rcx
callq 0x683e0
jmp 0x6d17c
movl $0xa, -0x3a4(%rbp)
leaq -0x330(%rbp), %rdi
leaq -0x340(%rbp), %rsi
leaq -0x378(%rbp), %rdx
leaq -0x3a4(%rbp), %rcx
callq 0x684c0
jmp 0x6d1a9
movq -0x4f0(%rbp), %rdi
leaq -0x330(%rbp), %rsi
callq 0x7a500
movb $0x0, -0x3a5(%rbp)
leaq -0x2b8(%rbp), %rax
movq %rax, -0x500(%rbp)
movq %rax, %rcx
movq %rcx, -0x4f8(%rbp)
movq %rax, -0x2e0(%rbp)
movl $0x1, -0x3cc(%rbp)
leaq -0x3c8(%rbp), %rdi
leaq -0x3cc(%rbp), %rsi
callq 0x68450
jmp 0x6d201
movl $0x2, -0x3e4(%rbp)
leaq -0x3e0(%rbp), %rdi
leaq -0x3e4(%rbp), %rsi
callq 0x68450
jmp 0x6d220
movl $0x1, -0x3e8(%rbp)
leaq -0x3b8(%rbp), %rdi
leaq -0x3c8(%rbp), %rsi
leaq -0x3e0(%rbp), %rdx
leaq -0x3e8(%rbp), %rcx
callq 0x68480
jmp 0x6d24d
movq -0x500(%rbp), %rdi
leaq -0x3b8(%rbp), %rsi
callq 0x7a500
movq -0x4f8(%rbp), %rax
movb $0x1, -0x46d(%rbp)
addq $0x10, %rax
movq %rax, -0x508(%rbp)
leaq 0x329f3(%rip), %rsi     # 0x9fc73
leaq -0x418(%rbp), %rdi
callq 0x68500
jmp 0x6d28e
movl $0x1, -0x42c(%rbp)
leaq -0x428(%rbp), %rdi
leaq -0x42c(%rbp), %rsi
callq 0x68450
jmp 0x6d2ad
movl $0x8, -0x430(%rbp)
leaq -0x408(%rbp), %rdi
leaq -0x418(%rbp), %rsi
leaq -0x428(%rbp), %rdx
leaq -0x430(%rbp), %rcx
callq 0x683e0
jmp 0x6d2da
leaq 0x3299c(%rip), %rsi     # 0x9fc7d
leaq -0x450(%rbp), %rdi
callq 0x68530
jmp 0x6d2ef
movl $0x2, -0x464(%rbp)
leaq -0x460(%rbp), %rdi
leaq -0x464(%rbp), %rsi
callq 0x68450
jmp 0x6d30e
movl $0x8, -0x468(%rbp)
leaq -0x440(%rbp), %rdi
leaq -0x450(%rbp), %rsi
leaq -0x460(%rbp), %rdx
leaq -0x468(%rbp), %rcx
callq 0x683e0
jmp 0x6d33b
movl $0xa, -0x46c(%rbp)
leaq -0x3f8(%rbp), %rdi
leaq -0x408(%rbp), %rsi
leaq -0x440(%rbp), %rdx
leaq -0x46c(%rbp), %rcx
callq 0x684c0
jmp 0x6d368
movq -0x508(%rbp), %rdi
leaq -0x3f8(%rbp), %rsi
callq 0x7a500
movb $0x0, -0x46d(%rbp)
movb $0x0, -0x46e(%rbp)
leaq -0x2d8(%rbp), %rax
movq %rax, -0x298(%rbp)
movq $0x2, -0x290(%rbp)
leaq -0x46f(%rbp), %rdi
movq %rdi, -0x510(%rbp)
callq 0x7a530
movq -0x4e8(%rbp), %rdi
movq -0x510(%rbp), %rcx
movq -0x298(%rbp), %rsi
movq -0x290(%rbp), %rdx
callq 0x7a550
jmp 0x6d3d8
movb $0x0, -0x470(%rbp)
movb $0x0, -0x471(%rbp)
leaq -0x248(%rbp), %rax
movq %rax, -0x220(%rbp)
movq $0x1, -0x218(%rbp)
leaq -0x472(%rbp), %rdi
movq %rdi, -0x518(%rbp)
callq 0x7a5d0
movq -0x4d0(%rbp), %rdi
movq -0x518(%rbp), %rcx
movq -0x220(%rbp), %rsi
movq -0x218(%rbp), %rdx
callq 0x7a5f0
jmp 0x6d435
movq -0x498(%rbp), %rsi
movq -0x480(%rbp), %rdi
movb $0x0, -0x473(%rbp)
movb $0x0, -0x474(%rbp)
movb $0x0, -0x475(%rbp)
leaq -0x130(%rbp), %rdx
callq 0x79300
jmp 0x6d466
leaq -0x130(%rbp), %rdi
callq 0xc340
leaq -0x472(%rbp), %rdi
callq 0xd360
leaq -0x248(%rbp), %rax
movq %rax, -0x528(%rbp)
addq $0x28, %rax
movq %rax, -0x520(%rbp)
movq -0x520(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x530(%rbp)
callq 0xce20
movq -0x528(%rbp), %rcx
movq -0x530(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x520(%rbp)
jne 0x6d497
leaq -0x46f(%rbp), %rdi
callq 0xd0d0
leaq -0x2d8(%rbp), %rax
movq %rax, -0x540(%rbp)
addq $0x40, %rax
movq %rax, -0x538(%rbp)
movq -0x538(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0x548(%rbp)
callq 0xcfe0
movq -0x540(%rbp), %rcx
movq -0x548(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x538(%rbp)
jne 0x6d4ed
leaq -0x3f8(%rbp), %rdi
callq 0x7a670
leaq -0x440(%rbp), %rdi
callq 0x7a670
leaq -0x460(%rbp), %rdi
callq 0x7a690
leaq -0x450(%rbp), %rdi
callq 0x7a6b0
leaq -0x408(%rbp), %rdi
callq 0x7a670
leaq -0x428(%rbp), %rdi
callq 0x7a690
leaq -0x418(%rbp), %rdi
callq 0x7a6b0
leaq -0x3b8(%rbp), %rdi
callq 0x7a670
leaq -0x3e0(%rbp), %rdi
callq 0x7a690
leaq -0x3c8(%rbp), %rdi
callq 0x7a690
leaq -0x330(%rbp), %rdi
callq 0x7a670
leaq -0x378(%rbp), %rdi
callq 0x7a670
leaq -0x398(%rbp), %rdi
callq 0x7a690
leaq -0x388(%rbp), %rdi
callq 0x7a6b0
leaq -0x340(%rbp), %rdi
callq 0x7a670
leaq -0x360(%rbp), %rdi
callq 0x7a690
leaq -0x350(%rbp), %rdi
callq 0x7a6b0
leaq -0x2f0(%rbp), %rdi
callq 0x7a670
leaq -0x318(%rbp), %rdi
callq 0x7a690
leaq -0x300(%rbp), %rdi
callq 0x7a690
leaq -0x260(%rbp), %rdi
callq 0x7a670
leaq -0x280(%rbp), %rdi
callq 0x7a690
leaq -0x270(%rbp), %rdi
callq 0x7a6b0
leaq -0x20e(%rbp), %rdi
callq 0xe460
leaq -0x1a8(%rbp), %rax
movq %rax, -0x558(%rbp)
addq $0x60, %rax
movq %rax, -0x550(%rbp)
movq -0x550(%rbp), %rdi
addq $-0x30, %rdi
movq %rdi, -0x560(%rbp)
callq 0xdda0
movq -0x558(%rbp), %rcx
movq -0x560(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x550(%rbp)
jne 0x6d657
leaq -0x200(%rbp), %rdi
callq 0xa240
leaq -0x201(%rbp), %rdi
callq 0xa420
leaq -0x1d0(%rbp), %rdi
callq 0xa240
leaq -0x1d1(%rbp), %rdi
callq 0xa420
leaq -0x131(%rbp), %rdi
callq 0xa420
leaq -0xa8(%rbp), %rdi
callq 0x79690
leaq -0xb8(%rbp), %rdi
callq 0x4c930
addq $0x5e0, %rsp            # imm = 0x5E0
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6ddfb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6ddef
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6ddd7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6dd5a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6dd4e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6dd42
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6dd36
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6dcde
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6dc56
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6dc4a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6dc3e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6dbc3
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6dbb7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6dbab
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6db88
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6db7c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6db70
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6db64
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6db58
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6db4c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6db40
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6db34
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6db28
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6db1c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6daf9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6daed
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6dae1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6dad5
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6dac9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6dabd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6dab1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6da4f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
jmp 0x6d9f7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xc0(%rbp)
movl %eax, -0xc4(%rbp)
leaq -0x130(%rbp), %rdi
callq 0xc340
leaq -0x472(%rbp), %rdi
callq 0xd360
leaq -0x248(%rbp), %rax
movq %rax, -0x570(%rbp)
addq $0x28, %rax
movq %rax, -0x568(%rbp)
movq -0x568(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x578(%rbp)
callq 0xce20
movq -0x570(%rbp), %rcx
movq -0x578(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x568(%rbp)
jne 0x6da1c
jmp 0x6da4f
leaq -0x46f(%rbp), %rdi
callq 0xd0d0
leaq -0x2d8(%rbp), %rax
movq %rax, -0x588(%rbp)
addq $0x40, %rax
movq %rax, -0x580(%rbp)
movq -0x580(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0x590(%rbp)
callq 0xcfe0
movq -0x588(%rbp), %rcx
movq -0x590(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x580(%rbp)
jne 0x6da74
leaq -0x3f8(%rbp), %rdi
callq 0x7a670
leaq -0x440(%rbp), %rdi
callq 0x7a670
leaq -0x460(%rbp), %rdi
callq 0x7a690
leaq -0x450(%rbp), %rdi
callq 0x7a6b0
leaq -0x408(%rbp), %rdi
callq 0x7a670
leaq -0x428(%rbp), %rdi
callq 0x7a690
leaq -0x418(%rbp), %rdi
callq 0x7a6b0
testb $0x1, -0x46d(%rbp)
jne 0x6db04
jmp 0x6db10
movq -0x500(%rbp), %rdi
callq 0xceb0
leaq -0x3b8(%rbp), %rdi
callq 0x7a670
leaq -0x3e0(%rbp), %rdi
callq 0x7a690
leaq -0x3c8(%rbp), %rdi
callq 0x7a690
leaq -0x330(%rbp), %rdi
callq 0x7a670
leaq -0x378(%rbp), %rdi
callq 0x7a670
leaq -0x398(%rbp), %rdi
callq 0x7a690
leaq -0x388(%rbp), %rdi
callq 0x7a6b0
leaq -0x340(%rbp), %rdi
callq 0x7a670
leaq -0x360(%rbp), %rdi
callq 0x7a690
leaq -0x350(%rbp), %rdi
callq 0x7a6b0
testb $0x1, -0x3a5(%rbp)
jne 0x6db93
jmp 0x6db9f
movq -0x4e0(%rbp), %rdi
callq 0xceb0
leaq -0x2f0(%rbp), %rdi
callq 0x7a670
leaq -0x318(%rbp), %rdi
callq 0x7a690
leaq -0x300(%rbp), %rdi
callq 0x7a690
testb $0x1, -0x46e(%rbp)
jne 0x6dbce
jmp 0x6dc1b
movq -0x2e0(%rbp), %rax
leaq -0x2d8(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0x598(%rbp)
je 0x6dc19
movq -0x598(%rbp), %rdi
addq $-0x20, %rdi
movq %rdi, -0x5a0(%rbp)
callq 0xcfe0
movq -0x5a0(%rbp), %rax
leaq -0x2d8(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0x598(%rbp)
jne 0x6dbe8
jmp 0x6dc1b
testb $0x1, -0x470(%rbp)
jne 0x6dc26
jmp 0x6dc32
movq -0x4c8(%rbp), %rdi
callq 0xceb0
leaq -0x260(%rbp), %rdi
callq 0x7a670
leaq -0x280(%rbp), %rdi
callq 0x7a690
leaq -0x270(%rbp), %rdi
callq 0x7a6b0
testb $0x1, -0x471(%rbp)
jne 0x6dc61
jmp 0x6dcae
movq -0x250(%rbp), %rax
leaq -0x248(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0x5a8(%rbp)
je 0x6dcac
movq -0x5a8(%rbp), %rdi
addq $-0x28, %rdi
movq %rdi, -0x5b0(%rbp)
callq 0xce20
movq -0x5b0(%rbp), %rax
leaq -0x248(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0x5a8(%rbp)
jne 0x6dc7b
jmp 0x6dcae
testb $0x1, -0x473(%rbp)
jne 0x6dcb9
jmp 0x6dcc5
movq -0x4d8(%rbp), %rdi
callq 0xcc30
testb $0x1, -0x474(%rbp)
jne 0x6dcd0
jmp 0x6dcdc
movq -0x4a8(%rbp), %rdi
callq 0xcc90
jmp 0x6dcde
leaq -0x20e(%rbp), %rdi
callq 0xe460
leaq -0x1a8(%rbp), %rax
movq %rax, -0x5c0(%rbp)
addq $0x60, %rax
movq %rax, -0x5b8(%rbp)
movq -0x5b8(%rbp), %rdi
addq $-0x30, %rdi
movq %rdi, -0x5c8(%rbp)
callq 0xdda0
movq -0x5c0(%rbp), %rcx
movq -0x5c8(%rbp), %rax
cmpq %rcx, %rax
movq %rax, -0x5b8(%rbp)
jne 0x6dd03
jmp 0x6dd36
leaq -0x200(%rbp), %rdi
callq 0xa240
leaq -0x201(%rbp), %rdi
callq 0xa420
leaq -0x1d0(%rbp), %rdi
callq 0xa240
leaq -0x1d1(%rbp), %rdi
callq 0xa420
testb $0x1, -0x20d(%rbp)
jne 0x6dd71
jmp 0x6ddbe
movq -0x1b0(%rbp), %rax
leaq -0x1a8(%rbp), %rcx
cmpq %rax, %rcx
movq %rax, -0x5d0(%rbp)
je 0x6ddbc
movq -0x5d0(%rbp), %rdi
addq $-0x30, %rdi
movq %rdi, -0x5d8(%rbp)
callq 0xdda0
movq -0x5d8(%rbp), %rax
leaq -0x1a8(%rbp), %rcx
cmpq %rcx, %rax
movq %rax, -0x5d0(%rbp)
jne 0x6dd8b
jmp 0x6ddbe
testb $0x1, -0x475(%rbp)
jne 0x6ddc9
jmp 0x6ddd5
movq -0x490(%rbp), %rdi
callq 0xa240
jmp 0x6ddd7
leaq -0x131(%rbp), %rdi
callq 0xa420
leaq -0xa8(%rbp), %rdi
callq 0x79690
leaq -0xb8(%rbp), %rdi
callq 0x4c930
movq -0x480(%rbp), %rdi
callq 0x71f80
movq -0xc0(%rbp), %rdi
callq 0xa650
nopw %cs:(%rax,%rax)
nopl (%rax)