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

    if(entry_ptr && (PRINT_VALUE))
    {
        switch(entry_ptr->tag)
        {
            case 0x0001:    /* RecordingMode */
                print_startvalue();
                switch(entry_ptr->value)
                {
                    case 1: chpr += printf("Single Shutter"); break;
                    case 2: chpr += printf("Panorama"); break;
                    case 3: chpr += printf("Night Scene"); break;
                    case 4: chpr += printf("Portrait"); break;
                    case 5: chpr += printf("Landscape"); break;
                    default: printred("undefined"); break;
                }
                print_endvalue();
                break;
            case 0x0002:    /* Quality */
                print_startvalue();
                switch(entry_ptr->value)
                {
                    case 1: chpr += printf("Economy"); break;
                    case 2: chpr += printf("Normal"); break;
                    case 3: chpr += printf("Fine"); break;
                    default: printred("undefined"); break;
                }
                print_endvalue();
                break;
            case 0x0003:    /* Focusing Mode */
                print_startvalue();
                switch(entry_ptr->value)
                {
                    case 2: chpr += printf("Macro"); break;
                    case 3: chpr += printf("Auto"); break;
                    case 4: chpr += printf("Manual"); break;
                    case 5: chpr += printf("Infinity"); break;
                    default: printred("undefined"); break;
                }
                print_endvalue();
                break;
            case 0x0004:    /* Flash Mode */
                print_startvalue();
                switch(entry_ptr->value)
                {
                    case 1: chpr += printf("Auto"); break;
                    case 2: chpr += printf("On"); break;
                    case 3: chpr += printf("Off"); break;
                    case 4: chpr += printf("Redeye"); break;
                    default: printred("undefined"); break;
                }
                print_endvalue();
                break;
            case 0x0005:    /* Flash Intensity */
                print_startvalue();
                switch(entry_ptr->value)
                {
                    case 11: chpr += printf("Weak"); break;
                    case 13: chpr += printf("Normal"); break;
                    case 15: chpr += printf("Strong"); break;
                    default: printred("undefined"); }
                break;
            case 0x0006:    /* Object Distance */
                PUSHCOLOR(UNCERTAIN_COLOR);
                chpr += printf(" mm");
                POPCOLOR();
                break;
            case 0x0007:    /* White Balance */
                print_startvalue();
                switch(entry_ptr->value)
                {
                    case 1: chpr += printf("Auto"); break;
                    case 2: chpr += printf("Tungsten"); break;
                    case 3: chpr += printf("Daylight"); break;
                    case 4: chpr += printf("Fluorescent"); break;
                    case 5: chpr += printf("Shade"); break;
                    case 129: chpr += printf("Manual"); break;
                    default: printred("undefined"); break;
                }
                print_endvalue();
                break;
            case 0x000a:    /* Digital Zoom */
                print_startvalue();
                switch(entry_ptr->value)
                {
                    case 0x10000: chpr += printf("Off"); break;
                    case 0x10001: chpr += printf("On"); break;
                    default: printred("undefined"); break;
                }
                print_endvalue();
                break;
            case 0x000b:    /* Sharpness */
                print_startvalue();
                switch(entry_ptr->value)
                {
                    case 0: chpr += printf("Normal"); break;
                    case 1: chpr += printf("Soft"); break;
                    case 2: chpr += printf("Hard"); break;
                    default: printred("undefined"); break;
                }
                print_endvalue();
                break;
            case 0x000c:    /* Contrast */
                print_startvalue();
                switch(entry_ptr->value)
                {
                    case 0: chpr += printf("Normal"); break;
                    case 1: chpr += printf("Low"); break;
                    case 2: chpr += printf("High"); break;
                    default: printred("undefined"); break;
                }
                print_endvalue();
                break;
            case 0x000d:    /* Saturation */
                print_startvalue();
                switch(entry_ptr->value)
                {
                    case 0: chpr += printf("Normal"); break;
                    case 1: chpr += printf("Low"); break;
                    case 2: chpr += printf("High"); break;
                    default: printred("undefined"); break;
                }
                print_endvalue();
                break;
            default:
                break;
        }
    }
    setcharsprinted(chpr);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x70, %rsp
movq %rdi, -0x8(%rbp)
movl $0x0, -0xc(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x48905
leaq 0x2eeeb(%rip), %rax     # 0x77180
movq (%rax), %rax
andq $0x30, %rax
cmpq $0x0, %rax
je 0x48905
movq -0x8(%rbp), %rax
movzwl (%rax), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x18(%rbp)
subl $0xc, %eax
ja 0x48901
movq -0x18(%rbp), %rax
leaq 0x2583f(%rip), %rcx     # 0x6db08
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
xorl %eax, %eax
callq 0xb9a0
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rax
decq %rax
movq %rax, -0x20(%rbp)
subq $0x4, %rax
ja 0x48374
movq -0x20(%rbp), %rax
leaq 0x2585f(%rip), %rcx     # 0x6db5c
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x25a18(%rip), %rdi     # 0x6dd25
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x48380
leaq 0x25a11(%rip), %rdi     # 0x6dd34
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x48380
leaq 0x208a7(%rip), %rdi     # 0x68be0
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x48380
leaq 0x26261(%rip), %rdi     # 0x6e5b0
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x48380
leaq 0x20871(%rip), %rdi     # 0x68bd6
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x48380
leaq 0x23290(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x48903
xorl %eax, %eax
callq 0xb9a0
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x28(%rbp)
subq $0x1, %rax
je 0x483bf
jmp 0x483a7
movq -0x28(%rbp), %rax
subq $0x2, %rax
je 0x483d5
jmp 0x483b3
movq -0x28(%rbp), %rax
subq $0x3, %rax
je 0x483eb
jmp 0x48401
leaq 0x25977(%rip), %rdi     # 0x6dd3d
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x4840d
leaq 0x2560d(%rip), %rdi     # 0x6d9e9
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x4840d
leaq 0x26014(%rip), %rdi     # 0x6e406
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x4840d
leaq 0x23203(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x48903
xorl %eax, %eax
callq 0xb9a0
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rax
addq $-0x2, %rax
movq %rax, -0x30(%rbp)
subq $0x3, %rax
ja 0x484a2
movq -0x30(%rbp), %rax
leaq 0x2570b(%rip), %rcx     # 0x6db4c
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x207d6(%rip), %rdi     # 0x68c27
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x484ae
leaq 0x25953(%rip), %rdi     # 0x6ddba
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x484ae
leaq 0x204e9(%rip), %rdi     # 0x68966
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x484ae
leaq 0x258b2(%rip), %rdi     # 0x6dd45
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x484ae
leaq 0x23162(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x48903
xorl %eax, %eax
callq 0xb9a0
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rax
decq %rax
movq %rax, -0x38(%rbp)
subq $0x3, %rax
ja 0x48542
movq -0x38(%rbp), %rax
leaq 0x2565b(%rip), %rcx     # 0x6db3c
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x258c9(%rip), %rdi     # 0x6ddba
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x4854e
leaq 0x251e6(%rip), %rdi     # 0x6d6ed
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x4854e
leaq 0x251c9(%rip), %rdi     # 0x6d6e6
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x4854e
leaq 0x2549a(%rip), %rdi     # 0x6d9cd
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x4854e
leaq 0x230c2(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x48903
xorl %eax, %eax
callq 0xb9a0
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x40(%rbp)
subq $0xb, %rax
je 0x4858d
jmp 0x48575
movq -0x40(%rbp), %rax
subq $0xd, %rax
je 0x485a3
jmp 0x48581
movq -0x40(%rbp), %rax
subq $0xf, %rax
je 0x485b9
jmp 0x485cf
leaq 0x257ba(%rip), %rdi     # 0x6dd4e
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x485db
leaq 0x2543f(%rip), %rdi     # 0x6d9e9
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x485db
leaq 0x25793(%rip), %rdi     # 0x6dd53
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x485db
leaq 0x23035(%rip), %rdi     # 0x6b60b
callq 0x6860
jmp 0x48903
leaq 0x2889a(%rip), %rdi     # 0x70e81
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x48903
xorl %eax, %eax
callq 0xb9a0
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x48(%rbp)
subq $0x1, %rax
je 0x48655
jmp 0x48614
movq -0x48(%rbp), %rax
subq $0x2, %rax
je 0x4866b
jmp 0x48620
movq -0x48(%rbp), %rax
subq $0x3, %rax
je 0x48681
jmp 0x4862c
movq -0x48(%rbp), %rax
subq $0x4, %rax
je 0x48697
jmp 0x48638
movq -0x48(%rbp), %rax
subq $0x5, %rax
je 0x486ad
jmp 0x48644
movq -0x48(%rbp), %rax
subq $0x81, %rax
je 0x486c3
jmp 0x486d9
leaq 0x2575e(%rip), %rdi     # 0x6ddba
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x486e5
leaq 0x28073(%rip), %rdi     # 0x706e5
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x486e5
leaq 0x28013(%rip), %rdi     # 0x7069b
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x486e5
leaq 0x25323(%rip), %rdi     # 0x6d9c1
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x486e5
leaq 0x280e6(%rip), %rdi     # 0x7079a
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x486e5
leaq 0x2029c(%rip), %rdi     # 0x68966
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x486e5
leaq 0x22f2b(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x48903
xorl %eax, %eax
callq 0xb9a0
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x50(%rbp)
subq $0x10000, %rax          # imm = 0x10000
je 0x4871c
jmp 0x4870e
movq -0x50(%rbp), %rax
subq $0x10001, %rax          # imm = 0x10001
je 0x48732
jmp 0x48748
leaq 0x24fc3(%rip), %rdi     # 0x6d6e6
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x48754
leaq 0x24fb4(%rip), %rdi     # 0x6d6ed
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x48754
leaq 0x22ebc(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x48903
xorl %eax, %eax
callq 0xb9a0
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x58(%rbp)
testq %rax, %rax
je 0x48792
jmp 0x4877a
movq -0x58(%rbp), %rax
subq $0x1, %rax
je 0x487a8
jmp 0x48786
movq -0x58(%rbp), %rax
subq $0x2, %rax
je 0x487be
jmp 0x487d4
leaq 0x25250(%rip), %rdi     # 0x6d9e9
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x487e0
leaq 0x28742(%rip), %rdi     # 0x70ef1
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x487e0
leaq 0x28738(%rip), %rdi     # 0x70efd
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x487e0
leaq 0x22e30(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x48903
xorl %eax, %eax
callq 0xb9a0
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x60(%rbp)
testq %rax, %rax
je 0x4881e
jmp 0x48806
movq -0x60(%rbp), %rax
subq $0x1, %rax
je 0x48834
jmp 0x48812
movq -0x60(%rbp), %rax
subq $0x2, %rax
je 0x4884a
jmp 0x48860
leaq 0x251c4(%rip), %rdi     # 0x6d9e9
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x4886c
leaq 0x2869f(%rip), %rdi     # 0x70eda
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x4886c
leaq 0x28694(%rip), %rdi     # 0x70ee5
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x4886c
leaq 0x22da4(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x48903
xorl %eax, %eax
callq 0xb9a0
movq -0x8(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, -0x68(%rbp)
testq %rax, %rax
je 0x488aa
jmp 0x48892
movq -0x68(%rbp), %rax
subq $0x1, %rax
je 0x488c0
jmp 0x4889e
movq -0x68(%rbp), %rax
subq $0x2, %rax
je 0x488d6
jmp 0x488ec
leaq 0x25138(%rip), %rdi     # 0x6d9e9
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x488f8
leaq 0x28613(%rip), %rdi     # 0x70eda
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x488f8
leaq 0x28608(%rip), %rdi     # 0x70ee5
movb $0x0, %al
callq 0x3110
addl -0xc(%rbp), %eax
movl %eax, -0xc(%rbp)
jmp 0x488f8
leaq 0x22d18(%rip), %rdi     # 0x6b60b
callq 0x6860
movb $0x0, %al
callq 0xb9d0
jmp 0x48903
jmp 0x48903
jmp 0x48905
movl -0xc(%rbp), %edi
callq 0x1ff00
addq $0x70, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)