// File: /workspace/github_c_makefile_star2_O0/hfiguiere[P]exifprobe/print.c
// Function: print_filetype
int
print_filetype(unsigned long magic,unsigned short marker)
{
    int status = -1;
    int chpr = 0;

    switch(magic)
    {
    case JPEG_SOI:
        chpr += printf("JPEG");
        status = 0;
        break;
    case ORF1_MAGIC:
        chpr += printf("ORF1");
        switch(marker)
        {
            case TIFF_INTEL:
                chpr += printf(":II");
                break;
            case TIFF_MOTOROLA:
                chpr += printf(":MM");
                break;
            default:
                break;
        }
        status = 0;
        break;
    case ORF2_MAGIC:
        chpr += printf("ORF2");
        switch(marker)
        {
            case TIFF_INTEL:
                chpr += printf(":II");
                break;
            case TIFF_MOTOROLA:
                chpr += printf(":MM");
                break;
            default:
                break;
        }
        status = 0;
        break;
    case RW2_MAGIC:
        chpr += printf("RW2");
        switch(marker)
        {
            case TIFF_INTEL:
                chpr += printf(":II");
                break;
            case TIFF_MOTOROLA:
                chpr += printf(":MM");
                break;
            default:
                break;
        }
        status = 0;
        break;
    case TIFF_MAGIC:
        chpr += printf("TIFF");
        switch(marker)
        {
            case TIFF_INTEL:
                chpr += printf(":II");
                break;
            case TIFF_MOTOROLA:
                chpr += printf(":MM");
                break;
            default:
                break;
        }
        status = 0;
        break;
    case PROBE_CIFFMAGIC:
        chpr += printf("CIFF");
        switch(marker)
        {
            case TIFF_INTEL:
                chpr += printf(":II");
                break;
            case TIFF_MOTOROLA:
                chpr += printf(":MM");
                break;
            default:
                break;
        }
        status = 0;
        break;
    case PROBE_JP2MAGIC:
        chpr += printf("JP2");
        status = 0;
        break;
    case PROBE_MRWMAGIC:
        chpr += printf("MRW");
        status = 0;
        break;
    case PROBE_RAFMAGIC:
        chpr += printf("RAF");
        status = 0;
        break;
    case PROBE_X3FMAGIC:
        chpr += printf("X3F");
        status = 0;
        break;
    default:
        chpr += printf("UNKNOWN");
        break;
    }
    setcharsprinted(chpr);
    return(status);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x40, %rsp
movw %si, %ax
movq %rdi, -0x8(%rbp)
movw %ax, -0xa(%rbp)
movl $0xffffffff, -0x10(%rbp) # imm = 0xFFFFFFFF
movl $0x0, -0x14(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x20(%rbp)
subq $0x1a, %rax
je 0x5dc6
jmp 0x5b55
movq -0x20(%rbp), %rax
subq $0x2a, %rax
je 0x5d58
jmp 0x5b65
movq -0x20(%rbp), %rax
subq $0x55, %rax
je 0x5cea
jmp 0x5b75
movq -0x20(%rbp), %rax
subq $0x4655, %rax           # imm = 0x4655
je 0x5e6e
jmp 0x5b87
movq -0x20(%rbp), %rax
subq $0x4f52, %rax           # imm = 0x4F52
je 0x5c0e
jmp 0x5b95
movq -0x20(%rbp), %rax
subq $0x5352, %rax           # imm = 0x5352
je 0x5c7c
jmp 0x5ba7
movq -0x20(%rbp), %rax
subq $0xffd8, %rax           # imm = 0xFFD8
je 0x5bee
jmp 0x5bb5
movq -0x20(%rbp), %rax
subq $0x4d524d, %rax         # imm = 0x4D524D
je 0x5e51
jmp 0x5bc7
movq -0x20(%rbp), %rax
subq $0xd0a870a, %rax        # imm = 0xD0A870A
je 0x5e34
jmp 0x5bd9
movq -0x20(%rbp), %rax
subq $0x62564f46, %rax       # imm = 0x62564F46
je 0x5e8b
jmp 0x5ea8
leaq 0x624a6(%rip), %rdi     # 0x6809b
movb $0x0, %al
callq 0x3110
addl -0x14(%rbp), %eax
movl %eax, -0x14(%rbp)
movl $0x0, -0x10(%rbp)
jmp 0x5ebc
leaq 0x5e4bd(%rip), %rdi     # 0x640d2
xorl %eax, %eax
callq 0x3110
movl %eax, %ecx
movl -0x14(%rbp), %eax
addl %ecx, %eax
movl %eax, -0x14(%rbp)
movzwl -0xa(%rbp), %eax
movl %eax, -0x24(%rbp)
subl $0x4949, %eax           # imm = 0x4949
je 0x5c42
jmp 0x5c36
movl -0x24(%rbp), %eax
subl $0x4d4d, %eax           # imm = 0x4D4D
je 0x5c58
jmp 0x5c6e
leaq 0x5e903(%rip), %rdi     # 0x6454c
movb $0x0, %al
callq 0x3110
addl -0x14(%rbp), %eax
movl %eax, -0x14(%rbp)
jmp 0x5c70
leaq 0x5e8f1(%rip), %rdi     # 0x64550
movb $0x0, %al
callq 0x3110
addl -0x14(%rbp), %eax
movl %eax, -0x14(%rbp)
jmp 0x5c70
jmp 0x5c70
movl $0x0, -0x10(%rbp)
jmp 0x5ebc
leaq 0x5e454(%rip), %rdi     # 0x640d7
xorl %eax, %eax
callq 0x3110
movl %eax, %ecx
movl -0x14(%rbp), %eax
addl %ecx, %eax
movl %eax, -0x14(%rbp)
movzwl -0xa(%rbp), %eax
movl %eax, -0x28(%rbp)
subl $0x4949, %eax           # imm = 0x4949
je 0x5cb0
jmp 0x5ca4
movl -0x28(%rbp), %eax
subl $0x4d4d, %eax           # imm = 0x4D4D
je 0x5cc6
jmp 0x5cdc
leaq 0x5e895(%rip), %rdi     # 0x6454c
movb $0x0, %al
callq 0x3110
addl -0x14(%rbp), %eax
movl %eax, -0x14(%rbp)
jmp 0x5cde
leaq 0x5e883(%rip), %rdi     # 0x64550
movb $0x0, %al
callq 0x3110
addl -0x14(%rbp), %eax
movl %eax, -0x14(%rbp)
jmp 0x5cde
jmp 0x5cde
movl $0x0, -0x10(%rbp)
jmp 0x5ebc
leaq 0x6231d(%rip), %rdi     # 0x6800e
xorl %eax, %eax
callq 0x3110
movl %eax, %ecx
movl -0x14(%rbp), %eax
addl %ecx, %eax
movl %eax, -0x14(%rbp)
movzwl -0xa(%rbp), %eax
movl %eax, -0x2c(%rbp)
subl $0x4949, %eax           # imm = 0x4949
je 0x5d1e
jmp 0x5d12
movl -0x2c(%rbp), %eax
subl $0x4d4d, %eax           # imm = 0x4D4D
je 0x5d34
jmp 0x5d4a
leaq 0x5e827(%rip), %rdi     # 0x6454c
movb $0x0, %al
callq 0x3110
addl -0x14(%rbp), %eax
movl %eax, -0x14(%rbp)
jmp 0x5d4c
leaq 0x5e815(%rip), %rdi     # 0x64550
movb $0x0, %al
callq 0x3110
addl -0x14(%rbp), %eax
movl %eax, -0x14(%rbp)
jmp 0x5d4c
jmp 0x5d4c
movl $0x0, -0x10(%rbp)
jmp 0x5ebc
leaq 0x61c52(%rip), %rdi     # 0x679b1
xorl %eax, %eax
callq 0x3110
movl %eax, %ecx
movl -0x14(%rbp), %eax
addl %ecx, %eax
movl %eax, -0x14(%rbp)
movzwl -0xa(%rbp), %eax
movl %eax, -0x30(%rbp)
subl $0x4949, %eax           # imm = 0x4949
je 0x5d8c
jmp 0x5d80
movl -0x30(%rbp), %eax
subl $0x4d4d, %eax           # imm = 0x4D4D
je 0x5da2
jmp 0x5db8
leaq 0x5e7b9(%rip), %rdi     # 0x6454c
movb $0x0, %al
callq 0x3110
addl -0x14(%rbp), %eax
movl %eax, -0x14(%rbp)
jmp 0x5dba
leaq 0x5e7a7(%rip), %rdi     # 0x64550
movb $0x0, %al
callq 0x3110
addl -0x14(%rbp), %eax
movl %eax, -0x14(%rbp)
jmp 0x5dba
jmp 0x5dba
movl $0x0, -0x10(%rbp)
jmp 0x5ebc
leaq 0x6219a(%rip), %rdi     # 0x67f67
xorl %eax, %eax
callq 0x3110
movl %eax, %ecx
movl -0x14(%rbp), %eax
addl %ecx, %eax
movl %eax, -0x14(%rbp)
movzwl -0xa(%rbp), %eax
movl %eax, -0x34(%rbp)
subl $0x4949, %eax           # imm = 0x4949
je 0x5dfa
jmp 0x5dee
movl -0x34(%rbp), %eax
subl $0x4d4d, %eax           # imm = 0x4D4D
je 0x5e10
jmp 0x5e26
leaq 0x5e74b(%rip), %rdi     # 0x6454c
movb $0x0, %al
callq 0x3110
addl -0x14(%rbp), %eax
movl %eax, -0x14(%rbp)
jmp 0x5e28
leaq 0x5e739(%rip), %rdi     # 0x64550
movb $0x0, %al
callq 0x3110
addl -0x14(%rbp), %eax
movl %eax, -0x14(%rbp)
jmp 0x5e28
jmp 0x5e28
movl $0x0, -0x10(%rbp)
jmp 0x5ebc
leaq 0x5e2ba(%rip), %rdi     # 0x640f5
movb $0x0, %al
callq 0x3110
addl -0x14(%rbp), %eax
movl %eax, -0x14(%rbp)
movl $0x0, -0x10(%rbp)
jmp 0x5ebc
leaq 0x621ca(%rip), %rdi     # 0x68022
movb $0x0, %al
callq 0x3110
addl -0x14(%rbp), %eax
movl %eax, -0x14(%rbp)
movl $0x0, -0x10(%rbp)
jmp 0x5ebc
leaq 0x621b9(%rip), %rdi     # 0x6802e
movb $0x0, %al
callq 0x3110
addl -0x14(%rbp), %eax
movl %eax, -0x14(%rbp)
movl $0x0, -0x10(%rbp)
jmp 0x5ebc
leaq 0x621a1(%rip), %rdi     # 0x68033
movb $0x0, %al
callq 0x3110
addl -0x14(%rbp), %eax
movl %eax, -0x14(%rbp)
movl $0x0, -0x10(%rbp)
jmp 0x5ebc
leaq 0x5e6a5(%rip), %rdi     # 0x64554
movb $0x0, %al
callq 0x3110
addl -0x14(%rbp), %eax
movl %eax, -0x14(%rbp)
movl -0x14(%rbp), %edi
callq 0x1ff00
movl -0x10(%rbp), %eax
addq $0x40, %rsp
popq %rbp
retq
nopl (%rax)