// File: aalto-speech[P]ftk/test/emtest.cc
// Function: FactorGraphTest5::test_method()
BOOST_AUTO_TEST_CASE(FactorGraphTest5)
{
    map<std::string, flt_type> vocab;
    vocab.insert(make_pair("k", 0.0));
    vocab.insert(make_pair("ö", 0.0));
    vocab.insert(make_pair("kö", 0.0));
    vocab.insert(make_pair("kös", 0.0));
    vocab.insert(make_pair("�", 0.0));
    vocab.insert(make_pair("�", 0.0));
    vocab.insert(make_pair("s", 0.0));
    vocab.insert(make_pair("i", 0.0));
    vocab.insert(make_pair("si", 0.0));
    vocab.insert(make_pair("ssi", 0.0));

    FactorGraph fg("kössi", start_end, vocab, 3, true);
    BOOST_CHECK_EQUAL(11, (int)fg.nodes.size());

    StringSet ssvocab(vocab);
    FactorGraph ssfg("kössi", start_end, ssvocab, true);
    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("kö"), 1, 2);
    assert_node(fg, node_idx++, std::string("kös"), 1, 2);
    assert_node(fg, node_idx++, std::string("ö"), 1, 2);
    assert_node(fg, node_idx++, std::string("s"), 2, 2);
    assert_node(fg, node_idx++, std::string("ssi"), 2, 1);
    assert_node(fg, node_idx++, std::string("s"), 2, 1);
    assert_node(fg, node_idx++, std::string("si"), 2, 1);
    assert_node(fg, node_idx++, std::string("i"), 1, 1);
    assert_node(fg, node_idx++, start_end, 3, 0);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x8b0, %rsp            # imm = 0x8B0
movq %rdi, -0x8(%rbp)
leaq -0x38(%rbp), %rdi
callq 0x530a0
movq $0x0, -0x50(%rbp)
leaq 0x44513(%rip), %rdi     # 0xcbc3a
leaq -0x50(%rbp), %rsi
callq 0xbfd00
movsd %xmm0, -0x690(%rbp)
movq %rax, -0x688(%rbp)
jmp 0x87741
movsd -0x690(%rbp), %xmm0
movq -0x688(%rbp), %rax
movq %rax, -0x48(%rbp)
movsd %xmm0, -0x40(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0xbfbc0
movb %dl, -0x699(%rbp)
movq %rax, -0x698(%rbp)
jmp 0x87775
movb -0x699(%rbp), %al
movq -0x698(%rbp), %rcx
movq %rcx, -0x70(%rbp)
movb %al, -0x68(%rbp)
movq $0x0, -0x88(%rbp)
leaq 0x446a3(%rip), %rdi     # 0xcbe3e
leaq -0x88(%rbp), %rsi
callq 0xbfcc0
movsd %xmm0, -0x6b0(%rbp)
movq %rax, -0x6a8(%rbp)
jmp 0x877b8
movsd -0x6b0(%rbp), %xmm0
movq -0x6a8(%rbp), %rax
movq %rax, -0x80(%rbp)
movsd %xmm0, -0x78(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0x80(%rbp), %rsi
callq 0xbfbc0
movb %dl, -0x6b9(%rbp)
movq %rax, -0x6b8(%rbp)
jmp 0x877ec
movb -0x6b9(%rbp), %al
movq -0x6b8(%rbp), %rcx
movq %rcx, -0x98(%rbp)
movb %al, -0x90(%rbp)
movq $0x0, -0xb0(%rbp)
leaq 0x44625(%rip), %rdi     # 0xcbe3d
leaq -0xb0(%rbp), %rsi
callq 0xbfc00
movsd %xmm0, -0x6d0(%rbp)
movq %rax, -0x6c8(%rbp)
jmp 0x87835
movsd -0x6d0(%rbp), %xmm0
movq -0x6c8(%rbp), %rax
movq %rax, -0xa8(%rbp)
movsd %xmm0, -0xa0(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0xa8(%rbp), %rsi
callq 0xbfbc0
movb %dl, -0x6d9(%rbp)
movq %rax, -0x6d8(%rbp)
jmp 0x87872
movb -0x6d9(%rbp), %al
movq -0x6d8(%rbp), %rcx
movq %rcx, -0xc0(%rbp)
movb %al, -0xb8(%rbp)
movq $0x0, -0xd8(%rbp)
leaq 0x445a3(%rip), %rdi     # 0xcbe41
leaq -0xd8(%rbp), %rsi
callq 0xbfc80
movsd %xmm0, -0x6f0(%rbp)
movq %rax, -0x6e8(%rbp)
jmp 0x878bb
movsd -0x6f0(%rbp), %xmm0
movq -0x6e8(%rbp), %rax
movq %rax, -0xd0(%rbp)
movsd %xmm0, -0xc8(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0xd0(%rbp), %rsi
callq 0xbfbc0
movb %dl, -0x6f9(%rbp)
movq %rax, -0x6f8(%rbp)
jmp 0x878f8
movb -0x6f9(%rbp), %al
movq -0x6f8(%rbp), %rcx
movq %rcx, -0xe8(%rbp)
movb %al, -0xe0(%rbp)
movq $0x0, -0x100(%rbp)
leaq 0x44346(%rip), %rdi     # 0xcbc6a
leaq -0x100(%rbp), %rsi
callq 0xbfc00
movsd %xmm0, -0x710(%rbp)
movq %rax, -0x708(%rbp)
jmp 0x87941
movsd -0x710(%rbp), %xmm0
movq -0x708(%rbp), %rax
movq %rax, -0xf8(%rbp)
movsd %xmm0, -0xf0(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0xf8(%rbp), %rsi
callq 0xbfbc0
movb %dl, -0x719(%rbp)
movq %rax, -0x718(%rbp)
jmp 0x8797e
movb -0x719(%rbp), %al
movq -0x718(%rbp), %rcx
movq %rcx, -0x110(%rbp)
movb %al, -0x108(%rbp)
movq $0x0, -0x128(%rbp)
leaq 0x442c0(%rip), %rdi     # 0xcbc6a
leaq -0x128(%rbp), %rsi
callq 0xbfc00
movsd %xmm0, -0x730(%rbp)
movq %rax, -0x728(%rbp)
jmp 0x879c7
movsd -0x730(%rbp), %xmm0
movq -0x728(%rbp), %rax
movq %rax, -0x120(%rbp)
movsd %xmm0, -0x118(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0x120(%rbp), %rsi
callq 0xbfbc0
movb %dl, -0x739(%rbp)
movq %rax, -0x738(%rbp)
jmp 0x87a04
movb -0x739(%rbp), %al
movq -0x738(%rbp), %rcx
movq %rcx, -0x138(%rbp)
movb %al, -0x130(%rbp)
movq $0x0, -0x150(%rbp)
leaq 0x435de(%rip), %rdi     # 0xcb00e
leaq -0x150(%rbp), %rsi
callq 0xbfd00
movsd %xmm0, -0x750(%rbp)
movq %rax, -0x748(%rbp)
jmp 0x87a4d
movsd -0x750(%rbp), %xmm0
movq -0x748(%rbp), %rax
movq %rax, -0x148(%rbp)
movsd %xmm0, -0x140(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0x148(%rbp), %rsi
callq 0xbfbc0
movb %dl, -0x759(%rbp)
movq %rax, -0x758(%rbp)
jmp 0x87a8a
movb -0x759(%rbp), %al
movq -0x758(%rbp), %rcx
movq %rcx, -0x160(%rbp)
movb %al, -0x158(%rbp)
movq $0x0, -0x178(%rbp)
leaq 0x43c82(%rip), %rdi     # 0xcb738
leaq -0x178(%rbp), %rsi
callq 0xbfd00
movsd %xmm0, -0x770(%rbp)
movq %rax, -0x768(%rbp)
jmp 0x87ad3
movsd -0x770(%rbp), %xmm0
movq -0x768(%rbp), %rax
movq %rax, -0x170(%rbp)
movsd %xmm0, -0x168(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0x170(%rbp), %rsi
callq 0xbfbc0
movb %dl, -0x779(%rbp)
movq %rax, -0x778(%rbp)
jmp 0x87b10
movb -0x779(%rbp), %al
movq -0x778(%rbp), %rcx
movq %rcx, -0x188(%rbp)
movb %al, -0x180(%rbp)
movq $0x0, -0x1a0(%rbp)
leaq 0x4430e(%rip), %rdi     # 0xcbe4a
leaq -0x1a0(%rbp), %rsi
callq 0xbfcc0
movsd %xmm0, -0x790(%rbp)
movq %rax, -0x788(%rbp)
jmp 0x87b59
movsd -0x790(%rbp), %xmm0
movq -0x788(%rbp), %rax
movq %rax, -0x198(%rbp)
movsd %xmm0, -0x190(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0x198(%rbp), %rsi
callq 0xbfbc0
movb %dl, -0x799(%rbp)
movq %rax, -0x798(%rbp)
jmp 0x87b96
movb -0x799(%rbp), %al
movq -0x798(%rbp), %rcx
movq %rcx, -0x1b0(%rbp)
movb %al, -0x1a8(%rbp)
movq $0x0, -0x1c8(%rbp)
leaq 0x44287(%rip), %rdi     # 0xcbe49
leaq -0x1c8(%rbp), %rsi
callq 0xbfc00
movsd %xmm0, -0x7b0(%rbp)
movq %rax, -0x7a8(%rbp)
jmp 0x87bdf
movsd -0x7b0(%rbp), %xmm0
movq -0x7a8(%rbp), %rax
movq %rax, -0x1c0(%rbp)
movsd %xmm0, -0x1b8(%rbp)
leaq -0x38(%rbp), %rdi
leaq -0x1c0(%rbp), %rsi
callq 0xbfbc0
movb %dl, -0x7b9(%rbp)
movq %rax, -0x7b8(%rbp)
jmp 0x87c1c
movb -0x7b9(%rbp), %al
movq -0x7b8(%rbp), %rcx
movq %rcx, -0x1d8(%rbp)
movb %al, -0x1d0(%rbp)
leaq -0x271(%rbp), %rdi
movq %rdi, -0x7c8(%rbp)
callq 0x67b0
movq -0x7c8(%rbp), %rdx
leaq 0x441ef(%rip), %rsi     # 0xcbe46
leaq -0x270(%rbp), %rdi
callq 0x65e0
jmp 0x87c65
leaq 0x7f9cc(%rip), %rdx     # 0x107638
leaq -0x250(%rbp), %rdi
leaq -0x270(%rbp), %rsi
leaq -0x38(%rbp), %rcx
movl $0x3, %r8d
movl $0x1, %r9d
callq 0x23750
jmp 0x87c91
leaq -0x270(%rbp), %rdi
callq 0x6908
leaq -0x271(%rbp), %rdi
callq 0x6470
movq 0x7f940(%rip), %rax     # 0x1075f0
movq %rax, -0x7d0(%rbp)
leaq 0x43eaa(%rip), %rsi     # 0xcbb68
leaq -0x288(%rbp), %rdi
movl $0xe, %edx
callq 0x70bd0
jmp 0x87cd1
leaq -0x298(%rbp), %rdi
callq 0x70c00
jmp 0x87cdf
movq -0x7d0(%rbp), %rdi
leaq -0x288(%rbp), %rsi
movl $0x1f7, %edx            # imm = 0x1F7
leaq -0x298(%rbp), %rcx
callq 0x6840
jmp 0x87d00
callq 0x70e90
movq %rax, -0x7d8(%rbp)
jmp 0x87d0e
movq -0x7d8(%rbp), %rsi
leaq 0x4360e(%rip), %rdx     # 0xcb32a
leaq -0x2c0(%rbp), %rdi
callq 0x70e50
jmp 0x87d2a
leaq 0x43e37(%rip), %rsi     # 0xcbb68
leaq -0x2d0(%rbp), %rdi
movl $0xe, %edx
callq 0x70bd0
jmp 0x87d44
movl $0xb, -0x2d4(%rbp)
leaq -0x210(%rbp), %rdi
callq 0x26b90
movl %eax, -0x2d8(%rbp)
leaq 0x441af(%rip), %rcx     # 0xcbf16
movq %rsp, %rax
movq %rcx, 0x10(%rax)
leaq -0x2d8(%rbp), %rcx
movq %rcx, 0x8(%rax)
leaq 0x44202(%rip), %rcx     # 0xcbf82
movq %rcx, (%rax)
leaq -0x2c0(%rbp), %rdi
leaq -0x2d0(%rbp), %rsi
movl $0x1f7, %edx            # imm = 0x1F7
movl $0x1, %ecx
movl $0x2, %r8d
leaq -0x2d4(%rbp), %r9
callq 0xbf480
jmp 0x87daf
leaq -0x2c0(%rbp), %rdi
callq 0x70ea0
callq 0x70ec0
movb %al, -0x7d9(%rbp)
jmp 0x87dc8
movb -0x7d9(%rbp), %al
testb $0x1, %al
jne 0x87ca9
jmp 0x87dd8
leaq -0x3f8(%rbp), %rdi
leaq -0x38(%rbp), %rsi
callq 0x1ce60
jmp 0x87dea
leaq -0x491(%rbp), %rdi
movq %rdi, -0x7e8(%rbp)
callq 0x67b0
movq -0x7e8(%rbp), %rdx
leaq 0x4403b(%rip), %rsi     # 0xcbe46
leaq -0x490(%rbp), %rdi
callq 0x65e0
jmp 0x87e19
leaq 0x7f818(%rip), %rdx     # 0x107638
leaq -0x470(%rbp), %rdi
leaq -0x490(%rbp), %rsi
leaq -0x3f8(%rbp), %rcx
movl $0x1, %r8d
callq 0x23c10
jmp 0x87e42
leaq -0x490(%rbp), %rdi
callq 0x6908
leaq -0x491(%rbp), %rdi
callq 0x6470
movq 0x7f78f(%rip), %rax     # 0x1075f0
movq %rax, -0x7f0(%rbp)
leaq 0x43cf9(%rip), %rsi     # 0xcbb68
leaq -0x4a8(%rbp), %rdi
movl $0xe, %edx
callq 0x70bd0
jmp 0x87e82
leaq -0x4b8(%rbp), %rdi
callq 0x70c00
jmp 0x87e90
movq -0x7f0(%rbp), %rdi
leaq -0x4a8(%rbp), %rsi
movl $0x1fb, %edx            # imm = 0x1FB
leaq -0x4b8(%rbp), %rcx
callq 0x6840
jmp 0x87eb1
leaq -0x250(%rbp), %rdi
leaq -0x470(%rbp), %rsi
callq 0x250b0
movb %al, -0x7f1(%rbp)
jmp 0x87ecc
movb -0x7f1(%rbp), %al
movzbl %al, %esi
andl $0x1, %esi
leaq -0x4d0(%rbp), %rdi
callq 0x70ed0
jmp 0x87ee6
callq 0x70e90
movq %rax, -0x800(%rbp)
jmp 0x87ef4
leaq 0x44030(%rip), %rsi     # 0xcbf2b
leaq -0x500(%rbp), %rdi
movl $0x15, %edx
callq 0x70bd0
jmp 0x87f0e
movq -0x800(%rbp), %rsi
leaq -0x4f0(%rbp), %rdi
leaq -0x500(%rbp), %rdx
callq 0x70f10
jmp 0x87f2a
leaq 0x43c37(%rip), %rsi     # 0xcbb68
leaq -0x510(%rbp), %rdi
movl $0xe, %edx
callq 0x70bd0
jmp 0x87f44
movq %rsp, %rax
movq $0x0, (%rax)
xorl %r9d, %r9d
movb %r9b, %al
leaq -0x4d0(%rbp), %rdi
leaq -0x4f0(%rbp), %rsi
leaq -0x510(%rbp), %rdx
movl $0x1fb, %ecx            # imm = 0x1FB
movl $0x1, %r8d
callq 0x6810
jmp 0x87f7b
leaq -0x4f0(%rbp), %rdi
callq 0x70f50
leaq -0x4d0(%rbp), %rdi
callq 0x70f70
callq 0x70ec0
movb %al, -0x801(%rbp)
jmp 0x87fa0
movb -0x801(%rbp), %al
testb $0x1, %al
jne 0x87e5a
jmp 0x87fb0
movl $0x0, -0x514(%rbp)
movl -0x514(%rbp), %esi
movl %esi, %eax
incl %eax
movl %eax, -0x514(%rbp)
leaq 0x7f667(%rip), %rdx     # 0x107638
leaq -0x250(%rbp), %rdi
xorl %ecx, %ecx
movl $0x3, %r8d
callq 0x82400
jmp 0x87fe7
movl -0x514(%rbp), %eax
movl %eax, -0x814(%rbp)
incl %eax
movl %eax, -0x514(%rbp)
leaq -0x539(%rbp), %rdi
movq %rdi, -0x810(%rbp)
callq 0x67b0
movq -0x810(%rbp), %rdx
leaq 0x43c1e(%rip), %rsi     # 0xcbc3a
leaq -0x538(%rbp), %rdi
callq 0x65e0
jmp 0x8802a
movl -0x814(%rbp), %esi
leaq -0x250(%rbp), %rdi
leaq -0x538(%rbp), %rdx
movl $0x1, %r8d
movl %r8d, %ecx
callq 0x82400
jmp 0x8804e
leaq -0x538(%rbp), %rdi
callq 0x6908
leaq -0x539(%rbp), %rdi
callq 0x6470
movl -0x514(%rbp), %eax
movl %eax, -0x824(%rbp)
incl %eax
movl %eax, -0x514(%rbp)
leaq -0x561(%rbp), %rdi
movq %rdi, -0x820(%rbp)
callq 0x67b0
movq -0x820(%rbp), %rdx
leaq 0x43da2(%rip), %rsi     # 0xcbe3d
leaq -0x560(%rbp), %rdi
callq 0x65e0
jmp 0x880a9
movl -0x824(%rbp), %esi
leaq -0x250(%rbp), %rdi
leaq -0x560(%rbp), %rdx
movl $0x1, %ecx
movl $0x2, %r8d
callq 0x82400
jmp 0x880cf
leaq -0x560(%rbp), %rdi
callq 0x6908
leaq -0x561(%rbp), %rdi
callq 0x6470
movl -0x514(%rbp), %eax
movl %eax, -0x834(%rbp)
incl %eax
movl %eax, -0x514(%rbp)
leaq -0x589(%rbp), %rdi
movq %rdi, -0x830(%rbp)
callq 0x67b0
movq -0x830(%rbp), %rdx
leaq 0x43d25(%rip), %rsi     # 0xcbe41
leaq -0x588(%rbp), %rdi
callq 0x65e0
jmp 0x8812a
movl -0x834(%rbp), %esi
leaq -0x250(%rbp), %rdi
leaq -0x588(%rbp), %rdx
movl $0x1, %ecx
movl $0x2, %r8d
callq 0x82400
jmp 0x88150
leaq -0x588(%rbp), %rdi
callq 0x6908
leaq -0x589(%rbp), %rdi
callq 0x6470
movl -0x514(%rbp), %eax
movl %eax, -0x844(%rbp)
incl %eax
movl %eax, -0x514(%rbp)
leaq -0x5b1(%rbp), %rdi
movq %rdi, -0x840(%rbp)
callq 0x67b0
movq -0x840(%rbp), %rdx
leaq 0x43ca1(%rip), %rsi     # 0xcbe3e
leaq -0x5b0(%rbp), %rdi
callq 0x65e0
jmp 0x881ab
movl -0x844(%rbp), %esi
leaq -0x250(%rbp), %rdi
leaq -0x5b0(%rbp), %rdx
movl $0x1, %ecx
movl $0x2, %r8d
callq 0x82400
jmp 0x881d1
leaq -0x5b0(%rbp), %rdi
callq 0x6908
leaq -0x5b1(%rbp), %rdi
callq 0x6470
movl -0x514(%rbp), %eax
movl %eax, -0x854(%rbp)
incl %eax
movl %eax, -0x514(%rbp)
leaq -0x5d9(%rbp), %rdi
movq %rdi, -0x850(%rbp)
callq 0x67b0
movq -0x850(%rbp), %rdx
leaq 0x42df0(%rip), %rsi     # 0xcb00e
leaq -0x5d8(%rbp), %rdi
callq 0x65e0
jmp 0x8822c
movl -0x854(%rbp), %esi
leaq -0x250(%rbp), %rdi
leaq -0x5d8(%rbp), %rdx
movl $0x2, %r8d
movl %r8d, %ecx
callq 0x82400
jmp 0x88250
leaq -0x5d8(%rbp), %rdi
callq 0x6908
leaq -0x5d9(%rbp), %rdi
callq 0x6470
movl -0x514(%rbp), %eax
movl %eax, -0x864(%rbp)
incl %eax
movl %eax, -0x514(%rbp)
leaq -0x601(%rbp), %rdi
movq %rdi, -0x860(%rbp)
callq 0x67b0
movq -0x860(%rbp), %rdx
leaq 0x43bac(%rip), %rsi     # 0xcbe49
leaq -0x600(%rbp), %rdi
callq 0x65e0
jmp 0x882ab
movl -0x864(%rbp), %esi
leaq -0x250(%rbp), %rdi
leaq -0x600(%rbp), %rdx
movl $0x2, %ecx
movl $0x1, %r8d
callq 0x82400
jmp 0x882d1
leaq -0x600(%rbp), %rdi
callq 0x6908
leaq -0x601(%rbp), %rdi
callq 0x6470
movl -0x514(%rbp), %eax
movl %eax, -0x874(%rbp)
incl %eax
movl %eax, -0x514(%rbp)
leaq -0x629(%rbp), %rdi
movq %rdi, -0x870(%rbp)
callq 0x67b0
movq -0x870(%rbp), %rdx
leaq 0x42cf0(%rip), %rsi     # 0xcb00e
leaq -0x628(%rbp), %rdi
callq 0x65e0
jmp 0x8832c
movl -0x874(%rbp), %esi
leaq -0x250(%rbp), %rdi
leaq -0x628(%rbp), %rdx
movl $0x2, %ecx
movl $0x1, %r8d
callq 0x82400
jmp 0x88352
leaq -0x628(%rbp), %rdi
callq 0x6908
leaq -0x629(%rbp), %rdi
callq 0x6470
movl -0x514(%rbp), %eax
movl %eax, -0x884(%rbp)
incl %eax
movl %eax, -0x514(%rbp)
leaq -0x651(%rbp), %rdi
movq %rdi, -0x880(%rbp)
callq 0x67b0
movq -0x880(%rbp), %rdx
leaq 0x43aab(%rip), %rsi     # 0xcbe4a
leaq -0x650(%rbp), %rdi
callq 0x65e0
jmp 0x883ad
movl -0x884(%rbp), %esi
leaq -0x250(%rbp), %rdi
leaq -0x650(%rbp), %rdx
movl $0x2, %ecx
movl $0x1, %r8d
callq 0x82400
jmp 0x883d3
leaq -0x650(%rbp), %rdi
callq 0x6908
leaq -0x651(%rbp), %rdi
callq 0x6470
movl -0x514(%rbp), %eax
movl %eax, -0x894(%rbp)
incl %eax
movl %eax, -0x514(%rbp)
leaq -0x679(%rbp), %rdi
movq %rdi, -0x890(%rbp)
callq 0x67b0
movq -0x890(%rbp), %rdx
leaq 0x43318(%rip), %rsi     # 0xcb738
leaq -0x678(%rbp), %rdi
callq 0x65e0
jmp 0x8842e
movl -0x894(%rbp), %esi
leaq -0x250(%rbp), %rdi
leaq -0x678(%rbp), %rdx
movl $0x1, %r8d
movl %r8d, %ecx
callq 0x82400
jmp 0x88452
leaq -0x678(%rbp), %rdi
callq 0x6908
leaq -0x679(%rbp), %rdi
callq 0x6470
movl -0x514(%rbp), %esi
movl %esi, %eax
incl %eax
movl %eax, -0x514(%rbp)
leaq 0x7f1b7(%rip), %rdx     # 0x107638
leaq -0x250(%rbp), %rdi
movl $0x3, %ecx
xorl %r8d, %r8d
callq 0x82400
jmp 0x88497
leaq -0x470(%rbp), %rdi
callq 0x26180
leaq -0x3f8(%rbp), %rdi
callq 0x1d3d0
leaq -0x250(%rbp), %rdi
callq 0x26180
leaq -0x38(%rbp), %rdi
callq 0x4cf70
addq $0x8b0, %rsp            # imm = 0x8B0
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x887ca
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x88504
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x270(%rbp), %rdi
callq 0x6908
leaq -0x271(%rbp), %rdi
callq 0x6470
jmp 0x887ca
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x887be
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x2c0(%rbp), %rdi
callq 0x70ea0
jmp 0x887be
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x88569
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x490(%rbp), %rdi
callq 0x6908
leaq -0x491(%rbp), %rdi
callq 0x6470
jmp 0x887b2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x887a6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x885b1
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x4f0(%rbp), %rdi
callq 0x70f50
leaq -0x4d0(%rbp), %rdi
callq 0x70f70
jmp 0x887a6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x885e8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x538(%rbp), %rdi
callq 0x6908
leaq -0x539(%rbp), %rdi
callq 0x6470
jmp 0x887a6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x8861f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x560(%rbp), %rdi
callq 0x6908
leaq -0x561(%rbp), %rdi
callq 0x6470
jmp 0x887a6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x88656
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x588(%rbp), %rdi
callq 0x6908
leaq -0x589(%rbp), %rdi
callq 0x6470
jmp 0x887a6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x8868d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x5b0(%rbp), %rdi
callq 0x6908
leaq -0x5b1(%rbp), %rdi
callq 0x6470
jmp 0x887a6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x886c4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x5d8(%rbp), %rdi
callq 0x6908
leaq -0x5d9(%rbp), %rdi
callq 0x6470
jmp 0x887a6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x886fb
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x600(%rbp), %rdi
callq 0x6908
leaq -0x601(%rbp), %rdi
callq 0x6470
jmp 0x887a6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x88732
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x628(%rbp), %rdi
callq 0x6908
leaq -0x629(%rbp), %rdi
callq 0x6470
jmp 0x887a6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x88766
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x650(%rbp), %rdi
callq 0x6908
leaq -0x651(%rbp), %rdi
callq 0x6470
jmp 0x887a6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x8879a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x678(%rbp), %rdi
callq 0x6908
leaq -0x679(%rbp), %rdi
callq 0x6470
leaq -0x470(%rbp), %rdi
callq 0x26180
leaq -0x3f8(%rbp), %rdi
callq 0x1d3d0
leaq -0x250(%rbp), %rdi
callq 0x26180
leaq -0x38(%rbp), %rdi
callq 0x4cf70
movq -0x58(%rbp), %rdi
callq 0x67a0
nopl (%rax)