LLM4Binary/decompile-bench-makefile huggingface dataset:
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::SrcInfo::MergeFrom(panda::SrcInfo const&)
void SrcInfo::MergeFrom(const SrcInfo& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:panda.SrcInfo)
  GOOGLE_DCHECK_NE(&from, this);
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._has_bits_[0];
  if (cached_has_bits & 0x0000001fu) {
    if (cached_has_bits & 0x00000001u) {
      filename_ = from.filename_;
    }
    if (cached_has_bits & 0x00000002u) {
      linenum_ = from.linenum_;
    }
    if (cached_has_bits & 0x00000004u) {
      astnodename_ = from.astnodename_;
    }
    if (cached_has_bits & 0x00000008u) {
      insertionpoint_ = from.insertionpoint_;
    }
    if (cached_has_bits & 0x00000010u) {
      ast_loc_id_ = from.ast_loc_id_;
    }
    _has_bits_[0] |= cached_has_bits;
  }
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x40, %rsp
movq %rsi, %r14
movq %rdi, %rbx
cmpq %rdi, %rsi
jne 0xe59c
leaq 0xbc27(%rip), %rdx      # 0x1a186
leaq 0x8(%rsp), %r15
movq %r15, %rdi
movl $0x3, %esi
movl $0xc17, %ecx            # imm = 0xC17
callq 0x6530
leaq 0xbc14(%rip), %rsi      # 0x1a191
movq %r15, %rdi
callq 0x6580
leaq 0x7(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x8(%rsp), %rdi
callq 0x65a0
cmpq %rbx, %r14
movq 0x8(%r14), %rsi
testb $0x1, %sil
je 0xe5ba
leaq 0x8(%rbx), %rdi
andq $-0x2, %rsi
addq $0x8, %rsi
callq 0x18514
movl 0x10(%r14), %eax
testb $0x1f, %al
je 0xe5fc
testb $0x1, %al
je 0xe5cd
movl 0x18(%r14), %ecx
movl %ecx, 0x18(%rbx)
testb $0x2, %al
je 0xe5d8
movl 0x1c(%r14), %ecx
movl %ecx, 0x1c(%rbx)
testb $0x4, %al
je 0xe5e3
movl 0x20(%r14), %ecx
movl %ecx, 0x20(%rbx)
testb $0x8, %al
je 0xe5ee
movl 0x24(%r14), %ecx
movl %ecx, 0x24(%rbx)
testb $0x10, %al
je 0xe5f9
movl 0x28(%r14), %ecx
movl %ecx, 0x28(%rbx)
orl %eax, 0x10(%rbx)
addq $0x40, %rsp
popq %rbx
popq %r14
popq %r15
retq
jmp 0xe608
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x65a0
movq %rbx, %rdi
callq 0x65b0
nop
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::SrcInfo::InternalSwap(panda::SrcInfo*)
void SrcInfo::InternalSwap(SrcInfo* other) {
  using std::swap;
  _internal_metadata_.Swap<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(&other->_internal_metadata_);
  swap(_has_bits_[0], other->_has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(SrcInfo, ast_loc_id_)
      + sizeof(SrcInfo::ast_loc_id_)
      - PROTOBUF_FIELD_OFFSET(SrcInfo, filename_)>(
          reinterpret_cast<char*>(&filename_),
          reinterpret_cast<char*>(&other->filename_));
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rsi, %rbx
movq %rdi, %r14
leaq 0x8(%rsi), %rdi
testb $0x1, 0x8(%r14)
jne 0xe695
testb $0x1, (%rdi)
je 0xe6b2
leaq 0x8(%r14), %r15
movq (%rdi), %rsi
testb $0x1, %sil
je 0xe6e6
andq $-0x2, %rsi
addq $0x8, %rsi
movq %r15, %rdi
callq 0x18576
movl 0x10(%r14), %eax
movl 0x10(%rbx), %ecx
movl %ecx, 0x10(%r14)
movl %eax, 0x10(%rbx)
movups 0x18(%r14), %xmm0
movups 0x18(%rbx), %xmm1
movups %xmm1, 0x18(%r14)
movups %xmm0, 0x18(%rbx)
movl 0x28(%r14), %eax
movl 0x28(%rbx), %ecx
movl %ecx, 0x28(%r14)
movl %eax, 0x28(%rbx)
popq %rbx
popq %r14
popq %r15
retq
callq 0x1839e
movq %rax, %rsi
jmp 0xe6aa
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::TaintQuery::TaintQuery(panda::TaintQuery const&)
TaintQuery::TaintQuery(const TaintQuery& from)
  : ::PROTOBUF_NAMESPACE_ID::Message(),
      _has_bits_(from._has_bits_) {
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_unique_label_set()) {
    unique_label_set_ = new ::panda::TaintQueryUniqueLabelSet(*from.unique_label_set_);
  } else {
    unique_label_set_ = nullptr;
  }
  ::memcpy(&ptr_, &from.ptr_,
    static_cast<size_t>(reinterpret_cast<char*>(&offset_) -
    reinterpret_cast<char*>(&ptr_)) + sizeof(offset_));
  // @@protoc_insertion_point(copy_constructor:panda.TaintQuery)
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x40, %rsp
movq %rsi, %r14
movq %rdi, %rbx
movq $0x0, 0x8(%rdi)
leaq 0x14eed(%rip), %rax     # 0x23678
movq %rax, (%rdi)
movl 0x10(%rsi), %eax
movl %eax, 0x10(%rdi)
movl $0x0, 0x14(%rdi)
movq 0x8(%rsi), %rsi
testb $0x1, %sil
je 0xe7b6
leaq 0x8(%rbx), %rdi
andq $-0x2, %rsi
addq $0x8, %rsi
callq 0x18514
movl 0x10(%r14), %ebp
testb $0x1, %bpl
je 0xe80b
cmpq $0x0, 0x18(%r14)
jne 0xe80b
leaq 0xa974(%rip), %rdx      # 0x19142
leaq 0x8(%rsp), %r15
movq %r15, %rdi
movl $0x3, %esi
movl $0x1394, %ecx           # imm = 0x1394
callq 0x6530
leaq 0xa996(%rip), %rsi      # 0x19182
movq %r15, %rdi
callq 0x6580
leaq 0x7(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x8(%rsp), %rdi
callq 0x65a0
testb $0x1, %bpl
je 0xe82f
movq 0x18(%r14), %r12
movl $0x30, %edi
callq 0x6360
movq %rax, %r15
movq %rax, %rdi
movq %r12, %rsi
callq 0xd476
jmp 0xe832
xorl %r15d, %r15d
movq %r15, 0x18(%rbx)
movups 0x20(%r14), %xmm0
movups %xmm0, 0x20(%rbx)
addq $0x40, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
jmp 0xe860
movq %rax, %rbx
movl $0x30, %esi
movq %r15, %rdi
callq 0x6370
jmp 0xe86d
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x65a0
movq %rbx, %rdi
callq 0x65b0
nop
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::TaintQuery::Clear()
void TaintQuery::Clear() {
// @@protoc_insertion_point(message_clear_start:panda.TaintQuery)
  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    GOOGLE_DCHECK(unique_label_set_ != nullptr);
    unique_label_set_->Clear();
  }
  if (cached_has_bits & 0x0000000eu) {
    ::memset(&ptr_, 0, static_cast<size_t>(
        reinterpret_cast<char*>(&offset_) -
        reinterpret_cast<char*>(&ptr_)) + sizeof(offset_));
  }
  _has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x48, %rsp
movq %rdi, %rbx
movl 0x10(%rdi), %ebp
testb $0x1, %bpl
je 0xe963
movq 0x18(%rbx), %r15
testq %r15, %r15
jne 0xe93d
leaq 0xb886(%rip), %rdx      # 0x1a186
leaq 0x10(%rsp), %r14
movq %r14, %rdi
movl $0x3, %esi
movl $0xcb2, %ecx            # imm = 0xCB2
callq 0x6530
leaq 0xb975(%rip), %rsi      # 0x1a293
movq %r14, %rdi
callq 0x6580
leaq 0xf(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x10(%rsp), %rdi
callq 0x65a0
testq %r15, %r15
movq 0x18(%rbx), %rdi
xorl %eax, %eax
movl %eax, 0x18(%rdi)
movq $0x0, 0x28(%rdi)
movl %eax, 0x10(%rdi)
testb $0x1, 0x8(%rdi)
je 0xe963
addq $0x8, %rdi
callq 0x18542
testb $0xe, %bpl
je 0xe970
xorps %xmm0, %xmm0
movups %xmm0, 0x20(%rbx)
movl $0x0, 0x10(%rbx)
testb $0x1, 0x8(%rbx)
je 0xe989
addq $0x8, %rbx
movq %rbx, %rdi
callq 0x18542
addq $0x48, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
jmp 0xe996
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x65a0
movq %rbx, %rdi
callq 0x65b0
nop
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::TaintQuery::ByteSizeLong() const
size_t TaintQuery::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:panda.TaintQuery)
  size_t total_size = 0;

  if (((_has_bits_[0] & 0x0000000e) ^ 0x0000000e) == 0) {  // All required fields are present.
    // required uint64 ptr = 1;
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt64Size(
        this->_internal_ptr());

    // required uint32 tcn = 2;
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
        this->_internal_tcn());

    // required uint32 offset = 3;
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
        this->_internal_offset());

  } else {
    total_size += RequiredFieldsByteSizeFallback();
  }
  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // optional .panda.TaintQueryUniqueLabelSet unique_label_set = 4;
  cached_has_bits = _has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *unique_label_set_);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    return ::PROTOBUF_NAMESPACE_ID::internal::ComputeUnknownFieldsSize(
        _internal_metadata_, total_size, &_cached_size_);
  }
  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
  SetCachedSize(cached_size);
  return total_size;
}

// Assembly:
pushq %rbp
pushq %r14
pushq %rbx
movq %rdi, %rbx
movl 0x10(%rdi), %ebp
movl %ebp, %eax
notl %eax
testb $0xe, %al
jne 0xef18
movq 0x20(%rbx), %rax
orq $0x1, %rax
bsrq %rax, %rax
leal (%rax,%rax,8), %eax
addl $0x49, %eax
shrl $0x6, %eax
movl 0x28(%rbx), %ecx
orl $0x1, %ecx
bsrl %ecx, %ecx
leal (%rcx,%rcx,8), %ecx
addl $0x49, %ecx
shrl $0x6, %ecx
movl 0x2c(%rbx), %edx
orl $0x1, %edx
bsrl %edx, %edx
leal (%rdx,%rdx,8), %edx
addl $0x49, %edx
shrl $0x6, %edx
addq %rax, %rcx
leaq (%rdx,%rcx), %r14
addq $0x3, %r14
jmp 0xef23
movq %rbx, %rdi
callq 0xee60
movq %rax, %r14
testb $0x1, %bpl
je 0xef4a
movq 0x18(%rbx), %rdi
callq 0xd9be
addq %rax, %r14
orl $0x1, %eax
bsrl %eax, %eax
leal (%rax,%rax,8), %eax
addl $0x49, %eax
shrl $0x6, %eax
addq %rax, %r14
incq %r14
testb $0x1, 0x8(%rbx)
jne 0xef5c
movl %r14d, 0x14(%rbx)
movq %r14, %rax
popq %rbx
popq %r14
popq %rbp
retq
leaq 0x8(%rbx), %rdi
addq $0x14, %rbx
movq %r14, %rsi
movq %rbx, %rdx
popq %rbx
popq %r14
popq %rbp
jmp 0x6050
nop
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::TaintQuery::MergeFrom(google::protobuf::Message const&)
void TaintQuery::MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) {
// @@protoc_insertion_point(generalized_merge_from_start:panda.TaintQuery)
  GOOGLE_DCHECK_NE(&from, this);
  const TaintQuery* source =
      ::PROTOBUF_NAMESPACE_ID::DynamicCastToGenerated<TaintQuery>(
          &from);
  if (source == nullptr) {
  // @@protoc_insertion_point(generalized_merge_from_cast_fail:panda.TaintQuery)
    ::PROTOBUF_NAMESPACE_ID::internal::ReflectionOps::Merge(from, this);
  } else {
  // @@protoc_insertion_point(generalized_merge_from_cast_success:panda.TaintQuery)
    MergeFrom(*source);
  }
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x40, %rsp
movq %rsi, %rbx
movq %rdi, %r14
cmpq %rdi, %rsi
jne 0xefcc
leaq 0xb1f7(%rip), %rdx      # 0x1a186
leaq 0x8(%rsp), %r15
movq %r15, %rdi
movl $0x3, %esi
movl $0xd6f, %ecx            # imm = 0xD6F
callq 0x6530
leaq 0xb1e4(%rip), %rsi      # 0x1a191
movq %r15, %rdi
callq 0x6580
leaq 0x7(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x8(%rsp), %rdi
callq 0x65a0
cmpq %r14, %rbx
leaq 0x146a2(%rip), %rax     # 0x23678
cmpq %rax, (%rbx)
je 0xefe8
movq %rbx, %rdi
movq %r14, %rsi
callq 0x6330
jmp 0xeff3
movq %r14, %rdi
movq %rbx, %rsi
callq 0xf014
addq $0x40, %rsp
popq %rbx
popq %r14
popq %r15
retq
jmp 0xefff
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x65a0
movq %rbx, %rdi
callq 0x65b0
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::TaintQuery::MergeFrom(panda::TaintQuery const&)
void TaintQuery::MergeFrom(const TaintQuery& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:panda.TaintQuery)
  GOOGLE_DCHECK_NE(&from, this);
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._has_bits_[0];
  if (cached_has_bits & 0x0000000fu) {
    if (cached_has_bits & 0x00000001u) {
      _internal_mutable_unique_label_set()->::panda::TaintQueryUniqueLabelSet::MergeFrom(from._internal_unique_label_set());
    }
    if (cached_has_bits & 0x00000002u) {
      ptr_ = from.ptr_;
    }
    if (cached_has_bits & 0x00000004u) {
      tcn_ = from.tcn_;
    }
    if (cached_has_bits & 0x00000008u) {
      offset_ = from.offset_;
    }
    _has_bits_[0] |= cached_has_bits;
  }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x48, %rsp
movq %rsi, %r14
movq %rdi, %rbx
cmpq %rdi, %rsi
jne 0xf06d
leaq 0xb156(%rip), %rdx      # 0x1a186
leaq 0x10(%rsp), %r15
movq %r15, %rdi
movl $0x3, %esi
movl $0xd7e, %ecx            # imm = 0xD7E
callq 0x6530
leaq 0xb143(%rip), %rsi      # 0x1a191
movq %r15, %rdi
callq 0x6580
leaq 0xf(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x10(%rsp), %rdi
callq 0x65a0
cmpq %rbx, %r14
leaq 0x8(%rbx), %r15
movq 0x8(%r14), %rsi
testb $0x1, %sil
je 0xf08e
andq $-0x2, %rsi
addq $0x8, %rsi
movq %r15, %rdi
callq 0x18514
movl 0x10(%r14), %ebp
testb $0xf, %bpl
je 0xf101
testb $0x1, %bpl
je 0xf0d6
orb $0x1, 0x10(%rbx)
cmpq $0x0, 0x18(%rbx)
jne 0xf0bb
movq (%r15), %rdi
testb $0x1, %dil
jne 0xf10c
callq 0x16d22
movq %rax, 0x18(%rbx)
movq 0x18(%rbx), %rdi
movq 0x18(%r14), %rax
testq %rax, %rax
leaq 0x1573b(%rip), %rsi     # 0x24808
cmovneq %rax, %rsi
callq 0xdac8
testb $0x2, %bpl
je 0xf0e4
movq 0x20(%r14), %rax
movq %rax, 0x20(%rbx)
testb $0x4, %bpl
je 0xf0f1
movl 0x28(%r14), %eax
movl %eax, 0x28(%rbx)
testb $0x8, %bpl
je 0xf0fe
movl 0x2c(%r14), %eax
movl %eax, 0x2c(%rbx)
orl %ebp, 0x10(%rbx)
addq $0x48, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
andq $-0x2, %rdi
movq (%rdi), %rdi
jmp 0xf0b2
jmp 0xf117
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x65a0
movq %rbx, %rdi
callq 0x65b0
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::TaintQuery::InternalSwap(panda::TaintQuery*)
void TaintQuery::InternalSwap(TaintQuery* other) {
  using std::swap;
  _internal_metadata_.Swap<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(&other->_internal_metadata_);
  swap(_has_bits_[0], other->_has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(TaintQuery, offset_)
      + sizeof(TaintQuery::offset_)
      - PROTOBUF_FIELD_OFFSET(TaintQuery, unique_label_set_)>(
          reinterpret_cast<char*>(&unique_label_set_),
          reinterpret_cast<char*>(&other->unique_label_set_));
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rsi, %rbx
movq %rdi, %r14
leaq 0x8(%rsi), %rdi
testb $0x1, 0x8(%r14)
jne 0xf235
testb $0x1, (%rdi)
je 0xf252
leaq 0x8(%r14), %r15
movq (%rdi), %rsi
testb $0x1, %sil
je 0xf288
andq $-0x2, %rsi
addq $0x8, %rsi
movq %r15, %rdi
callq 0x18576
movl 0x10(%r14), %eax
movl 0x10(%rbx), %ecx
movl %ecx, 0x10(%r14)
movl %eax, 0x10(%rbx)
movups 0x18(%r14), %xmm0
movups 0x18(%rbx), %xmm1
movups %xmm1, 0x18(%r14)
movups %xmm0, 0x18(%rbx)
movq 0x28(%r14), %rax
movq 0x28(%rbx), %rcx
movq %rcx, 0x28(%r14)
movq %rax, 0x28(%rbx)
popq %rbx
popq %r14
popq %r15
retq
callq 0x1839e
movq %rax, %rsi
jmp 0xf24a
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::AttackPoint::AttackPoint(panda::AttackPoint const&)
AttackPoint::AttackPoint(const AttackPoint& from)
  : ::PROTOBUF_NAMESPACE_ID::Message(),
      _has_bits_(from._has_bits_) {
  _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;
  }
  info_ = from.info_;
  // @@protoc_insertion_point(copy_constructor:panda.AttackPoint)
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x40, %rsp
movq %rsi, %r14
movq %rdi, %rbx
movq $0x0, 0x8(%rdi)
leaq 0x143e9(%rip), %rax     # 0x23728
movq %rax, (%rdi)
movl 0x10(%rsi), %eax
movl %eax, 0x10(%rdi)
movl $0x0, 0x14(%rdi)
movq 0x8(%rsi), %rsi
testb $0x1, %sil
je 0xf36a
leaq 0x8(%rbx), %rdi
andq $-0x2, %rsi
addq $0x8, %rsi
callq 0x18514
movl 0x10(%r14), %ebp
testb $0x1, %bpl
je 0xf3bf
cmpq $0x0, 0x18(%r14)
jne 0xf3bf
leaq 0x9dc0(%rip), %rdx      # 0x19142
leaq 0x8(%rsp), %r15
movq %r15, %rdi
movl $0x3, %esi
movl $0x1405, %ecx           # imm = 0x1405
callq 0x6530
leaq 0xb26f(%rip), %rsi      # 0x1a60f
movq %r15, %rdi
callq 0x6580
leaq 0x7(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x8(%rsp), %rdi
callq 0x65a0
testb $0x1, %bpl
je 0xf3e3
movq 0x18(%r14), %r12
movl $0x28, %edi
callq 0x6360
movq %rax, %r15
movq %rax, %rdi
movq %r12, %rsi
callq 0x91e0
jmp 0xf3e6
xorl %r15d, %r15d
movq %r15, 0x18(%rbx)
movl 0x10(%r14), %ebp
testb $0x2, %bpl
je 0xf43f
cmpq $0x0, 0x20(%r14)
jne 0xf43f
leaq 0x9d40(%rip), %rdx      # 0x19142
leaq 0x8(%rsp), %r15
movq %r15, %rdi
movl $0x3, %esi
movl $0x1456, %ecx           # imm = 0x1456
callq 0x6530
leaq 0xb220(%rip), %rsi      # 0x1a640
movq %r15, %rdi
callq 0x6580
leaq 0x7(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x8(%rsp), %rdi
callq 0x65a0
testb $0x2, %bpl
je 0xf463
movq 0x20(%r14), %r12
movl $0x30, %edi
callq 0x6360
movq %rax, %r15
movq %rax, %rdi
movq %r12, %rsi
callq 0xdcba
jmp 0xf466
xorl %r15d, %r15d
movq %r15, 0x20(%rbx)
movl 0x28(%r14), %eax
movl %eax, 0x28(%rbx)
addq $0x40, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
jmp 0xf4a0
movq %rax, %rbx
movl $0x30, %esi
jmp 0xf496
jmp 0xf4a0
jmp 0xf4a0
movq %rax, %rbx
movl $0x28, %esi
movq %r15, %rdi
callq 0x6370
jmp 0xf4ad
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x65a0
movq %rbx, %rdi
callq 0x65b0
nop
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::AttackPoint::Clear()
void AttackPoint::Clear() {
// @@protoc_insertion_point(message_clear_start:panda.AttackPoint)
  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _has_bits_[0];
  if (cached_has_bits & 0x00000003u) {
    if (cached_has_bits & 0x00000001u) {
      GOOGLE_DCHECK(call_stack_ != nullptr);
      call_stack_->Clear();
    }
    if (cached_has_bits & 0x00000002u) {
      GOOGLE_DCHECK(src_info_ != nullptr);
      src_info_->Clear();
    }
  }
  info_ = 0u;
  _has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x78, %rsp
movq %rdi, %rbx
movl 0x10(%rdi), %ebp
testb $0x3, %bpl
je 0xf603
testb $0x1, %bpl
je 0xf5a4
movq 0x18(%rbx), %r15
testq %r15, %r15
jne 0xf587
leaq 0xac3c(%rip), %rdx      # 0x1a186
leaq 0x40(%rsp), %r14
movq %r14, %rdi
movl $0x3, %esi
movl $0xe22, %ecx            # imm = 0xE22
callq 0x6530
leaq 0xacdf(%rip), %rsi      # 0x1a247
movq %r14, %rdi
callq 0x6580
leaq 0x8(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x40(%rsp), %rdi
callq 0x65a0
testq %r15, %r15
movq 0x18(%rbx), %rdi
movl $0x0, 0x10(%rdi)
testb $0x1, 0x8(%rdi)
je 0xf5a4
addq $0x8, %rdi
callq 0x18542
testb $0x2, %bpl
je 0xf603
movq 0x20(%rbx), %r15
testq %r15, %r15
jne 0xf5f7
leaq 0xabcc(%rip), %rdx      # 0x1a186
leaq 0x8(%rsp), %r14
movq %r14, %rdi
movl $0x3, %esi
movl $0xe26, %ecx            # imm = 0xE26
callq 0x6530
leaq 0xac96(%rip), %rsi      # 0x1a26e
movq %r14, %rdi
callq 0x6580
leaq 0x7(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x8(%rsp), %rdi
callq 0x65a0
testq %r15, %r15
movq 0x20(%rbx), %rdi
callq 0xddf2
xorl %eax, %eax
movl %eax, 0x28(%rbx)
movl %eax, 0x10(%rbx)
testb $0x1, 0x8(%rbx)
je 0xf61d
addq $0x8, %rbx
movq %rbx, %rdi
callq 0x18542
addq $0x78, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
jmp 0xf62c
jmp 0xf636
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
jmp 0xf63e
movq %rax, %rbx
leaq 0x40(%rsp), %rdi
callq 0x65a0
movq %rbx, %rdi
callq 0x65b0
nop
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::AttackPoint::RequiredFieldsByteSizeFallback() const
size_t AttackPoint::RequiredFieldsByteSizeFallback() const {
// @@protoc_insertion_point(required_fields_byte_size_fallback_start:panda.AttackPoint)
  size_t total_size = 0;

  if (_internal_has_call_stack()) {
    // required .panda.CallStack call_stack = 2;
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *call_stack_);
  }

  if (_internal_has_src_info()) {
    // required .panda.SrcInfo src_info = 3;
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *src_info_);
  }

  if (_internal_has_info()) {
    // required uint32 info = 1;
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
        this->_internal_info());
  }

  return total_size;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x48, %rsp
movq %rdi, %rbx
movl 0x10(%rdi), %ebp
testb $0x1, %bpl
je 0xfa6f
cmpq $0x0, 0x18(%rbx)
jne 0xfa6f
leaq 0x9710(%rip), %rdx      # 0x19142
leaq 0x10(%rsp), %r14
movq %r14, %rdi
movl $0x3, %esi
movl $0x1405, %ecx           # imm = 0x1405
callq 0x6530
leaq 0xabbf(%rip), %rsi      # 0x1a60f
movq %r14, %rdi
callq 0x6580
leaq 0xf(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x10(%rsp), %rdi
callq 0x65a0
testb $0x1, %bpl
je 0xfa98
movq 0x18(%rbx), %rdi
callq 0x962c
movl %eax, %ecx
orl $0x1, %ecx
bsrl %ecx, %ecx
leal (%rcx,%rcx,8), %ecx
addl $0x49, %ecx
shrl $0x6, %ecx
leaq (%rax,%rcx), %r14
incq %r14
jmp 0xfa9b
xorl %r14d, %r14d
movl 0x10(%rbx), %ebp
testb $0x2, %bpl
je 0xfaef
cmpq $0x0, 0x20(%rbx)
jne 0xfaef
leaq 0x9690(%rip), %rdx      # 0x19142
leaq 0x10(%rsp), %r15
movq %r15, %rdi
movl $0x3, %esi
movl $0x1456, %ecx           # imm = 0x1456
callq 0x6530
leaq 0xab70(%rip), %rsi      # 0x1a640
movq %r15, %rdi
callq 0x6580
leaq 0xf(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x10(%rsp), %rdi
callq 0x65a0
testb $0x2, %bpl
je 0xfb16
movq 0x20(%rbx), %rdi
callq 0xe3e0
addq %rax, %r14
orl $0x1, %eax
bsrl %eax, %eax
leal (%rax,%rax,8), %eax
addl $0x49, %eax
shrl $0x6, %eax
addq %rax, %r14
incq %r14
testb $0x4, 0x10(%rbx)
je 0xfb34
movl 0x28(%rbx), %eax
orl $0x1, %eax
bsrl %eax, %eax
leal (%rax,%rax,8), %eax
addl $0x49, %eax
shrl $0x6, %eax
addq %rax, %r14
incq %r14
movq %r14, %rax
addq $0x48, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
jmp 0xfb48
jmp 0xfb48
jmp 0xfb48
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x65a0
movq %rbx, %rdi
callq 0x65b0
nop
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::AttackPoint::ByteSizeLong() const
size_t AttackPoint::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:panda.AttackPoint)
  size_t total_size = 0;

  if (((_has_bits_[0] & 0x00000007) ^ 0x00000007) == 0) {  // All required fields are present.
    // required .panda.CallStack call_stack = 2;
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *call_stack_);

    // required .panda.SrcInfo src_info = 3;
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *src_info_);

    // required uint32 info = 1;
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::UInt32Size(
        this->_internal_info());

  } else {
    total_size += RequiredFieldsByteSizeFallback();
  }
  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    return ::PROTOBUF_NAMESPACE_ID::internal::ComputeUnknownFieldsSize(
        _internal_metadata_, total_size, &_cached_size_);
  }
  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
  SetCachedSize(cached_size);
  return total_size;
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rdi, %rbx
movl 0x10(%rdi), %eax
notl %eax
testb $0x7, %al
jne 0xfbca
movq 0x18(%rbx), %rdi
callq 0x962c
movq %rax, %r14
orl $0x1, %eax
bsrl %eax, %eax
leal (%rax,%rax,8), %r15d
addl $0x49, %r15d
shrl $0x6, %r15d
movq 0x20(%rbx), %rdi
callq 0xe3e0
addq %rax, %r14
orl $0x1, %eax
bsrl %eax, %eax
leal (%rax,%rax,8), %eax
addl $0x49, %eax
shrl $0x6, %eax
movl 0x28(%rbx), %ecx
orl $0x1, %ecx
bsrl %ecx, %ecx
leal (%rcx,%rcx,8), %ecx
addl $0x49, %ecx
shrl $0x6, %ecx
addq %r15, %r14
addq %rax, %r14
leaq (%rcx,%r14), %rax
addq $0x3, %rax
jmp 0xfbd2
movq %rbx, %rdi
callq 0xfa0e
testb $0x1, 0x8(%rbx)
jne 0xfbe1
movl %eax, 0x14(%rbx)
popq %rbx
popq %r14
popq %r15
retq
leaq 0x8(%rbx), %rdi
addq $0x14, %rbx
movq %rax, %rsi
movq %rbx, %rdx
popq %rbx
popq %r14
popq %r15
jmp 0x6050
nop
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::AttackPoint::MergeFrom(google::protobuf::Message const&)
void AttackPoint::MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) {
// @@protoc_insertion_point(generalized_merge_from_start:panda.AttackPoint)
  GOOGLE_DCHECK_NE(&from, this);
  const AttackPoint* source =
      ::PROTOBUF_NAMESPACE_ID::DynamicCastToGenerated<AttackPoint>(
          &from);
  if (source == nullptr) {
  // @@protoc_insertion_point(generalized_merge_from_cast_fail:panda.AttackPoint)
    ::PROTOBUF_NAMESPACE_ID::internal::ReflectionOps::Merge(from, this);
  } else {
  // @@protoc_insertion_point(generalized_merge_from_cast_success:panda.AttackPoint)
    MergeFrom(*source);
  }
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x40, %rsp
movq %rsi, %rbx
movq %rdi, %r14
cmpq %rdi, %rsi
jne 0xfc52
leaq 0xa571(%rip), %rdx      # 0x1a186
leaq 0x8(%rsp), %r15
movq %r15, %rdi
movl $0x3, %esi
movl $0xecb, %ecx            # imm = 0xECB
callq 0x6530
leaq 0xa55e(%rip), %rsi      # 0x1a191
movq %r15, %rdi
callq 0x6580
leaq 0x7(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x8(%rsp), %rdi
callq 0x65a0
cmpq %r14, %rbx
leaq 0x13acc(%rip), %rax     # 0x23728
cmpq %rax, (%rbx)
je 0xfc6e
movq %rbx, %rdi
movq %r14, %rsi
callq 0x6330
jmp 0xfc79
movq %r14, %rdi
movq %rbx, %rsi
callq 0xfc9a
addq $0x40, %rsp
popq %rbx
popq %r14
popq %r15
retq
jmp 0xfc85
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x65a0
movq %rbx, %rdi
callq 0x65b0
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::AttackPoint::MergeFrom(panda::AttackPoint const&)
void AttackPoint::MergeFrom(const AttackPoint& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:panda.AttackPoint)
  GOOGLE_DCHECK_NE(&from, this);
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = from._has_bits_[0];
  if (cached_has_bits & 0x00000007u) {
    if (cached_has_bits & 0x00000001u) {
      _internal_mutable_call_stack()->::panda::CallStack::MergeFrom(from._internal_call_stack());
    }
    if (cached_has_bits & 0x00000002u) {
      _internal_mutable_src_info()->::panda::SrcInfo::MergeFrom(from._internal_src_info());
    }
    if (cached_has_bits & 0x00000004u) {
      info_ = from.info_;
    }
    _has_bits_[0] |= cached_has_bits;
  }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x48, %rsp
movq %rsi, %r14
movq %rdi, %rbx
cmpq %rdi, %rsi
jne 0xfcf3
leaq 0xa4d0(%rip), %rdx      # 0x1a186
leaq 0x10(%rsp), %r15
movq %r15, %rdi
movl $0x3, %esi
movl $0xeda, %ecx            # imm = 0xEDA
callq 0x6530
leaq 0xa4bd(%rip), %rsi      # 0x1a191
movq %r15, %rdi
callq 0x6580
leaq 0xf(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x10(%rsp), %rdi
callq 0x65a0
cmpq %rbx, %r14
leaq 0x8(%rbx), %r15
movq 0x8(%r14), %rsi
testb $0x1, %sil
je 0xfd14
andq $-0x2, %rsi
addq $0x8, %rsi
movq %r15, %rdi
callq 0x18514
movl 0x10(%r14), %ebp
testb $0x7, %bpl
je 0xfdae
testb $0x1, %bpl
je 0xfd60
orb $0x1, 0x10(%rbx)
cmpq $0x0, 0x18(%rbx)
jne 0xfd45
movq (%r15), %rdi
testb $0x1, %dil
jne 0xfdb9
callq 0x16a54
movq %rax, 0x18(%rbx)
movq 0x18(%rbx), %rdi
movq 0x18(%r14), %rax
testq %rax, %rax
leaq 0x14981(%rip), %rsi     # 0x246d8
cmovneq %rax, %rsi
callq 0x9702
testb $0x2, %bpl
je 0xfd9e
orb $0x2, 0x10(%rbx)
cmpq $0x0, 0x20(%rbx)
jne 0xfd83
movq (%r15), %rdi
testb $0x1, %dil
jne 0xfdc5
callq 0x16da2
movq %rax, 0x20(%rbx)
movq 0x20(%rbx), %rdi
movq 0x20(%r14), %rax
testq %rax, %rax
leaq 0x14aa3(%rip), %rsi     # 0x24838
cmovneq %rax, %rsi
callq 0xe544
testb $0x4, %bpl
je 0xfdab
movl 0x28(%r14), %eax
movl %eax, 0x28(%rbx)
orl %ebp, 0x10(%rbx)
addq $0x48, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
andq $-0x2, %rdi
movq (%rdi), %rdi
jmp 0xfd3c
andq $-0x2, %rdi
movq (%rdi), %rdi
jmp 0xfd7a
jmp 0xfdd0
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x65a0
movq %rbx, %rdi
callq 0x65b0
nop
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::AttackPoint::InternalSwap(panda::AttackPoint*)
void AttackPoint::InternalSwap(AttackPoint* other) {
  using std::swap;
  _internal_metadata_.Swap<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(&other->_internal_metadata_);
  swap(_has_bits_[0], other->_has_bits_[0]);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(AttackPoint, info_)
      + sizeof(AttackPoint::info_)
      - PROTOBUF_FIELD_OFFSET(AttackPoint, call_stack_)>(
          reinterpret_cast<char*>(&call_stack_),
          reinterpret_cast<char*>(&other->call_stack_));
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rsi, %rbx
movq %rdi, %r14
leaq 0x8(%rsi), %rdi
testb $0x1, 0x8(%r14)
jne 0xfee1
testb $0x1, (%rdi)
je 0xfefe
leaq 0x8(%r14), %r15
movq (%rdi), %rsi
testb $0x1, %sil
je 0xff32
andq $-0x2, %rsi
addq $0x8, %rsi
movq %r15, %rdi
callq 0x18576
movl 0x10(%r14), %eax
movl 0x10(%rbx), %ecx
movl %ecx, 0x10(%r14)
movl %eax, 0x10(%rbx)
movups 0x18(%r14), %xmm0
movups 0x18(%rbx), %xmm1
movups %xmm1, 0x18(%r14)
movups %xmm0, 0x18(%rbx)
movl 0x28(%r14), %eax
movl 0x28(%rbx), %ecx
movl %ecx, 0x28(%r14)
movl %eax, 0x28(%rbx)
popq %rbx
popq %r14
popq %r15
retq
callq 0x1839e
movq %rax, %rsi
jmp 0xfef6
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::TaintQueryHypercall::MergeFrom(google::protobuf::Message const&)
void TaintQueryHypercall::MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) {
// @@protoc_insertion_point(generalized_merge_from_start:panda.TaintQueryHypercall)
  GOOGLE_DCHECK_NE(&from, this);
  const TaintQueryHypercall* source =
      ::PROTOBUF_NAMESPACE_ID::DynamicCastToGenerated<TaintQueryHypercall>(
          &from);
  if (source == nullptr) {
  // @@protoc_insertion_point(generalized_merge_from_cast_fail:panda.TaintQueryHypercall)
    ::PROTOBUF_NAMESPACE_ID::internal::ReflectionOps::Merge(from, this);
  } else {
  // @@protoc_insertion_point(generalized_merge_from_cast_success:panda.TaintQueryHypercall)
    MergeFrom(*source);
  }
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x40, %rsp
movq %rsi, %rbx
movq %rdi, %r14
cmpq %rdi, %rsi
jne 0x10f9c
leaq 0x9227(%rip), %rdx      # 0x1a186
leaq 0x8(%rsp), %r15
movq %r15, %rdi
movl $0x3, %esi
movl $0x10a3, %ecx           # imm = 0x10A3
callq 0x6530
leaq 0x9214(%rip), %rsi      # 0x1a191
movq %r15, %rdi
callq 0x6580
leaq 0x7(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x8(%rsp), %rdi
callq 0x65a0
cmpq %r14, %rbx
leaq 0x12832(%rip), %rax     # 0x237d8
cmpq %rax, (%rbx)
je 0x10fb8
movq %rbx, %rdi
movq %r14, %rsi
callq 0x6330
jmp 0x10fc3
movq %r14, %rdi
movq %rbx, %rsi
callq 0x10fe4
addq $0x40, %rsp
popq %rbx
popq %r14
popq %r15
retq
jmp 0x10fcf
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x65a0
movq %rbx, %rdi
callq 0x65b0
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::TaintQueryHypercall::MergeFrom(panda::TaintQueryHypercall const&)
void TaintQueryHypercall::MergeFrom(const TaintQueryHypercall& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:panda.TaintQueryHypercall)
  GOOGLE_DCHECK_NE(&from, this);
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  data_.MergeFrom(from.data_);
  taint_query_.MergeFrom(from.taint_query_);
  cached_has_bits = from._has_bits_[0];
  if (cached_has_bits & 0x0000001fu) {
    if (cached_has_bits & 0x00000001u) {
      _internal_mutable_call_stack()->::panda::CallStack::MergeFrom(from._internal_call_stack());
    }
    if (cached_has_bits & 0x00000002u) {
      _internal_mutable_src_info()->::panda::SrcInfo::MergeFrom(from._internal_src_info());
    }
    if (cached_has_bits & 0x00000004u) {
      buf_ = from.buf_;
    }
    if (cached_has_bits & 0x00000008u) {
      len_ = from.len_;
    }
    if (cached_has_bits & 0x00000010u) {
      num_tainted_ = from.num_tainted_;
    }
    _has_bits_[0] |= cached_has_bits;
  }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x48, %rsp
movq %rsi, %r14
movq %rdi, %rbx
cmpq %rdi, %rsi
jne 0x1103d
leaq 0x9186(%rip), %rdx      # 0x1a186
leaq 0x10(%rsp), %r15
movq %r15, %rdi
movl $0x3, %esi
movl $0x10b2, %ecx           # imm = 0x10B2
callq 0x6530
leaq 0x9173(%rip), %rsi      # 0x1a191
movq %r15, %rdi
callq 0x6580
leaq 0xf(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x10(%rsp), %rdi
callq 0x65a0
cmpq %rbx, %r14
leaq 0x8(%rbx), %r15
movq 0x8(%r14), %rsi
testb $0x1, %sil
je 0x1105e
andq $-0x2, %rsi
addq $0x8, %rsi
movq %r15, %rdi
callq 0x18514
leaq 0x18(%rbx), %rdi
leaq 0x18(%r14), %rsi
callq 0x64d0
leaq 0x28(%rbx), %rdi
leaq 0x28(%r14), %rsi
callq 0x186ea
movl 0x10(%r14), %ebp
testb $0x1f, %bpl
je 0x11131
testb $0x1, %bpl
je 0x110c8
orb $0x1, 0x10(%rbx)
cmpq $0x0, 0x40(%rbx)
jne 0x110ad
movq (%r15), %rdi
testb $0x1, %dil
jne 0x1113c
callq 0x16a54
movq %rax, 0x40(%rbx)
movq 0x40(%rbx), %rdi
movq 0x40(%r14), %rax
testq %rax, %rax
leaq 0x13619(%rip), %rsi     # 0x246d8
cmovneq %rax, %rsi
callq 0x9702
testb $0x2, %bpl
je 0x11106
orb $0x2, 0x10(%rbx)
cmpq $0x0, 0x48(%rbx)
jne 0x110eb
movq (%r15), %rdi
testb $0x1, %dil
jne 0x11148
callq 0x16da2
movq %rax, 0x48(%rbx)
movq 0x48(%rbx), %rdi
movq 0x48(%r14), %rax
testq %rax, %rax
leaq 0x1373b(%rip), %rsi     # 0x24838
cmovneq %rax, %rsi
callq 0xe544
testb $0x4, %bpl
je 0x11114
movq 0x50(%r14), %rax
movq %rax, 0x50(%rbx)
testb $0x8, %bpl
je 0x11121
movl 0x58(%r14), %eax
movl %eax, 0x58(%rbx)
testb $0x10, %bpl
je 0x1112e
movl 0x5c(%r14), %eax
movl %eax, 0x5c(%rbx)
orl %ebp, 0x10(%rbx)
addq $0x48, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
andq $-0x2, %rdi
movq (%rdi), %rdi
jmp 0x110a4
andq $-0x2, %rdi
movq (%rdi), %rdi
jmp 0x110e2
jmp 0x11153
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x65a0
movq %rbx, %rdi
callq 0x65b0
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::TaintQueryHypercall::InternalSwap(panda::TaintQueryHypercall*)
void TaintQueryHypercall::InternalSwap(TaintQueryHypercall* other) {
  using std::swap;
  _internal_metadata_.Swap<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(&other->_internal_metadata_);
  swap(_has_bits_[0], other->_has_bits_[0]);
  data_.InternalSwap(&other->data_);
  taint_query_.InternalSwap(&other->taint_query_);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(TaintQueryHypercall, num_tainted_)
      + sizeof(TaintQueryHypercall::num_tainted_)
      - PROTOBUF_FIELD_OFFSET(TaintQueryHypercall, call_stack_)>(
          reinterpret_cast<char*>(&call_stack_),
          reinterpret_cast<char*>(&other->call_stack_));
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rsi, %rbx
movq %rdi, %r14
leaq 0x8(%rsi), %rdi
testb $0x1, 0x8(%r14)
jne 0x11281
testb $0x1, (%rdi)
je 0x1129e
leaq 0x8(%r14), %r15
movq (%rdi), %rsi
testb $0x1, %sil
je 0x112f0
andq $-0x2, %rsi
addq $0x8, %rsi
movq %r15, %rdi
callq 0x18576
movl 0x10(%r14), %eax
movl 0x10(%rbx), %ecx
movl %ecx, 0x10(%r14)
movl %eax, 0x10(%rbx)
leaq 0x18(%r14), %rdi
leaq 0x18(%rbx), %rsi
callq 0x6080
leaq 0x28(%r14), %rdi
leaq 0x28(%rbx), %rsi
callq 0x18854
movups 0x40(%r14), %xmm0
movups 0x40(%rbx), %xmm1
movups %xmm1, 0x40(%r14)
movups %xmm0, 0x40(%rbx)
movups 0x50(%r14), %xmm0
movups 0x50(%rbx), %xmm1
movups %xmm1, 0x50(%r14)
movups %xmm0, 0x50(%rbx)
popq %rbx
popq %r14
popq %r15
retq
callq 0x1839e
movq %rax, %rsi
jmp 0x11296
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::TaintedBranch::TaintedBranch(panda::TaintedBranch const&)
TaintedBranch::TaintedBranch(const TaintedBranch& from)
  : ::PROTOBUF_NAMESPACE_ID::Message(),
      _has_bits_(from._has_bits_),
      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;
  }
  // @@protoc_insertion_point(copy_constructor:panda.TaintedBranch)
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x40, %rsp
movq %rsi, %r15
movq %rdi, %r14
movq $0x0, 0x8(%rdi)
leaq 0x124c9(%rip), %rax     # 0x23888
movq %rax, (%rdi)
movl 0x10(%rsi), %eax
movl %eax, 0x10(%rdi)
leaq 0x18(%rdi), %rbx
addq $0x18, %rsi
xorps %xmm0, %xmm0
movups %xmm0, 0x14(%rdi)
movups %xmm0, 0x20(%rdi)
movq %rbx, %rdi
callq 0x186ea
movq 0x8(%r15), %rsi
testb $0x1, %sil
je 0x113fe
leaq 0x8(%r14), %rdi
andq $-0x2, %rsi
addq $0x8, %rsi
callq 0x18514
movl 0x10(%r15), %ebp
testb $0x1, %bpl
je 0x11452
cmpq $0x0, 0x30(%r15)
jne 0x11452
leaq 0x7d2c(%rip), %rdx      # 0x19142
leaq 0x8(%rsp), %rdi
movl $0x3, %esi
movl $0x15fb, %ecx           # imm = 0x15FB
callq 0x6530
leaq 0x91de(%rip), %rsi      # 0x1a60f
leaq 0x8(%rsp), %rdi
callq 0x6580
leaq 0x7(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x8(%rsp), %rdi
callq 0x65a0
testb $0x1, %bpl
je 0x11476
movq 0x30(%r15), %r12
movl $0x28, %edi
callq 0x6360
movq %rax, %r15
movq %rax, %rdi
movq %r12, %rsi
callq 0x91e0
jmp 0x11479
xorl %r15d, %r15d
movq %r15, 0x30(%r14)
addq $0x40, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %r14
movl $0x28, %esi
movq %r15, %rdi
callq 0x6370
jmp 0x114bd
jmp 0x1149e
movq %rax, %r14
leaq 0x8(%rsp), %rdi
callq 0x65a0
jmp 0x114bd
movq %rax, %r14
movq %rbx, %rdi
callq 0x186d2
jmp 0x114c5
movq %rax, %r14
movq %rbx, %rdi
callq 0x1774c
movq %r14, %rdi
callq 0x65b0
nop
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::TaintedBranch::Clear()
void TaintedBranch::Clear() {
// @@protoc_insertion_point(message_clear_start:panda.TaintedBranch)
  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  taint_query_.Clear();
  cached_has_bits = _has_bits_[0];
  if (cached_has_bits & 0x00000001u) {
    GOOGLE_DCHECK(call_stack_ != nullptr);
    call_stack_->Clear();
  }
  _has_bits_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x40, %rsp
movq %rdi, %rbx
addq $0x18, %rdi
callq 0x1846e
testb $0x1, 0x10(%rbx)
je 0x115bf
movq 0x30(%rbx), %r15
testq %r15, %r15
jne 0x115a2
leaq 0x8c21(%rip), %rdx      # 0x1a186
leaq 0x8(%rsp), %r14
movq %r14, %rdi
movl $0x3, %esi
movl $0x114a, %ecx           # imm = 0x114A
callq 0x6530
leaq 0x8cc4(%rip), %rsi      # 0x1a247
movq %r14, %rdi
callq 0x6580
leaq 0x7(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x8(%rsp), %rdi
callq 0x65a0
testq %r15, %r15
movq 0x30(%rbx), %rdi
movl $0x0, 0x10(%rdi)
testb $0x1, 0x8(%rdi)
je 0x115bf
addq $0x8, %rdi
callq 0x18542
movl $0x0, 0x10(%rbx)
testb $0x1, 0x8(%rbx)
je 0x115d8
addq $0x8, %rbx
movq %rbx, %rdi
callq 0x18542
addq $0x40, %rsp
popq %rbx
popq %r14
popq %r15
retq
jmp 0x115e4
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x65a0
movq %rbx, %rdi
callq 0x65b0
nop
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::TaintedBranch::ByteSizeLong() const
size_t TaintedBranch::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:panda.TaintedBranch)
  size_t total_size = 0;

  // required .panda.CallStack call_stack = 1;
  if (_internal_has_call_stack()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *call_stack_);
  }
  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated .panda.TaintQuery taint_query = 2;
  total_size += 1UL * this->_internal_taint_query_size();
  for (const auto& msg : this->taint_query_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    return ::PROTOBUF_NAMESPACE_ID::internal::ComputeUnknownFieldsSize(
        _internal_metadata_, total_size, &_cached_size_);
  }
  int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
  SetCachedSize(cached_size);
  return total_size;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x48, %rsp
movq %rdi, %rbx
movl 0x10(%rdi), %ebp
testb $0x1, %bpl
je 0x11a01
cmpq $0x0, 0x30(%rbx)
jne 0x11a01
leaq 0x777e(%rip), %rdx      # 0x19142
leaq 0x10(%rsp), %r14
movq %r14, %rdi
movl $0x3, %esi
movl $0x15fb, %ecx           # imm = 0x15FB
callq 0x6530
leaq 0x8c2d(%rip), %rsi      # 0x1a60f
movq %r14, %rdi
callq 0x6580
leaq 0xf(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x10(%rsp), %rdi
callq 0x65a0
testb $0x1, %bpl
je 0x11a2a
movq 0x30(%rbx), %rdi
callq 0x962c
movl %eax, %ecx
orl $0x1, %ecx
bsrl %ecx, %ecx
leal (%rcx,%rcx,8), %ecx
addl $0x49, %ecx
shrl $0x6, %ecx
leaq (%rax,%rcx), %r14
incq %r14
jmp 0x11a2d
xorl %r14d, %r14d
movslq 0x20(%rbx), %r15
addq %r15, %r14
movq 0x28(%rbx), %rax
leaq 0x8(%rax), %r12
testq %rax, %rax
cmoveq %rax, %r12
testq %r15, %r15
je 0x11a76
shlq $0x3, %r15
xorl %r13d, %r13d
movq (%r12,%r13), %rdi
callq 0xeec0
addq %rax, %r14
orl $0x1, %eax
bsrl %eax, %eax
leal (%rax,%rax,8), %eax
addl $0x49, %eax
shrl $0x6, %eax
addq %rax, %r14
addq $0x8, %r13
cmpq %r13, %r15
jne 0x11a4f
testb $0x1, 0x8(%rbx)
jne 0x11a92
movl %r14d, 0x14(%rbx)
movq %r14, %rax
addq $0x48, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
leaq 0x8(%rbx), %rdi
addq $0x14, %rbx
movq %r14, %rsi
movq %rbx, %rdx
callq 0x6050
movq %rax, %r14
jmp 0x11a80
jmp 0x11aac
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x65a0
movq %rbx, %rdi
callq 0x65b0
nop
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::TaintedBranch::MergeFrom(google::protobuf::Message const&)
void TaintedBranch::MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) {
// @@protoc_insertion_point(generalized_merge_from_start:panda.TaintedBranch)
  GOOGLE_DCHECK_NE(&from, this);
  const TaintedBranch* source =
      ::PROTOBUF_NAMESPACE_ID::DynamicCastToGenerated<TaintedBranch>(
          &from);
  if (source == nullptr) {
  // @@protoc_insertion_point(generalized_merge_from_cast_fail:panda.TaintedBranch)
    ::PROTOBUF_NAMESPACE_ID::internal::ReflectionOps::Merge(from, this);
  } else {
  // @@protoc_insertion_point(generalized_merge_from_cast_success:panda.TaintedBranch)
    MergeFrom(*source);
  }
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x40, %rsp
movq %rsi, %rbx
movq %rdi, %r14
cmpq %rdi, %rsi
jne 0x11b1a
leaq 0x86a9(%rip), %rdx      # 0x1a186
leaq 0x8(%rsp), %r15
movq %r15, %rdi
movl $0x3, %esi
movl $0x11c3, %ecx           # imm = 0x11C3
callq 0x6530
leaq 0x8696(%rip), %rsi      # 0x1a191
movq %r15, %rdi
callq 0x6580
leaq 0x7(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x8(%rsp), %rdi
callq 0x65a0
cmpq %r14, %rbx
leaq 0x11d64(%rip), %rax     # 0x23888
cmpq %rax, (%rbx)
je 0x11b36
movq %rbx, %rdi
movq %r14, %rsi
callq 0x6330
jmp 0x11b41
movq %r14, %rdi
movq %rbx, %rsi
callq 0x11b62
addq $0x40, %rsp
popq %rbx
popq %r14
popq %r15
retq
jmp 0x11b4d
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x65a0
movq %rbx, %rdi
callq 0x65b0
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::TaintedBranch::MergeFrom(panda::TaintedBranch const&)
void TaintedBranch::MergeFrom(const TaintedBranch& from) {
// @@protoc_insertion_point(class_specific_merge_from_start:panda.TaintedBranch)
  GOOGLE_DCHECK_NE(&from, this);
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  taint_query_.MergeFrom(from.taint_query_);
  if (from._internal_has_call_stack()) {
    _internal_mutable_call_stack()->::panda::CallStack::MergeFrom(from._internal_call_stack());
  }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x80, %rsp
movq %rsi, %rbx
movq %rdi, %r14
cmpq %rdi, %rsi
jne 0x11bc0
leaq 0x8603(%rip), %rdx      # 0x1a186
leaq 0x48(%rsp), %r15
movq %r15, %rdi
movl $0x3, %esi
movl $0x11d2, %ecx           # imm = 0x11D2
callq 0x6530
leaq 0x85f0(%rip), %rsi      # 0x1a191
movq %r15, %rdi
callq 0x6580
leaq 0x10(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x48(%rsp), %rdi
callq 0x65a0
cmpq %r14, %rbx
leaq 0x8(%r14), %r15
movq 0x8(%rbx), %rsi
testb $0x1, %sil
je 0x11be1
andq $-0x2, %rsi
addq $0x8, %rsi
movq %r15, %rdi
callq 0x18514
leaq 0x18(%r14), %rdi
leaq 0x18(%rbx), %rsi
callq 0x186ea
movl 0x10(%rbx), %ebp
testb $0x1, %bpl
je 0x11c42
cmpq $0x0, 0x30(%rbx)
jne 0x11c42
leaq 0x753d(%rip), %rdx      # 0x19142
leaq 0x10(%rsp), %r12
movq %r12, %rdi
movl $0x3, %esi
movl $0x15fb, %ecx           # imm = 0x15FB
callq 0x6530
leaq 0x89ec(%rip), %rsi      # 0x1a60f
movq %r12, %rdi
callq 0x6580
leaq 0xf(%rsp), %rdi
movq %rax, %rsi
callq 0x6450
leaq 0x10(%rsp), %rdi
callq 0x65a0
testb $0x1, %bpl
je 0x11c81
orb $0x1, 0x10(%r14)
cmpq $0x0, 0x30(%r14)
jne 0x11c66
movq (%r15), %rdi
testb $0x1, %dil
jne 0x11c91
callq 0x16a54
movq %rax, 0x30(%r14)
movq 0x30(%r14), %rdi
movq 0x30(%rbx), %rax
testq %rax, %rax
leaq 0x12a60(%rip), %rsi     # 0x246d8
cmovneq %rax, %rsi
callq 0x9702
addq $0x80, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
andq $-0x2, %rdi
movq (%rdi), %rdi
jmp 0x11c5d
jmp 0x11c9c
movq %rax, %rbx
leaq 0x48(%rsp), %rdi
jmp 0x11cb0
jmp 0x11ca8
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x65a0
movq %rbx, %rdi
callq 0x65b0
nop
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::TaintedBranch::InternalSwap(panda::TaintedBranch*)
void TaintedBranch::InternalSwap(TaintedBranch* other) {
  using std::swap;
  _internal_metadata_.Swap<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(&other->_internal_metadata_);
  swap(_has_bits_[0], other->_has_bits_[0]);
  taint_query_.InternalSwap(&other->taint_query_);
  swap(call_stack_, other->call_stack_);
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rsi, %rbx
movq %rdi, %r14
leaq 0x8(%rsi), %rdi
testb $0x1, 0x8(%r14)
jne 0x11d3b
testb $0x1, (%rdi)
je 0x11d58
leaq 0x8(%r14), %r15
movq (%rdi), %rsi
testb $0x1, %sil
je 0x11d89
andq $-0x2, %rsi
addq $0x8, %rsi
movq %r15, %rdi
callq 0x18576
movl 0x10(%r14), %eax
movl 0x10(%rbx), %ecx
movl %ecx, 0x10(%r14)
movl %eax, 0x10(%rbx)
leaq 0x18(%r14), %rdi
leaq 0x18(%rbx), %rsi
callq 0x18854
movq 0x30(%r14), %rax
movq 0x30(%rbx), %rcx
movq %rcx, 0x30(%r14)
movq %rax, 0x30(%rbx)
popq %rbx
popq %r14
popq %r15
retq
callq 0x1839e
movq %rax, %rsi
jmp 0x11d50
nop
// File: /workspace/github_cpp_makefile_star2_O1/moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::TaintedBranchSummary::TaintedBranchSummary(panda::TaintedBranchSummary const&)
TaintedBranchSummary::TaintedBranchSummary(const TaintedBranchSummary& from)
  : ::PROTOBUF_NAMESPACE_ID::Message(),
      _has_bits_(from._has_bits_) {
  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  ::memcpy(&asid_, &from.asid_,
    static_cast<size_t>(reinterpret_cast<char*>(&pc_) -
    reinterpret_cast<char*>(&asid_)) + sizeof(pc_));
  // @@protoc_insertion_point(copy_constructor:panda.TaintedBranchSummary)
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rsi, %r14
movq %rdi, %rbx
movq $0x0, 0x8(%rdi)
leaq 0x11b45(%rip), %rax     # 0x23938
movq %rax, (%rdi)
movl 0x10(%rsi), %eax
movl %eax, 0x10(%rdi)
movl $0x0, 0x14(%rdi)
movq 0x8(%rsi), %rsi
testb $0x1, %sil
je 0x11e1e
leaq 0x8(%rbx), %rdi
andq $-0x2, %rsi
addq $0x8, %rsi
callq 0x18514
movups 0x18(%r14), %xmm0
movups %xmm0, 0x18(%rbx)
addq $0x8, %rsp
popq %rbx
popq %r14
retq
nop