// File: xnevs[P]bullimp/examples/../graph/ullimp_sub_graph_iso.hpp
// Function: ullimp::detail::UllImp<boost::adjacency_list<boost::setS, boost::vecS, boost::bidirectionalS, boost::no_property, Color, boost::no_property, boost::listS>, boost::adjacency_list<boost::setS, boost::vecS, boost::bidirectionalS, boost::no_property, Color, boost::no_property, boost::listS>, boost::vec_adj_list_vertex_id_map<boost::no_property, unsigned long>, boost::vec_adj_list_vertex_id_map<boost::no_property, unsigned long>, std::vector<unsigned long, std::allocator<unsigned long>>, main::$_0, boost::always_equivalent, main::$_1>::UllImp(boost::adjacency_list<boost::setS, boost::vecS, boost::bidirectionalS, boost::no_property, Color, boost::no_property, boost::listS> const&, boost::adjacency_list<boost::setS, boost::vecS, boost::bidirectionalS, boost::no_property, Color, boost::no_property, boost::listS> const&, main::$_1, boost::vec_adj_list_vertex_id_map<boost::no_property, unsigned long> const&, boost::vec_adj_list_vertex_id_map<boost::no_property, unsigned long> const&, std::vector<unsigned long, std::allocator<unsigned long>> const&, main::$_0, boost::always_equivalent)
UllImp(GraphSmall const & g, GraphLarge const & h, SubGraphIsoMapCallback user_callback,
               IndexMapSmall const & index_map_small, IndexMapLarge const & index_map_large,
               VertexOrderSmall const & vertex_order_small,
               EdgeEquivalencePredicate edge_comp, VertexEquivalencePredicate vertex_comp)
                    : g(g), h(h),
                      gg(g, index_map_small), hh(h, index_map_large),
                      index_map_small(index_map_small), index_map_large(index_map_large),
                      n(num_vertices(g)), m(num_vertices(h)),
                      vertex_order_small(vertex_order_small),
                      edge_comp(edge_comp), vertex_comp(vertex_comp),
                      map(n,m, index_map_small, index_map_large),
                      user_callback(user_callback),
                      iso_vec(n, graph_traits<GraphLarge>::null_vertex()),
                      iso(std::begin(iso_vec), index_map_small),
                      isoinv_vec(m, graph_traits<GraphSmall>::null_vertex()),
                      isoinv(std::begin(isoinv_vec), index_map_large),

                      succInNeigh_vec(n), succInNeigh(std::begin(succInNeigh_vec), index_map_small),
                      succOutNeigh_vec(n), succOutNeigh(std::begin(succOutNeigh_vec), index_map_small),
                      succNotInNeigh_vec(n), succNotInNeigh(std::begin(succNotInNeigh_vec), index_map_small),
                      succNotOutNeigh_vec(n), succNotOutNeigh(std::begin(succNotOutNeigh_vec), index_map_small) {

            std::vector<vertices_small_size_type> orderinv_vec(n);
            using orderinv_type = iterator_property_map<typename std::vector<vertices_small_size_type>::iterator,
                                                        IndexMapSmall, vertex_small_type, vertices_small_size_type &>;
            orderinv_type orderinv(std::begin(orderinv_vec), index_map_small);

            for(int i=0; i<n; ++i) {
                orderinv[vertex_order_small[i]] = i;
            }
            BGL_FORALL_VERTICES_T(u, g, GraphSmall) {
                vertices_small_size_type ordu = orderinv[u];
                for(auto v : gg.inneigh(u)) {
                    if(orderinv[v] > ordu) succInNeigh[u].push_back(v);
                }
                for(auto v : gg.outneigh(u)) {
                    if(orderinv[v] > ordu) succOutNeigh[u].push_back(v);
                }
                for(auto v : gg.notinneigh(u)) {
                    if(orderinv[v] > ordu) succNotInNeigh[u].push_back(v);
                }
                for(auto v : gg.notoutneigh(u)) {
                    if(orderinv[v] > ordu) succNotOutNeigh[u].push_back(v);
                }
            }
        }

// Assembly:
subq $0x398, %rsp            # imm = 0x398
leaq 0x3c0(%rsp), %rax
movq %rax, 0x1e8(%rsp)
leaq 0x3a0(%rsp), %rax
movq %rax, 0x1f0(%rsp)
movq %rdi, 0x388(%rsp)
movq %rsi, 0x380(%rsp)
movq %rdx, 0x378(%rsp)
movq %rcx, 0x370(%rsp)
movq %r8, 0x368(%rsp)
movq %r9, 0x360(%rsp)
movq 0x388(%rsp), %rdi
movq %rdi, 0x200(%rsp)
movq 0x380(%rsp), %rax
movq %rax, (%rdi)
movq 0x378(%rsp), %rax
movq %rax, 0x8(%rdi)
addq $0x10, %rdi
movq %rdi, 0x1f8(%rsp)
movq 0x380(%rsp), %rsi
callq 0xee60
movq 0x200(%rsp), %rdi
addq $0x128, %rdi            # imm = 0x128
movq %rdi, 0x208(%rsp)
movq 0x378(%rsp), %rsi
callq 0xee60
jmp 0x2ecd
movq 0x200(%rsp), %rax
addq $0x248, %rax            # imm = 0x248
movq %rax, 0x1d8(%rsp)
movq 0x380(%rsp), %rdi
callq 0x7ee0
movq %rax, 0x1e0(%rsp)
jmp 0x2efa
movq 0x200(%rsp), %rax
movq 0x1d8(%rsp), %rcx
movq 0x1e0(%rsp), %rdx
movq %rdx, (%rcx)
addq $0x250, %rax            # imm = 0x250
movq %rax, 0x1c8(%rsp)
movq 0x378(%rsp), %rdi
callq 0x7ee0
movq %rax, 0x1d0(%rsp)
jmp 0x2f3a
movq 0x200(%rsp), %rdi
movq 0x1c8(%rsp), %rax
movq 0x1d0(%rsp), %rcx
movq %rcx, (%rax)
addq $0x258, %rdi            # imm = 0x258
movq %rdi, 0x1c0(%rsp)
movq 0x360(%rsp), %rsi
callq 0xfdb0
jmp 0x2f73
movq 0x200(%rsp), %rax
movq 0x1f0(%rsp), %rcx
movq 0x1e8(%rsp), %rdx
vmovdqu (%rdx), %xmm0
vmovdqu %xmm0, 0x270(%rax)
vmovdqu (%rcx), %ymm0
vmovdqu %ymm0, 0x288(%rax)
movq %rax, %rcx
addq $0x2a8, %rcx            # imm = 0x2A8
movq %rcx, 0x1a8(%rsp)
movq 0x248(%rax), %rax
movq %rax, 0x1b0(%rsp)
vzeroupper
callq 0xb980
movq %rax, 0x1b8(%rsp)
jmp 0x2fd6
movq 0x1b8(%rsp), %rax
movq %rax, 0x340(%rsp)
leaq 0x33f(%rsp), %rdi
movq %rdi, 0x1a0(%rsp)
callq 0xadb0
movq 0x1a8(%rsp), %rdi
movq 0x1b0(%rsp), %rsi
movq 0x1a0(%rsp), %rcx
leaq 0x340(%rsp), %rdx
callq 0xfeb0
jmp 0x3022
leaq 0x33f(%rsp), %rdi
callq 0xae40
movq 0x200(%rsp), %rdi
movq %rdi, %rax
addq $0x2c0, %rax            # imm = 0x2C0
movq %rax, 0x190(%rsp)
addq $0x2a8, %rdi            # imm = 0x2A8
callq 0xff30
movq %rax, 0x198(%rsp)
jmp 0x305e
movq 0x190(%rsp), %rdi
movq 0x198(%rsp), %rax
movq %rax, 0x330(%rsp)
movq 0x370(%rsp), %rdx
movq 0x330(%rsp), %rsi
callq 0xff60
jmp 0x308d
movq 0x200(%rsp), %rax
movq %rax, %rcx
addq $0x2d0, %rcx            # imm = 0x2D0
movq %rcx, 0x178(%rsp)
movq 0x250(%rax), %rax
movq %rax, 0x180(%rsp)
callq 0xb980
movq %rax, 0x188(%rsp)
jmp 0x30c5
movq 0x188(%rsp), %rax
movq %rax, 0x328(%rsp)
leaq 0x327(%rsp), %rdi
movq %rdi, 0x170(%rsp)
callq 0xadb0
movq 0x178(%rsp), %rdi
movq 0x180(%rsp), %rsi
movq 0x170(%rsp), %rcx
leaq 0x328(%rsp), %rdx
callq 0xfeb0
jmp 0x3111
leaq 0x327(%rsp), %rdi
callq 0xae40
movq 0x200(%rsp), %rdi
movq %rdi, %rax
addq $0x2e8, %rax            # imm = 0x2E8
movq %rax, 0x160(%rsp)
addq $0x2d0, %rdi            # imm = 0x2D0
callq 0xff30
movq %rax, 0x168(%rsp)
jmp 0x314d
movq 0x160(%rsp), %rdi
movq 0x168(%rsp), %rax
movq %rax, 0x318(%rsp)
movq 0x368(%rsp), %rdx
movq 0x318(%rsp), %rsi
callq 0xff60
jmp 0x317c
movq 0x200(%rsp), %rax
movq %rax, %rdi
addq $0x2f8, %rdi            # imm = 0x2F8
movq %rdi, 0x158(%rsp)
movq 0x248(%rax), %rsi
movq 0x250(%rax), %rdx
movq 0x370(%rsp), %rcx
movq 0x368(%rsp), %r8
callq 0x3ea0
jmp 0x31bb
movq 0x200(%rsp), %rax
movq %rax, %rcx
addq $0x338, %rcx            # imm = 0x338
movq %rcx, 0x140(%rsp)
movq 0x248(%rax), %rax
movq %rax, 0x148(%rsp)
leaq 0x317(%rsp), %rdi
movq %rdi, 0x150(%rsp)
callq 0xff80
movq 0x140(%rsp), %rdi
movq 0x148(%rsp), %rsi
movq 0x150(%rsp), %rdx
callq 0xff90
jmp 0x3218
leaq 0x317(%rsp), %rdi
callq 0x10010
movq 0x200(%rsp), %rax
movq %rax, %rcx
addq $0x350, %rcx            # imm = 0x350
movq %rcx, 0x128(%rsp)
movq 0x248(%rax), %rax
movq %rax, 0x130(%rsp)
leaq 0x316(%rsp), %rdi
movq %rdi, 0x138(%rsp)
callq 0xff80
movq 0x128(%rsp), %rdi
movq 0x130(%rsp), %rsi
movq 0x138(%rsp), %rdx
callq 0xff90
jmp 0x3282
leaq 0x316(%rsp), %rdi
callq 0x10010
movq 0x200(%rsp), %rax
movq %rax, %rcx
addq $0x368, %rcx            # imm = 0x368
movq %rcx, 0x110(%rsp)
movq 0x248(%rax), %rax
movq %rax, 0x118(%rsp)
leaq 0x315(%rsp), %rdi
movq %rdi, 0x120(%rsp)
callq 0xff80
movq 0x110(%rsp), %rdi
movq 0x118(%rsp), %rsi
movq 0x120(%rsp), %rdx
callq 0xff90
jmp 0x32ec
leaq 0x315(%rsp), %rdi
callq 0x10010
movq 0x200(%rsp), %rax
movq %rax, %rcx
addq $0x380, %rcx            # imm = 0x380
movq %rcx, 0xf8(%rsp)
movq 0x248(%rax), %rax
movq %rax, 0x100(%rsp)
leaq 0x314(%rsp), %rdi
movq %rdi, 0x108(%rsp)
callq 0xff80
movq 0xf8(%rsp), %rdi
movq 0x100(%rsp), %rsi
movq 0x108(%rsp), %rdx
callq 0xff90
jmp 0x3356
leaq 0x314(%rsp), %rdi
callq 0x10010
movq 0x200(%rsp), %rdi
movq %rdi, %rax
addq $0x398, %rax            # imm = 0x398
movq %rax, 0xe8(%rsp)
addq $0x338, %rdi            # imm = 0x338
callq 0x10020
movq %rax, 0xf0(%rsp)
jmp 0x3392
movq 0xe8(%rsp), %rdi
movq 0xf0(%rsp), %rax
movq %rax, 0x308(%rsp)
movq 0x370(%rsp), %rdx
movq 0x308(%rsp), %rsi
callq 0x10050
jmp 0x33c1
movq 0x200(%rsp), %rdi
movq %rdi, %rax
addq $0x3a8, %rax            # imm = 0x3A8
movq %rax, 0xd8(%rsp)
addq $0x350, %rdi            # imm = 0x350
callq 0x10020
movq %rax, 0xe0(%rsp)
jmp 0x33f0
movq 0xd8(%rsp), %rdi
movq 0xe0(%rsp), %rax
movq %rax, 0x300(%rsp)
movq 0x370(%rsp), %rdx
movq 0x300(%rsp), %rsi
callq 0x10050
jmp 0x341f
movq 0x200(%rsp), %rdi
movq %rdi, %rax
addq $0x3b8, %rax            # imm = 0x3B8
movq %rax, 0xc8(%rsp)
addq $0x368, %rdi            # imm = 0x368
callq 0x10020
movq %rax, 0xd0(%rsp)
jmp 0x344e
movq 0xc8(%rsp), %rdi
movq 0xd0(%rsp), %rax
movq %rax, 0x2f8(%rsp)
movq 0x370(%rsp), %rdx
movq 0x2f8(%rsp), %rsi
callq 0x10050
jmp 0x347d
movq 0x200(%rsp), %rdi
movq %rdi, %rax
addq $0x3c8, %rax            # imm = 0x3C8
movq %rax, 0xb8(%rsp)
addq $0x380, %rdi            # imm = 0x380
callq 0x10020
movq %rax, 0xc0(%rsp)
jmp 0x34ac
movq 0xb8(%rsp), %rdi
movq 0xc0(%rsp), %rax
movq %rax, 0x2f0(%rsp)
movq 0x370(%rsp), %rdx
movq 0x2f0(%rsp), %rsi
callq 0x10050
jmp 0x34db
movq 0x200(%rsp), %rax
movq 0x248(%rax), %rax
movq %rax, 0xa8(%rsp)
leaq 0x2d7(%rsp), %rdi
movq %rdi, 0xb0(%rsp)
callq 0xadb0
movq 0xa8(%rsp), %rsi
movq 0xb0(%rsp), %rdx
leaq 0x2d8(%rsp), %rdi
callq 0xadc0
jmp 0x3526
leaq 0x2d7(%rsp), %rdi
callq 0xae40
leaq 0x2d8(%rsp), %rdi
callq 0xff30
movq %rax, 0xa0(%rsp)
jmp 0x354a
movq 0xa0(%rsp), %rax
movq %rax, 0x2b8(%rsp)
movq 0x370(%rsp), %rdx
movq 0x2b8(%rsp), %rsi
leaq 0x2c0(%rsp), %rdi
callq 0xff60
jmp 0x3579
movl $0x0, 0x2b4(%rsp)
movq 0x200(%rsp), %rcx
movslq 0x2b4(%rsp), %rax
cmpq 0x248(%rcx), %rax
jae 0x37c4
movslq 0x2b4(%rsp), %rsi
movq %rsi, 0x90(%rsp)
movq 0x360(%rsp), %rdi
callq 0x100c0
movq (%rax), %rsi
leaq 0x2c0(%rsp), %rdi
callq 0x10070
movq %rax, 0x98(%rsp)
jmp 0x35d8
movq 0x98(%rsp), %rax
movq 0x90(%rsp), %rcx
movq %rcx, (%rax)
movl 0x2b4(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x2b4(%rsp)
jmp 0x3584
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
jmp 0x3d91
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
jmp 0x3d84
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
jmp 0x3d77
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x33f(%rsp), %rdi
callq 0xae40
jmp 0x3d77
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
jmp 0x3d6a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x327(%rsp), %rdi
callq 0xae40
jmp 0x3d6a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
jmp 0x3d5d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x317(%rsp), %rdi
callq 0x10010
jmp 0x3d50
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x316(%rsp), %rdi
callq 0x10010
jmp 0x3d43
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x315(%rsp), %rdi
callq 0x10010
jmp 0x3d36
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x314(%rsp), %rdi
callq 0x10010
jmp 0x3d29
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
jmp 0x3d1c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x2d7(%rsp), %rdi
callq 0xae40
jmp 0x3d1c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x350(%rsp)
movl %eax, 0x34c(%rsp)
leaq 0x2d8(%rsp), %rdi
callq 0x65b0
jmp 0x3d1c
movq 0x380(%rsp), %rdi
callq 0xaf50
movq %rdx, 0x80(%rsp)
movq %rax, 0x88(%rsp)
jmp 0x37e3
movq 0x80(%rsp), %rax
movq 0x88(%rsp), %rcx
movq %rcx, 0x2a0(%rsp)
movq %rax, 0x2a8(%rsp)
leaq 0x2a8(%rsp), %rsi
leaq 0x2a0(%rsp), %rdi
callq 0xafe0
movb %al, 0x7f(%rsp)
jmp 0x381e
movb 0x7f(%rsp), %al
testb $0x1, %al
jne 0x382b
jmp 0x3d07
jmp 0x382d
leaq 0x2a8(%rsp), %rsi
leaq 0x2a0(%rsp), %rdi
callq 0xafe0
movb %al, 0x7e(%rsp)
jmp 0x3848
movb 0x7e(%rsp), %al
testb $0x1, %al
jne 0x3852
jmp 0x387b
leaq 0x2a0(%rsp), %rdi
callq 0xb030
movq %rax, 0x70(%rsp)
jmp 0x3866
movq 0x70(%rsp), %rax
movq %rax, 0x298(%rsp)
movb $0x1, %al
movb %al, 0x6f(%rsp)
jmp 0x3883
xorl %eax, %eax
movb %al, 0x6f(%rsp)
jmp 0x3883
movb 0x6f(%rsp), %al
testb $0x1, %al
jne 0x3890
jmp 0x3cf0
movq 0x298(%rsp), %rsi
leaq 0x2c0(%rsp), %rdi
callq 0x10070
movq %rax, 0x60(%rsp)
jmp 0x38ac
movq 0x200(%rsp), %rdi
movq 0x60(%rsp), %rax
movq (%rax), %rax
movq %rax, 0x290(%rsp)
addq $0x10, %rdi
movq 0x298(%rsp), %rsi
callq 0x100e0
movq %rax, 0x58(%rsp)
jmp 0x38dc
movq 0x58(%rsp), %rax
movq %rax, 0x288(%rsp)
movq 0x288(%rsp), %rdi
callq 0x10110
movq %rax, 0x280(%rsp)
movq 0x288(%rsp), %rdi
callq 0x10140
movq %rax, 0x278(%rsp)
leaq 0x280(%rsp), %rdi
leaq 0x278(%rsp), %rsi
callq 0x10170
testb $0x1, %al
jne 0x3931
jmp 0x39c4
leaq 0x280(%rsp), %rdi
callq 0x101b0
movq (%rax), %rax
movq %rax, 0x270(%rsp)
movq 0x270(%rsp), %rsi
leaq 0x2c0(%rsp), %rdi
callq 0x10070
movq %rax, 0x50(%rsp)
jmp 0x3965
movq 0x50(%rsp), %rax
movq (%rax), %rax
cmpq 0x290(%rsp), %rax
jbe 0x39b0
movq 0x200(%rsp), %rdi
addq $0x398, %rdi            # imm = 0x398
movq 0x298(%rsp), %rsi
callq 0x101c0
movq %rax, 0x48(%rsp)
jmp 0x399a
movq 0x48(%rsp), %rdi
leaq 0x270(%rsp), %rsi
callq 0x10210
jmp 0x39ae
jmp 0x39b0
jmp 0x39b2
leaq 0x280(%rsp), %rdi
callq 0x10280
jmp 0x3913
movq 0x200(%rsp), %rdi
addq $0x10, %rdi
movq 0x298(%rsp), %rsi
callq 0x102a0
movq %rax, 0x40(%rsp)
jmp 0x39e4
movq 0x40(%rsp), %rax
movq %rax, 0x268(%rsp)
movq 0x268(%rsp), %rdi
callq 0x10110
movq %rax, 0x260(%rsp)
movq 0x268(%rsp), %rdi
callq 0x10140
movq %rax, 0x258(%rsp)
leaq 0x260(%rsp), %rdi
leaq 0x258(%rsp), %rsi
callq 0x10170
testb $0x1, %al
jne 0x3a39
jmp 0x3acc
leaq 0x260(%rsp), %rdi
callq 0x101b0
movq (%rax), %rax
movq %rax, 0x250(%rsp)
movq 0x250(%rsp), %rsi
leaq 0x2c0(%rsp), %rdi
callq 0x10070
movq %rax, 0x38(%rsp)
jmp 0x3a6d
movq 0x38(%rsp), %rax
movq (%rax), %rax
cmpq 0x290(%rsp), %rax
jbe 0x3ab8
movq 0x200(%rsp), %rdi
addq $0x3a8, %rdi            # imm = 0x3A8
movq 0x298(%rsp), %rsi
callq 0x101c0
movq %rax, 0x30(%rsp)
jmp 0x3aa2
movq 0x30(%rsp), %rdi
leaq 0x250(%rsp), %rsi
callq 0x10210
jmp 0x3ab6
jmp 0x3ab8
jmp 0x3aba
leaq 0x260(%rsp), %rdi
callq 0x10280
jmp 0x3a1b
movq 0x200(%rsp), %rdi
addq $0x10, %rdi
movq 0x298(%rsp), %rsi
callq 0x102d0
movq %rax, 0x28(%rsp)
jmp 0x3aec
movq 0x28(%rsp), %rax
movq %rax, 0x248(%rsp)
movq 0x248(%rsp), %rdi
callq 0x10110
movq %rax, 0x240(%rsp)
movq 0x248(%rsp), %rdi
callq 0x10140
movq %rax, 0x238(%rsp)
leaq 0x240(%rsp), %rdi
leaq 0x238(%rsp), %rsi
callq 0x10170
testb $0x1, %al
jne 0x3b41
jmp 0x3bd4
leaq 0x240(%rsp), %rdi
callq 0x101b0
movq (%rax), %rax
movq %rax, 0x230(%rsp)
movq 0x230(%rsp), %rsi
leaq 0x2c0(%rsp), %rdi
callq 0x10070
movq %rax, 0x20(%rsp)
jmp 0x3b75
movq 0x20(%rsp), %rax
movq (%rax), %rax
cmpq 0x290(%rsp), %rax
jbe 0x3bc0
movq 0x200(%rsp), %rdi
addq $0x3b8, %rdi            # imm = 0x3B8
movq 0x298(%rsp), %rsi
callq 0x101c0
movq %rax, 0x18(%rsp)
jmp 0x3baa
movq 0x18(%rsp), %rdi
leaq 0x230(%rsp), %rsi
callq 0x10210
jmp 0x3bbe
jmp 0x3bc0
jmp 0x3bc2
leaq 0x240(%rsp), %rdi
callq 0x10280
jmp 0x3b23
movq 0x200(%rsp), %rdi
addq $0x10, %rdi
movq 0x298(%rsp), %rsi
callq 0x10300
movq %rax, 0x10(%rsp)
jmp 0x3bf4
movq 0x10(%rsp), %rax
movq %rax, 0x228(%rsp)
movq 0x228(%rsp), %rdi
callq 0x10110
movq %rax, 0x220(%rsp)
movq 0x228(%rsp), %rdi
callq 0x10140
movq %rax, 0x218(%rsp)
leaq 0x220(%rsp), %rdi
leaq 0x218(%rsp), %rsi
callq 0x10170
testb $0x1, %al
jne 0x3c49
jmp 0x3cda
leaq 0x220(%rsp), %rdi
callq 0x101b0
movq (%rax), %rax
movq %rax, 0x210(%rsp)
movq 0x210(%rsp), %rsi
leaq 0x2c0(%rsp), %rdi
callq 0x10070
movq %rax, 0x8(%rsp)
jmp 0x3c7d
movq 0x8(%rsp), %rax
movq (%rax), %rax
cmpq 0x290(%rsp), %rax
jbe 0x3cc6
movq 0x200(%rsp), %rdi
addq $0x3c8, %rdi            # imm = 0x3C8
movq 0x298(%rsp), %rsi
callq 0x101c0
movq %rax, (%rsp)
jmp 0x3cb1
movq (%rsp), %rdi
leaq 0x210(%rsp), %rsi
callq 0x10210
jmp 0x3cc4
jmp 0x3cc6
jmp 0x3cc8
leaq 0x220(%rsp), %rdi
callq 0x10280
jmp 0x3c2b
jmp 0x3cdc
leaq 0x2a0(%rsp), %rdi
callq 0xb820
jmp 0x3ceb
jmp 0x382d
jmp 0x3cf2
movq 0x2a8(%rsp), %rax
movq %rax, 0x2a0(%rsp)
jmp 0x3803
leaq 0x2d8(%rsp), %rdi
callq 0x65b0
addq $0x398, %rsp            # imm = 0x398
retq
movq 0xf8(%rsp), %rdi
callq 0x10330
movq 0x110(%rsp), %rdi
callq 0x10330
movq 0x128(%rsp), %rdi
callq 0x10330
movq 0x140(%rsp), %rdi
callq 0x10330
movq 0x158(%rsp), %rdi
callq 0x3f80
movq 0x178(%rsp), %rdi
callq 0x65b0
movq 0x1a8(%rsp), %rdi
callq 0x65b0
movq 0x1c0(%rsp), %rdi
callq 0x65b0
movq 0x208(%rsp), %rdi
callq 0x10390
movq 0x1f8(%rsp), %rdi
callq 0x10390
movq 0x350(%rsp), %rdi
callq 0x2270
nopl (%rax,%rax)