// File: /workspace/github_c_makefile_star2_O0/hfiguiere[P]exifprobe/maker_epson.c
// Function: epson1_interpret_value
void
epson1_interpret_value(struct ifd_entry *entry_ptr)
{
    int chpr = 0;

    if(entry_ptr && (PRINT_VALUE))
    {
        switch(entry_ptr->tag)
        {
            case 0x0201:    /* Compression Mode */
                print_startvalue();
                /* 'Quality' is a mix of this and image size.             */
                /* Interestingly, 'HyPict' (2544x1904) interpolated       */
                /* images are marked '34' (same as uncompressed 'tiff')   */
                /* but are in JPEG format with CompressedBitsPerPixel=1.  */
                /* The value '33' is used by Olympus cameras, which       */
                /* appear to use similar software. Of course, the Minolta */
                /* F100 looks a lot like this too, but uses '4' for       */
                /* uncompressed.                                          */
                switch(entry_ptr->value)
                {
                    case 1: chpr += printf("SQ"); break;
                    case 2: chpr += printf("HQ"); break;
                    case 3: chpr += printf("SHQ"); break;
                    case 33: chpr += printf("not compressed"); break;
                    case 34: chpr += printf("not compressed"); break;
                    default: printred("undefined"); break;
                }
                print_endvalue();
                break;
            case 0x0202:    /* Macro */
                print_startvalue();
                switch(entry_ptr->value)
                {
                    case 0: chpr += printf("Normal"); break;
                    case 1: chpr += printf("Macro"); break;
                    default: printred("undefined"); break;
                }
                print_endvalue();
                break;
            default:
                break;
        }
    }
    setcharsprinted(chpr);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movl $0x0, -0xc(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x4175e
leaq 0x35b7b(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x4175e
movq -0x8(%rbp), %rax
movzwl (%rax), %eax
movl %eax, -0x10(%rbp)
subl $0x201, %eax            # imm = 0x201
je 0x4163c
jmp 0x41629
movl -0x10(%rbp), %eax
subl $0x202, %eax            # imm = 0x202
je 0x416f3
jmp 0x4175a
xorl %eax, %eax
callq 0xb9a0
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rax
decq %rax
movq %rax, -0x18(%rbp)
subq $0x21, %rax
ja 0x416de
movq -0x18(%rbp), %rax
leaq 0x2b6e9(%rip), %rcx     # 0x6cd50
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x2b7d9(%rip), %rdi     # 0x6ce50
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x416ea
leaq 0x2b7c7(%rip), %rdi     # 0x6ce54
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x416ea
leaq 0x2b7b0(%rip), %rdi     # 0x6ce53
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x416ea
leaq 0x2b79e(%rip), %rdi     # 0x6ce57
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x416ea
leaq 0x2b788(%rip), %rdi     # 0x6ce57
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x416ea
leaq 0x29f26(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x4175c
xorl %eax, %eax
callq 0xb9a0
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x20(%rbp)
testq %rax, %rax
je 0x41719
jmp 0x4170d
movq -0x20(%rbp), %rax
subq $0x1, %rax
je 0x4172f
jmp 0x41745
leaq 0x2c2c9(%rip), %rdi     # 0x6d9e9
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x41751
leaq 0x274f1(%rip), %rdi     # 0x68c27
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x41751
leaq 0x29ebf(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x4175c
jmp 0x4175c
jmp 0x4175e
movl -0xc(%rbp), %edi
callq 0x1ff00
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax)