// File: moyix[P]pandalog_taint_parser/plog.pb.cc
// Function: panda::LogEntry::_InternalSerialize(unsigned char*, google::protobuf::io::EpsCopyOutputStream*) const
::PROTOBUF_NAMESPACE_ID::uint8* LogEntry::_InternalSerialize(
    ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:panda.LogEntry)
  ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
  (void) cached_has_bits;

  cached_has_bits = _has_bits_[0];
  // required uint64 pc = 1;
  if (cached_has_bits & 0x00002000u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(1, this->_internal_pc(), target);
  }

  // required uint64 instr = 2;
  if (cached_has_bits & 0x00004000u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(2, this->_internal_instr(), target);
  }

  // optional uint64 asid = 3;
  if (cached_has_bits & 0x00008000u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(3, this->_internal_asid(), target);
  }

  // optional string process_name = 4;
  if (cached_has_bits & 0x00000001u) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
      this->_internal_process_name().data(), static_cast<int>(this->_internal_process_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
      "panda.LogEntry.process_name");
    target = stream->WriteStringMaybeAliased(
        4, this->_internal_process_name(), target);
  }

  // optional uint32 process_id = 5;
  if (cached_has_bits & 0x00020000u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(5, this->_internal_process_id(), target);
  }

  // optional uint64 taint_label_virtual_addr = 6;
  if (cached_has_bits & 0x00010000u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(6, this->_internal_taint_label_virtual_addr(), target);
  }

  // optional uint64 taint_label_physical_addr = 7;
  if (cached_has_bits & 0x00080000u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(7, this->_internal_taint_label_physical_addr(), target);
  }

  // optional uint32 taint_label_number = 8;
  if (cached_has_bits & 0x00040000u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt32ToArray(8, this->_internal_taint_label_number(), target);
  }

  // optional .panda.CallStack call_stack = 10;
  if (cached_has_bits & 0x00000002u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(
        10, _Internal::call_stack(this), target, stream);
  }

  // optional .panda.TaintedBranch tainted_branch = 36;
  if (cached_has_bits & 0x00000004u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(
        36, _Internal::tainted_branch(this), target, stream);
  }

  // optional .panda.TaintedInstr tainted_instr = 37;
  if (cached_has_bits & 0x00000008u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(
        37, _Internal::tainted_instr(this), target, stream);
  }

  // optional .panda.TaintQueryHypercall taint_query_hypercall = 38;
  if (cached_has_bits & 0x00000010u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(
        38, _Internal::taint_query_hypercall(this), target, stream);
  }

  // optional .panda.AttackPoint attack_point = 39;
  if (cached_has_bits & 0x00000020u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(
        39, _Internal::attack_point(this), target, stream);
  }

  // optional .panda.TaintedInstrSummary tainted_instr_summary = 56;
  if (cached_has_bits & 0x00000040u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(
        56, _Internal::tainted_instr_summary(this), target, stream);
  }

  // optional uint64 total_instr = 65;
  if (cached_has_bits & 0x00100000u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteUInt64ToArray(65, this->_internal_total_instr(), target);
  }

  // optional .panda.DwarfCall dwarf_call = 66;
  if (cached_has_bits & 0x00000080u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(
        66, _Internal::dwarf_call(this), target, stream);
  }

  // optional .panda.DwarfCall dwarf_ret = 67;
  if (cached_has_bits & 0x00000100u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(
        67, _Internal::dwarf_ret(this), target, stream);
  }

  // optional .panda.TaintQueryPri taint_query_pri = 68;
  if (cached_has_bits & 0x00000200u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(
        68, _Internal::taint_query_pri(this), target, stream);
  }

  // optional .panda.AttackPointPri attack_point_pri = 69;
  if (cached_has_bits & 0x00000400u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(
        69, _Internal::attack_point_pri(this), target, stream);
  }

  // optional .panda.SrcInfoPri pri_trace_src_info = 70;
  if (cached_has_bits & 0x00000800u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(
        70, _Internal::pri_trace_src_info(this), target, stream);
  }

  // optional .panda.TaintedBranchSummary tainted_branch_summary = 72;
  if (cached_has_bits & 0x00001000u) {
    target = stream->EnsureSpace(target);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(
        72, _Internal::tainted_branch_summary(this), target, stream);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:panda.LogEntry)
  return target;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x5c0, %rsp            # imm = 0x5C0
movq %rdi, -0x580(%rbp)
movq %rsi, -0x588(%rbp)
movq %rdx, -0x590(%rbp)
movq -0x580(%rbp), %rax
movq %rax, -0x5a0(%rbp)
movl $0x0, -0x594(%rbp)
addq $0x10, %rax
movq %rax, -0x4b8(%rbp)
movl $0x0, -0x4bc(%rbp)
movq -0x4b8(%rbp), %rax
movslq -0x4bc(%rbp), %rcx
movl (%rax,%rcx,4), %eax
movl %eax, -0x594(%rbp)
movl -0x594(%rbp), %eax
andl $0x2000, %eax           # imm = 0x2000
cmpl $0x0, %eax
je 0x23d6a
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
callq 0x27860
movq -0x5a0(%rbp), %rdi
movq %rax, -0x588(%rbp)
callq 0x9400
movq %rax, %rcx
movq -0x588(%rbp), %rax
movl $0x1, -0x4ec(%rbp)
movq %rcx, -0x4f8(%rbp)
movq %rax, -0x500(%rbp)
movl -0x4ec(%rbp), %ecx
movq -0x500(%rbp), %rax
movl %ecx, -0x224(%rbp)
movl $0x0, -0x228(%rbp)
movq %rax, -0x230(%rbp)
movl -0x224(%rbp), %edi
movl -0x228(%rbp), %esi
callq 0x301e0
movl %eax, %ecx
movq -0x230(%rbp), %rax
movl %ecx, -0x114(%rbp)
movq %rax, -0x120(%rbp)
movl -0x114(%rbp), %edi
movq -0x120(%rbp), %rsi
callq 0x30200
movq %rax, -0x500(%rbp)
movq -0x4f8(%rbp), %rcx
movq -0x500(%rbp), %rax
movq %rcx, -0x1c8(%rbp)
movq %rax, -0x1d0(%rbp)
movq -0x1c8(%rbp), %rdi
movq -0x1d0(%rbp), %rsi
callq 0x302e0
movq %rax, -0x588(%rbp)
movl -0x594(%rbp), %eax
andl $0x4000, %eax           # imm = 0x4000
cmpl $0x0, %eax
je 0x23e60
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
callq 0x27860
movq -0x5a0(%rbp), %rdi
movq %rax, -0x588(%rbp)
callq 0x90c0
movq %rax, %rcx
movq -0x588(%rbp), %rax
movl $0x2, -0x504(%rbp)
movq %rcx, -0x510(%rbp)
movq %rax, -0x518(%rbp)
movl -0x504(%rbp), %ecx
movq -0x518(%rbp), %rax
movl %ecx, -0x214(%rbp)
movl $0x0, -0x218(%rbp)
movq %rax, -0x220(%rbp)
movl -0x214(%rbp), %edi
movl -0x218(%rbp), %esi
callq 0x301e0
movl %eax, %ecx
movq -0x220(%rbp), %rax
movl %ecx, -0x124(%rbp)
movq %rax, -0x130(%rbp)
movl -0x124(%rbp), %edi
movq -0x130(%rbp), %rsi
callq 0x30200
movq %rax, -0x518(%rbp)
movq -0x510(%rbp), %rcx
movq -0x518(%rbp), %rax
movq %rcx, -0x1b8(%rbp)
movq %rax, -0x1c0(%rbp)
movq -0x1b8(%rbp), %rdi
movq -0x1c0(%rbp), %rsi
callq 0x302e0
movq %rax, -0x588(%rbp)
movl -0x594(%rbp), %eax
andl $0x8000, %eax           # imm = 0x8000
cmpl $0x0, %eax
je 0x23f56
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
callq 0x27860
movq -0x5a0(%rbp), %rdi
movq %rax, -0x588(%rbp)
callq 0x2ef40
movq %rax, %rcx
movq -0x588(%rbp), %rax
movl $0x3, -0x51c(%rbp)
movq %rcx, -0x528(%rbp)
movq %rax, -0x530(%rbp)
movl -0x51c(%rbp), %ecx
movq -0x530(%rbp), %rax
movl %ecx, -0x204(%rbp)
movl $0x0, -0x208(%rbp)
movq %rax, -0x210(%rbp)
movl -0x204(%rbp), %edi
movl -0x208(%rbp), %esi
callq 0x301e0
movl %eax, %ecx
movq -0x210(%rbp), %rax
movl %ecx, -0x134(%rbp)
movq %rax, -0x140(%rbp)
movl -0x134(%rbp), %edi
movq -0x140(%rbp), %rsi
callq 0x30200
movq %rax, -0x530(%rbp)
movq -0x528(%rbp), %rcx
movq -0x530(%rbp), %rax
movq %rcx, -0x1a8(%rbp)
movq %rax, -0x1b0(%rbp)
movq -0x1a8(%rbp), %rdi
movq -0x1b0(%rbp), %rsi
callq 0x302e0
movq %rax, -0x588(%rbp)
movl -0x594(%rbp), %eax
andl $0x1, %eax
cmpl $0x0, %eax
je 0x23fed
movq -0x5a0(%rbp), %rdi
callq 0x2cfc0
movq %rax, %rdi
callq 0x6440
movq -0x5a0(%rbp), %rdi
movq %rax, -0x5b0(%rbp)
callq 0x2cfc0
movq %rax, %rdi
callq 0x6530
movq -0x5b0(%rbp), %rdi
movl %eax, %esi
movl $0x1, %edx
leaq 0x1057e(%rip), %rcx     # 0x3452a
callq 0x27fb0
movq -0x5a0(%rbp), %rdi
movq -0x590(%rbp), %rax
movq %rax, -0x5a8(%rbp)
callq 0x2cfc0
movq -0x5a8(%rbp), %rdi
movq %rax, %rdx
movq -0x588(%rbp), %rcx
movl $0x4, %esi
callq 0x27fe0
movq %rax, -0x588(%rbp)
movl -0x594(%rbp), %eax
andl $0x20000, %eax          # imm = 0x20000
cmpl $0x0, %eax
je 0x240d2
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
callq 0x27860
movq -0x5a0(%rbp), %rdi
movq %rax, -0x588(%rbp)
callq 0x2ef60
movl %eax, %ecx
movq -0x588(%rbp), %rax
movl $0x5, -0x494(%rbp)
movl %ecx, -0x498(%rbp)
movq %rax, -0x4a0(%rbp)
movl -0x494(%rbp), %ecx
movq -0x4a0(%rbp), %rax
movl %ecx, -0x244(%rbp)
movl $0x0, -0x248(%rbp)
movq %rax, -0x250(%rbp)
movl -0x244(%rbp), %edi
movl -0x248(%rbp), %esi
callq 0x301e0
movl %eax, %ecx
movq -0x250(%rbp), %rax
movl %ecx, -0xf4(%rbp)
movq %rax, -0x100(%rbp)
movl -0xf4(%rbp), %edi
movq -0x100(%rbp), %rsi
callq 0x30200
movq %rax, -0x4a0(%rbp)
movl -0x498(%rbp), %ecx
movq -0x4a0(%rbp), %rax
movl %ecx, -0x14(%rbp)
movq %rax, -0x20(%rbp)
movl -0x14(%rbp), %edi
movq -0x20(%rbp), %rsi
callq 0x30200
movq %rax, -0x588(%rbp)
movl -0x594(%rbp), %eax
andl $0x10000, %eax          # imm = 0x10000
cmpl $0x0, %eax
je 0x241c8
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
callq 0x27860
movq -0x5a0(%rbp), %rdi
movq %rax, -0x588(%rbp)
callq 0x2ef80
movq %rax, %rcx
movq -0x588(%rbp), %rax
movl $0x6, -0x534(%rbp)
movq %rcx, -0x540(%rbp)
movq %rax, -0x548(%rbp)
movl -0x534(%rbp), %ecx
movq -0x548(%rbp), %rax
movl %ecx, -0x1f4(%rbp)
movl $0x0, -0x1f8(%rbp)
movq %rax, -0x200(%rbp)
movl -0x1f4(%rbp), %edi
movl -0x1f8(%rbp), %esi
callq 0x301e0
movl %eax, %ecx
movq -0x200(%rbp), %rax
movl %ecx, -0x144(%rbp)
movq %rax, -0x150(%rbp)
movl -0x144(%rbp), %edi
movq -0x150(%rbp), %rsi
callq 0x30200
movq %rax, -0x548(%rbp)
movq -0x540(%rbp), %rcx
movq -0x548(%rbp), %rax
movq %rcx, -0x198(%rbp)
movq %rax, -0x1a0(%rbp)
movq -0x198(%rbp), %rdi
movq -0x1a0(%rbp), %rsi
callq 0x302e0
movq %rax, -0x588(%rbp)
movl -0x594(%rbp), %eax
andl $0x80000, %eax          # imm = 0x80000
cmpl $0x0, %eax
je 0x242be
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
callq 0x27860
movq -0x5a0(%rbp), %rdi
movq %rax, -0x588(%rbp)
callq 0x2efa0
movq %rax, %rcx
movq -0x588(%rbp), %rax
movl $0x7, -0x54c(%rbp)
movq %rcx, -0x558(%rbp)
movq %rax, -0x560(%rbp)
movl -0x54c(%rbp), %ecx
movq -0x560(%rbp), %rax
movl %ecx, -0x1e4(%rbp)
movl $0x0, -0x1e8(%rbp)
movq %rax, -0x1f0(%rbp)
movl -0x1e4(%rbp), %edi
movl -0x1e8(%rbp), %esi
callq 0x301e0
movl %eax, %ecx
movq -0x1f0(%rbp), %rax
movl %ecx, -0x154(%rbp)
movq %rax, -0x160(%rbp)
movl -0x154(%rbp), %edi
movq -0x160(%rbp), %rsi
callq 0x30200
movq %rax, -0x560(%rbp)
movq -0x558(%rbp), %rcx
movq -0x560(%rbp), %rax
movq %rcx, -0x188(%rbp)
movq %rax, -0x190(%rbp)
movq -0x188(%rbp), %rdi
movq -0x190(%rbp), %rsi
callq 0x302e0
movq %rax, -0x588(%rbp)
movl -0x594(%rbp), %eax
andl $0x40000, %eax          # imm = 0x40000
cmpl $0x0, %eax
je 0x243a3
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
callq 0x27860
movq -0x5a0(%rbp), %rdi
movq %rax, -0x588(%rbp)
callq 0x2efc0
movl %eax, %ecx
movq -0x588(%rbp), %rax
movl $0x8, -0x4a4(%rbp)
movl %ecx, -0x4a8(%rbp)
movq %rax, -0x4b0(%rbp)
movl -0x4a4(%rbp), %ecx
movq -0x4b0(%rbp), %rax
movl %ecx, -0x234(%rbp)
movl $0x0, -0x238(%rbp)
movq %rax, -0x240(%rbp)
movl -0x234(%rbp), %edi
movl -0x238(%rbp), %esi
callq 0x301e0
movl %eax, %ecx
movq -0x240(%rbp), %rax
movl %ecx, -0x104(%rbp)
movq %rax, -0x110(%rbp)
movl -0x104(%rbp), %edi
movq -0x110(%rbp), %rsi
callq 0x30200
movq %rax, -0x4b0(%rbp)
movl -0x4a8(%rbp), %ecx
movq -0x4b0(%rbp), %rax
movl %ecx, -0x4(%rbp)
movq %rax, -0x10(%rbp)
movl -0x4(%rbp), %edi
movq -0x10(%rbp), %rsi
callq 0x30200
movq %rax, -0x588(%rbp)
movl -0x594(%rbp), %eax
andl $0x2, %eax
cmpl $0x0, %eax
je 0x244b1
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
callq 0x27860
movq -0x5a0(%rbp), %rdi
movq %rax, -0x588(%rbp)
callq 0x21b70
movq %rax, %rdx
movq -0x588(%rbp), %rcx
movq -0x590(%rbp), %rax
movl $0xa, -0x474(%rbp)
movq %rdx, -0x480(%rbp)
movq %rcx, -0x488(%rbp)
movq %rax, -0x490(%rbp)
movl -0x474(%rbp), %ecx
movq -0x488(%rbp), %rax
movl %ecx, -0x254(%rbp)
movl $0x2, -0x258(%rbp)
movq %rax, -0x260(%rbp)
movl -0x254(%rbp), %edi
movl -0x258(%rbp), %esi
callq 0x301e0
movl %eax, %ecx
movq -0x260(%rbp), %rax
movl %ecx, -0xe4(%rbp)
movq %rax, -0xf0(%rbp)
movl -0xe4(%rbp), %edi
movq -0xf0(%rbp), %rsi
callq 0x30200
movq %rax, -0x488(%rbp)
movq -0x480(%rbp), %rdi
callq 0x2f6d0
movl %eax, %edi
movq -0x488(%rbp), %rsi
callq 0x30200
movq %rax, -0x488(%rbp)
movq -0x480(%rbp), %rdi
movq -0x488(%rbp), %rsi
movq -0x490(%rbp), %rdx
callq 0xfb60
movq %rax, -0x588(%rbp)
movl -0x594(%rbp), %eax
andl $0x4, %eax
cmpl $0x0, %eax
je 0x245bf
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
callq 0x27860
movq -0x5a0(%rbp), %rdi
movq %rax, -0x588(%rbp)
callq 0x21c70
movq %rax, %rdx
movq -0x588(%rbp), %rcx
movq -0x590(%rbp), %rax
movl $0x24, -0x434(%rbp)
movq %rdx, -0x440(%rbp)
movq %rcx, -0x448(%rbp)
movq %rax, -0x450(%rbp)
movl -0x434(%rbp), %ecx
movq -0x448(%rbp), %rax
movl %ecx, -0x274(%rbp)
movl $0x2, -0x278(%rbp)
movq %rax, -0x280(%rbp)
movl -0x274(%rbp), %edi
movl -0x278(%rbp), %esi
callq 0x301e0
movl %eax, %ecx
movq -0x280(%rbp), %rax
movl %ecx, -0xc4(%rbp)
movq %rax, -0xd0(%rbp)
movl -0xc4(%rbp), %edi
movq -0xd0(%rbp), %rsi
callq 0x30200
movq %rax, -0x448(%rbp)
movq -0x440(%rbp), %rdi
callq 0x2faa0
movl %eax, %edi
movq -0x448(%rbp), %rsi
callq 0x30200
movq %rax, -0x448(%rbp)
movq -0x440(%rbp), %rdi
movq -0x448(%rbp), %rsi
movq -0x450(%rbp), %rdx
callq 0x1deb0
movq %rax, -0x588(%rbp)
movl -0x594(%rbp), %eax
andl $0x8, %eax
cmpl $0x0, %eax
je 0x246cd
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
callq 0x27860
movq -0x5a0(%rbp), %rdi
movq %rax, -0x588(%rbp)
callq 0x21cb0
movq %rax, %rdx
movq -0x588(%rbp), %rcx
movq -0x590(%rbp), %rax
movl $0x25, -0x414(%rbp)
movq %rdx, -0x420(%rbp)
movq %rcx, -0x428(%rbp)
movq %rax, -0x430(%rbp)
movl -0x414(%rbp), %ecx
movq -0x428(%rbp), %rax
movl %ecx, -0x284(%rbp)
movl $0x2, -0x288(%rbp)
movq %rax, -0x290(%rbp)
movl -0x284(%rbp), %edi
movl -0x288(%rbp), %esi
callq 0x301e0
movl %eax, %ecx
movq -0x290(%rbp), %rax
movl %ecx, -0xb4(%rbp)
movq %rax, -0xc0(%rbp)
movl -0xb4(%rbp), %edi
movq -0xc0(%rbp), %rsi
callq 0x30200
movq %rax, -0x428(%rbp)
movq -0x420(%rbp), %rdi
callq 0x2fb60
movl %eax, %edi
movq -0x428(%rbp), %rsi
callq 0x30200
movq %rax, -0x428(%rbp)
movq -0x420(%rbp), %rdi
movq -0x428(%rbp), %rsi
movq -0x430(%rbp), %rdx
callq 0x20070
movq %rax, -0x588(%rbp)
movl -0x594(%rbp), %eax
andl $0x10, %eax
cmpl $0x0, %eax
je 0x247db
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
callq 0x27860
movq -0x5a0(%rbp), %rdi
movq %rax, -0x588(%rbp)
callq 0x21c30
movq %rax, %rdx
movq -0x588(%rbp), %rcx
movq -0x590(%rbp), %rax
movl $0x26, -0x3f4(%rbp)
movq %rdx, -0x400(%rbp)
movq %rcx, -0x408(%rbp)
movq %rax, -0x410(%rbp)
movl -0x3f4(%rbp), %ecx
movq -0x408(%rbp), %rax
movl %ecx, -0x294(%rbp)
movl $0x2, -0x298(%rbp)
movq %rax, -0x2a0(%rbp)
movl -0x294(%rbp), %edi
movl -0x298(%rbp), %esi
callq 0x301e0
movl %eax, %ecx
movq -0x2a0(%rbp), %rax
movl %ecx, -0xa4(%rbp)
movq %rax, -0xb0(%rbp)
movl -0xa4(%rbp), %edi
movq -0xb0(%rbp), %rsi
callq 0x30200
movq %rax, -0x408(%rbp)
movq -0x400(%rbp), %rdi
callq 0x2fa40
movl %eax, %edi
movq -0x408(%rbp), %rsi
callq 0x30200
movq %rax, -0x408(%rbp)
movq -0x400(%rbp), %rdi
movq -0x408(%rbp), %rsi
movq -0x410(%rbp), %rdx
callq 0x1c480
movq %rax, -0x588(%rbp)
movl -0x594(%rbp), %eax
andl $0x20, %eax
cmpl $0x0, %eax
je 0x248e9
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
callq 0x27860
movq -0x5a0(%rbp), %rdi
movq %rax, -0x588(%rbp)
callq 0x21c50
movq %rax, %rdx
movq -0x588(%rbp), %rcx
movq -0x590(%rbp), %rax
movl $0x27, -0x3d4(%rbp)
movq %rdx, -0x3e0(%rbp)
movq %rcx, -0x3e8(%rbp)
movq %rax, -0x3f0(%rbp)
movl -0x3d4(%rbp), %ecx
movq -0x3e8(%rbp), %rax
movl %ecx, -0x2a4(%rbp)
movl $0x2, -0x2a8(%rbp)
movq %rax, -0x2b0(%rbp)
movl -0x2a4(%rbp), %edi
movl -0x2a8(%rbp), %esi
callq 0x301e0
movl %eax, %ecx
movq -0x2b0(%rbp), %rax
movl %ecx, -0x94(%rbp)
movq %rax, -0xa0(%rbp)
movl -0x94(%rbp), %edi
movq -0xa0(%rbp), %rsi
callq 0x30200
movq %rax, -0x3e8(%rbp)
movq -0x3e0(%rbp), %rdi
callq 0x2f9e0
movl %eax, %edi
movq -0x3e8(%rbp), %rsi
callq 0x30200
movq %rax, -0x3e8(%rbp)
movq -0x3e0(%rbp), %rdi
movq -0x3e8(%rbp), %rsi
movq -0x3f0(%rbp), %rdx
callq 0x1abe0
movq %rax, -0x588(%rbp)
movl -0x594(%rbp), %eax
andl $0x40, %eax
cmpl $0x0, %eax
je 0x249f7
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
callq 0x27860
movq -0x5a0(%rbp), %rdi
movq %rax, -0x588(%rbp)
callq 0x21cd0
movq %rax, %rdx
movq -0x588(%rbp), %rcx
movq -0x590(%rbp), %rax
movl $0x38, -0x3b4(%rbp)
movq %rdx, -0x3c0(%rbp)
movq %rcx, -0x3c8(%rbp)
movq %rax, -0x3d0(%rbp)
movl -0x3b4(%rbp), %ecx
movq -0x3c8(%rbp), %rax
movl %ecx, -0x2b4(%rbp)
movl $0x2, -0x2b8(%rbp)
movq %rax, -0x2c0(%rbp)
movl -0x2b4(%rbp), %edi
movl -0x2b8(%rbp), %esi
callq 0x301e0
movl %eax, %ecx
movq -0x2c0(%rbp), %rax
movl %ecx, -0x84(%rbp)
movq %rax, -0x90(%rbp)
movl -0x84(%rbp), %edi
movq -0x90(%rbp), %rsi
callq 0x30200
movq %rax, -0x3c8(%rbp)
movq -0x3c0(%rbp), %rdi
callq 0x2fbc0
movl %eax, %edi
movq -0x3c8(%rbp), %rsi
callq 0x30200
movq %rax, -0x3c8(%rbp)
movq -0x3c0(%rbp), %rdi
movq -0x3c8(%rbp), %rsi
movq -0x3d0(%rbp), %rdx
callq 0x21020
movq %rax, -0x588(%rbp)
movl -0x594(%rbp), %eax
andl $0x100000, %eax         # imm = 0x100000
cmpl $0x0, %eax
je 0x24aed
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
callq 0x27860
movq -0x5a0(%rbp), %rdi
movq %rax, -0x588(%rbp)
callq 0x2efe0
movq %rax, %rcx
movq -0x588(%rbp), %rax
movl $0x41, -0x564(%rbp)
movq %rcx, -0x570(%rbp)
movq %rax, -0x578(%rbp)
movl -0x564(%rbp), %ecx
movq -0x578(%rbp), %rax
movl %ecx, -0x1d4(%rbp)
movl $0x0, -0x1d8(%rbp)
movq %rax, -0x1e0(%rbp)
movl -0x1d4(%rbp), %edi
movl -0x1d8(%rbp), %esi
callq 0x301e0
movl %eax, %ecx
movq -0x1e0(%rbp), %rax
movl %ecx, -0x164(%rbp)
movq %rax, -0x170(%rbp)
movl -0x164(%rbp), %edi
movq -0x170(%rbp), %rsi
callq 0x30200
movq %rax, -0x578(%rbp)
movq -0x570(%rbp), %rcx
movq -0x578(%rbp), %rax
movq %rcx, -0x178(%rbp)
movq %rax, -0x180(%rbp)
movq -0x178(%rbp), %rdi
movq -0x180(%rbp), %rsi
callq 0x302e0
movq %rax, -0x588(%rbp)
movl -0x594(%rbp), %eax
andl $0x80, %eax
cmpl $0x0, %eax
je 0x24bf1
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
callq 0x27860
movq -0x5a0(%rbp), %rdi
movq %rax, -0x588(%rbp)
callq 0x21b90
movq %rax, %rdx
movq -0x588(%rbp), %rcx
movq -0x590(%rbp), %rax
movl $0x42, -0x374(%rbp)
movq %rdx, -0x380(%rbp)
movq %rcx, -0x388(%rbp)
movq %rax, -0x390(%rbp)
movl -0x374(%rbp), %ecx
movq -0x388(%rbp), %rax
movl %ecx, -0x2d4(%rbp)
movl $0x2, -0x2d8(%rbp)
movq %rax, -0x2e0(%rbp)
movl -0x2d4(%rbp), %edi
movl -0x2d8(%rbp), %esi
callq 0x301e0
movl %eax, %ecx
movq -0x2e0(%rbp), %rax
movl %ecx, -0x64(%rbp)
movq %rax, -0x70(%rbp)
movl -0x64(%rbp), %edi
movq -0x70(%rbp), %rsi
callq 0x30200
movq %rax, -0x388(%rbp)
movq -0x380(%rbp), %rdi
callq 0x2f740
movl %eax, %edi
movq -0x388(%rbp), %rsi
callq 0x30200
movq %rax, -0x388(%rbp)
movq -0x380(%rbp), %rdi
movq -0x388(%rbp), %rsi
movq -0x390(%rbp), %rdx
callq 0x10c50
movq %rax, -0x588(%rbp)
movl -0x594(%rbp), %eax
andl $0x100, %eax            # imm = 0x100
cmpl $0x0, %eax
je 0x24cf5
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
callq 0x27860
movq -0x5a0(%rbp), %rdi
movq %rax, -0x588(%rbp)
callq 0x21bb0
movq %rax, %rdx
movq -0x588(%rbp), %rcx
movq -0x590(%rbp), %rax
movl $0x43, -0x394(%rbp)
movq %rdx, -0x3a0(%rbp)
movq %rcx, -0x3a8(%rbp)
movq %rax, -0x3b0(%rbp)
movl -0x394(%rbp), %ecx
movq -0x3a8(%rbp), %rax
movl %ecx, -0x2c4(%rbp)
movl $0x2, -0x2c8(%rbp)
movq %rax, -0x2d0(%rbp)
movl -0x2c4(%rbp), %edi
movl -0x2c8(%rbp), %esi
callq 0x301e0
movl %eax, %ecx
movq -0x2d0(%rbp), %rax
movl %ecx, -0x74(%rbp)
movq %rax, -0x80(%rbp)
movl -0x74(%rbp), %edi
movq -0x80(%rbp), %rsi
callq 0x30200
movq %rax, -0x3a8(%rbp)
movq -0x3a0(%rbp), %rdi
callq 0x2f740
movl %eax, %edi
movq -0x3a8(%rbp), %rsi
callq 0x30200
movq %rax, -0x3a8(%rbp)
movq -0x3a0(%rbp), %rdi
movq -0x3a8(%rbp), %rsi
movq -0x3b0(%rbp), %rdx
callq 0x10c50
movq %rax, -0x588(%rbp)
movl -0x594(%rbp), %eax
andl $0x200, %eax            # imm = 0x200
cmpl $0x0, %eax
je 0x24df9
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
callq 0x27860
movq -0x5a0(%rbp), %rdi
movq %rax, -0x588(%rbp)
callq 0x21bd0
movq %rax, %rdx
movq -0x588(%rbp), %rcx
movq -0x590(%rbp), %rax
movl $0x44, -0x354(%rbp)
movq %rdx, -0x360(%rbp)
movq %rcx, -0x368(%rbp)
movq %rax, -0x370(%rbp)
movl -0x354(%rbp), %ecx
movq -0x368(%rbp), %rax
movl %ecx, -0x2e4(%rbp)
movl $0x2, -0x2e8(%rbp)
movq %rax, -0x2f0(%rbp)
movl -0x2e4(%rbp), %edi
movl -0x2e8(%rbp), %esi
callq 0x301e0
movl %eax, %ecx
movq -0x2f0(%rbp), %rax
movl %ecx, -0x54(%rbp)
movq %rax, -0x60(%rbp)
movl -0x54(%rbp), %edi
movq -0x60(%rbp), %rsi
callq 0x30200
movq %rax, -0x368(%rbp)
movq -0x360(%rbp), %rdi
callq 0x2f860
movl %eax, %edi
movq -0x368(%rbp), %rsi
callq 0x30200
movq %rax, -0x368(%rbp)
movq -0x360(%rbp), %rdi
movq -0x368(%rbp), %rsi
movq -0x370(%rbp), %rdx
callq 0x15650
movq %rax, -0x588(%rbp)
movl -0x594(%rbp), %eax
andl $0x400, %eax            # imm = 0x400
cmpl $0x0, %eax
je 0x24efd
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
callq 0x27860
movq -0x5a0(%rbp), %rdi
movq %rax, -0x588(%rbp)
callq 0x21bf0
movq %rax, %rdx
movq -0x588(%rbp), %rcx
movq -0x590(%rbp), %rax
movl $0x45, -0x334(%rbp)
movq %rdx, -0x340(%rbp)
movq %rcx, -0x348(%rbp)
movq %rax, -0x350(%rbp)
movl -0x334(%rbp), %ecx
movq -0x348(%rbp), %rax
movl %ecx, -0x2f4(%rbp)
movl $0x2, -0x2f8(%rbp)
movq %rax, -0x300(%rbp)
movl -0x2f4(%rbp), %edi
movl -0x2f8(%rbp), %esi
callq 0x301e0
movl %eax, %ecx
movq -0x300(%rbp), %rax
movl %ecx, -0x44(%rbp)
movq %rax, -0x50(%rbp)
movl -0x44(%rbp), %edi
movq -0x50(%rbp), %rsi
callq 0x30200
movq %rax, -0x348(%rbp)
movq -0x340(%rbp), %rdi
callq 0x2f800
movl %eax, %edi
movq -0x348(%rbp), %rsi
callq 0x30200
movq %rax, -0x348(%rbp)
movq -0x340(%rbp), %rdi
movq -0x348(%rbp), %rsi
movq -0x350(%rbp), %rdx
callq 0x13db0
movq %rax, -0x588(%rbp)
movl -0x594(%rbp), %eax
andl $0x800, %eax            # imm = 0x800
cmpl $0x0, %eax
je 0x2500d
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
callq 0x27860
movq -0x5a0(%rbp), %rdi
movq %rax, -0x588(%rbp)
callq 0x21c10
movq %rax, %rdx
movq -0x588(%rbp), %rcx
movq -0x590(%rbp), %rax
movl $0x46, -0x454(%rbp)
movq %rdx, -0x460(%rbp)
movq %rcx, -0x468(%rbp)
movq %rax, -0x470(%rbp)
movl -0x454(%rbp), %ecx
movq -0x468(%rbp), %rax
movl %ecx, -0x264(%rbp)
movl $0x2, -0x268(%rbp)
movq %rax, -0x270(%rbp)
movl -0x264(%rbp), %edi
movl -0x268(%rbp), %esi
callq 0x301e0
movl %eax, %ecx
movq -0x270(%rbp), %rax
movl %ecx, -0xd4(%rbp)
movq %rax, -0xe0(%rbp)
movl -0xd4(%rbp), %edi
movq -0xe0(%rbp), %rsi
callq 0x30200
movq %rax, -0x468(%rbp)
movq -0x460(%rbp), %rdi
callq 0x2f7a0
movl %eax, %edi
movq -0x468(%rbp), %rsi
callq 0x30200
movq %rax, -0x468(%rbp)
movq -0x460(%rbp), %rdi
movq -0x468(%rbp), %rsi
movq -0x470(%rbp), %rdx
callq 0x12510
movq %rax, -0x588(%rbp)
movl -0x594(%rbp), %eax
andl $0x1000, %eax           # imm = 0x1000
cmpl $0x0, %eax
je 0x25111
movq -0x590(%rbp), %rdi
movq -0x588(%rbp), %rsi
callq 0x27860
movq -0x5a0(%rbp), %rdi
movq %rax, -0x588(%rbp)
callq 0x21c90
movq %rax, %rdx
movq -0x588(%rbp), %rcx
movq -0x590(%rbp), %rax
movl $0x48, -0x314(%rbp)
movq %rdx, -0x320(%rbp)
movq %rcx, -0x328(%rbp)
movq %rax, -0x330(%rbp)
movl -0x314(%rbp), %ecx
movq -0x328(%rbp), %rax
movl %ecx, -0x304(%rbp)
movl $0x2, -0x308(%rbp)
movq %rax, -0x310(%rbp)
movl -0x304(%rbp), %edi
movl -0x308(%rbp), %esi
callq 0x301e0
movl %eax, %ecx
movq -0x310(%rbp), %rax
movl %ecx, -0x34(%rbp)
movq %rax, -0x40(%rbp)
movl -0x34(%rbp), %edi
movq -0x40(%rbp), %rsi
callq 0x30200
movq %rax, -0x328(%rbp)
movq -0x320(%rbp), %rdi
callq 0x2fb00
movl %eax, %edi
movq -0x328(%rbp), %rsi
callq 0x30200
movq %rax, -0x328(%rbp)
movq -0x320(%rbp), %rdi
movq -0x328(%rbp), %rsi
movq -0x330(%rbp), %rdx
callq 0x1ee60
movq %rax, -0x588(%rbp)
movq -0x5a0(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x4e8(%rbp)
movq -0x4e8(%rbp), %rax
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rax
movq (%rax), %rax
andq $0x1, %rax
cmpl $0x1, %eax
jne 0x251d9
movq -0x5a0(%rbp), %rax
addq $0x8, %rax
movq %rax, -0x4d8(%rbp)
movq 0x21e75(%rip), %rax     # 0x46fd0
movq %rax, -0x4e0(%rbp)
movq -0x4d8(%rbp), %rax
movq %rax, -0x5b8(%rbp)
movq %rax, -0x4c8(%rbp)
movq -0x4c8(%rbp), %rax
movq %rax, -0x30(%rbp)
movq -0x30(%rbp), %rax
movq (%rax), %rax
andq $0x1, %rax
cmpl $0x1, %eax
jne 0x251ab
movq -0x5b8(%rbp), %rdi
callq 0x310a0
addq $0x8, %rax
movq %rax, -0x4d0(%rbp)
jmp 0x251b8
callq *-0x4e0(%rbp)
movq %rax, -0x4d0(%rbp)
movq -0x4d0(%rbp), %rdi
movq -0x588(%rbp), %rsi
movq -0x590(%rbp), %rdx
callq 0x61b0
movq %rax, -0x588(%rbp)
movq -0x588(%rbp), %rax
addq $0x5c0, %rsp            # imm = 0x5C0
popq %rbp
retq
nopl (%rax)