// File: /workspace/github_c_makefile_star2_O1/hfiguiere[P]exifprobe/maker_olympus.c
// Function: olympus_private_2020_tagname
char *
olympus_private_2020_tagname(unsigned short tag)
{
    char *tagname = CNULL;

    switch(tag)
    {
        case 0x0000: tagname = "CameraSettingsVersion"; break;
        case 0x0100: tagname = "PreviewImageValid"; break;
        case 0x0101: tagname = "PreviewImageOffset"; break;
        case 0x0102: tagname = "PreviewImageLength"; break;
        case 0x0200: tagname = "ExposureMode"; break;
        case 0x0202: tagname = "MeteringMode"; break;
        case 0x0300: tagname = "MacroMode"; break;
        case 0x0301: tagname = "FocusMode"; break;
        case 0x0302: tagname = "FocusProcess"; break;
        case 0x0303: tagname = "AFSearch"; break;
        case 0x0304: tagname = "AFAreas"; break;
        case 0x0400: tagname = "FlashMode"; break;
        case 0x0401: tagname = "FlashExposureCompensation"; break;
        case 0x0501: tagname = "WhiteBalanceTemperature"; break;
        case 0x0502: tagname = "WhiteBalanceBracket"; break; 
        case 0x0503: tagname = "CustomSaturation"; break;
        case 0x0504: tagname = "ModifiedSaturation"; break;
        case 0x0505: tagname = "ContrastSetting"; break;
        case 0x0506: tagname = "SharpnessSetting"; break;
        case 0x0507: tagname = "ColorSpace"; break;
        case 0x0509: tagname = "SceneMode"; break;
        case 0x050a: tagname = "NoiseReduction"; break;
        case 0x050b: tagname = "DistortionCorrection"; break;
        case 0x050c: tagname = "ShadingCompensation"; break;
        case 0x050d: tagname = "CompressionFactor"; break;
        case 0x050f: tagname = "Gradation"; break;
        case 0x0600: tagname = "Sequence"; break;
        case 0x0603: tagname = "ImageQuality2"; break;
        default:
            break;
    }
    return(tagname);
}

// Assembly:
xorl %eax, %eax
cmpl $0x500, %edi            # imm = 0x500
jle 0x2f25a
leal -0x501(%rdi), %ecx
cmpl $0xe, %ecx
ja 0x2f301
leaq 0x1b623(%rip), %rdx     # 0x4a86c
movslq (%rdx,%rcx,4), %rcx
addq %rdx, %rcx
jmpq *%rcx
leaq 0x1ba8b(%rip), %rax     # 0x4ace4
retq
cmpl $0x2ff, %edi            # imm = 0x2FF
jle 0x2f285
leal -0x300(%rdi), %ecx
cmpl $0x4, %ecx
ja 0x2f2e1
leaq 0x1b5e4(%rip), %rax     # 0x4a858
movslq (%rax,%rcx,4), %rcx
addq %rax, %rcx
jmpq *%rcx
leaq 0x1ba1e(%rip), %rax     # 0x4aca2
retq
cmpl $0x101, %edi            # imm = 0x101
jg 0x2f2b5
testl %edi, %edi
je 0x2f3a1
cmpl $0x100, %edi            # imm = 0x100
je 0x2f389
cmpl $0x101, %edi            # imm = 0x101
jne 0x2f3d0
leaq 0x1b87b(%rip), %rax     # 0x4ab2f
retq
cmpl $0x102, %edi            # imm = 0x102
je 0x2f3a9
cmpl $0x200, %edi            # imm = 0x200
je 0x2f391
cmpl $0x202, %edi            # imm = 0x202
jne 0x2f3d0
leaq 0x13d4c(%rip), %rax     # 0x4302c
retq
cmpl $0x400, %edi            # imm = 0x400
je 0x2f3c1
cmpl $0x401, %edi            # imm = 0x401
jne 0x2f3d0
leaq 0x1b9ca(%rip), %rax     # 0x4acca
retq
cmpl $0x600, %edi            # imm = 0x600
je 0x2f3c9
cmpl $0x603, %edi            # imm = 0x603
jne 0x2f3d0
leaq 0x1ba7a(%rip), %rax     # 0x4ad9a
retq
leaq 0x1ba68(%rip), %rax     # 0x4ad90
retq
leaq 0x1b9f1(%rip), %rax     # 0x4ad21
retq
leaq 0x1ba32(%rip), %rax     # 0x4ad6a
retq
leaq 0x1b9d0(%rip), %rax     # 0x4ad10
retq
leaq 0x1ba36(%rip), %rax     # 0x4ad7e
retq
leaq 0x1b9ac(%rip), %rax     # 0x4acfc
retq
leaq 0x1b9dc(%rip), %rax     # 0x4ad34
retq
leaq 0x19aa6(%rip), %rax     # 0x48e06
retq
leaq 0x1b9dc(%rip), %rax     # 0x4ad44
retq
leaq 0x1aedf(%rip), %rax     # 0x4a24f
retq
leaq 0x1e00d(%rip), %rax     # 0x4d385
retq
leaq 0x1b9d5(%rip), %rax     # 0x4ad55
retq
leaq 0x1b93a(%rip), %rax     # 0x4acc2
retq
leaq 0x1b78d(%rip), %rax     # 0x4ab1d
retq
leaq 0x13e46(%rip), %rax     # 0x431de
retq
leaq 0x1b90c(%rip), %rax     # 0x4acac
retq
leaq 0x1b8e4(%rip), %rax     # 0x4ac8c
retq
leaq 0x1b792(%rip), %rax     # 0x4ab42
retq
leaq 0x1b901(%rip), %rax     # 0x4acb9
retq
leaq 0x1ad74(%rip), %rax     # 0x4a134
retq
leaq 0x1b6ea(%rip), %rax     # 0x4aab2
retq
leaq 0x1e3da(%rip), %rax     # 0x4d7aa
retq