// File: /workspace/github_cpp_makefile_star2_O1/aalto-speech[P]ftk/test/emtest.cc
// Function: FactorGraphTest4::test_method()
BOOST_AUTO_TEST_CASE(FactorGraphTest4)
{
    map<std::string, flt_type> vocab;
    vocab.insert(make_pair("k", 0.0));
    vocab.insert(make_pair("a", 0.0));
    vocab.insert(make_pair("u", 0.0));
    vocab.insert(make_pair("p", 0.0));
    vocab.insert(make_pair("n", 0.0));
    vocab.insert(make_pair("g", 0.0));
    vocab.insert(make_pair("i", 0.0));
    vocab.insert(make_pair("s", 0.0));
    vocab.insert(make_pair("t", 0.0));
    vocab.insert(make_pair("m", 0.0));
    vocab.insert(make_pair("e", 0.0));
    vocab.insert(make_pair("kaupun", 0.0));
    vocab.insert(make_pair("gis", 0.0));
    vocab.insert(make_pair("gistu", 0.0));
    vocab.insert(make_pair("minen", 0.0));
    vocab.insert(make_pair("kau", 0.0));

    FactorGraph fg("kaupungistuminen", start_end, vocab, 6);
    BOOST_CHECK_EQUAL(23, (int)fg.nodes.size());

    StringSet ssvocab(vocab);
    FactorGraph ssfg("kaupungistuminen", start_end, ssvocab);
    BOOST_CHECK(fg.assert_equal(ssfg));

    int node_idx = 0;
    assert_node(fg, node_idx++, start_end, 0, 3);
    assert_node(fg, node_idx++, std::string("k"), 1, 1);
    assert_node(fg, node_idx++, std::string("kau"), 1, 1);
    assert_node(fg, node_idx++, std::string("kaupun"), 1, 3);
    assert_node(fg, node_idx++, std::string("a"), 1, 1);
    assert_node(fg, node_idx++, std::string("u"), 1, 1);
    assert_node(fg, node_idx++, std::string("p"), 2, 1);
    assert_node(fg, node_idx++, std::string("u"), 1, 1);
    assert_node(fg, node_idx++, std::string("n"), 1, 3);
    assert_node(fg, node_idx++, std::string("g"), 2, 1);
    assert_node(fg, node_idx++, std::string("gis"), 2, 1);
    assert_node(fg, node_idx++, std::string("gistu"), 2, 2);
    assert_node(fg, node_idx++, std::string("i"), 1, 1);
    assert_node(fg, node_idx++, std::string("s"), 1, 1);
    assert_node(fg, node_idx++, std::string("t"), 2, 1);
    assert_node(fg, node_idx++, std::string("u"), 1, 2);
    assert_node(fg, node_idx++, std::string("m"), 2, 1);
    assert_node(fg, node_idx++, std::string("minen"), 2, 1);
    assert_node(fg, node_idx++, std::string("i"), 1, 1);
    assert_node(fg, node_idx++, std::string("n"), 1, 1);
    assert_node(fg, node_idx++, std::string("e"), 1, 1);
    assert_node(fg, node_idx++, std::string("n"), 1, 1);
    assert_node(fg, node_idx++, start_end, 2, 0);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x2f8, %rsp            # imm = 0x2F8
leaq -0x70(%rbp), %rax
movl $0x0, (%rax)
xorl %ecx, %ecx
movq %rcx, 0x8(%rax)
movq %rax, 0x10(%rax)
movq %rax, 0x18(%rax)
movq %rcx, 0x20(%rax)
leaq 0x319cd(%rip), %rax     # 0x71ce4
leaq -0x250(%rbp), %rsi
movq %rax, (%rsi)
movq %rcx, 0x8(%rsi)
leaq -0x78(%rbp), %rdi
callq 0x6bdee
leaq 0x31c89(%rip), %rax     # 0x71fbe
leaq -0x250(%rbp), %rsi
movq %rax, (%rsi)
movq $0x0, 0x8(%rsi)
leaq -0x78(%rbp), %rdi
callq 0x6bdee
leaq 0x30cc1(%rip), %rax     # 0x71018
leaq -0x250(%rbp), %rsi
movq %rax, (%rsi)
movq $0x0, 0x8(%rsi)
leaq -0x78(%rbp), %rdi
callq 0x6bdee
leaq 0x31545(%rip), %rax     # 0x718be
leaq -0x250(%rbp), %rsi
movq %rax, (%rsi)
movq $0x0, 0x8(%rsi)
leaq -0x78(%rbp), %rdi
callq 0x6bdee
leaq 0x32c3e(%rip), %rax     # 0x72fd9
leaq -0x250(%rbp), %rsi
movq %rax, (%rsi)
movq $0x0, 0x8(%rsi)
leaq -0x78(%rbp), %rdi
callq 0x6bdee
leaq 0x30d10(%rip), %rax     # 0x710cd
leaq -0x250(%rbp), %rsi
movq %rax, (%rsi)
movq $0x0, 0x8(%rsi)
leaq -0x78(%rbp), %rdi
callq 0x6bdee
leaq 0x313fd(%rip), %rax     # 0x717dc
leaq -0x250(%rbp), %rsi
movq %rax, (%rsi)
movq $0x0, 0x8(%rsi)
leaq -0x78(%rbp), %rdi
callq 0x6bdee
leaq 0x30c0d(%rip), %rax     # 0x7100e
leaq -0x250(%rbp), %rsi
movq %rax, (%rsi)
movq $0x0, 0x8(%rsi)
leaq -0x78(%rbp), %rdi
callq 0x6bdee
leaq 0x31206(%rip), %rax     # 0x71629
leaq -0x250(%rbp), %rsi
movq %rax, (%rsi)
movq $0x0, 0x8(%rsi)
leaq -0x78(%rbp), %rdi
callq 0x6bdee
leaq 0x30f9c(%rip), %rax     # 0x713e1
leaq -0x250(%rbp), %rsi
movq %rax, (%rsi)
movq $0x0, 0x8(%rsi)
leaq -0x78(%rbp), %rdi
callq 0x6bdee
leaq 0x3143f(%rip), %rax     # 0x718a6
leaq -0x250(%rbp), %rsi
movq %rax, (%rsi)
movq $0x0, 0x8(%rsi)
leaq -0x78(%rbp), %rdi
callq 0x6bdee
leaq 0x31b69(%rip), %rax     # 0x71ff2
leaq -0x250(%rbp), %rsi
movq %rax, (%rsi)
movq $0x0, 0x8(%rsi)
leaq -0x78(%rbp), %rdi
callq 0x6bdee
leaq 0x31b4e(%rip), %rax     # 0x71ff9
leaq -0x250(%rbp), %rsi
movq %rax, (%rsi)
movq $0x0, 0x8(%rsi)
leaq -0x78(%rbp), %rdi
callq 0x6bdee
leaq 0x31b30(%rip), %rax     # 0x71ffd
leaq -0x250(%rbp), %rsi
movq %rax, (%rsi)
movq $0x0, 0x8(%rsi)
leaq -0x78(%rbp), %rdi
callq 0x6bdee
leaq 0x31b23(%rip), %rax     # 0x72012
leaq -0x250(%rbp), %rsi
movq %rax, (%rsi)
movq $0x0, 0x8(%rsi)
leaq -0x78(%rbp), %rdi
callq 0x6bdee
leaq 0x31af2(%rip), %rax     # 0x72003
leaq -0x250(%rbp), %rsi
movq %rax, (%rsi)
movq $0x0, 0x8(%rsi)
leaq -0x78(%rbp), %rdi
callq 0x6bdee
leaq -0x240(%rbp), %r15
movq %r15, -0x10(%r15)
leaq 0x31ac9(%rip), %rsi     # 0x72007
leaq 0x31ad2(%rip), %rdx     # 0x72017
leaq -0x250(%rbp), %rdi
callq 0x95e2
leaq 0x4b040(%rip), %rdx     # 0x8b598
leaq -0x110(%rbp), %rdi
leaq -0x250(%rbp), %rsi
leaq -0x78(%rbp), %rcx
movl $0x6, %r8d
xorl %r9d, %r9d
callq 0x10f58
movq -0x250(%rbp), %rdi
cmpq %r15, %rdi
je 0x40589
callq 0x5380
movq 0x4afc0(%rip), %rdi     # 0x8b550
leaq 0x3167b(%rip), %r12     # 0x71c12
leaq -0x2a0(%rbp), %rsi
movq %r12, (%rsi)
leaq 0x31678(%rip), %r14     # 0x71c20
movq %r14, 0x8(%rsi)
leaq 0x314ac(%rip), %r15     # 0x71a5f
leaq -0x290(%rbp), %rcx
movq %r15, (%rcx)
movq %r15, 0x8(%rcx)
movl $0x1c5, %edx            # imm = 0x1C5
callq 0x5760
xorl %eax, %eax
leaq -0x48(%rbp), %rsi
movb %al, 0x8(%rsi)
leaq 0x4a485(%rip), %rcx     # 0x8aa60
movq %rcx, (%rsi)
movq 0x4a9cb(%rip), %r13     # 0x8afb0
movq %r13, 0x10(%rsi)
leaq 0x30dd7(%rip), %rcx     # 0x713c7
movq %rcx, 0x18(%rsi)
leaq -0x98(%rbp), %rcx
movl $0x17, (%rcx)
movq -0xc8(%rbp), %rdx
subq -0xd0(%rbp), %rdx
shrq $0x3, %rdx
imull $0xb6db6db7, %edx, %edx # imm = 0xB6DB6DB7
leaq -0x94(%rbp), %r8
cmpl $0x17, %edx
leaq -0x90(%rbp), %rdi
sete (%rdi)
movl %edx, (%r8)
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rdi)
leaq -0x120(%rbp), %rbx
movq %r12, (%rbx)
movq %r14, 0x8(%rbx)
leaq -0x130(%rbp), %rdx
movq %rcx, (%rdx)
movb %al, -0x248(%rbp)
leaq 0x4a57c(%rip), %rcx     # 0x8abd8
movq %rcx, -0x250(%rbp)
movq %r13, -0x240(%rbp)
movq %rdx, -0x238(%rbp)
leaq -0x128(%rbp), %rdx
movq %r8, (%rdx)
leaq -0x318(%rbp), %r10
movb %al, 0x8(%r10)
movq %rcx, (%r10)
movq %r13, 0x10(%r10)
movq %rdx, 0x18(%r10)
subq $0x8, %rsp
leaq 0x31924(%rip), %r11     # 0x71fc0
leaq 0x31975(%rip), %r12     # 0x72018
movl $0x1c5, %ecx            # imm = 0x1C5
movq %rbx, %rdx
movl $0x1, %r8d
movl $0x2, %r9d
xorl %eax, %eax
pushq %r10
pushq %r11
leaq -0x250(%rbp), %r10
pushq %r10
pushq %r12
pushq $0x2
callq 0x5740
addq $0x30, %rsp
leaq -0x80(%rbp), %rdi
callq 0x2e966
leaq -0x250(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0xf588
leaq -0x38(%rbp), %r14
movq %r14, -0x10(%r14)
leaq 0x3190c(%rip), %rsi     # 0x72007
leaq 0x31915(%rip), %rdx     # 0x72017
leaq -0x48(%rbp), %rdi
callq 0x95e2
leaq 0x31500(%rip), %r12     # 0x71c12
leaq 0x4ae7f(%rip), %rdx     # 0x8b598
leaq -0x318(%rbp), %rdi
leaq -0x48(%rbp), %rsi
leaq -0x250(%rbp), %rcx
xorl %r8d, %r8d
callq 0x1127c
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x40741
callq 0x5380
movq 0x4ae08(%rip), %rdi     # 0x8b550
leaq -0x280(%rbp), %rsi
movq %r12, (%rsi)
leaq 0x314c7(%rip), %rax     # 0x71c20
movq %rax, 0x8(%rsi)
leaq -0x270(%rbp), %rcx
movq %r15, (%rcx)
movq %r15, 0x8(%rcx)
movl $0x1c9, %edx            # imm = 0x1C9
callq 0x5760
leaq -0x110(%rbp), %rdi
leaq -0x318(%rbp), %rsi
callq 0x12170
leaq -0x90(%rbp), %rdi
movb %al, (%rdi)
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rdi)
leaq 0x31836(%rip), %rax     # 0x71fd5
movq %rax, -0x120(%rbp)
leaq 0x3183d(%rip), %rax     # 0x71fea
movq %rax, -0x118(%rbp)
leaq -0x48(%rbp), %rsi
movb $0x0, 0x8(%rsi)
leaq 0x4a355(%rip), %rax     # 0x8ab18
movq %rax, (%rsi)
movq %r13, 0x10(%rsi)
movq %rbx, 0x18(%rsi)
leaq -0x260(%rbp), %rdx
movq %r12, (%rdx)
leaq 0x31441(%rip), %rax     # 0x71c20
movq %rax, 0x8(%rdx)
subq $0x8, %rsp
movl $0x1c9, %ecx            # imm = 0x1C9
movl $0x1, %r8d
xorl %r9d, %r9d
xorl %eax, %eax
pushq $0x0
callq 0x5740
addq $0x10, %rsp
leaq -0x80(%rbp), %rdi
callq 0x2e966
leaq 0x4ad86(%rip), %rdx     # 0x8b598
leaq -0x110(%rbp), %rdi
xorl %esi, %esi
xorl %ecx, %ecx
movl $0x3, %r8d
callq 0x3d96f
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x314ae(%rip), %rsi     # 0x71ce4
leaq 0x314a8(%rip), %rdx     # 0x71ce5
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0x1, %esi
movl $0x1, %ecx
movl $0x1, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x40870
callq 0x5380
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x31785(%rip), %rsi     # 0x72003
leaq 0x31781(%rip), %rdx     # 0x72006
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0x2, %esi
movl $0x1, %ecx
movl $0x1, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x408b8
callq 0x5380
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x3172c(%rip), %rsi     # 0x71ff2
leaq 0x3172b(%rip), %rdx     # 0x71ff8
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0x3, %esi
movl $0x1, %ecx
movl $0x3, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x40900
callq 0x5380
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x316b0(%rip), %rsi     # 0x71fbe
leaq 0x316aa(%rip), %rdx     # 0x71fbf
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0x4, %esi
movl $0x1, %ecx
movl $0x1, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x40948
callq 0x5380
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x306c2(%rip), %rsi     # 0x71018
leaq 0x306bc(%rip), %rdx     # 0x71019
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0x5, %esi
movl $0x1, %ecx
movl $0x1, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x40990
callq 0x5380
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x30f20(%rip), %rsi     # 0x718be
leaq 0x30f1a(%rip), %rdx     # 0x718bf
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0x6, %esi
movl $0x2, %ecx
movl $0x1, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x409d8
callq 0x5380
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x30632(%rip), %rsi     # 0x71018
leaq 0x3062c(%rip), %rdx     # 0x71019
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0x7, %esi
movl $0x1, %ecx
movl $0x1, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x40a20
callq 0x5380
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x325ab(%rip), %rsi     # 0x72fd9
leaq 0x325a5(%rip), %rdx     # 0x72fda
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0x8, %esi
movl $0x1, %ecx
movl $0x3, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x40a68
callq 0x5380
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x30657(%rip), %rsi     # 0x710cd
leaq 0x30651(%rip), %rdx     # 0x710ce
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0x9, %esi
movl $0x2, %ecx
movl $0x1, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x40ab0
callq 0x5380
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x3153b(%rip), %rsi     # 0x71ff9
leaq 0x31537(%rip), %rdx     # 0x71ffc
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0xa, %esi
movl $0x2, %ecx
movl $0x1, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x40af8
callq 0x5380
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x314f7(%rip), %rsi     # 0x71ffd
leaq 0x314f5(%rip), %rdx     # 0x72002
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0xb, %esi
movl $0x2, %ecx
movl $0x2, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x40b40
callq 0x5380
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x30c8e(%rip), %rsi     # 0x717dc
leaq 0x30c88(%rip), %rdx     # 0x717dd
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0xc, %esi
movl $0x1, %ecx
movl $0x1, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x40b88
callq 0x5380
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x30478(%rip), %rsi     # 0x7100e
leaq 0x30472(%rip), %rdx     # 0x7100f
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0xd, %esi
movl $0x1, %ecx
movl $0x1, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x40bd0
callq 0x5380
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x30a4b(%rip), %rsi     # 0x71629
leaq 0x30a45(%rip), %rdx     # 0x7162a
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0xe, %esi
movl $0x2, %ecx
movl $0x1, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x40c18
callq 0x5380
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x303f2(%rip), %rsi     # 0x71018
leaq 0x303ec(%rip), %rdx     # 0x71019
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0xf, %esi
movl $0x1, %ecx
movl $0x2, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x40c60
callq 0x5380
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x30773(%rip), %rsi     # 0x713e1
leaq 0x3076d(%rip), %rdx     # 0x713e2
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0x10, %esi
movl $0x2, %ecx
movl $0x1, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x40ca8
callq 0x5380
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x3135c(%rip), %rsi     # 0x72012
leaq 0x3135a(%rip), %rdx     # 0x72017
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0x11, %esi
movl $0x2, %ecx
movl $0x1, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x40cf0
callq 0x5380
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x30ade(%rip), %rsi     # 0x717dc
leaq 0x30ad8(%rip), %rdx     # 0x717dd
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0x12, %esi
movl $0x1, %ecx
movl $0x1, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x40d38
callq 0x5380
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x32293(%rip), %rsi     # 0x72fd9
leaq 0x3228d(%rip), %rdx     # 0x72fda
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0x13, %esi
movl $0x1, %ecx
movl $0x1, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x40d80
callq 0x5380
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x30b18(%rip), %rsi     # 0x718a6
leaq 0x30b12(%rip), %rdx     # 0x718a7
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0x14, %esi
movl $0x1, %ecx
movl $0x1, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x40dc8
callq 0x5380
leaq -0x48(%rbp), %rdi
movq %r14, (%rdi)
leaq 0x32203(%rip), %rsi     # 0x72fd9
leaq 0x321fd(%rip), %rdx     # 0x72fda
callq 0x95e2
leaq -0x110(%rbp), %rdi
leaq -0x48(%rbp), %rdx
movl $0x15, %esi
movl $0x1, %ecx
movl $0x1, %r8d
callq 0x3d96f
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x40e10
callq 0x5380
leaq 0x4a781(%rip), %rdx     # 0x8b598
leaq -0x110(%rbp), %rdi
movl $0x16, %esi
movl $0x2, %ecx
xorl %r8d, %r8d
callq 0x3d96f
leaq -0x318(%rbp), %rdi
callq 0x12c6c
leaq -0x250(%rbp), %rdi
callq 0xf8d4
leaq -0x110(%rbp), %rdi
callq 0x12c6c
leaq -0x78(%rbp), %rdi
callq 0x1e7f8
addq $0x2f8, %rsp            # imm = 0x2F8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
jmp 0x41078
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
jmp 0x41078
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
jmp 0x41078
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
jmp 0x41078
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
jmp 0x41078
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
jmp 0x41078
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
jmp 0x41078
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
jmp 0x41078
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
jmp 0x41078
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
jmp 0x41078
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
jmp 0x41078
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
jmp 0x41078
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
jmp 0x41078
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
jmp 0x41078
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
jmp 0x41078
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
jmp 0x41078
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
jmp 0x41078
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
jmp 0x41078
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
jmp 0x41078
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
jmp 0x41078
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x410fe
callq 0x5380
jmp 0x410fe
jmp 0x410fb
movq %rax, %rbx
leaq -0x80(%rbp), %rdi
callq 0x2e966
jmp 0x410fe
jmp 0x410fb
jmp 0x410fb
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r14, %rdi
je 0x4110a
callq 0x5380
jmp 0x4110a
movq %rax, %rbx
jmp 0x4110a
jmp 0x410bb
movq %rax, %rbx
leaq -0x80(%rbp), %rdi
callq 0x2e966
jmp 0x41116
movq %rax, %rbx
jmp 0x41116
movq %rax, %rbx
movq -0x250(%rbp), %rdi
cmpq %r15, %rdi
je 0x41122
callq 0x5380
jmp 0x41122
jmp 0x410f6
jmp 0x410f6
jmp 0x410f6
jmp 0x410f6
jmp 0x410f6
jmp 0x410f6
jmp 0x410f6
jmp 0x410f6
jmp 0x410f6
jmp 0x410f6
jmp 0x410f6
jmp 0x410f6
jmp 0x410f6
jmp 0x410f6
jmp 0x410f6
jmp 0x410f6
movq %rax, %rbx
jmp 0x41122
movq %rax, %rbx
leaq -0x318(%rbp), %rdi
callq 0x12c6c
leaq -0x250(%rbp), %rdi
callq 0xf8d4
leaq -0x110(%rbp), %rdi
callq 0x12c6c
leaq -0x78(%rbp), %rdi
callq 0x1e7f8
movq %rbx, %rdi
callq 0x56f0