// File: mh0fm4[P]SCDC/src/components/compcoup/compcoup_transport.cc
// Function: scdc_dataset_transport::write_inout_info(scdc_transport_connection_t*, _scdc_dataset_inout_t*)
static bool write_inout_info(scdc_transport_connection_t *transport_connection_, scdc_dataset_inout_t *inout)
    {
      scdc_dataset_inout_t inout_null;
      if (!inout)
      {
        scdc_dataset_inout_unset(&inout_null);
        inout = &inout_null;
      }

      scdcint_t inout_buf_current = 0;
#if SCDC_DATASET_INOUT_BUF_MULTIPLE
      if (SCDC_DATASET_INOUT_MBUF_ISSET(inout))
      {
        scdcint_t i;
        for (i = 0; i < SCDC_DATASET_INOUT_MBUF_GET_C(inout); ++i) inout_buf_current += SCDC_DATASET_INOUT_MBUF_M_CURRENT(inout, i);

      } else
#endif
      {
        inout_buf_current = SCDC_DATASET_INOUT_BUF_CURRENT(inout);
      }

      char info[256];
      scdcint_t n = sprintf(info, "%s|%" scdcint_fmt "|%c|%" scdcint_fmt "|%d", inout->format, inout->total_size, inout->total_size_given, inout_buf_current, (inout->next)?1:0);

      if (!write_delim(transport_connection_, info, n, default_delim))
      {
        SCDC_FAIL("write_inout_info: write failed");
        return false;
      }

      return true;
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x1a0, %rsp            # imm = 0x1A0
movq %rdi, -0x10(%rbp)
movq %rsi, -0x18(%rbp)
cmpq $0x0, -0x18(%rbp)
jne 0xa3f7b
leaq -0x70(%rbp), %rdi
callq 0x432e0
leaq -0x70(%rbp), %rax
movq %rax, -0x18(%rbp)
movq $0x0, -0x78(%rbp)
movq -0x18(%rbp), %rax
cmpq $0x0, 0x18(%rax)
jge 0xa4009
movq $0x0, -0x80(%rbp)
movq -0x80(%rbp), %rax
movq %rax, -0x190(%rbp)
movq -0x18(%rbp), %rax
cmpq $0x0, 0x18(%rax)
jge 0xa3fbf
movq -0x18(%rbp), %rcx
xorl %eax, %eax
subq 0x20(%rcx), %rax
movq %rax, -0x198(%rbp)
jmp 0xa3fca
xorl %eax, %eax
movq %rax, -0x198(%rbp)
jmp 0xa3fca
movq -0x190(%rbp), %rax
movq -0x198(%rbp), %rcx
cmpq %rcx, %rax
jge 0xa4007
movq -0x18(%rbp), %rax
movq 0x10(%rax), %rax
imulq $0x18, -0x80(%rbp), %rcx
addq %rcx, %rax
movq 0x10(%rax), %rax
addq -0x78(%rbp), %rax
movq %rax, -0x78(%rbp)
movq -0x80(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x80(%rbp)
jmp 0xa3f96
jmp 0xa4015
movq -0x18(%rbp), %rax
movq 0x20(%rax), %rax
movq %rax, -0x78(%rbp)
leaq -0x180(%rbp), %rdi
movq -0x18(%rbp), %rdx
movq -0x18(%rbp), %rax
movq 0x28(%rax), %rcx
movq -0x18(%rbp), %rax
movsbl 0x30(%rax), %r8d
movq -0x78(%rbp), %r9
movq -0x18(%rbp), %rax
movq 0x38(%rax), %r10
xorl %eax, %eax
movl $0x1, %esi
cmpq $0x0, %r10
cmovnel %esi, %eax
leaq 0x6469(%rip), %rsi      # 0xaa4bb
movl %eax, (%rsp)
movb $0x0, %al
callq 0xc0f0
cltq
movq %rax, -0x188(%rbp)
movq -0x10(%rbp), %rdi
leaq -0x180(%rbp), %rsi
movq -0x188(%rbp), %rdx
movl $0x20, %ecx
callq 0xa2c90
testb $0x1, %al
jne 0xa4111
jmp 0xa408b
leaq 0x30616(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x257e0
cmpq $0x0, %rax
je 0xa4109
leaq 0x30601(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x25800
leaq 0x305f2(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x257e0
movq %rax, %rdi
leaq 0x20e8(%rip), %rsi      # 0xa61b0
callq 0xc670
movq %rax, %rdi
leaq 0x5d70(%rip), %rsi      # 0xa9e47
callq 0xc670
movq %rax, %rdi
leaq 0x63e8(%rip), %rsi      # 0xaa4ce
callq 0xc670
movq %rax, %rdi
movq 0x2fecb(%rip), %rsi     # 0xd3fc0
callq 0xc6d0
leaq 0x305a7(%rip), %rax     # 0xd46a8
movq (%rax), %rdi
callq 0x25820
jmp 0xa410b
movb $0x0, -0x1(%rbp)
jmp 0xa4115
movb $0x1, -0x1(%rbp)
movb -0x1(%rbp), %al
andb $0x1, %al
addq $0x1a0, %rsp            # imm = 0x1A0
popq %rbp
retq
nopw %cs:(%rax,%rax)
nopl (%rax)