// File: /workspace/github_cpp_makefile_star2_O2/salleaffaire[P]MXFParser/klv.cpp
// Function: klv_item::output(std::ostream&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
void klv_item::output(std::ostream &os, std::string indent) {
   os << indent << " KEY" << std::endl;
   os << indent << " -------------------------------------------" << std::endl;
   os << indent << " IOD     = " << "0x" << std::hex << std::setfill('0') << std::setw(2) 
      << (uint32_t)mKey[0] << std::endl;
   os << indent << " UL Size = " << "0x" << std::hex << std::setfill('0') << std::setw(2) 
      << (uint32_t)mKey[1] << std::endl;
   os << indent << " UL Code = " << "0x" << std::hex << std::setfill('0') << std::setw(2)
      << (uint32_t)mKey[2] << std::endl;
   os << indent << " SMPTE D = " << "0x" << std::hex << std::setfill('0') << std::setw(2)
      << (uint32_t)mKey[3] << std::endl;
   os << indent << " Registry Category Designator = " 
      << "0x" << std::hex << std::setfill('0') << std::setw(2)
      << (uint32_t)mKey[4];
   if (0x02 == mKey[4]) {
      os << indent << " [Group]" << std::endl; 
   }
   else {
      os << indent << std::endl;
   }
   os << indent << " Registry Designator          = " 
      << "0x" << std::hex << std::setfill('0') << std::setw(2)
      << (uint32_t)mKey[5] << std::endl;
   os << indent << " Structure Designator         = " 
      << "0x" << std::hex << std::setfill('0') << std::setw(2)
      << (uint32_t)mKey[6] << std::endl;
   os << indent << " Version Number               = " 
      << "0x" << std::hex << std::setfill('0') << std::setw(2)
      << (uint32_t)mKey[7] << std::endl;
      
   os << indent << " Item Designator              = "
      << "0x" 
      << std::hex << std::setfill('0') << std::setw(2) << (uint32_t)mKey[8]
      << std::hex << std::setfill('0') << std::setw(2) << (uint32_t)mKey[9]
      << std::hex << std::setfill('0') << std::setw(2) << (uint32_t)mKey[10]
      << std::hex << std::setfill('0') << std::setw(2) << (uint32_t)mKey[11]
      << std::hex << std::setfill('0') << std::setw(2) << (uint32_t)mKey[12]
      << std::hex << std::setfill('0') << std::setw(2) << (uint32_t)mKey[13]
      << std::hex << std::setfill('0') << std::setw(2) << (uint32_t)mKey[14]
      << std::hex << std::setfill('0') << std::setw(2) << (uint32_t)mKey[15] 
      << std::endl;
   os << indent << " Length = " << mLength << std::endl; 

   if (mKLVList) {
      
   }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rdx, %r14
movq %rsi, %r15
movq %rdi, %rbx
movq %rsi, %rdi
movq %rdx, %rsi
callq 0x2170
leaq 0x3608(%rip), %rsi      # 0x601c
movq %rax, %rdi
callq 0x2180
movq %rax, %rdi
callq 0x20d0
movq %r15, %rdi
movq %r14, %rsi
callq 0x2170
leaq 0x35eb(%rip), %rsi      # 0x6021
movq %rax, %rdi
callq 0x2180
movq %rax, %rdi
callq 0x20d0
movq %r15, %rdi
movq %r14, %rsi
callq 0x2170
leaq 0x35f6(%rip), %rsi      # 0x604e
movq %rax, %rdi
callq 0x2180
leaq 0x35f3(%rip), %r12      # 0x605a
movq %rax, %rdi
movq %r12, %rsi
callq 0x2180
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movl 0x18(%rax,%rcx), %edx
andl $-0x4b, %edx
orl $0x8, %edx
movl %edx, 0x18(%rax,%rcx)
pushq $0x30
popq %rbp
movq %rax, %rdi
movl %ebp, %esi
callq 0x2220
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
pushq $0x2
popq %r13
movq %r13, 0x10(%rax,%rcx)
movzbl (%rbx), %esi
movq %rax, %rdi
callq 0x20f0
movq %rax, %rdi
callq 0x20d0
movq %r15, %rdi
movq %r14, %rsi
callq 0x2170
leaq 0x3594(%rip), %rsi      # 0x605d
movq %rax, %rdi
callq 0x2180
movq %rax, %rdi
movq %r12, %rsi
callq 0x2180
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movl 0x18(%rax,%rcx), %edx
andl $-0x4b, %edx
orl $0x8, %edx
movl %edx, 0x18(%rax,%rcx)
movq %rax, %rdi
movl %ebp, %esi
callq 0x2220
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movq %r13, 0x10(%rax,%rcx)
movzbl 0x1(%rbx), %esi
movq %rax, %rdi
callq 0x20f0
movq %rax, %rdi
callq 0x20d0
movq %r15, %rdi
movq %r14, %rsi
callq 0x2170
leaq 0x353c(%rip), %rsi      # 0x6069
movq %rax, %rdi
callq 0x2180
movq %rax, %rdi
movq %r12, %rsi
callq 0x2180
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movl 0x18(%rax,%rcx), %edx
andl $-0x4b, %edx
orl $0x8, %edx
movl %edx, 0x18(%rax,%rcx)
movq %rax, %rdi
movl %ebp, %esi
callq 0x2220
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movq %r13, 0x10(%rax,%rcx)
movzbl 0x2(%rbx), %esi
movq %rax, %rdi
callq 0x20f0
movq %rax, %rdi
callq 0x20d0
movq %r15, %rdi
movq %r14, %rsi
callq 0x2170
leaq 0x34e4(%rip), %rsi      # 0x6075
movq %rax, %rdi
callq 0x2180
movq %rax, %rdi
movq %r12, %rsi
callq 0x2180
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movl 0x18(%rax,%rcx), %edx
andl $-0x4b, %edx
orl $0x8, %edx
movl %edx, 0x18(%rax,%rcx)
movq %rax, %rdi
movl %ebp, %esi
callq 0x2220
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movq %r13, 0x10(%rax,%rcx)
movzbl 0x3(%rbx), %esi
movq %rax, %rdi
callq 0x20f0
movq %rax, %rdi
callq 0x20d0
movq %r15, %rdi
movq %r14, %rsi
callq 0x2170
leaq 0x348c(%rip), %rsi      # 0x6081
movq %rax, %rdi
callq 0x2180
movq %rax, %rdi
movq %r12, %rsi
callq 0x2180
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movl 0x18(%rax,%rcx), %edx
andl $-0x4b, %edx
orl $0x8, %edx
movl %edx, 0x18(%rax,%rcx)
movq %rax, %rdi
movl %ebp, %esi
callq 0x2220
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movq %r13, 0x10(%rax,%rcx)
movzbl 0x4(%rbx), %esi
movq %rax, %rdi
callq 0x20f0
movb 0x4(%rbx), %bpl
movq %r15, %rdi
movq %r14, %rsi
callq 0x2170
cmpb $0x2, %bpl
jne 0x2c63
leaq 0x3447(%rip), %rsi      # 0x60a2
movq %rax, %rdi
callq 0x2180
movq %rax, %rdi
callq 0x20d0
movq %r15, %rdi
movq %r14, %rsi
callq 0x2170
leaq 0x342e(%rip), %rsi      # 0x60ab
movq %rax, %rdi
callq 0x2180
leaq 0x33ce(%rip), %r12      # 0x605a
movq %rax, %rdi
movq %r12, %rsi
callq 0x2180
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movl 0x18(%rax,%rcx), %edx
andl $-0x4b, %edx
orl $0x8, %edx
movl %edx, 0x18(%rax,%rcx)
pushq $0x30
popq %rbp
movq %rax, %rdi
movl %ebp, %esi
callq 0x2220
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movq %r13, 0x10(%rax,%rcx)
movzbl 0x5(%rbx), %esi
movq %rax, %rdi
callq 0x20f0
movq %rax, %rdi
callq 0x20d0
movq %r15, %rdi
movq %r14, %rsi
callq 0x2170
leaq 0x33e1(%rip), %rsi      # 0x60cc
movq %rax, %rdi
callq 0x2180
movq %rax, %rdi
movq %r12, %rsi
callq 0x2180
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movl 0x18(%rax,%rcx), %edx
andl $-0x4b, %edx
orl $0x8, %edx
movl %edx, 0x18(%rax,%rcx)
movq %rax, %rdi
movl %ebp, %esi
callq 0x2220
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movq %r13, 0x10(%rax,%rcx)
movzbl 0x6(%rbx), %esi
movq %rax, %rdi
callq 0x20f0
movq %rax, %rdi
callq 0x20d0
movq %r15, %rdi
movq %r14, %rsi
callq 0x2170
leaq 0x339e(%rip), %rsi      # 0x60ed
movq %rax, %rdi
callq 0x2180
movq %rax, %rdi
movq %r12, %rsi
callq 0x2180
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movl 0x18(%rax,%rcx), %edx
andl $-0x4b, %edx
orl $0x8, %edx
movl %edx, 0x18(%rax,%rcx)
movq %rax, %rdi
movl %ebp, %esi
callq 0x2220
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movq %r13, 0x10(%rax,%rcx)
movzbl 0x7(%rbx), %esi
movq %rax, %rdi
callq 0x20f0
movq %rax, %rdi
callq 0x20d0
movq %r15, %rdi
movq %r14, %rsi
callq 0x2170
leaq 0x335b(%rip), %rsi      # 0x610e
movq %rax, %rdi
callq 0x2180
movq %rax, %rdi
movq %r12, %rsi
callq 0x2180
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movl 0x18(%rax,%rcx), %edx
andl $-0x4b, %edx
orl $0x8, %edx
movl %edx, 0x18(%rax,%rcx)
movq %rax, %rdi
movl %ebp, %esi
callq 0x2220
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movq %r13, 0x10(%rax,%rcx)
movzbl 0x8(%rbx), %esi
movq %rax, %rdi
callq 0x20f0
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movl 0x18(%rax,%rcx), %edx
andl $-0x4b, %edx
orl $0x8, %edx
movl %edx, 0x18(%rax,%rcx)
movq %rax, %rdi
movl %ebp, %esi
callq 0x2220
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movq %r13, 0x10(%rax,%rcx)
movzbl 0x9(%rbx), %esi
movq %rax, %rdi
callq 0x20f0
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movl 0x18(%rax,%rcx), %edx
andl $-0x4b, %edx
orl $0x8, %edx
movl %edx, 0x18(%rax,%rcx)
movq %rax, %rdi
movl %ebp, %esi
callq 0x2220
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movq %r13, 0x10(%rax,%rcx)
movzbl 0xa(%rbx), %esi
movq %rax, %rdi
callq 0x20f0
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movl 0x18(%rax,%rcx), %edx
andl $-0x4b, %edx
orl $0x8, %edx
movl %edx, 0x18(%rax,%rcx)
movq %rax, %rdi
movl %ebp, %esi
callq 0x2220
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movq %r13, 0x10(%rax,%rcx)
movzbl 0xb(%rbx), %esi
movq %rax, %rdi
callq 0x20f0
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movl 0x18(%rax,%rcx), %edx
andl $-0x4b, %edx
orl $0x8, %edx
movl %edx, 0x18(%rax,%rcx)
movq %rax, %rdi
movl %ebp, %esi
callq 0x2220
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movq %r13, 0x10(%rax,%rcx)
movzbl 0xc(%rbx), %esi
movq %rax, %rdi
callq 0x20f0
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movl 0x18(%rax,%rcx), %edx
andl $-0x4b, %edx
orl $0x8, %edx
movl %edx, 0x18(%rax,%rcx)
movq %rax, %rdi
movl %ebp, %esi
callq 0x2220
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movq %r13, 0x10(%rax,%rcx)
movzbl 0xd(%rbx), %esi
movq %rax, %rdi
callq 0x20f0
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movl 0x18(%rax,%rcx), %edx
andl $-0x4b, %edx
orl $0x8, %edx
movl %edx, 0x18(%rax,%rcx)
movq %rax, %rdi
movl %ebp, %esi
callq 0x2220
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movq %r13, 0x10(%rax,%rcx)
movzbl 0xe(%rbx), %esi
movq %rax, %rdi
callq 0x20f0
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movl 0x18(%rax,%rcx), %edx
andl $-0x4b, %edx
orl $0x8, %edx
movl %edx, 0x18(%rax,%rcx)
movq %rax, %rdi
movl %ebp, %esi
callq 0x2220
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movq %r13, 0x10(%rax,%rcx)
movzbl 0xf(%rbx), %esi
movq %rax, %rdi
callq 0x20f0
movq %rax, %rdi
callq 0x20d0
movq %r15, %rdi
movq %r14, %rsi
callq 0x2170
leaq 0x3197(%rip), %rsi      # 0x612f
movq %rax, %rdi
callq 0x2180
movl 0x10(%rbx), %esi
movq %rax, %rdi
callq 0x20f0
movq %rax, %rdi
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x20d0
nop