// File: /workspace/github_c_makefile_star2_O0/videolan[P]bitstream/examples/./bitstream/dvb/si/desc_43.h
// Function: desc43_print
static inline void desc43_print(const uint8_t *p_desc, f_print pf_print,
                                void *opaque, print_type_t i_print_type)
{
    unsigned int i_pos = desc43_get_position(p_desc);
    uint8_t i_polarization = desc43_get_polarization(p_desc);
    const char *psz_polarization = "";;
    uint8_t i_rolloff = desc43_get_rolloff(p_desc);
    uint8_t i_modulation = desc43_get_modulation(p_desc);
    const char *psz_modulation = "";

    switch (i_polarization) {
        case 0x0: psz_polarization = "H"; break;
        case 0x1: psz_polarization = "V"; break;
        case 0x2: psz_polarization = "L"; break;
        case 0x3: psz_polarization = "R"; break;
    }

    switch (i_rolloff) {
        case 0x0: i_rolloff = 35; break;
        case 0x1: i_rolloff = 25; break;
        case 0x2: i_rolloff = 20; break;
    }

    switch (i_modulation) {
        case 0x0: psz_modulation = "auto"; break;
        case 0x1: psz_modulation = "qpsk"; break;
        case 0x2: psz_modulation = "8psk"; break;
        case 0x3: psz_modulation = "16-qam"; break;
    }

    switch (i_print_type) {
    case PRINT_XML:
        if (desc43_get_dvbs2(p_desc))
            pf_print(opaque,
             "<SATELLITE_DESC s2=\"1\" frequency=\"%u%s\" pos=\"%u.%u%c\" rolloff=\"0.%hhu\" modulation=\"%s\" symbolrate=\"%u\" fecinner=\"%s\"/>",
             desc43_get_frequency(p_desc), psz_polarization,
             i_pos / 10, i_pos % 10, desc43_get_east(p_desc) ? 'E' : 'W',
             i_rolloff, psz_modulation, desc43_get_symbolrate(p_desc),
             dvb_delivery_get_fec(desc43_get_fecinner(p_desc)));
        else
            pf_print(opaque,
             "<SATELLITE_DESC s2=\"0\" frequency=\"%u%s\" pos=\"%u.%u%c\" modulation=\"%s\" symbolrate=\"%u\" fecinner=\"%s\"/>",
             desc43_get_frequency(p_desc), psz_polarization,
             i_pos / 10, i_pos % 10, desc43_get_east(p_desc) ? 'E' : 'W',
             psz_modulation, desc43_get_symbolrate(p_desc),
             dvb_delivery_get_fec(desc43_get_fecinner(p_desc)));
        break;
    default:
        if (desc43_get_dvbs2(p_desc))
            pf_print(opaque,
             "    - desc 43 dvb-s2 frequency=%u%s pos=%u.%u%c rolloff=0.%hhu modulation=%s symbolrate=%u fecinner=%s",
             desc43_get_frequency(p_desc), psz_polarization,
             i_pos / 10, i_pos % 10, desc43_get_east(p_desc) ? 'E' : 'W',
             i_rolloff, psz_modulation, desc43_get_symbolrate(p_desc),
             dvb_delivery_get_fec(desc43_get_fecinner(p_desc)));
        else
            pf_print(opaque,
             "    - desc 43 dvb-s frequency=%u%s pos=%u.%u%c modulation=%s symbolrate=%u fecinner=%s",
             desc43_get_frequency(p_desc), psz_polarization,
             i_pos / 10, i_pos % 10, desc43_get_east(p_desc) ? 'E' : 'W',
             psz_modulation, desc43_get_symbolrate(p_desc),
             dvb_delivery_get_fec(desc43_get_fecinner(p_desc)));
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x148, %rsp            # imm = 0x148
movq %rdi, -0x20(%rbp)
movq %rsi, -0x28(%rbp)
movq %rdx, -0x30(%rbp)
movl %ecx, -0x34(%rbp)
movq -0x20(%rbp), %rdi
callq 0x17110
movl %eax, -0x38(%rbp)
movq -0x20(%rbp), %rdi
callq 0x17140
movb %al, -0x39(%rbp)
leaq 0x1f4d1(%rip), %rax     # 0x2b0bf
movq %rax, -0x68(%rbp)
movq %rax, -0x48(%rbp)
movq -0x20(%rbp), %rdi
callq 0x17160
movb %al, -0x49(%rbp)
movq -0x20(%rbp), %rdi
callq 0x17180
movb %al, %cl
movq -0x68(%rbp), %rax
movb %cl, -0x4a(%rbp)
movq %rax, -0x58(%rbp)
movzbl -0x39(%rbp), %eax
movq %rax, -0x60(%rbp)
subq $0x3, %rax
ja 0xbc6c
movq -0x60(%rbp), %rax
leaq 0x17807(%rip), %rcx     # 0x23438
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x1b0fb(%rip), %rax     # 0x26d3c
movq %rax, -0x48(%rbp)
jmp 0xbc6c
leaq 0x1b0f0(%rip), %rax     # 0x26d3e
movq %rax, -0x48(%rbp)
jmp 0xbc6c
leaq 0x1b0e5(%rip), %rax     # 0x26d40
movq %rax, -0x48(%rbp)
jmp 0xbc6c
leaq 0x1b008(%rip), %rax     # 0x26c70
movq %rax, -0x48(%rbp)
movzbl -0x49(%rbp), %eax
movl %eax, -0x6c(%rbp)
testl %eax, %eax
je 0xbc8d
jmp 0xbc79
movl -0x6c(%rbp), %eax
subl $0x1, %eax
je 0xbc93
jmp 0xbc83
movl -0x6c(%rbp), %eax
subl $0x2, %eax
je 0xbc99
jmp 0xbc9d
movb $0x23, -0x49(%rbp)
jmp 0xbc9d
movb $0x19, -0x49(%rbp)
jmp 0xbc9d
movb $0x14, -0x49(%rbp)
movzbl -0x4a(%rbp), %eax
movq %rax, -0x78(%rbp)
subq $0x3, %rax
ja 0xbcf1
movq -0x78(%rbp), %rax
leaq 0x17792(%rip), %rcx     # 0x23448
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x1b07c(%rip), %rax     # 0x26d42
movq %rax, -0x58(%rbp)
jmp 0xbcf1
leaq 0x1b074(%rip), %rax     # 0x26d47
movq %rax, -0x58(%rbp)
jmp 0xbcf1
leaq 0x1b06c(%rip), %rax     # 0x26d4c
movq %rax, -0x58(%rbp)
jmp 0xbcf1
leaq 0x1b064(%rip), %rax     # 0x26d51
movq %rax, -0x58(%rbp)
movl -0x34(%rbp), %eax
subl $0x1, %eax
jne 0xbee7
jmp 0xbcff
movq -0x20(%rbp), %rdi
callq 0x171a0
testb $0x1, %al
jne 0xbd11
jmp 0xbdfe
movq -0x28(%rbp), %rax
movq %rax, -0x80(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0xa8(%rbp)
movq -0x20(%rbp), %rdi
callq 0x171d0
movl %eax, -0x9c(%rbp)
movq -0x48(%rbp), %rax
movq %rax, -0x98(%rbp)
movl -0x38(%rbp), %eax
movl $0xa, %ecx
xorl %edx, %edx
divl %ecx
movl %eax, -0x8c(%rbp)
movl -0x38(%rbp), %eax
movl $0xa, %ecx
xorl %edx, %edx
divl %ecx
movl %edx, -0x88(%rbp)
movq -0x20(%rbp), %rdi
callq 0x17200
movb %al, %cl
movl $0x57, %r15d
movl $0x45, %eax
testb $0x1, %cl
cmovnel %eax, %r15d
movzbl -0x49(%rbp), %r14d
movq -0x58(%rbp), %rbx
movq -0x20(%rbp), %rdi
callq 0x17230
movl %eax, -0x84(%rbp)
movq -0x20(%rbp), %rdi
callq 0x17340
movzbl %al, %edi
callq 0x17260
movq -0xa8(%rbp), %rdi
movl -0x9c(%rbp), %edx
movq -0x98(%rbp), %rcx
movl -0x8c(%rbp), %r8d
movl -0x88(%rbp), %r9d
movl -0x84(%rbp), %r11d
movq -0x80(%rbp), %r10
leaq 0x1af7c(%rip), %rsi     # 0x26d58
movl %r15d, (%rsp)
movl %r14d, 0x8(%rsp)
movq %rbx, 0x10(%rsp)
movl %r11d, 0x18(%rsp)
movq %rax, 0x20(%rsp)
movb $0x0, %al
callq *%r10
jmp 0xbee2
movq -0x28(%rbp), %rax
movq %rax, -0xb0(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0xd8(%rbp)
movq -0x20(%rbp), %rdi
callq 0x171d0
movl %eax, -0xcc(%rbp)
movq -0x48(%rbp), %rax
movq %rax, -0xc8(%rbp)
movl -0x38(%rbp), %eax
movl $0xa, %ecx
xorl %edx, %edx
divl %ecx
movl %eax, -0xbc(%rbp)
movl -0x38(%rbp), %eax
movl $0xa, %ecx
xorl %edx, %edx
divl %ecx
movl %edx, -0xb8(%rbp)
movq -0x20(%rbp), %rdi
callq 0x17200
movb %al, %cl
movl $0x57, %r14d
movl $0x45, %eax
testb $0x1, %cl
cmovnel %eax, %r14d
movq -0x58(%rbp), %rbx
movq -0x20(%rbp), %rdi
callq 0x17230
movl %eax, -0xb4(%rbp)
movq -0x20(%rbp), %rdi
callq 0x17340
movzbl %al, %edi
callq 0x17260
movq -0xd8(%rbp), %rdi
movl -0xcc(%rbp), %edx
movq -0xc8(%rbp), %rcx
movl -0xbc(%rbp), %r8d
movl -0xb8(%rbp), %r9d
movl -0xb4(%rbp), %r11d
movq -0xb0(%rbp), %r10
leaq 0x1af05(%rip), %rsi     # 0x26dcf
movl %r14d, (%rsp)
movq %rbx, 0x8(%rsp)
movl %r11d, 0x10(%rsp)
movq %rax, 0x18(%rsp)
movb $0x0, %al
callq *%r10
jmp 0xc0d2
movq -0x20(%rbp), %rdi
callq 0x171a0
testb $0x1, %al
jne 0xbef9
jmp 0xbfec
movq -0x28(%rbp), %rax
movq %rax, -0xe0(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x108(%rbp)
movq -0x20(%rbp), %rdi
callq 0x171d0
movl %eax, -0xfc(%rbp)
movq -0x48(%rbp), %rax
movq %rax, -0xf8(%rbp)
movl -0x38(%rbp), %eax
movl $0xa, %ecx
xorl %edx, %edx
divl %ecx
movl %eax, -0xec(%rbp)
movl -0x38(%rbp), %eax
movl $0xa, %ecx
xorl %edx, %edx
divl %ecx
movl %edx, -0xe8(%rbp)
movq -0x20(%rbp), %rdi
callq 0x17200
movb %al, %cl
movl $0x57, %r15d
movl $0x45, %eax
testb $0x1, %cl
cmovnel %eax, %r15d
movzbl -0x49(%rbp), %r14d
movq -0x58(%rbp), %rbx
movq -0x20(%rbp), %rdi
callq 0x17230
movl %eax, -0xe4(%rbp)
movq -0x20(%rbp), %rdi
callq 0x17340
movzbl %al, %edi
callq 0x17260
movq -0x108(%rbp), %rdi
movl -0xfc(%rbp), %edx
movq -0xf8(%rbp), %rcx
movl -0xec(%rbp), %r8d
movl -0xe8(%rbp), %r9d
movl -0xe4(%rbp), %r11d
movq -0xe0(%rbp), %r10
leaq 0x1ae6b(%rip), %rsi     # 0x26e35
movl %r15d, (%rsp)
movl %r14d, 0x8(%rsp)
movq %rbx, 0x10(%rsp)
movl %r11d, 0x18(%rsp)
movq %rax, 0x20(%rsp)
movb $0x0, %al
callq *%r10
jmp 0xc0d0
movq -0x28(%rbp), %rax
movq %rax, -0x110(%rbp)
movq -0x30(%rbp), %rax
movq %rax, -0x138(%rbp)
movq -0x20(%rbp), %rdi
callq 0x171d0
movl %eax, -0x12c(%rbp)
movq -0x48(%rbp), %rax
movq %rax, -0x128(%rbp)
movl -0x38(%rbp), %eax
movl $0xa, %ecx
xorl %edx, %edx
divl %ecx
movl %eax, -0x11c(%rbp)
movl -0x38(%rbp), %eax
movl $0xa, %ecx
xorl %edx, %edx
divl %ecx
movl %edx, -0x118(%rbp)
movq -0x20(%rbp), %rdi
callq 0x17200
movb %al, %cl
movl $0x57, %r14d
movl $0x45, %eax
testb $0x1, %cl
cmovnel %eax, %r14d
movq -0x58(%rbp), %rbx
movq -0x20(%rbp), %rdi
callq 0x17230
movl %eax, -0x114(%rbp)
movq -0x20(%rbp), %rdi
callq 0x17340
movzbl %al, %edi
callq 0x17260
movq -0x138(%rbp), %rdi
movl -0x12c(%rbp), %edx
movq -0x128(%rbp), %rcx
movl -0x11c(%rbp), %r8d
movl -0x118(%rbp), %r9d
movl -0x114(%rbp), %r11d
movq -0x110(%rbp), %r10
leaq 0x1ade4(%rip), %rsi     # 0x26e9c
movl %r14d, (%rsp)
movq %rbx, 0x8(%rsp)
movl %r11d, 0x10(%rsp)
movq %rax, 0x18(%rsp)
movb $0x0, %al
callq *%r10
jmp 0xc0d2
addq $0x148, %rsp            # imm = 0x148
popq %rbx
popq %r14
popq %r15
popq %rbp
retq