// File: /workspace/github_cpp_makefile_star2_O1/Luthaf[P]zeopp/networkstorage.cc
// Function: ATOM_NETWORK::copy(ATOM_NETWORK*)
void ATOM_NETWORK::copy(ATOM_NETWORK *newNet){
    newNet->a = a; newNet->b = b; newNet->c = c;
    newNet->alpha = alpha; newNet->beta = beta; newNet->gamma = gamma;
    newNet->v_a = v_a; newNet->v_b = v_b; newNet->v_c = v_c;
    newNet->numAtoms = numAtoms; newNet->name = name;
    newNet->atoms.clear(); newNet->atoms = atoms;
    newNet->IDmapping.clear(); newNet->IDmapping = IDmapping;

    newNet->vertices.clear(); newNet->vertices = vertices;
    newNet->orphan_edge_starts.clear(); newNet->orphan_edge_starts = orphan_edge_starts;
    newNet->orphan_edge_ends.clear(); newNet->orphan_edge_ends = orphan_edge_ends;
    newNet->vertex_basic_indices.clear(); newNet->vertex_basic_indices = vertex_basic_indices;
    newNet->vertex_symmetry_operators.clear(); newNet->vertex_symmetry_operators = vertex_symmetry_operators;
    newNet->sym_ID = sym_ID;
    newNet->sym_name = sym_name;
    newNet->valid = valid;

    newNet->initialize();
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
pushq %rax
movq %rsi, %rbx
movq %rdi, %r14
movsd 0x8(%rdi), %xmm0
movsd %xmm0, 0x8(%rsi)
movsd 0x10(%rdi), %xmm0
movsd %xmm0, 0x10(%rsi)
movsd 0x18(%rdi), %xmm0
movsd %xmm0, 0x18(%rsi)
movsd 0x20(%rdi), %xmm0
movsd %xmm0, 0x20(%rsi)
movsd 0x28(%rdi), %xmm0
movsd %xmm0, 0x28(%rsi)
movsd 0x30(%rdi), %xmm0
movsd %xmm0, 0x30(%rsi)
movq 0x48(%rdi), %rax
movq %rax, 0x48(%rsi)
movups 0x38(%rdi), %xmm0
movups %xmm0, 0x38(%rsi)
movq 0x60(%rdi), %rax
movq %rax, 0x60(%rsi)
movups 0x50(%rdi), %xmm0
movups %xmm0, 0x50(%rsi)
movups 0x68(%rdi), %xmm0
movups %xmm0, 0x68(%rsi)
movq 0x78(%rdi), %rax
movq %rax, 0x78(%rsi)
movl 0x110(%rdi), %eax
movl %eax, 0x110(%rsi)
movl $0x320, %edi            # imm = 0x320
leaq (%r14,%rdi), %rsi
addq %rbx, %rdi
callq 0x4240
movl $0x2f0, %r15d           # imm = 0x2F0
leaq (%rbx,%r15), %r12
movq 0x2f0(%rbx), %rsi
movq %r12, %rdi
callq 0x12f02
addq %r14, %r15
movq %r12, %rdi
movq %r15, %rsi
callq 0x67740
leaq 0x308(%rbx), %rdi
movq 0x308(%rbx), %rax
cmpq %rax, 0x310(%rbx)
je 0x529d0
movq %rax, 0x310(%rbx)
leaq 0x308(%r14), %rsi
callq 0x1005e
movl $0x3c0, %r15d           # imm = 0x3C0
leaq (%rbx,%r15), %r12
movq 0x3c0(%rbx), %rsi
movq %r12, %rdi
callq 0x6891c
addq %r14, %r15
movq %r12, %rdi
movq %r15, %rsi
callq 0x67816
leaq 0x3d8(%rbx), %rdi
movq 0x3d8(%rbx), %rax
cmpq %rax, 0x3e0(%rbx)
je 0x52a21
movq %rax, 0x3e0(%rbx)
leaq 0x3d8(%r14), %rsi
callq 0x678ec
leaq 0x3f0(%rbx), %rdi
movq 0x3f0(%rbx), %rax
cmpq %rax, 0x3f8(%rbx)
je 0x52a4b
movq %rax, 0x3f8(%rbx)
leaq 0x3f0(%r14), %rsi
callq 0x678ec
leaq 0x408(%rbx), %rdi
movq 0x408(%rbx), %rax
cmpq %rax, 0x410(%rbx)
je 0x52a75
movq %rax, 0x410(%rbx)
leaq 0x408(%r14), %rsi
callq 0x1005e
leaq 0x420(%rbx), %rdi
movq 0x420(%rbx), %rax
cmpq %rax, 0x428(%rbx)
je 0x52a9f
movq %rax, 0x428(%rbx)
leaq 0x420(%r14), %rsi
callq 0x1005e
movl 0x438(%r14), %eax
movl %eax, 0x438(%rbx)
movl $0x440, %edi            # imm = 0x440
leaq (%r14,%rdi), %rsi
addq %rbx, %rdi
callq 0x4240
movb 0x3b8(%r14), %al
movb %al, 0x3b8(%rbx)
movq %rbx, %rdi
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
jmp 0x521f4
nop