// File: /workspace/github_cpp_makefile_star2_O2/aalto-speech[P]ftk/test/emtest.cc
// Function: FactorGraphTestGetList::test_method()
BOOST_AUTO_TEST_CASE(FactorGraphTestGetList)
{
    set<string> vocab = {"k","i","s","a","sa","ki","kis","kissa"};
    string sentence("kissa");
    FactorGraph fg(sentence, start_end, vocab, 5);
    vector<vector<string> > paths;
    fg.get_paths(paths);
    BOOST_CHECK_EQUAL( 7, (int)paths.size() );
    vector<string> seg = {"*", "kissa", "*" };
    BOOST_CHECK( includes_path(paths, seg) );
    vector<string> seg2 = {"*", "kis", "sa", "*" };
    BOOST_CHECK( includes_path(paths, seg2) );
    vector<string> seg3 = {"*", "kis", "s", "a", "*" };
    BOOST_CHECK( includes_path(paths, seg3) );
    vector<string> seg4 = {"*", "ki", "s", "s", "a", "*" };
    BOOST_CHECK( includes_path(paths, seg4) );
    vector<string> seg5 = {"*", "ki", "s", "sa", "*" };
    BOOST_CHECK( includes_path(paths, seg5) );
    vector<string> seg6 = {"*", "ki", "s", "s", "a", "*" };
    BOOST_CHECK( includes_path(paths, seg6) );
    vector<string> seg7 = {"*", "k", "i", "s", "s", "a", "*" };
    BOOST_CHECK( includes_path(paths, seg7) );
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x458, %rsp            # imm = 0x458
leaq 0x1e407(%rip), %rsi     # 0x53c52
leaq -0x200(%rbp), %r14
leaq -0x460(%rbp), %rdx
movq %r14, %rdi
callq 0x5160
leaq -0x1e0(%rbp), %r15
leaq 0x1def9(%rip), %rsi     # 0x53768
leaq -0x238(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x1c0(%rbp), %r15
leaq 0x1d782(%rip), %rsi     # 0x5300e
leaq -0x90(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x1a0(%rbp), %r15
leaq 0x1e683(%rip), %rsi     # 0x53f2c
leaq -0x218(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x180(%rbp), %r15
leaq 0x1eefa(%rip), %rsi     # 0x547c0
leaq -0x100(%rbp), %rbx
movq %r15, %rdi
movq %rbx, %rdx
callq 0x5160
leaq -0x160(%rbp), %r15
leaq 0x1e49e(%rip), %rsi     # 0x53d84
leaq -0xc0(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x140(%rbp), %r15
leaq 0x1e484(%rip), %rsi     # 0x53d87
leaq -0xa8(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x120(%rbp), %r15
leaq 0x1e334(%rip), %rsi     # 0x53c54
leaq -0x78(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x268(%rbp), %rdi
leaq -0x200(%rbp), %rsi
pushq $0x8
popq %rdx
leaq -0x60(%rbp), %rcx
leaq -0x48(%rbp), %r8
callq 0x4ed0a
movl $0xe0, %r14d
leaq (%r14,%rbp), %rdi
addq $-0x200, %rdi           # imm = 0xFE00
callq 0x57b8
addq $-0x20, %r14
cmpq $-0x20, %r14
jne 0x35950
leaq 0x1e2e3(%rip), %rsi     # 0x53c54
leaq -0x238(%rbp), %rdi
leaq -0x200(%rbp), %rdx
callq 0x5160
leaq 0x3abfd(%rip), %rdx     # 0x70588
leaq -0x460(%rbp), %rdi
leaq -0x238(%rbp), %rsi
leaq -0x268(%rbp), %rcx
pushq $0x5
popq %r8
xorl %r9d, %r9d
callq 0xf742
xorps %xmm0, %xmm0
leaq -0x90(%rbp), %rsi
movaps %xmm0, (%rsi)
andq $0x0, 0x10(%rsi)
leaq -0x460(%rbp), %rdi
callq 0x105f2
movq 0x3ab6f(%rip), %rdi     # 0x70540
leaq 0x1e1a8(%rip), %r14     # 0x53b80
leaq -0x3e8(%rbp), %rsi
movq %r14, (%rsi)
leaq 0x1e1a5(%rip), %r13     # 0x53b8e
movq %r13, 0x8(%rsi)
leaq 0x1e021(%rip), %r12     # 0x53a15
leaq -0x3d8(%rbp), %rcx
movq %r12, (%rcx)
movq %r12, 0x8(%rcx)
movl $0x22a, %edx            # imm = 0x22A
callq 0x5710
leaq -0x200(%rbp), %rdi
movb $0x0, 0x8(%rdi)
leaq 0x3a0c2(%rip), %rax     # 0x6fae0
movq %rax, (%rdi)
movq 0x3a588(%rip), %rax     # 0x6ffb0
movq %rax, 0x10(%rdi)
leaq 0x1d924(%rip), %rax     # 0x53357
movq %rax, 0x18(%rdi)
leaq -0x3c8(%rbp), %rsi
movq %r14, (%rsi)
movq %r13, 0x8(%rsi)
leaq -0x218(%rbp), %r9
movl $0x7, (%r9)
movq -0x88(%rbp), %rax
subq -0x90(%rbp), %rax
pushq $0x18
popq %rcx
cqto
idivq %rcx
movl %eax, -0x100(%rbp)
leaq 0x1e565(%rip), %rax     # 0x53fdb
movq %rax, 0x10(%rsp)
movq %rbx, 0x8(%rsp)
leaq 0x1ead1(%rip), %rax     # 0x54558
movq %rax, (%rsp)
pushq $0x1
popq %rcx
pushq $0x2
popq %r8
movl $0x22a, %edx            # imm = 0x22A
callq 0x4ea09
leaq 0x1d983(%rip), %rsi     # 0x53426
leaq -0x200(%rbp), %r14
leaq -0x100(%rbp), %rdx
movq %r14, %rdi
callq 0x5160
leaq -0x1e0(%rbp), %r15
leaq 0x1e18d(%rip), %rsi     # 0x53c54
leaq -0xc0(%rbp), %rbx
movq %r15, %rdi
movq %rbx, %rdx
callq 0x5160
leaq -0x1c0(%rbp), %r15
leaq 0x1d93f(%rip), %rsi     # 0x53426
leaq -0xa8(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x218(%rbp), %rdi
leaq -0x200(%rbp), %rsi
pushq $0x3
popq %rdx
leaq -0x78(%rbp), %rcx
callq 0x4ed52
pushq $0x40
popq %r14
leaq (%r14,%rbp), %rdi
addq $-0x200, %rdi           # imm = 0xFE00
callq 0x57b8
addq $-0x20, %r14
cmpq $-0x20, %r14
jne 0x35b14
movq 0x3aa0b(%rip), %rdi     # 0x70540
leaq -0x3b8(%rbp), %rsi
leaq 0x1e03d(%rip), %r14     # 0x53b80
movq %r14, (%rsi)
movq %r13, 0x8(%rsi)
leaq -0x3a8(%rbp), %rcx
movq %r12, (%rcx)
movq %r12, 0x8(%rcx)
movl $0x22c, %edx            # imm = 0x22C
callq 0x5710
leaq -0x90(%rbp), %rdi
leaq -0x218(%rbp), %rsi
callq 0x34d21
leaq -0x100(%rbp), %rdi
movb %al, (%rdi)
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rdi)
leaq 0x1e461(%rip), %rax     # 0x53fed
movq %rax, -0xc0(%rbp)
leaq 0x1e46c(%rip), %rax     # 0x54006
movq %rax, -0xb8(%rbp)
leaq -0x200(%rbp), %rsi
movb $0x0, 0x8(%rsi)
leaq 0x39fbd(%rip), %rax     # 0x6fb70
movq %rax, (%rsi)
movq 0x3a3f3(%rip), %rax     # 0x6ffb0
movq %rax, 0x10(%rsi)
movq %rbx, 0x18(%rsi)
leaq -0x398(%rbp), %rdx
movq %r14, (%rdx)
movq %r13, 0x8(%rdx)
andq $0x0, (%rsp)
pushq $0x1
popq %r8
movl $0x22c, %ecx            # imm = 0x22C
xorl %r9d, %r9d
xorl %eax, %eax
callq 0x56f0
leaq -0xf0(%rbp), %rdi
callq 0x291f6
leaq 0x1d828(%rip), %rsi     # 0x53426
leaq -0x200(%rbp), %r14
leaq -0xc0(%rbp), %rdx
movq %r14, %rdi
callq 0x5160
leaq -0x1e0(%rbp), %r15
leaq 0x1e165(%rip), %rsi     # 0x53d87
leaq -0xa8(%rbp), %rbx
movq %r15, %rdi
movq %rbx, %rdx
callq 0x5160
leaq -0x1c0(%rbp), %r15
leaq 0x1eb7e(%rip), %rsi     # 0x547c0
leaq -0x78(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x1a0(%rbp), %r15
leaq 0x1d7ca(%rip), %rsi     # 0x53426
leaq -0x60(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x100(%rbp), %rdi
leaq -0x200(%rbp), %rsi
pushq $0x4
popq %rdx
leaq -0x48(%rbp), %rcx
callq 0x4ed52
pushq $0x60
popq %r14
leaq (%r14,%rbp), %rdi
addq $-0x200, %rdi           # imm = 0xFE00
callq 0x57b8
addq $-0x20, %r14
cmpq $-0x20, %r14
jne 0x35c86
movq 0x3a899(%rip), %rdi     # 0x70540
leaq -0x388(%rbp), %rsi
leaq 0x1decb(%rip), %r14     # 0x53b80
movq %r14, (%rsi)
movq %r13, 0x8(%rsi)
leaq -0x378(%rbp), %rcx
movq %r12, (%rcx)
movq %r12, 0x8(%rcx)
movl $0x22e, %edx            # imm = 0x22E
callq 0x5710
leaq -0x90(%rbp), %rdi
leaq -0x100(%rbp), %rsi
callq 0x34d21
leaq -0xc0(%rbp), %rdi
movb %al, (%rdi)
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rdi)
leaq 0x1e309(%rip), %rax     # 0x54007
movq %rax, -0xa8(%rbp)
leaq 0x1e315(%rip), %rax     # 0x54021
movq %rax, -0xa0(%rbp)
leaq -0x200(%rbp), %rsi
movb $0x0, 0x8(%rsi)
leaq 0x39e4b(%rip), %rax     # 0x6fb70
movq %rax, (%rsi)
movq 0x3a281(%rip), %rax     # 0x6ffb0
movq %rax, 0x10(%rsi)
movq %rbx, 0x18(%rsi)
leaq -0x368(%rbp), %rdx
movq %r14, (%rdx)
movq %r13, 0x8(%rdx)
andq $0x0, (%rsp)
pushq $0x1
popq %r8
movl $0x22e, %ecx            # imm = 0x22E
xorl %r9d, %r9d
xorl %eax, %eax
callq 0x56f0
leaq -0xb0(%rbp), %rdi
callq 0x291f6
leaq 0x1d6b6(%rip), %rsi     # 0x53426
leaq -0x200(%rbp), %r14
leaq -0xa8(%rbp), %rdx
movq %r14, %rdi
callq 0x5160
leaq -0x1e0(%rbp), %r15
leaq 0x1dff3(%rip), %rsi     # 0x53d87
leaq -0x78(%rbp), %rbx
movq %r15, %rdi
movq %rbx, %rdx
callq 0x5160
leaq -0x1c0(%rbp), %r15
leaq 0x1d25d(%rip), %rsi     # 0x5300e
leaq -0x60(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x1a0(%rbp), %r15
leaq 0x1e161(%rip), %rsi     # 0x53f2c
leaq -0x48(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x180(%rbp), %r15
leaq 0x1d641(%rip), %rsi     # 0x53426
leaq -0xe8(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0xc0(%rbp), %rdi
leaq -0x200(%rbp), %rsi
pushq $0x5
popq %rdx
leaq -0xd0(%rbp), %rcx
callq 0x4ed52
movl $0x80, %r14d
leaq (%r14,%rbp), %rdi
addq $-0x200, %rdi           # imm = 0xFE00
callq 0x57b8
addq $-0x20, %r14
cmpq $-0x20, %r14
jne 0x35e17
movq 0x3a708(%rip), %rdi     # 0x70540
leaq -0x358(%rbp), %rsi
leaq 0x1dd3a(%rip), %r14     # 0x53b80
movq %r14, (%rsi)
movq %r13, 0x8(%rsi)
leaq -0x348(%rbp), %rcx
movq %r12, (%rcx)
movq %r12, 0x8(%rcx)
movl $0x230, %edx            # imm = 0x230
callq 0x5710
leaq -0x90(%rbp), %rdi
leaq -0xc0(%rbp), %rsi
callq 0x34d21
leaq -0xa8(%rbp), %rdi
movb %al, (%rdi)
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rdi)
leaq 0x1e193(%rip), %rax     # 0x54022
movq %rax, -0x78(%rbp)
leaq 0x1e1a2(%rip), %rax     # 0x5403c
movq %rax, -0x70(%rbp)
leaq -0x200(%rbp), %rsi
movb $0x0, 0x8(%rsi)
leaq 0x39cc0(%rip), %rax     # 0x6fb70
movq %rax, (%rsi)
movq 0x3a0f6(%rip), %rax     # 0x6ffb0
movq %rax, 0x10(%rsi)
movq %rbx, 0x18(%rsi)
leaq -0x338(%rbp), %rdx
movq %r14, (%rdx)
movq %r13, 0x8(%rdx)
andq $0x0, (%rsp)
pushq $0x1
popq %r8
movl $0x230, %ecx            # imm = 0x230
xorl %r9d, %r9d
xorl %eax, %eax
callq 0x56f0
leaq -0x98(%rbp), %rdi
callq 0x291f6
leaq 0x1d52b(%rip), %rsi     # 0x53426
leaq -0x200(%rbp), %r14
leaq -0x78(%rbp), %rdx
movq %r14, %rdi
callq 0x5160
leaq -0x1e0(%rbp), %r15
leaq 0x1de68(%rip), %rsi     # 0x53d84
leaq -0x60(%rbp), %rbx
movq %r15, %rdi
movq %rbx, %rdx
callq 0x5160
leaq -0x1c0(%rbp), %r15
leaq 0x1d0d5(%rip), %rsi     # 0x5300e
leaq -0x48(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x1a0(%rbp), %r15
leaq 0x1d0bb(%rip), %rsi     # 0x5300e
leaq -0xe8(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x180(%rbp), %r15
leaq 0x1dfbc(%rip), %rsi     # 0x53f2c
leaq -0xd0(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x160(%rbp), %r15
leaq 0x1d499(%rip), %rsi     # 0x53426
leaq -0x2a(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0xa8(%rbp), %rdi
leaq -0x200(%rbp), %rsi
pushq $0x6
popq %rdx
leaq -0x29(%rbp), %rcx
callq 0x4ed52
movl $0xa0, %r14d
leaq (%r14,%rbp), %rdi
addq $-0x200, %rdi           # imm = 0xFE00
callq 0x57b8
addq $-0x20, %r14
cmpq $-0x20, %r14
jne 0x35fb9
movq 0x3a566(%rip), %rdi     # 0x70540
leaq -0x328(%rbp), %rsi
leaq 0x1db98(%rip), %r14     # 0x53b80
movq %r14, (%rsi)
movq %r13, 0x8(%rsi)
leaq -0x318(%rbp), %rcx
movq %r12, (%rcx)
movq %r12, 0x8(%rcx)
movl $0x232, %edx            # imm = 0x232
callq 0x5710
leaq -0x90(%rbp), %rdi
leaq -0xa8(%rbp), %rsi
callq 0x34d21
leaq -0x78(%rbp), %rdi
movb %al, (%rdi)
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rdi)
leaq 0x1e00f(%rip), %rax     # 0x5403d
movq %rax, -0x60(%rbp)
leaq 0x1e01e(%rip), %rax     # 0x54057
movq %rax, -0x58(%rbp)
leaq -0x200(%rbp), %rsi
movb $0x0, 0x8(%rsi)
leaq 0x39b21(%rip), %rax     # 0x6fb70
movq %rax, (%rsi)
movq 0x39f57(%rip), %rax     # 0x6ffb0
movq %rax, 0x10(%rsi)
movq %rbx, 0x18(%rsi)
leaq -0x308(%rbp), %rdx
movq %r14, (%rdx)
movq %r13, 0x8(%rdx)
andq $0x0, (%rsp)
pushq $0x1
popq %r8
movl $0x232, %ecx            # imm = 0x232
xorl %r9d, %r9d
xorl %eax, %eax
callq 0x56f0
leaq -0x68(%rbp), %rdi
callq 0x291f6
leaq 0x1d38f(%rip), %rsi     # 0x53426
leaq -0x200(%rbp), %r14
leaq -0x60(%rbp), %rdx
movq %r14, %rdi
callq 0x5160
leaq -0x1e0(%rbp), %r15
leaq 0x1dccc(%rip), %rsi     # 0x53d84
leaq -0x48(%rbp), %rbx
movq %r15, %rdi
movq %rbx, %rdx
callq 0x5160
leaq -0x1c0(%rbp), %r15
leaq 0x1cf39(%rip), %rsi     # 0x5300e
leaq -0xe8(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x1a0(%rbp), %r15
leaq 0x1e6ce(%rip), %rsi     # 0x547c0
leaq -0xd0(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x180(%rbp), %r15
leaq 0x1d317(%rip), %rsi     # 0x53426
leaq -0x2a(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x78(%rbp), %rdi
leaq -0x200(%rbp), %rsi
pushq $0x5
popq %rdx
leaq -0x29(%rbp), %rcx
callq 0x4ed52
movl $0x80, %r14d
leaq (%r14,%rbp), %rdi
addq $-0x200, %rdi           # imm = 0xFE00
callq 0x57b8
addq $-0x20, %r14
cmpq $-0x20, %r14
jne 0x36138
movq 0x3a3e7(%rip), %rdi     # 0x70540
leaq -0x2f8(%rbp), %rsi
leaq 0x1da19(%rip), %r14     # 0x53b80
movq %r14, (%rsi)
movq %r13, 0x8(%rsi)
leaq -0x2e8(%rbp), %rcx
movq %r12, (%rcx)
movq %r12, 0x8(%rcx)
movl $0x234, %edx            # imm = 0x234
callq 0x5710
leaq -0x90(%rbp), %rdi
leaq -0x78(%rbp), %rsi
callq 0x34d21
leaq -0x60(%rbp), %rdi
movb %al, (%rdi)
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rdi)
leaq 0x1deae(%rip), %rax     # 0x54058
movq %rax, -0x48(%rbp)
leaq 0x1debd(%rip), %rax     # 0x54072
movq %rax, -0x40(%rbp)
leaq -0x200(%rbp), %rsi
movb $0x0, 0x8(%rsi)
leaq 0x399a5(%rip), %rax     # 0x6fb70
movq %rax, (%rsi)
movq 0x39ddb(%rip), %rax     # 0x6ffb0
movq %rax, 0x10(%rsi)
movq %rbx, 0x18(%rsi)
leaq -0x2d8(%rbp), %rdx
movq %r14, (%rdx)
movq %r13, 0x8(%rdx)
andq $0x0, (%rsp)
pushq $0x1
popq %r8
movl $0x234, %ecx            # imm = 0x234
xorl %r9d, %r9d
xorl %eax, %eax
callq 0x56f0
leaq -0x50(%rbp), %rdi
callq 0x291f6
leaq 0x1d213(%rip), %rsi     # 0x53426
leaq -0x200(%rbp), %r14
leaq -0x48(%rbp), %rdx
movq %r14, %rdi
callq 0x5160
leaq -0x1e0(%rbp), %r15
leaq 0x1db50(%rip), %rsi     # 0x53d84
leaq -0xe8(%rbp), %rbx
movq %r15, %rdi
movq %rbx, %rdx
callq 0x5160
leaq -0x1c0(%rbp), %r15
leaq 0x1cdba(%rip), %rsi     # 0x5300e
leaq -0xd0(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x1a0(%rbp), %r15
leaq 0x1cd9d(%rip), %rsi     # 0x5300e
leaq -0x2a(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x180(%rbp), %r15
leaq 0x1dca1(%rip), %rsi     # 0x53f2c
leaq -0x29(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x160(%rbp), %r15
leaq 0x1d181(%rip), %rsi     # 0x53426
leaq -0x2c(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x60(%rbp), %rdi
leaq -0x200(%rbp), %rsi
pushq $0x6
popq %rdx
leaq -0x2b(%rbp), %rcx
callq 0x4ed52
movl $0xa0, %r14d
leaq (%r14,%rbp), %rdi
addq $-0x200, %rdi           # imm = 0xFE00
callq 0x57b8
addq $-0x20, %r14
cmpq $-0x20, %r14
jne 0x362ce
movq 0x3a251(%rip), %rdi     # 0x70540
leaq -0x2c8(%rbp), %rsi
leaq 0x1d883(%rip), %r14     # 0x53b80
movq %r14, (%rsi)
movq %r13, 0x8(%rsi)
leaq -0x2b8(%rbp), %rcx
movq %r12, (%rcx)
movq %r12, 0x8(%rcx)
movl $0x236, %edx            # imm = 0x236
callq 0x5710
leaq -0x90(%rbp), %rdi
leaq -0x60(%rbp), %rsi
callq 0x34d21
leaq -0x48(%rbp), %rdi
movb %al, (%rdi)
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rdi)
leaq 0x1dd33(%rip), %rax     # 0x54073
movq %rax, -0xe8(%rbp)
leaq 0x1dd3f(%rip), %rax     # 0x5408d
movq %rax, -0xe0(%rbp)
leaq -0x200(%rbp), %rsi
movb $0x0, 0x8(%rsi)
leaq 0x39809(%rip), %rax     # 0x6fb70
movq %rax, (%rsi)
movq 0x39c3f(%rip), %rax     # 0x6ffb0
movq %rax, 0x10(%rsi)
movq %rbx, 0x18(%rsi)
leaq -0x2a8(%rbp), %rdx
movq %r14, (%rdx)
movq %r13, 0x8(%rdx)
andq $0x0, (%rsp)
pushq $0x1
popq %r8
movl $0x236, %ecx            # imm = 0x236
xorl %r9d, %r9d
xorl %eax, %eax
callq 0x56f0
leaq -0x38(%rbp), %rdi
callq 0x291f6
leaq 0x1d077(%rip), %rsi     # 0x53426
leaq -0x200(%rbp), %r14
leaq -0xe8(%rbp), %rdx
movq %r14, %rdi
callq 0x5160
leaq -0x1e0(%rbp), %r15
leaq 0x1d87f(%rip), %rsi     # 0x53c52
leaq -0xd0(%rbp), %rbx
movq %r15, %rdi
movq %rbx, %rdx
callq 0x5160
leaq -0x1c0(%rbp), %r15
leaq 0x1d375(%rip), %rsi     # 0x53768
leaq -0x2a(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x1a0(%rbp), %r15
leaq 0x1cc01(%rip), %rsi     # 0x5300e
leaq -0x29(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x180(%rbp), %r15
leaq 0x1cbe7(%rip), %rsi     # 0x5300e
leaq -0x2c(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x160(%rbp), %r15
leaq 0x1daeb(%rip), %rsi     # 0x53f2c
leaq -0x2b(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x140(%rbp), %r15
leaq 0x1cfcb(%rip), %rsi     # 0x53426
leaq -0x2e(%rbp), %rdx
movq %r15, %rdi
callq 0x5160
leaq -0x48(%rbp), %rdi
leaq -0x200(%rbp), %rsi
pushq $0x7
popq %rdx
leaq -0x2d(%rbp), %rcx
callq 0x4ed52
movl $0xc0, %r14d
leaq (%r14,%rbp), %rdi
addq $-0x200, %rdi           # imm = 0xFE00
callq 0x57b8
addq $-0x20, %r14
cmpq $-0x20, %r14
jne 0x36484
movq 0x3a09b(%rip), %rdi     # 0x70540
leaq -0x298(%rbp), %rsi
leaq 0x1d6cd(%rip), %r14     # 0x53b80
movq %r14, (%rsi)
movq %r13, 0x8(%rsi)
leaq -0x288(%rbp), %rcx
movq %r12, (%rcx)
movq %r12, 0x8(%rcx)
movl $0x238, %edx            # imm = 0x238
callq 0x5710
leaq -0x90(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x34d21
leaq -0xe8(%rbp), %rdi
movb %al, (%rdi)
xorps %xmm0, %xmm0
movups %xmm0, 0x8(%rdi)
leaq 0x1db95(%rip), %rax     # 0x5408e
movq %rax, -0xd0(%rbp)
leaq 0x1dba1(%rip), %rax     # 0x540a8
movq %rax, -0xc8(%rbp)
leaq -0x200(%rbp), %rsi
movb $0x0, 0x8(%rsi)
leaq 0x39650(%rip), %rax     # 0x6fb70
movq %rax, (%rsi)
movq 0x39a86(%rip), %rax     # 0x6ffb0
movq %rax, 0x10(%rsi)
movq %rbx, 0x18(%rsi)
leaq -0x278(%rbp), %rdx
movq %r14, (%rdx)
movq %r13, 0x8(%rdx)
andq $0x0, (%rsp)
pushq $0x1
popq %r8
movl $0x238, %ecx            # imm = 0x238
xorl %r9d, %r9d
xorl %eax, %eax
callq 0x56f0
leaq -0xd8(%rbp), %rdi
callq 0x291f6
leaq -0x48(%rbp), %rdi
callq 0x9574
leaq -0x60(%rbp), %rdi
callq 0x9574
leaq -0x78(%rbp), %rdi
callq 0x9574
leaq -0xa8(%rbp), %rdi
callq 0x9574
leaq -0xc0(%rbp), %rdi
callq 0x9574
leaq -0x100(%rbp), %rdi
callq 0x9574
leaq -0x218(%rbp), %rdi
callq 0x9574
leaq -0x90(%rbp), %rdi
callq 0x1442a
leaq -0x460(%rbp), %rdi
callq 0x10c24
leaq -0x238(%rbp), %rdi
callq 0x57b8
leaq -0x268(%rbp), %rdi
callq 0x200e8
addq $0x458, %rsp            # imm = 0x458
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
leaq -0xd8(%rbp), %rdi
callq 0x291f6
jmp 0x36605
movq %rax, %rbx
leaq -0x48(%rbp), %rdi
callq 0x9574
jmp 0x3667a
movq %rax, %rbx
movl $0xc0, %r12d
leaq (%r12,%rbp), %rdi
addq $-0x200, %rdi           # imm = 0xFE00
callq 0x57b8
addq $-0x20, %r12
cmpq $-0x20, %r12
jne 0x36619
movb $0x1, %al
jmp 0x36646
jmp 0x36641
jmp 0x36641
jmp 0x36641
jmp 0x36641
jmp 0x36641
movq %rax, %rbx
xorl %eax, %eax
cmpq %r15, %r14
sete %cl
testb %al, %al
jne 0x3667a
testb %cl, %cl
jne 0x3667a
addq $-0x20, %r15
movq %r15, %rdi
callq 0x57b8
cmpq %r14, %r15
jne 0x36654
jmp 0x3667a
jmp 0x36677
movq %rax, %rbx
leaq -0x38(%rbp), %rdi
callq 0x291f6
jmp 0x3667a
movq %rax, %rbx
leaq -0x60(%rbp), %rdi
callq 0x9574
jmp 0x366ed
movq %rax, %rbx
movl $0xa0, %r12d
leaq (%r12,%rbp), %rdi
addq $-0x200, %rdi           # imm = 0xFE00
callq 0x57b8
addq $-0x20, %r12
cmpq $-0x20, %r12
jne 0x3668e
movb $0x1, %al
jmp 0x366b9
jmp 0x366b4
jmp 0x366b4
jmp 0x366b4
jmp 0x366b4
movq %rax, %rbx
xorl %eax, %eax
cmpq %r15, %r14
sete %cl
testb %al, %al
jne 0x366ed
testb %cl, %cl
jne 0x366ed
addq $-0x20, %r15
movq %r15, %rdi
callq 0x57b8
cmpq %r14, %r15
jne 0x366c7
jmp 0x366ed
jmp 0x366ea
movq %rax, %rbx
leaq -0x50(%rbp), %rdi
callq 0x291f6
jmp 0x366ed
movq %rax, %rbx
leaq -0x78(%rbp), %rdi
callq 0x9574
leaq -0xa8(%rbp), %rdi
callq 0x9574
leaq -0xc0(%rbp), %rdi
callq 0x9574
leaq -0x100(%rbp), %rdi
callq 0x9574
leaq -0x218(%rbp), %rdi
callq 0x9574
leaq -0x90(%rbp), %rdi
callq 0x1442a
leaq -0x460(%rbp), %rdi
callq 0x10c24
leaq -0x238(%rbp), %rdi
callq 0x57b8
leaq -0x268(%rbp), %rdi
callq 0x200e8
movq %rbx, %rdi
callq 0x56b0
movq %rax, %rbx
movl $0x80, %r14d
leaq (%r14,%rbp), %rdi
addq $-0x200, %rdi           # imm = 0xFE00
callq 0x57b8
addq $-0x20, %r14
cmpq $-0x20, %r14
jne 0x36767
jmp 0x366f6
jmp 0x3678c
jmp 0x3678c
jmp 0x3678c
movq %rax, %rbx
addq $-0x20, %r15
movq %r15, %rdi
callq 0x57b8
cmpq %r14, %r15
jne 0x3678f
jmp 0x366f6
jmp 0x367b8
movq %rax, %rbx
leaq -0x68(%rbp), %rdi
callq 0x291f6
jmp 0x366f6
movq %rax, %rbx
jmp 0x366f6
movq %rax, %rbx
movl $0xa0, %r12d
leaq (%r12,%rbp), %rdi
addq $-0x200, %rdi           # imm = 0xFE00
callq 0x57b8
addq $-0x20, %r12
cmpq $-0x20, %r12
jne 0x367c9
movb $0x1, %al
jmp 0x367f4
jmp 0x367ef
jmp 0x367ef
jmp 0x367ef
jmp 0x367ef
movq %rax, %rbx
xorl %eax, %eax
cmpq %r15, %r14
sete %cl
testb %al, %al
jne 0x36702
testb %cl, %cl
jne 0x36702
addq $-0x20, %r15
movq %r15, %rdi
callq 0x57b8
cmpq %r14, %r15
jne 0x3680a
jmp 0x36702
jmp 0x36836
movq %rax, %rbx
leaq -0x98(%rbp), %rdi
callq 0x291f6
jmp 0x36702
movq %rax, %rbx
jmp 0x36702
movq %rax, %rbx
movl $0x80, %r14d
leaq (%r14,%rbp), %rdi
addq $-0x200, %rdi           # imm = 0xFE00
callq 0x57b8
addq $-0x20, %r14
cmpq $-0x20, %r14
jne 0x36847
jmp 0x3670e
jmp 0x3686c
jmp 0x3686c
jmp 0x3686c
movq %rax, %rbx
addq $-0x20, %r15
movq %r15, %rdi
callq 0x57b8
cmpq %r14, %r15
jne 0x3686f
jmp 0x3670e
jmp 0x3689b
movq %rax, %rbx
leaq -0xb0(%rbp), %rdi
callq 0x291f6
jmp 0x3670e
movq %rax, %rbx
jmp 0x3670e
movq %rax, %rbx
pushq $0x60
popq %r14
leaq (%r14,%rbp), %rdi
addq $-0x200, %rdi           # imm = 0xFE00
callq 0x57b8
addq $-0x20, %r14
cmpq $-0x20, %r14
jne 0x368aa
jmp 0x3671a
jmp 0x368cd
jmp 0x368cd
movq %rax, %rbx
addq $-0x20, %r15
movq %r15, %rdi
callq 0x57b8
cmpq %r14, %r15
jne 0x368d0
jmp 0x3671a
jmp 0x368fc
movq %rax, %rbx
leaq -0xf0(%rbp), %rdi
callq 0x291f6
jmp 0x3671a
movq %rax, %rbx
jmp 0x3671a
movq %rax, %rbx
pushq $0x40
popq %r14
leaq (%r14,%rbp), %rdi
addq $-0x200, %rdi           # imm = 0xFE00
callq 0x57b8
addq $-0x20, %r14
cmpq $-0x20, %r14
jne 0x3690b
jmp 0x36726
jmp 0x3692c
movq %rax, %rbx
addq $-0x20, %r15
movq %r15, %rdi
callq 0x57b8
cmpq %r14, %r15
jne 0x3692f
jmp 0x36726
jmp 0x369c5
jmp 0x369c5
movq %rax, %rbx
jmp 0x3673e
movq %rax, %rbx
jmp 0x3674a
movq %rax, %rbx
movl $0xe0, %r12d
leaq (%r12,%rbp), %rdi
addq $-0x200, %rdi           # imm = 0xFE00
callq 0x57b8
addq $-0x20, %r12
cmpq $-0x20, %r12
jne 0x36962
movb $0x1, %al
jmp 0x36991
jmp 0x3698c
jmp 0x3698c
jmp 0x3698c
jmp 0x3698c
jmp 0x3698c
jmp 0x3698c
movq %rax, %rbx
xorl %eax, %eax
cmpq %r15, %r14
sete %cl
testb %al, %al
jne 0x36756
testb %cl, %cl
jne 0x36756
addq $-0x20, %r15
movq %r15, %rdi
callq 0x57b8
cmpq %r14, %r15
jne 0x369a7
jmp 0x36756
movq %rax, %rbx
jmp 0x36756
movq %rax, %rbx
jmp 0x36726