// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::TaintQueryHypercall::TaintQueryHypercall(panda::TaintQueryHypercall const&)
TaintQueryHypercall::TaintQueryHypercall(const TaintQueryHypercall& from)
  : ::PROTOBUF_NAMESPACE_ID::Message(),
      _has_bits_(from._has_bits_),
      data_(from.data_),
      taint_query_(from.taint_query_) {
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_call_stack()) {
    call_stack_ = new ::panda::CallStack(*from.call_stack_);
  } else {
    call_stack_ = nullptr;
  }
  if (from._internal_has_src_info()) {
    src_info_ = new ::panda::SrcInfo(*from.src_info_);
  } else {
    src_info_ = nullptr;
  }
  ::memcpy(&buf_, &from.buf_,
    static_cast<size_t>(reinterpret_cast<char*>(&num_tainted_) -
    reinterpret_cast<char*>(&buf_)) + sizeof(num_tainted_));
  // @@protoc_insertion_point(copy_constructor:panda.TaintQueryHypercall)
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x48, %rsp
movq %rsi, %r12
movq %rdi, %r15
xorl %r13d, %r13d
movq %r13, 0x8(%rdi)
leaq 0x137b4(%rip), %rax     # 0x237d8
movq %rax, (%rdi)
movl 0x10(%rsi), %eax
movl %eax, 0x10(%rdi)
movl $0x0, 0x14(%rdi)
leaq 0x18(%rdi), %rbx
addq $0x18, %rsi
movq %rbx, %rdi
callq 0x6410
leaq 0x28(%r15), %r14
leaq 0x28(%r12), %rsi
movq %r13, 0x38(%r15)
xorps %xmm0, %xmm0
movups %xmm0, 0x28(%r15)
movq %r14, %rdi
callq 0x186ea
movq 0x8(%r12), %rsi
testb $0x1, %sil
je 0x1007d
leaq 0x8(%r15), %rdi
andq $-0x2, %rsi
addq $0x8, %rsi
callq 0x18514
movl 0x10(%r12), %ebp
testb $0x1, %bpl
je 0x100d3
cmpq $0x0, 0x40(%r12)
jne 0x100d3
leaq 0x90ab(%rip), %rdx      # 0x19142
leaq 0x10(%rsp), %rdi
movl $0x3, %esi
movl $0x152e, %ecx           # imm = 0x152E
callq 0x6530
leaq 0xa55d(%rip), %rsi      # 0x1a60f
leaq 0x10(%rsp), %rdi
callq 0x6580
leaq 0xf(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x10(%rsp), %rdi
callq 0x65a0
testb $0x1, %bpl
je 0x100f8
movq 0x40(%r12), %rbp
movl $0x28, %edi
callq 0x6360
movq %rax, %r13
movq %rax, %rdi
movq %rbp, %rsi
callq 0x91e0
jmp 0x100fb
xorl %r13d, %r13d
movq %r13, 0x40(%r15)
movl 0x10(%r12), %ebp
testb $0x2, %bpl
je 0x10155
cmpq $0x0, 0x48(%r12)
jne 0x10155
leaq 0x9029(%rip), %rdx      # 0x19142
leaq 0x10(%rsp), %rdi
movl $0x3, %esi
movl $0x157f, %ecx           # imm = 0x157F
callq 0x6530
leaq 0xa50c(%rip), %rsi      # 0x1a640
leaq 0x10(%rsp), %rdi
callq 0x6580
leaq 0xf(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x10(%rsp), %rdi
callq 0x65a0
testb $0x2, %bpl
je 0x1017a
movq 0x48(%r12), %rbp
movl $0x30, %edi
callq 0x6360
movq %rax, %r13
movq %rax, %rdi
movq %rbp, %rsi
callq 0xdcba
jmp 0x1017d
xorl %r13d, %r13d
movq %r13, 0x48(%r15)
movups 0x50(%r12), %xmm0
movups %xmm0, 0x50(%r15)
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %r15
movl $0x30, %esi
jmp 0x101b1
jmp 0x101bd
jmp 0x101bd
movq %rax, %r15
movl $0x28, %esi
movq %r13, %rdi
callq 0x6370
jmp 0x101dc
jmp 0x101bd
movq %rax, %r15
leaq 0x10(%rsp), %rdi
callq 0x65a0
jmp 0x101dc
movq %rax, %r15
movq %r14, %rdi
callq 0x186d2
jmp 0x101e4
movq %rax, %r15
movq %r14, %rdi
callq 0x1774c
movq %rbx, %rdi
callq 0x6270
movq %r15, %rdi
callq 0x65b0