// File: /workspace/github_c_makefile_star2_O0/videolan[P]bitstream/examples/./bitstream/dvb/si/desc_58.h
// Function: desc58_print
static inline void desc58_print(uint8_t *p_desc, f_print pf_print,
                                void *opaque, print_type_t i_print_type)
{
    desc58_each_lto(p_desc, p_desc_n) {
        char txt_time_of_change[24];
        time_t ts_time_of_change;

        ts_time_of_change = dvb_time_format_UTC(desc58n_get_time_of_change(p_desc_n),
                            NULL, txt_time_of_change);

        switch (i_print_type) {
        case PRINT_XML:
            pf_print(opaque,
              "<LOCAL_TIME_OFFSET_DESC country_code=\"%3.3s\" country_region_id=\"%u\""
              " lto_polarity=\"%u\" lt_offset=\"%04x\" time_of_change=\"%.f\""
              " time_of_change_dec=\"%s\" next_time_offset=\"%04x\"/>",
              (const char *)desc58n_get_country_code(p_desc_n),
              desc58n_get_country_region_id(p_desc_n),
              desc58n_get_lto_polarity(p_desc_n),
              desc58n_get_lt_offset(p_desc_n),
              difftime(ts_time_of_change, 0), txt_time_of_change,
              desc58n_get_next_offset(p_desc_n)
            );
            break;
        default:
            pf_print(opaque,
              "    - desc 58 local_time_offset country_code=%3.3s country_region_id=%u"
              " lto_polarity=%u lto_offset=%04x time_of_change=%.f"
              " time_of_change_dec=\"%s\" next_time_offset=%04x",
              (const char *)desc58n_get_country_code(p_desc_n),
              desc58n_get_country_region_id(p_desc_n),
              desc58n_get_lto_polarity(p_desc_n),
              desc58n_get_lt_offset(p_desc_n),
              difftime(ts_time_of_change, 0), txt_time_of_change,
              desc58n_get_next_offset(p_desc_n)
             );
        }
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xd0, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq %rdx, -0x18(%rbp)
movl %ecx, -0x1c(%rbp)
movq -0x8(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x193f0
movq %rax, -0x28(%rbp)
cmpq $0x0, -0x28(%rbp)
je 0xec76
movq -0x28(%rbp), %rdi
callq 0x194f0
movq %rax, %rdi
xorl %eax, %eax
movl %eax, %esi
leaq -0x40(%rbp), %rdx
callq 0x19440
movq %rax, -0x48(%rbp)
movl -0x1c(%rbp), %eax
subl $0x1, %eax
jne 0xeb8a
jmp 0xeae1
movq -0x10(%rbp), %rax
movq %rax, -0x50(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0x80(%rbp)
movq -0x28(%rbp), %rdi
callq 0x19540
movq %rax, -0x78(%rbp)
movq -0x28(%rbp), %rdi
callq 0x19560
movzbl %al, %eax
movl %eax, -0x6c(%rbp)
movq -0x28(%rbp), %rdi
callq 0x19580
movzbl %al, %eax
movl %eax, -0x68(%rbp)
movq -0x28(%rbp), %rdi
callq 0x195a0
movzwl %ax, %eax
movl %eax, -0x64(%rbp)
movq -0x48(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x20c0
movsd %xmm0, -0x60(%rbp)
leaq -0x40(%rbp), %rax
movq %rax, -0x58(%rbp)
movq -0x28(%rbp), %rdi
callq 0x195c0
movq -0x80(%rbp), %rdi
movq -0x78(%rbp), %rdx
movl -0x6c(%rbp), %ecx
movl -0x68(%rbp), %r8d
movl -0x64(%rbp), %r9d
movsd -0x60(%rbp), %xmm0
movq -0x58(%rbp), %r11
movq -0x50(%rbp), %r10
movzwl %ax, %eax
leaq 0x1987c(%rip), %rsi     # 0x283f4
movq %r11, (%rsp)
movl %eax, 0x8(%rsp)
movb $0x1, %al
callq *%r10
jmp 0xec5e
movq -0x10(%rbp), %rax
movq %rax, -0x88(%rbp)
movq -0x18(%rbp), %rax
movq %rax, -0xb8(%rbp)
movq -0x28(%rbp), %rdi
callq 0x19540
movq %rax, -0xb0(%rbp)
movq -0x28(%rbp), %rdi
callq 0x19560
movzbl %al, %eax
movl %eax, -0xa4(%rbp)
movq -0x28(%rbp), %rdi
callq 0x19580
movzbl %al, %eax
movl %eax, -0xa0(%rbp)
movq -0x28(%rbp), %rdi
callq 0x195a0
movzwl %ax, %eax
movl %eax, -0x9c(%rbp)
movq -0x48(%rbp), %rdi
xorl %eax, %eax
movl %eax, %esi
callq 0x20c0
movsd %xmm0, -0x98(%rbp)
leaq -0x40(%rbp), %rax
movq %rax, -0x90(%rbp)
movq -0x28(%rbp), %rdi
callq 0x195c0
movq -0xb8(%rbp), %rdi
movq -0xb0(%rbp), %rdx
movl -0xa4(%rbp), %ecx
movl -0xa0(%rbp), %r8d
movl -0x9c(%rbp), %r9d
movsd -0x98(%rbp), %xmm0
movq -0x90(%rbp), %r11
movq -0x88(%rbp), %r10
movzwl %ax, %eax
leaq 0x19851(%rip), %rsi     # 0x284a2
movq %r11, (%rsp)
movl %eax, 0x8(%rsp)
movb $0x1, %al
callq *%r10
jmp 0xec60
movq -0x8(%rbp), %rdi
movq -0x28(%rbp), %rsi
callq 0x193f0
movq %rax, -0x28(%rbp)
jmp 0xeaab
addq $0xd0, %rsp
popq %rbp
retq
nop