// File: /workspace/github_cpp_makefile_star2_O3/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 0x138aa(%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 0x185c6
movq 0x8(%r12), %rsi
testb $0x1, %sil
je 0xff87
leaq 0x8(%r15), %rdi
andq $-0x2, %rsi
addq $0x8, %rsi
callq 0x183fa
movl 0x10(%r12), %eax
movq 0x40(%r12), %r13
testq %r13, %r13
sete %cl
andb %al, %cl
cmpb $0x1, %cl
jne 0xffe8
leaq 0x919d(%rip), %rdx      # 0x19142
leaq 0x10(%rsp), %rdi
movl $0x3, %esi
movl $0x152e, %ecx           # imm = 0x152E
callq 0x6530
leaq 0xa64f(%rip), %rsi      # 0x1a60f
leaq 0x10(%rsp), %rdi
callq 0x6580
leaq 0xf(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x10(%rsp), %rdi
callq 0x65a0
movq 0x40(%r12), %r13
jmp 0xffec
testb $0x1, %al
je 0x1000f
movl $0x28, %edi
callq 0x6360
movq %rax, %rbp
movq %rax, %rdi
movq %r13, %rsi
callq 0x9134
movq %rbp, 0x40(%r15)
movl 0x10(%r12), %eax
jmp 0x10017
movq $0x0, 0x40(%r15)
movl %eax, %ecx
shrb %cl
movq 0x48(%r12), %r13
testq %r13, %r13
sete %dl
andb %cl, %dl
cmpb $0x1, %dl
jne 0x10077
leaq 0x910e(%rip), %rdx      # 0x19142
leaq 0x10(%rsp), %rdi
movl $0x3, %esi
movl $0x157f, %ecx           # imm = 0x157F
callq 0x6530
leaq 0xa5f1(%rip), %rsi      # 0x1a640
leaq 0x10(%rsp), %rdi
callq 0x6580
leaq 0xf(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x10(%rsp), %rdi
callq 0x65a0
movq 0x48(%r12), %r13
jmp 0x1007b
testb $0x2, %al
je 0x10095
movl $0x30, %edi
callq 0x6360
movq %rax, %rbp
movq %rax, %rdi
movq %r13, %rsi
callq 0xdbce
jmp 0x10097
xorl %ebp, %ebp
movq %rbp, 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
jmp 0x100bb
jmp 0x100bb
jmp 0x100bb
movq %rax, %r15
leaq 0x10(%rsp), %rdi
callq 0x65a0
jmp 0x100f6
movq %rax, %r15
movl $0x30, %esi
jmp 0x100dc
movq %rax, %r15
movl $0x28, %esi
movq %rbp, %rdi
callq 0x6370
jmp 0x100f6
movq %rax, %r15
movq %r14, %rdi
callq 0x185ae
jmp 0x100fe
movq %rax, %r15
movq %r14, %rdi
callq 0x17702
movq %rbx, %rdi
callq 0x6270
movq %r15, %rdi
callq 0x65b0