// File: /workspace/github_cpp_makefile_star2_O2/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::LogEntry::LogEntry(panda::LogEntry const&)
LogEntry::LogEntry(const LogEntry& from)
  : ::PROTOBUF_NAMESPACE_ID::Message(),
      _has_bits_(from._has_bits_) {
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  process_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
  if (from._internal_has_process_name()) {
    process_name_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), from._internal_process_name(),
      GetArena());
  }
  if (from._internal_has_call_stack()) {
    call_stack_ = new ::panda::CallStack(*from.call_stack_);
  } else {
    call_stack_ = nullptr;
  }
  if (from._internal_has_tainted_branch()) {
    tainted_branch_ = new ::panda::TaintedBranch(*from.tainted_branch_);
  } else {
    tainted_branch_ = nullptr;
  }
  if (from._internal_has_tainted_instr()) {
    tainted_instr_ = new ::panda::TaintedInstr(*from.tainted_instr_);
  } else {
    tainted_instr_ = nullptr;
  }
  if (from._internal_has_taint_query_hypercall()) {
    taint_query_hypercall_ = new ::panda::TaintQueryHypercall(*from.taint_query_hypercall_);
  } else {
    taint_query_hypercall_ = nullptr;
  }
  if (from._internal_has_attack_point()) {
    attack_point_ = new ::panda::AttackPoint(*from.attack_point_);
  } else {
    attack_point_ = nullptr;
  }
  if (from._internal_has_tainted_instr_summary()) {
    tainted_instr_summary_ = new ::panda::TaintedInstrSummary(*from.tainted_instr_summary_);
  } else {
    tainted_instr_summary_ = nullptr;
  }
  if (from._internal_has_dwarf_call()) {
    dwarf_call_ = new ::panda::DwarfCall(*from.dwarf_call_);
  } else {
    dwarf_call_ = nullptr;
  }
  if (from._internal_has_dwarf_ret()) {
    dwarf_ret_ = new ::panda::DwarfCall(*from.dwarf_ret_);
  } else {
    dwarf_ret_ = nullptr;
  }
  if (from._internal_has_taint_query_pri()) {
    taint_query_pri_ = new ::panda::TaintQueryPri(*from.taint_query_pri_);
  } else {
    taint_query_pri_ = nullptr;
  }
  if (from._internal_has_attack_point_pri()) {
    attack_point_pri_ = new ::panda::AttackPointPri(*from.attack_point_pri_);
  } else {
    attack_point_pri_ = nullptr;
  }
  if (from._internal_has_pri_trace_src_info()) {
    pri_trace_src_info_ = new ::panda::SrcInfoPri(*from.pri_trace_src_info_);
  } else {
    pri_trace_src_info_ = nullptr;
  }
  if (from._internal_has_tainted_branch_summary()) {
    tainted_branch_summary_ = new ::panda::TaintedBranchSummary(*from.tainted_branch_summary_);
  } else {
    tainted_branch_summary_ = nullptr;
  }
  ::memcpy(&pc_, &from.pc_,
    static_cast<size_t>(reinterpret_cast<char*>(&total_instr_) -
    reinterpret_cast<char*>(&pc_)) + sizeof(total_instr_));
  // @@protoc_insertion_point(copy_constructor:panda.LogEntry)
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rdi, %rbx
andq $0x0, 0x8(%rdi)
movq %rsi, %r14
leaq 0x12713(%rip), %rax     # 0x21b48
movq %rax, (%rdi)
movl 0x10(%rsi), %eax
movl %eax, 0x10(%rdi)
andl $0x0, 0x14(%rdi)
leaq 0x8(%rdi), %r15
movq 0x8(%rsi), %rsi
testb $0x1, %sil
je 0xf460
andq $-0x2, %rsi
addq $0x8, %rsi
movq %r15, %rdi
callq 0x1466a
movq 0x12b59(%rip), %rax     # 0x21fc0
movq %rax, 0x18(%rbx)
testb $0x1, 0x10(%r14)
je 0xf492
leaq 0x18(%rbx), %rdi
movq 0x18(%r14), %rdx
movq (%r15), %rcx
testb $0x1, %cl
jne 0xf6e3
movq 0x12b33(%rip), %rsi     # 0x21fc0
callq 0x11624
movq %r14, %rdi
callq 0x12f3e
testb %al, %al
je 0xf4b7
pushq $0x28
popq %rdi
callq 0x6340
movq %rax, %r15
movq 0x20(%r14), %rsi
movq %rax, %rdi
callq 0x8824
jmp 0xf4ba
xorl %r15d, %r15d
movq %r15, 0x20(%rbx)
movq %r14, %rdi
callq 0x12fbc
testb %al, %al
je 0xf4e3
pushq $0x38
popq %rdi
callq 0x6340
movq %rax, %r15
movq 0x28(%r14), %rsi
movq %rax, %rdi
callq 0xdb00
jmp 0xf4e6
xorl %r15d, %r15d
movq %r15, 0x28(%rbx)
movq %r14, %rdi
callq 0x72a2
testb %al, %al
je 0xf50f
pushq $0x38
popq %rdi
callq 0x6340
movq %rax, %r15
movq 0x30(%r14), %rsi
movq %rax, %rdi
callq 0xe73c
jmp 0xf512
xorl %r15d, %r15d
movq %r15, 0x30(%rbx)
movq %r14, %rdi
callq 0x1303c
testb %al, %al
je 0xf53b
pushq $0x60
popq %rdi
callq 0x6340
movq %rax, %r15
movq 0x38(%r14), %rsi
movq %rax, %rdi
callq 0xcf5c
jmp 0xf53e
xorl %r15d, %r15d
movq %r15, 0x38(%rbx)
movq %r14, %rdi
callq 0x130bc
testb %al, %al
je 0xf567
pushq $0x30
popq %rdi
callq 0x6340
movq %rax, %r15
movq 0x40(%r14), %rsi
movq %rax, %rdi
callq 0xc734
jmp 0xf56a
xorl %r15d, %r15d
movq %r15, 0x40(%rbx)
movq %r14, %rdi
callq 0x1313c
testb %al, %al
je 0xf593
pushq $0x28
popq %rdi
callq 0x6340
movq %rax, %r15
movq 0x48(%r14), %rsi
movq %rax, %rdi
callq 0xedfa
jmp 0xf596
xorl %r15d, %r15d
movq %r15, 0x48(%rbx)
movq %r14, %rdi
callq 0x131bc
testb %al, %al
je 0xf5bf
pushq $0x40
popq %rdi
callq 0x6340
movq %rax, %r15
movq 0x50(%r14), %rsi
movq %rax, %rdi
callq 0x8cea
jmp 0xf5c2
xorl %r15d, %r15d
movq %r15, 0x50(%rbx)
movq %r14, %rdi
callq 0x13238
testb %al, %al
je 0xf5eb
pushq $0x40
popq %rdi
callq 0x6340
movq %rax, %r15
movq 0x58(%r14), %rsi
movq %rax, %rdi
callq 0x8cea
jmp 0xf5ee
xorl %r15d, %r15d
movq %r15, 0x58(%rbx)
movq %r14, %rdi
callq 0x132b8
testb %al, %al
je 0xf617
pushq $0x60
popq %rdi
callq 0x6340
movq %rax, %r15
movq 0x60(%r14), %rsi
movq %rax, %rdi
callq 0xa7e0
jmp 0xf61a
xorl %r15d, %r15d
movq %r15, 0x60(%rbx)
movq %r14, %rdi
callq 0x13338
testb %al, %al
je 0xf643
pushq $0x30
popq %rdi
callq 0x6340
movq %rax, %r15
movq 0x68(%r14), %rsi
movq %rax, %rdi
callq 0x9fb8
jmp 0xf646
xorl %r15d, %r15d
movq %r15, 0x68(%rbx)
movq %r14, %rdi
callq 0x133b8
testb %al, %al
je 0xf66f
pushq $0x38
popq %rdi
callq 0x6340
movq %rax, %r15
movq 0x70(%r14), %rsi
movq %rax, %rdi
callq 0x96c6
jmp 0xf672
xorl %r15d, %r15d
movq %r15, 0x70(%rbx)
movq %r14, %rdi
callq 0x13438
testb %al, %al
je 0xf69b
pushq $0x28
popq %rdi
callq 0x6340
movq %rax, %r15
movq 0x78(%r14), %rsi
movq %rax, %rdi
callq 0xe1be
jmp 0xf69e
xorl %r15d, %r15d
movq %r15, 0x78(%rbx)
movups 0x80(%r14), %xmm0
movups 0x90(%r14), %xmm1
movups 0xa0(%r14), %xmm2
movups %xmm0, 0x80(%rbx)
movups %xmm1, 0x90(%rbx)
movups %xmm2, 0xa0(%rbx)
movq 0xb0(%r14), %rax
movq %rax, 0xb0(%rbx)
popq %rbx
popq %r14
popq %r15
retq
andq $-0x2, %rcx
movq (%rcx), %rcx
jmp 0xf486
jmp 0xf719
jmp 0xf712
jmp 0xf702
jmp 0xf709
jmp 0xf6f9
movq %rax, %rbx
pushq $0x40
jmp 0xf71e
jmp 0xf719
movq %rax, %rbx
pushq $0x30
jmp 0xf71e
movq %rax, %rbx
pushq $0x60
jmp 0xf71e
jmp 0xf712
movq %rax, %rbx
pushq $0x38
jmp 0xf71e
movq %rax, %rbx
pushq $0x28
popq %rsi
movq %r15, %rdi
callq 0x6350
movq %rbx, %rdi
callq 0x65a0
nop