// File: /workspace/github_cpp_makefile_star2_O3/xnevs[P]bullimp/examples/colored_edges.cpp
// Function: main
int main() { 
    using namespace boost;
    using namespace ullimp;

    graph_type pattern;
    auto u0 = add_vertex(pattern);
    auto u1 = add_vertex(pattern);
    auto u2 = add_vertex(pattern);

    auto e01 = add_edge(u0, u1, pattern).first;
    auto e12 = add_edge(u1, u2, pattern).first;
    auto e20 = add_edge(u2, u0, pattern).first;

    pattern[e01].color = "red";
    pattern[e12].color = "black";
    pattern[e20].color = "black";

    graph_type graph;
    auto v0 = add_vertex(graph);
    auto v1 = add_vertex(graph);
    auto v2 = add_vertex(graph);
    auto v3 = add_vertex(graph);

    auto f01 = add_edge(v0, v1, graph).first;
    auto f12 = add_edge(v1, v2, graph).first;
    auto f20 = add_edge(v2, v0, graph).first;
    auto f13 = add_edge(v1, v3, graph).first;
    auto f30 = add_edge(v3, v0, graph).first;

    graph[f01].color = "red";
    graph[f12].color = "black";
    graph[f20].color = "black";
    graph[f13].color = "black";
    graph[f30].color = "black";

    auto index_map_p = get(vertex_index, pattern);
    auto index_map_g = get(vertex_index, graph);

    int count = 0;

    ullimp_subgraph_iso(pattern,
                        graph,
                        [&count, &pattern, &index_map_p, &index_map_g](auto const & iso, auto const & isoInv) {
                            std::cout << "found isomorphism:" << std::endl;
                            BGL_FORALL_VERTICES(u, pattern, graph_type) {
                                std::cout << "  " << index_map_p[u] << " -> " << index_map_g[iso[u]] << std::endl;
                            }
                            ++count;
                            return true;
                        },
                        get(vertex_index, pattern),
                        get(vertex_index, graph),
                        vertex_order_RDEG_CNC(pattern),
                        [&pattern, &graph](auto const & e, auto const & f) {
                            return pattern[e].color == graph[f].color;
                        },
                        always_equivalent());

    std::cout << "isomorphism count = " << count << std::endl;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x588, %rsp            # imm = 0x588
leaq 0xf0(%rsp), %rdi
leaq 0x1b0(%rsp), %rsi
callq 0x44b4
leaq 0x108(%rsp), %r14
movabsq $0x4ec4ec4ec4ec4ec5, %r15 # imm = 0x4EC4EC4EC4EC4EC5
movq 0x8(%r14), %rsi
subq (%r14), %rsi
sarq $0x3, %rsi
imulq %r15, %rsi
incq %rsi
movq %r14, %rdi
callq 0x4626
movq 0x110(%rsp), %rbx
subq 0x108(%rsp), %rbx
sarq $0x3, %rbx
imulq %r15, %rbx
leaq 0x1(%rbx), %rsi
movq %r14, %rdi
callq 0x4626
movq 0x110(%rsp), %r12
subq 0x108(%rsp), %r12
sarq $0x3, %r12
imulq %r15, %r12
leaq 0x1(%r12), %rsi
movq %r14, %rdi
callq 0x4626
movq 0x110(%rsp), %r14
decq %r12
decq %rbx
leaq 0x1c0(%rsp), %r13
subq 0x108(%rsp), %r14
movq %r12, %rsi
movq %r13, -0x10(%r13)
movq $0x0, -0x8(%r13)
movb $0x0, (%r13)
sarq $0x3, %r14
imulq %r15, %r14
cmpq %r12, %rbx
cmovaq %rbx, %rsi
cmpq %r14, %rsi
jb 0x248d
incq %rsi
leaq 0x108(%rsp), %rdi
callq 0x4626
leaq 0x78(%rsp), %rdi
leaq 0x1b0(%rsp), %rcx
leaq 0xf0(%rsp), %r8
movq %rbx, %rsi
movq %r12, %rdx
callq 0x491f
movq 0x1b0(%rsp), %rdi
decq %r14
cmpq %r13, %rdi
je 0x24cd
movq 0x1c0(%rsp), %rsi
incq %rsi
callq 0x2140
cmpq %r14, %r12
movq 0x110(%rsp), %rax
movq %r14, %rsi
movq 0x88(%rsp), %r15
movabsq $0x4ec4ec4ec4ec4ec5, %rcx # imm = 0x4EC4EC4EC4EC4EC5
movq %r13, 0x1b0(%rsp)
movq $0x0, 0x1b8(%rsp)
movb $0x0, 0x1c0(%rsp)
cmovaq %r12, %rsi
subq 0x108(%rsp), %rax
sarq $0x3, %rax
imulq %rcx, %rax
cmpq %rax, %rsi
jb 0x2532
incq %rsi
leaq 0x108(%rsp), %rdi
callq 0x4626
leaq 0x78(%rsp), %rdi
leaq 0x1b0(%rsp), %rcx
leaq 0xf0(%rsp), %r8
movq %r12, %rsi
movq %r14, %rdx
callq 0x491f
movq 0x1b0(%rsp), %rdi
cmpq %r13, %rdi
je 0x256f
movq 0x1c0(%rsp), %rsi
incq %rsi
callq 0x2140
cmpq %rbx, %r14
movq 0x110(%rsp), %rax
movq %rbx, %rsi
movq 0x88(%rsp), %r12
movabsq $0x4ec4ec4ec4ec4ec5, %rcx # imm = 0x4EC4EC4EC4EC4EC5
movq %r13, 0x1b0(%rsp)
movq $0x0, 0x1b8(%rsp)
movb $0x0, 0x1c0(%rsp)
cmovaq %r14, %rsi
subq 0x108(%rsp), %rax
sarq $0x3, %rax
imulq %rcx, %rax
cmpq %rax, %rsi
jb 0x25d4
incq %rsi
leaq 0x108(%rsp), %rdi
callq 0x4626
leaq 0x78(%rsp), %rdi
leaq 0x1b0(%rsp), %rcx
leaq 0xf0(%rsp), %r8
movq %r14, %rsi
movq %rbx, %rdx
callq 0x491f
movq 0x1b0(%rsp), %rdi
cmpq %r13, %rdi
je 0x2611
movq 0x1c0(%rsp), %rsi
incq %rsi
callq 0x2140
movq 0x88(%rsp), %rbx
movq 0x8(%r15), %rdx
leaq 0x3a64(%rip), %rcx      # 0x6088
movl $0x3, %r8d
movq %r15, %rdi
xorl %esi, %esi
callq 0x21b0
movq 0x8(%r12), %rdx
leaq 0x3a4c(%rip), %rcx      # 0x608c
movl $0x5, %r8d
movq %r12, %rdi
xorl %esi, %esi
callq 0x21b0
movq 0x8(%rbx), %rdx
leaq 0x3a31(%rip), %rcx      # 0x608c
movl $0x5, %r8d
movq %rbx, %rdi
xorl %esi, %esi
callq 0x21b0
leaq 0x78(%rsp), %rdi
leaq 0x1b0(%rsp), %rsi
callq 0x44b4
leaq 0x90(%rsp), %r14
movabsq $0x4ec4ec4ec4ec4ec5, %r12 # imm = 0x4EC4EC4EC4EC4EC5
movq 0x8(%r14), %rsi
subq (%r14), %rsi
sarq $0x3, %rsi
imulq %r12, %rsi
incq %rsi
movq %r14, %rdi
callq 0x4626
movq 0x98(%rsp), %rbx
subq 0x90(%rsp), %rbx
sarq $0x3, %rbx
imulq %r12, %rbx
leaq 0x1(%rbx), %rsi
movq %r14, %rdi
callq 0x4626
movq 0x98(%rsp), %r15
subq 0x90(%rsp), %r15
sarq $0x3, %r15
imulq %r12, %r15
leaq 0x1(%r15), %rsi
movq %r14, %rdi
callq 0x4626
movq 0x98(%rsp), %rbp
subq 0x90(%rsp), %rbp
sarq $0x3, %rbp
imulq %r12, %rbp
leaq 0x1(%rbp), %rsi
movq %r14, %rdi
callq 0x4626
movq 0x98(%rsp), %r14
decq %r15
decq %rbx
movq %r13, 0x1b0(%rsp)
movq $0x0, 0x1b8(%rsp)
movb $0x0, 0x1c0(%rsp)
subq 0x90(%rsp), %r14
movq %r15, %rsi
sarq $0x3, %r14
imulq %r12, %r14
cmpq %r15, %rbx
cmovaq %rbx, %rsi
cmpq %r14, %rsi
jb 0x276e
incq %rsi
leaq 0x90(%rsp), %rdi
callq 0x4626
leaq 0xb0(%rsp), %rdi
leaq 0x1b0(%rsp), %rcx
leaq 0x78(%rsp), %r8
movq %rbx, %rsi
movq %r15, %rdx
callq 0x491f
movq 0x1b0(%rsp), %rdi
decq %rbp
cmpq %r13, %rdi
je 0x27ae
movq 0x1c0(%rsp), %rsi
incq %rsi
callq 0x2140
cmpq %rbp, %r15
movq 0x98(%rsp), %rax
movq %rbp, %rsi
movq 0xc0(%rsp), %r12
movabsq $0x4ec4ec4ec4ec4ec5, %rcx # imm = 0x4EC4EC4EC4EC4EC5
movq %r13, 0x1b0(%rsp)
movq $0x0, 0x1b8(%rsp)
movb $0x0, 0x1c0(%rsp)
cmovaq %r15, %rsi
subq 0x90(%rsp), %rax
sarq $0x3, %rax
imulq %rcx, %rax
cmpq %rax, %rsi
jb 0x2813
incq %rsi
leaq 0x90(%rsp), %rdi
callq 0x4626
leaq 0xb0(%rsp), %rdi
leaq 0x1b0(%rsp), %rcx
leaq 0x78(%rsp), %r8
movq %r15, %rsi
movq %rbp, %rdx
callq 0x491f
movq 0x1b0(%rsp), %rdi
movq %r12, (%rsp)
cmpq %r13, %rdi
je 0x2854
movq 0x1c0(%rsp), %rsi
incq %rsi
callq 0x2140
cmpq %rbx, %rbp
movq 0x98(%rsp), %rax
movq %rbx, %rsi
movq 0xc0(%rsp), %r12
movabsq $0x4ec4ec4ec4ec4ec5, %rcx # imm = 0x4EC4EC4EC4EC4EC5
movq %r13, 0x1b0(%rsp)
movq $0x0, 0x1b8(%rsp)
movb $0x0, 0x1c0(%rsp)
cmovaq %rbp, %rsi
subq 0x90(%rsp), %rax
sarq $0x3, %rax
imulq %rcx, %rax
cmpq %rax, %rsi
jb 0x28b9
incq %rsi
leaq 0x90(%rsp), %rdi
callq 0x4626
leaq 0xb0(%rsp), %rdi
leaq 0x1b0(%rsp), %rcx
leaq 0x78(%rsp), %r8
movq %rbp, %rsi
movq %rbx, %rdx
callq 0x491f
movq 0x1b0(%rsp), %rdi
decq %r14
cmpq %r13, %rdi
je 0x28f9
movq 0x1c0(%rsp), %rsi
incq %rsi
callq 0x2140
cmpq %r14, %r15
movq 0x98(%rsp), %rax
movq %r14, %rsi
movq 0xc0(%rsp), %rbp
movabsq $0x4ec4ec4ec4ec4ec5, %rcx # imm = 0x4EC4EC4EC4EC4EC5
movq %r13, 0x1b0(%rsp)
movq $0x0, 0x1b8(%rsp)
movb $0x0, 0x1c0(%rsp)
cmovaq %r15, %rsi
subq 0x90(%rsp), %rax
sarq $0x3, %rax
imulq %rcx, %rax
cmpq %rax, %rsi
jb 0x295e
incq %rsi
leaq 0x90(%rsp), %rdi
callq 0x4626
leaq 0xb0(%rsp), %rdi
leaq 0x1b0(%rsp), %rcx
leaq 0x78(%rsp), %r8
movq %r15, %rsi
movq %r14, %rdx
callq 0x491f
movq 0x1b0(%rsp), %rdi
cmpq %r13, %rdi
je 0x299b
movq 0x1c0(%rsp), %rsi
incq %rsi
callq 0x2140
cmpq %rbx, %r14
movq 0x98(%rsp), %rax
movq %rbx, %rsi
movq 0xc0(%rsp), %r15
movabsq $0x4ec4ec4ec4ec4ec5, %rcx # imm = 0x4EC4EC4EC4EC4EC5
movq %r13, 0x1b0(%rsp)
movq $0x0, 0x1b8(%rsp)
movb $0x0, 0x1c0(%rsp)
cmovaq %r14, %rsi
subq 0x90(%rsp), %rax
sarq $0x3, %rax
imulq %rcx, %rax
cmpq %rax, %rsi
jb 0x2a00
incq %rsi
leaq 0x90(%rsp), %rdi
callq 0x4626
leaq 0x78(%rsp), %rax
leaq 0xb0(%rsp), %rdi
leaq 0x1b0(%rsp), %rcx
movq %r14, %rsi
movq %rbx, %rdx
movq %rax, %r8
movq %rax, %r14
callq 0x491f
movq 0x1b0(%rsp), %rdi
cmpq %r13, %rdi
je 0x2a43
movq 0x1c0(%rsp), %rsi
incq %rsi
callq 0x2140
movq (%rsp), %rdi
movq 0xc0(%rsp), %rbx
movq 0x8(%rdi), %rdx
leaq 0x362e(%rip), %rcx      # 0x6088
movl $0x3, %r8d
xorl %esi, %esi
callq 0x21b0
movabsq $0x4ec4ec4ec4ec4ec5, %r13 # imm = 0x4EC4EC4EC4EC4EC5
movq 0x8(%r12), %rdx
leaq 0x360f(%rip), %rcx      # 0x608c
movl $0x5, %r8d
movq %r12, %rdi
xorl %esi, %esi
callq 0x21b0
movq 0x8(%rbp), %rdx
leaq 0x35f4(%rip), %rcx      # 0x608c
movl $0x5, %r8d
movq %rbp, %rdi
xorl %esi, %esi
callq 0x21b0
movq 0x8(%r15), %rdx
leaq 0x35d9(%rip), %rcx      # 0x608c
movl $0x5, %r8d
movq %r15, %rdi
xorl %esi, %esi
callq 0x21b0
movq 0x8(%rbx), %rdx
leaq 0x35be(%rip), %rcx      # 0x608c
movl $0x5, %r8d
movq %rbx, %rdi
xorl %esi, %esi
callq 0x21b0
movl $0x0, 0x74(%rsp)
leaq 0xf0(%rsp), %rbx
leaq 0x138(%rsp), %rdi
movq %rbx, %rsi
callq 0x4c82
leaq 0x1c0(%rsp), %rdi
movq %rbx, -0x10(%rdi)
movq %r14, -0x8(%rdi)
movq %rbx, %rsi
callq 0x551c
leaq 0x2d8(%rsp), %rdi
leaq 0x78(%rsp), %r14
movq %r14, %rsi
callq 0x551c
movq 0x110(%rsp), %rax
movq 0x98(%rsp), %rcx
leaq 0x408(%rsp), %rdi
subq 0x108(%rsp), %rax
subq 0x90(%rsp), %rcx
sarq $0x3, %rax
sarq $0x3, %rcx
imulq %r13, %rax
imulq %r13, %rcx
movq %rax, -0x10(%rdi)
movq %rcx, -0x8(%rdi)
leaq 0x138(%rsp), %rsi
callq 0x595a
leaq 0x458(%rsp), %rdi
leaq 0x74(%rsp), %rax
leaq 0x57(%rsp), %rsi
leaq 0x56(%rsp), %rdx
movq %rbx, -0x38(%rdi)
movq %r14, -0x30(%rdi)
movq %rax, -0x20(%rdi)
movq %rbx, -0x18(%rdi)
movq %rsi, -0x10(%rdi)
movq %rdx, -0x8(%rdi)
leaq 0xb0(%rsp), %rdx
movq -0x60(%rdi), %rsi
movq $-0x1, (%rdx)
leaq 0x18(%rsp), %rcx
callq 0x59dc
leaq 0x480(%rsp), %rdi
leaq 0xb0(%rsp), %rdx
movq -0x28(%rdi), %rax
movq -0x80(%rdi), %rsi
movq $-0x1, (%rdx)
movq %rax, -0x10(%rdi)
leaq 0x18(%rsp), %rcx
callq 0x59dc
movq 0x480(%rsp), %r14
movq %r14, 0x498(%rsp)
movq 0x3f8(%rsp), %rbx
movq 0x400(%rsp), %r15
movq %rbx, 0x4a8(%rsp)
movq %r15, 0x4b0(%rsp)
imulq %rbx, %r15
movq %r15, %rdi
callq 0x2030
movq %rax, 0x4c0(%rsp)
movq %r15, %rax
shrq $0x3e, %rax
shlq $0x2, %r15
negq %rax
sbbq %r12, %r12
orq %r15, %r12
movq %r12, %rdi
callq 0x2030
movq %rax, 0x4c8(%rsp)
movq $-0x1, 0x4d0(%rsp)
movq %r12, %rdi
callq 0x2030
leaq 0x4e8(%rsp), %r14
movq %rax, -0x10(%r14)
movl $0xffffffff, -0x8(%r14) # imm = 0xFFFFFFFF
leaq 0xb0(%rsp), %rdx
movq %r14, %rdi
movq %rbx, %rsi
callq 0x5ab2
leaq 0x500(%rsp), %r15
movq -0x108(%r15), %rsi
leaq 0xb0(%rsp), %rdx
movq %r15, %rdi
callq 0x5ab2
leaq 0x518(%rsp), %r12
movq -0x120(%r12), %rsi
leaq 0xb0(%rsp), %rdx
movq %r12, %rdi
callq 0x5ab2
leaq 0x530(%rsp), %r13
movq -0x138(%r13), %rsi
leaq 0xb0(%rsp), %rdx
movq %r13, %rdi
callq 0x5ab2
movq 0x4e8(%rsp), %rax
movq 0x3f8(%rsp), %rsi
movq %rax, 0x548(%rsp)
movq 0x500(%rsp), %rax
movq %rax, 0x558(%rsp)
movq 0x518(%rsp), %rax
movq %rax, 0x568(%rsp)
movq 0x530(%rsp), %rax
movq %rax, 0x578(%rsp)
leaq 0xb0(%rsp), %rdi
leaq 0x18(%rsp), %rdx
callq 0x4fe4
movq 0xb0(%rsp), %rbp
cmpq $0x0, 0x3f8(%rsp)
je 0x2d7f
movq 0x138(%rsp), %rax
xorl %ecx, %ecx
movq (%rax,%rcx,8), %rdx
movq %rcx, (%rbp,%rdx,8)
incq %rcx
cmpq %rcx, 0x3f8(%rsp)
ja 0x2d69
movq 0x110(%rsp), %rcx
movq 0x108(%rsp), %rax
subq %rax, %rcx
je 0x2f27
sarq $0x3, %rcx
movabsq $0x4ec4ec4ec4ec4ec5, %rax # imm = 0x4EC4EC4EC4EC4EC5
xorl %r12d, %r12d
imulq %rax, %rcx
movq %rcx, (%rsp)
movq 0x298(%rsp), %rax
leaq (%r12,%r12,2), %r14
movq (%rbp,%r12,8), %r13
movq (%rax,%r14,8), %r15
movq 0x8(%rax,%r14,8), %rbx
cmpq %rbx, %r15
je 0x2e12
movq (%r15), %rax
movq %rax, 0x18(%rsp)
cmpq %r13, (%rbp,%rax,8)
jbe 0x2e0c
movq 0x548(%rsp), %rcx
leaq (%rcx,%r14,8), %rdi
movq 0x8(%rdi), %rsi
cmpq 0x10(%rdi), %rsi
je 0x2e02
movq %rax, (%rsi)
addq $0x8, %rsi
movq %rsi, 0x8(%rdi)
jmp 0x2e0c
leaq 0x18(%rsp), %rdx
callq 0x5ce4
addq $0x8, %r15
jmp 0x2dcb
movq 0x2a8(%rsp), %rax
movq (%rax,%r14,8), %r15
movq 0x8(%rax,%r14,8), %rbx
cmpq %rbx, %r15
je 0x2e6a
movq (%r15), %rax
movq %rax, 0x18(%rsp)
cmpq %r13, (%rbp,%rax,8)
jbe 0x2e64
movq 0x558(%rsp), %rcx
leaq (%rcx,%r14,8), %rdi
movq 0x8(%rdi), %rsi
cmpq 0x10(%rdi), %rsi
je 0x2e5a
movq %rax, (%rsi)
addq $0x8, %rsi
movq %rsi, 0x8(%rdi)
jmp 0x2e64
leaq 0x18(%rsp), %rdx
callq 0x5ce4
addq $0x8, %r15
jmp 0x2e23
movq 0x2b8(%rsp), %rax
movq (%rax,%r14,8), %r15
movq 0x8(%rax,%r14,8), %rbx
cmpq %rbx, %r15
je 0x2ec2
movq (%r15), %rax
movq %rax, 0x18(%rsp)
cmpq %r13, (%rbp,%rax,8)
jbe 0x2ebc
movq 0x568(%rsp), %rcx
leaq (%rcx,%r14,8), %rdi
movq 0x8(%rdi), %rsi
cmpq 0x10(%rdi), %rsi
je 0x2eb2
movq %rax, (%rsi)
addq $0x8, %rsi
movq %rsi, 0x8(%rdi)
jmp 0x2ebc
leaq 0x18(%rsp), %rdx
callq 0x5ce4
addq $0x8, %r15
jmp 0x2e7b
movq 0x2c8(%rsp), %rax
movq (%rax,%r14,8), %rbx
movq 0x8(%rax,%r14,8), %r15
cmpq %r15, %rbx
je 0x2f1a
movq (%rbx), %rax
movq %rax, 0x18(%rsp)
cmpq %r13, (%rbp,%rax,8)
jbe 0x2f14
movq 0x578(%rsp), %rcx
leaq (%rcx,%r14,8), %rdi
movq 0x8(%rdi), %rsi
cmpq 0x10(%rdi), %rsi
je 0x2f0a
movq %rax, (%rsi)
addq $0x8, %rsi
movq %rsi, 0x8(%rdi)
jmp 0x2f14
leaq 0x18(%rsp), %rdx
callq 0x5ce4
addq $0x8, %rbx
jmp 0x2ed3
incq %r12
cmpq (%rsp), %r12
jne 0x2db1
movq 0xb0(%rsp), %rdi
testq %rdi, %rdi
je 0x2f44
movq 0xc0(%rsp), %rsi
subq %rdi, %rsi
callq 0x2140
movq 0x1b0(%rsp), %rax
movq 0x18(%rax), %rcx
movq 0x20(%rax), %rax
subq %rcx, %rax
movq %rcx, 0x58(%rsp)
je 0x3205
movq 0x1b8(%rsp), %rcx
sarq $0x3, %rax
movabsq $0x4ec4ec4ec4ec4ec5, %r15 # imm = 0x4EC4EC4EC4EC4EC5
movq 0x4b0(%rsp), %rsi
movq 0x4c0(%rsp), %rdi
xorl %r9d, %r9d
imulq %r15, %rax
movq %rax, 0x20(%rsp)
movq 0x18(%rcx), %rax
movq 0x20(%rcx), %rcx
movq %rcx, %rdx
subq %rax, %rdx
leaq 0x58(%rax), %r8
sarq $0x3, %rdx
imulq %r15, %rdx
cmpq %rax, %rcx
je 0x2fed
movq 0x58(%rsp), %rbx
imulq $0x68, %r9, %r11
xorl %r14d, %r14d
movq 0x28(%rbx,%r11), %r10
movq 0x58(%rbx,%r11), %r11
movq %r8, %rbx
cmpq %r11, (%rbx)
jae 0x2fd5
xorl %ebp, %ebp
jmp 0x2fdd
cmpq %r10, -0x30(%rbx)
setae %bpl
movb %bpl, (%rdi,%r14)
incq %r14
addq $0x68, %rbx
cmpq %r14, %rdx
jne 0x2fcc
incq %r9
addq %rsi, %rdi
cmpq 0x20(%rsp), %r9
jne 0x2fae
movq 0x1b8(%rsp), %rax
movq 0x18(%rax), %rcx
movq 0x20(%rax), %rax
movq %rax, %rdx
subq %rcx, %rdx
movq %rax, 0xe8(%rsp)
movq %rcx, 0x30(%rsp)
sarq $0x3, %rdx
imulq %r15, %rdx
movq %rdx, 0x8(%rsp)
movq 0x4b0(%rsp), %rax
movq 0x4c0(%rsp), %rsi
xorl %ecx, %ecx
movq $0x0, 0x48(%rsp)
movq %rax, 0x60(%rsp)
movq %rsi, 0x68(%rsp)
movq 0xe8(%rsp), %rax
movq %rcx, 0x38(%rsp)
cmpq 0x30(%rsp), %rax
je 0x31e7
movq %rcx, %rdi
imulq 0x60(%rsp), %rdi
movq 0x58(%rsp), %r9
imulq $0x68, %rcx, %rax
xorl %r12d, %r12d
addq 0x68(%rsp), %rdi
leaq (%r9,%rax), %rsi
leaq 0x8(%r9,%rax), %r8
leaq 0x38(%r9,%rax), %rax
movq %rsi, 0xd0(%rsp)
movq %r8, (%rsp)
movq %rax, 0x28(%rsp)
movq %rdi, 0x10(%rsp)
cmpb $0x1, (%rdi,%r12)
jne 0x31db
movq 0xd0(%rsp), %rax
movq 0x18(%rax), %rbx
cmpq (%rsp), %rbx
je 0x3139
movq 0x30(%rsp), %rcx
imulq $0x68, %r12, %rax
leaq 0x8(%rcx,%rax), %r14
movq 0x10(%r14), %rbp
cmpq %r14, %rbp
je 0x31c5
movq 0x4b0(%rsp), %rax
movq 0x4c0(%rsp), %rcx
movq %rax, 0x40(%rsp)
movq 0x20(%rbx), %r15
movq %rcx, %r13
imulq %rax, %r15
movq %rbp, %rax
addq %rcx, %r15
movq 0x20(%rax), %rcx
cmpb $0x0, (%r15,%rcx)
jne 0x3120
movq %rax, %rdi
callq 0x2180
cmpq %r14, %rax
jne 0x3103
jmp 0x31c5
movq %rbx, %rdi
callq 0x2180
movq %rax, %rbx
movq %r13, %rcx
cmpq (%rsp), %rax
movq 0x40(%rsp), %rax
jne 0x30f2
movq (%rsp), %rax
movq 0x40(%rax), %rbx
cmpq 0x28(%rsp), %rbx
je 0x31b9
movq 0x30(%rsp), %rcx
imulq $0x68, %r12, %rax
leaq 0x38(%rcx,%rax), %r14
movq 0x10(%r14), %rbp
cmpq %r14, %rbp
je 0x31c5
movq 0x4b0(%rsp), %rcx
movq 0x4c0(%rsp), %rax
movq %rcx, 0x40(%rsp)
movq 0x20(%rbx), %r15
movq %rax, %r13
imulq %rcx, %r15
addq %rax, %r15
movq %rbp, %rax
movq 0x20(%rax), %rcx
cmpb $0x0, (%r15,%rcx)
jne 0x319f
movq %rax, %rdi
callq 0x2180
cmpq %r14, %rax
jne 0x3185
jmp 0x31c5
movq %rbx, %rdi
callq 0x2180
movq 0x40(%rsp), %rcx
movq %rax, %rbx
cmpq 0x28(%rsp), %rax
movq %r13, %rax
jne 0x3174
movq 0x8(%rsp), %rdx
movq 0x10(%rsp), %rdi
jmp 0x31db
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %rdx
movb $0x1, %al
movq %rax, 0x48(%rsp)
movb $0x0, (%rdi,%r12)
incq %r12
cmpq %rdx, %r12
jne 0x30a5
movq 0x38(%rsp), %rcx
incq %rcx
cmpq 0x20(%rsp), %rcx
jne 0x304f
testb $0x1, 0x48(%rsp)
jne 0x302a
leaq 0x1b0(%rsp), %rax
xorl %edi, %edi
movq 0x258(%rax), %r12
movq 0x3f8(%rsp), %rcx
movq 0x1b8(%rsp), %rax
movabsq $0x4ec4ec4ec4ec4ec5, %rdx # imm = 0x4EC4EC4EC4EC4EC5
decq %rcx
cmpq %rcx, %rdi
jae 0x39f9
movq 0x498(%rsp), %rcx
movq 0x18(%rax), %rsi
movq 0x470(%rsp), %r8
movq %rcx, 0x130(%rsp)
movq 0x20(%rax), %rcx
movq %rsi, 0x158(%rsp)
movq %r8, 0x60(%rsp)
movq %rcx, 0x150(%rsp)
subq %rsi, %rcx
movq 0x4d8(%rsp), %rsi
sarq $0x3, %rcx
imulq %rdx, %rcx
movq 0x4c0(%rsp), %rdx
movq %rsi, 0x68(%rsp)
movq 0x3d0(%rsp), %rsi
movq %rcx, 0xd0(%rsp)
movq %rdx, 0x58(%rsp)
movq 0x548(%rsp), %rdx
movq %rsi, 0x178(%rsp)
movq 0x3e0(%rsp), %rsi
movq %rdx, 0x1a0(%rsp)
movq 0x558(%rsp), %rdx
movq %rsi, 0x170(%rsp)
movq 0x3c0(%rsp), %rsi
movq %rdx, 0x198(%rsp)
movq 0x3b0(%rsp), %rdx
movq %rsi, 0x188(%rsp)
movq 0x578(%rsp), %rsi
movq %rdx, 0x190(%rsp)
movq 0x568(%rsp), %rdx
movq %rsi, 0x160(%rsp)
movq %rdx, 0x168(%rsp)
movq 0x4c8(%rsp), %rdx
movq %rdx, 0x128(%rsp)
movq (%r12), %rsi
movq %rdi, 0x10(%rsp)
movq %r12, 0x8(%rsp)
movq (%r8,%rsi,8), %rax
cmpq $-0x1, %rax
je 0x3362
movq 0x130(%rsp), %rdx
movq %rsi, %rbp
movq $-0x1, (%rdx,%rax,8)
movq (%r8,%rsi,8), %r13
incq %r13
jmp 0x3368
movq %rsi, %rbp
xorl %r13d, %r13d
cmpq %rcx, %r13
je 0x33c8
movq 0x4b0(%rsp), %r14
movq 0x498(%rsp), %r15
leaq 0x1(%r13,%r13,2), %rbx
imulq %rbp, %r14
addq 0x58(%rsp), %r14
cmpb $0x1, (%r14,%r13)
jne 0x33bc
cmpq $-0x1, (%r15,%r13,8)
jne 0x33bc
leaq 0x1b0(%rsp), %rdi
movq %rbp, %rsi
movq %r13, %rdx
callq 0x4300
movq 0xd0(%rsp), %rcx
testb %al, %al
jne 0x346d
incq %r13
addq $0x3, %rbx
cmpq %r13, %rcx
jne 0x338b
movq 0x60(%rsp), %r8
cmpq $-0x1, %rbp
je 0x33db
movq $-0x1, (%r8,%rbp,8)
movq 0x10(%rsp), %rdi
leaq 0x108(%rsp), %r14
subq $0x1, %rdi
jb 0x3c51
movslq 0x4e0(%rsp), %rax
movq 0x68(%rsp), %rdx
movq 0x8(%rsp), %r12
leal -0x1(%rax), %ecx
addq $-0x8, %r12
movl %ecx, 0x4e0(%rsp)
movslq (%rdx,%rax,4), %rax
movslq 0x4d0(%rsp), %rcx
cmpl %eax, %ecx
jle 0x344c
movq 0x58(%rsp), %r9
movq 0x128(%rsp), %r10
leal -0x1(%rcx), %edx
movl %edx, 0x4d0(%rsp)
decl %edx
movslq (%r10,%rcx,4), %rsi
decq %rcx
movb $0x1, (%r9,%rsi)
cmpq %rax, %rcx
jg 0x3432
movq 0x3f8(%rsp), %rax
movq 0xd0(%rsp), %rcx
decq %rax
cmpq %rax, %rdi
jb 0x332e
jmp 0x3a1b
cmpq $-0x1, %r13
je 0x33c8
movq 0x60(%rsp), %rax
movq 0x68(%rsp), %rsi
movq %rbp, 0x180(%rsp)
movq %r13, (%rax,%rbp,8)
movq 0x130(%rsp), %rax
movq %rbp, (%rax,%r13,8)
movslq 0x4e0(%rsp), %rcx
movl 0x4d0(%rsp), %eax
leaq 0x1(%rcx), %rdx
movl %edx, 0x4e0(%rsp)
movl %eax, 0x4(%rsi,%rcx,4)
movq 0x1a0(%rsp), %rsi
movl %eax, 0x4d4(%rsp)
leaq (%rbp,%rbp,2), %rax
movq (%rsi,%rax,8), %rdx
movq 0x8(%rsi,%rax,8), %rcx
movq %rdx, 0x20(%rsp)
movq %rcx, 0x28(%rsp)
cmpq %rcx, %rdx
je 0x356f
movq 0x178(%rsp), %rdx
movq 0x498(%rsp), %rsi
movq 0x20(%rsp), %rdi
movq -0x8(%rdx,%rbx,8), %rcx
movq (%rdx,%rbx,8), %rdx
cmpq %rdx, %rcx
je 0x3564
movq 0x4b0(%rsp), %r8
movq 0x4c0(%rsp), %r9
movq 0x4c8(%rsp), %r10
movq %rcx, %r11
imulq (%rdi), %r8
movq (%r11), %r14
cmpq $-0x1, (%rsi,%r14,8)
jne 0x355b
addq %r8, %r14
cmpb $0x1, (%r9,%r14)
jne 0x355b
movb $0x0, (%r9,%r14)
movslq 0x4d0(%rsp), %r15
leaq 0x1(%r15), %r12
movl %r12d, 0x4d0(%rsp)
movl %r14d, 0x4(%r10,%r15,4)
addq $0x8, %r11
cmpq %rdx, %r11
jne 0x3529
addq $0x8, %rdi
cmpq 0x28(%rsp), %rdi
jne 0x3505
movq 0x198(%rsp), %rcx
movq (%rcx,%rax,8), %rdx
movq 0x8(%rcx,%rax,8), %rcx
movq %rdx, 0x38(%rsp)
movq %rcx, 0x40(%rsp)
cmpq %rcx, %rdx
je 0x361b
movq 0x170(%rsp), %rdx
movq 0x498(%rsp), %rsi
movq 0x38(%rsp), %rdi
movq -0x8(%rdx,%rbx,8), %rcx
movq (%rdx,%rbx,8), %rdx
cmpq %rdx, %rcx
je 0x3610
movq 0x4b0(%rsp), %r8
movq 0x4c0(%rsp), %r9
movq 0x4c8(%rsp), %r10
movq %rcx, %r11
imulq (%rdi), %r8
movq (%r11), %r14
cmpq $-0x1, (%rsi,%r14,8)
jne 0x3607
addq %r8, %r14
cmpb $0x1, (%r9,%r14)
jne 0x3607
movb $0x0, (%r9,%r14)
movslq 0x4d0(%rsp), %r15
leaq 0x1(%r15), %r12
movl %r12d, 0x4d0(%rsp)
movl %r14d, 0x4(%r10,%r15,4)
addq $0x8, %r11
cmpq %rdx, %r11
jne 0x35d5
addq $0x8, %rdi
cmpq 0x40(%rsp), %rdi
jne 0x35b1
movq 0x190(%rsp), %rcx
movq -0x8(%rcx,%rbx,8), %rdx
movq (%rcx,%rbx,8), %r14
movq %rdx, 0xd8(%rsp)
cmpq %r14, %rdx
je 0x36b6
movq 0x168(%rsp), %rdx
movq 0x4b0(%rsp), %rsi
movq 0x4c0(%rsp), %rdi
movq 0xd8(%rsp), %r8
movq (%rdx,%rax,8), %rcx
movq 0x8(%rdx,%rax,8), %rdx
cmpq %rdx, %rcx
je 0x36ad
movq (%r8), %r9
movq 0x4c8(%rsp), %r10
movq %rcx, %r11
movq (%r11), %r15
imulq %rsi, %r15
addq %r9, %r15
cmpb $0x1, (%rdi,%r15)
jne 0x36a4
movb $0x0, (%rdi,%r15)
movslq 0x4d0(%rsp), %r12
leaq 0x1(%r12), %rbp
movl %ebp, 0x4d0(%rsp)
movl %r15d, 0x4(%r10,%r12,4)
addq $0x8, %r11
cmpq %rdx, %r11
jne 0x3675
addq $0x8, %r8
cmpq %r14, %r8
jne 0x3662
movq 0x188(%rsp), %rcx
movq -0x8(%rcx,%rbx,8), %rdx
movq (%rcx,%rbx,8), %rcx
movq %rdx, 0xe0(%rsp)
movq %rcx, (%rsp)
cmpq %rcx, %rdx
je 0x3756
movq 0x160(%rsp), %rdx
movq 0x4c0(%rsp), %rsi
movq 0xe0(%rsp), %rdi
movq (%rdx,%rax,8), %rcx
movq 0x8(%rdx,%rax,8), %rax
movq 0x4b0(%rsp), %rdx
cmpq %rax, %rcx
je 0x374c
movq (%rdi), %r8
movq 0x4c8(%rsp), %r9
movq %rcx, %r10
movq (%r10), %r11
imulq %rdx, %r11
addq %r8, %r11
cmpb $0x1, (%rsi,%r11)
jne 0x3743
movb $0x0, (%rsi,%r11)
movslq 0x4d0(%rsp), %rbx
leaq 0x1(%rbx), %r15
movl %r15d, 0x4d0(%rsp)
movl %r11d, 0x4(%r9,%rbx,4)
addq $0x8, %r10
cmpq %rax, %r10
jne 0x3714
addq $0x8, %rdi
cmpq (%rsp), %rdi
jne 0x3701
movq 0x3f8(%rsp), %rax
shrq %rax
cmpq %rax, 0x10(%rsp)
ja 0x3959
movq 0x28(%rsp), %rax
cmpq %rax, 0x20(%rsp)
je 0x3864
movq 0x498(%rsp), %r15
cmpq %r14, 0xd8(%rsp)
je 0x384b
movq 0x20(%rsp), %rax
movq 0x4c8(%rsp), %rdx
movq 0x4c0(%rsp), %rcx
movq 0xd8(%rsp), %r12
movq (%rax), %rax
movq %rdx, 0x1a8(%rsp)
movq 0x4b0(%rsp), %rdx
movq %rcx, 0x48(%rsp)
imulq %rax, %rdx
movq %rax, 0x30(%rsp)
leaq (%rcx,%rdx), %rbp
movq %rdx, 0xe8(%rsp)
movq (%r12), %rbx
cmpq $-0x1, (%r15,%rbx,8)
jne 0x3842
cmpb $0x1, (%rbp,%rbx)
jne 0x3842
movq 0x30(%rsp), %rsi
leaq 0x1b0(%rsp), %rdi
movq %rbx, %rdx
callq 0x41ee
testb %al, %al
jne 0x3842
addq 0xe8(%rsp), %rbx
movq 0x48(%rsp), %rax
cmpb $0x1, (%rax,%rbx)
jne 0x3842
movq 0x48(%rsp), %rax
movq 0x1a8(%rsp), %rdx
movb $0x0, (%rax,%rbx)
movslq 0x4d0(%rsp), %rax
leaq 0x1(%rax), %rcx
movl %ecx, 0x4d0(%rsp)
movl %ebx, 0x4(%rdx,%rax,4)
addq $0x8, %r12
cmpq %r14, %r12
jne 0x37dc
movq 0x20(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x20(%rsp)
cmpq 0x28(%rsp), %rax
jne 0x3784
movq 0x40(%rsp), %rax
cmpq %rax, 0x38(%rsp)
je 0x3959
movq 0x498(%rsp), %r14
movq (%rsp), %rax
cmpq %rax, 0xe0(%rsp)
je 0x3940
movq 0x38(%rsp), %rax
movq 0x4c8(%rsp), %rdx
movq 0x4c0(%rsp), %rcx
movq 0xe0(%rsp), %r12
movq (%rax), %rbp
movq %rdx, 0x28(%rsp)
movq 0x4b0(%rsp), %rdx
movq (%rsp), %rax
movq %rcx, 0x30(%rsp)
imulq %rbp, %rdx
leaq (%rcx,%rdx), %r15
movq %rdx, 0x48(%rsp)
movq (%r12), %rbx
cmpq $-0x1, (%r14,%rbx,8)
jne 0x3937
cmpb $0x1, (%r15,%rbx)
jne 0x3937
leaq 0x1b0(%rsp), %rdi
movq %rbp, %rsi
movq %rbx, %rdx
callq 0x41ee
testb %al, %al
movq (%rsp), %rax
jne 0x3937
addq 0x48(%rsp), %rbx
movq 0x30(%rsp), %rcx
cmpb $0x1, (%rcx,%rbx)
jne 0x3937
movq 0x30(%rsp), %rax
movq 0x28(%rsp), %rdx
movb $0x0, (%rax,%rbx)
movslq 0x4d0(%rsp), %rax
leaq 0x1(%rax), %rcx
movl %ecx, 0x4d0(%rsp)
movl %ebx, 0x4(%rdx,%rax,4)
movq (%rsp), %rax
addq $0x8, %r12
cmpq %rax, %r12
jne 0x38d1
movq 0x38(%rsp), %rax
addq $0x8, %rax
movq %rax, 0x38(%rsp)
cmpq 0x40(%rsp), %rax
jne 0x387c
movq 0x180(%rsp), %rsi
leaq 0x1b0(%rsp), %rdi
movq %r13, %rdx
callq 0x41ee
testb %al, %al
je 0x3990
movq 0x10(%rsp), %rdi
movq 0x8(%rsp), %r12
movq 0x60(%rsp), %r8
incq %rdi
addq $0x8, %r12
jmp 0x344c
movslq 0x4e0(%rsp), %rax
movq 0x68(%rsp), %rdx
movq 0x8(%rsp), %r12
movq 0x10(%rsp), %rdi
movq 0x60(%rsp), %r8
movq 0x58(%rsp), %r9
movq 0x128(%rsp), %r10
leal -0x1(%rax), %ecx
movl %ecx, 0x4e0(%rsp)
movslq (%rdx,%rax,4), %rax
movslq 0x4d0(%rsp), %rcx
cmpl %eax, %ecx
jle 0x344c
leal -0x1(%rcx), %edx
movl %edx, 0x4d0(%rsp)
decl %edx
movslq (%r10,%rcx,4), %rsi
decq %rcx
movb $0x1, (%r9,%rsi)
cmpq %rax, %rcx
jg 0x39da
jmp 0x344c
movq 0x18(%rax), %rsi
movq 0x20(%rax), %rax
movq %rdi, 0x10(%rsp)
movq %r12, 0x8(%rsp)
movq %rax, %rcx
subq %rsi, %rcx
sarq $0x3, %rcx
imulq %rdx, %rcx
jmp 0x3a35
movq 0x158(%rsp), %rsi
movq 0x150(%rsp), %rax
movq %rdi, 0x10(%rsp)
movq %r12, 0x8(%rsp)
cmpq %rsi, %rax
je 0x3be4
movq 0x8(%rsp), %rax
xorl %r13d, %r13d
movq (%rax), %r14
movq 0x498(%rsp), %rbx
cmpq $-0x1, (%rbx,%r13,8)
jne 0x3bd8
movq 0x4b0(%rsp), %rax
imulq %r14, %rax
addq 0x4c0(%rsp), %rax
cmpb $0x1, (%r13,%rax)
jne 0x3bd8
leaq 0x1b0(%rsp), %rdi
movq %r14, %rsi
movq %r13, %rdx
movq %rcx, %r12
callq 0x4300
movq %r12, %rcx
testb %al, %al
je 0x3bd8
movq 0x470(%rsp), %rax
movq %r13, (%rax,%r14,8)
movq %r14, (%rbx,%r13,8)
movq 0x5524(%rip), %rdi      # 0x8fd8
movl $0x12, %edx
leaq 0x2686(%rip), %rsi      # 0x6146
callq 0x2170
movq 0x550c(%rip), %rcx      # 0x8fd8
movq (%rcx), %rax
movq -0x18(%rax), %rdi
addq %rcx, %rdi
movl $0xa, %esi
callq 0x2120
movq 0x54f1(%rip), %rdi      # 0x8fd8
movsbl %al, %esi
callq 0x2040
movq %rax, %rdi
callq 0x20d0
movq 0x440(%rsp), %rax
movq 0x20(%rax), %r15
movq 0x18(%rax), %rax
subq %rax, %r15
je 0x3bac
sarq $0x3, %r15
movabsq $0x4ec4ec4ec4ec4ec5, %rax # imm = 0x4EC4EC4EC4EC4EC5
xorl %ebp, %ebp
imulq %rax, %r15
movq 0x54ad(%rip), %rdi      # 0x8fd8
movl $0x2, %edx
leaq 0x2622(%rip), %rsi      # 0x6159
callq 0x2170
movq 0x5495(%rip), %rdi      # 0x8fd8
movq %rbp, %rsi
callq 0x20c0
movl $0x4, %edx
leaq 0x2605(%rip), %rsi      # 0x615c
movq %rax, %rdi
movq %rax, %rbx
callq 0x2170
movq 0x470(%rsp), %rax
movq (%rax,%rbp,8), %rsi
movq %rbx, %rdi
callq 0x20c0
movq %rax, %rbx
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2120
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x20d0
incq %rbp
cmpq %rbp, %r15
jne 0x3b24
movq 0x438(%rsp), %rax
movq $-0x1, %rcx
incl (%rax)
movq 0x470(%rsp), %rax
movq %rcx, (%rax,%r14,8)
movq 0x498(%rsp), %rax
movq %rcx, (%rax,%r13,8)
movq %r12, %rcx
incq %r13
cmpq %rcx, %r13
jne 0x3a49
movslq 0x4e0(%rsp), %rcx
movq 0x4d8(%rsp), %rax
leal -0x1(%rcx), %edx
movl %edx, 0x4e0(%rsp)
movslq (%rax,%rcx,4), %rax
movslq 0x4d0(%rsp), %rcx
cmpl %eax, %ecx
jle 0x3c3b
movq 0x4c0(%rsp), %rdx
movq 0x4c8(%rsp), %rsi
leal -0x1(%rcx), %edi
movl %edi, 0x4d0(%rsp)
decl %edi
movslq (%rsi,%rcx,4), %r8
decq %rcx
movb $0x1, (%rdx,%r8)
cmpq %rax, %rcx
jg 0x3c21
movq 0x8(%rsp), %r12
movq 0x10(%rsp), %rdi
addq $-0x8, %r12
decq %rdi
jmp 0x3216
leaq 0x1b0(%rsp), %rdi
callq 0x4038
movq 0x138(%rsp), %rdi
testq %rdi, %rdi
je 0x3c7b
movq 0x148(%rsp), %rsi
subq %rdi, %rsi
callq 0x2140
movq 0x5356(%rip), %rdi      # 0x8fd8
leaq 0x2409(%rip), %rsi      # 0x6092
movl $0x14, %edx
callq 0x2170
movl 0x74(%rsp), %esi
movq 0x533a(%rip), %rdi      # 0x8fd8
callq 0x21e0
movq %rax, %rbx
movq (%rax), %rax
movq -0x18(%rax), %rdi
addq %rbx, %rdi
movl $0xa, %esi
callq 0x2120
movsbl %al, %esi
movq %rbx, %rdi
callq 0x2040
movq %rax, %rdi
callq 0x20d0
leaq 0x78(%rsp), %rbx
movl $0x1, %esi
movq 0x30(%rbx), %rdi
callq 0x2140
leaq 0x90(%rsp), %rdi
callq 0x4524
movq %rbx, %rdi
callq 0x45e0
leaq 0xf0(%rsp), %rbx
movl $0x1, %esi
movq 0x30(%rbx), %rdi
callq 0x2140
movq %r14, %rdi
callq 0x4524
movq %rbx, %rdi
callq 0x45e0
xorl %eax, %eax
addq $0x588, %rsp            # imm = 0x588
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
jmp 0x3e4f
movq %rax, %rbx
jmp 0x3e57
movq %rax, %rbx
jmp 0x3e5f
movq %rax, %rbx
jmp 0x3e67
movq %rax, %rbx
jmp 0x3e6f
movq %rax, %rbx
jmp 0x3e9b
movq %rax, %rbx
jmp 0x3eb8
movq %rax, %rbx
jmp 0x3ed5
movq %rax, %rbx
jmp 0x3f5f
movq %rax, %rbx
jmp 0x3ffb
jmp 0x3dfc
jmp 0x3dfc
jmp 0x3dfc
jmp 0x3dfc
jmp 0x3dfc
jmp 0x3df2
jmp 0x3df2
jmp 0x3df2
jmp 0x3df2
jmp 0x3d99
jmp 0x3d99
jmp 0x3d99
jmp 0x3d99
movq 0x1b0(%rsp), %rdi
movq %rax, %rbx
cmpq %r13, %rdi
je 0x4018
movq 0x1c0(%rsp), %rsi
incq %rsi
jmp 0x4013
jmp 0x3dc1
jmp 0x3dc1
movq 0x1b0(%rsp), %rdi
movq %rax, %rbx
cmpq %r13, %rdi
je 0x4022
movq 0x1c0(%rsp), %rsi
incq %rsi
callq 0x2140
jmp 0x4022
movq %rax, %rbx
jmp 0x3e83
movq %rax, %rbx
jmp 0x4022
jmp 0x3dfc
movq %rax, %rbx
jmp 0x4018
jmp 0x3feb
jmp 0x3e0f
jmp 0x3e0f
jmp 0x3e0f
movq 0xb0(%rsp), %rdi
leaq 0x4e8(%rsp), %r14
leaq 0x500(%rsp), %r15
leaq 0x518(%rsp), %r12
leaq 0x530(%rsp), %r13
movq %rax, %rbx
testq %rdi, %rdi
je 0x3e4f
movq 0xc0(%rsp), %rsi
subq %rdi, %rsi
callq 0x2140
movq %r13, %rdi
callq 0x5b34
movq %r12, %rdi
callq 0x5b34
movq %r15, %rdi
callq 0x5b34
movq %r14, %rdi
callq 0x5b34
leaq 0x4a8(%rsp), %r14
movq %r14, %rdi
callq 0x41bc
movq -0x28(%r14), %r14
testq %r14, %r14
je 0x3e9b
movq 0x490(%rsp), %rsi
movq %r14, %rdi
subq %r14, %rsi
callq 0x2140
movq 0x458(%rsp), %rdi
testq %rdi, %rdi
je 0x3eb8
movq 0x468(%rsp), %rsi
subq %rdi, %rsi
callq 0x2140
movq 0x408(%rsp), %rdi
testq %rdi, %rdi
je 0x3ed5
movq 0x418(%rsp), %rsi
subq %rdi, %rsi
callq 0x2140
leaq 0x398(%rsp), %rdi
callq 0x5b34
leaq 0x380(%rsp), %rdi
callq 0x5b34
leaq 0x368(%rsp), %rdi
callq 0x5b34
leaq 0x350(%rsp), %r14
movq %r14, %rdi
callq 0x5b34
movq -0x38(%r14), %rdi
testq %rdi, %rdi
je 0x3f25
movq 0x328(%rsp), %rsi
subq %rdi, %rsi
callq 0x2140
movq 0x300(%rsp), %rdi
testq %rdi, %rdi
je 0x3f42
movq 0x310(%rsp), %rsi
subq %rdi, %rsi
callq 0x2140
movq 0x2e8(%rsp), %rdi
testq %rdi, %rdi
je 0x3f5f
movq 0x2f8(%rsp), %rsi
subq %rdi, %rsi
callq 0x2140
leaq 0x280(%rsp), %rdi
callq 0x5b34
leaq 0x268(%rsp), %rdi
callq 0x5b34
leaq 0x250(%rsp), %rdi
callq 0x5b34
leaq 0x238(%rsp), %r14
movq %r14, %rdi
callq 0x5b34
movq -0x38(%r14), %rdi
testq %rdi, %rdi
je 0x3faf
movq 0x210(%rsp), %rsi
subq %rdi, %rsi
callq 0x2140
movq 0x1e8(%rsp), %rdi
testq %rdi, %rdi
je 0x3fcc
movq 0x1f8(%rsp), %rsi
subq %rdi, %rsi
callq 0x2140
movq 0x1d0(%rsp), %rdi
testq %rdi, %rdi
je 0x3ffb
movq 0x1e0(%rsp), %rsi
subq %rdi, %rsi
callq 0x2140
jmp 0x3ffb
leaq 0x1b0(%rsp), %rdi
movq %rax, %rbx
callq 0x4038
movq 0x138(%rsp), %rdi
testq %rdi, %rdi
je 0x4018
movq 0x148(%rsp), %rsi
subq %rdi, %rsi
callq 0x2140
leaq 0x78(%rsp), %rdi
callq 0x4500
leaq 0xf0(%rsp), %rdi
callq 0x4500
movq %rbx, %rdi
callq 0x21f0
nop