// File: /workspace/github_c_makefile_star2_O3/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 0x2fa47
leal -0x501(%rdi), %ecx
cmpl $0xe, %ecx
ja 0x2faee
leaq 0x1ae76(%rip), %rdx     # 0x4a8ac
movslq (%rdx,%rcx,4), %rcx
addq %rdx, %rcx
jmpq *%rcx
leaq 0x1b2de(%rip), %rax     # 0x4ad24
retq
cmpl $0x2ff, %edi            # imm = 0x2FF
jle 0x2fa72
leal -0x300(%rdi), %ecx
cmpl $0x4, %ecx
ja 0x2face
leaq 0x1ae37(%rip), %rax     # 0x4a898
movslq (%rax,%rcx,4), %rcx
addq %rax, %rcx
jmpq *%rcx
leaq 0x1b271(%rip), %rax     # 0x4ace2
retq
cmpl $0x101, %edi            # imm = 0x101
jg 0x2faa2
testl %edi, %edi
je 0x2fb8e
cmpl $0x100, %edi            # imm = 0x100
je 0x2fb76
cmpl $0x101, %edi            # imm = 0x101
jne 0x2fbbd
leaq 0x1b0ce(%rip), %rax     # 0x4ab6f
retq
cmpl $0x102, %edi            # imm = 0x102
je 0x2fb96
cmpl $0x200, %edi            # imm = 0x200
je 0x2fb7e
cmpl $0x202, %edi            # imm = 0x202
jne 0x2fbbd
leaq 0x1355f(%rip), %rax     # 0x4302c
retq
cmpl $0x400, %edi            # imm = 0x400
je 0x2fbae
cmpl $0x401, %edi            # imm = 0x401
jne 0x2fbbd
leaq 0x1b21d(%rip), %rax     # 0x4ad0a
retq
cmpl $0x600, %edi            # imm = 0x600
je 0x2fbb6
cmpl $0x603, %edi            # imm = 0x603
jne 0x2fbbd
leaq 0x1b2cd(%rip), %rax     # 0x4adda
retq
leaq 0x1b2bb(%rip), %rax     # 0x4add0
retq
leaq 0x1b244(%rip), %rax     # 0x4ad61
retq
leaq 0x1b285(%rip), %rax     # 0x4adaa
retq
leaq 0x1b223(%rip), %rax     # 0x4ad50
retq
leaq 0x1b289(%rip), %rax     # 0x4adbe
retq
leaq 0x1b1ff(%rip), %rax     # 0x4ad3c
retq
leaq 0x1b22f(%rip), %rax     # 0x4ad74
retq
leaq 0x192f9(%rip), %rax     # 0x48e46
retq
leaq 0x1b22f(%rip), %rax     # 0x4ad84
retq
leaq 0x1a732(%rip), %rax     # 0x4a28f
retq
leaq 0x1d860(%rip), %rax     # 0x4d3c5
retq
leaq 0x1b228(%rip), %rax     # 0x4ad95
retq
leaq 0x1b18d(%rip), %rax     # 0x4ad02
retq
leaq 0x1afe0(%rip), %rax     # 0x4ab5d
retq
leaq 0x13659(%rip), %rax     # 0x431de
retq
leaq 0x1b15f(%rip), %rax     # 0x4acec
retq
leaq 0x1b137(%rip), %rax     # 0x4accc
retq
leaq 0x1afe5(%rip), %rax     # 0x4ab82
retq
leaq 0x1b154(%rip), %rax     # 0x4acf9
retq
leaq 0x1a5c7(%rip), %rax     # 0x4a174
retq
leaq 0x1af3d(%rip), %rax     # 0x4aaf2
retq
leaq 0x1dc2d(%rip), %rax     # 0x4d7ea
retq